胡雄風
摘要:風力擺控制系統(tǒng)主要由單片機STM32F系統(tǒng)控制模塊、電機驅(qū)動模塊、風機姿態(tài)采集模塊MPU6050、小型軸流風機擺動模塊、電源模塊、人機交互系統(tǒng)組成。本系統(tǒng)實現(xiàn)了風力擺在僅受直流風機動力在特定時間內(nèi)完成快速起擺、畫線、恢復靜止,并能準確畫圓,且受風力影響后能夠快速恢復畫圓狀態(tài),具有很好的線性特征。
關鍵詞:PID算法;STM32單片機;L298N驅(qū)動;MPU6050;三維角度傳感器
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2017)05-0190-02
Abstract:This topic is to design control system of wind pendulum, mainly by the STM32F microcontroller ,system control module, motor drive module, acquisition module of fan attitude data , small axial flow fan oscillating module, power supply module, human-computer interaction system. This system realizes drawing a line, resting again within a specified time by only DC fan power , and can accurately draw a circle, and fast recovery of the circle after the influence of the wind ,which has a good linear structure.
Key words: PID algorithm; STM32 microcontroller; L298N driver; MPU6050; three-dimensional angle sensor
現(xiàn)代社會中依靠風力驅(qū)動的裝置已經(jīng)越來越普遍,在新能源行業(yè)有這廣泛的應用,而最常用的是對風力進行自行控制。由于風力擺動具有不穩(wěn)定性、非線性、時變性的特點,所以風力控制系統(tǒng)則成了風力擺動裝置的重要組成部分。
1 設計要求
本課題對技術參數(shù)及指標有如下要求:
1)采用鋰電池作為供電系統(tǒng),L298N芯片作為驅(qū)動模塊,采用MPU6050角度傳感器作為角度采集模塊,利用STM32F4單片機作為系統(tǒng)控制模塊;
2)流風機在15s內(nèi)做自由擺運動,直線擺動距離不低于50cm,誤差小于±2.5cm;
3)從靜止狀態(tài)開始,在15s內(nèi)完成規(guī)定幅度的可控擺動,能夠畫出長度在300~600mm內(nèi),且長度誤差效益±2.5cm,且重復性達到要求;
4)擺動方向可手動設定,風力擺可以從靜止狀態(tài)開始,15s內(nèi)完成預先設置的方向擺動,能夠畫出大于 20cm 的直線段;
5)手動將風力擺拉起一定角度(30°~45°)并放開,5s 內(nèi)可以使風力擺通過制動達到靜止狀態(tài)。
2 系統(tǒng)方案論證與選擇
2.1風力擺運動模塊
方案一:采用兩只小型直流風機背面相靠反向的粘在PVC塑料桿上作為動力系統(tǒng),通過調(diào)節(jié)兩只直流風機的轉(zhuǎn)速來使得風力擺運動??梢灾本€運動,但是畫圓、開啟時間15s和5秒內(nèi)靜止比較難實現(xiàn)。
方案二:采用三只小型直流風機圍成立體等邊三角形??梢灾本€運動,畫圓和5秒內(nèi)靜止相對方案一較為容易實現(xiàn),但相鄰風機夾角過大,轉(zhuǎn)動的方向和風力不易控制,實現(xiàn)難度較高。
方案三:采用四只小型直流風機圍成一個沒有底面和頂面的正六面體。此方案的風力擺機械結(jié)構(gòu)雖然是最重的,但此時的風力擺的運動最易控制。
綜上所述方案三為最佳方案。
2.2風力驅(qū)動模塊
方案一:選用L298N驅(qū)動模塊,L298N是ST公司生產(chǎn)的芯片。主要特點是:工作電壓高,最高工作電壓可達46V,并且可以同時驅(qū)動兩個單相電機,可以通過調(diào)節(jié)電源輸入電壓來調(diào)節(jié)輸出;并用單片機的I/O口直接提供信號,電路非常簡單,使用簡便。
方案二:選用BTS7970驅(qū)動芯片,它是MOS管集成芯片,電機驅(qū)動的頻率會影響B(tài)TS7971開關損耗功耗。開關損耗越大,芯片越熱。該芯片具有驅(qū)動功率大,還具有非常好的封裝散熱的特點,輸出速度快,一般用于驅(qū)動小車,性能比較優(yōu)良。
綜合以上兩種方案,本想BTS7970芯片性能會較好點,但因?qū)嶒炇依镉鞋F(xiàn)成的L298N驅(qū)動模塊,經(jīng)過實驗測試,發(fā)現(xiàn)L298N驅(qū)動模塊運行可靠,取得效果良好,而且電路的電器性能和散熱性能較好,而且由于時間有限,此設計模塊就選用L298N驅(qū)動,選擇方案一。
2.3 角度測量方案的選擇與論證
方案一:只測量風力擺關于靜止狀態(tài)時的偏移角。本設計使用二維角位移傳感器測量風力擺轉(zhuǎn)動時相對靜止狀態(tài)時的偏移角,并對該位移角進行控制,從而實現(xiàn)對軸流風機轉(zhuǎn)速的控制。該方案需用軟件處理大量數(shù)據(jù),且二維角位移傳感器不能準確測量風力擺的空間位置,故不能實現(xiàn)對風力擺運動角度的精確控制。
方案二:采用雙軸二傾角式傳感器模塊LE60OE,通過測量重力加速度,進一步轉(zhuǎn)換為傾角變化,可實現(xiàn)雙向測量。改方案具有低功耗、高穩(wěn)定性、結(jié)構(gòu)簡單等優(yōu)點,控制量響應速度相對較快。它可以較為精確地測量平衡板的水平方向角,即可測量X,Y兩個方向,缺點是不能測量Z軸,且控制算法較復雜,軟件編程難度較大。
方案三:采用三維空間角度傳感器。在設計中,可以利用三維加速度傳感器,實時測量風力擺當前的即時角度和運動加速度,再對處采集的角度和加速度數(shù)據(jù)進行處理,得到風力擺當前姿態(tài),從而實現(xiàn)對風力擺位置的精確控制。
綜合對比上述三種方案,充分考慮到傳感器的性能和特點優(yōu)勢,決定此系統(tǒng)選擇方案三的三維角加速度傳感器。
2.4 控制算法的論證
方案一:采用模糊控制算法,可不需要過程的精確數(shù)學模型,具有較強的容錯能力,系統(tǒng)響應快、失調(diào)小等優(yōu)點,但是數(shù)據(jù)量過小的模糊控制算法會降低系統(tǒng)的控制精度和動態(tài)品質(zhì),模糊控制的設計尚缺乏系統(tǒng)性,無法定義控制目標。
方案二:采用PID控制算法,屬于過程控制算法,按偏差的比例、積分、微分的函數(shù)關系,進行運算。優(yōu)點是原理簡單,參數(shù)可以自動調(diào)整且相互獨立,控制精度很高,且算法成熟易于實現(xiàn),適用面廣。對于本系統(tǒng)的控制已足夠精確,節(jié)約了單片機的資源和運算時間。
綜合上面的方案的優(yōu)缺點,最后決定選擇方案二。
2.5 電源模塊
方案一:使用市電電源并自制線性直流穩(wěn)壓電路。該電路可同時給控制電路和風機供電,方案簡單且成本低廉。但風機轉(zhuǎn)動時不僅會給電源造成紋波,并且產(chǎn)生反向高電壓致使單片機燒毀。且單電源工作時負載率較大,自身功耗高。
方案二:采用雙電源對系統(tǒng)和風機單獨供電。風機動力電源和系統(tǒng)控制電源獨立設計,電機控制部分用光耦進行隔離。風機使用12V鋰電池供電,單片機控制電路則用另一塊鋰電池,通過線性直流穩(wěn)壓電路供電。此方案兼顧了系統(tǒng)的穩(wěn)定性和系統(tǒng)對供電的要求。
綜合對比的上述兩種方案,并充分考慮系統(tǒng)的穩(wěn)定性、安全性以及良好的控制性能,本設計采用第二種方案。
3 硬件電路設計
3.1硬件設計
通過直流穩(wěn)壓電源輸入+12V的電壓給L298N驅(qū)動模塊,驅(qū)動直流風機擺動,MPU6050角度傳感器采集風力擺的任意時刻姿態(tài)角數(shù)據(jù),再把數(shù)據(jù)傳送給STM32單片機控制系統(tǒng),通過人機交互系統(tǒng)下達指令信息完成所需功能。
3.2 系統(tǒng)控制原理
本風力擺系統(tǒng)采用4只12V—0.12A,直徑為6cm的小型直流風機為動力驅(qū)動系統(tǒng)。姿態(tài)角度采集模塊是角速度傳感器MPU6050芯片,通過不斷采集當前風力擺的角度數(shù)據(jù)信息,將數(shù)據(jù)傳送給系統(tǒng)控制模塊STM單片機,單片機通過收集到的數(shù)據(jù)來處理姿態(tài)角信息調(diào)節(jié)輸出PWM的占空比,控制四只風機的工作狀態(tài),從而實現(xiàn)對風力擺的控制。
4 控制算法及軟件流程
4.1控制算法
本系統(tǒng)采用經(jīng)典PID算法來控制風機的轉(zhuǎn)速。風機進入工作狀態(tài)后,角速度采集電路對當前風力擺姿態(tài)角進行采集,并和之前的數(shù)據(jù)不斷進行對比,控制風力擺的運動狀態(tài)不斷向平穩(wěn)過渡,即把風力擺的擺幅精確控制在事先設定的范圍內(nèi)。PID控制器的算法由偏差比例系數(shù)P、風機角度誤差積分系數(shù)I和角度微分D共同組成,屬于經(jīng)典的PID控制器。它具有控制原理簡單,易于編程實現(xiàn),適用范圍寬、控制參數(shù)互不干擾,參數(shù)的整定較為簡單等優(yōu)點。
4.2 程序設計框圖
5 設計結(jié)論
根據(jù)實驗測試數(shù)據(jù),在15s內(nèi)激光筆在地面畫出的直線段的長度L1,幅度可控的直線的長度L2,特定擺動方向時的長度L3,拉起30度角時達到靜止的時間T,由此可以得出以下結(jié)論:
1)風力擺從靜止狀態(tài)開始,在15s內(nèi)可使風力擺控制的激光筆在地面畫出一條長度大于50cm的直線段,直線偏差小于±2.5cm;
2)從靜止狀態(tài)開始,可在15s內(nèi)完成擺幅可控的運動,畫出長度為30~60cm的直線段,且長度誤差小于±2.5cm,且重復性極佳;
3)可任意設定風力擺的擺動方向,使風力擺從靜止狀態(tài)開始,在15s 內(nèi)按照預置的方向(角度)運動,可畫出大于 200mm 的直線段;
4)手動將風力擺拉至一定的角度(30°~45°)并放開,可在5s 內(nèi)使風力擺通過制動返回到靜止狀態(tài)。
綜上所述,本設計達到設計要求。
參考文獻:
[1] 韋建英, 徐安靜 .模擬電子技術基礎[M].2版.武漢:華中科技大學出版社,2013.
[2] 康華光.模擬電子技術基礎數(shù)字部分[M].5版.北京:高等教育出版社,2011.
[3] 傅強,楊艷.LaunchPad 口袋實驗平臺[M].德州儀器中國大學計劃,2013.
[4] 高吉祥,唐朝京.全國大學生電子設計競賽培訓系列教程(電子儀器儀表設計)[M].北京:電子工業(yè)出版社,2009.