摘 要:隨著互聯(lián)網(wǎng)及物聯(lián)網(wǎng)技術(shù)的發(fā)展,世界開始走向智能化時代,汽車產(chǎn)業(yè)將向智能化和自動化方向發(fā)展。車聯(lián)網(wǎng)中的智能交通管家就是汽車工業(yè)和物聯(lián)網(wǎng)技術(shù)相結(jié)合的產(chǎn)物,該應用應具備紅綠燈識別、汽車碰撞監(jiān)測報警、手機接收反饋以及語音提醒等功能,以滿足安全出行的需求。文中采用STM32物聯(lián)網(wǎng)平臺開發(fā)板作為硬件端,利用WiFi技術(shù)連接手機APP進行信息傳輸,選用TCS230顏色傳感器用于識別紅綠燈,選用HX711壓力傳感器用于檢測車身是否碰撞。車輛碰撞利用手機APP進行語音提醒且可顯示道路交通燈的顏色并發(fā)出語音提示,OLED液晶屏用于顯示顏色傳感器所識別的交通燈的顏色以及WiFi的初始化狀態(tài)。硬件各模塊的程序設(shè)計采用Keil μVision5對STM32開發(fā)板進行編程,應用移動端采用Qt Creator 5.9.1平臺及C++語言開發(fā)。該產(chǎn)品運行穩(wěn)定,性價比高。
關(guān)鍵詞:智能交通管家;車聯(lián)網(wǎng);Qt;壓力傳感器;紅綠燈顏色傳感器;汽車碰撞預警機制
中圖分類號:TP33 文獻標識碼:A 文章編號:2095-1302(2024)04-0-05
DOI:10.16667/j.issn.2095-1302.2024.04.028
0 引 言
2016年3月份通過的《國際道路交通公約》修正案同意汽車在相應的時間和地點自動駕駛。目前,大多數(shù)國家都在大力投資和扶持智能駕駛技術(shù),美國、歐盟等發(fā)達國家和地區(qū)在立法、技術(shù)研究和試驗測試方面都處于全球領(lǐng)先地位。國際汽車工程師學會(SAE International)的6級分類體系成為通行的分類原則,從低到高的6個級別分別為:不自動型、輔助型L1、部分自動型L2、有條件自動型L3、高級自動型L4、完全自動型L5。當前,世界上的無人車技術(shù)大多停留在L2級和L3級[1]。
目前,國內(nèi)的智能汽車還處在起步階段,部分L1級別的實用車型已經(jīng)開始商業(yè)化;L2級別只有少數(shù)汽車能達到;L3級別的車量較少;L4和L5級由于技術(shù)限制,至今還未形成市場。目前我國的汽車工業(yè)有了長足的發(fā)展,汽車性能和智能化程度也在不斷提升。然而,汽車駕駛技術(shù)的復雜性也日益引起人們的重視,汽車的駕駛無時無刻都需要駕駛員的全身心投入,汽車外界環(huán)境變化會直接影響汽車的操作需求,所以針對外界環(huán)境變化的智能交通管家應運而生[2]。
1 系統(tǒng)總體設(shè)計
1.1 系統(tǒng)整體架構(gòu)
該項目硬件包括:紅綠燈識別模塊、車輛碰撞監(jiān)測模塊、OLED屏顯示模塊、語音提醒模塊、WiFi無線傳輸模塊。該項目能夠?qū)崿F(xiàn)車輛實時識別紅綠燈當前顏色并顯示的功能以及反饋車輛碰撞情況并進行語音提醒的功能。
利用顏色傳感器對車輛道路現(xiàn)實狀況進行識別,將得到的數(shù)據(jù)發(fā)送到STM32控制器的主控芯片進行數(shù)據(jù)分析,在顯示屏以及手機APP端顯示數(shù)據(jù),手機APP可以語音提醒識別的交通燈顏色。當車輛受到外界壓力碰撞時,壓力傳感器將采集的數(shù)據(jù)發(fā)送到STM32控制器的主控芯片進行數(shù)據(jù)分析,交通智能管家能夠立即語音提醒并在顯示屏及手機APP端顯示。項目整體架構(gòu)如圖1所示。
1.2 各子模塊功能設(shè)計
1.2.1 紅綠燈識別模塊功能設(shè)計
紅綠燈識別模塊的功能基礎(chǔ)是項目中的TCS230顏色傳感器,該傳感器能夠采集顏色數(shù)據(jù)。通過設(shè)備攜帶的色彩采集傳感器,可以很好地還原紅綠燈的真實情況,捕捉準確的色彩信息。當車輛即將通過紅綠燈路口時,顏色傳感器采集當前交通燈的圖像數(shù)據(jù),然后由STM32單片機對數(shù)據(jù)進行特定的程序設(shè)計處理,最后顯示與數(shù)據(jù)對應的顏色文字[3]。
1.2.2 車輛碰撞監(jiān)測模塊功能設(shè)計
車輛碰撞監(jiān)測模塊采用HX711模塊+5 kg壓力傳感器套裝。當車輛受到外界壓力,例如車輛碰撞或者碰到障礙物時,傳感器采集壓力數(shù)據(jù)并依次通過HX711模塊和STM32單片機處理后,出發(fā)語音提醒。
1.2.3 OLED屏顯示模塊功能設(shè)計
紅綠燈識別模塊采集的信息通過芯片相關(guān)程序處理后,由OLED屏顯示當前紅綠燈顏色相關(guān)數(shù)值。
1.2.4 語音提醒模塊功能設(shè)計
語音提醒模塊通過WiFi連接手機APP端,當汽車碰撞監(jiān)控模塊或紅綠燈顏色識別模塊采集到數(shù)據(jù)后,將數(shù)據(jù)通過WiFi無線傳輸模塊發(fā)送到與其相連的手機APP。手機APP對數(shù)據(jù)進行處理后調(diào)用手機喇叭進行語音提醒。
1.2.5 WiFi無線傳輸模塊功能設(shè)計
WiFi無線傳輸采用ESP8266模塊,紅綠燈識別模塊和車輛碰撞監(jiān)測模塊采集獲取的信息經(jīng)STM32單片機處理后,通過WiFi無線傳輸方式實現(xiàn)紅綠燈顏色、車輛碰撞情況的傳輸,將數(shù)據(jù)傳輸?shù)脚cWiFi模塊連接的手機
APP端。
1.3 硬件設(shè)計
總體電路包含紅綠燈識別模塊、車輛碰撞監(jiān)測模塊、OLED屏顯示模塊、WiFi無線傳輸模塊[4]。交通智能管家總體電路如圖2所示。
1.4 子模塊電路設(shè)計
1.4.1 紅綠燈識別模塊電路設(shè)計
紅綠燈識別模塊識別紅綠燈的顏色并提示,從而提高駕駛員的駕駛體驗。顏色傳感器使用PA3作為數(shù)據(jù)傳輸通道,PA2連接模塊的數(shù)據(jù)輸出端。設(shè)定STM32定時器/計數(shù)器工作模式,將STM32定時器設(shè)定為固定值,然后選取色敏元件的輸出標度系數(shù),并允許輸出管腳。在實際應用中,可以根據(jù)STM32計數(shù)器值分別求出3種輸出頻率,進而確定R、G、B值和色彩[5]。顏色傳感器電路如圖3所示。
1.4.2 車輛碰撞監(jiān)測模塊電路設(shè)計
車輛碰撞監(jiān)測模塊可以監(jiān)測車輛的碰撞情況并發(fā)出語音提示,從而減少駕駛員因疏忽造成的交通事故。HX711與MCU采用2線串行數(shù)據(jù)通信,即一條時鐘線(PD_SCK),一條數(shù)據(jù)線(DOUT)。ADC采樣數(shù)據(jù)為24位有符號整數(shù)。壓力傳感器電路如圖4所示。
1.4.3 OLED屏顯示模塊電路設(shè)計
OLED屏顯示模塊顯示顏色傳感器采集的數(shù)據(jù)。OLED顯示屏電路如圖5所示。
1.4.4 WiFi無線傳輸模塊電路設(shè)計
利用WiFi無線傳輸模塊與手機APP端進行數(shù)據(jù)傳輸。WiFi模塊電路如圖6所示。
1.5 程序設(shè)計
1.5.1 下位機程序設(shè)計
本系統(tǒng)下位機軟件采用Keil5編程實現(xiàn)感知層構(gòu)建,主要包括各系統(tǒng)初始化、各程序的延遲函數(shù)、各數(shù)字信號傳感器模塊驅(qū)動程序、模擬信號傳感器模塊驅(qū)動程序、串口通信程序和液晶顯示程序[6]。下機位程序流程如圖7所示。
1.5.2 顏色傳感器程序設(shè)計
系統(tǒng)采用C語言編程,在Keil μVision5軟件平臺下編譯調(diào)試。C語言的特點是易于移植,簡潔,數(shù)據(jù)類型豐富,生成目標代碼質(zhì)量高,程序執(zhí)行效率高。該程序設(shè)計流程:將顏色傳感器TCS230采集的數(shù)據(jù)通過單片機的I/O數(shù)據(jù)采集端口輸入單片機,結(jié)果顯示在OLED液晶顯示屏和手機APP端[7]。顏色傳感器流程如圖8所示。
1.5.3 壓力傳感器程序設(shè)計
采用STM32F103C8T6讀取HX7111壓力傳感器的數(shù)據(jù),經(jīng)過處理后通過顯示屏顯示數(shù)值。程序的初始化和程序的主循環(huán)寫在main.c文件中,讀取A/D芯片數(shù)據(jù),即直接利用GPIO讀寫操作讀取數(shù)據(jù)和使用STM32的SPI讀取數(shù)據(jù)。HX711與單片機通信是由管腳SCK和DOUT組成的串行通信模式。當DOUT從高電平變?yōu)榈碗娖胶?,SCK一次輸入25個
脈沖,將24位A/D轉(zhuǎn)換數(shù)據(jù)讀入單片機,并在第25個時鐘脈沖處選擇下次轉(zhuǎn)換的輸入通道和增益。壓力檢測流程如
圖9所示。
1.5.4 WiFi模塊程序設(shè)計
ESP8266是一個高性能模塊。WiFi模塊采用透傳模式,否則每發(fā)送一次數(shù)據(jù)就要發(fā)送一次AT+CIPSEND=lt;paramgt;指令。通電后初始化,設(shè)置AT指令、密碼、名稱以及端口號,如圖10所示。
1.6 移動端APP程序設(shè)計
手機APP端采用C++在Qt Creator 5.9.1平臺編譯。APP使用C++11標準,定義了命名空間和Q_OBJECT。
(1)clienttcp.cpp文件:QWidget(parent)。指定調(diào)用基類構(gòu)造函數(shù),否則派生類會調(diào)用基類的默認構(gòu)造,派生類在初始化列表中無法直接初始化從基類繼承的成員變量,構(gòu)造函數(shù)不可繼承,若想調(diào)用基類的有參構(gòu)造,需要顯示指定。
(2)ui(new Ui::ClientTcp)。在堆上創(chuàng)建一個界面ui類,使ui指向它,這樣可以讓非ui命名空間的ClientTcp訪問ui命名空間中的ClientTcp,做到界面與邏輯分離,在調(diào)用setupUi初始化后就可通過ui指針讓二者關(guān)聯(lián)。
(3).ui-gt;setupUi(this)。將非ui域的ClientTcp傳給界面ui,并初始化,讓界面類和此ClientTcp關(guān)聯(lián)。main.cpp文件中,QApplication管理GUI的流程和主設(shè)定,包括主事件周期,這些主事件被視窗系統(tǒng)和其它資源處理、傳送,同時還負責初始化和結(jié)束應用,并提供會話管理,可以對系統(tǒng)和應用的大部分設(shè)置項進行設(shè)置。APP主界面如圖11所示。
(4)移動端APP程序流程如圖12所示。
2 測試與實現(xiàn)
2.1 傳感器測試
測試TCS230顏色識別傳感器、HX711壓力傳感器能否正常供電以及OLED顯示屏是否能顯示采集的數(shù)據(jù),顏色識別傳感器能否正常識別顏色以及壓力傳感器能否正常監(jiān)測壓力,和WiFi模塊是否能正常供電、連接并傳輸數(shù)據(jù)。傳感器測試見表1所列[8]。
2.2 紅綠燈識別模塊測試
紅綠燈識別模塊實現(xiàn)系統(tǒng)對道路環(huán)境交通燈顏色的識別。獲取的數(shù)據(jù)經(jīng)處理后判斷交通燈的顏色。識別成功時,手機APP端以及OLED顯示屏都會顯示交通燈的顏色[9-10]。紅綠燈識別模塊成功測試如圖13所示。
2.3 車輛碰撞監(jiān)測模塊測試
車輛碰撞監(jiān)測模塊實現(xiàn)系統(tǒng)對車輛車身所受壓力數(shù)據(jù)的監(jiān)測采集并語音提醒。獲取的數(shù)據(jù)經(jīng)過處理后判斷出車身受到的碰撞程度。測試成功時,手機APP端會顯示車輛發(fā)生碰撞且手機發(fā)出語音提醒。車輛碰撞監(jiān)測模塊成功測試如圖14所示。
2.4 OLED屏顯示模塊測試
OLED屏顯示模塊用來顯示顏色識別傳感器識別的交通燈顏色。OLED屏顯示模塊顯示成功如圖15所示。
2.5 WiFi無線傳輸模塊測試
WiFi無線傳輸模塊與手機APP端連接,可發(fā)送數(shù)據(jù)。WiFi無線傳輸模塊連接成功及發(fā)送數(shù)據(jù)成功的測試如圖16所示。
成功測試 成功測試
2.6 語音模塊測試
語音模塊通過WiFi模塊與手機APP相連,接收到顏色數(shù)據(jù)或碰撞數(shù)據(jù)后發(fā)出語音提醒。語音模塊測試見表2所列。
3 結(jié) 語
智能駕駛近年來廣受關(guān)注,本文以STM32開發(fā)板作為硬件端的數(shù)據(jù)收集模塊,采用顏色識別傳感器完成紅綠燈顏色的識別,使用壓力傳感器完成對車輛碰撞情況的監(jiān)測,用戶可以通過手機端或OLED顯示屏實時查看交通燈顏色或壓力監(jiān)測情況,且手機APP端具有語音提醒功能。此項目仍存在不足之處,縱橫交錯的道路使得紅綠燈的安裝情況錯綜復雜,大大降低了顏色識別傳感器對紅綠燈顏色的識別準確率。又因為車身每個地方都存在遭受碰撞的可能性,因此,設(shè)計能夠覆蓋全車的壓力傳感器成為了尚待解決的問題。
參考文獻
[1]白云龍,楊開欣,陳曉韋,等.基于STM32和ZigBee的車路協(xié)同系統(tǒng)設(shè)計[J].電腦知識與技術(shù),2019,15(4):214-215.
[2]劉文虎.人工智能在汽車自動駕駛中的應用[J].現(xiàn)代制造技術(shù)與裝備,2021,57(8):195-196.
[3]黃東風.人工智能在汽車駕駛技術(shù)領(lǐng)域的應用與發(fā)展[J].時代汽車,2022,19(1):42-43.
[4]于安琪,田楊.人工智能在無人駕駛汽車領(lǐng)域中的應用[J].中國高新科技,2021,28(24):50-51.
[5]趙玉娟.智能網(wǎng)聯(lián)汽車發(fā)展現(xiàn)狀與思考[J].汽車與安全,2018,24(7):96-99.
[6]王嬙.中國智能汽車政策現(xiàn)狀及完善研究[D].上海:上海交通大學,2018.
[7]劉宇,黎宇科,白文嶺.我國智能汽車產(chǎn)業(yè)形態(tài)探究[J].汽車與配件,2019,39(11):30-31.
[8]徐小艷,崔雪英.基于單片機的顏色識別及分揀系統(tǒng)設(shè)計[J].科技與創(chuàng)新,2021,7(21):109-110.
[9] KUNHIMOHAMMED C K,MUHAMMED S K K,SAHNA S,et al. Automatic color sorting machine using TCS230 color sensor and PIC microcontroller [J]. International journal of research and innovations in science and technology,2015,2(2).
[10]張藝,嚴翌瑄,李靜.基于多傳感器融合的交通數(shù)據(jù)采集系統(tǒng)概述[J].物聯(lián)網(wǎng)技術(shù),2021,11(2):15-18.
收稿日期:2023-04-07 修回日期:2023-05-12
基金項目:2023年國家級大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目:基于Qt的智能交通管家的設(shè)計與研究(202313639004)
作者簡介:盧光云(1983—),男,高級工程師,碩士,研究方向為自然語言處理、教育大數(shù)據(jù)、軟件開發(fā)。
程俊瑋(2002—),男,湖北鄂州人,學生,研究方向為圖像識別與處理。