SolidWorks創建三維模型構建六自由度(DOF)系統的虛擬物理表現,然后使用NI cRIO-9024嵌入式實時控制器和六個NI 9512模塊開發實際裝配系統。
SolidWorks裝配圖CARMA機械臂
作者:Lisa Mosier - Square One Systems Design Inc.
行業:Manufacturing
產品:CompactRIO, NI SoftMotion開發模塊, NI 9512, LabVIEW
挑戰:在求解六軸機器人手臂的逆運動學方程后,無需裝配物理測試平臺,利用開發測試方程和NI LabVIEW VI的平臺,即可仿真測試運動性能并優化設計方法。
解決方案:使用LabVIEW NI SoftMotion模塊設計VI可以運行裝配文件并在CAD模型中進行仿真,在SolidWorks創建三維模型構建六自由度(DOF)系統的虛擬物理表現,然后使用NI cRIO-9024嵌入式實時控制器和六個NI 9512模塊開發實際裝配系統。
"我們探索了所有選項,選擇采用LabVIEW作為我們的控制編程工具。在參加了2009年的NIWeek全球圖形化系統設計會議后,我們了解許多全新的NI工具包和模塊,它們可能是滿足我們系統開發需求的良好解決方案。"
Square One是關注滿足更多用戶技術需求的機器人和自動化公司。我們利用多種技術,通過提供高精度的高級運動學定位系統,滿足物理科學研究員和軍事應用工程師的需求。將商業機器人和我們正在申請專利的三球機械臂集成到全新和現有的工作單元中,通過提高現有工業標準的效率和精度,幫助改進性能。
專業項目
三球機械臂允許目標位置在六個自由度內精確調節。三球機械臂的基本構造單元是“插槽”機制,它可以在垂直和水平方向調整,且可以在其他水平方向滑動。通過將這些插槽布置為三角架的形狀,就可以創建純運動學調節系統。Square One設計了基于三球的機械臂,讓檢測傳感器、夾具和操作員觸覺反饋的精確定位成為可能,這提高了目前無人駕駛地面車輛(UGV)的可用性。三球機械臂提高了工作封套和UGV檢測硬件的精度,因此讓它能夠挖掘和移動殘骸、檢查車輛車盤和完成大部分現在使用的機器人所無法完成的其他任務。這就是約束區域機器人手臂(CARMA)開發。
將這個項目作為提高設計流程效率并大幅擴展運動控制能力的機會,我們使用了NI原型開發設計工具。之前,我們的方法是完全在SolidWorks中設計定位系統,創建裝配用的總成裝配圖。在完成裝配之后,我們基于PC/104設計控制部分,在現有機械設計中滿足每個獨立項目所需的運動控制規范。將軟件開發步驟移到整個設計流程中更高位置讓機械設計包含控制硬件所需的傳感器和必要空間。通過結合軟件和機械設計,我們減少了開發提供過程中的迭代次數和修改次數。
我們的第一步是確定全新的控制方案。通過改變幾何參數讓我們的軟件更為模塊化,我們開發了運動控制方程的“邏輯”集合。能夠在任何給定的軸之間協調運動,從而大大擴展了三球的功能。另外,測試平臺對于驗證方程功能而言是十分重要的。在認識到僅僅為了測試而生成多個不同配置并不現實之后,我們轉而使用仿真軟件作為新技術的測試平臺。
在研究了現有軟件工具后,我們將選項縮小為The MathWorks, Inc. MATLAB® with Simulink®軟件和用于SolidWorks的LabVIEW NI SoftMotion模塊。我們在SolidWorks中完成了最初設計,使用MATLAB求解方程。到這里為止,我們只使用LabVIEW開發用戶界面。使用Linux可編程機器配置所有電機指令和控制;同時,我們再積極地搜索能夠將控制體系結構進行標準化的用戶友好的編程軟件。
我們探索了所有可用工具,選擇了采用LabVIEW進行控制編程。在參加了2009年的NIWeek全球圖形化系統設計會議后,我們了解許多全新的NI工具包和模塊,它們可以滿足我們的系統開發需求。LabVIEW能夠讀取運動軌跡的MATLAB代碼,LabVIEW NI SoftMotion模塊包含了電機控制和通過NI C系列驅動接口模塊用于連接所需的傳感器。LabVIEW VI與SolidWorks匯編文件之間的通信是整個項目中關鍵之處。因此,我們決定為三球機械臂和所有自動化系統開發,使用NI軟件和硬件作為設計解決方案。最后,我們決定使用LabVIEW函數組合求解之前在MATLAB完成的高階數學問題。
仿真
正如我們開發LabVIEW VI運行“邏輯”三球的運動方程求解一樣,我們在SolidWorks軟件中并行地完成機械設計。在完成VI和固體模型匯編模塊之后,我們開始了集成流程。使用LabVIEW工程包含運動控制VI,將SolidWorks匯編文件加入工程中。開始仿真流程、識別模型中的軸并通過VI訪問。通過幾天的培訓,我們理解了DS SolidWorks和LabVIEW之間的連接,開始實現系統仿真并創建了一個虛擬原型系統。
邏輯三球解決方案
我們運行用戶界面,測試運動控制VI以驗證其功能。我們發現不少軸在VI中被錯誤識別,但修正這些錯誤十分容易。此外,不少高級運動控制算法工作不正常,其原因是在代碼中遺漏或是使用不正確的符號(±)。如果沒有仿真,我們不可能在開發階段的早期發現這些錯誤。由于錯誤在仿真中發現,而不是在運行物理系統中發現,就避免了這些錯誤的嚴重后果。
CARMA解決方案
下一步是將仿真為CARMA項目的專用尺寸和運動需求進行定制。我們完成并適當擴展了SolidWorks模型。在LabVIEW工程中,工程結構讓我們可以打開全新文本文件詳細描述CARMA機械臂的尺寸以及運動的范圍極限。實際上,我們復制了現有的“邏輯”三球工程,重命名為CARMA,并將CARMA文本文本作為默認文件,在每次運行用戶界面時都會打開。成功的仿真幫我們的設計團隊將機械臂運動范圍實現完全可視化,更重要的是,我們能夠在SolidWorks模型中沿著所有旋轉軸測量角度。
結果
仿真過程讓我們能夠測試運動的極限條件,在裝配之前確定關鍵組件的尺寸。通過仿真創建并測試LabVIEW VI,讓過渡到為實際CARMA匯編模塊編寫控制變得容易。我們需要其他VI支持復雜的運動控制、機器視覺和自治系統特性,但是基本控制已經存在。在裝配組件之后,我們無需修改運行仿真的軟件,就可以操作最終實現的機械臂,這在Square One的歷史上是第一次。在早期和SolidWorks匯編模塊一起實現運動控制軟件,大大提高了設計流程的效率,我們還實現了在軟件開發設計中包含機械團隊的目標。