<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于STC89C52單片機(jī)的體操機(jī)器人系統(tǒng)設(shè)計(jì)

          基于STC89C52單片機(jī)的體操機(jī)器人系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2012-12-12 來(lái)源:網(wǎng)絡(luò) 收藏

          3 體操機(jī)器人的機(jī)械結(jié)構(gòu)設(shè)計(jì)
          體操機(jī)器人的機(jī)械結(jié)構(gòu)設(shè)計(jì)主要考慮機(jī)器人完成各種體操動(dòng)作的可行性,例如:完成雙手俯臥撐、單手俯臥撐、側(cè)滾翻、前滾翻等動(dòng)作。由于本機(jī)器人不做行走動(dòng)作,因此在腿部的設(shè)計(jì)中沒(méi)有增加更多自由度。在本體操機(jī)器人的結(jié)構(gòu)設(shè)計(jì)中采用Siemens公司的UG結(jié)構(gòu)模型設(shè)計(jì)軟件,設(shè)計(jì)了機(jī)器人的全部結(jié)構(gòu)零件。如圖3所示:

          基于STC89C52單片機(jī)的體操機(jī)器人系統(tǒng)設(shè)計(jì)

          仿人型機(jī)器人制作完畢后的實(shí)物圖如圖4所示:

          基于STC89C52單片機(jī)的體操機(jī)器人系統(tǒng)設(shè)計(jì)

          4 仿人型機(jī)器人的控制程序設(shè)計(jì)
          4.1 脈寬差控制算法
          多路舵機(jī)控制的基本方法是順序輸出各路脈沖給不同舵機(jī),利用高速的處理速度來(lái)實(shí)現(xiàn)多路控制。但是這一類控制算法對(duì)于控制舵機(jī)的數(shù)目有限制,因?yàn)榭刂贫鏅C(jī)所需的PWM波的典型周期是20ms,而每一路舵機(jī)所需的最大正脈寬長(zhǎng)度為2.5ms,因此最多只能控制8路舵機(jī)。本系統(tǒng)中需要控制的舵機(jī)有10個(gè),所以選擇了改進(jìn)的控制算法——脈寬差法。
          脈寬差法控制分為以下幾個(gè)步驟:
          (1) 分組排序。將多路舵機(jī)控制數(shù)據(jù)每8路分為一組,對(duì)于每一組數(shù)據(jù)(控制脈沖長(zhǎng)短),按照從小到大的順序排序。
          (2) 計(jì)算差值。計(jì)算舵機(jī)控制數(shù)據(jù)的差值并保存計(jì)算每組內(nèi)相鄰的兩個(gè)數(shù)據(jù)的差值(數(shù)值大的數(shù)與數(shù)值小的數(shù)的差)并保存于差值數(shù)組中。該差值數(shù)組共有8 個(gè)存儲(chǔ)單元,第一個(gè)單元存放的是該組舵機(jī)控制數(shù)據(jù)的最小值,從第二個(gè)單元開始存放舵機(jī)控制數(shù)據(jù)的差值。
          (3) 數(shù)據(jù)轉(zhuǎn)換。把差值數(shù)組中的數(shù)據(jù)轉(zhuǎn)換為定時(shí)時(shí)間(即控制脈沖寬度差值),再繼續(xù)轉(zhuǎn)換為定時(shí)初值并保存于脈寬差數(shù)組中。
          (4) 舵機(jī)控制??刂颇骋唤M舵機(jī)時(shí),先向該組內(nèi)所有舵機(jī)置高電平(啟動(dòng)舵機(jī)),然后把脈寬差數(shù)組中的第一個(gè)數(shù)據(jù)賦值給定時(shí)寄存器。定時(shí)中斷發(fā)生時(shí),先關(guān)斷脈寬差數(shù)組中第一個(gè)數(shù)據(jù)所對(duì)應(yīng)的舵機(jī),再向定時(shí)寄存器中填入脈寬差數(shù)組中的第二個(gè)數(shù)據(jù)。依此類推,就可以完成該組所有舵機(jī)的控制。在一個(gè)控制周期(20ms)內(nèi),依次用定時(shí)器定時(shí)輸出脈沖控制每組舵機(jī)。在第三組舵機(jī)控制畢后,繼續(xù)定時(shí)用低電平補(bǔ)足其余時(shí)間以完成20ms。脈寬差法原理如圖5所示。

          基于STC89C52單片機(jī)的體操機(jī)器人系統(tǒng)設(shè)計(jì)

          4.2 脈寬差法的程序?qū)崿F(xiàn)
          這里介紹的實(shí)現(xiàn)方法是基于的C語(yǔ)言編寫的。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();