羅洋坤
車聯(lián)網(wǎng)網(wǎng)絡(luò)電路的搭建決定了車聯(lián)網(wǎng)控制終端網(wǎng)絡(luò)通信性能。國內(nèi)外在遠(yuǎn)車聯(lián)網(wǎng)控制方面的研究涉及多種無線電技術(shù)和互聯(lián)網(wǎng)技術(shù)[1]。在國外,遠(yuǎn)程控制技術(shù)已經(jīng)廣泛應(yīng)用于汽車領(lǐng)域[2]。隨著嵌入式與網(wǎng)絡(luò)通信等技術(shù)的發(fā)展,國內(nèi)外提出了多種遠(yuǎn)程車聯(lián)網(wǎng)方案[3]。而基于STM32芯片進(jìn)行車聯(lián)網(wǎng)網(wǎng)絡(luò)電路方案的電路設(shè)計(jì)還不夠成熟。例如,代成剛等基于STM32設(shè)計(jì)了遠(yuǎn)程數(shù)據(jù)采集器[4]。但是網(wǎng)絡(luò)通信質(zhì)量難以達(dá)到車聯(lián)網(wǎng)要求。4G網(wǎng)絡(luò)具有傳輸速度高、實(shí)時(shí)性好的優(yōu)點(diǎn)[5]。如何基于STM32設(shè)計(jì)較好的網(wǎng)絡(luò)電路與4G網(wǎng)絡(luò)設(shè)備連接實(shí)現(xiàn)組網(wǎng)是研究重點(diǎn)。車聯(lián)網(wǎng)網(wǎng)絡(luò)電路搭建是基于以太網(wǎng)接口進(jìn)行網(wǎng)絡(luò)控制電路的設(shè)計(jì),提出了基于嵌入式控制芯片和網(wǎng)絡(luò)模塊搭建網(wǎng)絡(luò)電路進(jìn)行車聯(lián)網(wǎng)電路設(shè)計(jì)的方法。
控制中心主要負(fù)責(zé)發(fā)送車聯(lián)網(wǎng)終端設(shè)備控制指令和接收車聯(lián)網(wǎng)終端設(shè)備信息,控制終端主要負(fù)責(zé)接收控制命令和發(fā)送數(shù)據(jù)信息。從PC機(jī)到車聯(lián)網(wǎng)終端設(shè)備的數(shù)據(jù)傳輸過程:PC機(jī)通過控制界面發(fā)出控制指令到服務(wù)器,服務(wù)器更新控制指令,車聯(lián)網(wǎng)設(shè)備通過4G無線路由器主動(dòng)連接服務(wù)器,定時(shí)獲取最新控制指令。從車聯(lián)網(wǎng)終端設(shè)備到PC機(jī)的數(shù)據(jù)傳輸過程:車聯(lián)網(wǎng)終端設(shè)備通過4G無線路由器定時(shí)傳輸信息到服務(wù)器,服務(wù)器更新信息并反饋給PC機(jī)。第四代移動(dòng)通信技術(shù)可在不同的無線平臺(tái)和網(wǎng)絡(luò)中提供服務(wù)[6]。采用4G無線方式進(jìn)行通信,只有身份驗(yàn)證通過才能建立連接[7]。謝相博等基于4G設(shè)計(jì)的無人機(jī)遠(yuǎn)程巡航系統(tǒng)可以實(shí)現(xiàn)遠(yuǎn)程飛行控制[8]。根據(jù)車聯(lián)網(wǎng)控制的實(shí)際需要,在進(jìn)行網(wǎng)絡(luò)通信時(shí)需要選擇穩(wěn)定性能更好的通信協(xié)議,在選擇傳輸層的協(xié)議時(shí),主要分為TCP和UDP。UDP是一種面向無連接的協(xié)議,TCP面向連接。UDP通信協(xié)議不使用“連接套接字”,可多播通信,但不能保證傳輸數(shù)據(jù)可靠性,而TCP通信協(xié)議可保證數(shù)據(jù)通信可靠性。使用TCP/IP協(xié)議當(dāng)數(shù)據(jù)傳輸出現(xiàn)錯(cuò)誤,數(shù)據(jù)會(huì)重發(fā)直至正確。TCP通過Socket發(fā)送和接收,通過傳輸連接請(qǐng)求區(qū)分。對(duì)可靠性要求較高的車聯(lián)網(wǎng)系統(tǒng)一般采用TCP協(xié)議。
網(wǎng)絡(luò)電路搭建方案可以分成兩種。第一種通過軟件協(xié)議棧的設(shè)計(jì)思路。比如通過STM32、LAN8720的網(wǎng)絡(luò)電路搭建方法,但是這種方法導(dǎo)致軟件編程復(fù)雜,會(huì)使得車聯(lián)網(wǎng)其它程序開發(fā)難度較大。因此,采用硬件嵌入式協(xié)議棧的設(shè)計(jì)方法,通過STM32、W5200的網(wǎng)絡(luò)電路搭建方法。具體設(shè)計(jì)思路如下。
嵌入式處理器種類很多,包括8位、16位、32位單片機(jī)。STM32F407是性價(jià)比較高的一款32單片機(jī)。STM32F407芯片基于ARM Cortex-M3架構(gòu)。基于STM32F407芯片設(shè)計(jì)網(wǎng)絡(luò)通信控制電路。基于STM32F407控制芯片設(shè)計(jì)車聯(lián)網(wǎng)網(wǎng)絡(luò)電路可以充分發(fā)揮STM32F407在中斷、頻率、功耗模式方面的特性。STM32F407擁有完善的時(shí)鐘啟動(dòng)機(jī)制,在啟動(dòng)時(shí)選擇系統(tǒng)時(shí)鐘,復(fù)位時(shí)內(nèi)部8 MHz晶振作為CPU時(shí)鐘,可使用多個(gè)預(yù)比較器用于配置AHB頻率,包括高速APB2和低速APB1,高速APB2最高頻率為72 MHz,低速APB1最高頻率為36 MHz,這種時(shí)鐘模式和啟動(dòng)機(jī)制完全滿足車聯(lián)網(wǎng)網(wǎng)絡(luò)電路的設(shè)計(jì)要求,其時(shí)鐘頻率較高,保證了整個(gè)網(wǎng)絡(luò)通信速度。STM32F407有自動(dòng)電源管理電路,通過上電復(fù)位確保從2 V正常啟動(dòng),當(dāng)電壓異常車聯(lián)網(wǎng)網(wǎng)絡(luò)電路會(huì)自動(dòng)復(fù)位,提高了網(wǎng)絡(luò)電路的穩(wěn)定性。STM32F407支持3種低功耗模式,在休眠模式下,只有CPU停止工作,通過中斷/事件喚醒;在停止模式下,以最小的功耗保持SRAM和寄存器的內(nèi)容,通過外部中斷線從停止模式喚醒;在待機(jī)模式下,SRAM和寄存器的內(nèi)容會(huì)清除,當(dāng)外部復(fù)位時(shí)退出待機(jī)模式。停止模式或待機(jī)模式情況下相關(guān)時(shí)鐘源繼續(xù)運(yùn)行,這三種模式可使網(wǎng)絡(luò)電路在低功耗、較短啟動(dòng)時(shí)間、可用喚醒源三者之間找到平衡點(diǎn)。
網(wǎng)絡(luò)模塊使用W5200,STM32F407控制芯片通過串行外設(shè)接口連接W5200模塊進(jìn)行通信,SPI接口間通信實(shí)際速度可以達(dá)到50 MHz。STM32肯定會(huì)與多個(gè)SPI設(shè)備相連,需要分清楚哪個(gè)SPI設(shè)備有效,SPI總線中有一根片選信號(hào)線可以選擇W5200設(shè)備。而SCK、MOSI、MISO三個(gè)信號(hào)線則是被SPI設(shè)備共用。SCK是時(shí)鐘信號(hào)線,STM32芯片性能決定了時(shí)鐘頻率有多快。STM32方面用SPI來支持W5200網(wǎng)絡(luò)芯片的讀寫操作,這樣是為了使用DMA功能來提高網(wǎng)絡(luò)通信的實(shí)時(shí)性能。W5200使用了網(wǎng)絡(luò)喚醒模式,收到數(shù)據(jù)包時(shí)被喚醒,這樣可降低網(wǎng)絡(luò)電路的功耗。W5200支持的協(xié)議包括TCP、UDP等。W5200有32 kB數(shù)據(jù)緩存空間,通過socket可以實(shí)現(xiàn)網(wǎng)絡(luò)通信,與其他以太網(wǎng)控制器相比具有開發(fā)成本低的優(yōu)勢,降低了通信編程難度和復(fù)雜度。W5200有8個(gè)端口,正常工作電壓為3.3 V,最大承受電壓是5 V。W5200由通用寄存器、Socket寄存器、TX內(nèi)存和RX內(nèi)存組成,引腳信號(hào)包括微控制器接口信號(hào)、電源信號(hào)、時(shí)鐘信號(hào)、物理層信號(hào)、綜合信號(hào)。通過物理層的SPD引腳來選擇100M/10M速度模式。W5200的硬件源地址寄存器的硬件源地址使用以太網(wǎng)MAC層唯一MAC地址。W5200與STM32F407通信采用SPI接口,與以太網(wǎng)PHY通信采用MII接口。步進(jìn)電機(jī)控制器的STM32F407芯片與W5200進(jìn)行數(shù)據(jù)通信時(shí)使用了SCLK、SCS、MOSI、MISO四個(gè)引腳。設(shè)計(jì)的W5200接口電路如圖1所示。
為實(shí)現(xiàn)網(wǎng)絡(luò)電路重啟后車聯(lián)網(wǎng)信息不丟失,使用AT24C02芯片來實(shí)時(shí)更新和保存車聯(lián)網(wǎng)設(shè)備的運(yùn)行參數(shù),通過該存儲(chǔ)模塊進(jìn)行保存,防止斷電或系統(tǒng)重啟導(dǎo)致的信息丟失,存儲(chǔ)電路如圖2所示。STM32F407處理器通過控制SCL和SDA兩條信號(hào)線實(shí)現(xiàn)對(duì)AT24C02芯片的讀寫操作,通過3.3V電源電路為其供電。

圖1 W5200接口電路

圖2 存儲(chǔ)電路
經(jīng)過測試,基于W5200設(shè)計(jì)的網(wǎng)絡(luò)電路存在過熱導(dǎo)致死機(jī)和網(wǎng)絡(luò)通信性能下降的情況,因此通過電源開關(guān)控制的方法可以提高網(wǎng)絡(luò)通信性能。設(shè)定網(wǎng)絡(luò)電路定時(shí)工作時(shí)間為5分鐘,5分鐘之后網(wǎng)絡(luò)電路暫停工作,1分鐘后繼續(xù)工作。這樣可以提高網(wǎng)絡(luò)通信性能,可以防止網(wǎng)絡(luò)電路過熱造成的死機(jī)情況。但是,由此造成了在網(wǎng)絡(luò)電路暫停工作區(qū)間無法進(jìn)行網(wǎng)絡(luò)通信,這將造成車聯(lián)網(wǎng)實(shí)時(shí)性能和穩(wěn)定性的下降。為此,改進(jìn)了網(wǎng)絡(luò)單一網(wǎng)絡(luò)模塊通信電路模式,選擇兩個(gè)W5200交替工作,通過設(shè)計(jì)有自動(dòng)定時(shí)功能的繼電器電路作為兩個(gè)W5200交替工作的選擇信號(hào),在通過STM32接收繼電器開關(guān)信號(hào)后選擇啟動(dòng)某個(gè)W5200模塊工作,這樣可以避免一個(gè)W5200模塊工作造成長時(shí)間工作導(dǎo)致的嚴(yán)重發(fā)熱問題和死機(jī)問題,大大提高了網(wǎng)絡(luò)通信電路的穩(wěn)定性和通信質(zhì)量。設(shè)計(jì)的定時(shí)器繼電器連接電路如圖3所示。
此外,為了改善網(wǎng)絡(luò)電路性能,通過大量電路性能試驗(yàn),得出以下經(jīng)驗(yàn)。設(shè)計(jì)的PCB電路板大小要能夠合理布置所有的電子元器件,并盡可能占用較小的尺寸面積,最終確定PCB電路板大小為10 cm×10 cm。電子元器件根據(jù)實(shí)際使用情況進(jìn)行選型和布置,選擇常用的元器件封裝類型,為減小占用面積選擇貼片式的電阻和電容。USB供電電路布置在電路板邊緣附近,方便供電和程序的下載。其他元器件整齊、有一定間隔的進(jìn)行布置,布置完畢后先進(jìn)行自動(dòng)布線,再通過手動(dòng)布線調(diào)整走線,在完成布線后仔細(xì)檢查是否有錯(cuò)誤,確定沒有布線錯(cuò)誤后,最后對(duì)PCB電路板進(jìn)行正面和背面的覆銅。

圖3 定時(shí)器繼電器連接電路
在設(shè)計(jì)完成的網(wǎng)絡(luò)接口電路和存儲(chǔ)電路的基礎(chǔ)上,今后還需要增加設(shè)計(jì)復(fù)位電路、USB供電電路。此外,還需要設(shè)計(jì)電源隔離保護(hù)電路,進(jìn)一步保護(hù)步進(jìn)電機(jī)控制器的核心電路。
參考文獻(xiàn):
[1] Oksanen T,Linkolehto R,Seilonen I.Adapting an in?dustrial automation protocol to remote monitoring of mo?bile agricultural machinery:a combine harvester with IoT [J].IFAC-PapersOnLine, 2016, 49 (16):127-131.
[2]Duan Y E,Niu X J..Research on Farmland Information Acquisition System Based on IoT [J].Advanced Materi?als Research,2012,532-533:1085-1089.
[3]李雪剛,黃夢醒,朱東海.基于物聯(lián)網(wǎng)技術(shù)的遠(yuǎn)程農(nóng)田監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程,2012,38(17):20-23.
[4]代成剛,任德均,蔣濤,等.基于STM32的遠(yuǎn)程多數(shù)據(jù)采集器的設(shè)計(jì)[J].機(jī)電工程技術(shù),2013(05):31-34.
[5]王德麾,馮軍帥,宋海亮,等.基于無線傳感器網(wǎng)絡(luò)和3G/4G的遠(yuǎn)程環(huán)境監(jiān)測系統(tǒng)研究[J].物聯(lián)網(wǎng)技術(shù),2015(03):17-18.
[6]周薇薇.4G移動(dòng)通信技術(shù)及其發(fā)展趨勢分析[J].信息通信,2013(08):246-246.
[7]羅建,周麗蘭.基于嵌入式技術(shù)的異步電機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2011,24(10):15-16.
[8]謝相博,徐光輝,范凱鑫,等.基于4G的無人機(jī)遠(yuǎn)程巡航系統(tǒng)[J].通信技術(shù),2015(11):1305-1309.