趙 恒 郭 峰 錢黎明
(南通理工學院 機械工程學院,南通 226002)
音樂機器人以其較好的展示和互動效果獲得了研究人員的青睞。樂器演奏機器人通過電子控制裝置控制機械結構,達到了模擬人類演奏樂器的效果,目前主要有非人形和擬人形兩種形式。系統設計時通過分析人類在擊打時的動作,參照仿生學原理設計演奏機構,完成了各演奏機構的控制系統設計[1]。
為達到架子鼓機器人的運動控制目標,使架子鼓機器人能夠完成相應的演奏動作,控制系統整體設計如圖1所示。

圖1 控制系統整體設計
1.2.1 主控電路
采用Arduino Mega 2560單片機作為主控制器,主要作用是驅動各個電機的動作,包括伺服電機驅動電路、減速電機驅動電路和微型伺服電機驅動電路。此外,要連接電源管理電路、顯示電路和串口通信電路。
1.2.2 步進電機驅動電路
根據架子鼓機器人的整體設計方案,需要4個電機作為機械臂的動力元件。通過各種參數對比,選用42 mm行星減速步進電動機,型號為42HB48-401A,保持扭矩0.6 N·m[2]。使用小步步伺服控制板驅動步進電機,采用14位高精度磁編碼器,安裝在42 mm步進電機上,實現位置反饋。輸入電壓為8~36 V直流,峰值輸出電流為±2 A,閉環反饋頻率6 kHz,精度高于0.112 5°。
1.2.3 直流減速電機設計
為了滿足機器人行走時的穩定性,選用具有減速齒輪的直流電機,能夠產生較慢的轉速和較大的扭矩,具有高過載能力。選用型號42GA775的直流減速電機作行走機構的執行元件,轉速高達600 r·min-1,最大扭矩為60 kgf·cm。驅動電路采用L298N驅動芯片,具有過熱自斷和反饋檢測功能,直接控制電機[3]。通過主控芯片的I/O輸入設定其控制電平,為電機進行正轉反轉驅動,操作簡單,穩定性好,可以滿足直流電機的大電流驅動條件。
1.2.4 微型伺服電機(舵機)設計
考慮到機械臂工作空間有限,機械臂小臂采用微型伺服電機(舵機)作為動力元件。通過分析架子鼓機器人機械臂手腕的工作空間、敲擊架子鼓鼓面所需最高頻率及承受的最大力矩,選用型號為MG995的金屬銅齒輪度舵機。工作電壓為3.0~7.2 V,工作扭矩為13 kg·cm-1。通過調整PWM信號的占空比運轉,脈沖寬度相差0.5~2.5 ms時,微型伺服電機輸出軸的旋轉角度在0°~180°改變[4]。使用舵機時,由于舵機堵轉或者快速轉動的瞬間會產生相對較大的反向電流,易燒掉MCU,因此采用光耦隔離器TLP280進行保護。
1.2.5 電源管理電路設計
設計使用3種不同數值的直流電壓源。步進電機和直流減速電機驅動電路為24 V直流電源。主控電路輸入電壓為12 V,采用三端穩壓集成電路LM7812對直流24 V電源降壓、濾波后獲得。微型伺服電機(舵機)工作電壓為3.0~7.2 V。選用穩壓芯片LM2596S-ADJ對直流24 V電源降壓、濾波后獲得直流可調電源[5]。
軟件分為主程序、步進電機控制程序、直流減速電機控制程序、舵機控制程序和限位開關控制程序5個組成部分。通過主程序實現直流減速電機、步進電機、舵機和限位開關的控制和調用,如圖2所示。

圖2 軟件功能結構框圖
步進電機程序的主要功能通過對機械臂逆運動學分析,求解出機械臂使用不同姿態和處在不同位置時各關節的步進電機需要轉過的角度,將角度和步進電動機的步數相關聯,從而實現對機械臂的精確控制。舵機作為機械臂小臂關節和機械腳的動力元件,通過指令控制小臂在0°~180°隨意旋轉,準確敲擊鼓面。直流減速電機作為行走機構,通過PWM指令控制機器人的前進、后退、制動停止以及速度調節等操作。
通過對架子鼓機器人的機械臂定位和樂譜演奏進行測試,證明架子鼓演奏機構設計的合理性。
分別對兩個機械臂定位到各個鼓面的精度進行實驗和分析。機械臂定位測試記錄,如表1所示。

表1 機械臂定位測試記錄表
通過對機械臂定位精度的測試實驗及正確率計算,左、右機械臂能夠精確完成所需的工作,達到了機械臂的設計需求。
基礎節奏演奏時,測試采用網上樂譜,需要演奏72個音符。架子鼓機器人共進行50次演奏,未出現漏音符演奏或者音符演奏錯誤的情況。一次演奏時長為45 s,人工演奏傳統架子鼓需要40 s,基礎節奏的演奏準確情況在可接受的誤差范圍。
本文對架子鼓演奏機器人的控制結構進行研究,通過分析人類在打擊時的動作,根據仿生學設計演奏機構,完成演奏機構控制系統設計,實現了各種驅動方式的實時控制。文章完成了控制系統的硬件選型,包括步進電機、舵機和直流電機等主要器件的選型和驅動電路設計,并完成了相應的軟件設計。最后,通過對架子鼓演奏機器人進行機械臂定位測試和基礎節奏測試,驗證了控制系統設計的正確性。