基于4G網(wǎng)絡(luò)和CAN總線的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)
作者 / 劉立國(guó) 楊日龍 北京中車長(zhǎng)客二七軌道裝備有限公司(北京 100072)
本文引用地址:http://butianyuan.cn/article/201809/392392.htm劉立國(guó),2010年于華北電力大學(xué)獲得碩士學(xué)位,現(xiàn)為中車北京二七機(jī)車有限公司工程師,主要研究方向:自動(dòng)化系統(tǒng)控制。
摘要:針對(duì)目前電傳動(dòng)礦車運(yùn)行環(huán)境差,數(shù)據(jù)采集困難,維護(hù)成本高的特點(diǎn),設(shè)計(jì)了一種基于4G網(wǎng)絡(luò)和CAN總線的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)采用STM32F405RGT6微控制器進(jìn)行開(kāi)發(fā),主要由主控模塊、4G通信模塊、SD卡存儲(chǔ)模塊,CAN總線收發(fā)模塊和電源模塊組成,對(duì)各模塊的軟、硬件設(shè)計(jì)做了詳細(xì)的介紹。實(shí)際運(yùn)行證明該系統(tǒng)具有良好的可靠性,為礦車的遠(yuǎn)程監(jiān)控及故障診斷提供了良好的解決方案。
0 引言
露天非公路電傳動(dòng)礦用自卸車由于惡劣的工作環(huán)境維護(hù)成本高。隨著工業(yè)4.0概念的提出,礦車智能化也成了人們關(guān)注的熱點(diǎn)。車輛運(yùn)行狀況實(shí)時(shí)監(jiān)控、車輛運(yùn)行數(shù)據(jù)統(tǒng)計(jì)、車輛歷史運(yùn)行數(shù)據(jù)的存儲(chǔ)、車輛故障的遠(yuǎn)程診斷等用戶需求促使遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)誕生。傳統(tǒng)的基于GPRS的遠(yuǎn)程數(shù)據(jù)傳輸系統(tǒng)[1-4]性能比較單一,數(shù)據(jù)傳輸速率慢,實(shí)時(shí)性差,不能滿足礦車大數(shù)據(jù)量傳輸?shù)男枨蟆?/p>
隨著4G網(wǎng)絡(luò)的大范圍覆蓋及4G資費(fèi)的逐年下降,本文提出基于4G網(wǎng)絡(luò)的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng),系統(tǒng)硬件控制器使用低成本高性能的STM32F4XX系列微控制器作為主控芯片,4G模塊選用全網(wǎng)通模塊SIM7600CE,解決了系統(tǒng)網(wǎng)絡(luò)制式單一問(wèn)題,同時(shí)該模塊使用方便,市場(chǎng)供貨量大,易于采購(gòu),系統(tǒng)整體成本低。
1 系統(tǒng)總體設(shè)計(jì)
圖1為系統(tǒng)的總體結(jié)構(gòu)圖,遠(yuǎn)程數(shù)據(jù)采集終端通過(guò)CAN總線采集車載控制器和牽引逆變器等部件收集的車輛運(yùn)行狀態(tài)數(shù)據(jù)和故障數(shù)據(jù),同時(shí)通過(guò)板載的GPS模塊采集車輛的位置數(shù)據(jù),這些數(shù)據(jù)打包后通過(guò)4G網(wǎng)絡(luò)發(fā)送到云端服務(wù)器供用戶遠(yuǎn)程訪問(wèn)。
2 系統(tǒng)的硬件設(shè)計(jì)
該系統(tǒng)硬件主要由主控模塊、4G通信模塊、SD卡存儲(chǔ)模塊、CAN總線收發(fā)模塊和電源模塊組成。
2.1 主控模塊
主控模塊選用意法半導(dǎo)體公司先進(jìn)的基于ARM 32位內(nèi)核的微控制器[5]STM32F405RGT6。STM32F405XX系列微控制器片內(nèi)集成了雙路隔離的CAN控制器,支持CAN2.0B協(xié)議;4路隔離的USART,傳輸速率能夠達(dá)到10.5 Mbit/s;高達(dá)17個(gè)定時(shí)器;SRAM高達(dá)192 Kbytes,F(xiàn)lash存儲(chǔ)空間也達(dá)到了1 Mbyte,工作主頻達(dá)到了168 MHz,滿足系統(tǒng)控制需求,同時(shí)STM32F405XX系列微控制器支持4PIN的SWD下載調(diào)試,下載速度能夠達(dá)到10 Mbit/s,相對(duì)于JTAG的20PIN接口降低了布線難度,同時(shí)減小了電路板的尺寸。
2.2 4G通信模塊
4G通信模塊選用芯訊通無(wú)線科技有限公司的全網(wǎng)通模塊SIM7600CE,該模塊支持文件系統(tǒng),支持TCP、UDP、FTP等通信協(xié)議,同時(shí)通過(guò)標(biāo)準(zhǔn)的AT命令能夠?qū)崿F(xiàn)文件的上傳下載,使用非常方便[6-7]。4G模塊通過(guò)USART接口和微控制器相連,由于工作電壓的不同,兩者之間加了一級(jí)雙向電壓電平轉(zhuǎn)換器。
2.3 SD卡存儲(chǔ)模塊
系統(tǒng)擴(kuò)展了SD卡存儲(chǔ)模塊,該模塊作為車輛數(shù)據(jù)的中間存儲(chǔ)介質(zhì),當(dāng)網(wǎng)絡(luò)環(huán)境不佳或者斷網(wǎng)時(shí)車輛數(shù)據(jù)便存到SD卡中,網(wǎng)絡(luò)重新建立后這些數(shù)據(jù)便發(fā)送到云端服務(wù)器,達(dá)到本地?cái)?shù)據(jù)與網(wǎng)絡(luò)數(shù)據(jù)同步。
2.4 CAN總線收發(fā)模塊
CAN總線收發(fā)模塊采用廣州金升陽(yáng)科技有限公司的TD301DCAN,該模塊是集成電源隔離、電氣隔離、CAN接口和總線保護(hù)器件于一體的CAN接口隔離收發(fā)模塊,隔離電壓高達(dá)3000 V DC。CAN接口電路如圖2所示,根據(jù)整車需要,本系統(tǒng)設(shè)計(jì)了雙路隔離的CAN接口。
2.5 電源模塊
電源模塊提供2組供電電壓,一組為4.1 V,為4G通信模塊供電,另一組為3.3 V,為主控模塊及其他模塊供電。車載蓄電池提供的24 V電源經(jīng)過(guò)濾波后由DC-DC降壓芯片TPS54560轉(zhuǎn)換成4.1 V,3.3V電源由TLV1117-33提供。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件的設(shè)計(jì)主要包括CAN總線收發(fā)程序,SD卡文件存儲(chǔ)程序,SD卡文件轉(zhuǎn)發(fā)到4G模塊EFS系統(tǒng)程序,EFS上的文件轉(zhuǎn)發(fā)到服務(wù)器程序,GPS數(shù)據(jù)讀取處理程序及一些邏輯控制程序。系統(tǒng)的總控制流程如圖3所示,初始化完成后控制器開(kāi)始接收CAN總線上的報(bào)文,同時(shí)將報(bào)文存儲(chǔ)到SD卡中。當(dāng)完成一個(gè)文件后系統(tǒng)檢測(cè)EFS剩余空間,在空間夠的情況下系統(tǒng)將SD卡中的文件發(fā)送到EFS中。系統(tǒng)自動(dòng)檢測(cè)是否已經(jīng)聯(lián)網(wǎng),當(dāng)聯(lián)網(wǎng)成功后系統(tǒng)會(huì)將EFS上的數(shù)據(jù)發(fā)送到云端服務(wù)器。
3.1 CAN總線收發(fā)程序流程
CAN總線接收程序流程如圖4所示,CAN總線接口初始化后開(kāi)始等待有無(wú)新的報(bào)文,當(dāng)有新報(bào)文到來(lái)時(shí),報(bào)文被存儲(chǔ)在3級(jí)郵箱深度的FIFO中,程序通過(guò)讀取FIFO輸出郵箱來(lái)讀取FIFO中最先收到的報(bào)文,注意在實(shí)際的情況中必須在FIFO溢出前讀出至少1個(gè)報(bào)文,否則下一個(gè)報(bào)文到來(lái)將導(dǎo)致FIFO溢出,從而出現(xiàn)報(bào)文丟失。
CAN總線發(fā)送程序流程如圖5所示,程序選擇一個(gè)空置的郵箱,將要發(fā)送的數(shù)據(jù)寫入此郵箱,然后將發(fā)送中斷標(biāo)志置位請(qǐng)求發(fā)送,當(dāng)總線空閑時(shí)CAN發(fā)送模塊便將數(shù)據(jù)發(fā)送到總線上去,然后清空郵箱,等待下一個(gè)報(bào)文的發(fā)送。如果不止一個(gè)報(bào)文同時(shí)發(fā)送,還需比較優(yōu)先級(jí),優(yōu)先級(jí)高的先發(fā)送。
3.2 SD卡文件存儲(chǔ)流程
本系統(tǒng)移植了FatFs文件系統(tǒng),在實(shí)際的操作中只需要操作幾個(gè)函數(shù)便可完成SD卡文件的存儲(chǔ)??刂破鹘邮盏紺AN報(bào)文后將報(bào)文打包,存入SD卡中。SD卡按時(shí)間以文件形式存儲(chǔ)。圖6為最簡(jiǎn)單的SD卡文件存儲(chǔ)流程,在實(shí)際的應(yīng)用中還涉及到f_mkdir()、f_lseek()、f_opendir()等函數(shù)。
3.3 4G模塊相關(guān)程序
4G模塊肩負(fù)采集GPS信息和上傳CAN數(shù)據(jù)到云端服務(wù)器等任務(wù),這些任務(wù)都是通過(guò)AT命令完成??刂破鞫〞r(shí)向4G模塊發(fā)送指令來(lái)讀取海拔、經(jīng)度、緯度、UTC時(shí)間和運(yùn)行速度等信息,這些信息也被打包寫入SD卡。SD卡上的數(shù)據(jù)文件從本地發(fā)送到云端服務(wù)器需要有兩個(gè)過(guò)程:一、發(fā)送AT指令將數(shù)據(jù)文件發(fā)送到4G模塊的EFS;二、發(fā)送AT指令將數(shù)據(jù)從4G模塊的EFS發(fā)送到云端服務(wù)器。
4 實(shí)際運(yùn)行測(cè)試
將模塊掛接在整車的CAN總線上實(shí)時(shí)運(yùn)行,同時(shí)將一個(gè)CAN轉(zhuǎn)USB接口卡也掛接在總線上直接采集CAN報(bào)文到電腦,圖7為CAN接口卡直接采集到的數(shù)據(jù),圖8為本系統(tǒng)采集完成后上傳到服務(wù)器的文件數(shù)據(jù)。經(jīng)過(guò)長(zhǎng)時(shí)間運(yùn)行,未發(fā)現(xiàn)丟幀和數(shù)據(jù)錯(cuò)誤的情況,驗(yàn)證了系統(tǒng)的可靠性。
5 結(jié)束語(yǔ)
本文設(shè)計(jì)的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)通過(guò)CAN總線采集車輛的各種狀態(tài)信息,通過(guò)4G模塊將這些信息發(fā)送到云端服務(wù)器供用戶和生產(chǎn)廠商分析和統(tǒng)計(jì)。滿足了用戶的需求,同時(shí)由于生產(chǎn)廠商能夠得到車輛運(yùn)行的實(shí)時(shí)信息,有利于對(duì)車輛各系統(tǒng)的持續(xù)改進(jìn),節(jié)約了現(xiàn)場(chǎng)維護(hù)成本。本系統(tǒng)有著良好的擴(kuò)展性和適應(yīng)性,可用于有CAN總線的各個(gè)場(chǎng)合。
參考文獻(xiàn):
[1]曲麗娜,基于STM32的嵌入式GPRS網(wǎng)絡(luò)遠(yuǎn)程數(shù)據(jù)采集控制系統(tǒng)設(shè)計(jì)[J],煤炭技術(shù),2013,32(8):198-198
[2]孫德輝,衛(wèi)革,楊揚(yáng),基于ARM的GPRS遠(yuǎn)程數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)[J],自動(dòng)化技術(shù)與應(yīng)用,2010,29(7):26-28。
[3]候國(guó)成,楊宏業(yè),馮家鵬,等,基于ARM/GPRS的無(wú)線數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J],現(xiàn)代電子技術(shù),2008,31(19):39-41。
[4]王詩(shī)艦,唐厚君,熊天毅,基于GSM網(wǎng)絡(luò)和CAN總線的汽車遠(yuǎn)程控制系統(tǒng)[J],電氣自動(dòng)化,2013,35(3):33-35。
[5]ST Microelectronics Corporation,STM32F405XX STM32F407xx Datasheet[EB/OL],2016
[6]芯訊通無(wú)線科技有限公司,SIM7600CE_SIM7600C應(yīng)將設(shè)計(jì)手冊(cè)_V1.01,上海:芯訊通無(wú)線科技有限公司,2016
[7]芯訊通無(wú)線科技有限公司,SIM7500_SIM7600 Series_AT Command Manual_V1.01,上海:芯訊通無(wú)線科技有限公司,2016
本文來(lái)源于《電子產(chǎn)品世界》2018年第10期第46頁(yè),歡迎您寫論文時(shí)引用,并注明出處。
評(píng)論