基于51單片機的多自由度工業(yè)機器人控制系統(tǒng)設(shè)計
江蘇科技大學(xué)電子信息學(xué)院 夏斯維1 陳迅2 2018/7/30 9:58:59
(接上頁)為工業(yè)機器人的核心,控制系統(tǒng)充當(dāng)著如同人的大腦一般的角色,控制系統(tǒng)可以接受外界傳感器發(fā)送過來的信號并對其進行處理,然后根據(jù)預(yù)存信息和當(dāng)時機器人所處的環(huán)境進行判斷和決策,從而使機器人能夠更加可靠、精確、快速有效的完成任務(wù),而就目前控制系統(tǒng)的發(fā)展情況看來,仍然存在通用性不夠高、開放性不夠高和可擴展性不夠強等缺點,所以研究出一套高效實用的工業(yè)機器人控制系統(tǒng)是目前機器人行業(yè)面臨的比較急迫的問題。
本文研究內(nèi)容主要是通過單片機的學(xué)習(xí),設(shè)計基于單片機的多自由度工業(yè)機器人控制系統(tǒng)的整體方案。主要的設(shè)計任務(wù),是將6個180度舵機與相應(yīng)機械外殼組裝成多自由度工業(yè)機器人的機械外形結(jié)構(gòu),選擇增強型51單片機作為控制系統(tǒng)的控制器來控制IO口輸出理想的PWM信號從而控制多自由度工業(yè)機器人各個自由度的舵機動作,最終能夠控制多自由度工業(yè)機器人比較理想的完成指定的動作姿態(tài)。
2控制系統(tǒng)方案設(shè)計
2.1多自由度工業(yè)機器人運動理論基礎(chǔ)
這一部分主要介紹機器人的運動理論知識,機器人運動分析常用兩種方法:一種是正運動學(xué)分析,另一種則是逆運動學(xué)分析,具體關(guān)系如圖2-1所示。正向分析是隨意調(diào)節(jié)各個關(guān)節(jié)的角度從而達到任意姿態(tài);逆向分析則是首先確定所需姿態(tài),而后計算出各個關(guān)節(jié)所需調(diào)整的角度。
圖2-1機器人正逆運動關(guān)系圖
在控制系統(tǒng)設(shè)計中選用的是雙足機器人,在動作的過程中主要是通過類似于人類行走方式一樣,移動重心來保證平衡。雙足機器人和人類似擁有髖關(guān)節(jié)、膝關(guān)節(jié)和踝關(guān)節(jié),每條腿用三個旋轉(zhuǎn)角度范圍為180度的舵機代替作為關(guān)節(jié)。機器人的一個關(guān)節(jié)相當(dāng)于兩個自由度,或是左右自由度、或是上下自由度抑或是前后自由度。
通過前面的正逆運動學(xué)的理論分析可以了解,髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)的俯仰自由度共同協(xié)調(diào)可以完成直線行走功能;髖關(guān)節(jié)和踝關(guān)節(jié)的偏轉(zhuǎn)自由度協(xié)調(diào)動作可以實現(xiàn)平面內(nèi)的重心側(cè)向偏移功能;踝關(guān)節(jié)動作可以實現(xiàn)左右方向的偏轉(zhuǎn)。
2.2系統(tǒng)硬件設(shè)計
此設(shè)計主要是設(shè)計一款以51單片機作為主要控制器的控制系統(tǒng),通過軟件編程改變各控制接口的脈沖寬度,以此來調(diào)節(jié)各關(guān)節(jié)舵機的旋轉(zhuǎn)角度,從而使雙足機器人完成指定的動作姿態(tài)。
控制系統(tǒng)的設(shè)計,主要分為五個模塊,有控制器模塊、舵機控制模塊、顯示模塊、電源模塊以及按鍵模塊?刂破髂K,因為對于舵機的控制講究一定的有效性和快速性,普通的51單片機無法滿足舵機要求的處理速度,經(jīng)過比較選擇STC系列的增強型51單片機。它的處理速度是普通的51單片機的處理速度的8-12倍,能夠很好地滿足舵機對于處理速度的要求;舵機控制模塊,因為舵機的響應(yīng)時間對于雙足的機器人控制非常重要,可以通過將舵機工作電壓提高到6v或者通過改變舵機的安裝位置以加長力臂的方法來實現(xiàn)舵機的快速響應(yīng)[6]。舵機的旋轉(zhuǎn)角度與PWM的脈寬給定值成正比關(guān)系,換言之,對舵機角度控制就是通過改變方波信號的占空比實現(xiàn),選用的是MG996r的舵機;電源模塊,沒有它整個控制系統(tǒng)是無法工作的,而不同的模塊需要的電源電壓是不同的,所以選擇將單片機的供電電源與舵機的供電電源區(qū)分開來。
對系統(tǒng)的硬件的總體設(shè)計,采用的是總分的結(jié)構(gòu)。先是根據(jù)功能要求進行總體設(shè)計,再細化到各個模塊研究和設(shè)計,具體如圖2-2所示。
圖2-2控制系統(tǒng)的硬件模塊組成圖
2.3系統(tǒng)軟件設(shè)計
工業(yè)機器人控制系統(tǒng)軟件功能設(shè)計流程圖如圖2-3所示。
圖2-3 系統(tǒng)程序流程圖
控制系統(tǒng)的軟件部分主要實現(xiàn)的功能如下:通過按鍵進行模式的選擇,分別有三種模式:踏步、踮腳、彎腰,并且每一種模式都通過不同顏色的流水燈進行顯示 。
系統(tǒng)的總體設(shè)計是采用分總的結(jié)構(gòu)進行設(shè)計,先是設(shè)計每一個子模塊并進行子模塊的程序編寫,最后在主程序中直接調(diào)用子函數(shù)就可以了。踏步、踮腳和彎腰等姿態(tài)體現(xiàn)上下、左右等多個自由度正實現(xiàn)了對多自由度工業(yè)機器人的控制要求。
根據(jù)上面章節(jié)的說明,軟件部分需要設(shè)置三個子模塊程序:定時器中斷程序、一個舵機控制程序和工業(yè)機器人姿態(tài)控制程序。
2.3.1定時器模塊設(shè)計
當(dāng)系統(tǒng)中需要對舵機的實現(xiàn)控制時,采用的控制方式是通過改變單片機的一個定時器中斷的初值來改變脈沖寬度,從而(未完,下一頁)
|