基于單片機的教育機器人的設計
系統(tǒng)軟件設計
系統(tǒng)控制的實現(xiàn)是由軟件完成的。軟件設計基于keilC51編寫的,采用模塊化結構設計,各個功能子塊獨立。在結構上由1個主程序文件main.c和8個子程序文件(key.c、pid.c、detect.c、seg.c、speed.c和motor.c)組成。main.c主程序文件完成一系列任務的初始化工作和處理各個任務工作的協(xié)調(diào)。key.c文件完成按鍵中斷檢測和蜂鳴器報警任務;seg.c文件完成數(shù)碼管顯示;sp∞d.c文件完成電機速度檢測;motor.c完成PWM的配置和電機的控制;detect.c文件完成紅外光電傳感器陣列檢測;pid.c文件實現(xiàn)模糊參數(shù)自整定PID運算處理。其中定時器TO產(chǎn)生采樣周期T秒定時中斷,每間隔T秒中斷一次,完成一次PID控制計算,同時調(diào)用模糊參數(shù)自整定PID運算子程序?qū)y試轉(zhuǎn)速和設定轉(zhuǎn)速進行差值計算得到輸出值,用于配置PWM的輸出,控制電機轉(zhuǎn)速。主程序和定時器TO中斷處理流程圖如圖4所示。
圖4 主程序和定時器TO中斷處理流程圖
4.1 模糊PID參數(shù)自整定控制器原理
PID參數(shù)模糊自整定是找出PID中3個參數(shù)與e和ec之間的模糊關系,在運行中通過不斷檢測e和ec,根據(jù)模糊控制原理來對3個參數(shù)進行在線修改,以滿足不同e和ec對控制參數(shù)的不同要求,而使被控對象有良好的動穩(wěn)態(tài)性能。從系統(tǒng)的穩(wěn)定性、響應速度、超調(diào)量和穩(wěn)態(tài)精度等方面來考慮,Kp,Ki,Kd的作用如下:Kp的作用是加快系統(tǒng)的響應速度,提高系統(tǒng)的調(diào)節(jié)精度;Ki用于消除系統(tǒng)的穩(wěn)態(tài)誤差;Kd改善系統(tǒng)的動態(tài)性能。圖5是PID控制器設計結構原理圖。
圖5 PID控制器設計結構原理圖
由PID各個參數(shù)對系統(tǒng)的影響得到:
?。?)當誤差|e|較大時,說明誤差的絕對值較大,不論誤差的變化趨勢如何,都應該考慮控制器的Kp取較大值,以提高響應的快速性;而為防止因為|ec|瞬時過大,kd應該取較小的值;為控制超調(diào),ki也應該取值很小。
?。?)當誤差|e|在中等大小時,為保證系統(tǒng)的相應速度并控制超調(diào),應減小Kp,Ki值應增大,Kd應適中。
?。?)當誤差|e|較小時,為保證系統(tǒng)具有良好的穩(wěn)態(tài)特性,應加大Kp、Ki的取值,同時為避免產(chǎn)生振蕩,Kd的取值應該和|ec|聯(lián)系起來。
教育機器人屬于典型的非線性、時變、模型不確定復雜系統(tǒng)。在實際中,機器人行駛道路有直道、大彎道、“S”型小彎道。利用教育機器人在相同的路況下其特性基本不變,可分別確定這3種道路參數(shù)下的最佳PID參數(shù)。其核心思想是把控制周期內(nèi)的機器人狀態(tài)視為不變,只要控制周期較短,就可實現(xiàn)很好的控制效果。在機器人實際的行使中,每10ms進行1次控制,可滿足要求。
4.2 PID參數(shù)設定
模糊PID控制根據(jù)系統(tǒng)運行的不同狀態(tài),考慮Kp、Ki、Kd三者的關聯(lián),根據(jù)工程經(jīng)驗并依據(jù)各參數(shù)的作用,通過大量的測試獲得本系統(tǒng)對應路況下的PID參數(shù),實驗數(shù)據(jù)如下:
?。?)在直道上系統(tǒng)取kp=3,Ki=5,kd=0,測試環(huán)境為一條長度5 m的長直道;
?。?)在大彎道上系統(tǒng)取kp=10,Ki=1,kd=1,測試環(huán)境為直道進入一個半徑為100 cm的3/4圓;
?。?)在“S”型小彎道上系統(tǒng)取kp=7,Ki=4,kd=3,測試環(huán)境為3個90度圓弧構成的"S"型小彎道。
5 結束語
用STC12C5A60S2單片機配合紅外光電陣列檢測模塊對直流電機執(zhí)行參數(shù)自整定模糊PID控制器,解決了直流電機在巡航過程中產(chǎn)生抖動前進的控制問題,使得教育機器人在行走的過程中更平穩(wěn),且控制方法簡單、實用。
參考文獻:
[1].MAX810datasheethttp://www.dzsc.com/datasheet/MAX810_1019165.html.
[2].LM7805datasheethttp://www.dzsc.com/datasheet/LM7805_843721.html.
[3].L298Ndatasheethttp://www.dzsc.com/datasheet/L298N_442931.html.
評論