孫永佳,竇青青,張波,孫宜田,沈景新
(1. 山東省農(nóng)業(yè)機(jī)械科學(xué)研究院,濟(jì)南市,250100; 2. 卡樂(濟(jì)南)設(shè)計(jì)有限公司,濟(jì)南市,250031)
農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng)是采用GPS/BDS衛(wèi)星定位技術(shù)、GPRS無(wú)線傳輸技術(shù)和計(jì)算機(jī)自動(dòng)化控制技術(shù),將農(nóng)機(jī)作業(yè)的數(shù)據(jù)信息、空間信息和圖像信息傳輸?shù)竭h(yuǎn)程監(jiān)管平臺(tái)的綜合性系統(tǒng)。目前,國(guó)外的大型農(nóng)業(yè)機(jī)械大部分均安裝有遠(yuǎn)程實(shí)時(shí)監(jiān)控系統(tǒng),通過車載終端采集農(nóng)機(jī)作業(yè)位置及工作狀態(tài)等信息,并通過無(wú)線通信網(wǎng)絡(luò)向監(jiān)控管理中心服務(wù)器實(shí)時(shí)傳輸[1-2]。
隨著“十三五”以來對(duì)智能農(nóng)機(jī)裝備的深入研究,我國(guó)在耕、種、管、收等主要農(nóng)機(jī)作業(yè)環(huán)節(jié)均有智能化監(jiān)控裝備安裝應(yīng)用,但對(duì)于農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng)的研究剛剛起步,如杜志偉等[3]采用LPC2368芯片設(shè)計(jì)的農(nóng)機(jī)作業(yè)狀態(tài)監(jiān)控系統(tǒng),按照J(rèn)T/T808協(xié)議傳輸數(shù)據(jù),數(shù)據(jù)傳輸成功率在98.3%左右;田野等[4]基于嵌入式技術(shù)和3 g通信技術(shù)設(shè)計(jì)一套應(yīng)用于農(nóng)機(jī)作業(yè)現(xiàn)場(chǎng)的視頻無(wú)線傳輸系統(tǒng),能夠?qū)崿F(xiàn)每秒25幀720×576分辨率的實(shí)時(shí)視頻傳輸。這些產(chǎn)品功能過于單一,無(wú)法滿足客戶對(duì)農(nóng)機(jī)遠(yuǎn)程監(jiān)控管理產(chǎn)品日益增長(zhǎng)的需求,并且由于農(nóng)機(jī)作業(yè)多在野外偏僻的農(nóng)田,無(wú)線網(wǎng)絡(luò)覆蓋面不如城市地區(qū)廣泛,存在無(wú)線網(wǎng)絡(luò)信號(hào)丟失的盲點(diǎn),此時(shí)采集到的作業(yè)信息就無(wú)法傳輸?shù)竭h(yuǎn)程監(jiān)管平臺(tái),導(dǎo)致作業(yè)數(shù)據(jù)丟失[5-7]。因此,研究具有補(bǔ)傳機(jī)制的農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng)顯得十分重要。
針對(duì)上述情況,本文設(shè)計(jì)了一款基于ARM的農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng),可以實(shí)現(xiàn)農(nóng)機(jī)作業(yè)的數(shù)據(jù)信息、空間信息和圖像信息的遠(yuǎn)程傳輸,同時(shí)設(shè)計(jì)了作業(yè)信息補(bǔ)傳系統(tǒng),保證了在田間GPRS移動(dòng)無(wú)線網(wǎng)絡(luò)信號(hào)丟失時(shí)的作業(yè)信息正常傳輸,并對(duì)數(shù)據(jù)遠(yuǎn)程傳輸模塊、作業(yè)圖像采集模塊、CAN總線通信模塊和衛(wèi)星定位模塊等進(jìn)行設(shè)計(jì),并進(jìn)行試驗(yàn)驗(yàn)證。
整個(gè)遠(yuǎn)程傳輸系統(tǒng)的設(shè)計(jì)框圖如圖1所示,包括數(shù)據(jù)遠(yuǎn)程傳輸模塊、作業(yè)圖像采集模塊、CAN總線通信模塊、衛(wèi)星定位模塊和作業(yè)數(shù)據(jù)補(bǔ)傳模塊,其中,CAN總線通信模塊與各種機(jī)具的作業(yè)數(shù)據(jù)采集系統(tǒng)連接,作業(yè)數(shù)據(jù)采集系統(tǒng)可按照約定好的通信協(xié)議向本文設(shè)計(jì)的遠(yuǎn)程輸出系統(tǒng)發(fā)送作業(yè)數(shù)據(jù),例如播種機(jī)的每行播種數(shù)量、植保機(jī)的噴霧流量、深松機(jī)的耕作深度等。
圖1 控制系統(tǒng)整體設(shè)計(jì)框圖
作業(yè)圖像采集模塊和衛(wèi)星定位模塊負(fù)責(zé)作業(yè)機(jī)具的圖像數(shù)據(jù)和空間數(shù)據(jù)的采集,控制器負(fù)責(zé)生成機(jī)具作業(yè)的時(shí)間數(shù)據(jù),并把收集到的時(shí)間信息、空間信息、圖像信息和作業(yè)數(shù)據(jù)信息進(jìn)行數(shù)據(jù)幀解析整合,通過遠(yuǎn)程傳輸模塊發(fā)送到監(jiān)管平臺(tái),從而實(shí)現(xiàn)各種類型農(nóng)機(jī)具的作業(yè)信息的遠(yuǎn)程傳輸。數(shù)據(jù)補(bǔ)傳模塊用于田間無(wú)線信號(hào)缺失時(shí)的作業(yè)信息本地存儲(chǔ)和遠(yuǎn)程補(bǔ)傳,與控制器之間通過SPI總線連接。
系統(tǒng)硬件設(shè)計(jì)分為器件選型和原理圖PCB設(shè)計(jì),設(shè)計(jì)軟件采用Altium Designer 2015,分模塊進(jìn)行設(shè)計(jì),硬件部分的模塊組成包括主芯片電路、作業(yè)圖像采集模塊、作業(yè)數(shù)據(jù)采集系統(tǒng)、遠(yuǎn)程傳輸和衛(wèi)星定位模塊以及作業(yè)數(shù)據(jù)補(bǔ)傳模塊。
針對(duì)系統(tǒng)對(duì)多種通信接口的需求,主芯片選用STM32F103,該芯片采用Cortex-M3內(nèi)核,CPU最高速度達(dá)72 MHz,內(nèi)部擁有資源包括3個(gè)SPI、2個(gè)IIC、5個(gè)USART、1個(gè)USB、1個(gè)CAN等,并帶有4個(gè)片選的靈活的靜態(tài)存儲(chǔ)器控制器,支持CF卡、SRAM、PSRAM、NOR和NAND存儲(chǔ)器,配置非常強(qiáng)大,滿足系統(tǒng)需求[17],主芯片電路如圖2所示。
圖2 主芯片電路
作業(yè)圖像采集模塊通過串口攝像頭采集農(nóng)機(jī)的田間作業(yè)圖像,攝像頭需要具備很好的防水性能,本文選用JP-C38CK型串口攝像頭,其內(nèi)部包含30萬(wàn)像素CMOS傳感器,可輸出標(biāo)準(zhǔn)JPEG/M-JPEG格式的圖像,具有標(biāo)準(zhǔn)的RS232串行接口,可實(shí)現(xiàn)自動(dòng)曝光、自動(dòng)白平衡、自動(dòng)增益控制。串口攝像頭與控制器之間通過串口進(jìn)行數(shù)據(jù)通信,波特率設(shè)置為9 600 bps,串口電路如圖3所示,串口芯片選用MAX3232。
圖3 串口電路
現(xiàn)有的農(nóng)機(jī)裝備智能監(jiān)控系統(tǒng)基本都可實(shí)現(xiàn)農(nóng)機(jī)作業(yè)數(shù)據(jù)的采集,但缺少遠(yuǎn)程傳輸功能,本文設(shè)計(jì)的遠(yuǎn)程傳輸系統(tǒng)需要通過一個(gè)通信接口讀取這些監(jiān)控系統(tǒng)采集到的作業(yè)數(shù)據(jù),參考國(guó)外成熟的ISO-BUS總線,本文選用CAN總線作為農(nóng)機(jī)作業(yè)數(shù)據(jù)采集接口。
主芯片STM32F103內(nèi)部集成有1個(gè)CAN總線控制器,支持標(biāo)準(zhǔn)的CAN2.0B通信,與作業(yè)數(shù)據(jù)采集系統(tǒng)之間還需要CAN收發(fā)器才能實(shí)現(xiàn)數(shù)據(jù)通信。本文選用SN65HVD233芯片作為CAN收發(fā)器,該芯片具有高輸入阻抗,允許120個(gè)節(jié)點(diǎn)保護(hù),過電壓保護(hù)高達(dá)±36 V,同時(shí)還具有容錯(cuò)接地保護(hù)以及過熱關(guān)斷保護(hù)等功能,在農(nóng)機(jī)作業(yè)高噪聲、高擾動(dòng)的復(fù)雜工作環(huán)境下具有良好的工作性能,總線接口電路如圖4所示。
圖4 總線接口電路
為了降低系統(tǒng)成本,簡(jiǎn)化硬件電路,本文選用一個(gè)集成化的SIM808模塊來實(shí)現(xiàn)遠(yuǎn)程傳輸和衛(wèi)星定位功能。SIM808是由SIMCOM推出的GSM+GPS+藍(lán)牙三合一組合模塊,其內(nèi)部集成了四頻段GSM/GPRS和GPS導(dǎo)航技術(shù),可大大節(jié)省用戶開發(fā)GPS應(yīng)用的時(shí)間和成本。SIM808的GPRS上行、下行傳輸最大速率均可達(dá)85.6 kbps,GPS定位水平精度<2.5 m,定時(shí)準(zhǔn)確性10 ns,SIM808與控制器之間通過串口進(jìn)行通信,控制器通過發(fā)送AT命令對(duì)SIM808進(jìn)行控制,其電路如圖5所示。
圖5 SIM808控制電路
針對(duì)農(nóng)機(jī)在田間作業(yè)易發(fā)生無(wú)線信號(hào)丟失,導(dǎo)致遠(yuǎn)程平臺(tái)接收到的作業(yè)數(shù)據(jù)缺失的問題,本文設(shè)計(jì)的遠(yuǎn)程傳輸系統(tǒng)具備數(shù)據(jù)本地存儲(chǔ)和遠(yuǎn)程補(bǔ)傳的功能,當(dāng)無(wú)線信號(hào)丟失,無(wú)法連接遠(yuǎn)程平臺(tái)時(shí),先把當(dāng)前的作業(yè)數(shù)據(jù)存儲(chǔ)到機(jī)載儲(chǔ)存單元中,當(dāng)系統(tǒng)重新接入到遠(yuǎn)程平臺(tái)時(shí),把記錄下來的數(shù)據(jù)進(jìn)行補(bǔ)傳,確保整個(gè)作業(yè)環(huán)節(jié)數(shù)據(jù)連續(xù)可靠。數(shù)據(jù)儲(chǔ)存單元選用W25Q128芯片,該芯片是一款SPI接口NOR Flash芯片,其存儲(chǔ)空間為16 MB,非常適用于RAM的編碼映射,可直接通過(兩線/四線)SPI接口執(zhí)行代碼、存儲(chǔ)語(yǔ)音、文本和數(shù)據(jù),本文的W25Q128芯片通過四線SPI接口與主芯片連接,電路如圖6所示。
圖6 數(shù)據(jù)補(bǔ)傳模塊電路
本文設(shè)計(jì)的SIM808與遠(yuǎn)程平臺(tái)之間通過TCP/IP協(xié)議進(jìn)行數(shù)據(jù)傳輸,服務(wù)器地址采用域名方式,端口號(hào)為8080,整個(gè)傳輸?shù)臄?shù)據(jù)幀包括幀頭、作業(yè)類型、設(shè)備ID、數(shù)據(jù)長(zhǎng)度、作業(yè)數(shù)據(jù)、校驗(yàn)碼和幀尾等,通信協(xié)議如表1所示,幀頭、校驗(yàn)碼和幀尾用于校驗(yàn)遠(yuǎn)程傳輸系統(tǒng)發(fā)送數(shù)據(jù)的有效性,若三者任意一項(xiàng)校驗(yàn)未通過,則表明該幀數(shù)據(jù)為無(wú)效數(shù)據(jù);作業(yè)類型用于區(qū)分不同作業(yè)環(huán)節(jié)的數(shù)據(jù),本文設(shè)計(jì)的遠(yuǎn)程傳輸系統(tǒng)播種作業(yè)設(shè)置為10400,深松作業(yè)設(shè)置為10200,植保作業(yè)設(shè)置為10500,收獲作業(yè)設(shè)置為10700;設(shè)備ID用于區(qū)分同作業(yè)類型下的不同設(shè)備,長(zhǎng)度為4個(gè)字節(jié),可區(qū)分多達(dá)42億臺(tái)設(shè)備;數(shù)據(jù)長(zhǎng)度用于指定傳輸?shù)竭h(yuǎn)程平臺(tái)的每幀數(shù)據(jù)的具體長(zhǎng)度,便于平臺(tái)進(jìn)行數(shù)據(jù)解析;作業(yè)數(shù)據(jù)的長(zhǎng)度不固定,其與作業(yè)類型匹配,包含作業(yè)的時(shí)間信息、數(shù)據(jù)信息、圖像信息和空間信息,其中數(shù)據(jù)信息和圖像信息通過標(biāo)志位進(jìn)行區(qū)分,空間信息的經(jīng)緯度按照ASCII碼格式發(fā)送。
表1 通信協(xié)議Tab. 1 Communication protocol
以深松作業(yè)為例,具體的作業(yè)數(shù)據(jù)的傳輸協(xié)議如表2所示,先發(fā)送作業(yè)的具體時(shí)間,此時(shí)間從定位模塊中讀取,需要進(jìn)行北京時(shí)間轉(zhuǎn)換,故障狀態(tài)位用于平臺(tái)判斷機(jī)具端的故障,并進(jìn)行故障信息記錄,便于進(jìn)行系統(tǒng)查詢,具體的故障類型可查詢對(duì)應(yīng)的故障代碼說明,衛(wèi)星連接數(shù)量用于指示當(dāng)前的連接衛(wèi)星信號(hào)強(qiáng)度,數(shù)量越大表示信號(hào)強(qiáng)度越好,圖片數(shù)據(jù)標(biāo)志位用于區(qū)分作業(yè)數(shù)據(jù)和照片數(shù)據(jù),幅寬表示機(jī)具的作業(yè)寬幅,用于平臺(tái)進(jìn)行面積計(jì)算,實(shí)時(shí)耕深為機(jī)具端采集的實(shí)際耕作深度,平臺(tái)可根據(jù)該數(shù)據(jù)進(jìn)行作業(yè)質(zhì)量判斷。
表2 深松作業(yè)數(shù)據(jù)協(xié)議Tab. 2 Subsoiling operation data protocol
系統(tǒng)軟件采用Keil uVision5開發(fā),采用模塊化開發(fā)模式,軟件流程如圖7所示,系統(tǒng)上電后先進(jìn)行CAN模塊初始化操作,初始化完畢后通過CAN通信模塊接收作業(yè)數(shù)據(jù)采集系統(tǒng)發(fā)送的作業(yè)數(shù)據(jù),之后系統(tǒng)初始化串口模塊和SIM808芯片,通過串口1讀取SIM808定位模塊的時(shí)間信息和空間信息,通過串口2讀取攝像頭采集的圖像信息,最后與CAN通信讀取到的作業(yè)數(shù)據(jù)按照遠(yuǎn)程傳輸協(xié)議進(jìn)行數(shù)據(jù)融合,然后設(shè)置SIM808的遠(yuǎn)程傳輸協(xié)議為TCP/IP,并根據(jù)要連接的遠(yuǎn)程平臺(tái)設(shè)置平臺(tái)域名和端口號(hào),通過串口發(fā)送AT指令與遠(yuǎn)程服務(wù)器建立通信連接,若連接失敗,則把此時(shí)的數(shù)據(jù)信息存儲(chǔ)到本地的NOR Flash芯片中,然后重新嘗試與服務(wù)器建立連接。連接成功后,先判斷是否存在需要補(bǔ)傳的數(shù)據(jù)信息,若是則先發(fā)送補(bǔ)傳數(shù)據(jù),補(bǔ)傳數(shù)據(jù)發(fā)送完畢后,發(fā)送實(shí)時(shí)數(shù)據(jù)。
圖7 系統(tǒng)軟件流程圖
本文設(shè)計(jì)的農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng)在山東農(nóng)業(yè)機(jī)械科學(xué)研究院的遠(yuǎn)程監(jiān)管平臺(tái)上進(jìn)行了應(yīng)用,并進(jìn)行了系統(tǒng)通信可靠性測(cè)試和系統(tǒng)安全保障機(jī)制試驗(yàn)。
試驗(yàn)時(shí),遠(yuǎn)程傳輸系統(tǒng)安裝在拖拉機(jī)上,田間地塊無(wú)高建筑遮擋,在遠(yuǎn)程服務(wù)器通過網(wǎng)絡(luò)調(diào)試助手設(shè)置好IP地址和端口號(hào),并進(jìn)行數(shù)據(jù)監(jiān)聽。遠(yuǎn)程傳輸系統(tǒng)配置SIM808的發(fā)送地址和端口號(hào)與遠(yuǎn)程服務(wù)器一致,之后進(jìn)行數(shù)據(jù)傳輸,發(fā)送時(shí)間間隔為2 s,發(fā)送的數(shù)據(jù)幀內(nèi)包含該包數(shù)據(jù)的幀序號(hào),每發(fā)送完一幀數(shù)據(jù)幀序號(hào)自動(dòng)加1,累計(jì)發(fā)送1 000幀數(shù)據(jù)后停止試驗(yàn),通過遠(yuǎn)程平臺(tái)的網(wǎng)絡(luò)調(diào)試助手查看接收到的數(shù)據(jù)幀是否存在數(shù)據(jù)丟失的情況,分別記錄遠(yuǎn)程傳輸系統(tǒng)發(fā)送的數(shù)據(jù)幀數(shù)和接收到的數(shù)據(jù)幀數(shù),計(jì)算數(shù)據(jù)丟包率,重復(fù)5次試驗(yàn),試驗(yàn)結(jié)果如表3所示。
表3 數(shù)據(jù)丟包率試驗(yàn)結(jié)果Tab. 3 Packet loss rate experiment result
由表3可知,本文設(shè)計(jì)的遠(yuǎn)程傳輸系統(tǒng)的數(shù)據(jù)丟包率不超過0.2%,系統(tǒng)穩(wěn)定可靠。產(chǎn)生數(shù)據(jù)丟包的主要原因是平臺(tái)網(wǎng)絡(luò)環(huán)境的波動(dòng),由于本系統(tǒng)具有數(shù)據(jù)補(bǔ)傳機(jī)制,因此即使網(wǎng)絡(luò)環(huán)境波動(dòng)時(shí),數(shù)據(jù)仍可以有效地傳輸。
對(duì)系統(tǒng)安全保障機(jī)制進(jìn)行測(cè)試時(shí),在系統(tǒng)遠(yuǎn)程通信正常的情況下,通過關(guān)閉遠(yuǎn)程平臺(tái)網(wǎng)絡(luò)調(diào)試助手的端口的方式模擬系統(tǒng)遠(yuǎn)程傳輸異?,F(xiàn)象,遠(yuǎn)程傳輸系統(tǒng)與遠(yuǎn)程平臺(tái)的連接斷開后,重新打開網(wǎng)絡(luò)調(diào)試助手的監(jiān)聽端口。傳輸?shù)臄?shù)據(jù)幀中包含補(bǔ)傳數(shù)據(jù)標(biāo)志位,通過觀察網(wǎng)絡(luò)調(diào)試助手接收到的數(shù)據(jù)幀是否包含補(bǔ)傳標(biāo)志位,判斷數(shù)據(jù)補(bǔ)傳是否成功,重復(fù)5次試驗(yàn),記錄數(shù)據(jù),如表4所示。
由表4可知,本文設(shè)計(jì)的農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng)的安全保障機(jī)制完善,掉線后數(shù)據(jù)補(bǔ)傳的成功率為100%,系統(tǒng)通信可靠性良好,滿足遠(yuǎn)程監(jiān)管的要求。
表4 數(shù)據(jù)補(bǔ)傳試驗(yàn)結(jié)果Tab. 4 Data supplementary transmission experiment result
1) 本文設(shè)計(jì)的基于ARM的農(nóng)機(jī)作業(yè)信息遠(yuǎn)程傳輸系統(tǒng),結(jié)構(gòu)精簡(jiǎn),操作方便,可以實(shí)現(xiàn)農(nóng)機(jī)作業(yè)的數(shù)據(jù)信息、空間信息和圖像信息的遠(yuǎn)程傳輸,并具有作業(yè)信息補(bǔ)傳機(jī)制,保證了在田間GPRS移動(dòng)無(wú)線網(wǎng)絡(luò)信號(hào)丟失時(shí)的作業(yè)信息正常傳輸,為作業(yè)質(zhì)量遠(yuǎn)程監(jiān)管提供了技術(shù)支撐。
2) 試驗(yàn)結(jié)果表明,該系統(tǒng)丟包率低于0.2%,掉線后數(shù)據(jù)補(bǔ)傳的成功率100%,系統(tǒng)通信可靠性和安全性良好。