劉風(fēng)旺, 韓 娜, 許宗嶺, 鄒月英, 劉 志
(中通客車股份有限公司, 山東 聊城 252022)
隨著公共交通和旅游業(yè)的快速發(fā)展,客車行業(yè)進(jìn)入到高速發(fā)展轉(zhuǎn)型的關(guān)鍵階段,新車型更加注重智能化、信息化、安全化等問題。本文結(jié)合相關(guān)技術(shù),研發(fā)一種基于NI myRIO的智能駕駛客車路況識別系統(tǒng)[1-3]。該系統(tǒng)以NI myRIO控制器設(shè)計為主、硬件電路和監(jiān)控電路的設(shè)計為輔。
本系統(tǒng)設(shè)計的核心內(nèi)容是數(shù)據(jù)傳輸,包括自平衡行駛、讀取傳感器數(shù)據(jù)、電機(jī)轉(zhuǎn)速控制、自動控制及人工智能。該系統(tǒng)通過攝像頭和傳感器檢測[4-5],將數(shù)據(jù)傳輸?shù)絅I myRIO處理器,驅(qū)動系統(tǒng)控制其電機(jī)轉(zhuǎn)速大小;Wi-Fi模塊和手機(jī)APP通信可將前方檢測的路況實(shí)時反映到我司PC端顯示界面上。將NI myRIO作為主控來實(shí)現(xiàn)智能客車360度的檢測、識別、行駛,共分為終端控制端、檢測端、前進(jìn)行駛端3個節(jié)點(diǎn)。當(dāng)駕駛員疲勞時,可開啟自動駕駛功能,使車輛保持勻速行駛;通過控制器反饋的信號,可在我司PC端實(shí)時觀察車輛的各項(xiàng)信息指標(biāo),以便工作人員讀取數(shù)據(jù),判斷車輛各部件是否正常運(yùn)行,預(yù)防出現(xiàn)突發(fā)情況,保障了車輛及車上乘客的人身安全。車身擁有強(qiáng)大的防御裝置,可提前檢測并避開山體滑落及石塊阻礙;可根據(jù)路況控制智能客車行駛的速度,選擇最優(yōu)的行駛路線,以此解決路況故障及人機(jī)交互工作中產(chǎn)生的問題。
采用NI myRIO核心芯片控制電路,NI myRIO控制器中內(nèi)嵌的XiLinx Zynq芯片具有低功耗、低成本、高性能、便攜的優(yōu)勢,同時控制器具有不同程度的智能性(記憶、感知、推理、學(xué)習(xí))。工控方面,用戶要求更快的中斷速度。采用TZ460XSF06永磁同步電動機(jī),額定功率為143 kW;額定轉(zhuǎn)矩為1 606 N·m;冷卻方式為水冷;最高轉(zhuǎn)速為3 000 r/min;通過CAN總線給出電機(jī)控制和動力電池管理指令[6],實(shí)現(xiàn)整車驅(qū)動及能量優(yōu)化,同時可通過綜合儀表接口功能(儀表上顯示整車狀態(tài)信息),完善該客車的故障診斷、處理及整車網(wǎng)絡(luò)管理功能。可通過編碼器控制其轉(zhuǎn)速,無需使用相位順序表、高頻率控制等復(fù)雜的界面編程。工作電壓為5~15 V,通訊方式為串口通信。我司網(wǎng)絡(luò)PC端可顯示清晰的界面和準(zhǔn)確的行駛路況。其結(jié)構(gòu)流程如圖1所示。

圖1 結(jié)構(gòu)流程
控制電路使用了一種采樣數(shù)據(jù)技術(shù)以降低主控電路的平均功耗,采用STM32F407控制板和智能駕駛通訊處理[7]。主控芯片NI myRIO與控制芯片STM32F407進(jìn)行數(shù)據(jù)的傳輸,通訊處理通過單片機(jī)外部連接傳感器采集數(shù)據(jù)反饋到控制芯片進(jìn)行內(nèi)部集成,再傳輸?shù)街骺匦酒M(jìn)行遠(yuǎn)程傳輸,數(shù)據(jù)間通過主控芯片傳輸?shù)轿宜镜腜C端,便于工作人員實(shí)時監(jiān)測車輛的信息狀況。定時器不僅能輸出多路PWM供給電機(jī)使用,還能快速處理攝像頭和PWM信號傳回的數(shù)據(jù),從而提高智能客車的運(yùn)行速度和處理信號的采集頻率,使其模塊核心芯片能較好地滿足功能要求。
該系統(tǒng)的控制對象為車輛行駛參數(shù),控制的目的是使系統(tǒng)自動識別并進(jìn)行調(diào)節(jié),以提供最優(yōu)運(yùn)載能力和路況環(huán)境。攝像頭與手機(jī)APP共同負(fù)責(zé)網(wǎng)絡(luò)通信。系統(tǒng)控制參數(shù)見表1。

表1 系統(tǒng)控制參數(shù)
該項(xiàng)目通過LabVIEW 2016設(shè)計[8],由程序框圖設(shè)計主程序。通過內(nèi)部的NI myRIO插件編寫來實(shí)現(xiàn)相對應(yīng)的功能。主程序流程如圖2所示。

圖2 主程序流程
1) 對系統(tǒng)進(jìn)行初始化。在監(jiān)控程序中,首先對系統(tǒng)進(jìn)行初始化編程。硬件方面包括NI myRIO控制器和輔助控制器STM32F407系統(tǒng)的初始化;軟件方面主要是針對于標(biāo)志位的賦值,定義按鈕、繼電器與精進(jìn)電機(jī)裝載運(yùn)行,讀取E2PROM的數(shù)據(jù),同時采用蜂鳴器對行駛中遇到的路況障礙進(jìn)行報警提示。
2) 顯示界面。通過應(yīng)用LabVIEW軟件在程序框圖的界面編寫液晶顯示屏和物流機(jī)器人交互相接的數(shù)據(jù),直接調(diào)用該程序框圖,主程序每循環(huán)一遍清屏一次,通過函數(shù)的嵌套調(diào)用再次調(diào)用時鐘芯片DS1302讀取時間,將讀取回來的值顯示在液晶顯示屏界面上,經(jīng)由串口通信傳輸?shù)街骺叵到y(tǒng),主控系統(tǒng)中的無線模塊GPS定位傳輸?shù)竭h(yuǎn)程界面,主控芯片針對不同的數(shù)據(jù)及時作出相應(yīng)的處理[9]。采集顯示程序流程如圖3所示。

圖3 采集指令系統(tǒng)流程
3) PID控制算法應(yīng)用。PID控制器參數(shù)的自動調(diào)整是運(yùn)用智能化一體化調(diào)整或自校正、自適應(yīng)、自整合算法來完成,其控制原理如圖4所示。

圖4 PID控制原理
PID調(diào)節(jié)器是一種線性調(diào)節(jié)器,可通過MATLAB軟件的計算數(shù)據(jù)和響應(yīng)曲線將相應(yīng)的數(shù)據(jù)傳回主控面板,PID調(diào)節(jié)器中給定值r(t)與控制輸出值u(t)的偏差即比例、積分、微分,三者通過線性組合構(gòu)成控制量,以此來達(dá)到對被控對象實(shí)際輸出值y(t)的轉(zhuǎn)速控制[10]。
交叉進(jìn)行控制系統(tǒng)的硬件和軟件調(diào)試時,通常先排除系統(tǒng)的硬件故障,尤其是電源故障,才能安全地進(jìn)行連接及綜合測試。
通過在相應(yīng)路況的實(shí)際操作運(yùn)行,可直觀地發(fā)現(xiàn),相比于一般的智能駕駛客車,基于NI myRIO控制器的智能駕駛客車具有速度快、精準(zhǔn)度高、穩(wěn)定性強(qiáng)等優(yōu)點(diǎn),但也存在一些小問題,即在路況水量超過400 mm高度時,行駛會受到一定的影響,相應(yīng)的運(yùn)行效率不是很高。因此,在設(shè)計過程中要明確各元器件的工作條件,考慮到電機(jī)穩(wěn)定性,可采用成本相對較低,穩(wěn)定性高的精進(jìn)電機(jī),通過在LabVIEW程序框圖上的設(shè)計,適當(dāng)?shù)貙幋a器的數(shù)值進(jìn)行整定,可有效地解決此類問題。
軟件部分的設(shè)計對于整個系統(tǒng)來說至關(guān)重要,通常針對不同的數(shù)據(jù)運(yùn)用不同的軟件進(jìn)行仿真測試。
在軟件數(shù)據(jù)采集的過程中,曾嘗試過使用多種軟件來對標(biāo)志位、堆棧溢出、計算數(shù)據(jù)、工作寄存器等多種數(shù)據(jù)進(jìn)行采集[11],最終選擇MATLAB軟件,主要是因?yàn)镸ATLAB軟件可以對智能駕駛客車運(yùn)行數(shù)據(jù)進(jìn)行仿真分析。輔助控制器STM32F407程序應(yīng)用Keil uVision5軟件的編寫制作,由LabVIEW軟件進(jìn)行最后的程序構(gòu)造,傳輸?shù)絅I myRIO控制器[12],來對主要功能的搭建進(jìn)行處理并集合。但制作過程中有時會遇到中斷響應(yīng)不及時或中斷響應(yīng)錯誤的情況。通過對中斷控制寄存器初值的調(diào)試,進(jìn)行了多種數(shù)據(jù)的測試和整定,最終得到了較好的解決辦法。
本文使用了NI myRIO控制器與STM32F407單片機(jī)對整車控制器的動力性和經(jīng)濟(jì)性的策略進(jìn)行優(yōu)化,同時對智能駕駛客車路況顯示進(jìn)行了研究與開發(fā);本系統(tǒng)對今后行業(yè)的發(fā)展,成本的降低,加快生產(chǎn)線的流動起著至關(guān)重要的作用,為人機(jī)交互工作未來的發(fā)展提供了參考。