戴慧慧 楊俊 李瑞金


摘?要:針對寵物的多動性、活動范圍廣和地形復雜,導致普通市面上簡單的定位項圈難以準確找到寵物狗的問題,我們設計了一款基于GPRS網絡的新型寵物項圈,不僅可以準確定位,還可以輔助寵物狗自己找到回家的路。
關鍵詞:移動通信;GPRS網絡;單片機
1?硬件設計
1.1?總體設計原理
總體硬件設計組成框圖如圖1所示。這是一種由單片機控制的寵物丟失召回項圈,基于GPRS網絡通信技術,選擇stm32f103c8t6作為主控制芯片。當寵物狗走失,主人手機通過GPRS接收項圈發出的信息監視寵物狗的GPS位置信息,當主人察覺其寵物狗確實走失,可通過手機按下一鍵回家功能。此時項圈就會進入輔助回家狀態,以寵物狗為圓心,在其家的方向30度圓心角的扇形區域為工作狀態,其余330度區域為空閑狀態,當寵物狗的頭部朝向家的方向(即在上述30度區域內),此信息由GPS數據、三軸陀螺儀數據、三軸加速度傳感器數據,以及電子羅盤數據共同提供給芯片,此時揚聲器就會發出主人事先錄好的聲音,寵物狗聽到主人熟悉的聲音就會跟隨聲音朝此方向走,而朝向其余330度區域時揚聲器無任何反應,芯片通過實時建立家的方向最終正確引導寵物狗安全回家。
1.2?位置
由一塊GPS電路板提供寵物位置坐標,由一塊電子羅盤MAG3110和加速度傳感器提供方向,由陀螺儀提供姿態。從而準確定位小狗的位置,其中傳感器采用MAG3110傳感器,這是一種功率消耗極低的小型數字式3D磁傳感器,采用I2C接口,具備良好的動態范圍,即使所處環境中干擾的磁場量很高,也能夠正常工作。MAG3110磁傳感器的工作原理就是測量PCB板中元件產生的磁場與地磁場的和,即局部磁場的分量。使用這種方法測出來的局部的磁場量最高可達十個數量級的高斯,輸出數據的速率可以穩定在85Hz左右;將磁傳感器與三軸加速度傳感器的數據進行疊加,能夠得到準確度極高的羅盤信息,此信息不同于方向信息。在使用電子羅盤和三軸加速度傳感器進行測量的基礎上,加上三軸陀螺儀的數據,可以彌補測量的不足。通過三軸加速度傳感器和三軸陀螺儀的功能疊加,可以構建一個六軸的傳感器模型,這種傳感器模型可以作為運動傳感器使用,其檢測范圍基本涵蓋所有運動狀態參數。物體的運動包括三軸的位移和三軸的轉動,這些參數可以組成一個完整的運動軌跡。在此基礎之上結合電子羅盤的應用既可以檢測到物體的實際運動軌跡,又能夠校準物體的位置信息,最終用這種方式來完成寵物狗移動軌跡的跟隨,由此可以得到一個完整的軌跡。
1.3?通信
在準確定位寵物狗位置和追蹤寵物狗運動軌跡后,將其位置軌跡信息通過通信模板傳到手機終端,通信模塊主要應用GPRS無線分組交換技術實現無線通信功能,這種與以往不同的業務主要應用于無線網絡數據傳輸,它的前身是GSM通信。GPRS運用的分組交換技術有著強大的優勢,原因在于使用這種業務時每個信道可以為多個用戶共同享用,并且在同一時間內每位用戶又能夠享用多個信道,相比于傳統方式這樣就提高了信道的使用率。GPRS許可用戶在兩端組別跳躍下進行數據的傳輸,這種方法通過用戶使用的流量對其進行繳費,用戶不使用的時候既不會掉線也不會收取任何費用,用戶可以隨時在線,這種業務在提高工作效率的同時也降低了使用費用。使用GPRS通信透明化,傳輸效率高,適用范圍廣,對于一般個人用戶來說有著較高的開發前景。通信模塊主要建立在AGPRS定位服務系統,利用GPS提供的定位信息以及手機基站提供的信息實現快速、精準的定位功能,同時通過使用GPRS網絡實現通信,這樣實現的距離更遠。
1.4?報警
一個功放電路并且連接3瓦4歐姆的揚聲器提供語言外放,并且含有TF(TransFlash)卡槽,可插入有寵物主人錄音的TF卡;由鋰電池提供電力,并且配備太陽能充電板,可在電池沒電時進行充電。
2?軟件設計
本項目以stm32c8t6為核心芯片,使用C語言編程。stm32c8t6芯片使用ARM內核,工頻可達到72MHZ,有連接到APB總線的外設,以及增強型的IO端口。兩個12位ADC可提供模數轉換功能。三個16位通用定時器可用于定時和計數功能。還包括用于通信的I2C接口,USART接口,USB接口等等,stm32c8t6芯片供電電壓為2.0至3.6V。并且為了達到功率消耗更低,芯片采用省電的模式。C語言運行速度快,功能強大,并且C語言具有語言簡短、靈活多變、多種運算符、數據類型豐富,沒有嚴格的語法限制,具有現代語言的結構,編程自由度大等優點。并且使用這種語言進行編程得到的程序的可移植性更高,在今后的項目技術迭代中更加便利。
在主控制芯片與通信模塊之間,采用異步串行通信的通信協議。GPS、陀螺儀、電子羅盤、加速度計等外部傳感器用串口與stm32收發數據,stm32通過GPIO口的分時復用功能實時獲取傳感器數據。通過單片機內部軟件濾波以及算法分析將傳感器數據轉化為實時信息,如位置信息、方位、姿態等,緊接著通過通信模塊發送回用戶端,并在Android軟件上顯示信息。
GPRS通信底層的驅動部分包括:IO口初始化、串口初始化、AT指令操作、串口中斷函數。
GPRS通信主程序主要步驟:①TCP/IP連接流程的控制(即AT指令控制):檢測模塊串口工作,檢查是否插卡,檢查網絡注冊情況,附著網絡,設置PDP參數,激活網絡,連接TCPIP服務器;②數據處理控制:通過控制GPRS數據的傳輸,利用中斷的方式得到信息,將GPRS數據包含于此信息中再次進行發送;③檢測是否超時:進行兩次數據發送狀態檢測,第一次檢驗數據發送是否成功,如果數據發送不成功,則使TCP/IP的連接進行斷開操作,而后再次連接,第二次再檢驗GPRS數據發送是否成功,如果數據發送還是不成功則可將其復位,然后再次連接。
通過以上操作能夠實現以GPRS通信技術為基礎的用戶與項圈之間的通信。
3?結語
本項目的研究重點是定位、姿態獲取、運動軌跡追蹤、無線通信以及GPRS無線分組交換技術的應用,采用此種方案設計出的寵物狗丟失狀態判定與召回項圈,可以有效地解決寵物狗主人丟失愛犬后及時找回的問題。
參考文獻:
[1]何平.基于Zig?Bee技術的定位研究與應用[D]南京:南京郵電大學,2012.
[2]周峰.基于Android能手機平臺的GPS開發[J]大眾科技,2012,14(157):26,3132.
項目:大學生創新創業訓練項目(項目編號:S202010361112)
作者簡介:戴慧慧(1999—?),女,漢族,安徽人,在讀本科生,研究方向:通信工程;楊俊(2000—?),男,安徽人,在讀本科生,研究方向:電氣及其自動化;李瑞金(1983—?),男,安徽人,博士在讀,研究方向:檢測自動化裝置。