葉永興,代 盼
(湖州師范學(xué)院 信息工程學(xué)院,浙江 湖州 313000)
工程施工作業(yè)中,工程車基本上是由駕駛員坐在車輛駕駛室內(nèi)對車輛進(jìn)行操控作業(yè)的,雖然駕駛員對車輛有著良好的控制能力,但當(dāng)車輛發(fā)生較大的安全事故時,如車輛跌落、山體滑坡、建筑物倒塌等,駕駛員基本無法逃生[1-2].隨著移動通信、物聯(lián)網(wǎng)、傳感器、嵌入式系統(tǒng)和數(shù)字圖像處理技術(shù)的快速發(fā)展,遠(yuǎn)程監(jiān)控和遠(yuǎn)程作業(yè)成為可能[3-5],使用物聯(lián)網(wǎng)無線傳輸技術(shù)就可以遠(yuǎn)程遙控工程設(shè)備進(jìn)行施工作業(yè)[6-8],操作人員不必進(jìn)入現(xiàn)場環(huán)境作業(yè),可杜絕施工現(xiàn)場各種安全隱患的威脅.
本文設(shè)計(jì)一套基于Wi-Fi無線通信技術(shù)的工程車視頻控制系統(tǒng).該系統(tǒng)主要包括車輛端和電腦控制端兩個部分,通過車載攝像頭、溫度傳感器、速度傳感器和GPS定位傳感器,駕駛員可清楚地了解車輛當(dāng)前所處環(huán)境的狀態(tài),使駕駛員即使不在車上也可以有身臨其境的駕駛感覺[9-10].該系統(tǒng)能實(shí)現(xiàn)駕駛員與駕駛車輛的空間分離,能有效避免工程事故對駕駛員造成的傷害.該系統(tǒng)對工程車無線視頻控制系統(tǒng)的發(fā)展有著重大的意義.
為給駕駛員營造一個安全舒適的駕駛環(huán)境,本文設(shè)計(jì)一套人車分離的控制系統(tǒng).該系統(tǒng)以Wi-Fi無線通信為基礎(chǔ),駕駛員僅需一臺電腦和一個搖桿設(shè)備就能遠(yuǎn)程控制車輛.由于需要采集和傳輸大容量的視頻信息,且對傳輸?shù)膶?shí)時性要求較高,本項(xiàng)目使用Wi-Fi無線通信技術(shù)將電腦控制端與車輛端連接,以傳輸視頻信號和控制信號[11-12].該系統(tǒng)結(jié)構(gòu)見圖1.
車輛通過Wi-Fi直接連接電腦,當(dāng)傳輸距離較遠(yuǎn)時可通過Wi-Fi中繼器增大信號傳輸距離.其工作流程為:通過Wi-Fi連接使車輛端和電腦控制端處于同一局域網(wǎng)下;使用UDP協(xié)議傳輸數(shù)據(jù)內(nèi)容實(shí)現(xiàn)車輛端與電腦控制端的數(shù)據(jù)互通;由車輛控制端的主控單片機(jī)采集圖像、溫度等信息,并將信息傳輸至電腦;電腦控制端利用數(shù)據(jù)可視化顯示各傳感器信息,并將采集的搖桿設(shè)備信息傳輸至車輛控制端,實(shí)現(xiàn)遠(yuǎn)程控制車輛的需求[13].
由于車輛端主控芯片需要驅(qū)動的傳感器數(shù)量較多,也需要較高的處理速度和采集、發(fā)送大容量的圖像數(shù)據(jù),因此本系統(tǒng)車輛端采用STM32 F407 ZGT6單片機(jī)作為主控芯片,以及集成人機(jī)交互模塊、數(shù)據(jù)采集模塊、動力輸出控制模塊和無線通信模塊.STM32 F407 ZGT6單片機(jī)主控芯片具有144引腳、 192 KB SRAM、1024 KB FLASH、112個通用IO口,時鐘頻率高達(dá)168 MHz,還具有1個DCMI攝像頭接口、1個FSMC接口、3個SPI接口、6個串口、3個ADC接口和14個定時器,且價格低廉,非常適合本項(xiàng)目的開展.本項(xiàng)目將車輛端硬件分為4個主要部分:數(shù)據(jù)顯示、動力輸出控制、數(shù)據(jù)采集、無線通信.硬件組成如圖2所示,實(shí)物如圖3所示.各部分功能描述如下:
使用1塊2.8英寸的TFT彩色顯示屏,以顯示車輛各傳感器的數(shù)據(jù),這樣即使沒有連接電腦控制端也能查看各傳感器的運(yùn)行狀態(tài).同時輸入車輛Wi-Fi模塊的配置信息,以方便車輛與電腦控制端的連接.
本系統(tǒng)需要控制1個4自由度的機(jī)械臂、1個自由度的攝像頭舵機(jī)、2臺驅(qū)動小車移動的電動機(jī).所需的控制信號由主控芯片產(chǎn)生7路PWM實(shí)現(xiàn)各個部分的控制.為將機(jī)械爪始終保持在攝像頭的視野范圍內(nèi),控制機(jī)械爪舵機(jī)的PWM參數(shù)要與攝像頭舵機(jī)的PWM參數(shù)相同,這樣才能使兩者同步運(yùn)動.
數(shù)據(jù)采集包括如下5個模塊:
(1) U-BLOXGPS定位.該模塊可以自主采集GPS衛(wèi)星信號,并通過串口輸出到單片機(jī).
(2) 紅外輪盤測速.使用2個紅外對管和測速輪盤測量2個車輪的行進(jìn)速度,輪盤安裝在車輛兩側(cè)的輪子上,當(dāng)車輛行進(jìn)時帶動輪盤旋轉(zhuǎn),輪盤上的格子會阻擋或通過紅外對管的信號,且每次阻擋或通過紅外對管的信號都會產(chǎn)生一個電平翻轉(zhuǎn)信號,主控芯片通過計(jì)算1 s內(nèi)電平翻轉(zhuǎn)次數(shù)就可計(jì)算出車輪的轉(zhuǎn)動速度.
(3) DS18B20溫度檢測.芯片使用單總線與單片機(jī)通信,對小車的驅(qū)動電路和環(huán)境進(jìn)行溫度檢測,以提示駕駛者車輛所處環(huán)境的溫度,避免高溫?fù)p壞車輛.
(4) 電量檢測模塊.車輛端由1塊8.4 V鋰電池為車輛提供電源,電量檢測模塊利用鋰電池電壓與剩余電量存在的關(guān)系(表1)進(jìn)行電量檢測.電壓檢測模塊采用一個精密電阻對電源電壓分壓,主控芯片采用ADC 檢測和計(jì)算鋰電池當(dāng)前的電壓,并判斷該電壓所在的區(qū)間,就可得知電池的剩余電量.
表1 電壓與電量對照表Tab.1 Voltage and electricity comparison table
(5) OV2640攝像頭.該模塊體積小,驅(qū)動電壓低,可以直接輸出JPEG圖像.該格式的圖像容量相對較小,有利于本項(xiàng)目的開展.
無線通信.使用ESP8266EX芯片,該芯片集成了TCP/IP協(xié)議棧和Wi-Fi協(xié)議棧,使用時只需配置該芯片需要連接的Wi-Fi熱點(diǎn)、通信協(xié)議(本項(xiàng)目使用UDP協(xié)議)、IP地址和端口即可.當(dāng)收到主控單片機(jī)發(fā)來的數(shù)據(jù)時,該芯片會自動將數(shù)據(jù)通過配置好的通信協(xié)議組裝成數(shù)據(jù)發(fā)送到指定的IP地址和端口.主控芯片使用SPI與其通信,其最高速率可達(dá) 1 Mbps以上,適合圖像和控制信號的高速傳輸需求.
車輛端工作流程如圖4所示.系統(tǒng)上電后進(jìn)行設(shè)備初始化,其中包括驅(qū)動外部傳感器所需要的串口中斷、外部中斷、定時器中斷、IO口初始化,以及啟動各個傳感器使其正常工作.隨后配置顯示屏顯示各傳感器名稱的靜態(tài)文字(圖5),以及配置Wi-Fi模塊連接電腦熱點(diǎn).接著循環(huán)讀取攝像頭和各傳感器數(shù)據(jù),并顯示到屏幕上和發(fā)送到電腦端,其中當(dāng)讀取到攝像頭數(shù)據(jù)后進(jìn)行數(shù)據(jù)開始標(biāo)志和數(shù)據(jù)結(jié)束標(biāo)志的添加,以方便電腦端解析.其他的傳感器數(shù)據(jù)用“,”符間隔,并單獨(dú)組裝成一個數(shù)據(jù)塊發(fā)送到電腦端,然后讀取電腦端下發(fā)的數(shù)據(jù),以控制車輪和機(jī)械臂的移動.為保證機(jī)械臂的機(jī)械爪始終在攝像頭的視野范圍內(nèi),控制機(jī)械爪的舵機(jī)要與攝像頭舵機(jī)的PWM控制信號參數(shù)相同,這樣才能保證其同步運(yùn)動.
電腦端的上位機(jī)軟件采用Electron框架編寫,該框架集成了Chromium 和 Node.js,工作流程如圖6所示.軟件啟動后進(jìn)行初始化,其中包括用于數(shù)據(jù)可視化顯示的各顯示組件和UDP通信的配置.分別建立UDP數(shù)據(jù)監(jiān)聽線程和搖桿設(shè)備數(shù)據(jù)讀取線程.在UDP數(shù)據(jù)監(jiān)聽線程中循環(huán)讀取由車輛端上傳的數(shù)據(jù),以數(shù)據(jù)字節(jié)長度區(qū)分是圖像數(shù)據(jù)還是其他傳感器數(shù)據(jù).若數(shù)據(jù)長度大于200字節(jié)可判斷為圖像數(shù)據(jù),并將其填入圖像顯示組件,通過不斷刷新圖像組件的顯示內(nèi)容來達(dá)到顯示視頻的目的.若數(shù)據(jù)小于200字節(jié)可判斷為其他傳感器數(shù)據(jù),采用“,”符拆分出各個傳感器數(shù)據(jù),并填入各自對應(yīng)的數(shù)據(jù)可視化組件中,完成電腦端顯示各傳感器的需求.搖桿設(shè)備數(shù)據(jù)讀取線程每間隔100 ms讀取一次,并將其發(fā)送至車輛端,以控制車輪和車載機(jī)械臂的運(yùn)動.
電腦端各顯示組件如圖7所示,搖桿手柄實(shí)物如圖8所示.電腦端UI界面設(shè)計(jì)能直觀地展示小車傳感器和攝像頭的各項(xiàng)數(shù)據(jù),利用數(shù)據(jù)可視化技術(shù)將各項(xiàng)參數(shù)以圖表的形式顯示在屏幕上.UI界面效果包括如下幾項(xiàng):
(1) 2個溫度傳感器數(shù)據(jù),在同一個折線圖中分別顯示兩條溫度曲線.
(2) 電池電壓數(shù)據(jù),方便查看電壓走向,保障小車供電正常.
(3) 當(dāng)前時間.
(4) 攝像頭傳輸過來的實(shí)時畫面.
(5) 3個儀表盤:電動機(jī)的轉(zhuǎn)速;當(dāng)前小車的行進(jìn)速度;當(dāng)前電池的剩余電量.
(6) 地圖模塊,將小車的實(shí)時位置標(biāo)注在地圖上,利用鼠標(biāo)移動和縮放調(diào)整最佳顯示模式.
(7) 測速盤信息可以觀察速度的變化趨勢.
利用Wi-Fi無線視頻傳輸技術(shù),設(shè)計(jì)一款工程車無線視頻控制系統(tǒng).區(qū)別于傳統(tǒng)的工程車控制系統(tǒng),該系統(tǒng)不僅可實(shí)現(xiàn)操作人員遠(yuǎn)距離控制車輛,可獲得與傳統(tǒng)控制系統(tǒng)幾乎相同的操作體驗(yàn),且操作人員不必再進(jìn)入危險的施工現(xiàn)場,最大限度地保障了施工人員的生命安全.