熊曉松++李朝朝
摘要:當(dāng)前機械手臂得到廣泛的應(yīng)用,針對四自由度機械手臂系統(tǒng)進(jìn)行了研究與設(shè)計,分析了機械手臂的機械結(jié)構(gòu)及控制系統(tǒng)。舵機是傳統(tǒng)的角度控制驅(qū)動器,在機器人領(lǐng)域得到了廣泛應(yīng)用。采用Arduino控制板進(jìn)行舵機的控制,系統(tǒng)穩(wěn)定性高,可靠性強,定位準(zhǔn)確可以滿足控制要求。
關(guān)鍵詞:機器手臂;Arduino;舵機
中圖分類號:TP398 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2017)02-0003-01
Abstract:Today, robot arm is widely used ,the research and design about a four degrees freedom's arm are found. The Mechanical Structure and Control System are described. The servo is the tradional angle control driver and has been widely used in fields such as robotics. The Arduino is used to control the servo rotation, this system is a high stability , reliability and accurate control .
Key Words:manipulator;arduino;steeringgear
1 引言
1機器手臂是一種模擬人手臂而操作的自動化機械,它可按固定的程序抓取、搬運物件或操持工具完成某些特定操作。機器手臂可以代替人從事單調(diào)、重復(fù)或繁重的體力勞動,實現(xiàn)生產(chǎn)的機械化和自動化,可以代替人在有害環(huán)境下的手工操作,改善勞動條件,保證人身安全,目前廣泛應(yīng)用在工業(yè)自動化生產(chǎn)線上,如何有效的控制機械手臂是當(dāng)前的熱點之一。
Arduino是一個開源的硬件平臺,該平臺由硬件部分和軟件兩部分組成,其中硬件包括單片機、電路板等,軟件主要是以C/C++語言為基礎(chǔ)的IDE集成開發(fā)環(huán)境,可以快速的開發(fā)自己的項目。它可以便捷地讀取模擬信號,控制LED燈亮度、電機的轉(zhuǎn)速等,也可以通過USB接口進(jìn)行編程和PC機通信等。利用Arduino單片機作為控制器控制舵機轉(zhuǎn)動,從而實觀對機器手臂的各種操作[1,2,3]。
2 設(shè)計方案
機器手臂一般由執(zhí)行機構(gòu)、控制系統(tǒng)、驅(qū)動系統(tǒng)三個部分組成。執(zhí)行機構(gòu)由手腕、機座組成,是聯(lián)接手臂與末端執(zhí)行器的部件,用以調(diào)整末端執(zhí)行器的方位和姿態(tài)。手臂是支承手腕和末端執(zhí)行器的部件。它由動力關(guān)節(jié)和連桿等組成,用來改變末端執(zhí)行器的位置。機座是機器手臂的基礎(chǔ)部件,并承受相應(yīng)的載荷,機座分為固定式。
控制系統(tǒng)以Arduino單片機為核心控制器完成機器手臂控制,實現(xiàn)四自由度機器手臂對貨物的抓?。粚C器手臂建立空間模型,確定規(guī)定動作控制要求;控制各功能電路,驅(qū)動電路等;根據(jù)機器手臂各關(guān)節(jié)動作要求,控制手臂動作行程,實現(xiàn)手臂四自由度規(guī)定動作。
驅(qū)動系統(tǒng)通過輸出PWM波的實現(xiàn)對舵機轉(zhuǎn)動的控制,進(jìn)而實現(xiàn)各個關(guān)節(jié)的位置控制。
2.1 機械設(shè)計
隨著制造工業(yè)的發(fā)展需要,對機器手臂的自由度,精確度,運行的平穩(wěn)性要求越來越高,機器手臂向多自由度,高速度,高精確度發(fā)展。齒輪式的機器手臂具有結(jié)構(gòu)簡單,易于安裝與拆卸;重量輕,關(guān)節(jié)轉(zhuǎn)動的慣性小、靈活性強等優(yōu)點,機器手臂采用齒輪式(舵機驅(qū)動方式)。齒輪式機器手臂具有傳動精度高、體積小、速度較快及運行平穩(wěn)等優(yōu)點。
實驗的機器手臂為四自由度,四自由度機器手臂可采用四個舵機控制,如圖1所示,舵機1控制底座,實現(xiàn)自由旋轉(zhuǎn),舵機2控制機器手臂上下運動,舵機3控制末端機械爪的水平傾角,舵機4控制機械爪的開合,用于抓取物件。
本機器手臂各關(guān)節(jié)的最大運動范圍:如圖1所示。
關(guān)節(jié)1(舵機1)底座的轉(zhuǎn)動范圍受舵機極限轉(zhuǎn)動范圍的限制為-90°~+90°。
關(guān)節(jié)2(舵機2)用于平舉最大的轉(zhuǎn)動為最低0°,最高90°。
關(guān)節(jié)3(舵機3)機械爪傾角的控制最低為-90°,最高90°。
關(guān)節(jié)4(舵機4)機械爪的開合,最?。ㄩ]合)0°,最大(張開)90°。
2.2 控制系統(tǒng)
以Arduino單片機為控制核心,控制機器手臂協(xié)調(diào)運動。機械手臂具有四個關(guān)節(jié),每個關(guān)節(jié)可以自由轉(zhuǎn)動相應(yīng)角度,手臂轉(zhuǎn)動采用4臺舵機驅(qū)動,可以完成點對點的夾取物件的簡單動作。利用arduino單片機本身所帶的PWM口產(chǎn)生波形,編寫控制機器手臂的動作程序,實現(xiàn)對舵機的控制[4]。系統(tǒng)控制圖如圖2所示。
為了設(shè)計的方便,控制方式采用點位控制。通過分別控制舵機的正反轉(zhuǎn)來確定末端執(zhí)行器在空間上的具體位置。舵機不是同時控制,因此不存在相互間的干擾,從而增強了整個系統(tǒng)的穩(wěn)定性?;糠肿鰹檠P(guān)節(jié)裝有舵機M1,控制機器手臂旋轉(zhuǎn);肩M2通過齒輪傳動控制大臂旋轉(zhuǎn),基座與大臂底座用軸承連接;大臂座裝有舵機M3,通過齒輪、傳動控制小臂的旋轉(zhuǎn)擺動;末端執(zhí)行器部分裝有舵機M4,同樣通過齒輪、絲桿傳動控制末端執(zhí)行器的移動??刂浦鞒绦蛄鞒虉D如圖3所示。
3 結(jié)語
經(jīng)過實驗的測試表明,采用Arduino可以實現(xiàn)對舵機的正反轉(zhuǎn)的控制,以及加減速的控制,可滿足對機械手臂的控制。
參考文獻(xiàn)
[1]蔡睿妍.基于Arduino的舵機控制系統(tǒng)設(shè)計[J].計算機工程應(yīng)用技術(shù).2012.8(15):3719-3721.
[2]黃麗雯,韓榮榮,宋江敏.基于Arduino/Android的語音控制小車設(shè)計[J].實驗室研究與探索.2015,34(12):53-56.
[3]鄭昊,鐘志峰,郭昊,許駿.基于Arduino/Android的藍(lán)牙通信系統(tǒng)設(shè)計[J].物聯(lián)網(wǎng)技術(shù).2012(5):50-51.
[4]王效華,牛思先.基于單片機PWM控制技術(shù)的實現(xiàn)[J].武漢理工大學(xué)學(xué)報2010,32(1):94-98.