倒立擺系統(tǒng)在控制理論研究中是一種較為理想的實(shí)驗(yàn)裝置,。倒立擺系統(tǒng)可以用多種理論和方法來實(shí)現(xiàn)其穩(wěn)定控制,如PID、自適應(yīng),、狀態(tài)反饋,、智能控制、模糊控制及人工神經(jīng)元網(wǎng)絡(luò)等多種理論和方法,,都能在倒立擺系統(tǒng)控制上得到實(shí)現(xiàn),,而且當(dāng)一種新的控制理論和方法提出以后,在不能用理論加以嚴(yán)格證明時,,可以考慮通過倒立擺裝置來驗(yàn)證其正確性和實(shí)用性,。本文設(shè)計了基于單片機(jī)的得倒立擺控制系統(tǒng),成本低廉,,調(diào)試方便,,能直觀的觀察控制效果,完成系統(tǒng)的調(diào)試任務(wù),,快捷的驗(yàn)證控制理論算法的正確與否,。
1.二級倒立擺系統(tǒng)的組成結(jié)構(gòu)。
二級倒立擺系統(tǒng)有以下部分組成:有效長度為90cm的光滑導(dǎo)軌,,可以在導(dǎo)軌上來回移動的小車,,材料為鋁的擺桿鉸接在小車上,二級擺桿以同樣的方式與一級擺桿相連,,如圖所示,它們的鉸接方式?jīng)Q定了它們的運(yùn)動是被限定在豎直平面內(nèi)的運(yùn)動,,一級擺桿和二級擺桿的規(guī)格相同,,有效長度為525cm。小車的驅(qū)動系統(tǒng)由一直流力矩伺服電機(jī)和同步帶傳動系統(tǒng)組成,,小車相對參考點(diǎn)的相對位移x有電位器0測量傳動帶而得到,,一級擺桿與豎直方向的夾角θ1由固定在一級擺桿和小車鉸接處的電位器1測量得到,二級擺桿與豎直方向的夾角θ2由電位器2通過測量兩個擺的角度差θ2-θ1而間接得到,。直流伺服電機(jī)產(chǎn)生驅(qū)動力F使小車根據(jù)擺角的變化而在導(dǎo)軌上運(yùn)動,。小車依靠直流電機(jī)所施加的控制力,可以在導(dǎo)軌上左右移動,??刂颇繕?biāo)是在有限長度的導(dǎo)軌上使倒立擺能穩(wěn)定地豎立在小車上而不倒下,從而達(dá)到動態(tài)平衡,。
2.控制系統(tǒng)的設(shè)計
2.1 系統(tǒng)控制原理及設(shè)計思路
狀態(tài)反饋是將系統(tǒng)的每一個狀態(tài)變量乘以相應(yīng)的反饋系數(shù),,然后反饋到輸入端與參考輸入相加形成控制律,作為受控系統(tǒng)的控制輸入,。狀態(tài)反饋系統(tǒng)的基本特點(diǎn)是采用對狀態(tài)向量的線性反饋規(guī)律來構(gòu)成閉環(huán)控制系統(tǒng),,由于控制作用是系統(tǒng)狀態(tài)的函數(shù),可使控制效果得到很大地改善,從而具有更好的一系列控制特性,。本系統(tǒng)采用狀態(tài)反饋法控制二級倒立擺系統(tǒng),。二級倒立擺系統(tǒng)共有六個狀態(tài)變量,分別是小車位置x,、兩個擺角度θ1和θ2,、,其中小車位置,、兩個擺角度分別由電位器0,、 電位器1、電位器2測量所得,,而小車的速度和兩個擺角速度由小車位置,、兩個擺角度經(jīng)微分變換所得。這六個狀態(tài)變量輸入到單片機(jī)的ADC模塊中,,經(jīng)A/D轉(zhuǎn)換后被送到上位機(jī)顯示,,并與由上位機(jī)設(shè)定的反饋參數(shù)進(jìn)行運(yùn)算,再把所求的結(jié)果經(jīng)由單片機(jī)的DAC模塊輸出到功放電路,,再經(jīng)過PWM脈寬調(diào)制到執(zhí)行電機(jī)獲得對倒立擺相應(yīng)的力從而控制倒立擺的穩(wěn)定,。控制系統(tǒng)圖如下所示:
2.2 控制系統(tǒng)硬件設(shè)計:
系統(tǒng)控制裝置的硬件采用基于凌陽公司生產(chǎn)的SPCE061A單片機(jī),。采用了四個IGBT來實(shí)現(xiàn)PWM功率轉(zhuǎn)換電路,,使電路的反應(yīng)更能及時準(zhǔn)確。電機(jī)是永磁式直流力矩電動機(jī),,它能經(jīng)常使用在堵轉(zhuǎn)或低速狀態(tài),。該電機(jī)可在位置或低速隨動系統(tǒng)中作執(zhí)行元件。
2.2.1 SPCE061A單片機(jī)性能特點(diǎn)
SPCE061A是凌陽科技推出的一款16位結(jié)構(gòu)的微控制器,。SPCE061A里只內(nèi)嵌32K字的閃存(FLASH),。較高的處理速度使µ’nSP™能夠非常容易地、快速地處理復(fù)雜的數(shù)字信號,。16位µ’nSP™微處理器,;2個16位可編程定時器/計數(shù)器(可自動預(yù)置初始計數(shù)值); 2個10位DAC(數(shù)-模轉(zhuǎn)換)輸出通道,; 32位通用可編程輸入/輸出端口,; 7通道10位電壓模-數(shù)轉(zhuǎn)換器(ADC)和單通道聲音模-數(shù)轉(zhuǎn)換器;具備串行設(shè)備接口,; SPCE061A的開發(fā)是通過在線調(diào)試器PROBE實(shí)現(xiàn)的,。它既是一個編程器(即程序燒寫器),又是一個實(shí)時在線調(diào)試器,。用它可以替代在單片機(jī)應(yīng)用項目的開發(fā)過程中常用的軟件工具——硬件在線實(shí)時仿真器和程序燒寫器,。在計算機(jī)IDE集成開發(fā)環(huán)境軟件包下,,完成在線調(diào)試功能。
2.2.2 控制電路原理及接口
SPCE061A有8路可復(fù)用10位ADC通道,,其中一路通道(MIC_In)用于語音輸入,,模擬信號經(jīng)過自動增益控制器和放大器放大后進(jìn)行A/D轉(zhuǎn)換。其余7路通道(Line_In)和IOA[0~6] 管腳復(fù)用,,可以直接通過引線(IOA[0~6])輸入,,用于將輸入的模擬信號(如電壓信號) 轉(zhuǎn)換為數(shù)字信號。二級倒立擺系統(tǒng)中的六個狀態(tài)變量電壓變化范圍為—12—+12伏,,而單片機(jī)ADC模塊的要求輸入電壓變化范圍為0—+3.3伏,,因此六個狀態(tài)變量經(jīng)電壓轉(zhuǎn)換電路后分別接至
SPCE061A單片機(jī)的IOA0~IOA5。SPCE061A UART模塊提供了一個全雙工標(biāo)準(zhǔn)接口,,用于完成SPCE061A與外設(shè)之間的串行通訊,。UART模塊的接收管腳Rx和發(fā)送管腳 TX 分別與IOB7和IOB10共用。本系統(tǒng)采用的是半雙工的通訊方式,。IOB7和IOB10與MAX485芯片相連接,,并再經(jīng)485232轉(zhuǎn)換器與上位機(jī)串行口相連。實(shí)現(xiàn)狀態(tài)變量在上位機(jī)的顯示以及由上位機(jī)設(shè)置反饋參數(shù)的功能,。SPCE061A為音頻輸出提供兩個DAC通道,, 0—3.3毫安模擬電流信號通過DAC1管腳輸出。經(jīng)狀態(tài)反饋運(yùn)算后所得到的控制量以0—3.3毫安模擬電流信號輸出,,此電流信號經(jīng)電流電壓轉(zhuǎn)換電路,,在經(jīng)電壓倍放電路后變?yōu)?mdash;12—+12V。輸至功放去控制PWM脈寬調(diào)制進(jìn)而控制執(zhí)行電機(jī),,使二級倒立擺達(dá)到動態(tài)平衡狀態(tài),。
2.3 控制系統(tǒng)軟件設(shè)計:
上位機(jī)應(yīng)用VC++編寫的串口程序。其上位機(jī)的應(yīng)用界面如下圖所示:
從圖中可以看出,,第一行表示的是測量的六個狀態(tài)變量,分別是小車位置,,小車速度,,一擺的角度,一擺的角速度,,二擺的角度,,二擺的角速度。其數(shù)據(jù)可以實(shí)時的顯示出來,,這樣就可以觀察數(shù)據(jù)是否有異常的情況,。第二行就是根據(jù)實(shí)際情況給單片機(jī)發(fā)送數(shù)據(jù),從而達(dá)到設(shè)置參數(shù)的目的,。在狀態(tài)反饋的控制策略中,,分別設(shè)置的是六個狀態(tài)反饋系數(shù),。
單片機(jī)控制系統(tǒng)的軟件設(shè)計是采用的是C語言,C的結(jié)構(gòu)化設(shè)計特點(diǎn)是簡潔,、明快,,有豐富的庫函數(shù)和較好的調(diào)試手段,還具有移植性好,,上手快等特點(diǎn),。在控制軟件中包含主程序、中斷程序和各種子程序,,下面介紹應(yīng)用狀態(tài)反饋實(shí)現(xiàn)對倒立擺穩(wěn)定控制的程序流程圖,。
狀態(tài)反饋需要測量六個量,上位機(jī)需要給單片機(jī)設(shè)置六個反饋參數(shù),。程序流程圖如下:
3. 結(jié)束語
試驗(yàn)證明,,本控制系統(tǒng)能方便快捷的找到使二級倒立擺系統(tǒng)達(dá)到動態(tài)平衡的狀態(tài)反饋系數(shù),簡化控制系統(tǒng)的調(diào)試任務(wù),,得到了較為理想的試驗(yàn)效果,。
本文作者創(chuàng)新點(diǎn):找到使二級倒立擺系統(tǒng)達(dá)到動態(tài)平衡的狀態(tài)反饋系數(shù),研究了狀態(tài)空間法在本系統(tǒng)中的應(yīng)用。