楊皓明 趙唯



摘要:兩輪平衡車的狀態變量多、系統模型非線性、變量間強耦合、時變性等不穩定,需要高效的控制算法和控制周期。本文采用串級PID控制系統配合互補濾波算法姿態解算,實時精確地控制無刷直流電機,以角速度環為最內環,角度環與速度環為外環實現了閉環控制。系統結果表明,基于串級PID控制的控制系統能夠有效控制兩輪自平衡車的運行。
關鍵詞:兩輪自平衡車; 控制算法;控制周期
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)16-0288-02
開放科學(資源服務)標識碼(OSID):
兩輪平衡車是通過電機對左右兩輪進行力矩輸出保持平衡的類倒立擺系統,具有結構小巧、控制高效和轉彎靈活等特點已經成為移動機器人的研究熱點。對于自平衡車控制系統,已有不同的控制理論被提出,其中常用于實際應用的控制算法有常規PID控制、自適應控制、模糊控制等。采用串級PID控制系統配合互補濾波算法姿態解算,通過實時精確地控制無刷直流電機,以角速度環為最內環,角度環與速度環為外環實現了閉環控制。在實踐賽道中表現出具有良好的動態特性,反應迅速。
1系統整體設計
本文要求能識別賽道方向信息,自主控制姿態,通過兩輪驅動以直立姿態行駛在鋪有電磁線的賽道上,并且同時在微控制器上采集到的各個傳感器信息無線傳輸到PC上位機。系統設計整體架構如圖1,微處理器選用飛思卡爾的MK6ODN512ZVLQ1O為控制中心,通過外接電磁傳感器、MPU6050三軸姿態傳感器、測速512線編碼器來獲取當前車體的方向、姿態、速度信息。通過微處理器運算后輸出PWM控制信號給驅動模塊驅動電機運轉,同時通過NRF24L01無線傳輸模塊發送信息到上位機進行監視。
2 兩輪自平衡車硬件系統設計
自平衡車的硬件系統分為電源電路、運放模塊、傳感器電路模塊、控制系統電路模塊、濾波電路模塊、電機驅動電路模塊等。鎳鎘電池作為總電源,通過穩壓電路為主控芯片、傳感器提供穩定的直流電源,傳感器用于檢測平衡車的行駛狀態,判斷行駛條件,通過濾波電路,去除高頻噪聲,由控制電路進行信號處理,調整控制參數,制動控制隔離電路判斷制動條件,對電機驅動電路進行控制的同時保護主控模塊。
2.1 核心控制電路模塊
(1)電源電路
本文采用7.2V鎳鎘電池,放置于車體的軸線以下,以降低車體的重心。考慮到車上其他模塊的供電要求,需要穩壓電路對電池電壓進行處理。
K60芯片供電電壓為3.3V,攝像頭、液晶顯示屏的供電電壓為3.3V,制動控制隔離電路、陀螺儀供電電壓為5V,電機驅動電路供電電壓為12V和7.2V。
1)5V穩壓電路
采用LM2940芯片,LM2940是低壓差的線性穩壓集成電路,芯片的輸入輸出之間的損耗比較小, 包括靜態電流降低電路、電流限制、電池反接和反插入保護電路等。3腳接入輸出端和地之間接入的濾波電容,減少雜波的輸出。
2)3.3V外設穩壓電路
采用AMS3117芯片, AMS1117內部集成過熱保護和限流電路,固定輸出電壓3.3V,為確保輸入和輸出電壓的穩定性,需要在AMS1117輸入輸出端并聯濾波電容。
3)3.3V主控穩壓電路
主控穩壓電路采用AMS1117穩定輸出固定電壓3.3V,電路中需要大量的電源類引腳,電源與地包括很多引腳。電源與地引腳主要用于外接濾波電容,無須外接電源與地。IC內部不能制作電容,需要外接電容。為了改善系統的電磁兼容性,采用電源濾波電路降低電源波動對系統的影響,從而增強電路工作的穩定性。
4)DC-DC 12V穩壓電路
將直流電壓變換為另一種直流電壓利用半導體或者電阻都會降低轉換的效率,DC-DC轉換電路具有更高的轉換效率,其具有超低波紋系數和低靜態電流,在電機驅動硬件系統中起到隔離的作用,避免大電流灌滿電路,產生較強的波紋。
(2)運算放大電路
自平衡車判斷道路性質狀況需要通過電感采集電壓值,但感應到的信號強度較小,因此需要進行運算放大,采用OPA4377芯片,其具有零漂移,低噪聲等特點,在有效增強信號的同時引入較少的干擾。
(3)控制系統電路.
本文采用作為微控制器,作為整個系統的控制中心,把傳感器(圖像數據,編碼器,陀螺儀等)采集的信號,在控制算法的決策下驅動電機完成控制平衡車。
2.2 電機驅動模塊的設計
(1)電機驅動電路
采用PWM調壓調節對無刷直流電機進行調速,根據能量沖量等效原理PWM通過將固定不變的電壓系統電壓轉換成占空比可變的PWM波,占空比的改變會導致電機電樞兩端的平均電壓的方式的改變。優點主要有體積小、調速性能好、成本較低、方便控制,易于閉環的控制。
電機驅動采用全橋驅動橋驅動電路,由四個三極管或 MOS 管組成的驅動臂組成。電橋驅動芯片hip2408一方面控制對角線上MOS的導通,另一方面控制另一條對角線上的 MOS的斷開從而使電機轉動,通過改變每個臂上點MOS的狀態從而實現電機的剎車和反向。
(2)制動控制隔離電路的設計
電機驅動的啟動停止以及正反轉需要專門的電路進行控制,系統計算獲得的驅動信號通過制動控制隔離電路進行隔離,同時增強信號的功率,進行后續電平的匹配,確保可以正常驅動MOS管,同時利用隔離,將輸入信號的IO口與電機驅動模塊進行有效隔離,防止電機驅動時的電流回灌。
3 軟件設計
3.1軟件總體設計框架
由于兩輪平衡車是一種典型的倒立擺模型,根據平衡車的自平衡原理,當檢測到傳感器解算出的角度與預設機械零點角度不同即車體發生傾斜時,為保持車體平衡,需要電機發力驅動車向前或向后獲得加速度,讓重心移動來達到系統動態平衡。
在開通電源后,傳感器必須進行初始化,從而保證傳感器的工作正常。獲取MPU6050的初始溫漂進行清零,并配置軟件中斷優先級,分別配置中斷1(姿態控制)2ms、中斷2(速度、電磁賽道采集)5ms,將串級控制優先級置高來確保平衡車直立為第一優先級。軟件整體框架流程如圖3所示。
3.2互補濾波姿態解算
姿態解算的精確與動態性將影響控制是否高效,為此選用了一階互補濾波作為姿態解算的方案。互補濾波算法有效地利用加速度計的時效性彌補了角速度的溫漂問題。首先利用加速度傳感器的Y軸和Z軸加速度用反三角函數解算出當前角度,但是由于加速度計容易獲受尖峰的影響,所以需要對角速度進行積分獲得當前角度,再對二者進行融合得到最終角度。由圖可知互補濾波算法充分發揮了這兩種傳感器的優點,消除了加速度計的高頻噪聲和角速度的積分累計誤差。與DMP讀取方案相比,互補濾波算法動態性更高,對閉環控制有更好的幫助。
3.3串級閉環控制
直立車上的傳感器反饋的變量有角速度、加速度、編碼器速度三個量,通過構建串級PID控制系統,分別使用位置式PID和增量式PID來得到輸出到驅動模塊的PWM。由于串級的調試相比于普通PID有著更好的規律性,所以該控制系統比普通的方案能夠更好更快地進行參數調制。并且出現問題現象后能夠分析出是哪一環出的問題。設計并調試以角速度環為系統主回路的三閉環串級PID控制系統。
4 結論
本文研究串級PID控制系統配合互補濾波算法姿態解算,通過實時精確地控制無刷直流電機,以角速度環為最內環,角度環與速度環為外環實現了閉環控制。自平衡車的硬件系統分為電源電路、運放模塊、傳感器電路模塊、控制系統電路模塊、濾波電路模塊、電機驅動電路模塊。
參考文獻:
[1] 潘二偉. 基于STM32的兩輪自平衡車設計與實現 [D]. 黑龍江: 黑龍江大學,? 2018.
[2] 王磊, 寧欣. 基于STM32的兩輪自平衡小車控制系統設計[J]. 山東工業技術, 2018, 267(13):60.
[3] 吳振磊, 葉金漢. 一種兩輪自平衡車的控制模型分析與實現[J]. 輕工科技, 2018, 235(06):83-84.
[4] 王恒, 桑元俊. 基于新型慣性傳感器的兩輪自平衡車的設計[J]. 現代電子技術, 2017(18):57-62.
[5] 林偉捷, 黃唯佳, 蔡劍卿. 基于四元數互補濾波和PID控制算法的兩輪自平衡車系統設計[J]. 軟件導刊, 2016, 15(6).
[6] 陳鵬展, 朱年華, 李杰. 兩輪自平衡車姿態檢測與平衡控制[J]. 控制工程, 2017(8).
[7] 傅忠云, 朱海霞, 孫金秋. et al. 兩輪載人自平衡車姿態測量單元設計[J]. 科學技術與工程, 2015, 15(15):66-71.
[8] 邊群星, 陳錕, 陳鄭洲. 基于互補濾波器的兩輪平衡車姿態角度測量[J]. 電子設計工程, 2014(18):55-58.
【通聯編輯:光文玲】