Your browser does not support script

六大領域

搜尋相關文章

搜尋

物理建模與機器人

使用MapleSim模擬仿人NAO機器人


 
 
NAO機器人是由Alderbaran Robotics公司所開發具25自由度之小型人形機器人,其高度為58公分,常被使用於程式教學以及作為工程師與軟體開發者機器人應用的實驗平台。NAO 機器人最近甚至被一財務機構使用作為銀行員!
Maplesoft 公司擁有超過25年以上開發符號運算軟體Maple的歷史,其多領域建模軟體MapleSim更於近幾年被開發,借助Maple的符號運算技術讓跨領域建模更容易與快速。由於NAO機器人的風潮與發展性,Maplesoft工程師決定於MapleSim軟體中建立NAO機器人模型,讓Maple與MapleSim的優點發揮到淋漓盡致。
 
 
建立模型
 
NAO 是一個擁有25自由度高複雜度的多體機構。透過MapleSim的「多體元件庫」,Maplesoft工程師使用Denavit-Hartenberg (DH)轉換定義機器人的關節坐標系。接著再匯入NAO 的CAD模型,並進一步定義體重、轉動慣量以及身體質心。Maplesim為一實體建模系統,此模型圖密切對應到NAO實體的模型,請見圖一。

伺服馬達出現在每一個關節以驅動運動,來自控制器的信號則觸發馬達重新定位每個關節。總之,這些個體伺服馬達決定NAO 如何移動。
 
圖一: NAO 機器人的多體模型
 
使用MapleSim的自定義元件功能,並提供摩擦與反作用力的控制方程式,工程師也可以模擬機器人腳與地板的接觸。這些元件被包含在模型中與地面接觸的腳底上。

MapleSim 同時擁有電池元件庫可產生 NAO機器人的Li-ion 電池模型,故電池行為以及它如何與系統其他部分的互動也可被模擬。

傳感器可將從Aldebaran Robotics Choregraphe™取得之每個關節的資料藉由時間查找表格匯出至MapleSim。這些資料則被使用為每個關節之命令信號,這個模型也會反應與實體機器人相同的結果,例如,MapleSim中的模型可熟練地表現實體機器人的太極拳動作。

教育Nao 新的把戲

建立模型之後,Maplesoft工程師進一步想了解他們是否不僅可正確模擬NAO的行為,還可教它做一些新的事情。

使用MapleSim萃取並分析模型運動數學方程式的能力以及它的多體機構分析工具,Maplesoft 工程師決定使用符號運算的方式求解機器人手臂的動作的逆運動學問題。有了這個解法,他們可以計算置放手臂到任何位置所需的關節運動。他們採用這個資訊新增自定義元件到模型中,並計算到達目標終點位置所需要的運動模型,然後教虛擬的NAO去畫。

他們建立允許人類使用滑鼠描繪形狀、圖像或文字的應用程式,描繪的內容會被分析以決定線的坐標,然後資料匯入模型中。結果為何? NAO 移動它的手臂並繪出一樣的東西!

利用MapleSim解決逆運動學問題的能力,Maplesoft的工程師們還教它各種舞蹈、打排球,以及追踪四軸飛行器等新花樣。

圖二: 各關節的伺服馬達驅動機器人手臂的運動
圖三: 使用以方程式為基礎的自定義元件模擬腳與地板接觸的點

為什麼有趣?

如果您正在從事機器人的研究或設計計畫,那麼了解多領域間的交互作用就會是很重要的事。如同NAO範例所示,使用MapleSim多領域建模平台,您將可以把計畫中的各個方面匯集到同一個環境:
 
  • 3D多體建模:利用3D多體建模、模擬及可視化能力的優點
  • 模型參數化:方便存取系統參數來快速套用設計變更及思考一系列的設計或是產品
  • 多領域支援:增加具馬達、控制器及電池之精確模型的動力機械系統
  • 虛擬測試與分析:探索系統層級的行為和多領域子系統間的交互作用,而不需要打造昂貴且不可預測的實體原型
  • 元件尺寸調整:輕鬆運行批次模擬和平行處理,並且收集可協助元件尺寸調整的數據
  • 全面的連結:利用直接連結方程式和完整程式語言來拓展相同模擬模型成為模型設計和軌跡優化任務的一部份
  • 最佳化程式代碼:從模型產生高度最佳化的c-code,提供模型化基礎控制設計的必要部份

圖四: 使用逆運動學教NAO繪製一模一樣的圖形軌跡

 
 

 

 

TOP