田嘯宇 陳揚 張婷
【摘要】本文主要介紹了兩輪自平衡機器人的設(shè)計系統(tǒng)方案。該方案以K60系列單片機作為系統(tǒng)控制處理器,采用陀螺儀、加速度儀傳感器對機器人進行直立控制,運用PID算法對兩個驅(qū)動馬達進行差速控制確保平衡性能。文中將介紹機器人系統(tǒng)硬件設(shè)計以及系統(tǒng)軟件設(shè)計的主要內(nèi)容。
【關(guān)鍵詞】自平衡 智能機器人 單片機
【基金項目】上海工程技術(shù)大學大學生創(chuàng)新訓練項目(cs1524005)。
【中圖分類號】G64 【文獻標識碼】A 【文章編號】2095-3089(2016)01-0247-02
1.引言
由于特殊的結(jié)構(gòu),自平衡機器人適應地形變化能力強,運動靈活,可以勝任一些復雜環(huán)境里的工作。[1]但因兩輪自平衡小車的應用最大的難點在于其平衡控制方面,所以本文針對該系統(tǒng)的基本平衡控制問題設(shè)計了最佳控制方案,仿真實驗結(jié)合實際系統(tǒng)實驗均實現(xiàn)了其對平衡控制,驗證了控制效果。
2.系統(tǒng)硬件設(shè)計
本系統(tǒng)方案以K60系列中MK60N512VMD100微控制器為系統(tǒng)的主要控制單元。采用MMA7260三軸加速度計和ENC-03M做為檢測機器人模型直立姿態(tài)的傳感器,并通過AD采樣后以數(shù)字信號的形式反饋給單片機,單片機進行PID運算處理后對兩個驅(qū)動馬達通過PWM的方式施加控制,使得車體自動直立得到實現(xiàn)。然后在驅(qū)動馬達上疊加一個速度控制分量,加以使用光電編碼器檢測車輪速度,實現(xiàn)了車模速度的控制。
3.軟件設(shè)計
本次設(shè)計研究的自平衡機器人軟件部分主要由加速度傳感器數(shù)據(jù)采集模塊、電機控制模塊、PID算法控制模塊三個部分構(gòu)成。
3.1MMA7260三軸加速度計AD采集
由于MK60N512VMD100芯片本身自帶AD采樣的I/O口,所以只需配置好所需的ADC寄存器ADC0_SC1A(ADC 狀態(tài)控制寄存器 1)、ADC0_RA(ADC 數(shù)據(jù)結(jié)果寄存器)即可實現(xiàn)對MMA7260三軸加速度計的數(shù)據(jù)采集。[2]以下為關(guān)鍵采樣程序段:
while (( ADC0_SC1A & ADC_SC1_COCO_MASK ) != ADC_SC1_COCO_MASK)
{
}
result = ADC0_RA;
ADC0_SC1A &= ~ADC_SC1_COCO_MASK;
3.2電機控制模塊
電機的控制采用PWM脈沖寬度調(diào)制控制,PWM信號通過L298放大后直接控制小型直流電機驅(qū)動兩輪小車運動,主要的程序段如下:
if(speedValue>=0&&speedValue;<=1000)
{
FTM0_C6V=speedValue;
FTM0_SYNC|=FTM_SYNC_SWSYNC_MASK;//使能軟件觸發(fā)
}
3.3PID算法控制模塊
PID算法是控制小車自主平衡的關(guān)鍵,PID算法就是將偏差的比例(P)、積分(I)和微分(D)通過線性組合構(gòu)成控制量,對被控制對象進行控制。[3]此程序通過PID算法對機器人平衡系統(tǒng)的穩(wěn)定性進行優(yōu)化,使其抗干擾能力得到更好的提升。
4.結(jié)束語
本文討論的是一種兩輪自平衡機器人運動控制系統(tǒng)。從系統(tǒng)中關(guān)鍵的加速度傳感MMA7260芯片人手,對系統(tǒng)的硬件組成進行了詳細的介紹,在軟件方面主要針對系統(tǒng)的傳感器模擬信號輸入的讀人、電機控制信號的輸出以及控制算法的實現(xiàn)方面進行了分析,并給出關(guān)鍵的程序段,所有軟硬件系統(tǒng)通過了調(diào)試運行,證明系統(tǒng)組成是可行的。
參考文獻:
[1]張偉民, 段曉明, 趙艷花.兩輪自平衡小車控制研究,《 自動化技術(shù)與應用 》,2011 年第 30 卷第 4 期。
[2]楊繼志,郭敬.基于 M M A 7260 兩輪自平衡小車控制系統(tǒng)設(shè)計,機電產(chǎn)品開發(fā)與創(chuàng)新,第 24 卷第3期2011年5月。
[3]劉金琨.先進PID控制MATLAB仿真,電子工業(yè)出版社,2011年3月1日。
作者簡介:
田嘯宇(1995-),男,漢族,新疆阿克蘇人,在讀本科生,專業(yè):電氣工程及其自動化。