安徽中醫(yī)藥大學(xué) 錢偉琴 胡世平 劉志偉 姚夢(mèng)茜 薛冬晴
本項(xiàng)目是對(duì)傳統(tǒng)公交下車鈴和公交司機(jī)手動(dòng)開門的不方便及安全問題進(jìn)行改善,隨著我國(guó)城市建設(shè)進(jìn)程的不斷加快,交通運(yùn)輸事業(yè)也在快速得到發(fā)展,同時(shí)居民出行水平和對(duì)時(shí)間效率以及安全性的要求也在提高,城市公交作為市民出行的重要工具,其服務(wù)質(zhì)量也就密切關(guān)系到交通運(yùn)輸事業(yè)的發(fā)展。乘客下車是城市主要的交通活動(dòng)之一,乘客下車的速度與頻次影響著公交車的停站時(shí)間以及服務(wù)水平,因此下車提醒系統(tǒng)是提升司機(jī)與乘客聯(lián)系的重要途徑,傳統(tǒng)下車提醒按鈕位置單一、形同虛設(shè),在特殊情況如上下班人流高峰期時(shí)乘客難以觸碰到下車提醒按鈕,大大降低了乘客與司機(jī)之間的聯(lián)系,導(dǎo)致延誤下車和“門夾人”等安全隱患時(shí)有發(fā)生。而本項(xiàng)目的交互式公交輔助裝置設(shè)計(jì)可以實(shí)現(xiàn)到站提醒、實(shí)時(shí)人流量監(jiān)控、光電門檢測(cè)等基本功能,極大程度上方便了乘客與公交司機(jī)的使用,提升司機(jī)與乘客之間的交互能力,減少了行車過(guò)程中的“門夾人”等安全隱患,同時(shí)也可以避免“逢站必?!痹斐傻馁Y源浪費(fèi)。
在整個(gè)裝置的控制上,使用使用ARM架構(gòu)的STM32f103c6t6芯片,合理利用了微控制器的功能,并且滿足低功耗的要求,在供電方面STM32微控制器電路上只需要5V電源就可以驅(qū)動(dòng),芯片只需要3.3V,使用起來(lái)非常方便。在程序的編寫上,使用的是我們所熟悉的C語(yǔ)言。在本項(xiàng)目中使用到的功能有光電開關(guān)、RFID讀卡器模塊、wifi傳輸、串口顯示屏、按鍵等。
本項(xiàng)目的主要目的是解決乘客在公交車旅途中碰到的各種問題。例如:不良于行的乘客未趕到下客門車門就已經(jīng)關(guān)閉的問題、車內(nèi)嘈雜導(dǎo)致司機(jī)無(wú)法確定是否尚有乘客未下車的問題、偏遠(yuǎn)地區(qū)“到站就?!钡膯栴}、公交車在乘客下車過(guò)程中處于怠速狀態(tài)燃耗問題等,而本項(xiàng)目的公交輔助裝置可以結(jié)合各種模塊,完成在不同場(chǎng)景下解決乘客在出行過(guò)程中的各種情況。
該設(shè)計(jì)以公交下車提醒裝置為研究對(duì)象,使用ARM架構(gòu)的STM32f103c6t6芯片,其中包含電源模塊、光電開關(guān)、RFID讀卡器模塊、wifi傳輸、串口顯示屏等模塊構(gòu)成了一個(gè)完整的交互式公交下車輔助裝置,具體硬件系統(tǒng)設(shè)計(jì)圖如圖1所示。
圖1 硬件系統(tǒng)設(shè)計(jì)圖
本系統(tǒng)為了實(shí)現(xiàn)司機(jī)與乘客之間的交互功能,設(shè)計(jì)方面分為主機(jī)和從機(jī)。乘客選擇下車站點(diǎn)后進(jìn)行刷卡,主機(jī)采集乘客上下車的站點(diǎn)信息并進(jìn)行統(tǒng)計(jì),并將信息傳遞給從機(jī)司機(jī)端,從機(jī)顯示屏上會(huì)清晰地顯示車上人數(shù),當(dāng)前站點(diǎn)應(yīng)下車人數(shù)和未下車人數(shù),因此司機(jī)可以便捷地獲取每個(gè)站點(diǎn)的上下乘客的人數(shù)情況。乘客下車時(shí),利用光電開關(guān)的工作原理,當(dāng)有乘客下車經(jīng)過(guò)下客門,引起光敏電阻兩端電壓的改變,電壓信號(hào)通過(guò)傳感器傳到計(jì)數(shù)器上計(jì)數(shù),以此來(lái)檢測(cè)下客處是否有乘客下車,并將乘客下車情況傳遞給司機(jī)端。其中光電門的電路原理圖如圖2所示。
圖2 光電門電路原理圖
倘若尚有乘客未來(lái)得及在相應(yīng)站點(diǎn)下車,司機(jī)端將會(huì)有LED燈長(zhǎng)亮進(jìn)行示警,實(shí)現(xiàn)在不影響司機(jī)駕駛安全的前提下,提醒司機(jī)乘客下車的需求,同時(shí)避免由于停車時(shí)間過(guò)短、老年孕婦等乘客行動(dòng)不便、人流高峰人多擁擠等導(dǎo)致乘客過(guò)站未下車的誤會(huì)產(chǎn)生,維護(hù)乘客和司機(jī)的生命財(cái)產(chǎn)安全,以及緩解公交車上呼喊停車帶來(lái)的尷尬,維持公交車運(yùn)行的公共秩序,實(shí)現(xiàn)乘客及時(shí)安全下車同時(shí)提高公共資源利用率。另一方面,在偏遠(yuǎn)地區(qū),司機(jī)可以根據(jù)下車人數(shù)在相應(yīng)站點(diǎn)選擇不停車,盡量避免怠速狀態(tài)帶來(lái)的負(fù)面影響,減少公交車重新啟動(dòng)的油耗,一定程度上也降低了環(huán)境污染。
此外,根據(jù)本裝置還專門設(shè)計(jì)了公交輔助APP,利用WIFI數(shù)據(jù)傳輸模塊,使用UDP協(xié)議(UserDatagramProtocol),即用戶數(shù)據(jù)報(bào)協(xié)議,來(lái)實(shí)現(xiàn)處于同一局域網(wǎng)內(nèi)的電路板和手機(jī)可以進(jìn)行信息的傳遞的功能,即由下位機(jī)的刷卡端和司機(jī)端的電路板采集的信息可以傳遞到上位機(jī)的手機(jī)APP上。其中,UDP協(xié)議和我們所熟知的TCP協(xié)議一樣都屬于傳輸層協(xié)議,而UDP協(xié)議的主要作用是將網(wǎng)絡(luò)數(shù)據(jù)流量壓縮成數(shù)據(jù)報(bào)的形式,可以實(shí)現(xiàn)對(duì)同一時(shí)刻內(nèi)多項(xiàng)應(yīng)用同時(shí)發(fā)送和接收數(shù)據(jù),之所以選擇UDP協(xié)議,也因?yàn)閁DP協(xié)議具有TCP協(xié)議所望塵莫及的速度優(yōu)勢(shì),UDP協(xié)議將安全和排序等功能都移至上層應(yīng)用來(lái)完成,可以減少實(shí)際執(zhí)行過(guò)程中的的大量系統(tǒng)開銷,能夠極大程度上降低執(zhí)行時(shí)間,對(duì)于本項(xiàng)目非常實(shí)用。
主機(jī)WIFI模塊的電路原理圖如圖3所示,子機(jī)WIFI模塊的電路原理圖如圖4所示。
圖3 主機(jī)WIFI模塊電路原理圖
圖4 子機(jī)WIFI模塊電路原理圖
本裝置的設(shè)計(jì)由于用到了多個(gè)模塊,本項(xiàng)目在電路設(shè)計(jì)上會(huì)根據(jù)不同的I/O口所擁有的硬件資源將不同的模塊與合適的I/O口連接到一起,以達(dá)到最大化利用硬件資源的情況。由于不同模塊其工作電壓有所不同,在供電方面STM32微控制器電路上只需要5V電源就可以驅(qū)動(dòng),而芯片需要3.3V,降壓模塊集成在最小系統(tǒng)板上可以實(shí)現(xiàn)控制電路的穩(wěn)定性。
其中電源電路原理圖如圖5所示。
圖5 程序設(shè)計(jì)流程圖
圖5 電源電路原理圖
本裝置設(shè)計(jì)中使用的是我們都比較熟悉的編程語(yǔ)言——C語(yǔ)言,使用的是便捷靈活、方便上手的編譯器——Keil 5,Keil 5是一款極易掌握,有足夠的靈活性并且非常友好和強(qiáng)大的C語(yǔ)言軟件開發(fā)系統(tǒng),它提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具和清晰直觀的操作界面,可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程,并且使用起來(lái)十分的輕松便捷,并具備編譯器、編譯器、安裝包和調(diào)試跟蹤,同時(shí)支持在線仿真功能,能夠觀察到每一個(gè)寄存器的值,因此可以更加直觀地發(fā)現(xiàn)程序設(shè)計(jì)過(guò)程中出現(xiàn)的錯(cuò)誤并能夠及時(shí)加以糾正,有利于程序調(diào)試過(guò)程中的不斷改進(jìn)。此外,Keil 5完美支持Cortex-M、Cortex-R4、ARM7和ARM9等系列器件,因此在本項(xiàng)目中,Keil 5編譯器非常適用。在本項(xiàng)目中,可以使用現(xiàn)有的電子元件例如按鍵、LED、LCD屏幕、光柵傳感器、RFID讀卡器等其他輸出裝置。
程序編寫時(shí)將主機(jī)和從機(jī)封裝在不同的工程文件中,分開燒錄,編程思路會(huì)更加清晰,編寫過(guò)程中倘若遇到問題也便于更加快捷地找到問題所在,并及時(shí)改正,對(duì)調(diào)試和修改程序都非常有幫助。
其中使用的RFID讀卡器的相關(guān)程序編寫在主機(jī)中,實(shí)現(xiàn)檢測(cè)乘客刷卡的功能,RFID解讀器讀取信息并解碼后,送至單片機(jī)進(jìn)行有關(guān)數(shù)據(jù)處理,并將檢測(cè)到的信息傳遞到從機(jī),并在LCD顯示屏上顯示車上人數(shù)、應(yīng)下車人數(shù)、未下車人數(shù)等信息,從而達(dá)到司機(jī)可以接收到相應(yīng)站點(diǎn)乘客上下車情況的效果。
此外,在LCD的相關(guān)程序的編寫中,使用到了畫線算法,實(shí)現(xiàn)站點(diǎn)距離之間的計(jì)算,得到公交車運(yùn)行的實(shí)時(shí)位置,在初始化配置后,向SPI總線傳輸數(shù)據(jù),實(shí)現(xiàn)寫命令,完成數(shù)據(jù)傳輸過(guò)程。
程序設(shè)計(jì)的思路如下:本裝置通電運(yùn)行之后,按下開門按鍵,則判斷當(dāng)前到達(dá)的站點(diǎn),然后乘客可以選擇相應(yīng)的下車站點(diǎn),若與當(dāng)前所在站點(diǎn)沖突,LCD顯示屏則會(huì)顯示:“已在當(dāng)前站點(diǎn)”,并且使當(dāng)前選擇站點(diǎn)次數(shù)無(wú)效,即不計(jì)入計(jì)數(shù)器中;若乘客選擇站點(diǎn)與當(dāng)前所在站點(diǎn)無(wú)沖突,則乘客可以進(jìn)行刷卡操作,同時(shí)計(jì)數(shù)器進(jìn)行記錄并統(tǒng)計(jì)各個(gè)站點(diǎn)上車人數(shù),車門關(guān)閉后進(jìn)入車輛運(yùn)行狀態(tài),到達(dá)站點(diǎn)后,與本裝置在同一局域網(wǎng)內(nèi)并且公交輔助APP處于登錄狀態(tài)的手機(jī)會(huì)發(fā)生震動(dòng)以提示乘客站點(diǎn)到達(dá),下客門光電門傳感器檢測(cè)下車人數(shù)并與統(tǒng)計(jì)應(yīng)下車人數(shù)進(jìn)行對(duì)比,乘客若全部下車則正常關(guān)門,若當(dāng)前站點(diǎn)人數(shù)仍未歸0,則LED提示燈長(zhǎng)亮進(jìn)行提示,車門不關(guān)。
本項(xiàng)目的設(shè)計(jì)邏輯如圖5程序設(shè)計(jì)流程圖所示。
本裝置設(shè)計(jì)實(shí)現(xiàn)了在模擬場(chǎng)景中公交下車輔助系統(tǒng)的功能,但是目前應(yīng)用與推廣方面還很欠缺,也只限于在乘客遵守“前門上車,后門下車”的前提下,若乘客從下客門上車,則會(huì)影響光電門技術(shù)的準(zhǔn)確性,容錯(cuò)率方面還有待進(jìn)一步提高。但在交互方面,功能已經(jīng)全部完成,乘客可以選擇相應(yīng)的站點(diǎn)、獲得站點(diǎn)的信息、到站提醒,主機(jī)通過(guò)對(duì)采集信息的處理和統(tǒng)計(jì),傳遞至子機(jī),司機(jī)可以便捷地了解車上人數(shù)及上下客情況,根據(jù)應(yīng)下車人數(shù)做出開關(guān)門判斷,在尚有乘客未下車的情況下會(huì)有警示燈一直處于提醒狀態(tài),直至應(yīng)下車乘客全部下車,車門即可關(guān)閉,實(shí)現(xiàn)乘客與司機(jī)之間信息的交互式傳遞。
總結(jié):本裝置在硬件結(jié)構(gòu)設(shè)計(jì)方面較為合理,相較于傳統(tǒng)的下車提醒按鈕,更加智能化、使用便捷、容錯(cuò)率更高,對(duì)傳統(tǒng)的位置單一并且缺乏靈活性的下車提醒按鈕進(jìn)行改良,實(shí)現(xiàn)司機(jī)與乘客之間信息的交互功能。使用處理速度快、功能強(qiáng)大、功耗較低的Cortex-M3內(nèi)核ARM架構(gòu)的STM32微控制器,可以實(shí)現(xiàn)到站提醒、實(shí)時(shí)人流量監(jiān)控、光電門檢測(cè)等基本功能,極大程度上方便了乘客與公交司機(jī)的使用,提升司機(jī)與乘客之間的交互能力,避免由于停車時(shí)間過(guò)短、老年孕婦等乘客行動(dòng)不便、人流高峰人多擁擠等導(dǎo)致乘客過(guò)站未下車的誤會(huì)產(chǎn)生,減少不必要的矛盾發(fā)生,維護(hù)了乘客和司機(jī)的生命財(cái)產(chǎn)安全,也能夠緩解公交車上大聲呼喊停車而帶來(lái)的尷尬,維持公交車運(yùn)行的公共秩序。同時(shí)也減少了行車過(guò)程中的“門夾人”等安全隱患,提高了行車過(guò)程的安全性,此外還可以避免“逢站必?!彼斐傻馁Y源浪費(fèi),提高了公共資源的利用率,有效解決了許多行車過(guò)程中的煩惱。