曾敬 滕軍 陸曉燕
【摘要】本設計以STC89S52單片機為控制核心,通過角度傳感器得到系統(tǒng)變量,利用PWM分別對電機轉動角度與速度進行控制,進而實現(xiàn)倒立擺在一定的角度范圍內的旋轉控制。
【關鍵詞】倒立擺;角度傳感器;STC89S52
倒立擺系統(tǒng)是一個典型的單輸入多輸出、復雜的、非線性的不穩(wěn)定系統(tǒng)。它在軍事、航天、機器人和各類工業(yè)領域都有著廣泛的用途。因而,對倒立擺控制系統(tǒng)的研究具有重要的工程意義。本設計是基于AT89S52的單片機簡易旋轉倒立擺控制系統(tǒng)。其主要構造包括旋臂、擺桿、直流電機等裝置。其中直流電機為執(zhí)行機構,可由專門的電機驅動芯片如L298N驅動。根據(jù)一定的算法計算將信號提供給驅動芯片,以驅動直流電機轉動,從而帶動旋臂旋轉,最終實現(xiàn)控制倒立擺運動的效果。
一、倒立擺算法分析
為實現(xiàn)倒立,本系統(tǒng)在算法方面采用了模糊控制。所謂模糊控制,就是在控制方法上應用模糊集理論、模糊語言變量及模糊邏輯推理的知識來模擬人的模糊思維方法,用計算機實現(xiàn)與操作者相同的控制。該理論以模糊集合、模糊語言變量和模糊邏輯為基礎,用比較簡單的數(shù)學形式直接將人的判斷、思維過程表達出來。本設計中涉及的狀態(tài)變量共有4個,每個變量的論域作7個模糊集的模糊劃分,這樣,完備的推理規(guī)則庫會包含74=2401個推理規(guī)則,但如此多的規(guī)則是很難實現(xiàn)的,而二維模糊控制器的控制性能較好,所以一般選擇增量算法作為模糊控制器的輸出變量,模糊控制基本結構如圖1所示。
圖1 模糊控制的基本結構
二、系統(tǒng)總體設計框圖
本系統(tǒng)主要由主控模塊、角度傳感器模塊、機械結構模塊、電源模塊、電機驅動模塊等幾部分組成。為了讓擺桿有更大的慣性,帶動擺桿旋轉更大的角度,在設計中,我們設定電機正反轉存在一定的角度差。電機轉動角度差一般設定在30o以內,如果角度差太大,會迫使還處于上一個慣性狀態(tài)的擺桿改變狀態(tài),這樣將不能實現(xiàn)增大慣性作用,反而使擺桿擺動角度變小。當電動機驅動擺桿轉到360°,且倒立時,采用角度傳感器檢測擺桿擺動方位,控制電動機于擺桿擺動方向想一致,進而實現(xiàn)擺桿倒立。在整個該過程中,為了確保電動機在調整速度的同時維持系統(tǒng)穩(wěn)定,主控芯片會通過驅動電路發(fā)出脈沖指令,控制電動機作相應的微調,從而完成動作。本系統(tǒng)主要通過AT89S52單片機來控制電路的輸出,使用模糊控制算法,實現(xiàn)按鍵控制、電機轉動、倒立擺旋轉、液晶顯示等功能。角度傳感器模塊在系統(tǒng)中的作用是檢測擺桿與水平面的夾角,進而將數(shù)據(jù)反饋給主控芯片,主控芯片以此來發(fā)出控制指令。電路設計總體框圖如圖2所示。
圖2 電路設計總體框圖
圖3 主程序流程圖
三、系統(tǒng)軟件流程
由于系統(tǒng)使用的是直流減速電機,所以控制方法相對較為簡單,只需給電機的控制線加上適當?shù)碾妷杭纯墒闺姍C轉動起來,電壓越高則電機轉速越快。對于直流電機的速度調節(jié),可以采用PWM調速方法??刂齐姍C的時候,電源并非連續(xù)的向電源供電,而是在一個特定的頻率下以方波脈沖的形式提供電能。不同占空比的方波能對電機起到調速作用。這是因為電機實際上是一個大電感,它有阻礙輸入電流和電壓突變的能力。因此,脈沖輸入信號被平均分配到作用時間上,這樣,改變在始能端輸入方波的占空比就能改變加在電機兩端的電壓大小,從而改變了轉速。用軟件方式實現(xiàn)時,可以通過執(zhí)行軟件延時循環(huán)程序交替改變端口某個二進制位輸出邏輯狀態(tài)以產(chǎn)生脈寬調制信號。設置不同的延時時間會得到不同的占空比。角度傳感器在系統(tǒng)中的主要作用是用來檢測角度的。軸每轉過1/16圈,角度傳感器就會計數(shù)一次。往一個方向轉動時,計數(shù)增加,轉動方向改變時,計數(shù)減少。計數(shù)與角度傳感器的初始位置有關。當初始化角度傳感器時,它的計數(shù)值被設置為0,如果需要,可以通過用編程讓它重新復位。本系統(tǒng)主程序大致流程包括對AT89S52的初始化設置、角度傳感器TCL2543的初始化設置、液晶顯示初始化設置,按鍵設置,定時器初始化設置,占空比調節(jié)等。程序的核心算法是基于PID的閉環(huán)控制,PID控制器參數(shù)的整定步驟如下:(1)首先預選擇一個足夠短的采樣周期讓系統(tǒng)工作;(2)僅加入比例控制環(huán)節(jié),直到系統(tǒng)對輸入的階躍響應出現(xiàn)臨界振蕩,記下這時的比例放大系數(shù)和臨界振蕩周期;(3)在一定的控制度下通過公式計算得到PID控制器的參數(shù)。系統(tǒng)再根據(jù)角度傳感器檢測到的擺桿位置,做出相應的電機轉速的調節(jié),從而使擺桿達到預定的狀態(tài)。系統(tǒng)的主程序流程如圖3所示。
四、測試結果
本系統(tǒng)從以下三個方面對倒立擺進行了測試
1.擺桿從處于自然下垂狀態(tài)(擺角0o)開始,驅動電機帶動旋轉臂作往復旋轉使擺桿擺動,并盡快使擺角達到或超過-60o~+60o;
2.從擺桿處于自然下垂狀態(tài)開始,盡快增大擺桿的擺動幅度,直至完成圓周運動;
3.在擺桿處于自然下垂狀態(tài)下,外力拉起擺桿至接近165o位置,外力撤除同時,啟動控制旋轉臂使擺桿保持倒立狀態(tài)時間不少于5s;期間旋轉臂的轉動角度不大于90o。
測試結果如表1所示。
表1 倒立擺測試表
測試項目 測試要求 測試結果
擺桿擺動角度 在-60o~+60o 完成
擺桿旋轉角度 圓周運動 完成,可擺動兩個圓周運動以上
擺桿接近165o
時保持倒立時間 保持倒立時間不少于5s,旋轉臂角度不大于90o 10次測試,完成了7次。
五、結論
倒立擺是一個很好的控制實驗裝置,由于其結構簡單、成本較低、對于控制效果檢驗能力強等特點,在控制方法的實驗和研究上有很重要的地位。設計者可以利用所學的控制理論,自行設計多種控制算法,并在本該系統(tǒng)上進行驗證。本系統(tǒng)具有制作方法簡單,系統(tǒng)操作控制方便,擺桿倒立持續(xù)時間長等特點,基本達到了設計要求。
參考文獻
[1]何為民.低功耗單片微機系統(tǒng)設計[M].北京:北京航空航天大學出版社,1994.
[2]胡大可,李培泓,張路平.基于單片機8051的嵌入式開發(fā)指南[M].北京:電子工業(yè)出版社,2003.
[3]張振榮,晉明武,王毅平.MCS-51單片機原理及實用技術[M].北京:人民郵電出版社,2000.
[4]黃智偉.全國大學生電子設計競賽電路設計[M].北京:北京航空航天大學出版社,2006.
[5]劉寶延.步進電機及其驅動控制系統(tǒng)[M].哈爾濱:哈爾濱工業(yè)大學出版社,1972.
[6]周航慈.單片機應用程序設計技術[M].北京:北京航空航天大學出版社,1991.
[7]郁有文.傳感器原理及工程應用[M].西安:西安電子科技大學出版,2008.
[8]宋戈.51單片機應用開發(fā)范例大全[M].北京:人民郵電出版社,2010.
作者簡介:曾敬(1982—),四川遂寧人,研究方向:通訊與信息技術。