采用ATMEGA16單片機設計的兩輪自平衡電動車
近兩年來,在公共場合常常能見到一種叫做體感車(或者叫平衡電動車)的代步工具,由于其便捷靈活,使得其頗為流行,并被稱為“最后一公里神器”。其運作原理主要是建立在一種被稱為“動態(tài)穩(wěn)定”的基本原理上,也就是車輛本身的自動平衡能力。以內置的精密固態(tài)陀螺儀來判斷車身所處的姿勢狀態(tài),透過精密且高速的中央微處理器計算出適當?shù)闹噶詈?,驅動馬達來做到平衡的效果。
下文采用AVR Atmega16芯片作為主控制芯片,設計制作了兩輪的自平衡電動車。文中分析了測量角度和角速度傳感器的選擇,通過Atmega16單片機多路信號AD采集陀螺儀和加速度計的信號,經過Kalman濾波算法計算動態(tài)的角度和角速度,通過LCD1602顯示角速度和角度的值、轉向值。利用PID控制算法控制自平衡車的平衡狀態(tài),使車體在平衡位置穩(wěn)定。利用大功率MOS管設計驅動電路,通過單片機有效地控制電機的轉速、電機的轉向,從而有效地控制自平衡車的前進、后退及轉彎功能。我們來看看具體的設計細節(jié)吧。
1 研究意義
隨著科學技術水平的不斷進步,交通工具正朝著小型、節(jié)能、環(huán)保的方向發(fā)展,“電動車”正是在這個背景下孕育而生并為人們所熟識。據(jù)不完全統(tǒng)計,我國的電動車保有量已超過1.2億輛,是增長速度最快的交通工具。隨著石油儲量的不斷減少和人們環(huán)保意識的增強,“電動車”無疑將成為未來交通工具的主力軍。就目前而言,電動車的種類主要有電動自行車、電動摩托車和電動汽車。由于電動機制造水平的提高,尤其是大功率直流無刷電動機制造工藝的成熟,帶動了電動自行車和電動摩托車行業(yè)的飛速發(fā)展。同時,人們也根據(jù)兩輪自平衡機器人工作原理,設計出了一些新式電動車——兩輪自平衡電動車。它是一種新型的交通工具,它一改電動自行車和摩托車車輪前后排列方式,而是采用兩輪并排固定的方式,這種結構將給人們帶來一種全新的駕馭感受。兩輪自平衡電動車僅靠兩個輪子支撐車體,采用蓄電池提供動力,由電動機驅動,采用微處理器、姿態(tài)感知系統(tǒng)、控制算法及車體機械裝置共同協(xié)調控制車體的平衡,僅靠人體重心的改變便可以實現(xiàn)車輛的啟動、加速、減速、停止等功能。兩輪自平衡車主要是綠色環(huán)保。電動車使用電池作為動力能源,并可以反復充電使用,大大減少了對環(huán)境的污染。轉彎半徑為零,在小空間范圍內可以靈活運動。無剎車系統(tǒng),由CPU自動給出正反轉力矩,從而達到快速穩(wěn)定的剎車效果。
控制極其方便,前進后退自如。兩輪自平衡電動車是一個高度不穩(wěn)定的系統(tǒng),其動力學方程是一多變量、嚴重不穩(wěn)定、耦合、時變、參數(shù)不確定性的非線性高階方程,加上運動學方程中的非完整性約束,要求完成的控制任務也具有多重性,因此,兩輪自平衡電動車作為一個具體的復雜系統(tǒng),給控制理論提出了很大的挑戰(zhàn),是檢驗各種控制方法處理能力的典型裝置。兩輪自平衡電動車作為一種研究裝置,可進行不確定性系統(tǒng)控制、非線性系統(tǒng)控制、自適應控制、智能控制等研究。
2 系統(tǒng)總體設計方案
兩輪自平衡自動車采用AVR Atmega16芯片作為主控制芯片,選擇外部16 MHz晶振,使用JTAG仿真器進行實時仿真與調試;采用LCD1602顯示轉彎角度傳感器測量的動態(tài)角度和角速度,為了讓調試的過程中更加直觀。動態(tài)角度和角速度的測量通過陀螺儀測量角速度,三軸加速度計測量角度。由于平衡車是運動的,所以三軸加速度計測量的角度里面參雜動態(tài)角度,最終通過卡爾曼硬件融合電路精確地測量出動態(tài)的角度和角速度。轉向模塊采用高精度電位器,當手把向右偏轉時,兩輪車向右轉,當手把向左偏轉時兩輪自平衡車向左轉彎,可以實現(xiàn)原地轉彎。電機采用直流減速電機,主要是因為直流減速電機能耗低、性能優(yōu)越、減速機效率高達95%以上,而且振動小、噪音低、節(jié)能高、選用優(yōu)質段鋼材料,鋼性鑄鐵箱體,齒輪表面經過高頻熱處理。節(jié)省空間,可靠耐用,承受過載能力高,經過精密加工,確保定位精度,扭矩大。電機驅動模塊采用大功率MOS管,由于電機的功率大,需要的電流大。電機的轉動通過PID控制算法,實現(xiàn)兩輪車的自平衡狀態(tài)。系統(tǒng)簡易硬件結構框圖如圖1所示。
圖1 系統(tǒng)簡易硬件結構框圖
2.1 車模直立控制方案
兩輪白平衡車的直立是通過負反饋來實現(xiàn)的,但是兩輪自平衡車的直立相對木棒的直立是相對簡單的,木棒的直立是二維的而自平衡車有兩個輪子著地且直立是一維的。所以通過控制輪子的轉動,抵消傾斜的趨勢便可以很好地保持車體直立。兩輪自平衡車模型如圖2所示。
圖2 兩輪自平衡車模型圖
兩輪自平衡車之所以在不加外力的情況下不能夠直立,是因為車體的偏轉方向和受力方向是在同一方向,所以車體會加速倒下,如果要車體直立不倒下那就需要添加外力作用才能夠保持平衡狀態(tài),這個外力就是車輪對地的摩擦力。由于電機在轉動時給地面一個摩擦力,根據(jù)牛頓第三定律,地面給車體一個與相對運動方向相反的作用力,這樣才會不至于讓車體加速倒下。
圖3 受力分析圖
兩輪自平衡車的受力分析:
兩輪自平衡車的受力分析
2.2 車模行走控制方案
兩輪自平衡車的速度是通過車輪的速度實現(xiàn)的。車輪的速度通過直流電機經過減速箱,增大扭矩。利用直流電機驅動器控制電機的正反轉和PWM調速系統(tǒng)控制兩輪自平衡車的平穩(wěn)運行。然后通過電機的加速度控制車體的平衡,通過電機的恒定速度和靜止狀態(tài)控制車體的勻速運動和靜止狀態(tài)。
在運行的過程中當人體的傾角增大時車輪的加速隨之增大以控制車體的平衡,當車體恢復平衡時,以恒定的速度勻速前進。
當轉把轉動時可實現(xiàn)自動復位功能,在轉把的軸徑方向安裝一個大強度的彈簧,使轉把在轉動的過程中自動恢復原位,實現(xiàn)了靈活轉彎的效果,如果轉把的偏向角足夠大可以實現(xiàn)原地轉彎,使兩輪車的運行更加靈活,方便在狹小的地方使用。轉把示意圖如圖4所示。
圖4 轉把示意圖
轉把的方向和偏向角是通過高精度電位器檢測的,在轉把的固定軸上安裝個角度傳感器,實現(xiàn)角度的測量。
3 程序流程圖
為了便于程序的開發(fā)和以后的使用與維護,全部程序采用模塊化結構,即由一個主程序和若干個子程序模塊構成。主程序首先完成初始化工作,包括定時器初始化、LCD16 02液晶模塊初始化、定時器中斷初始化、系統(tǒng)時鐘初始化、其他參數(shù)的初始化等。然后啟動定時器進行定時,開中斷允許單片機響應內部中斷請求。定時器中斷流程圖如圖6所示。各程序功能模塊包括LCD1602液晶顯示、電機驅動、動態(tài)角度測量、轉向、欠壓報警等。主程序流程圖如圖5所示。
圖5 主程序流程圖
圖6 定時器中斷流程圖
整個系統(tǒng)軟件采用模塊化結構。軟件系統(tǒng)包括:主程序負責顯示。車體直立模塊用定時器1中斷完成,每進入一次中斷完成一次PID算法控制車體平衡,在車體保持平衡狀態(tài)的情況下通過采集轉把數(shù)據(jù)實現(xiàn)轉彎功能。
4 總結
本系統(tǒng)采用ATMEGA16控制芯片簡化了系統(tǒng)的硬件結構,提高了系統(tǒng)的可靠性和實時性。利用MMA7260和ENC-03MB可以精確地測量出車體的動態(tài)角度和角速度,采用大功率MOS管和板橋驅動芯片可以很好地去除MOS管的發(fā)熱問題,減少能量的損耗。本電動車采用鋰電池供電既節(jié)能又環(huán)保,本設計的兩輪自平衡電動車可以在狹小的環(huán)境中行走自如,使出行帶來方便。本系統(tǒng)對實際工程應用有一定的指導意義。