鄭小瑀 袁月峰 顧奇梁
(中國計量學院質量與安全工程學院,浙江 杭州310018)
陸上客運的安全性已成為當今社會焦點話題,基于CAN總線和GPRS網絡模塊的大客車座椅安全帶實時監控系統,能將每一位乘客的安全帶系帶情況反映到前方司機的觸摸屏上,以便司機隨時了解每一位乘客是否系好了安全帶并作出相應舉措,從而對車內乘客起到保護作用[1]。此外,系統還可以將大客車上的乘客上座率自動發送給汽車營運公司,以便公司人員實時了解客車上座率。主要設計工作是開發一套單片機數據采集和計算機數據處理程序,目標是提供一套成本低、功能全面的大客車座椅安全帶實時監控系統。
本文對大客車安全帶監控的必要性和當前存在的問題進行了分析,提出了基于CAN總線和GPRS網絡模塊的系統總體方案,并對各單元功能進行了描述,分析了CAN主機和網絡節點的通信協議設計和技術特點等[2]。
基于CAN總線和GPRS網絡模塊的大客車座椅安全帶實時監控系統主要由主機系統(數據處理系統)、從機系統(座椅檢測系統)和上位機系統(信息監控系統)3個子系統組成,其結構如圖1所示。

圖1 系統整體構架
其中,從機系統主要由單片機(包括主控制芯片、外設模塊和電源模塊)和傳感器構成,能實現座椅狀態的檢測以及通過CAN總線向主機傳輸數據。主機系統主要由單片機(包括主控制芯片、外設模塊和電源模塊)、GPS模塊、SIM300模塊和DGUS串口顯示屏構成,能實現CAN總線以及GPRS網絡數據的接收與發送,DGUS串口屏的顯示與人機交互。上位機系統由連接有外網IP的計算機構成[3]。車載終端軟件的設計任務主要有以下5個部分:CAN總線驅動、GPRS驅動、DES數據加密算法、人機交互、SD卡數據存取。
從機負責監測大客車內1~3個座椅的4種狀態:有人已扣安全帶、有人未扣安全帶、無人已扣安全帶、無人未扣安全帶。多個從機通過CAN總線構成網絡,監測客車內所有座椅的狀態。主機通過CAN總線輪詢從機,獲得所有座椅的狀態,并將狀態信息在DGUS串口顯示屏上顯示:無人已扣安全帶、無人未扣安全帶顯示為黃色;有人已扣安全帶顯示為綠色;有人未扣安全帶顯示為紅色,并發出警告。
主機通過SIM900A模塊獲得客車的位置信息,并控制SIM900A模塊通過GPRS網絡與上位機進行信息交互,發送車內安全帶佩戴情況以及客車位置信息數據。其中,從機MCU控制器通過檢測傳感器,獲得座椅是否有人以及安全帶是否佩戴的信息。主機MCU控制器通過CAN總線輪詢每個從機,并獲取從機發送的數據包,從而獲得大客車每個座椅的狀態。上位機通過SocketAPI監聽固定IP地址,主機MCU控制器通過控制SIM900A模塊,使其連接上述IP地址,以此實現GPRS網絡通信[4]。
座椅檢測系統采用意法半導體公司型號為STM8S208的MCU作為主控芯片,其具有可靠性高、成本低等優點。STM8S208芯片的主要特性為:工作電壓2.95~5.5V;CPU工作頻率24MHz;多達128kB的Flash,6kB的RAM,2kB的EEPROM;beCAN2.0B的傳輸速率高達1Mb/s;較為靈活的時鐘選擇;2個UART和1個SPI接口;1個I2C接口。系統的外界晶振為24MHz,芯片的PG1、PG0管腳為系統引出的CAN接口,用于CAN總線通信[5]。
數據處理系統采用意法半導體公司型號為STM32F103的32位MCU作為主控芯片。STM32F103的主要特性如下:工作電壓2.0~3.6V;工作頻率最高72MHz;閃存程序存儲器128kB;SRAM高達20kB;DMA控制器為7通道,支持的外設有定時器、ADC、SPI、I2C和 USART;I/O端口多達80個;定時器多達8個;通信接口多達9個,包括2個I2C接口、3個USART接口、2個SPI接口、1個CAN接口和1個USB接口[6]。數據處理系統主控芯片及其外圍電路如圖2所示。

圖2 數據處理系統主控芯片及其外圍電路
本系統的GPS+GPRS模塊采SIMCOM公司生產的SIM900A模塊,它是一個雙頻的GSM/GPRS模塊,工作頻段為EGSM 900MHz和 DCS 1 800MHz,供電電壓為 3.2~4.8V。SIM900A 支持 GPRS multiple-slot class10/class8(可選)和 GPRS編碼格式CS-1、CS-2、CS-3和CS-4。其工作方式為通過TCP/IP協議連接到指定的IP地址,與GPS模塊進行通信,獲得位置信息[6]。系統與SIM900A模塊使用串口通信,系統通過發送串口指令,控制SIM900A模塊完成短信的發送、電話的撥打接聽、GPRS網絡的連接以及數據的接收與發送等功能,使系統實現無線發送、接收數據,令系統更加靈活易用[7]。為完成數據打包與解析,傳統的方式是:用1個字節存儲ID信息,1個字節存儲起始的座位號,1個字節存儲檢測的座位數量N,再用N個字節表示對應的每個座椅的狀態信息,再給這段數據加上幀頭幀尾以及CRC校驗等,保證數據傳輸的可靠性。
系統的顯示模塊采用北京迪文科技有限公司生產的DMT80480T070_18WT工業串口屏,該顯示屏規格為7.0英寸、800×480圖形點陣、K600+內核和65K(65 536)色。輸入電壓為6~42V,支持SD卡配置,并可通過SD卡下載。該顯示屏與數據處理系統主控芯片的通信采用串口通信協議,串口波特率為1 200~921 600(可調節)。
系統軟件由主程序、CAN總線通信子程序、定時器子程序、延時子程序等組成。主程序流程圖如圖3所示。主程序上電復位后,完成系統時鐘、EEPROM以及CAN、GPIO等的初始化,隨后配置CAN的接收中斷,完成所有準備工作。為保證座椅安全帶實時監控系統能夠正確接收需要的信息,即能接收數據處理系統發送的指定為自身接收的數據,自動過濾數據處理系統發送給CAN總線中其他節點的信息以及CAN總線中其他節點發送給數據處理系統的信息,系統配置CAN報文的過濾機制為標識符模式。

圖3 主程序流程圖
在大客車安全事故頻發的背景下,設計一套基于CAN總線和GPRS網絡模塊的大客車座椅安全帶實時監控系統十分必要,它能將每一位乘客的安全帶系帶情況反映到前方司機的觸摸屏上,從而對車內乘客起到保護作用。根據研究內容制定了總體設計方案,搭建了車載終端硬件系統及軟件架構,構建了監控中心平臺軟件。通過測試,系統運行狀況良好。
[1]駱玉榮.安全帶識別系統的研究與實現[D].北京工業大學,2008
[2]劉玉光,張曉龍,王存,等.乘用車安全帶提醒裝置適應性研究[J].汽車技術,2006(21)
[3]彭劍,葉楓,辛兢澤.汽車遠程監控診斷系統的功能設計和應用研究[J].上海汽車,2011(3)
[4]趙春明,喬旭彤,馬寧,等.基于CAN總線的電動汽車分布式控制系統的故障診斷研究[J].車輛與動力技術,2005(2)
[5]熊杰.汽車車身CAN網絡系統的設計與實現[D].哈爾濱工業大學,2008
[6]谷宗冉,孟立凡,楊艷軍.數據采集及無線收發系統設計[J].電子測試,2011(2)
[7]張新紅,吳金強.基于GPRS的遠程數據采集及監控系統[J].機械管理開發,2008(1)