小車左右側(cè)分別有一個(gè)驅(qū)動(dòng)輪,利用電機(jī)驅(qū)動(dòng)模塊可以實(shí)現(xiàn)電機(jī)的正反轉(zhuǎn)以及速度調(diào)節(jié),2個(gè)電機(jī)配合即可實(shí)現(xiàn)小車各個(gè)方向的運(yùn)動(dòng)。小車右轉(zhuǎn)的程序如下:
VOIDMOVE_RIGHT(VOID)
{
IN1=1;
IN2=0;//IN1、IN2對(duì)應(yīng)左電機(jī),10正轉(zhuǎn)
IN3=0;
IN4=1;//IN3、IN4對(duì)應(yīng)右電機(jī),01反轉(zhuǎn)
PWM_LEfT(50);
PWM_RIGHT(50);
}
這段程序?qū)298N模塊的4路邏輯輸入進(jìn)行了配置并分別用占空比為50%的PWM信號(hào)控制左右電機(jī)。左電機(jī)正轉(zhuǎn)、右電機(jī)反轉(zhuǎn)體現(xiàn)在小車上就是小車原地向右旋轉(zhuǎn)。同理編寫MOVE_LEfT()、MOVE_fORWARD()、MOVE_BACKWARD()等幾個(gè)函數(shù)供外部調(diào)用。
3.4、比例控制程序設(shè)計(jì)
當(dāng)一個(gè)機(jī)器人被設(shè)計(jì)用來自動(dòng)維持某一數(shù)值,如距離、壓力等,它一般都包含一個(gè)控制系統(tǒng)。在本設(shè)計(jì)中該系統(tǒng)由傳感器和電機(jī)組成,可以通過處理器編程對(duì)傳感器的輸入做出決定,從而控制輸出。對(duì)小車采用閉環(huán)控制中最常用的比例控制算法來維持其與目標(biāo)物體之間的距離,比例控制框圖如圖4所示。
圖4 ?比例控制
以上控制環(huán)路將不斷調(diào)整電機(jī)轉(zhuǎn)速使實(shí)測(cè)距離趨近目標(biāo)距離,對(duì)左右電機(jī)用同樣的控制環(huán)路分別控制,將使小車能跟隨目標(biāo)物轉(zhuǎn)彎、旋轉(zhuǎn),提高系統(tǒng)可靠性。程序設(shè)計(jì)如下:
GET_DISTANCE();//測(cè)距
DuTyCyCLE_LEfT=(SETDISTANCE-LEfTDISTANCE)*
KP+CENTER;//左側(cè)運(yùn)算
DuTyCyCLE_RIGHT=(SETDISTANCE-RIGHTDISTANCE)*
KP+CENTER;//右側(cè)運(yùn)算
PWM_LEfT(DuTyCyCLE_LEfT);
PWM_RIGHT(DuTyCyCLE_RIGHT);//更新PWM信號(hào)占
空比
……
4、系統(tǒng)測(cè)試
在環(huán)境溫度一定的室內(nèi)對(duì)小車的跟隨性能進(jìn)行測(cè)試,分別在不同跟隨距離下觀察小車是否能準(zhǔn)確跟隨,并測(cè)量響應(yīng)時(shí)間。系統(tǒng)測(cè)試結(jié)果如表2所示。
表2系統(tǒng)測(cè)試
5、結(jié)論
以STM32為控制芯片,設(shè)計(jì)并制作了一種可遙控智能跟隨小車。經(jīng)測(cè)試,在空曠地該小車可自動(dòng)360°跟隨目標(biāo)物體,系統(tǒng)響應(yīng)快,保持距離準(zhǔn)確,同時(shí)小車可以由遙控器一鍵切換為遙控模式,使設(shè)計(jì)更為人性化。該小車成可實(shí)現(xiàn)多輛跟隨,可應(yīng)用于簡(jiǎn)單的工廠搬運(yùn)或者超市、家居等生活場(chǎng)合。
評(píng)論