《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的仿人機器人面部驅(qū)動系統(tǒng)
基于FPGA的仿人機器人面部驅(qū)動系統(tǒng)
來源:電子技術應用2013年第6期
肖志鋒, 段玉琴, 蔡 勇, 蔣 剛
西南科技大學 制造科學與工程學院, 四川 綿陽 621010
摘要: 針對單片機在處理多任務事件時的延時問題,提出了基于現(xiàn)場可編程門陣列(FPGA)的驅(qū)動系統(tǒng)設計方案。根據(jù)FPGA的多任務可并行處理特點,分別進行設計和驗證并通過在一片F(xiàn)PGA上統(tǒng)一實例化模塊,簡化了驅(qū)動系統(tǒng)的硬件結構。實驗表明,基于FPGA的驅(qū)動系統(tǒng)可有效提高面部表情控制準確度和表情再現(xiàn)速率。
中圖分類號: TP242.6
文獻標識碼: A
文章編號: 0258-7998(2013)06-0127-03
FPGA-based facial drive system of humanoid robot
Xiao Zhifeng, Duan Yuqin, Cai Yong, Jiang Gang
School of Manufacturing Science and Engineering, Southwest University of Science and Technology, Mianyang 621010, China
Abstract: SCM exist delay defect in the treatment of multi-tasking incident. This paper proposed the design scheme of the drive system based on field programmable gate array(FPGA). According to the feature of FPGAs′ multi-tasking parallel processing, designed verification respectively. It was simplified the hardware structure by unified instantiated modules in an FPGA. Compared with expression experiments show that, it was concluded that the driving system based on FPGA can effectively improve facial expression control accuracy and expression reproduction rate.
Key words : FPGA; humanoid robot; facial expression; drive system

    為了能夠充分表達人類的情感,仿人機器人通過多個運動機構牽動仿真人面皮實現(xiàn)人類表情[1-3]。這種面部機構具有自由度眾多、運動復雜、控制精度要求高等特點。實踐表明,由于指令順序執(zhí)行,單個單片機很難完成多任務系統(tǒng)的設計。然而,采用多個單片機分布控制的方式,雖然能夠滿足設計需求,但系統(tǒng)穩(wěn)定性較差,設計成本增加。

    本文選用非定制邏輯器件FPGA作為控制芯片來完成整個驅(qū)動系統(tǒng)的設計。區(qū)別于單片機,F(xiàn)PGA并行的設計理念可使系統(tǒng)模塊獨立運行,在簡化系統(tǒng)架構的同時,提高執(zhí)行機構的協(xié)同性。
1 面部運動分析與系統(tǒng)硬件結構
    本系統(tǒng)用于驅(qū)動西南科技大學自主研發(fā)的MSR2型仿人機器人面部產(chǎn)生人類表情,如圖1所示。其面部具有21個基本動作單元AU(Action Unit),主要集中分布于眉毛、眼球、眼瞼、嘴巴和下頜等5個部位,如圖2所示。表1給出了5個部位的驅(qū)動電機和傳感器分布情況。

    面部驅(qū)動系統(tǒng)是仿人機器人控制系統(tǒng)的一個組成部分,面部單元運動指令由上層PC機完成。因此,本文將面部驅(qū)動系統(tǒng)劃分成電機控制、反饋信號采集和上位機通信三個部分,圖3所示為硬件結構示意圖。

2 FPGA模塊化設計
    本設計選擇Altera公司Cyclone II系列FPGA器件EP2C5Q208C8,作為驅(qū)動系統(tǒng)核心控制芯片。
2.1 電機驅(qū)動模塊設計
    仿人機器人頭部空間狹小,選用的微型舵機型號為H301,其旋轉(zhuǎn)角速度為500°/s。H301的控制僅需一路周期為20 ms的PWM脈沖, 有效正脈寬范圍為0.5 ms~2.5 ms,對應舵機旋轉(zhuǎn)角度范圍為0°~180°。PWM脈寬與H301轉(zhuǎn)角呈線性對應關系。驅(qū)動系統(tǒng)需要實現(xiàn)對21路舵機的控制,即需要FPGA輸出21路PWM[4]。PWM的輸出可以作為一個模塊來設計,以下是舵機模塊SteeringGear實例SG1的Verilog HDL代碼:
    SteeringGear SG1(.clk(clk)               //50 MHz時鐘輸入
    .rst_n(rst_n)                                     //復位信號,低電平有效
    .pwm_out_en(pwm_EN)                       //PWM輸出使能
    .correct_temp(pc_chang)                      //PWM參數(shù)修正
    .pwm_val(Data_Received)  //轉(zhuǎn)角控制
    .pwm(pwm[1]))   //PWM輸出
  
應pwm_val的值為7 500。因此,舵機模塊設計正確。
2.2 反饋信號采集模塊設計
     位置檢測電位器作為反饋傳感器,反饋面部機構的運動位置,為驅(qū)動系統(tǒng)提供誤差補償。系統(tǒng)選用精密電位器J50S,其線性精度為±0.1%。
    J50S反饋的電壓信號是模擬量,F(xiàn)PGA的模數(shù)轉(zhuǎn)換外置了16位ADC芯片LTC1864。電位器檢測的理論精度為0.005 2°。驅(qū)動系統(tǒng)將面部位置反饋電位器分成6、7兩組,由LTC1864配合單8路模擬開關CD4051實現(xiàn)。與FPGA硬件接口如圖5所示。

    在Slave FIFO操作模式下,增強型8051內(nèi)核利用固件將CY7C68013A配置成Slave FIFO模式后,不參與外設與USB主機的數(shù)據(jù)交互[5-6]。經(jīng)過實驗測試,Slave FIFO模式的USB數(shù)據(jù)傳輸速率可達21.6 Mb/s, 滿足了系統(tǒng)需求。
3 驅(qū)動系統(tǒng)工作流程
    圖7所示為驅(qū)動系統(tǒng)主要工作流程圖。驅(qū)動系統(tǒng)上電復位初始化后,USB模塊監(jiān)測上位機PC的指令;當?shù)玫絇C指令后,USB模塊接收運動數(shù)據(jù);FPGA將數(shù)據(jù)分配給電機模塊;電機旋轉(zhuǎn)驅(qū)動面部運動機構,牽扯仿真人面皮展現(xiàn)人類表情。位置反饋模塊采集電位器的角位移,與理論值計算運動誤差;如果誤差在允許范圍內(nèi),則反饋數(shù)據(jù)至PC;否則通過誤差補償算法,給原始數(shù)據(jù)添加補償系數(shù),重新分配數(shù)據(jù)。

4 系統(tǒng)實驗與結果分析
    將本文設計的仿人機器人面部驅(qū)動系統(tǒng)與以單片機為核心的系統(tǒng)做表情對比實驗。MSR2面部前一版本的驅(qū)動系統(tǒng)選用3個單片機(型號為STM32F103VE),分別控制3個模塊,單片機之間采用CAN總線通信。
    為了達到實驗目的,選擇驚訝、厭惡、憤怒、欣喜4種有明顯區(qū)分的表情作測試。系統(tǒng)有13個檢測點位置,即反饋電位器的檢測點。實驗允許每個檢測點的誤差為±1°。兩個驅(qū)動系統(tǒng)分別針對每種表情重復實驗100次,得到400組反饋數(shù)據(jù)。根據(jù)均方差公式分別計算出各個檢測點的偏差,并通過Matlab軟件得到兩個系統(tǒng)的4種表情控制偏差對比圖,如圖8所示。

 

 

    由圖8可以得出,基于FPGA的驅(qū)動系統(tǒng)的控制精度要高于以STM32分布控制的精度。經(jīng)測試基于FPGA的驅(qū)動系統(tǒng)響應時間約為703 ms,而基于STM32單片機的驅(qū)動系統(tǒng)的響應時間約為978 ms。由此得出,以FPGA為核心的控制系統(tǒng), 總體性能優(yōu)于基于STM32的驅(qū)動系統(tǒng)。
    本文分析了仿人機器人面部運動控制點,將其驅(qū)動系統(tǒng)劃分成了3個模塊,分別介紹了各個模塊的FPGA設計方法,并給出了系統(tǒng)主要工作流程。通過實驗驗證,基于FPGA的驅(qū)動系統(tǒng)基本達到了人類表情變化的速率和較為準確的表情展現(xiàn)度。目前,采用該驅(qū)動系統(tǒng)后,仿人面部可以區(qū)分出18種表情。隨著后續(xù)仿真人面皮制作工藝的提高,仿人機器人再現(xiàn)的表情將更為細膩豐富。
參考文獻
[1] TAKENO J, MORI K, NAITO Y. A robot with complex facial expressions[J]. Sensors & Transducers, 2009(6):18-26.
[2] 劉遙峰, 王志良. 基于情感交互的仿人頭部機器人[J].機器人, 2009,31(6):493-500.
[3] Jen Fuhua, Tai Jenchao, Liang Dahung, et al. Design and  development of a robot head with facial emotion expression[J]. Journal of Technology, 2011,26(1):27-38.
[4] 張普行, 賈秋玲. 基于FPGA的機械臂多路舵機控制器設計[J]. 微特電機, 2011(4):73-75.
[5] 錢峰.EZ-USB FX2單片機原理、編程及應用[M]. 北京:北京航空航天大學出版社,2006.
[6] 劉吉, 楊德偉,文懷濤,等.基于USB通信的FPGA高速數(shù)據(jù)采集系統(tǒng)[J]. 現(xiàn)代電子技術, 2011,34(10):186-192.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。
主站蜘蛛池模板: 成人精品区| 一级做a爰片久久毛片16 | 鲁丝片一区二区三区免费 | 欧美aⅴ在线 | 久久精品久久精品国产大片 | 日韩在线1| 国产精品成人一区二区不卡 | 久久在线资源 | 久操免费 | 国产v综合v亚洲欧美大另类 | 免费观看三级毛片 | 国产精品免费久久久免费 | 久久久9视频在线观看 | 国产一级一国产一级毛片 | 欧美日韩国产在线观看一区二区三区 | 岛国午夜精品视频在线观看 | www国产精品 | 日本一级毛片片在线播放 | 亚洲影院在线 | 精品在线视频免费观看 | a毛片免费播放全部完整 | 欧美一级毛片一免费 | 黄色日韩网站 | 欧美做爰野外在线视频观看 | 成人国产精品视频 | 精品无码久久久久久国产 | 午夜免费69性视频爽爽爽 | 久久99九九精品免费 | 高清成人爽a毛片免费网站 高清大学生毛片一级 | 日韩www视频| 国产成年视频 | 亚洲国产老鸭窝一区二区三区 | 一级做a爰片久久毛片人呢 一级做a爰片久久毛片唾 | 成人看片黄a免费 | 九九久久久 | a级毛片免费高清毛片视频 a级毛片免费高清视频 | 中文字幕在亚洲第一在线 | 黄网国产 | 最全精品自拍视频在线 | 久久国产免费观看精品1 | japanesevideo乱子|