1 系統(tǒng)方案
GSM(Global System for Mobile Communications)為全球移動通訊系統(tǒng),,是一種起源于歐洲的移動通信技術標準,其開發(fā)目的是讓全球各地可以共同使用一個移動電話網(wǎng)絡標準,,讓用戶使用一部手機就能行遍全球,。GSM通信系統(tǒng)為傳輸需要的各種信令,設置了多種專門的控制信道,。GSM通信收取一定費用,,但通信距離長,,死角少,可以實現(xiàn)全球通信,,無論兩終端相距多遠都可以通過GSM進行通信,。
所以為了實現(xiàn)長距離的對物品的跟蹤,我們采用了GSM模塊進行通信,。
1.2 功能與指標
1) 防盜功能:這是設計本系統(tǒng)的最終目的,。將防盜目標終端放到防止被盜的物品上,當物品丟失后,,按下尋找指引終端上的按鍵后,,可以在LCD液晶屏上看到防盜目標終端相對于尋找指引終端的位置和方位,從而達到防盜的目的,。
2) 定位功能:這是本系統(tǒng)的最基礎功能,,它是實現(xiàn)防盜功能的一個步驟,當用戶按下尋找指引終端上的按鍵后可以在液晶屏上顯示自身經(jīng)緯度,,從而實現(xiàn)對自身的的定位,。
3) 追蹤功能 :這是本系統(tǒng)的擴展功能。防盜目標終端除了作為防盜器以外還可用作定位器,,將防盜目標終端放到需要追蹤的目標上,,通過尋找指引終端可以準確的知道追蹤目標的位置從而對追蹤目標進行實時追蹤。
指標:本系統(tǒng)所產(chǎn)生的誤差主要是由GPS信號接收器導致,,因為系統(tǒng)所使用的GPS信號接收器屬于較低端的信號接收器,,信息誤差大約在5米左右,所以本系統(tǒng)要求實現(xiàn)尋找指引終端對防盜目標終端的定位,,相對距離誤差不超過10米,,尋找指引終端對自身經(jīng)緯度進行定位誤差不超過0.0001’。
2 實現(xiàn)原理
系統(tǒng)原理
當按下尋找指引終端上的按鍵時,,尋找指引終端通過GSM模塊向防盜目標終端發(fā)出請求信息,,防盜目標終端接收到該信息后,通過GPS信號接收器接收衛(wèi)星信號,,FPGA通過DTE接口接受該信息并在GPS模塊中提取出經(jīng)緯度信息,該信息在加密模塊中進行加密然后又通過開發(fā)板上的DCE接口傳送給GSM模塊,,GSM模塊將該信息發(fā)送給尋找指引終端,,尋找指引終端通過GSM模塊接收該信息,并在解密模塊中對信息進行解密,,同時用與防盜目標終端相同方式確定自身位置,,防盜目標終端傳來的位置信息和尋找指引終端自身接受的位置信息一并傳入相對位置計算模塊。在相對位置計算中尋找指引終端計算出兩終端的相對位置以及防盜目標終端相對于尋找指引終端的方位,。系統(tǒng)原理示意圖如圖2所示,。
圖2.1 系統(tǒng)原理示意圖
2.2 各模塊實現(xiàn)原理
2.2.1 UART模塊實現(xiàn)原理
本系統(tǒng)的UART模塊是在EDK 10.1環(huán)境中開發(fā)完成,,利用了開發(fā)環(huán)境所提供的uartns550_v1_00_b驅動程序,該驅動提供了發(fā)送函數(shù)void XuartNs550 SendByte (Xuint32 BaseAddress, Xuint8 Data)和接收函數(shù)unsigned int XuartNs550 RecvByte(Xuint32 BaseAddress),。從而使程序可以通過Uart每次發(fā)送接收一個字節(jié)的數(shù)據(jù),。
2.2.4 經(jīng)緯度提取模塊原理
如果設備和衛(wèi)星的通訊正常,可以接收到如下格式的字符數(shù)據(jù): $GPRMC,204700,A,3403.868,N,11709.432,W,001.9,336.9,170698,013.6,E*6En,。
數(shù)據(jù)說明如下:
$GPRMC 代表GPS推薦的最短數(shù)據(jù),3403.868 代表緯度值,,N表示北緯,S表示南緯;11709.432代表經(jīng)度值,,W表示西經(jīng),,E表示東經(jīng)。
在接收進程receive 中收到“n”之后,,表示收到一條完整的信息,。系統(tǒng)在void GPS_parse(GPS_INF度 *GPS) 方法中進行數(shù)據(jù)的解析,若信號有效則提取GPS信號中的經(jīng)緯度信息,。GPS信號的經(jīng)度緯度是字符串類型,,需要轉化為double類型。
2.2.3 GSM模塊實現(xiàn)原理
GSM控制程序最基本的實現(xiàn)原理是通過Xuint8 XUartNs550_RecvByte(Xuint32 BaseAddress),void XuartNs550_SendByte uint32 BaseAddress,Xuint8 Data)兩個函數(shù)實現(xiàn)的,。這兩個函數(shù)對數(shù)據(jù)的接受與發(fā)送都是阻塞的,,該阻塞機制確保了發(fā)送與接受的數(shù)據(jù)不會丟失。綜上所述,,通過使用這兩個基本的串口通信函數(shù),,實現(xiàn)了FPGA對GSM模塊的控制,從而實現(xiàn)了對短信息的接收與發(fā)送,。AT命令是被廣泛采用的調制解調器命令語言,,它提供了計算機或終端對調制解調器的控制接口。在GSM模塊的應用中,,AT命令實現(xiàn)了對GSM大多數(shù)的操作控制,,本系統(tǒng)即使用了AT指令集對GSM進行控制。
2.2.4 加密解密模塊實現(xiàn)原理
本系統(tǒng)采用DES加密算法,。DES算法把64位的明文輸入塊變?yōu)?4位的密文輸出塊,,它所使用的密鑰也是64位。首先,,DES把輸入的64位數(shù)據(jù)塊按位重新組合,,并把輸出分為L0、R0兩部分,,每部分各長32位,,并進行前后置換(輸入的第58位換到第一位,第50位換到第2位,,依此類推,,最后一位是原來的第7位),,最終由L0輸出左32位,R0輸出右32位,,根據(jù)這個法則經(jīng)過16次迭代運算后,,得到L16、R16,,將此作為輸入,,進行與初始置換相反的逆置換,即得到密文輸出,。本系統(tǒng)對加密模塊以函數(shù)調用的方式加以實現(xiàn),。
3 系統(tǒng)測試
本系統(tǒng)基于GPS和GSM技術在FPGA開發(fā)板上實現(xiàn)了追蹤和定位的功能,為了檢測系統(tǒng)的的功能并找出其中的不足,,我們制定了詳細的測試方案,,并對不同環(huán)境下系統(tǒng)的性能以及系統(tǒng)的容錯性進行了測試,根據(jù)測試的數(shù)據(jù)對系統(tǒng)的性能做出了客觀的評價,,突出展現(xiàn)了系統(tǒng)的優(yōu)點也找出了系統(tǒng)的不足,。