《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于K64機械臂控制系統(tǒng)的設計與實現
基于K64機械臂控制系統(tǒng)的設計與實現
2017年電子技術應用第12期
丁 偉,王宜懷,賈榮媛
蘇州大學 計算機科學與技術學院,江蘇 蘇州215000
摘要: 機械臂被廣泛應用,其結合不同末端工具來完成特定功能。機械臂的合理使用能大大解放人力,代替人們完成一些重復枯燥或危險的工作。針對自行設計的三自由度機械臂,提出一種專用的嵌入式控制系統(tǒng)。該控制系統(tǒng)以K64為核心控制板,MQX_Lite為操作系統(tǒng),通過與上位機的通信解析相關命令,計算相應關節(jié)旋轉角度,多任務并發(fā)執(zhí)行。通過實驗驗證,該系統(tǒng)運行平穩(wěn)高效,具有很強的應用價值。
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.172276
中文引用格式: 丁偉,王宜懷,賈榮媛. 基于K64機械臂控制系統(tǒng)的設計與實現[J].電子技術應用,2017,43(12):36-39.
英文引用格式: Ding Wei,Wang Yihuai,Jia Rongyuan. Design and implementation of the robotic arm control system based on K64[J].Application of Electronic Technique,2017,43(12):36-39.
Design and implementation of the robotic arm control system based on K64
Ding Wei,Wang Yihuai,Jia Rongyuan
School of Computer and Technology,Soochow University,Suzhou 215000,China
Abstract: Robotic arm is widely used,which combines with different tools to accomplish specific functions. The rational use of robotic arms can greatly liberate manpower, replacing people to complete some repetitive and boring or dangerous work. A special embedded control system is proposed for the self-designed three-degree-of-freedom robotic arm. The control system uses K64 as the core control board, MQX_Lite for the operating system, through communication with the computer, parsing the relevant command and calculating the corresponding joint rotation angle with multi-task concurrent execution. At the same time, through the experiment, the system runs smoothly and efficiently,which has high application value.
Key words : robotic arm;MQX_Lite;motion control;embedded system

0 引言

    機器人技術是一種融合了機械、計算機技術、電子、人工智能等眾多學科于一體的先進技術[1],各國競相在機器人的研發(fā)及生產上投入大量人力物力。我國的機器人控制技術仍然和歐美一些國家存在較大差距,機械臂也屬于機器人范疇的一部分。

    為了解放人類生產力,用機器取代人類做一些重復且危險的工作已成為必然。在調研了目前市面上機械臂的發(fā)展情況下,結合實際設計了一套基于K64的三自由度機械臂控制系統(tǒng)。該機械臂在平面上具有良好的順從性,在豎直方面具有良好的剛性[2],配合機械臂末端攜帶的工具能夠滿足不同操作要求。經過研究比對,采用恩智浦的K64芯片作為核心控制芯片、以MQX_Lite為操作系統(tǒng)的控制系統(tǒng)能夠充分利用嵌入式軟硬件結合的優(yōu)點,使控制系統(tǒng)的性能更加優(yōu)越,成本更低,功能更健全,改善了傳統(tǒng)機械臂存在的控制功能單一、生產成本高等一些問題[3]

1 運動學基礎

1.1 機械臂建模

    任何涉及機械手臂的設計均要以運動學為基礎。在傳統(tǒng)的三維幾何學中,使用3×1維向量的加法來進行平移計算,使用3×3矩陣的乘法進行轉動計算。一般用Trans(X1,Y1,Z1)代表平移,表示在XYZ軸上分別平移X1、Y1、Z1;用Rot(Z,θ)代表繞Z軸旋轉θ角,可以根據需要修改對應參數。

    在進行機械臂運動學計算之前,首先將機械臂用數學表達式表示出來,這涉及到機械臂建模,通過D-H建模法建立模型參數[4],如表1。

qrs2-b1.gif

    由于Z軸是由單獨電機控制,不需要其他關節(jié)的配合,所以豎直方向單獨考慮。平面位置的移動則依靠兩個電機的配合,機械臂的俯視圖如圖1所示。

qrs2-t1.gif

    結合表1,可得運動學方程為:

     qrs2-gs1.gif

1.2 逆運動學

    逆運動學指在已知機械臂末端的執(zhí)行器位姿,求解各個關節(jié)的角度問題。

    求解逆運動學方程時,面臨最優(yōu)解和唯一解問題。在圖1中,機械臂末端的目標點B(x,y),此時有兩種情況與之對應,選擇最小的旋轉角度達到該目標位置,才能解決最優(yōu)解和唯一解問題。

    求操作臂的反解有兩種方法:封閉解法和數值解法。選擇封閉解可以準確求解出對應的角度變化。對于封閉解法,有兩種途徑:代數解和幾何解??紤]到機械的結構以及運動學方程,采用幾何法。

    如圖1所示的平面機械臂,利用平面幾何關系求運行學反解,在世界坐標系中,已知機械臂末端的坐標點B的坐標值,利用余弦定理和反三角函數,求θ1和θ2的角度值。

qrs2-gs2.gif

2 控制系統(tǒng)總體設計及工作原理

    該系統(tǒng)主要由上位機控制軟件、K64核心控制電路和機械關節(jié)等部分組成。其中,串口作為上位機和K64之間的主要通信方式,在上位機采用一般的串口調試工具;微控制器部分以恩智浦公司K64為核心,由通信模塊、電機驅動模塊、傳感器模塊、電源模塊、指示燈模塊組成。系統(tǒng)整體結構框圖如圖2所示。

qrs2-t2.gif

    系統(tǒng)將整體工作流程分模塊進行,首先由操作人員在上位機軟件輸入指令,通過串口通信模塊將TTL信號轉化成單片機識別的RS232信號,緊接著由單片機對接收到的信號進行處理,同時融入實時操作系統(tǒng)MQX_Lite,分別執(zhí)行相對應的任務,例如電機控制、指示燈變化等。同時,單片機也通過中斷方式實時檢測著傳感器,將信息反饋給用戶,做到實時監(jiān)控。

2.1 系統(tǒng)硬件設計

    機械臂的主要應用目標是工業(yè)控制,而可靠性和抗干擾能力是衡量工業(yè)控制中電氣設備性能的關鍵指標,因此在設計內部電路時,采用了抗干擾技術,其中包括光耦隔離電路。系統(tǒng)采用的硬件是具有極高性能的元件,其中包括高速光耦6N138、三極管S8050等[5]。下面著重介紹電源模塊和電機控制模塊。

2.1.1 電源模塊

    由于硬件系統(tǒng)中涉及到不同的外設,各個外設工作電壓又各不相同,電源模塊需要滿足統(tǒng)一供電,需要設計電源轉化模塊,滿足要求。本系統(tǒng)中采用常見的24 V直流電源供電,通過LM2596-ADJ電壓調節(jié)器的調節(jié),輸出電壓依據公式V_out=V_ref(1+R1/R2)得出,通過改變R1、R2的值調整需要的輸出電壓。經過分析,系統(tǒng)需要電壓3.3 V、5 V、12 V、24 V、36 V幾種電壓值供不同部分使用。電源模塊的電路圖如圖3所示。

qrs2-t3.gif

2.1.2 電機控制模塊

    機械臂的平穩(wěn)正常工作,離不開電機的驅動。作為常見的工業(yè)控制方式之一,電機性能的穩(wěn)定對整個系統(tǒng)具有至關重要的作用。為了排除電機工作時的反向電流干擾,設計了兼具方向和PWM脈沖控制的電路,如圖4所示。

qrs2-t4.gif

    圖4左側兩個輸入分別控制著電機的轉速和方向,由于電機運行過程中會對MCU造成反向干擾,因此需要光電隔離器,光耦的型號為6N138,三極管型號為S8050。電路實現電氣隔離,增強了系統(tǒng)的穩(wěn)定性,排除了干擾。

2.2 系統(tǒng)軟件設計

    在機械臂控制系統(tǒng)中,軟件部分主要包括PC程序和主控芯片程序,PC端主要負責與操作人員進行實時交互,采用一般的串口調試工具即可。以K64作為主控芯片,該芯片的主頻達到120 MHz,具有1 MB閃存、256 KB的RAM,這些數據足以說明其強大的處理能力,充分滿足系統(tǒng)的數據處理要求。系統(tǒng)軟件業(yè)務流程圖如圖5所示。

qrs2-t5.gif

    將MQX_Lite實時操作系統(tǒng)植入到芯片內,實現了任務的調度,提高了系統(tǒng)實時性,另外,采用“多任務+中斷”編程設計思想,將復雜的工作按照功能進行任務劃分,主要分為主任務、指示燈任務、串口任務、電機任務等;另外一條主線則是中斷、實時監(jiān)控外部事件、保證系統(tǒng)的穩(wěn)定執(zhí)行。

2.2.1 多任務體系

    在引導程序中,首先加載主任務task_main,在主任務中,完成了小燈模塊、串口模塊、PWM功能、輸入捕捉、電機控制的初始化,并且使能GPIO、輸入捕捉等中斷。

    在主任務完成相關模塊的初始化,并且開了總中斷以后,主任務就進入了阻塞態(tài),操作系統(tǒng)就開始進行任務的調度[6]。小燈任務是一直進行,通過小燈的閃爍情況,可以判斷出整個系統(tǒng)是否在運行,確保程序沒有跑飛。

    機械臂控制系統(tǒng)的核心部分是串口任務和電機任務,當機械臂工作之前,從極限位置[7]運動到工作位置的起始點。通過串口接收數據,將數據解析,提取相關指令和數據分別賦值全局變量,置事件位,電機任務等待到事件位,通過調用cal_degree()函數,計算出各個關節(jié)的角度,賦值全局變量,供其他任務中使用,確定相對應的關節(jié)需要的脈沖數,啟動電機。

2.2.2 中斷處理

    將輸入捕捉引腳與PWM脈沖輸出腳連接,當捕捉到的脈沖數達到了MOTOR1_COUNT值,停止電機,并且置完成事件位,通過串口給上位機發(fā)送完成的指令,等待接收下一條命令。

3 機械臂運動實驗

    為了驗證整個系統(tǒng)是否能夠滿足工作的需要,最后進行實驗。為了保證曲線連續(xù)[8],設定的路線是X軸方向每次減小5 mm,Y軸方向每次增加5 mm,設定的曲線方程為y=-x+400,由于硬件的構造,存在死限位,關節(jié)無法繼續(xù)旋轉。經過測量,在工作平面內X的取值范圍為180~400 mm。與上位機的交互信息如圖6所示。

qrs2-t6.gif

    在機械臂末端安裝一支墨水筆,在圖6中實時地將機械臂的一些信息反饋在串口調試工具中,最后輸入指令為OVER時,系統(tǒng)停止運行。實驗階段,將一張白紙固定在操作面上,當整個實驗停止運行之后,對所畫的曲線進行分析,非常接近于一條直線,能滿足設計要求。

4 結論

    本文研究的機械臂控制系統(tǒng)以K64作為核心芯片,以MQX_Lite為操作系統(tǒng),從原理到軟硬件整體設計上介紹了整個系統(tǒng)的研發(fā)流程。此系統(tǒng)用一塊核心控制芯片,通過與上位機的交互,控制多路電機的協(xié)同運行,完成操作人員指定的功能。經過實驗,該控制系統(tǒng)在整體成本低廉的情況下,依然能夠平穩(wěn)運行并且滿足整體需求。該機械臂控制系統(tǒng)可以作為一個平臺,滿足不同功能的需要,改善了傳統(tǒng)的機械臂單一功能不足的缺點,降低了成本。

參考文獻

[1] 王田苗,陶永.我國工業(yè)機器人技術現狀與產業(yè)化發(fā)展戰(zhàn)略[J].機械工程學報,2014,50(9):1-13.

[2] GUO R J,ZHAO J S.Topological principle of strengthened connecting frames in the stretchable arm of an industry coating robot[J].Mechanism & Machine Theory,2017,114:38-59.

[3] 李海標,甘鎮(zhèn)釗,楊碩.基于ARM9的機械手控制系統(tǒng)的設計[J].測控技術,2015,34(8):82-85.

[4] 郭丙華,胡躍明.三連桿移動機械臂模型與運動規(guī)劃[J].控制理論與應用,2005,22(6):965-968.

[5] 司蕭俊,王宜懷,白聰.基于K60的GCPLC系統(tǒng)的設計與實現[J].電子技術應用,2017,43(2):47-50.

[6] 王宜懷.嵌入式系統(tǒng)原理與實踐:ARM Cortex-M4 Kinetis微控制器[M].北京:電子工業(yè)出版社,2012.

[7] SU K L,LI B Y,GUO J H,et al.Motion control of a robot arm[J].Applied Mechanics & Materials,2013,479-480:768-772.

[8] 王憲,王偉,張方生,等.基于嵌入式系統(tǒng)的機器人關節(jié)空間軌跡規(guī)劃[J].傳感器與微系統(tǒng),2011,30(10):19-21.



作者信息:

丁  偉,王宜懷,賈榮媛

(蘇州大學 計算機科學與技術學院,江蘇 蘇州215000)

此內容為AET網站原創(chuàng),未經授權禁止轉載。