西華師范大學(xué)電子信息工程學(xué)院 陸曉燕
基于R5F100LEA的風(fēng)力擺控制系統(tǒng)設(shè)計(jì)
西華師范大學(xué)電子信息工程學(xué)院 陸曉燕
本風(fēng)力擺控制系統(tǒng)由RL78/G13MCU板(R5F100LEA)單片機(jī)主控模塊、風(fēng)力擺模塊、角度傳感器模塊、液晶顯示模塊、按鍵模塊等組成。系統(tǒng)通過角度傳感器采集角度信息,用RL78/G13MCU板(R5F100LEA)處理姿態(tài)角數(shù)據(jù)后通過PID精確算法調(diào)節(jié)直流風(fēng)機(jī),并通過按鍵實(shí)現(xiàn)風(fēng)力擺工作模式的切換,LCD1602實(shí)時(shí)顯示當(dāng)前風(fēng)力擺的角度和距離,當(dāng)風(fēng)力擺運(yùn)動(dòng)達(dá)到要求時(shí),LED燈點(diǎn)亮,用于提示功能完成。本系統(tǒng)實(shí)現(xiàn)了風(fēng)力擺在僅受直流風(fēng)機(jī)為動(dòng)力控制下快速起擺、恢復(fù)靜止、距離和幅度可控等功能。
RL78/G13MCU板(R5F100LEA);角度傳感器;直流風(fēng)機(jī);PID算法
風(fēng)力擺采用4只直流風(fēng)機(jī)作為動(dòng)力系統(tǒng),用木板構(gòu)成十字架,從中間插入碳素纖維管,結(jié)構(gòu)穩(wěn)定。它是一種利用直流風(fēng)機(jī)產(chǎn)生動(dòng)力,快速起擺、恢復(fù)靜止以及實(shí)現(xiàn)擺的距離和幅度可控的控制器。風(fēng)力擺可以做直線運(yùn)動(dòng)、圓周運(yùn)動(dòng)。
2.1系統(tǒng)組成
該風(fēng)力擺控制系統(tǒng)由R5F100LEA主控模塊、風(fēng)力擺模塊、角度傳感器模塊、液晶顯示模塊、按鍵模塊、聲光提示模塊等組成;系統(tǒng)通過角度傳感器采集角度信息,用R5F100LEA處理姿態(tài)角數(shù)據(jù)后通過PID精確算法調(diào)節(jié)控制風(fēng)力擺。通過按鍵實(shí)現(xiàn)風(fēng)力擺工作模式的切換,LCD1602實(shí)時(shí)顯示當(dāng)前風(fēng)力擺的角度和距離,當(dāng)風(fēng)力擺運(yùn)動(dòng)達(dá)到要求時(shí),LED燈點(diǎn)亮,用于提示功能完成(見圖1)。
圖1 系統(tǒng)總體結(jié)構(gòu)框圖
主控制器:采用單片機(jī)R5F100LEA是瑞薩公司的32位處理器產(chǎn)品,工作頻率32Mhz,96KB的程序存儲(chǔ)空間,瑞薩集成開發(fā)環(huán)境有一個(gè) “代碼生成器 code Generator”能夠生成MCU的底層驅(qū)動(dòng)代碼,減少了底層代碼的編寫。
風(fēng)力擺模塊:采用4只直流風(fēng)機(jī)作為動(dòng)力系統(tǒng)。用木板構(gòu)成十字架,從中間插入碳素纖維管,此方案風(fēng)力擺負(fù)載較重,但結(jié)構(gòu)穩(wěn)定,配合前后左右的風(fēng)機(jī)可以較為精確地控制風(fēng)力擺的運(yùn)動(dòng)和姿態(tài)。
角度傳感器模塊:采用三維角速度傳感器MPU6050,該傳感器可準(zhǔn)確追蹤快速與慢速動(dòng)作,通過計(jì)算得到三維角度值,方便對(duì)風(fēng)力擺進(jìn)行控制。
液晶顯示模塊:LCD1602液晶顯示,可以顯示豐富的符號(hào)指示信息以及文字指示信息。
2.2風(fēng)力擺運(yùn)動(dòng)控制方案
2.2.1風(fēng)力擺的狀態(tài)測(cè)量
采用高精度的陀螺加速度計(jì)MPU6050采集三維角度信息,在單片機(jī)中通過一定的算法,計(jì)算出風(fēng)力擺的角度,然后根據(jù)動(dòng)作要求控制風(fēng)機(jī)的轉(zhuǎn)速,控制四個(gè)風(fēng)機(jī)轉(zhuǎn)動(dòng)完成相應(yīng)的功能。
2.2.2風(fēng)力擺的運(yùn)動(dòng)控制
本系統(tǒng)采用PID算法來控制風(fēng)機(jī)轉(zhuǎn)動(dòng)的速度。風(fēng)機(jī)開始工作后,姿態(tài)采集模塊不斷采集當(dāng)前風(fēng)力擺姿態(tài)角狀態(tài),并與之前的狀態(tài)比較,使得風(fēng)力擺的運(yùn)動(dòng)狀態(tài)逐漸趨向平穩(wěn)。通過PID算法去控制各個(gè)風(fēng)機(jī)是否轉(zhuǎn)動(dòng)以及轉(zhuǎn)動(dòng)速度的大小。
2.2.3風(fēng)力擺的幅度控制
當(dāng)風(fēng)力擺靜止時(shí),擺桿豎直向下,通過單片機(jī)程序控制風(fēng)機(jī)的轉(zhuǎn)動(dòng),使風(fēng)力擺起擺。由圖2可知,風(fēng)力擺通過激光筆在地面畫的直線段與擺桿頂端到地面的豎直距離始終成一個(gè)直角。設(shè)激光筆在地面畫的直線段為x,擺桿的轉(zhuǎn)動(dòng)頂端到地面的豎直距離為y,擺桿擺動(dòng)的角度為θ。x是我們需要在地面上畫的線性長(zhǎng)度,y值可以通過直尺量出。則擺桿擺動(dòng)的角度θ=arctan(x/y),通過程序設(shè)定角度,從而達(dá)到幅度擺動(dòng)的控制。
圖2 風(fēng)力擺結(jié)構(gòu)
2.2.4風(fēng)力擺的圓周運(yùn)動(dòng)控制
如圖3、圖4,四個(gè)軸流風(fēng)機(jī)A、B、C、D,A和C用來使風(fēng)力擺的擺桿與重力方向呈現(xiàn)設(shè)置夾角,B和D用來推動(dòng)擺桿沿切線方向運(yùn)動(dòng),由于擺桿為剛體,同時(shí)擺桿頂部為萬向節(jié),事實(shí)上,只要我們調(diào)節(jié)好控制A和C電機(jī)的PID參數(shù)使擺桿穩(wěn)定到設(shè)定的角度,然后通過B和D推動(dòng)擺桿,擺桿就會(huì)沿切線運(yùn)動(dòng),繪制出圓形軌跡。
圖3 畫圓示意圖
圖4 圓底示意圖
3.1硬件設(shè)計(jì)
主控制模塊:
圖5 主控制模塊
本設(shè)計(jì)的主控芯片選擇RL78/G13MCU板(R5F100LEA),通過RL78/ G13MCU板(R5F100LEA)控制驅(qū)動(dòng)部分,進(jìn)而控制軸流風(fēng)機(jī)的擺動(dòng)。
3.2軟件設(shè)計(jì)
3.2.1編程控制
實(shí)現(xiàn)風(fēng)力擺做自由擺運(yùn)動(dòng),通過單片機(jī)一個(gè)直流風(fēng)機(jī)的延時(shí),運(yùn)用蕩秋千的原理,實(shí)現(xiàn)擺動(dòng)。實(shí)現(xiàn)擺幅可控,在風(fēng)機(jī)換向的時(shí)候進(jìn)行PWM脈寬調(diào)節(jié)控制,進(jìn)行風(fēng)力的調(diào)節(jié)。圓周運(yùn)動(dòng)的實(shí)現(xiàn)主要是使用兩個(gè)方向的風(fēng)機(jī)進(jìn)行動(dòng)力合成,從而實(shí)現(xiàn)擺動(dòng)方向的改變,換向的時(shí)候兩組電機(jī)同時(shí)換向。方向可以通過矢量合成,通過查詢sin表格,進(jìn)行每個(gè)風(fēng)力計(jì)算,在路徑規(guī)劃好的基礎(chǔ)上可以用陀螺儀進(jìn)行路徑修正。
3.2.2程序設(shè)計(jì)流程圖
主控模塊主要完成系統(tǒng)硬件的初始化、按鍵的掃描、讀取傳感器值、PID精確算法等功能。
圖6 主流程圖
4.1硬件測(cè)試
數(shù)值萬用表主要用來測(cè)試分立元件的電阻、壓降、漏電流、截止、導(dǎo)通等參數(shù)??删幊叹€性直流電源用于檢測(cè)穩(wěn)壓電源模塊的輸出電壓和為其他模塊提供電源。函數(shù)發(fā)生器在測(cè)試時(shí)提供PWM波,通過改變頻率和占空比,來調(diào)控電機(jī)的轉(zhuǎn)速。直尺用來測(cè)量擺桿的長(zhǎng)度,即擺動(dòng)的距離,秒表用于驗(yàn)證擺動(dòng)的時(shí)間。
4.2誤差分析
本系統(tǒng)通過程序控制擺動(dòng)角度,再通過反饋控制PWM波進(jìn)而控制風(fēng)機(jī)的轉(zhuǎn)速,實(shí)現(xiàn)在限定時(shí)間里擺動(dòng)一定長(zhǎng)度。角度的偏差,是由于空氣阻力和角度測(cè)量誤差的影響.題目限定的線性誤差不大于±2.5cm,通過計(jì)算可知角度的偏差在1°左右。
本系統(tǒng)的主要功能實(shí)現(xiàn)了使用直流風(fēng)機(jī)產(chǎn)生動(dòng)力的前提下,使風(fēng)擺快速起擺、恢復(fù)靜止以及實(shí)現(xiàn)擺的距離和幅度可控等功能。由于手動(dòng)制作外部結(jié)構(gòu),風(fēng)擺外形不夠規(guī)則、外力因素,程序等成為誤差的主要來源。所以風(fēng)力擺擺動(dòng)角度控制不好,具體的控制算法有待優(yōu)化。
[1]張有志.全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽培訓(xùn)教程[M].北京:清華大學(xué)出版社,2013.
[2]陳永真,陳之勃.全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽硬件電路設(shè)計(jì)精解[M].北京:電子工業(yè)出版社,2011.
[3]楊莘,劉海濤.基于STM32的兩輪自平衡遙控小車[J].數(shù)字技術(shù)與應(yīng)用,2014.
[4]常國(guó)權(quán),戴國(guó)強(qiáng).基于STM32的四軸飛行器飛控系統(tǒng)設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2015.
[5]謝維成,楊加國(guó).單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2006.
[6]沈德金,陳粵初.MCS-51系列單片機(jī)接口電路與應(yīng)用程序?qū)嵗跰].北京:北京航空航天大學(xué)出版社,1990.
[7]李建忠.單片機(jī)原理及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2002.
[8]童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006.