(重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
農(nóng)機(jī)車載系統(tǒng)的遠(yuǎn)程實(shí)時(shí)監(jiān)控終端設(shè)計(jì)
卜國順
(重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
以嵌入式處理器STM32F103為核心,利用GPS定位技術(shù)、CAN通信技術(shù)、GPRS通信技術(shù)設(shè)計(jì)了一種專門針對(duì)農(nóng)機(jī)領(lǐng)域的車載監(jiān)控終端。該終端能夠?qū)崿F(xiàn)車輛位置信息、行車狀態(tài)信息的實(shí)時(shí)采集與遠(yuǎn)程無線傳輸;同時(shí),能夠處理遠(yuǎn)程監(jiān)控中心下達(dá)的指令,對(duì)車輛進(jìn)行限速、鎖車、設(shè)置電子圍欄。目前,該終端已經(jīng)在洛陽某農(nóng)機(jī)公司的農(nóng)機(jī)車輛上進(jìn)行了應(yīng)用,運(yùn)行穩(wěn)定可靠,為車輛快速故障定位、維修、管理提供了真實(shí)數(shù)據(jù)支撐。
GPS;中斷;STM32F103;CAN總線
農(nóng)機(jī)租賃作為一種新的商業(yè)模式可以有效解決農(nóng)民購買先進(jìn)農(nóng)機(jī)設(shè)備資金短缺的問題,促進(jìn)我國農(nóng)業(yè)機(jī)械化的發(fā)展,同時(shí)也有利于傳統(tǒng)制造企業(yè)的轉(zhuǎn)型升級(jí)[1]。隨著農(nóng)機(jī)租賃產(chǎn)業(yè)的發(fā)展,車輛丟失、車輛故障、車輛損壞等問題變得更加突出。如何對(duì)農(nóng)機(jī)車輛進(jìn)行高效管理、快速維修減少損失成為運(yùn)營單位面臨的重要問題[2-3]?;谖锫?lián)網(wǎng)的車載終端能夠?qū)崟r(shí)將車輛信息上傳至監(jiān)控中心,運(yùn)營單位可以遠(yuǎn)程監(jiān)控車輛運(yùn)行參數(shù),根據(jù)車輛數(shù)據(jù)的變化及時(shí)采取相應(yīng)的措施。
車載終端以處理器STM32F103為核心。外圍電路包括GPS模塊、GPRS模塊、CAN通信模塊、振動(dòng)傳感器模塊、電源模塊。整體框圖如圖1所示。
圖1 車載終端硬件架構(gòu)圖
1.1 處理器芯片的設(shè)計(jì)
考慮本設(shè)計(jì)主要用到了STM32的串口、CAN功能、GPIO、中斷、BOOT模式選擇等資源,農(nóng)機(jī)車輛可供安裝終端的空間狹小,對(duì)器件的尺寸要求嚴(yán)格。綜合以上因素,CPU選用了TI公司旗下的STM32F103C8T6,其內(nèi)核為Cortex-M3,最大特點(diǎn)是低功耗、低成本、高性能。該芯片為48引腳封裝,是該系列占用空間面積最小的一款。內(nèi)置64 KB的Flash閃存和20 KB SRAM,能夠滿足設(shè)計(jì)要求[4]。外圍總體設(shè)計(jì)如圖2所示。
圖2 CPU外圍總體設(shè)計(jì)
本設(shè)計(jì)使用了STM32的兩個(gè)串口,通過串口中斷的方式完成所需功能。串口2與GPS/北斗模塊的串口相連,車輛位置數(shù)據(jù)通過STM32串口的RX傳給程序中定義的接收緩存,同時(shí)也可以通過TX發(fā)送相應(yīng)命令給對(duì)其進(jìn)行配置:采樣頻率、數(shù)據(jù)返回格式等等。串口3與GPRS模塊相連,STM32通過相應(yīng)AT命令與模塊進(jìn)行交互,完成撥號(hào)、注冊(cè)網(wǎng)絡(luò)、發(fā)送數(shù)據(jù)、接收數(shù)據(jù)的功能。
圖5 GPRS模塊電路圖
圖3 處理器BOOT模式選擇電路
車載終端鋰電池通過電阻降壓后接入STM32的PA1引腳完成內(nèi)電量的采集。處理器BOOT模式選擇電路如圖3所示,有兩種BOOT工作模式:正常模式和下載模式。默認(rèn)情況下為正常模式,從閃存中啟動(dòng)。當(dāng)按下按鍵之后,BOOT0電平被拉高,進(jìn)入出廠下載模式。
1.2 CAN模塊電路設(shè)計(jì)
圖4 CAN收發(fā)器電路圖
STM32F103內(nèi)置CAN控制器,外部電路只需要增加CAN收發(fā)器模塊即可。本設(shè)計(jì)選用的是TJA1050高速 CAN 收發(fā)器,該收發(fā)器具有以下特點(diǎn):與“ISO 11898”標(biāo)準(zhǔn)完全兼容;速度高(最高可達(dá)1 Mbps);可抗電磁干擾,不上電的節(jié)點(diǎn)不會(huì)對(duì)總線造成干擾;發(fā)送數(shù)據(jù)(TXD)控制超時(shí)功能,當(dāng)引腳TXD由于硬件或者軟件程序發(fā)生錯(cuò)誤而一直為低電平時(shí),“TXD控制超時(shí)”定時(shí)器電路可以防止總線持續(xù)進(jìn)入這種支配狀態(tài),阻塞所有網(wǎng)絡(luò)通信。CAN收發(fā)器電路圖如圖4所示。CANH和CANL之間連接一個(gè)120 Ω的電阻,進(jìn)行終端電阻和電纜電阻阻抗的緊密匹配,防止數(shù)據(jù)信號(hào)被反射,提高數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
1.3 GPRS模塊電路設(shè)計(jì)
GPRS模塊完成數(shù)據(jù)的發(fā)送和接收,該設(shè)計(jì)采用SIM800C模塊。GPRS模塊電路如圖5所示。該芯片性能參數(shù)如下:工作頻率為GSM/GPRS 850/900/1 800/1 900 MHz;尺寸為17.6 mm×15.7 mm×2.3 mm,能夠適用各種緊湊型產(chǎn)品設(shè)計(jì)需求;供電電壓范圍為3.4~4.4 V;內(nèi)嵌TCP/IP協(xié)議,支持上電自啟動(dòng),使用簡單;在休眠模式下,耗電流低至0.6 mA,可以實(shí)現(xiàn)低功耗并數(shù)據(jù)信息的傳輸。
模塊電壓范圍為3.4~4 V,以最大功率發(fā)射時(shí),電流峰值瞬間可達(dá)2 A,導(dǎo)致VBAT上有大的電壓回落,致使模塊因?yàn)榈碗妷簾o法正常工作。在VBAT附近使用了一個(gè)大的100 μF的鉭電容進(jìn)行穩(wěn)壓,同時(shí)并聯(lián)兩個(gè)4.7 μF和33 pF的陶瓷電容對(duì)高頻干擾進(jìn)行濾波,同時(shí)并聯(lián)一個(gè)齊納二極管防止浪涌對(duì)芯片的破壞。
1.4 GPS/北斗模塊電路設(shè)計(jì)
GPS/北斗模塊選擇VK1612Z2M3L芯片,性能參數(shù)如下:內(nèi)建LNA,低噪聲放大器;定位精度<2.5 m,頻率范圍為GSM/GPRS 850/900/1800/1900 MHz;支持可調(diào)的刷新頻率:1~10 Hz,支持定位PPS指示燈,未定位前常亮或者關(guān)閉,定位后閃爍;豐富的輸出速率為9 600 bps(可選:4 800、19 200、38 400、57 600、115 200)、GPS、GLONASS、北斗、GALILEO、SBAS混合引擎;支持NMEA0183協(xié)議,可任意設(shè)置搭配輸出語句——GGA、GSA、GSV、RMC、VTG、GLL。GPS/北斗模塊電路圖如圖6所示。
圖6 GPS/北斗模塊電路圖
在靠近供電引腳處加入濾波電路,濾波電容靠近引腳放置,保持模塊電源的供電穩(wěn)定性,提高模塊工作的可靠性。模塊啟動(dòng)較慢,可在VBAT引腳處加入備用電源,使模塊能夠?qū)崿F(xiàn)快速定位。
1.5 振動(dòng)傳感器模塊電路設(shè)計(jì)
振動(dòng)傳感器芯片選擇LM393,STM32的任意引腳都可以設(shè)置成中斷引腳,該設(shè)計(jì)振動(dòng)傳感器的輸出引腳接入CPU的PA6引腳。當(dāng)發(fā)生振動(dòng)時(shí),引腳出現(xiàn)高低電平跳變現(xiàn)象,引發(fā)引腳中斷,進(jìn)入中斷程序進(jìn)行處理。振動(dòng)傳感器模塊電路如圖7所示。
圖7 振動(dòng)傳感器模塊電路圖
1.6 電源模塊電路設(shè)計(jì)
終端供電模式為:當(dāng)存在外電的情況下,且鋰電池電量低于4.2 V時(shí),外電對(duì)電路器件進(jìn)行供電,同時(shí)對(duì)鋰電池進(jìn)行充電;當(dāng)外電消失時(shí),鋰電池進(jìn)行供電。電路中需要的電壓值有:STM32供電3.3 V、GPS/北斗模塊3.3 V、GPS模塊 3.3 V、振動(dòng)傳感器模塊 5 V、CAN收發(fā)器 5 V。為了保證在外電斷掉之后電路中仍然能夠產(chǎn)生5V的電壓,整個(gè)電源模塊包含三個(gè)部分:DC-DC降壓電路、充電管理電路、升壓電路。DC-DC降壓和充電管理電路圖以及升壓電路如圖8、圖9、圖10所示。
圖8 降壓電路圖
圖9 充電管理電路
圖10 升壓電路
軟件整體流程圖如圖11所示,下面對(duì)各個(gè)部分分別進(jìn)行介紹。
圖11 車載終端軟件總體流程圖
2.1 網(wǎng)絡(luò)注冊(cè)判斷與TCP連接建立
本設(shè)計(jì)中的GPS/北斗模塊上電后自動(dòng)進(jìn)行GPRS網(wǎng)絡(luò)附著,在發(fā)送程序之前只需要檢查網(wǎng)絡(luò)狀態(tài)即可。如果已經(jīng)注冊(cè)網(wǎng)絡(luò),進(jìn)行數(shù)據(jù)發(fā)送,否則重啟GPRS模塊。為了保證數(shù)據(jù)傳輸?shù)目煽啃院蛯?shí)時(shí)性,終端與服務(wù)器建立的是TCP長連接。檢查網(wǎng)絡(luò)與建立連接用到的AT命令如下:
檢查模塊是否已經(jīng)附著網(wǎng)絡(luò):通過串口向模塊發(fā)送指令A(yù)T+CGATT。模塊返回?cái)?shù)據(jù):+CGATT:1 OK。當(dāng)返回值為1的時(shí)候,表明模塊已經(jīng)成功附著。
建立TCP長連接指令:向模塊發(fā)送 :"AT+CIPSTART="TCP","IP"," 端口號(hào)" "。返回:"CONNECT OK" 。表示成功建立連接,可以進(jìn)行數(shù)據(jù)的發(fā)送。
2.2 數(shù)據(jù)提取和數(shù)據(jù)濾波
提取的數(shù)據(jù)包括車輛位置信息、通過CAN總線采集的車輛行車狀態(tài)信息。采集的車輛行車狀態(tài)信息如表1所列。
對(duì)于CAN總線數(shù)據(jù),根據(jù)接收到的數(shù)據(jù)的PGN進(jìn)行對(duì)應(yīng)數(shù)據(jù)的提取轉(zhuǎn)換,由于電磁環(huán)境的影響,數(shù)據(jù)傳輸過程中有可能發(fā)生突變,在這里要根據(jù)每種數(shù)據(jù)對(duì)應(yīng)的范圍進(jìn)行濾波,去除異常數(shù)據(jù)[5]。數(shù)據(jù)范圍如表1所列。
表1 車輛行車狀態(tài)信息
GPS數(shù)據(jù)提?。菏紫雀鶕?jù)定位標(biāo)志位判斷此次程序是否已經(jīng)定位,然后根據(jù)NMEA協(xié)議和數(shù)據(jù)幀頭格式提取需要的數(shù)據(jù),根據(jù)終端與服務(wù)器的協(xié)議進(jìn)行數(shù)據(jù)變換。由于環(huán)境的影響,定位過程中會(huì)出現(xiàn)漂移現(xiàn)象,通過比較相鄰兩次的經(jīng)緯度數(shù)據(jù),計(jì)算出速度值,與額定速度進(jìn)行比較,如果大于上限值,認(rèn)為定位出現(xiàn)漂移舍棄該次定位。定位流程圖如圖12所示。
圖12 GPS數(shù)據(jù)提取和數(shù)據(jù)濾波流程圖
2.3 數(shù)據(jù)發(fā)送和盲區(qū)補(bǔ)傳功能
農(nóng)機(jī)車輛一般工作環(huán)境惡劣,公網(wǎng)設(shè)施配置較差,會(huì)經(jīng)常出現(xiàn)某一時(shí)間段和區(qū)域沒有網(wǎng)絡(luò)信號(hào),導(dǎo)致數(shù)據(jù)無法正常傳輸。為了避免數(shù)據(jù)丟失,在盲區(qū)將數(shù)據(jù)進(jìn)行本地存儲(chǔ),待網(wǎng)絡(luò)信號(hào)回復(fù)之后,上傳至服務(wù)器,服務(wù)器根據(jù)數(shù)據(jù)段里的時(shí)間戳進(jìn)行數(shù)據(jù)的存儲(chǔ)。在車輛運(yùn)行過程中開啟屏蔽儀,一段時(shí)間后關(guān)閉屏蔽儀,在服務(wù)器上查看這段時(shí)間內(nèi)車輛的歷史軌跡,最后驗(yàn)證了使用該方法可以有效地避免數(shù)據(jù)的丟失。具體流程如圖13所示。
圖13 數(shù)據(jù)發(fā)送和盲區(qū)補(bǔ)傳流程圖
2.4 電子圍欄操作
圖14 電子圍欄操作流程圖
當(dāng)車輛處于閑置狀態(tài),管理人員可以對(duì)車輛進(jìn)行鎖車,設(shè)置電子圍欄操作,流程如圖14所示。
本文所設(shè)計(jì)的車載終端經(jīng)過測(cè)試,能夠準(zhǔn)確地采集車輛信息,并且實(shí)時(shí)地上傳至服務(wù)器,服務(wù)器數(shù)據(jù)顯示結(jié)果如圖15~17所示。
圖15 車載終端定位數(shù)據(jù)顯示界面
圖16 車載終端行車參數(shù)顯示界面
圖17 車載終端控制指令發(fā)送界面圖
[1] 吳瑤,張巖巖. 農(nóng)機(jī)家農(nóng)機(jī)租賃軟件的設(shè)計(jì)構(gòu)想[J]. 現(xiàn)代食品,2016(20):60-62.
[2] 鄭柳萍,梁列全. 工程機(jī)械遠(yuǎn)程監(jiān)測(cè)與故障診斷系統(tǒng)[J]. 工程機(jī)械,2007(7).
[3] 黃曉波,姜振軍,熊樹生,等. 基于GPRS的遠(yuǎn)程診斷車載終端的設(shè)計(jì)與實(shí)現(xiàn)[J]. 工業(yè)儀表與自動(dòng)化裝置,2016(1).
[4] 于文堯. 基于車聯(lián)網(wǎng)的智能數(shù)據(jù)采集終端的研制[D].北京:中國地質(zhì)大學(xué),2016.
[5] 王新忠,王熙,王少農(nóng),等. 拖拉機(jī)CAN總線車載智能終端技術(shù)研究[J]. 農(nóng)機(jī)化研究,2017(2):210-214.
卜國順(碩士研究生),主要研究方向?yàn)檐嚶?lián)網(wǎng)。
RemoteReal-timeMonitoringTerminalforAgriculturalMachinery
BuGuoshun
(College of Communication and Information Technology,University of Posts and Telecommunications of Chongqing,Chongqing 400065,China)
In the paper,a vehicle monitoring terminal for agricultural machinery filed is proposed,which takes STM32F103 as the core and uses GPS positioning technology,CAN communication technology and GPRS communication technology.The terminal can collect the vehicle status information in real-time and transmit it to the remote monitoring center through the wireless network.At the same time,it can handle the instructions from the remote monitoring center which include limiting the speed,locking the vehicle,and setting up electronic fences.It provides the data support for rapid vehicle fault location,maintenance and management.At present,the vehicle terminal has been applied in the agricultural vehicles of an agricultural machinery company in Luoyang and the operation is stable and reliable.
GPS;interrupt;STM32F103;CAN bus
TP23
A
2017-07-24)