2.3 基于C8051單片機(jī)和CD4017外部計(jì)數(shù)器的關(guān)節(jié)控制器設(shè)計(jì)
采用一片單片機(jī)與4片CD4017外部計(jì)數(shù)器的關(guān)節(jié)控制器設(shè)計(jì)方案,極大限度的精簡(jiǎn)了硬件數(shù)量,節(jié)省了空間,降低了軟硬件出錯(cuò)的可能性,也為系統(tǒng)運(yùn)動(dòng)功能的擴(kuò)展提供了足夠空間和靈活性(自由度數(shù)量設(shè)置可在36個(gè)以內(nèi)任意增減)。
基于C8051的設(shè)計(jì)中有很多方法用于產(chǎn)生PWM波形:軟件循環(huán)、查詢或中斷驅(qū)動(dòng)的定時(shí)器等。使用可編程計(jì)數(shù)器陣列PCA產(chǎn)生PWM相對(duì)于任何查詢機(jī)制(基于軟件或定時(shí)器而言)可以大大降低所需要的CPU帶寬,并可以消除在中斷驅(qū)動(dòng)的基于定時(shí)器的設(shè)計(jì)中因中斷延遲不一致而產(chǎn)生的時(shí)序抖動(dòng)。PCA由一個(gè)專(zhuān)用的16位計(jì)數(shù)器/定時(shí)器和5個(gè)16位捕捉/比較模塊組成。每個(gè)捕捉/比較模塊有其自己的I/O線。計(jì)數(shù)器/定時(shí)器由一個(gè)可編程的時(shí)基信號(hào)驅(qū)動(dòng)。計(jì)數(shù)器/定時(shí)器有一個(gè)16位的計(jì)數(shù)器/定時(shí)器寄存器、一個(gè)用于選擇時(shí)間基準(zhǔn)的方式寄存器和一個(gè)包含計(jì)數(shù)器/定時(shí)器運(yùn)行控制及各模塊捕捉/比較標(biāo)志的控制寄存器。每個(gè)捕捉/比較模塊有一個(gè)用于選擇模塊工作方式的配置寄存器和一個(gè)16位的捕捉/比較寄存器。每個(gè)捕捉/ 比較模塊的工作方式都可以被獨(dú)立配置。由于所有的捕捉/比較模塊共享一個(gè)時(shí)間基準(zhǔn),因此它們同步工作[5][6]。本文研究的小型娛樂(lè)機(jī)器人關(guān)節(jié)控制器設(shè)計(jì)中,將PCA配置為獨(dú)立工作;每個(gè)模塊的中斷服務(wù)程序只影響該模塊的捕捉/比較寄存器。PCA方式寄存器和配置寄存器設(shè)置一次后不再改變,讓計(jì)數(shù)器/定時(shí)器寄存器自由運(yùn)行。
在高速輸出方式,每當(dāng)PCA計(jì)數(shù)器與模塊的16位捕捉/比較寄存器發(fā)生匹配時(shí),模塊I/O線的引腳上的邏輯電平將發(fā)生高低轉(zhuǎn)換,并可以選擇產(chǎn)生中斷。本應(yīng)用程序中選擇了該中斷。
Y9輸出均變?yōu)榈碗娖?,只有Y0腳輸出變?yōu)楦唠娖?,故可以利用CR的正脈沖輸入中斷計(jì)數(shù)[7]。~Y9這10個(gè)輸出端,計(jì)滿10個(gè)數(shù)后計(jì)數(shù)器復(fù)零,同時(shí)CO端輸出一個(gè)進(jìn)位脈沖。當(dāng)CR端有正脈沖輸入時(shí),該脈沖的上升沿將觸發(fā)CD4017復(fù)位,此時(shí)Y1~CD4017基本功能是對(duì)CP端輸入脈沖的個(gè)數(shù)進(jìn)行十進(jìn)制計(jì)數(shù),并按照輸入脈沖的個(gè)數(shù)順序?qū)⒚}沖分配在Y0
本文研究的小型娛樂(lè)仿人機(jī)器人控制系統(tǒng)方案中,一個(gè)CD4017輸出7路脈沖,分別發(fā)送給7個(gè)舵機(jī)。
3 實(shí)驗(yàn)
控制系統(tǒng)硬件實(shí)物連接圖如圖4。
機(jī)器人步行實(shí)驗(yàn)完成5步的向前行和5步的后退的行走過(guò)程。步行實(shí)驗(yàn)過(guò)程如圖5。
4 結(jié)論
根據(jù)小型仿人機(jī)器人的機(jī)構(gòu)特點(diǎn)和性能要求,構(gòu)建了以ARM9為主控制器的小型仿人機(jī)器人控制系統(tǒng)。設(shè)計(jì)開(kāi)發(fā)了C8051USB單片機(jī)和CD4017外部計(jì)數(shù)器組成關(guān)節(jié)控制器,該關(guān)節(jié)控制器能夠?qū)崿F(xiàn)多舵機(jī)的協(xié)調(diào)控制任務(wù)。實(shí)踐證明,采用該結(jié)構(gòu)之后,整個(gè)機(jī)器人系統(tǒng)的模塊化程度更高,系統(tǒng)的裝配和調(diào)試更加方便??刂葡到y(tǒng)實(shí)現(xiàn)了小型化、低功耗,而且機(jī)器人行走穩(wěn)定性。
本文作者的創(chuàng)新點(diǎn)
根據(jù)小型仿人機(jī)器人的機(jī)構(gòu)特點(diǎn)和性能要求,構(gòu)建了以ARM9為主控制器的小型仿人機(jī)器人控制系統(tǒng)。設(shè)計(jì)開(kāi)發(fā)了C8051USB單片機(jī)和CD4017外部計(jì)數(shù)器組成關(guān)節(jié)控制器,該關(guān)節(jié)控制器能夠?qū)崿F(xiàn)多舵機(jī)的協(xié)調(diào)控制任務(wù)。實(shí)踐證明,采用該結(jié)構(gòu)之后,整個(gè)機(jī)器人系統(tǒng)的模塊化程度更高,系統(tǒng)的裝配和調(diào)試更加方便??刂葡到y(tǒng)實(shí)現(xiàn)了小型化、低功耗,而且機(jī)器人行走穩(wěn)定性。
參考文獻(xiàn):
[1] K.KANEKO, F.KANEHIRO, Design of Prototype Humanoid Robotics Platform for HRP, IEEE/RJS Conference on Intelligent robots and system [C]. Switzerland: IEEE 2002, 2431-2436.
[2] 鐘華,吳鎮(zhèn)煒,卜春華. 仿人型機(jī)器人控制系統(tǒng)的研究與實(shí)現(xiàn) [J]. 機(jī)器人. 2005, Vol 27, No. 5: 455-459.
[3] 鄧遵義,寧 祎,劉保國(guó). 基于CAN總線的分布式機(jī)器人控制系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息.2006,(6):255-257.
[4] 許永和. EZ-USB FX系列單片機(jī)USB外圍設(shè)備設(shè)計(jì)與應(yīng)用. 北京航空航天大學(xué)出版社. 2002-11-2
[5] 潘琢金.(譯)C8051F320/1混合信號(hào)ISP FLASH微控制器C8051F320/1數(shù)據(jù).2004-12
[6] CYGNAL應(yīng)用筆記.AN007—用PCA實(shí)現(xiàn)16位PWM .
[7] 陳國(guó)華. CD4017集成電路應(yīng)用200例.人民郵電出版社.1996作者簡(jiǎn)介:張(1978-),女,陜西省三原縣人,漢族,北京理工大學(xué),博士研究生,研究方向:機(jī)電一體化