汪倩倩 湯煊琳



摘? 要:體操機(jī)器人是一種娛樂性質(zhì)的機(jī)器人,它可以完成高難度的體操動(dòng)作,受到越來越多人的喜愛。系統(tǒng)完成了一種基于ATMega16單片機(jī)的體操機(jī)器人控制系統(tǒng)。首先對體操機(jī)器人要完成的動(dòng)作進(jìn)行編程,送到ATMega16單片機(jī),單片機(jī)對傳輸過來的數(shù)據(jù)進(jìn)行處理,接著發(fā)出控制信號,驅(qū)動(dòng)十個(gè)電機(jī)旋轉(zhuǎn),完成一系列體操動(dòng)作。其具有待機(jī)時(shí)間長,成本低,體操動(dòng)作調(diào)試靈活方便等特點(diǎn),具有一定的應(yīng)用價(jià)值和市場前景。
關(guān)鍵詞:體操機(jī)器人;單片機(jī);電機(jī);機(jī)器人控制系統(tǒng)
中圖分類號:TP242? ? ? 文獻(xiàn)標(biāo)識碼:A 文章編號:2096-4706(2020)17-0041-03
Abstract:Gymnastics robot is a kind of recreational robot,it can complete the difficult gymnastics movement,and it is more and more popular. The system completes a gymnastics robot control system based on ATMega16 MCU. First of all,the movement programming of gymnastics robot was sent to the ATMega16 MCU,and then ATMega16 MCU sends control signals,drives ten motors rotation,complete a series of gymnastics. It has the characteristics of long standby time,low cost,flexible and convenient gymnastics movement debugging,which has certain application value and market prospect.
Keywords:gymnastics robot;single chip microcomputer;motor;robot control system
0? 引? 言
體操機(jī)器人屬于一類娛樂性質(zhì)機(jī)器人,同時(shí)也是江蘇省的機(jī)器人大賽和中國工程機(jī)器人大賽的指定項(xiàng)目。為了在比賽中脫穎而出,提高機(jī)器的速度,減少功耗,延長待機(jī)時(shí)間,在盡量短的時(shí)間內(nèi)完成比賽要求的一系列指定動(dòng)作,本人與智能工程學(xué)院機(jī)器人團(tuán)隊(duì)成員不斷對體操機(jī)器人進(jìn)行研究,改進(jìn),由團(tuán)隊(duì)老師完成硬件設(shè)計(jì),團(tuán)隊(duì)學(xué)生完成軟件編程,安裝調(diào)試。通過改進(jìn),無論是在體操機(jī)器人的硬件結(jié)構(gòu)上,還是軟件編程上,都在不斷進(jìn)步,該系統(tǒng)完成了一個(gè)基于單片機(jī)的體操機(jī)器人控制系統(tǒng)設(shè)計(jì),通過單片機(jī)控制舵機(jī)協(xié)同工作,實(shí)現(xiàn)了以低成本完成高要求的智能化設(shè)備控制要求[1]。
1? 系統(tǒng)概述
體操機(jī)器人以ATMega16單片機(jī)[2]為核心,具有十個(gè)自由度[3],控制十個(gè)舵機(jī)動(dòng)作,協(xié)同完成體操的一套動(dòng)作:準(zhǔn)備動(dòng)作、翻滾動(dòng)作、俯臥撐動(dòng)作、側(cè)身翻動(dòng)作、倒立動(dòng)作以及自編動(dòng)作個(gè)動(dòng)作,這六個(gè)動(dòng)作也是江蘇省機(jī)器人比賽中所要完成的任務(wù),每個(gè)動(dòng)作都需要對各個(gè)電機(jī)進(jìn)行很多次調(diào)試,完成相關(guān)動(dòng)作。做完所有的動(dòng)作回到起步區(qū),在此過程中體操機(jī)器人所做的動(dòng)作不能超出表演區(qū),這樣才符合比賽規(guī)則,為一套標(biāo)準(zhǔn)的體操動(dòng)作。
2? 系統(tǒng)硬件設(shè)計(jì)
該系統(tǒng)采用TA8435驅(qū)動(dòng)電機(jī),使用低功耗8位高性能ATMega16單片機(jī)控制電機(jī)運(yùn)行。低功耗8位高性能的單片機(jī)可以在一定程度上節(jié)約電量,讓體操機(jī)器人的電壓更穩(wěn)定,做起體操動(dòng)作更加的流暢。系統(tǒng)框圖如圖1所示。
2.1? 結(jié)構(gòu)設(shè)計(jì)
體操機(jī)器人的結(jié)構(gòu)分為三大部分:舵機(jī)控制板、十個(gè)舵機(jī)、其他固定件腳板支架、短U支架等。在體操機(jī)器人的結(jié)構(gòu)構(gòu)造方面,采用仿人形的機(jī)器結(jié)構(gòu),雙臂、腿部以及身體各用2個(gè)舵機(jī),構(gòu)成了體操機(jī)器人的基本框架。其他固定件,作者決定采用輕質(zhì)鋁合金材料,不僅加強(qiáng)了機(jī)械本身的硬度,更減輕了質(zhì)量。與傳統(tǒng)的材料相比,不僅是在材料的性能上有所提升,其價(jià)格也是比較低的。鋁合金通過表面處理,具有一些特殊的紋理效果,采用輕質(zhì)鋁合金的優(yōu)點(diǎn)有:首先,使用輕質(zhì)的鋁合金制成不同的模塊,根據(jù)不同的需求設(shè)計(jì)成不同的形狀;其次,與傳統(tǒng)的材料相比,它不會(huì)銹化,后續(xù)使用成本低廉,維護(hù)方便;再次,安裝方便——由于重量輕,安裝輕便,做起動(dòng)作省力,所以也能耗降低了,使得待機(jī)時(shí)間更長。
2.2? 控制板設(shè)計(jì)
根據(jù)體操機(jī)器人對動(dòng)作的要求,針對舵機(jī)控制電路的核心部件我們使用ATMegal16單片機(jī),作為提供舵機(jī)的工作狀態(tài)的主要器件,負(fù)責(zé)脈沖信號的產(chǎn)生。驅(qū)動(dòng)電路[4]系統(tǒng)應(yīng)用先進(jìn)的TA8435芯片。整個(gè)驅(qū)動(dòng)控制系統(tǒng)由單片機(jī)與驅(qū)動(dòng)芯片結(jié)合,提高了舵機(jī)運(yùn)行時(shí)控制精準(zhǔn)性和穩(wěn)定性,舵機(jī)控制板支持串口和USB接口、支持藍(lán)牙模塊、MP3以及手柄模塊。采用RS232通信協(xié)議,選用MAX232芯片。由MAX232芯片構(gòu)成的RS232串口負(fù)責(zé)與單片機(jī)和電腦的通信,波特率設(shè)定為9 600 bit/s,1位停止,無校驗(yàn)位。
2.3? 供電設(shè)計(jì)
電源部分是分離設(shè)計(jì)的,舵機(jī)控制板和舵機(jī)的供電是分開設(shè)計(jì)的,由于它們相互獨(dú)立,在體操機(jī)器人做仿人的體操動(dòng)作時(shí),需要對舵機(jī)控制板和舵機(jī)進(jìn)行同時(shí)供電。因?yàn)槎鏅C(jī)和舵機(jī)控制板兩者的電壓各不相同,再同時(shí)供電就有了一定的難度,舵機(jī)的電壓為兩種:第一種為6 V,第二種為7.4 V。該系統(tǒng)選擇的是7.4 V的電壓,這樣舵機(jī)的扭力更大,做起動(dòng)作更加流暢,而舵機(jī)控制板為5 V電壓,故舵機(jī)電源和舵機(jī)控制板電源,各自獨(dú)立供電。
2.4? 舵機(jī)的選型
根據(jù)體操機(jī)器人動(dòng)作,性能要求,選用了物美價(jià)廉的SR-403P舵機(jī),SR-403P舵機(jī)價(jià)格便宜,控制速度快,扭力大,控制精度高,轉(zhuǎn)動(dòng)角度可達(dá)180度,能夠滿足體操機(jī)器人控制要求。舵機(jī)SR-403P的內(nèi)部有專門負(fù)責(zé)接收控制信號的裝置,當(dāng)獲得直流偏置電壓時(shí),此時(shí)的電壓會(huì)與舵機(jī)內(nèi)部的電位器的電壓進(jìn)行相互比較,再經(jīng)過簡單的運(yùn)算就會(huì)得到一個(gè)電壓的差值,這個(gè)電壓的差值有正值也會(huì)有負(fù)值,輸送到電機(jī)驅(qū)動(dòng)芯片決定電機(jī)的正反轉(zhuǎn)。當(dāng)獲得的直流偏置電壓的值與電位器的電壓值相同時(shí),此時(shí)的舵機(jī)就會(huì)停止轉(zhuǎn)動(dòng)。
3? 系統(tǒng)軟件設(shè)計(jì)
3.1? 程序概況
程序部分是體操機(jī)器人系統(tǒng)的靈魂,硬件部分只是作為程序的載體。控制系統(tǒng)采用ROBOIDE編程環(huán)境,ROBOIDE有眾多模塊。由于體操機(jī)器人需要做出仿人的體操動(dòng)作,除了肢體結(jié)構(gòu)設(shè)計(jì)好,還需要編程仿人動(dòng)作的編程系統(tǒng)。ROBOIDE的編程動(dòng)作方便簡單,其操作界面也非常的人性化。ROBOIDE最多支持控制32個(gè)舵機(jī),該系統(tǒng)體操機(jī)器人采用10個(gè)舵機(jī)控制。體操機(jī)器人的結(jié)構(gòu)由于屬于仿人形的結(jié)構(gòu),人類每個(gè)可以活動(dòng)的關(guān)節(jié),用了一個(gè)舵機(jī)進(jìn)行代替,在編程動(dòng)作時(shí),為了方便分辨電機(jī)代表的關(guān)節(jié)位置,也為了方便編程仿人的體操動(dòng)作。編程的操作界面進(jìn)行了調(diào)整。該系統(tǒng)中體操機(jī)器人每個(gè)手臂使用兩個(gè)舵機(jī),每條腿部使用兩個(gè)舵機(jī),身體使用兩個(gè)舵機(jī)的設(shè)計(jì)。
3.2? 電機(jī)的控制程序
在單片機(jī)控制舵機(jī)時(shí),通過軟件ROBOIDE的圖形界面來進(jìn)行控制舵機(jī)。舵機(jī)拉動(dòng)條數(shù)字的范圍為500~2 500,其范圍對應(yīng)的是舵機(jī)所能轉(zhuǎn)動(dòng)角度的范圍,也就是相對應(yīng)的0~180度。讓舵機(jī)轉(zhuǎn)動(dòng)一定的角度,有兩種方法:一種方法是用鼠標(biāo)拖動(dòng)你想要轉(zhuǎn)動(dòng)的舵機(jī)的拉動(dòng)條,一直拉到你所需要的位置。另一種方法就是用數(shù)字和角度對應(yīng)的關(guān)系,500~2 500對應(yīng)0~180度(舵機(jī)轉(zhuǎn)動(dòng)度數(shù)),輸入相應(yīng)數(shù)值就可以得到相應(yīng)的角度。例如:當(dāng)需要一個(gè)舵機(jī)轉(zhuǎn)動(dòng)到45度的位置的時(shí)候,只需在需要轉(zhuǎn)動(dòng)的舵機(jī)的方框里輸入1 000這個(gè)具體從數(shù)值,然后按下鍵盤Enter鍵,就可以得到舵機(jī)的角度45度位置。
體操機(jī)器人的動(dòng)作的編程就是將動(dòng)作放慢分成一幀一幀的圖片,用其連續(xù)性完成一套動(dòng)作。對于有些復(fù)雜的體操動(dòng)作,只要將其分解成一幀一幀的圖片進(jìn)行編程就可以解決,分解的圖片越多,機(jī)器人所做出的動(dòng)作就越流暢。
3.3? 動(dòng)作編程
一套完整的體操動(dòng)作是由一個(gè)一個(gè)的小動(dòng)作組成的。而每一個(gè)體操小動(dòng)作又是由編程者編程完成的,每一個(gè)體操小動(dòng)作都需要耐心的設(shè)置每個(gè)電機(jī)旋轉(zhuǎn)的角度。本次體操動(dòng)作設(shè)計(jì)參照江蘇省機(jī)器人大賽規(guī)則的動(dòng)作標(biāo)準(zhǔn)來進(jìn)行編程,具體編程調(diào)試工作由作者指導(dǎo)參賽學(xué)生編程實(shí)現(xiàn)。體操機(jī)器人動(dòng)作總流程圖如圖2所示。
這些仿人形的體操動(dòng)作不僅考驗(yàn)機(jī)體自身質(zhì)量的大小和舵機(jī)性能的優(yōu)劣,更加考驗(yàn)機(jī)體自身的結(jié)構(gòu)設(shè)計(jì)以及手臂部分和下肢部分的比例關(guān)系是否協(xié)調(diào)。如果這些條件有一條不符合,體操機(jī)器人就很難編程出或者做出這些仿人形的體操動(dòng)作[5]。情況嚴(yán)重的甚至?xí)w操機(jī)器人的機(jī)器造成永久性的損傷。體操機(jī)器人的每一個(gè)動(dòng)作又可以進(jìn)行細(xì)分,比如倒立動(dòng)作是一個(gè)連續(xù)的動(dòng)作,可以將這個(gè)倒立動(dòng)作分為8個(gè)關(guān)鍵的姿勢[6],這些姿勢是組成倒立體操動(dòng)作的關(guān)鍵。根據(jù)倒立動(dòng)作的完成規(guī)范,把倒立動(dòng)作進(jìn)行分解,流程圖如圖3所示。
把倒立動(dòng)作分解為八個(gè)姿勢后,再對所分解的每個(gè)姿勢進(jìn)行編程,以彎腰且雙手接觸地面為例,圖4是體操機(jī)器人彎腰雙手接觸地面圖形,圖5是彎腰且雙手接觸地面編程界面。倒立動(dòng)作的編程就是對分解流程里的姿勢,做成一幀一幀的圖形,連續(xù)起來完成一套動(dòng)作。分解的姿勢越多,機(jī)器人所做出的動(dòng)作就越連貫,完成的越流暢。
3.4? 安裝調(diào)試
安裝體操機(jī)器人時(shí)按照體操機(jī)器人的身體,頭部,手臂以及腿部順序安裝。安裝過程中需要保障各個(gè)肢體的安裝符合標(biāo)準(zhǔn),裝配的精度合格。在安裝舵機(jī)時(shí)注意舵機(jī)絞線的排布,防止在做體操動(dòng)作時(shí)被舵機(jī)絞線所纏繞,而對體操機(jī)器人造成一定的損傷。由于SR-403P舵機(jī)轉(zhuǎn)動(dòng)范圍為180度,所以在安裝舵機(jī)的時(shí)候需要特別留意安裝時(shí)舵機(jī)所處的角度,以及此處關(guān)節(jié)所需要的活動(dòng)角度。
調(diào)試時(shí),首先將體操機(jī)器人的電源開關(guān)關(guān)閉,用數(shù)據(jù)線將體操機(jī)器人和電腦進(jìn)行連接,當(dāng)編程軟件出現(xiàn)體操機(jī)器人連接的標(biāo)識時(shí),舵機(jī)控制板上的指示燈點(diǎn)亮,在軟件界面的選擇相對應(yīng)的串口,選好串口后,進(jìn)行聯(lián)機(jī),調(diào)試的準(zhǔn)備工作就做好了。即可開始對各個(gè)動(dòng)作進(jìn)行分解,再對每個(gè)分解的姿勢進(jìn)行調(diào)試,直到各個(gè)姿勢符合預(yù)期標(biāo)準(zhǔn)為止,分解的姿勢越多,做出的動(dòng)作越連貫。每個(gè)動(dòng)作做好了,一整套的動(dòng)作就會(huì)流暢,再整體調(diào)試,提高速度直到整套動(dòng)作的效果令人滿意為止。
4? 結(jié)? 論
系統(tǒng)完成對體操機(jī)器人的控制系統(tǒng)的設(shè)計(jì),通過ATMega16單片機(jī)提供脈沖信號,驅(qū)動(dòng)控制舵機(jī)旋轉(zhuǎn),通過ROBOIDE圖形化界面對十個(gè)舵機(jī)進(jìn)行編程,實(shí)現(xiàn)一系列預(yù)定體操動(dòng)作,也可以編程其他的動(dòng)作,該系統(tǒng)待機(jī)時(shí)間長,運(yùn)行可靠,調(diào)試動(dòng)作靈活方便,在2019年江蘇省機(jī)器人體操比賽中取得了優(yōu)異的成績。
參考文獻(xiàn):
[1] 孫成安.體操機(jī)器人擺起和倒立平衡的控制研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2018.
[2] 韓玉龍,趙瑾,申忠宇,等.競賽機(jī)器人多舵機(jī)控制方法的研究與實(shí)現(xiàn) [J].自動(dòng)化儀表,2016(7):46-49.
[3] 郭悅.基于視覺的五自由度運(yùn)動(dòng)平臺(tái)控制系統(tǒng)研究 [D].北京:北京理工大學(xué),2016.
[4] 邢倩,胡現(xiàn)波.用于自由體操機(jī)器人的舵機(jī)PWM控制技術(shù)實(shí)現(xiàn) [J].自動(dòng)化技術(shù)與應(yīng)用,2019,38(7):65-69.
[5] 孫佳亨,孟曉亮,梁豪,等.基于MEMS傳感器的體操動(dòng)作識別 [J].電子測量與儀器學(xué)報(bào),2020,34(3):94-99.
[6] 黃晴晴,周風(fēng)余,劉美珍.基于視頻的人體動(dòng)作識別算法綜述 [J/OL].計(jì)算機(jī)應(yīng)用研究:1-8(2019-12-26).https://doi.org/10.19734/j.issn.1001-3695.2019.08.0253.
作者簡介:汪倩倩(1980—),女,漢族,江蘇徐州人,就職于自動(dòng)化教研室,講師,碩士,主要研究方向:單片機(jī)、PLC等機(jī)電一體化控制技術(shù);湯煊琳(1978—),女,漢族,江蘇無錫人,就職于自動(dòng)化教研室,講師,碩士,主要研究方向:單片機(jī)、PLC等機(jī)電一體化控制技術(shù)。