秦承運
(合肥探奧自動化有限公司,安徽 合肥 230031)
隨著計算機技術、電氣自動化技術和人工智能的快速發展,彈鋼琴機器人、彈唱機器人、下棋機器人、樂隊指揮機器人等眾多教育類型的能夠體現科學與藝術相結合的機器人被陸續創造出來,該類機器人最先被普通百姓所了解,在各種場合的展覽展示出來。
彈鋼琴機器人作為該類機器人的典型代表,在1984年,日本科學家研發出名為WABOT-2的彈琴機器人[1],后來還出現了包括踏板控制的彈鋼琴機器人[2];2010年,臺灣展覽上第一次出現了可以用10根手指彈鋼琴的機器人;意大利科學家研制出音樂機器人“泰奧·特尼克”,擁有19根手指,可以演奏任何旋律或歌曲[3]。該類彈鋼琴機器人為了表現出技術的先進性和展覽的精彩程度,其功能設計往往比較復雜,從而其結構設計也比較精密。但對于普通觀眾而言,只能從觀看機器人表演中領略高新科技的快速發展,而對其具體機電機構的運作方式很難理解。
本設計的一種彈鋼琴機電裝置,采用模擬人雙臂和雙手的形式簡單設計“雙臂機構”和“雙手機構”,并采用相對簡單的伺服電機和氣動元件作為驅動設備,實現彈奏鋼琴的功能需求,結構較為簡單,可以讓人們不局限于觀看機器人表演來了解機器人,還可以通過認識機器人的機電機構來揭開彈鋼琴機器人的神秘面紗,具有一定的應用場景。
經過調研分析,若要使設計的機電裝置實現彈奏鋼琴的功能,就需要模擬出人手敲擊琴鍵的動作,在彈奏鋼琴時,人手主要有手部的左右移動和手指的上下敲擊這兩類動作,而模擬這兩類動作的難點在于如何準確定位左右移動和精確把握上下敲擊的時刻。為實現彈鋼琴動作的模擬,本文所述的機電裝置主要由雙臂機構、雙手機構、固定架等構成,如圖1,固定架可以采用螺栓連接的形式固定于任一平臺上。
人手在鋼琴琴鍵上進行左右移動時,會動用人體手臂的多個關節和肌肉同時聯動,這是個極為復雜的動作過程,而完全采用機電裝置的設計來模擬這一復雜過程是非常困難的。因此,在模擬人手左右移動這一動作時,設計采用簡化的電動實現小范圍的左右移動,以達到能夠彈奏鋼琴的目的,而不使雙臂機構的整體結構過于復雜。

圖1 整體結構圖
雙臂機構由兩條模擬“人手臂”的單臂機構和旋轉控制機構組成,單臂機構主要由固定法蘭、肩部連接結構、手臂和手連接板構成,如圖2所示。手連接板、手臂和肩部連接結構之間通過焊接的方式連接,三者通過固定法蘭利用螺栓連接固定于固定架上;手連接板可以與雙手機構中的臂連接板通過螺栓進行連接。

圖2 單臂機構結構圖
旋轉控制機構主要由電機、電機安裝法蘭和電機輸出法蘭構成,如圖3所示。電機通過電機安裝法蘭采用螺栓固定于固定架上,通過電機輸出法蘭采用螺栓與單臂機構相連接,電機的旋轉可帶動單臂機構旋轉。

圖3 旋轉控制機構結構圖
雙臂機構運行時的綜合表現為:電機帶動單臂機構繞旋轉軸旋轉,從而實現了單臂機構手連接板一端在一定范圍內的左右移動,也即是通過模擬手臂肩關節的旋轉運動,實現了手部的小范圍左右移動。
人的手由5根手指組成,每根手指由若干骨骼和肌肉組成,手指的運動是靠各手指的肌肉組帶動各關節骨骼運動來實現的,彈鋼琴時手指對琴鍵的敲擊也會根據不同情況觸發不同的肌肉作用,而完全采用機電裝置的設計來真實模擬手指的復雜運動也是基本不可能的。因此,在設計機電機構模擬上下敲擊琴鍵這一動作時,弱化手指由多個關節聯動運動的實際情況,而注重實現手指端部對琴鍵的上下敲擊,來簡化整個雙手機構的結構設計。
雙手機構由兩個單手掌機構和手指控制機構構成,單手掌機構主要由5根手指、臂連接板和手掌板構成,如圖4所示,臂連接板可與雙臂機構中的手連接板通過螺栓連接固定。每根手指由2個手指板夾著1個手指肚和1個手指頭構成。手指尾部與手掌板通過手指軸連接,整根手指可以繞手指軸轉動;在手指尾部設置有旋轉杠桿機構,穿過手指軸,其一端與手指尾部相連,另一端與手指控制機構相連(圖5)。

圖4 單手掌機構結構圖

圖5 手指結構圖
手指控制機構主要由氣動元件、氣管、旋轉杠桿機構、電磁閥等構成見圖6。氣動元件采用氣缸,氣缸通過氣缸座固定在手掌機構的手掌板上,氣缸驅動軸連接旋轉杠桿機構的一端,旋轉杠桿機構的另一端穿過手指軸固定于手指尾部;氣缸通過氣管與電磁閥連通,電磁閥控制氣缸輸出軸的伸出和縮回運動,伸出運動通過旋轉杠桿機構驅動手指頭向上運動,縮回運動通過旋轉杠桿機構驅動手指頭向下運動,從而實現手指指端的上下運動。

圖6 手指控制機構結構圖
雙手機構運行時的綜合表現為:通過電磁閥控制氣缸輸出軸的伸出和縮回,驅動旋轉杠桿傳動機構驅動手指指頭進行上下運動,實現了模擬手指上下敲擊琴鍵的功能。
彈鋼琴機械裝置的控制系統組成見圖7,主要由主機、I/O板卡、電磁閥、氣缸、氣泵、運動控制卡、伺服電機等組成。其中,主機、I/O板卡和運動控制卡是整個控制系統的核心部分,彈鋼琴功能的執行控制均由其完成,主機通過運動控制卡發送指令給伺服電機從而控制其旋轉速度及角度等參數,通過手臂旋轉實現手部的左右移動動作;主機通過I/O板卡發送指令給電磁閥從而控制氣缸伸出和縮回運行,通過推動旋轉杠桿機構實現手指的上下敲擊動作。

圖7 電控系統組成
開發者根據需要彈奏的音樂樂譜規劃出雙臂機構的旋轉運動步驟,通過編碼將其轉換為驅動雙臂機構運行速度、角度等參數的控制指令,預設于運動控制卡上。運行時,伺服電機接到運動控制卡發來的程序指令,產生脈沖控制伺服電機旋轉,從而帶動雙臂機構運行到指定位置。
選用的運動控制卡支持多達12軸直線插補、任意圓弧插補、空間圓弧、電子凸輪、電子齒輪、同步跟隨、虛擬軸、機械手指令等;采用優化的通訊協議可以實現實時的運動控制支持以太網,RS232通訊接口和電腦相連,接收電腦的指令運行,并可以通過CAN總線去連接各個擴展模塊,為整個系統的功能擴展提供基礎。
運動控制卡的應用程序可以使用VC,VB,VS,C++,C#等軟件來開發。程序運行時需要動態庫zmotion.dll。調試時可以把ZDevelop軟件同時連接到控制器,從而方便調試和觀察。
伺服電機選用交流伺服電機BH48-60CB040C-020000,輸出功率400 W,額定轉矩1.27 N·m,轉速3600 r/min,采用DSP數字電機控制方式,可以實現多種電機控制算法,可提供位置、速度、轉矩三種控制模式,能夠很好地滿足彈鋼琴機電裝置的功能需求。
開發者根據需要彈奏的音樂樂譜規劃出雙手機構手指上下運動步驟,形成每個手指敲擊動作的程序指令,通過I/O板卡發送指令給電磁閥,電磁閥與氣缸、起源的連接如圖8所示,電磁閥接到指令后,根據指令控制氣缸的伸出或縮回。伸出時,通過旋轉杠桿機構驅動手指端部向上運動;縮回時,通過旋轉杠桿機構驅動手指端部向下運動,從而實現敲擊琴鍵動作。

圖8 氣缸、起源連接原理圖
I/O板卡選用阿爾泰數據采集卡USB5538,擁有16路隔離數字量輸入(干接點、濕接點),16路隔離數字量輸出(集電極開路),具備DI數字量輸入功能;軟件支持VC、VB、C++Builder、Delphi、Labview、LabWindows/CVI、組態軟件等語言平臺驅動,工程級源代碼開放,可直接編譯通過,方便根據彈鋼琴機電裝置的功能需求進行開發。
氣缸采用SMC針型氣缸CDJP2T6-5D,為雙作用動力方式氣缸,缸徑6mm,標準行程5 mm,最大行程25 mm,作用力6.4 N,最大負荷19.8 N。氣缸尺寸和負載能力均可滿足彈鋼琴機電裝置的需求。
整體控制流程見圖9,彈鋼琴演奏的軟件開發者根據需要演奏的鋼琴曲曲目進行手部移動和手指敲擊運動的步驟規劃,根據規劃形成控制手部移動的伺服電機控制指令和控制手指敲擊的電磁閥控制指令,并在兩者間通過時序進行協同配合設計,完成兩者的有序融合。運行時,伺服電機控制指令通過運動控制卡發送給伺服電機,同時電磁閥控制指令通過I/0板卡發送給電磁閥,兩者協同控制,實現對樂曲的彈奏。

圖9 整體控制流程
設計的彈鋼琴機電裝置通過簡單的機電機構實現了模擬人手彈奏鋼琴的功能,具有一定的實際應用價值,可用于科技館、機器人技術展示館等科普活動。通過藝術設計為該機電裝置一個有科幻感的外形。從外觀上看上去有頭部、腹部、腿部等完整造型,就座于一臺鋼琴前,遠觀猶如一個未來世界的鋼琴家。設置一臺互動終端,可以是觸摸屏或平板電腦等,在終端上,觀眾可以通過按下虛擬畫面中的不同音符按鍵,讓機器人跟隨運動,彈出音符樂音,實現與機電裝置之間的互動,還可以選擇任一既定曲目,讓機電裝置進行彈奏表演。觀眾還可以近距離觀察機電裝置的具體機構及電控系統,揭開彈鋼琴機器人的神秘面紗。
該裝置還可用于學校、培訓機構等學習教育中,作為一個DIY機器人的教育案例,讓學生們在自己動手設計和制作機電裝置實現彈鋼琴功能的過程中,學習機械設計、電氣設計、電機的運用、氣動元件的運用等相關知識。
本設計的彈鋼琴機電裝置,通過雙臂和雙手的設計來模擬人彈鋼琴時的手部動作,通過伺服電機驅動雙臂機構的旋轉實現手部在一定范圍內的左右移動,通過氣缸驅動雙手機構中10個手指的上下運動實現手指對琴鍵的敲擊動作,兩者協同運作,能夠彈奏出鋼琴樂曲。機電裝置的整體結構設計簡單,電控系統成熟,具備一定的應用場景。