尋跡小車中分布式控制系統(tǒng)的設(shè)計與實踐
本文將介紹一種應(yīng)用于尋跡小車的分布式控制系統(tǒng)的設(shè)計方法,該系統(tǒng)可對電機模塊、傳感器模塊和燈控模塊進行分布式控制。這樣設(shè)計是為該系統(tǒng)將來從尋跡小車到真車進行移植提供方便。
此尋跡小車模型采用7.5V電池驅(qū)動,通過改變PWM占空比調(diào)速。小車可以在不完全確定的道路環(huán)境下,通過自我判斷,對周圍環(huán)境進行探測,并做出相應(yīng)的反應(yīng)(如左拐彎、右拐彎和改變速度等)。目前用在機器人上的多為價格較貴的超聲波傳感器和紅外傳感器等,本設(shè)計采用價格便宜的反射式光耦傳感器來完成對周圍環(huán)境的感知。此外,小車還具有良好的導(dǎo)航系統(tǒng)。
系統(tǒng)結(jié)構(gòu)
本系統(tǒng)采用分布式結(jié)構(gòu),如圖1所示。因為在車身控制系統(tǒng)中控制對象多而且分散,若采用點對點的集中控制方式,控制模塊與被控對象之間就需要大量連接電纜,會導(dǎo)致車內(nèi)布線復(fù)雜且制造和安裝困難,并存在故障隱患。分布式系統(tǒng)結(jié)構(gòu)可以根據(jù)控制對象的位置來設(shè)計控制模塊,從而縮短了控制對象與控制模塊之間的距離。各模塊間通過LIN總線來通信,該方式僅需要一根線作為通信線。此外,分布式系統(tǒng)結(jié)構(gòu)還可降低單板的靜態(tài)電流,增加單板的穩(wěn)定性。
圖1 分布式車身控制系統(tǒng)結(jié)構(gòu)圖
圖2 主控制器模塊硬件原理圖
1 主控制模塊的設(shè)計
根據(jù)系統(tǒng)功能要求和結(jié)構(gòu)特點,本控制系統(tǒng)被分成主控模塊和三個子模塊(傳感器模塊、電機控制模塊和燈控模塊)。其中主控模塊主要檢測車身主體部分控制開關(guān)的狀態(tài),并根據(jù)這些控制開關(guān)的狀態(tài)實現(xiàn)相應(yīng)的控制策略,然后將控制命令通過CAN總線和LIN總線發(fā)送給相應(yīng)的子模塊,之后根據(jù)各子模塊反饋的負(fù)載狀態(tài)判斷是否存在故障,若有故障則報警顯示。同時,CAN總線接收上層CAN網(wǎng)絡(luò)的某些信息。主控制模塊的微控制器采用了可靠性高、抗干擾能力強的汽車專用芯片XC164CS,其內(nèi)部集成了CAN的控制器。圖2是主控制模塊的硬件原理圖。
2 直流電機驅(qū)動與控制模塊的設(shè)計
電機控制模塊中的微控制器采用的也是XC164CS,這是由于該系列微控制器中都有相應(yīng)的單元可以實現(xiàn)對電機的控制,相當(dāng)方便。本設(shè)計使用了兩路電機控制小車的后輪驅(qū)動和前輪轉(zhuǎn)向。對直流電機的驅(qū)動和控制采用了電機控制接口芯片TLE6209,它的內(nèi)部集成了一個H型橋式電路,用來驅(qū)動電機,實現(xiàn)電機的四象限運行,分別對應(yīng)正轉(zhuǎn)、正轉(zhuǎn)制動、反轉(zhuǎn)和反轉(zhuǎn)制動。16位微控制器XC164CS通過內(nèi)部的CAPCOM模塊產(chǎn)生一個10kHz的PWM信號給TLE6209,觸發(fā)H橋電路。
3 傳感器模塊的設(shè)計
傳感器模塊中采用了微控制器XC866,主要用來采集8個傳感器的值,傳送給主控制板的XC164CS進行處理,然后產(chǎn)生相應(yīng)的策略改變PWM占空比對驅(qū)動和轉(zhuǎn)向電機做出相應(yīng)的控制。同時,還要完成對通信模塊數(shù)據(jù)的發(fā)送和接收,其硬件框圖如圖3所示。
圖3 傳感器模塊硬件框圖
當(dāng)反光板反射式光電開關(guān)CNY70檢測到給定的白色(或黑色)路線時,產(chǎn)生相應(yīng)的電平信號,經(jīng)XC866采集再通過LIN總線傳送給主控制器。
系統(tǒng)通信
小車的各個電子控制單元之間通過LIN總線和CAN總線連接。
本系統(tǒng)中CAN收發(fā)器采用了TLE6250G,電機信息的傳輸需要高速的數(shù)據(jù)傳輸率(200Kb/s)以達(dá)到實時控制電機的要求。CAN的數(shù)據(jù)發(fā)送速率高達(dá)1Mb/s,可工作于只接收模式和空閑模式,具有優(yōu)良的EMC特性和各種保護功能;而LIN總線因為數(shù)據(jù)傳輸率較低以及從確保高安全性能的角度來考慮并不合適。
圖4 串行通信/LIN總線硬件電路
使用CAN、LIN結(jié)合的網(wǎng)絡(luò)結(jié)構(gòu)可以兼顧CAN總線實時性強、可靠性高、通信速率快、互操作性好、靈活性高和LIN網(wǎng)絡(luò)結(jié)構(gòu)簡單、成本低的特點,更好地搭建汽車的網(wǎng)絡(luò)系統(tǒng)。
本系統(tǒng)采用了TLE6258系列LIN總線收發(fā)器,它作為介于協(xié)議控制器和物理總線之間的接口,特別適合在汽車和工業(yè)應(yīng)用的LIN系統(tǒng)中用來驅(qū)動總線,且可用于標(biāo)準(zhǔn)的ISO9141系統(tǒng)。TLE6258提供空閑模式以減少電流損耗,通過在總線上發(fā)送喚醒幀,可把主機或從機從空閑模式喚醒,返回到正常的操作模式。圖4是本系統(tǒng)的LIN總線硬件電路圖。
如圖4所示,系統(tǒng)通過接插件K1在串行通信和LIN總線通信之間進行選擇,TXD0(串行發(fā)送)和RXD0(串行接收)信號來自微控制器。當(dāng)TXD0和RXD0同TLE6258接通時,系統(tǒng)與LIN總線連接,而與MAX232連接時,系統(tǒng)執(zhí)行串行通信功能。圖4中INH是禁止輸入引腳,高電平有效,收發(fā)器引腳TxD接收來自微控制器引腳TXD0的數(shù)據(jù),同時將數(shù)據(jù)發(fā)送至總線,在發(fā)送數(shù)據(jù)的同時進行自接收,并通過引腳RxD將自接收的數(shù)據(jù)反饋給微控制器。微控制器接收到反饋回來的數(shù)據(jù)后調(diào)用接收中斷,接收中斷不斷發(fā)送和自接收數(shù)據(jù),從而實現(xiàn)LIN總線的通信。本系統(tǒng)中數(shù)據(jù)通信主要是主模塊向三個模塊發(fā)送控制命令和三個子模塊向主模塊反饋狀態(tài)數(shù)據(jù)。
軟件設(shè)計
系統(tǒng)中各個ECU通過CAN總線發(fā)送接收命令,實現(xiàn)相互通信,從而實現(xiàn)數(shù)據(jù)的共享等。軟件設(shè)計基于DAVE和KEIL軟件編寫,程序主要由CAN初始化、發(fā)送數(shù)據(jù)和接收數(shù)據(jù)三部分組成,如圖5所示。
圖5 主程序流程圖
結(jié)論
本設(shè)計方案可實現(xiàn)分布式車身控制系統(tǒng)的基本功能,且結(jié)構(gòu)簡單、成本低。此外,這一設(shè)計思想同樣也適用于真車的控制。汽車電子技術(shù)的不斷進步,將促使CAN、LIN和正在發(fā)展的更高速、具有容錯性的總線技術(shù)有機組合,構(gòu)成安全、舒適,更滿足人們需求的汽車網(wǎng)絡(luò)。
光電開關(guān)相關(guān)文章:光電開關(guān)原理
評論