《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于K64機(jī)械臂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
基于K64機(jī)械臂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2017年電子技術(shù)應(yīng)用第12期
丁 偉,,王宜懷,賈榮媛
蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,,江蘇 蘇州215000
摘要: 機(jī)械臂被廣泛應(yīng)用,其結(jié)合不同末端工具來完成特定功能,。機(jī)械臂的合理使用能大大解放人力,,代替人們完成一些重復(fù)枯燥或危險(xiǎn)的工作。針對自行設(shè)計(jì)的三自由度機(jī)械臂,,提出一種專用的嵌入式控制系統(tǒng),。該控制系統(tǒng)以K64為核心控制板,,MQX_Lite為操作系統(tǒng),通過與上位機(jī)的通信解析相關(guān)命令,,計(jì)算相應(yīng)關(guān)節(jié)旋轉(zhuǎn)角度,,多任務(wù)并發(fā)執(zhí)行。通過實(shí)驗(yàn)驗(yàn)證,,該系統(tǒng)運(yùn)行平穩(wěn)高效,,具有很強(qiáng)的應(yīng)用價(jià)值。
中圖分類號: TP391
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.172276
中文引用格式: 丁偉,,王宜懷,,賈榮媛. 基于K64機(jī)械臂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,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 引言

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

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

1 運(yùn)動學(xué)基礎(chǔ)

1.1 機(jī)械臂建模

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

    在進(jìn)行機(jī)械臂運(yùn)動學(xué)計(jì)算之前,,首先將機(jī)械臂用數(shù)學(xué)表達(dá)式表示出來,這涉及到機(jī)械臂建模,,通過D-H建模法建立模型參數(shù)[4],,如表1。

qrs2-b1.gif

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

qrs2-t1.gif

    結(jié)合表1,可得運(yùn)動學(xué)方程為:

     qrs2-gs1.gif

1.2 逆運(yùn)動學(xué)

    逆運(yùn)動學(xué)指在已知機(jī)械臂末端的執(zhí)行器位姿,,求解各個(gè)關(guān)節(jié)的角度問題,。

    求解逆運(yùn)動學(xué)方程時(shí),面臨最優(yōu)解和唯一解問題,。在圖1中,,機(jī)械臂末端的目標(biāo)點(diǎn)B(x,y),此時(shí)有兩種情況與之對應(yīng),,選擇最小的旋轉(zhuǎn)角度達(dá)到該目標(biāo)位置,才能解決最優(yōu)解和唯一解問題,。

    求操作臂的反解有兩種方法:封閉解法和數(shù)值解法,。選擇封閉解可以準(zhǔn)確求解出對應(yīng)的角度變化。對于封閉解法,,有兩種途徑:代數(shù)解和幾何解,。考慮到機(jī)械的結(jié)構(gòu)以及運(yùn)動學(xué)方程,,采用幾何法,。

    如圖1所示的平面機(jī)械臂,利用平面幾何關(guān)系求運(yùn)行學(xué)反解,,在世界坐標(biāo)系中,,已知機(jī)械臂末端的坐標(biāo)點(diǎn)B的坐標(biāo)值,利用余弦定理和反三角函數(shù),,求θ1和θ2的角度值,。

qrs2-gs2.gif

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

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

qrs2-t2.gif

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

2.1 系統(tǒng)硬件設(shè)計(jì)

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

2.1.1 電源模塊

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

qrs2-t3.gif

2.1.2 電機(jī)控制模塊

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

qrs2-t4.gif

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

2.2 系統(tǒng)軟件設(shè)計(jì)

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

qrs2-t5.gif

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

2.2.1 多任務(wù)體系

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

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

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

2.2.2 中斷處理

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

3 機(jī)械臂運(yùn)動實(shí)驗(yàn)

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

qrs2-t6.gif

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

4 結(jié)論

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

參考文獻(xiàn)

[1] 王田苗,,陶永.我國工業(yè)機(jī)器人技術(shù)現(xiàn)狀與產(chǎn)業(yè)化發(fā)展戰(zhàn)略[J].機(jī)械工程學(xué)報(bào),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] 李海標(biāo),,甘鎮(zhèn)釗,楊碩.基于ARM9的機(jī)械手控制系統(tǒng)的設(shè)計(jì)[J].測控技術(shù),,2015,,34(8):82-85.

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

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

[6] 王宜懷.嵌入式系統(tǒng)原理與實(shí)踐: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)的機(jī)器人關(guān)節(jié)空間軌跡規(guī)劃[J].傳感器與微系統(tǒng),2011,,30(10):19-21.



作者信息:

丁  偉,,王宜懷,賈榮媛

(蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,,江蘇 蘇州215000)

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。