劉昱顯 來智勇 石復(fù)習(xí) 田建州
摘 要: 提出一種多網(wǎng)絡(luò)遠(yuǎn)程控制方法,以平行四桿結(jié)構(gòu)桁架為載臺(tái),基于STM32F407芯片設(shè)計(jì)步進(jìn)電機(jī)驅(qū)動(dòng)電路和反饋信號(hào)采集電路。通過4G網(wǎng)絡(luò)、W5200網(wǎng)絡(luò)模塊、OneNET平臺(tái)組網(wǎng)實(shí)現(xiàn)專家端口和數(shù)據(jù)中心交互控制網(wǎng)絡(luò)相機(jī)精準(zhǔn)定位的功能。根據(jù)實(shí)時(shí)性和精準(zhǔn)性設(shè)計(jì)網(wǎng)絡(luò)控制方案,并提出相機(jī)定位公式。為使水平移動(dòng)誤差控制在5%內(nèi),綜合考慮靈敏度、穩(wěn)定性、移動(dòng)誤差,設(shè)定電機(jī)速度為2.0 cm/s。調(diào)整參數(shù)改善網(wǎng)絡(luò)通信并統(tǒng)計(jì)流量消耗,最終設(shè)定系統(tǒng)異常重啟時(shí)長為30 s,W5200網(wǎng)絡(luò)通信定時(shí)參數(shù)為5 s,W5200網(wǎng)絡(luò)異常重啟時(shí)長為10 s,每小時(shí)消耗流量3~4 MB。
關(guān)鍵詞: 多網(wǎng)絡(luò); 平行四桿桁架; 步進(jìn)電機(jī); 交互控制; W5200網(wǎng)絡(luò); 相機(jī)定位
中圖分類號(hào): TN711?34; TP273.5 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2018)12?0006?04
Abstract: A multi?network remote control method is proposed. With the parallel four?bar structure truss as the platform, the stepper motor drive circuit and feedback signal acquisition circuit are designed based on the STM32F407 chip. The accurate positioning function of the network camera interactively controlled by the expert port and data center is realized by means of the networking of 4G network, W5200 network module, and OneNET platform. Network control scheme is designed according to the real?time and precision performances, and the camera positioning formula is put forward. To control the horizontal movement error within 5%, the motor speed is set to 2.0 cm/s, comprehensively considering the sensitivity, stability and movement error. Network communications is improved by adjusting parameters, and traffic consumption statistics is obtained. The abnormal restart time duration of the system is set to 30 s, the timing parameter of W5200 network communications is set to 5 s, and the abnormal restart time duration of W5200 network is set to 10 s, with 3~4 MB traffic consumed per hour.
Keywords: multi?network; parallel four?bar truss; stepper motor; interactive control; W5200 network; camera positioning
0 引 言
基于T型桁架應(yīng)用網(wǎng)絡(luò)通信和步進(jìn)電機(jī)控制技術(shù)設(shè)計(jì)的作物監(jiān)測系統(tǒng)實(shí)現(xiàn)了遠(yuǎn)程多點(diǎn)監(jiān)測[1],但存在以下問題:第一、僅使用有線網(wǎng)絡(luò)在農(nóng)田部署的成本和維護(hù)代價(jià)較高,且難以實(shí)現(xiàn)跨網(wǎng)交互實(shí)時(shí)控制;第二、T型桁架垂直導(dǎo)桿搭載步進(jìn)電機(jī)震動(dòng)嚴(yán)重影響網(wǎng)絡(luò)相機(jī)運(yùn)動(dòng)穩(wěn)定性,且運(yùn)動(dòng)方式不靈活;第三、不能精準(zhǔn)定位和實(shí)時(shí)反饋網(wǎng)絡(luò)相機(jī)位置。龔金成等對(duì)步進(jìn)電機(jī)的網(wǎng)絡(luò)控制策略、通信方式和安全控制等方面進(jìn)行了研究,采用在遠(yuǎn)程客戶端實(shí)時(shí)操控電機(jī)的方法[2]。4G網(wǎng)絡(luò)無需布線、傳輸速度高、實(shí)時(shí)性好 [3],謝相博等基于4G設(shè)計(jì)的無人機(jī)巡航系統(tǒng)實(shí)現(xiàn)了遠(yuǎn)程飛行控制和準(zhǔn)確反饋飛行信息[4]。無線網(wǎng)絡(luò)對(duì)TCP擁塞控制具有挑戰(zhàn)性,國內(nèi)外多是從擁塞控制算法方面改進(jìn)以提高TCP通信性能[5],為應(yīng)對(duì)互聯(lián)網(wǎng)擁塞控制異質(zhì)性,Wang Z等提出了一種INVS的新型TCP協(xié)議[6]。由于網(wǎng)絡(luò)通信中存在多種網(wǎng)絡(luò)結(jié)構(gòu),基于TCP協(xié)議跨平臺(tái)通信會(huì)導(dǎo)致很多問題,而基于物聯(lián)網(wǎng)平臺(tái)可解決該問題,石棟等設(shè)計(jì)的老人活動(dòng)監(jiān)測系統(tǒng)可通過手機(jī)APP或物聯(lián)網(wǎng)云平臺(tái)查看 [7];袁穎等為研究環(huán)境參數(shù)對(duì)光伏電站的影響利用Yeelink平臺(tái)實(shí)現(xiàn)上位機(jī)監(jiān)測[8]。本文通過專家端口和數(shù)據(jù)中心利用OneNET平臺(tái)、W5200硬件TCP/IP協(xié)議棧、4G網(wǎng)絡(luò)組網(wǎng)實(shí)現(xiàn)多網(wǎng)絡(luò)交互控制步進(jìn)電機(jī)精準(zhǔn)定位,設(shè)計(jì)平行四桿結(jié)構(gòu)桁架并研究步進(jìn)電機(jī)的網(wǎng)絡(luò)控制策略。
1 系統(tǒng)設(shè)計(jì)
1.1 平行四桿結(jié)構(gòu)桁架設(shè)計(jì)
所設(shè)計(jì)桁架采用單軌雙電機(jī)協(xié)同驅(qū)動(dòng),以增強(qiáng)縱向穩(wěn)定性,平行四桿結(jié)構(gòu)桁架如圖1所示,網(wǎng)絡(luò)相機(jī)運(yùn)動(dòng)路徑更加靈活。
1.2 步進(jìn)電機(jī)精準(zhǔn)定位設(shè)計(jì)
網(wǎng)絡(luò)相機(jī)通過步進(jìn)電機(jī)協(xié)同驅(qū)動(dòng),并依據(jù)捕獲的步進(jìn)電機(jī)反饋脈沖信號(hào)以實(shí)現(xiàn)精準(zhǔn)定位,為此設(shè)計(jì)驅(qū)動(dòng)電路和步進(jìn)電機(jī)反饋信號(hào)采集電路,并設(shè)計(jì)控制電路以實(shí)現(xiàn)信號(hào)處理功能。不同控制電路和方法會(huì)影響步進(jìn)電機(jī)驅(qū)動(dòng)性能[9]。李傳明等為改善步進(jìn)電機(jī)失步基于STM32設(shè)計(jì)系統(tǒng)的控制誤差[10]小于0.01°。采用基于ARM Cortex?M3架構(gòu)的STM32F407VET6芯片設(shè)計(jì)控制電路 [11]。其定時(shí)器功能和外部中斷控制器性能滿足雙路驅(qū)動(dòng)信號(hào)輸出和反饋信號(hào)采集需求,其時(shí)鐘頻率滿足信號(hào)處理速度要求。步進(jìn)電機(jī)可將STM32F407VET6芯片輸出的數(shù)字脈沖信號(hào)轉(zhuǎn)化為角位移偏量,因此采用LC86H298型兩相閉環(huán)步進(jìn)電機(jī),根據(jù)搭載網(wǎng)絡(luò)相機(jī)重量和桁架機(jī)械摩擦力,步進(jìn)電機(jī)相電流為3.0 A,保持力矩為3.0 N·m,均采用37 V直流電壓驅(qū)動(dòng)。步進(jìn)電機(jī)驅(qū)動(dòng)器采用LCDA86H型,驅(qū)動(dòng)脈沖信號(hào)和步進(jìn)電機(jī)反饋脈沖信號(hào)標(biāo)準(zhǔn)電壓為5 V,而STM32F407VET6芯片標(biāo)準(zhǔn)電壓為3.3 V,因此在驅(qū)動(dòng)電路和步進(jìn)電機(jī)反饋信號(hào)采集電路中采用PC818芯片設(shè)計(jì)了光耦隔離功能。STM32F407的PC0,PC1輸出速度脈沖信號(hào)和方向脈沖信號(hào)給1號(hào)步進(jìn)電機(jī),PC2,PC3輸出速度脈沖信號(hào)和方向脈沖信號(hào)給2號(hào)步進(jìn)電機(jī), PE0,PE1采集1號(hào)步進(jìn)電機(jī)反饋脈沖信號(hào),PE2,PE3采集2號(hào)步進(jìn)電機(jī)反饋脈沖信號(hào)。反饋信號(hào)采集電路外接5 MHz的差分信號(hào)轉(zhuǎn)集電極信號(hào)模塊,兩相閉環(huán)步進(jìn)電機(jī)每轉(zhuǎn)動(dòng)1圈產(chǎn)生1 000個(gè)脈沖信號(hào),工作頻率滿足要求。其輸入端與閉環(huán)步進(jìn)電機(jī)驅(qū)動(dòng)器反饋信號(hào)連接,輸出端與反饋信號(hào)采集電路輸入端相連,所設(shè)計(jì)控制器如圖2所示。
1.3 遠(yuǎn)程控制步進(jìn)電機(jī)的W5200通信設(shè)計(jì)
STM32F407與W5200通過SPI1接口通信,速率高達(dá)80 MHz,可觸發(fā)中斷專用發(fā)送和接收,并使用DMA進(jìn)行數(shù)據(jù)傳輸。為降低網(wǎng)絡(luò)通信功耗,W5200采用以太網(wǎng)數(shù)據(jù)包網(wǎng)絡(luò)喚醒模式,其以太網(wǎng)接口與4G無線路由器通過網(wǎng)線連接,在軟件中設(shè)置網(wǎng)絡(luò)參數(shù)并通過HTTP報(bào)文協(xié)議與OneNET服務(wù)器雙向通信。分析網(wǎng)絡(luò)通信過程:專家端口或數(shù)據(jù)中心通過OneNET服務(wù)器傳遞控制命令,W5200通過4G網(wǎng)絡(luò)連接OneNET服務(wù)器獲取網(wǎng)絡(luò)相機(jī)運(yùn)動(dòng)控制命令,并由STM32F407解析和驅(qū)動(dòng)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)實(shí)現(xiàn)網(wǎng)絡(luò)相機(jī)精準(zhǔn)移動(dòng)。STM32F407定時(shí)將網(wǎng)絡(luò)相機(jī)在桁架坐標(biāo)體系中的位置信息通過W5200和4G網(wǎng)絡(luò)傳遞到OneNET服務(wù)器,專家端口和數(shù)據(jù)中心均通過OneNET服務(wù)器獲取網(wǎng)絡(luò)相機(jī)的最新位置。每條控制指令和反饋數(shù)據(jù)通過該組網(wǎng)方案進(jìn)行傳輸在如下過程產(chǎn)生延時(shí):路由處理、OneNET處理、W5200處理。無線網(wǎng)絡(luò)延時(shí)和故障難以避免,增加了對(duì)實(shí)時(shí)性要求較高的步進(jìn)電機(jī)精準(zhǔn)移動(dòng)控制難度,為此設(shè)計(jì)的通信流程如圖4所示。
初始化完成I/O口、時(shí)鐘、串口、SPI、W5200、AT24C02、DMA、定時(shí)器、中斷配置、網(wǎng)絡(luò)配置的初始化。AT24C02存儲(chǔ)網(wǎng)絡(luò)相機(jī)位置信息,以防因系統(tǒng)重啟而導(dǎo)致數(shù)據(jù)丟失,采用先存儲(chǔ)后傳輸模式。W5200實(shí)時(shí)獲取最新預(yù)定到達(dá)位置,并優(yōu)先檢測位置歸零命令。如檢測位置歸零開關(guān)狀態(tài)為ON,則將AT24C02模塊存儲(chǔ)的網(wǎng)絡(luò)相機(jī)位置數(shù)據(jù)清零,直至位置歸零狀態(tài)為OFF才檢測其他控制命令。制定網(wǎng)絡(luò)相機(jī)運(yùn)動(dòng)策略避免因網(wǎng)絡(luò)相機(jī)同時(shí)水平和垂直運(yùn)動(dòng)不穩(wěn)定的弊端。W5200采用DHCP方法獲取IP地址,作為客戶端通過TCP/IP協(xié)議與OneNET服務(wù)器完成數(shù)據(jù)交互,通過Socket方法通信,連接函數(shù)出現(xiàn)超時(shí)中斷則需重新調(diào)用,因此W5200網(wǎng)絡(luò)通信中斷處理的設(shè)計(jì)至關(guān)重要。利用STM32F407的16個(gè)中斷優(yōu)先級(jí)嵌套矢量中斷控制器實(shí)現(xiàn)更低的W5200網(wǎng)絡(luò)通信中斷處理延遲,直接向內(nèi)核傳遞中斷入口向量表地址,使中斷提前處理,中斷入口在中斷退出時(shí)不需指令可自動(dòng)恢復(fù),在頻繁調(diào)用的中斷函數(shù)中直接配置寄存器以縮短數(shù)據(jù)處理時(shí)間。W5200中斷處理設(shè)計(jì)流程如圖5所示。
其中S_tx_process()函數(shù)指定Socket0發(fā)送數(shù)據(jù), S_rx_process()函數(shù)指定Socket0接收數(shù)據(jù),如果Socket0產(chǎn)生數(shù)據(jù)中斷則調(diào)用該函數(shù)。Read_W5200()函數(shù)從W5200指定寄存器讀取一個(gè)字節(jié)數(shù)據(jù),Write_W5200()函數(shù)向W5200指定寄存器寫數(shù)據(jù),其底層實(shí)現(xiàn)使用了SPI1通信方式。
2 系統(tǒng)測試和分析
經(jīng)測試步進(jìn)電機(jī)協(xié)同驅(qū)動(dòng)過程中無明顯啟動(dòng)和停止時(shí)間差,電機(jī)轉(zhuǎn)速越慢網(wǎng)絡(luò)相機(jī)晃動(dòng)幅度越小。實(shí)施了網(wǎng)絡(luò)相機(jī)移動(dòng)誤差測試,設(shè)定水平預(yù)定位置為50.0 cm,測試不同速度模式下水平移動(dòng)誤差,經(jīng)過80次測試平均誤差如表1所示。
為了使水平移動(dòng)誤差控制在5%內(nèi),綜合考慮控制靈敏度、網(wǎng)絡(luò)相機(jī)運(yùn)動(dòng)穩(wěn)定性、移動(dòng)誤差要求,最終設(shè)定電機(jī)速度為2.0 cm/s。該速度模式滿足遠(yuǎn)程控制網(wǎng)絡(luò)相機(jī)通過桁架進(jìn)行多點(diǎn)監(jiān)控的要求。通過調(diào)整參數(shù)改善網(wǎng)絡(luò)通信性能并統(tǒng)計(jì)流量消耗情況。4G無線路由器采用華為B315S?936型,網(wǎng)絡(luò)協(xié)議是IEEE 802.11b/g/n。經(jīng)過實(shí)驗(yàn),最終確定系統(tǒng)異常定時(shí)重啟時(shí)長為30 s,W5200獲取OneNET服務(wù)器最新數(shù)據(jù)定時(shí)參數(shù)為5 s,W5200網(wǎng)絡(luò)異常重啟時(shí)長為10 s,網(wǎng)絡(luò)相機(jī)位置反饋時(shí)間間隔為5 s。在該情況下,4G無線路由器每小時(shí)消耗流量3~4 MB。
3 結(jié) 語
本文研究了一種基于平行四桿桁架的多網(wǎng)絡(luò)遠(yuǎn)程控制網(wǎng)絡(luò)相機(jī)精準(zhǔn)移動(dòng)的方法,采用OneNET平臺(tái)、W5200硬件TCP/IP協(xié)議棧、4G網(wǎng)絡(luò)組網(wǎng)實(shí)現(xiàn)了專家端口和數(shù)據(jù)中心交互控制網(wǎng)絡(luò)相機(jī)定位的功能。通過速度、網(wǎng)絡(luò)參數(shù)調(diào)試,使靈敏度、穩(wěn)定性、移動(dòng)誤差均滿足網(wǎng)絡(luò)相機(jī)多點(diǎn)監(jiān)控的要求。該方法還需對(duì)路徑規(guī)劃算法和速度智能調(diào)節(jié)算法進(jìn)行深入研究。
注:本文通訊作者為來智勇。
參考文獻(xiàn)
[1] 韓文霆,崔利華,陳微,等.桁架式可移動(dòng)作物生長遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].農(nóng)業(yè)工程學(xué)報(bào),2014,30(13):160?168.
HAN Wenting, CUI Lihua, CHEN Wei, et al. Design of movable remote crop monitoring system on fixed truss [J]. Transactions of the Chinese Society of Agricultural Engineering, 2014, 30(13): 160?168.
[2] 龔金成,諶建飛,趙丹,等.步進(jìn)電機(jī)遠(yuǎn)程控制方案的設(shè)計(jì)及實(shí)現(xiàn)[J].機(jī)電工程,2016,33(11):1398?1402.
GONG Jincheng, CHEN Jianfei, ZHAO Dan, et al. Design and implementation of remote control for stepper motor [J]. Journal of mechanical & electrical engineering, 2016, 33(11): 1398?1402.
[3] 王德麾,馮軍帥,宋海亮,等.基于無線傳感器網(wǎng)絡(luò)和3G/4G的遠(yuǎn)程環(huán)境監(jiān)測系統(tǒng)研究[J].物聯(lián)網(wǎng)技術(shù),2015,5(3):17?18.
WANG Dehui, FENG Junshuai, SONG Hailiang, et al. Research of remote environmental monitoring system based on wireless sensor network and 3G/4G [J]. Internet of Things technologies, 2015, 5(3): 17?18.
[4] 謝相博,徐光輝,范凱鑫,等.基于4G的無人機(jī)遠(yuǎn)程巡邏系統(tǒng)[J].通信技術(shù),2015,48(11):1305?1309.
XIE Xiangbo, XU Guanghui, FAN Kaixin, et al. UAV remote patrol system based on 4G [J]. Communications technology, 2015, 48(11): 1305?1309.
[5] WANG J, WEN J, ZHANG J, et al. TCP?FIT: an improved TCP algorithm for heterogeneous networks [J]. Journal of network & computer applications, 2016, 71: 167?180.
[6] WANG Z, ZENG X, LIU X, et al. TCP congestion control algorithm for heterogeneous Internet [J]. Journal of network & computer applications, 2016, 68: 56?64.
[7] 石棟,張克華,徐彪.獨(dú)居老人云智能跌倒實(shí)時(shí)檢測系統(tǒng)的開發(fā)[J].計(jì)算機(jī)工程與應(yīng)用,2016,52(19):259?264.
SHI Dong, ZHANG Kehua, XU Biao. Development of cloud intelligent real?time fall detection system for the aged population [J]. Computer engineering and applications, 2016, 52(19): 259?264.
[8] 袁穎,孫榮霞,李瑞,等.基于ZigBee的光伏電站環(huán)境實(shí)時(shí)監(jiān)測系統(tǒng)[J].微型機(jī)與應(yīng)用,2017,36(3):33?35.
YUAN Ying, SUN Rongxia, LI Rui, et al. Real?time monitoring system for photovoltaic power station environment based on ZigBee [J]. Microcomputer & its applications, 2017, 36(3): 33?35.
[9] 廖平,韓偉偉.基于STM32多步進(jìn)電機(jī)驅(qū)動(dòng)控制系統(tǒng)設(shè)計(jì)[J].儀表技術(shù)與傳感器,2016(4):71?73.
LIAO Ping, HAN Weiwei. Design of Drive control system of multiple stepper motors based on STM32 [J]. Instrument technique and sensor, 2016(4): 71?73.
[10] 李傳明,崔更申,尹鵬,等.基于STM32F4的電機(jī)控制系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2015,23(10):3370?3372.
LI Chuanming, CUI Gengshen, YIN Peng, et al. Design of motor control system based on STM32F4 [J]. Computer measurement & control, 2015, 23(10): 3370?3372.
[11] 趙科,李常賢,張彤.基于STM32的無線溫濕度控制器[J].化工自動(dòng)化及儀表,2015,42(6):629?633.
ZHAO Ke, LI Changxian, ZHANG Tong. Design of wireless temperature and humidity controller based on STM32 [J]. Control and instruments in chemical industry, 2015, 42(6): 629?633.