湖南文理學(xué)院 寧天瑜
湖南文理學(xué)院 湖南文理學(xué)院芙蓉學(xué)院 王南蘭
湖南文理學(xué)院芙蓉學(xué)院 胡朋朋 胡 海
“智能小車”是一個(gè)集環(huán)境感知、規(guī)劃決策和多功能駕駛等于一體的綜合系統(tǒng)。整個(gè)小車的制作運(yùn)用了自動(dòng)控制原理、傳感技術(shù)和電子等多個(gè)學(xué)科的知識(shí)。以后智能小車的應(yīng)用會(huì)更廣泛,如在消防救災(zāi)、軍事、農(nóng)業(yè)自動(dòng)化等領(lǐng)域會(huì)有更加廣泛的應(yīng)用和發(fā)展。
本文提出了基于無(wú)線通訊技術(shù)和單片機(jī)的智能小車設(shè)計(jì)方案。實(shí)現(xiàn)自動(dòng)尋跡、避障、跟隨、遠(yuǎn)程遙控等功能。
實(shí)時(shí)交互智能小車控制系統(tǒng)主要由自動(dòng)控制部分、通訊控制部分兩大部分組成組成。系統(tǒng)運(yùn)行過程中可以切換控制模式,通過藍(lán)牙、433MHz等無(wú)線通訊模塊實(shí)現(xiàn)小車與上位機(jī)、其它小車的通訊,其中一部分故障時(shí)不影響另外一部分。智能小車控制系統(tǒng)總體架構(gòu)如圖1所示。
圖1 智能小車控制系統(tǒng)總體架構(gòu)圖
實(shí)時(shí)交互智能小車主要包括:電源模塊、電機(jī)驅(qū)動(dòng)模塊、尋跡模塊、超聲波模塊、數(shù)據(jù)傳輸模塊、stm32f103vet6。硬件電路構(gòu)成如圖2所示。
驅(qū)動(dòng)采用的是L298N電機(jī)驅(qū)動(dòng)模塊,內(nèi)含兩個(gè)H橋的高電壓大電流全橋式驅(qū)動(dòng)器;L298N作為主驅(qū)動(dòng)芯片,具有驅(qū)動(dòng)能力強(qiáng),發(fā)熱量低,抗干擾能力強(qiáng)的特點(diǎn)。工作電壓高,最高工作電壓可達(dá)46V,輸出電流大,瞬間峰值電流可達(dá)3A,持續(xù)工作電流為2A,額定功率25W,可以適應(yīng)多種電機(jī)的需求,通過單片機(jī)輸出PWM波來(lái)控制電機(jī)的轉(zhuǎn)速?gòu)亩鴮?shí)現(xiàn)小車的起停、轉(zhuǎn)向和速度等功能。
圖2 智能小車硬件電路構(gòu)成構(gòu)
尋跡模塊采用紅外線尋跡,傳感器的紅外線發(fā)射管不斷發(fā)射紅外線,當(dāng)發(fā)射出的紅外線照射到黑線上時(shí),紅外線被吸收,光敏二極管一直處于關(guān)斷狀態(tài),此時(shí)模塊的TTL輸出端為高電平,相應(yīng)指示二極管一直處于熄滅狀態(tài);當(dāng)紅外線照射到黑線以外的地方時(shí),紅外線被反射回來(lái)且強(qiáng)度足夠大,紅外接收管導(dǎo)通,此時(shí)模塊的TTL輸出端為低電平,指示二極管被點(diǎn)亮。尋跡傳感器電路圖如圖3所示。
圖3 尋跡模塊電路圖
尋跡傳感器陣列排布如圖4所示從左至右依次排列。
傳感器模塊將采集到的小車中點(diǎn)與黑線的偏差值發(fā)送給單片機(jī),單片機(jī)根據(jù)采集的數(shù)據(jù)進(jìn)行計(jì)算從而調(diào)整小車的姿態(tài)。
超聲波測(cè)距的原理是超聲波傳感器發(fā)出超聲,計(jì)算超聲波從發(fā)射到接收超聲波的時(shí)間,從而計(jì)算出距離。因此可以通過超聲波模塊測(cè)定小車與障礙物之間的距離,進(jìn)行避障和跟蹤。
超聲波模塊的制作有特殊要求,本文直接選用市面上常見的US-015超聲波模塊。該模塊分辨率高于1mm,可達(dá)0.5mm,測(cè)距精度高;重復(fù)測(cè)量一致性好,測(cè)距穩(wěn)定可靠。
圖4 小車運(yùn)動(dòng)示意圖
小車配備了藍(lán)牙模塊和數(shù)傳模塊,藍(lán)牙模塊實(shí)現(xiàn)了小車與手機(jī)的實(shí)時(shí)通信完成小車不同模式的切換,數(shù)傳模塊實(shí)現(xiàn)了小車與小車之間的實(shí)時(shí)通信完成小車之間的信息交流。
本軟件主要由三大部分組成:基于TIM2的分時(shí)任務(wù)系統(tǒng)代碼設(shè)計(jì)、基于PID的自主尋跡和避障算法程序設(shè)計(jì)和基于USART的通訊程序設(shè)計(jì)。
其系統(tǒng)流程圖如圖5所示。
圖5 智能小車系統(tǒng)流程圖
一個(gè)能穩(wěn)定運(yùn)行的系統(tǒng)是小車執(zhí)行各種動(dòng)作的載體,本設(shè)計(jì)需要完成多個(gè)任務(wù)的執(zhí)行,借助STM32f103RCT6的TIM2定時(shí)器設(shè)計(jì)一個(gè)最小任務(wù)周期為一毫秒的分時(shí)任務(wù)系統(tǒng)以執(zhí)行各種任務(wù),其初始化代碼如下:
任務(wù)系統(tǒng)能使各種任務(wù)有條不紊地執(zhí)行可以靈活的加入各種任務(wù)。
對(duì)小車尋跡傳感器陣列采集到的位置數(shù)據(jù)進(jìn)行處理是實(shí)現(xiàn)小車尋跡的關(guān)鍵。
PID算法是根據(jù)采集到的誤差來(lái)進(jìn)行自動(dòng)調(diào)節(jié),利用循跡模塊在前向通道的基礎(chǔ)上加入了反饋環(huán)節(jié)提高的算法的精度以及糾偏能力,但是引進(jìn)了超調(diào)和飽和的問題需要多次調(diào)試PID三個(gè)參數(shù)的值來(lái)讓系統(tǒng)的靜態(tài)特性和動(dòng)態(tài)響應(yīng)達(dá)到最佳狀態(tài),至此PID調(diào)節(jié)器就算基本設(shè)計(jì)完成。
本設(shè)計(jì)利用STM32單片機(jī)的USART實(shí)現(xiàn)與藍(lán)牙等其他通訊設(shè)備通訊以實(shí)現(xiàn)小車與手機(jī)、電腦和小車之間的通訊。
對(duì)于上述各個(gè)模塊的選擇以及各個(gè)模塊的設(shè)計(jì)與實(shí)踐,通過調(diào)試,各個(gè)模塊都可以單獨(dú)的正常工作。最后將各個(gè)模塊整合在一起,實(shí)現(xiàn)實(shí)時(shí)交互智能小車這一項(xiàng)目,要對(duì)這個(gè)系統(tǒng)進(jìn)行整體設(shè)計(jì),不僅要實(shí)現(xiàn)各個(gè)模塊單獨(dú)可以正常工作,還得實(shí)現(xiàn)模塊與模塊之間的信息交互。經(jīng)過多次調(diào)試與修改,實(shí)現(xiàn)了小車的尋跡、跟隨以及小車和小車之間的信息的交互。
[1]胡壽松.2013.自動(dòng)控制原理(第六版)[M].
[2]高吉祥.2004.模擬電子技術(shù)(第四版)[M].