小型六自由度的工業(yè)機械手的控制設(shè)計_第1頁
小型六自由度的工業(yè)機械手的控制設(shè)計_第2頁
小型六自由度的工業(yè)機械手的控制設(shè)計_第3頁
小型六自由度的工業(yè)機械手的控制設(shè)計_第4頁
小型六自由度的工業(yè)機械手的控制設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、小型六自由度的工業(yè)機械手的控制設(shè)計1、系統(tǒng)設(shè)計目的及意義工業(yè)機器人,又稱機械臂,在現(xiàn)代化工業(yè)生產(chǎn)中正發(fā)揮著越來越重要的作用,它被廣泛應(yīng)用到流水生產(chǎn)線上,代替人類從事焊接、噴涂、搬運等許多較繁重的勞動,這不僅大大提高了生產(chǎn)效率,同時也極大地提高了產(chǎn)品的加工精度和產(chǎn)品質(zhì)量。隨著時代的進步,機器臂技術(shù)的應(yīng)用越來越普及,已逐漸滲透到軍事、航天、醫(yī)療、日常生活及教育娛樂等各個領(lǐng)域,可以說工業(yè)機器人的應(yīng)用對現(xiàn)代工業(yè)的發(fā)展起到了巨大的推動作用。論文圍繞哈爾濱工程大學(xué)自動化學(xué)院學(xué)生創(chuàng)新實驗室購買的教學(xué)用小型六自由度機械臂,完成對其關(guān)節(jié)控制系統(tǒng)的設(shè)計開發(fā),開發(fā)內(nèi)容包括硬件系統(tǒng)和軟件系統(tǒng)。從而使其能夠達到一定的控

2、制精度,為后續(xù)的控制算法的研究提供一個完整的平臺。2、主要研究內(nèi)容論文的主要內(nèi)容包括:對機械臂結(jié)構(gòu)的改進、安裝合適的控制系統(tǒng)、數(shù)學(xué)建模、運動學(xué)分析,軌跡規(guī)劃研究、控制算法研究和三維仿真研究等部分。圖2.1 機械臂系統(tǒng)研究內(nèi)容圖2.1、機械臂結(jié)構(gòu)改造創(chuàng)新實驗室購買的教學(xué)用六自由度機械臂存在以下兩個明顯不足,需要對其進行較大的改動:(1)原機械臂包括爪子在內(nèi)共六個自由度,實際上爪子是機械臂的末端執(zhí)行器,它不影響位置和姿態(tài),不能作為一個獨立自由度;(2)原機械臂的關(guān)節(jié)執(zhí)行器使用的是6個舵機,各關(guān)節(jié)處沒有任何反饋裝置,只能做簡單開環(huán)控制,生產(chǎn)廠家的技術(shù)人員證實了這一點。為了完成本次論文的立題要求,需要

3、至少在一個關(guān)節(jié)上做成閉環(huán)控制。針對以上兩點不足,在不破壞機械臂的前提下,作者對機械臂的結(jié)構(gòu)和控制部分做了以下相應(yīng)改動:(1)去掉爪部關(guān)節(jié),另外增加兩個關(guān)節(jié),使機械臂達到六個自由度,同時利于建立其數(shù)學(xué)模型;(2)將底座舵機換成直流減速電機,增加一定的機械結(jié)構(gòu)來安裝角度反饋裝置,從而使機械臂能夠完成一定的閉環(huán)控制,滿足論文的立題要求。圖2.2 改裝后的六自由度機械臂實物圖2.2、數(shù)學(xué)建模六自由度鏈?zhǔn)?6R)機器臂是具有六個關(guān)節(jié)的空間機構(gòu),為描述末端執(zhí)行器在空間的位置和姿態(tài),可以在每個關(guān)節(jié)上建立一個坐標(biāo)系,利用坐標(biāo)系之間的關(guān)系來描述末端執(zhí)行器的位置。一般采用Denavit-HartenBerg法(D

4、-H法)建立坐標(biāo)系并推導(dǎo)機械臂的運動方程。D-H法是1995年由Denavit和HartenBerg提出的一種建立相對位姿的矩陣方法。利用齊次變換描述各個連桿相對于固定參考坐標(biāo)系的空間幾何關(guān)系,用一個4×4的齊次變換矩陣描述相鄰兩連桿的空間關(guān)系,從而推導(dǎo)出末端執(zhí)行器坐標(biāo)系相對于基坐標(biāo)系的等價齊次坐標(biāo)變換矩陣,建立機械臂的運動方程。依據(jù)D-H法,相鄰兩坐標(biāo)系之間的關(guān)系表示為: 參數(shù)定義如下(參考圖3坐標(biāo)系):表示沿軸方向軸與軸之間的距離;表示繞軸線由軸到軸所旋轉(zhuǎn)的角度;表示沿軸方向軸到軸的距離;表示繞軸由軸到軸所旋轉(zhuǎn)的角度。圖2.3 六自由度機械臂坐標(biāo)系圖2.3、運動分析2.3.1正運

5、動學(xué)分析正運動學(xué)的求解過程是根據(jù)已知關(guān)節(jié)變量,求末端抓持器相對于參考坐標(biāo)系的位姿的過程。要對機械臂進行分析,首先要對機械臂建立坐標(biāo)系,其坐標(biāo)系如圖3所示,各個關(guān)節(jié)變量分別是:=0,=0,=0,=0,=90,=0。將參考坐標(biāo)系設(shè)在6R機械臂的基座上,于是可以從基座開始變換到第一關(guān)節(jié),然后到第二關(guān)節(jié),最后到末端抓持器。若把每個變換定義為,那么6R機械臂的基座和手之間的總變換為:A0為基座坐標(biāo)系到坐標(biāo)系0(關(guān)節(jié)一)之間的變換矩陣;A1為坐標(biāo)系0到坐標(biāo)系1之間的變換矩陣;A2為坐標(biāo)系1到坐標(biāo)系2之間的變換矩陣;A3為坐標(biāo)系2到坐標(biāo)系3之間的變換矩陣;A4為坐標(biāo)系3到坐標(biāo)系4之間的變換矩陣;A5為坐標(biāo)系

6、4到坐標(biāo)系5之間的變換矩陣;AH為坐標(biāo)系5到坐標(biāo)系H之間的變換矩陣。 根據(jù)六個關(guān)節(jié)角度以及機械臂的參數(shù),通過以上7個矩陣相乘即可得出期望矩陣: 列向量,表示姿態(tài),表示空間位置。2.3.2正運動學(xué)仿真MATLAB在7.1版本中增加了Robotics Toolbox工具箱,利用該工具箱可以對鏈?zhǔn)浇Y(jié)構(gòu)的機械臂進行運動學(xué)仿真。正運動學(xué)仿真過程如下:l1=link(pi/2 0 0 L1,'standard');l2=link(0 L2 0 0,'standard');l3=link(0 L3 0 0,'standard');l4=link(-pi/2 L

7、4 0 0,'standard');l5=link(pi/2 0 0 0,'standard');l6=link(0 0 0 L5,'standard');r=robot(l1 l2 l3 l4 l5 l6);='6R_Rrobotarm'q=0.430437 0.102693 -1.28542 1.7628 1.33703 -1.24998;drivebot(r,q);l1,l2,l3,l4,l5,l6表示各連桿,L1,L2,L3,L4,L5表示連桿長度,具體值由實際機械臂參數(shù)決定,standard表示采用標(biāo)準(zhǔn)的D-

8、H建模方法,robot函數(shù)將各連桿連接起來,q向量表示各關(guān)節(jié)的初始角度,均為弧度值,drivebot是繪制機械臂函數(shù)?,F(xiàn)設(shè)定:L1=2,L2=4,L3=4,L4=2,L5=2;=2.5632,=1.2145,=1.0256,=1.2105,=1.5809,=1.1078。仿真結(jié)果如圖:圖2.4 基于MATLAB Robot Toolbox工具箱的機械臂正運動學(xué)仿真正運動學(xué)的仿真數(shù)據(jù)在實際機械臂上運行結(jié)果如下:圖2.5 機械臂正運動學(xué)實物圖2.3.3逆運動學(xué)分析逆運動學(xué)的求解過程是根據(jù)已知的末端抓持器相對于參考坐標(biāo)系的位姿,求關(guān)節(jié)變量,的過程,它是機器人運動規(guī)劃和軌跡控制的基礎(chǔ),也是運動學(xué)最重要

9、的部分。然而運動學(xué)逆解的求解要比正解求解復(fù)雜得多,要建立通用算法是相當(dāng)困難的,許多人為此付出巨大的努力,做了大量的工作。有關(guān)機器人運動學(xué)逆解的求解方法很多,其中主要有解析法、幾何法、符號及數(shù)值方法、幾何解析法。由于逆運動學(xué)求解非常復(fù)雜,這里不再給出,只是引用已有結(jié)論,在后面的三維仿真和運動規(guī)劃時使用。給出機械臂期望位姿為: 可以計算出各關(guān)節(jié)角的解析式為: 或 或 六自由度機械臂在相同的位姿下可能有8組解,根據(jù)實際情況選擇其中最合適的一組解即可。2.3.4逆運動學(xué)仿真同樣利用MATLAB中的Robotics Toolbox工具箱,先建立六自由度機械臂模型,再使用逆解函數(shù)ikine求出期望位姿下的

10、6個關(guān)節(jié)角度值。具體過程如下:L1=link(pi/2 0 0 2,'standard');L2=link(0 4 0 0,'standard');L3=link(0 4 0 0,'standard');L4=link(-pi/2 2 0 0,'standard');L5=link(pi/2 0 0 0,'standard');L6=link(0 0 0 2,'standard');r=robot(L1 L2 L3 L4 L5 L6);='6R_Robotarm'q=-1

11、.3402 1.0145 0.8256 1.0986 1.5809 2.1078;drivebot(r,q);T=fkine(r,q);q1=ikine(r,T);fkine是求機械臂的正解函數(shù),q向量為機械臂的六個關(guān)節(jié)角變量,ikine是求逆解函數(shù),T為正運動學(xué)算出來的位姿,如果仿真結(jié)果正確,計算的q1應(yīng)該與q相同。程序運行后:q1 =4.9430 -4.4431 18.0240 1.9242 -10.9855 8.3910將q1轉(zhuǎn)換到-pi,pi可以發(fā)現(xiàn)q與q1完全相同。圖2.6 基于MATLAB Robot Toolbox工具箱的機械臂逆運動學(xué)仿真逆運動學(xué)仿真數(shù)據(jù)在實際機械臂上的運行結(jié)果

12、如下:圖2.7 機械臂逆運動學(xué)實物圖2.4、軌跡規(guī)劃研究軌跡是機械臂位姿關(guān)于時間的函數(shù),軌跡規(guī)劃是給出一條無沖突路徑,求出沿這條路徑機械臂的位置和姿勢的時間經(jīng)歷。軌跡規(guī)劃既可以在關(guān)節(jié)空間也可以在笛卡兒空間中進行。在關(guān)節(jié)空間中進行軌跡規(guī)劃優(yōu)點是直接用運動時的受控關(guān)節(jié)變量來規(guī)劃軌跡,這樣容易做到實時控制,缺點是難以確定各桿和末端抓持器的位置。而這正是面向笛卡兒坐標(biāo)空間軌跡規(guī)劃的優(yōu)點,但是現(xiàn)在還沒有可用于笛卡兒坐標(biāo)測量末端抓持器位置的傳感器,所以算法都是建立在關(guān)節(jié)坐標(biāo)基礎(chǔ)上的。論文將分別討論關(guān)節(jié)空間中的三次多項式插值算法和笛卡爾空間中的空間直線插補算法。2.4.1關(guān)節(jié)空間三次多項式插值軌跡規(guī)劃三次多

13、項式共有四個待定系數(shù),需要四個約束條件來唯一確定。如果把三次多項式看做關(guān)節(jié)角度的時間函數(shù),那么三次多項式的一階倒數(shù)可以看作關(guān)節(jié)角速度的時間函數(shù)。為求出,四個系數(shù),同時對起始點和目標(biāo)點的角度和角速度給出約束條件,列出四個方程式:將起始時間設(shè)為0,即=0,解得系數(shù)為: 對于起始點和目標(biāo)點來說,它們的速度為零,即=0,=0,帶入解得:將以上四個系數(shù)帶回原三次多項式即可求出關(guān)節(jié)角的時間函數(shù)。但是,三次多項式的約束條件只考慮了角度和角速度,沒有考慮角加速度,因此三次插補算法不能保證角加速度的連續(xù)性和平滑性。為了獲得更好的控制特性,需要保證角加速度的平滑性,因此可以采用五次多項式插值算法。2.4.2笛卡爾

14、空間直線插補軌跡規(guī)劃空間直線插補是給定直線始末兩點的位姿,求軌跡中間點(插補點)的位姿。直線插補時,機械臂的姿態(tài)變化按照給定的步長從初始姿態(tài)均勻向末端點姿態(tài)變化。己知直線始末兩點的坐標(biāo)值為, 可以通過以下步驟進行直線軌跡的定步長插補:(1)首先給定插補周期;(2)求兩點空間之間的距離L:(3)求出插補總時間;(4)計算插補次數(shù)N: 或 (5)計算插補增量:(6)計算第i個插補點的坐標(biāo)值:(7)求出齊次變換矩陣,用齊次變換矩陣乘已新坐標(biāo)下的點坐標(biāo),就可以得到空間點相對于基坐標(biāo)系下的坐標(biāo)值。再經(jīng)過運動學(xué)反解,就可以得到各個點的關(guān)節(jié)角。2.5、軌跡規(guī)劃三維仿真為了驗證以上規(guī)劃算法的正確性,利用基于V

15、c+MFC和OpenGL的三維仿真工具,對三次插補算法和空間直線插補算法進行了三維仿真,仿真過程如下: void display() / 建立機械臂三維模型 glClear (GL_COLOR_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glPushMatrix(); /保存原點坐標(biāo) base();arm_1();arm_2();arm_3(); arm_4();arm_5(); zhua(); glPopMatrix(); / 還原原點坐標(biāo) glutSwapBuffers();圖2.8 六自由度機械臂三維仿真圖圖2.9 三維仿真控制界面軌跡規(guī)劃代碼太多,

16、這里不再給出,可以參見附件,里面有詳細的代碼。仿真結(jié)果表明,關(guān)節(jié)空間軌跡規(guī)劃只能使機械臂末端執(zhí)行器在兩點間平滑過渡但不能保證運行路線,而直線插補可以使機械臂末端執(zhí)行器按照直線路徑在兩點間過渡。2.6、控制系統(tǒng)硬件設(shè)計控制系統(tǒng)的主要任務(wù)是接收上位機根據(jù)機械臂期望的終端位置坐標(biāo),通過軌跡規(guī)劃和運動學(xué)逆解得出的各關(guān)節(jié)角度,以接收的角度作為期望角度,通過系統(tǒng)控制器的控制,使各關(guān)節(jié)達到預(yù)期的位置,從而完成機械臂終端位置的改變。硬件系統(tǒng)主要包括STC89C52RC主控電路、電機驅(qū)動電路、角度檢測電路、通信電路等四部。圖2.10 機械臂控制系統(tǒng)硬件原理框圖2.6.1主控制器電路單片機是數(shù)字集成器件,正常工作

17、時離不開時鐘,因此外圍電路必須提供適當(dāng)?shù)臅r鐘電路;另外還要有復(fù)位電路,以便單片機工作中可以正常復(fù)位。這些就構(gòu)成了單片機正常工作的最基本條件單片機最小系統(tǒng)。為了通信方便,該最小系統(tǒng)采用11.0592MHz的時鐘晶振,時鐘電路電容33pf;復(fù)位電路電解電容10uf,電阻值1k。原理圖如下:圖2.11 控制器最小系統(tǒng)原理圖2.6.2電機驅(qū)動電路機械臂底座關(guān)節(jié)使用的是直流減速電機,要想對直流電機進行控制,需要有專門的直流電機驅(qū)動器,以實現(xiàn)PWM控制。STC89C52RC單片機自身沒有集成的PWM模塊,因此需要外接電機驅(qū)動芯片。綜合分析市場上常用的直流電機驅(qū)動芯片的性能和價格后,選擇L298n作為機械臂

18、底座電機的驅(qū)動器。L298n管腳圖如圖2.12,功能表見表2.1。圖2.12 L298n 管腳圖 表2.1 L298n功能表En In1 In2 運轉(zhuǎn)狀態(tài) 0 停止 1 1 0 正傳1 0 1 反轉(zhuǎn)1 1 1 剎停1 0 0 停止電機的控制信號由單片機產(chǎn)生,而電機的驅(qū)動電路直接引入16v的電壓,如果電路出現(xiàn)問題,電流會直接進入單片機,對單片機和其他外圍控制電路造成損害,所以所有的控制信號以及反饋信號必須由光電隔離器件進行隔離,使控制電路和驅(qū)動電路隔離開來,從而形成對控制電路的保護。單片機光耦 VCC VSSPWM GNDEN OUT1 OUT2電源電機 圖2.13 驅(qū)動電路與單片機的接口框圖實

19、際接口電路中可能存在外部干擾,可行的解決辦法是增加濾波電路,即在PWM信號端增加對地濾波電容,電容大小視具體情況而定。如果干擾很小則可略掉濾波電路。下圖為接口電路的原理圖,PWM信號可由5腳7腳產(chǎn)生,也可由使能端6腳產(chǎn)生,具體由軟件程序決定。圖2.14 驅(qū)動模塊與單片機的接口電路原理圖2.6.3角度檢測電路位置檢測元件是控制系統(tǒng)的一個重要組件,由控制理論知,系統(tǒng)反饋通道的誤差將直接影響系統(tǒng)控制精度??紤]到機械臂系統(tǒng)的實際情況,決定采用高精度旋轉(zhuǎn)電位計作為角度傳感器,電位計測量電機轉(zhuǎn)角,輸出05v的模擬電壓,而單片機處理的是數(shù)字信號,因此需增加A/D轉(zhuǎn)換模塊,將采樣模擬信號轉(zhuǎn)換為單片機可以處理的

20、數(shù)字信號。旋轉(zhuǎn)電位計采用WDD35D-4,AD采樣模塊采用ADC0809模數(shù)轉(zhuǎn)換芯片。圖2.15 電位計原理圖圖2.16 ADC0809管腳圖ADC0809內(nèi)部沒有時鐘電路,其逐次比較使用的時鐘須由外部電路經(jīng)CLK管腳提供,時鐘頻率400kHz640kHz之間,典型值為500kHz。單片機使用的晶振為11.0592MHZ,單片機內(nèi)部將該頻率六分頻后由ALE腳輸出,大小為1.8432MHZ。該頻率可作為源時鐘頻率,經(jīng)三次分頻電路分頻后即可得到合適的時鐘頻率。74LS161十六進制計數(shù)器和74LS00與非門電路組合成三進制計數(shù)器可作為三次分頻電路使用,電路原理圖如圖:圖2.17 ADC809時鐘電

21、路原理圖單片機P2.7腳接ADC0809的ST腳,用于啟動模數(shù)轉(zhuǎn)換;P2.6腳接ADC0809的EOC腳,用于查詢轉(zhuǎn)換是否結(jié)束;P2.5腳接ADC0809的OE腳,用于控制是否允許數(shù)據(jù)輸;P3.5,P3.6,P3.7腳選擇模擬通道(程序中選擇的是0通道),轉(zhuǎn)換結(jié)束后數(shù)據(jù)送到單片機P0口。接口電路原理圖如圖2.18圖2.18 ADC0809與單片機接口圖2.6.4通信電路通信電路的主要任務(wù)是接收上位機(PC)的控制信號并將采集到的角度信號送到上位機處理。單片機和PC機之間的通信常采用串行異步通信,采用這種通信方式的主要優(yōu)點是設(shè)備簡單,控制容易;缺點是傳輸速率較慢,但是對于一般的傳輸速度(例如96

22、00bit/s)這種通信方式完全可以滿足。異步工作模式USART是進行產(chǎn)品開發(fā)和系統(tǒng)設(shè)計中最常用的模式,這種模式就是常說的RS232C。RS232C電平是負(fù)邏輯電平(邏輯0:5V15V,邏輯1:15V5V),PC的串口就是RS232C電平的。而單片機的串口是TTL電平的,TTL為正邏輯電平(帶負(fù)載時,邏輯1:+5V+12V,邏輯0:-5V-12V。不帶負(fù)載時,邏輯1:2.4V,邏輯0:0.4V),所以單片機和PC機進行通信時,兩者之間必須有一個電平轉(zhuǎn)換電路。常用的RS232C電平和TTL電平轉(zhuǎn)換芯片是MAX232,封裝結(jié)構(gòu)如圖2.19:圖2.19 MAX232封裝圖我們在這里采用了三線制連接串

23、口:PC機的9針串口只連接其中的3根線:第5腳的GND、第2腳的RXD、第3腳的TXD。連接方法:MAX232的第10腳和單片機的P3.1連接,第9腳和單片機的P3.0連接,第15腳和單片機的GND連接。如圖:圖2.20 MAX232接線圖2.7、控制系統(tǒng)軟件設(shè)計2.7.1電機驅(qū)動程序電機驅(qū)動程序是指PWM信號的生成和調(diào)制程序。驅(qū)動器L298n需要三個輸入,即正反轉(zhuǎn)控制和使能端控制,分別接單片機的P2.0、P2.3、P2.2管腳。PWM信號由使能端P2.2腳通過延時產(chǎn)生,改變使能端高低電平的延時時間即可對PWM信號進行調(diào)制。主要代碼如下:sbit PWM=P22; / PWM輸出腳sbit P

24、2_0=P20; / M1sbit P2_3=P23; / M1while(!k) PWM=1; delay_nus (speed+1000); PWM=0; delay_nus(9500-speed); 2.7.2角度檢測程序角度檢測程序主要指ADC0809的驅(qū)動程序,ADC0809的ST管腳接收到控制脈沖的上升沿時清空內(nèi)部寄存器,并在脈沖下降沿啟動AD轉(zhuǎn)換;轉(zhuǎn)換結(jié)束后,ADC0809在EOC輸出高電平表明轉(zhuǎn)換結(jié)束;單片機可以通過外部中斷或查詢方式訪問EOC腳,獲得轉(zhuǎn)換結(jié)束信號后給ADC0809的OE腳一個高電平即可輸出轉(zhuǎn)換數(shù)據(jù)。主要代碼如下:OE=0;ST=0; /啟動AD轉(zhuǎn)換 ST=1;

25、 ST=0;delay_nus(60);while(!EOC); /等待轉(zhuǎn)換結(jié)束OE=1; /輸出使能P1=P0; /數(shù)據(jù)輸出2.7.3串口通信程序單片機串口通信程序使用定時器中斷實現(xiàn),該通信程序采用9600bit/s波特率,8位數(shù)據(jù)位,1位停止位,沒有校驗位。主要代碼如下:void com_initialize(void) /初始化串行口和UART波特率 TMOD |=0x20; /定時器工作在方式2 TH1=0xfd; TR1=1; SCON=0xd8; ES=1; static void com_isr(void) interrupt 4 using 1 /串口中斷 char c; if

26、(RI) /接收數(shù)據(jù)中斷 if(TI) /發(fā)送數(shù)據(jù)中斷 2.7.4上位機控制界面程序上位機控制界面的主要功能是:發(fā)送控制方式和期望角度給下位機,同時實時接收下位機采樣得到的角度值,并在“繪制實時曲線區(qū)域”繪制實際曲線,用以觀察控制效果和對比控制算法。由于代碼太多,這里不再給出。下面只給出編制完成后的控制界面:圖2.21 上位機控制界面2.7.5 系統(tǒng)軟件流程圖圖2.22 系統(tǒng)流程圖3、系統(tǒng)調(diào)試和結(jié)果分析3.1 硬件調(diào)試3.1.1 驅(qū)動模塊調(diào)試編寫一個簡單的驅(qū)動程序,通過單片機的P2.0腳和P2.3腳的高低電平控制電機正反轉(zhuǎn),在P2.2腳利用延時函數(shù)產(chǎn)生PWM波,PWM占空比通過外部按鍵可調(diào)。用

27、示波器觀察L298n的OUT1和OUT2之間是否產(chǎn)生相應(yīng)的PWM波形,如果波形的占空比與預(yù)期一致且可調(diào),說明驅(qū)動模塊正確。下面是示波器觀察到的波形: 圖3.1 占空比50% 圖3.2 占空比80% 首先,外部直流電源調(diào)節(jié)為16v,通過按鍵設(shè)置PWM占空比為50%。用示波器觀察L298n的OUT1和OUT2腳,其波形輸出如圖5.1所示,占空比與設(shè)定值一致,同時用萬用表電壓檔測量OUT1和OUT2腳間的電壓,輸出值為7.8v,與理論輸出基本一致。然后,通過外部按鍵改變占空比為80%,用示波器觀察上述管腳,波形如圖5.2所示,用萬用表測量兩腳間電壓為12.8v,與理論輸出一致。測量結(jié)果表明,驅(qū)動電路

28、設(shè)計良好,工作正常。3.1.2 角度檢測模塊調(diào)試編寫ADC0809的驅(qū)動程序,令A(yù)DC0809每20ms對0通道進行一次采樣,用示波器觀察ADC0809的ST腳,EOC腳及OE腳,看是否有信號脈沖產(chǎn)生, 同時觀察脈沖時序是否正確。下面是示波器觀察到的波形: 圖3.3 ST腳 圖3.4 EOC腳 圖3.5 OE腳單片機通過P2.7腳向ADC0809的ST腳發(fā)送一個脈沖,在脈沖的上升沿ADC0809清空寄存器,在脈沖的下降沿啟動AD采樣。大約100us后采樣結(jié)束,ADC0809的EOC腳發(fā)出一個高電平信號,通知單片機采樣結(jié)束。接到采樣結(jié)束信號后,單片機向ADC0809的OE腳發(fā)送高電平信號,表示允

29、許采樣輸出,采樣數(shù)據(jù)送到P0口。示波器顯示波形與整個采樣過程的時序相同,證明采樣模塊設(shè)計正確。為了檢測采樣數(shù)據(jù)的準(zhǔn)確性,分別測量ADC0809各數(shù)據(jù)輸出管腳的高低電平,并將電平值轉(zhuǎn)換為十六進制數(shù)據(jù)。同時用萬用表測量電位計輸出的模擬電壓值,將該值轉(zhuǎn)換為十六進制數(shù)據(jù),兩個數(shù)據(jù)進行對比。測試時,電位計模擬電壓輸出為2.7v,對應(yīng)十六進制的89H,ADC0809的管腳輸出電平同樣為89H。實驗結(jié)果表明,該采樣模塊設(shè)計合理,工作正常,采樣數(shù)據(jù)準(zhǔn)確。3.1.3 通信模塊調(diào)試RS232串口通信的調(diào)試可以通過串口調(diào)試助手完成,為了同時檢驗接收與發(fā)送功能都正確,編寫單片機程序,令單片機接收到上位機發(fā)送的數(shù)據(jù)后,

30、將該數(shù)據(jù)原樣發(fā)回上位機,通過串口調(diào)試助手觀察數(shù)據(jù)知否正確。圖3.6 串口助手顯示結(jié)果實驗時,下位機采用的是11.0592MHZ的時鐘晶振,通信波特率設(shè)置為9600bit/s,數(shù)據(jù)幀格式為1位起始位,8位數(shù)據(jù)位,1未停止位,沒有校驗位。串口助手的通信波特率和幀格式與單片機相同。令串口調(diào)試助手以十六進制的形式向下位機發(fā)送“12 34 56 78”,單片機接到數(shù)據(jù)后立即將數(shù)據(jù)原樣發(fā)回上位機,串口助手接收數(shù)據(jù)并顯示,顯示結(jié)果為“12 34 56 78”。實驗結(jié)果表明通信模塊設(shè)計合理,能夠在設(shè)定的波特率和幀格式下正常收發(fā)數(shù)據(jù)。3.2 軟件調(diào)試3.2.1 下位機軟件調(diào)試將下位機程序下載到單片機中,驅(qū)動一個

31、空載(未安裝在機械臂上)的直流減速電機,這樣做是為了設(shè)備安全考慮。在試驗?zāi):刂扑惴ê湍:齈ID控制算法的程序時,發(fā)現(xiàn)電機出現(xiàn)嚴(yán)重抖動,只能“爬行”旋轉(zhuǎn)。仔細對比分析后發(fā)現(xiàn),基于誤差E和誤差變化率EC的雙輸入模糊控制器對位置閉環(huán)控制不是很合適,特別是位置誤差很大的情況。這主要基于以下原因:雙輸入模糊控制器可以等效為PD控制,在位置閉環(huán)控制時,起始位置誤差E很大(本系統(tǒng)為-255 +255),位置誤差變化率很?。ū鞠到y(tǒng)為-5 +5),這樣E和EC由基本論域轉(zhuǎn)換到模糊論域的過程中無疑放大了EC的作用,即微分作用被加強。我們已經(jīng)知道,微分的作用主要是加快系統(tǒng)響應(yīng)速度,但是微分作用過強會使系統(tǒng)出現(xiàn)震蕩。特別是在控制的起始階段,很容易發(fā)生因為微分作用過強而出現(xiàn)微分飽和的現(xiàn)象。針對這種情況,可以采取以下措施:1、采用雙模模糊控制器,即制作兩個模糊查詢表。粗調(diào)控制查詢表對E的加權(quán)值大,EC的加權(quán)值??;細調(diào)模糊控制表對EC的加權(quán)值大,對E的加權(quán)值小。在大誤差時查詢粗調(diào)控制查詢表,防止微分飽和;在小誤差時查詢細調(diào)控制查詢表,增加系統(tǒng)的動態(tài)性能。2、采用一維模糊控制器,即模糊控制器的輸入只有誤差

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論