摘 要: 設(shè)計并實現(xiàn)了一個帆板自動控制系統(tǒng)。以32位ARM微控制器LM3S811為控制核心,在設(shè)定的模式和間距(風扇與帆板之間的距離)下,對帆板轉(zhuǎn)角的控制進行了實驗分析與討論。實驗中采用PWM技術(shù)和PID控制器來調(diào)節(jié)風扇風力的大小,從而實現(xiàn)對帆板轉(zhuǎn)角的實時控制。整個系統(tǒng)軟硬件設(shè)計合理、操作簡單方便,控制精度較高。實驗結(jié)果進一步驗證了設(shè)計方案的正確性,證實了所設(shè)計的系統(tǒng)具有一定的理論研究意義和實用性。
關(guān)鍵詞: LM3S811;脈沖寬度調(diào)制;PID;占空比;帆板
帆板在行駛時,其動力是風。當帆面與風向一致時,帆不受力,缺乏動力;控制帆面轉(zhuǎn)動,帆面與風有了夾角,帆面受到風力,從而驅(qū)動帆板行駛。因此,帆板行駛方向的改變是靠帆面位置的改變來實現(xiàn)對其的控制功能。根據(jù)以上帆板運動控制原理,自制實驗調(diào)節(jié)裝置,采用普通大功率散熱風扇提供風力,自選一定材料和厚度的帆板,設(shè)計并制作一個帆板控制系統(tǒng)并進行實驗分析,該控制系統(tǒng)的示意圖如圖1所示。圖中,θ為帆板的轉(zhuǎn)角;d為風扇與帆板轉(zhuǎn)軸之間的間距。該系統(tǒng)實現(xiàn)的功能設(shè)定為:用手轉(zhuǎn)動帆板時,能夠數(shù)字顯示帆板轉(zhuǎn)角,顯示范圍為0°~60°,分辨力為2°,絕對誤差≤5°;設(shè)定d=10 cm時,通過操作按鍵控制風力大小,使θ能夠在0°~60°內(nèi)變化,并能被實時顯示;進一步地,在此條件下,要求θ在5 s內(nèi)達到設(shè)定值,并實時顯示,且最大誤差5°;在d=10 cm時,通過操作按鍵控制風力大小,在10 s內(nèi)使θ穩(wěn)定在45°±5°內(nèi),并實時顯示θ,且測試時有聲光報警提示;間距d在7~15 cm范圍內(nèi)任意選擇,通過按鍵設(shè)定帆板轉(zhuǎn)角θ,θ范圍為0°~60°,要求θ在5 s內(nèi)達到設(shè)定值,并被實時顯示,同時最大誤差≤5°[1-2]。
1 系統(tǒng)總體設(shè)計方案
設(shè)系統(tǒng)以LM3S811微控制器為核心控制器件,采用了PWM技術(shù)和PID控制算法通過對直流風扇轉(zhuǎn)速大小的控制,實現(xiàn)了對帆板轉(zhuǎn)角的實時控制和動態(tài)顯示。系統(tǒng)總體結(jié)構(gòu)如圖2所示。本帆板控制系統(tǒng)中,精密角度傳感器檢測帆板運動轉(zhuǎn)角的狀態(tài),并將帆板的位置信息傳送給中央控制單元,中央控制單元LM3S811根據(jù)帆板位置信息和運動狀態(tài)實時調(diào)整執(zhí)行機構(gòu)直流電機驅(qū)動電壓的大小,從而實現(xiàn)對風扇風力大小的控制,最終完成對帆板運動轉(zhuǎn)角的控制與顯示。
系統(tǒng)上電復位后,根據(jù)按鍵輸入帆板轉(zhuǎn)角設(shè)定值,系統(tǒng)中央控制單元LM3S811發(fā)出啟動指令,直流電機帶動扇葉開始運轉(zhuǎn),產(chǎn)生的風力驅(qū)動帆板開始轉(zhuǎn)動。其工作原理為:根據(jù)角度傳感器輸出的電壓值變化信息,經(jīng)微控制器處理后發(fā)出控制指令給執(zhí)行電機驅(qū)動單元,通過改變電扇風力的大小,實現(xiàn)對帆板運動控制的實時檢測和控制。
2 系統(tǒng)硬件設(shè)計
設(shè)計中,帆板采用2片15 cm×10 cm的KT板材料制成,板體輕盈,對風力的強度要求不高,可以減少對風扇力度的要求;帆板支架由三面帶有凹槽的木質(zhì)框架制成,支架底座、大功率風扇均固定在透明絕緣底板上,而且木質(zhì)框架外側(cè)粘有復印的刻度尺紙條,可以直觀地看到風扇和轉(zhuǎn)軸之間的距離;垂直的鋁合金框上面安裝量角器和刻度指針,根據(jù)指針可以明確地觀察到帆板轉(zhuǎn)角的大小。
系統(tǒng)硬件電路采用模塊化設(shè)計,主要包括:LM3S811最小系統(tǒng)、角度檢測電路模塊、電機驅(qū)動模塊、聲光報警電路、鍵盤液晶LCD顯示電路等。設(shè)計中分別對各個模塊進行詳細的分析制作與測試,使系統(tǒng)整體功能達到最佳狀態(tài)。
2.1 LM3S811最小系統(tǒng)電路
LM3S811是基于Cortex-M3核心的低成本高性能嵌入式系統(tǒng)微處理器,32位RISC高性能微控制器,工作頻率為50 MHz,內(nèi)含64 KB單周期Flash和8 KB單周期訪問的SRAM,3個通用定時器模塊,1個支持SPI(串行外設(shè)接口)和Microwire的同步串行接口(SSI),多達32個通用I/O口[3-4]。該單元電路主要利用ARM實現(xiàn)工作模式選擇、PID調(diào)節(jié)數(shù)據(jù)存儲顯示等功能。
2.2 帆板角度檢測電路
圖3所示為帆板動作示意圖。傳感器所測的角度為α,由圖可知轉(zhuǎn)角θ=α,傳感器將被測量轉(zhuǎn)換為電壓量輸出,轉(zhuǎn)角θ與電壓的關(guān)系式為sinθ=(Vout-V0)/2;其中Vout是當前顯示的電壓值,V0是θ為0°時的電壓值。
2.4 聲光報警模塊電路
如圖6所示,聲光報警系統(tǒng)由蜂鳴器驅(qū)動電路和發(fā)光二極管驅(qū)動電路組成。蜂鳴器驅(qū)動電路由三極管、蜂鳴器、續(xù)流二極管和濾波電容、反相器組成,三極管在這里相當于開關(guān),當PA4輸出低電平時三極管飽和導通,蜂鳴器發(fā)聲,發(fā)光二極管亮;當PA4輸出高電平時三極管截止,蜂鳴器停止發(fā)聲,發(fā)光二極管滅。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件采用模塊化程序設(shè)計,主要包括主控制程序、驅(qū)動電機子程序、角度檢測子程序、鍵盤控制子程序、PID調(diào)節(jié)子程序、液晶LCD顯示子程序等,各子程序單獨調(diào)試正確后再進行統(tǒng)一調(diào)試[7]。限于篇幅,僅給出主程序流程圖和PID調(diào)節(jié)子程序流程圖,分別如圖7和圖8所示。
從以上數(shù)據(jù)可知,手動測量時,分辨率可達到1°,顯示范圍為0°~60°,絕對誤差≤5°,達到設(shè)計要求。
4.2 間距10 cm時帆板轉(zhuǎn)角基本測試
將帆板和風扇的距離調(diào)整到10 cm,通過按鍵控制風扇的轉(zhuǎn)速來調(diào)整帆板的轉(zhuǎn)角,同時觀察量角器上顯示的帆板角實際值和液晶顯示器上的顯示值,記下數(shù)據(jù)。結(jié)果如表2所示。
由上表數(shù)據(jù)可知,在d=10 cm處,θ能穩(wěn)定在45°±5°范圍內(nèi),θ值能實時顯示,整個過程在5 s內(nèi)完成,同時有聲光提示,達到設(shè)計要求。
以LM3S811 ARM微控制器為控制核心,設(shè)計并實現(xiàn)了帆板的自動控制,并進行了詳細的實驗測試和數(shù)據(jù)分析;利用ARM芯片的智能控制,實現(xiàn)了PWM調(diào)壓和PID轉(zhuǎn)速調(diào)節(jié),使得帆板能較快且較準確地達到設(shè)定角度,并具有較好的穩(wěn)定性。系統(tǒng)軟件設(shè)計簡單,計算量小,測試角度誤差小,完全滿足設(shè)計要求。實驗測試數(shù)據(jù)證實了該設(shè)計具有一定的理論研究意義和實用性[7]。
參考文獻
[1] 寧秋平.基于AVR單片機帆板控制系統(tǒng)的設(shè)計[J].世界電子元器件,2012(12):51-53.
[2] 崔鳴,尚麗.基于ARM的帆板控制系統(tǒng)設(shè)計與實驗分析[J].實驗室研究與探索,2012,9(1):57-90.
[3] Luminary Micro Co. Ltd.LM3S811Microcontroller DataSheeet[EB/OL].[2011-07-20]http://focus.ti.com.cn/cn/docs/prod/folders/print/lm3s811.html.
[4] [英]姚文詳.ARMCortex-M3權(quán)威指南[M].宋巖譯.北京:北京航空航天大學出版社,2009.
[5] 王效華,牛思先.基于單片機PWM控制技術(shù)的實現(xiàn)[J].武漢理工大學學報,2010,32(1):94-98.
[6] 李繁,曾煉成,嚴劍.基于LM3S811的時間觸發(fā)多任務(wù)調(diào)度器設(shè)計[J].計算機與現(xiàn)代化,2011(12).