機器人絕對是當前的一個熱門話題之一。從實驗室機器人到各種創(chuàng)新玩具機器人,越來越多的技術愛好者從關注到實踐,紛紛投身機器人開發(fā)的懷抱。
工欲善其事,必先利其器。
MATLAB/Simulink算法開發(fā)平臺作為汽車、軍工等行業(yè)進行控制算法設計的必備工具,基于Simulink模型的建模、仿真、測試驗證以及代碼生成的設計理念也正在替代傳統(tǒng)的手寫C代碼的開發(fā)流程,成為算法開發(fā)的主流與未來的趨勢。
這對于開發(fā)機器人意味著什么呢?
你不僅可以擺脫繁復的C代碼編程,還可以借助MATLAB強大的工具箱系列,通過仿真來幫助你測試算法、優(yōu)化參數(shù)等等。如果用戶購買了代碼生成工具箱,還可以提取所生成的嵌入式C/C++算法函數(shù),集成到自己外部的工程項目中去,這也是商業(yè)產(chǎn)品開發(fā)的主流選擇。
MATLAB/SimulinkSupportPackage
MATLAB/SimulinkSupportPackage為一系列所支持的板卡提供了基本的驅動模塊,只需要在軟件界面上進行簡單的配置,就可以將實現(xiàn)框圖式的算法模型一鍵下載到硬件板卡上去,有助于我們快速實現(xiàn)早期創(chuàng)意,縮短原型開發(fā)周期。
通過它,我們可以很容易實現(xiàn)與這些硬件通訊,讀取數(shù)據(jù)到MATLAB環(huán)境進行分析和處理,輕松下載Simulink這種框圖式的算法來實現(xiàn)各種有創(chuàng)意的應用。
從模型到實現(xiàn)
使用MATLAB/SimulinkSupportPackage相當于鋪平了從Simulink到硬件實現(xiàn)的路,使得不擅長寫C代碼的人可以徹底擺脫代碼實現(xiàn)的困擾,借助Simulink平臺也能輕易的開發(fā)出更多有趣的應用來。
案例介紹
使用光敏電阻控制LED燈
硬件:ArduinoMEGA2560
Step1:硬件連線
利用光敏電阻與固定電阻串聯(lián)形成分壓電路,并將分壓電壓讀入Arduino,然后用這個值來輸出控制發(fā)光二極管的明暗。將分壓電壓值讀入Arduino的A1引腳;將發(fā)光二極管的正極連接PWM的第二個引腳,如下圖所示。
硬件連接圖
Step2:軟件準備
通過MATLAB主界面上的Add-Ons的GetHardwareSupportPackages向導,選擇所需要安裝的支持包。
安裝包下載入口
選擇Arduino,根據(jù)向導提示下載或安裝支持包。
下載安裝向導
安裝完成后,打開SimulinkLibraryBrowser中的SimulinkSupportPackageforArduinoHardware庫,如下圖。我們可以看到為Arduino提供的一系列驅動模塊,從模塊的示意圖以及端口的符號,我們可以大概推測它的作用:從各種類型的板卡接口讀取或輸出信號。
另外從左側樹狀圖可以看到,還提供了EthernetShield與WifiShield的驅動模塊。
分揀機器人Arduino支持庫
Step3:建模
Simulink建??梢院唵蚊枋鰹槟K的拖拽與連線的過程。
物流分揀機器人ipo我們需要從A1端口讀取分壓信號,所以從庫里拖入一個AnalogInput模塊,并雙擊設置端口號為1,設置采樣時間為0.01S。另外還需要輸出到PWM的第二個引腳,所以拖入一個PWM模塊,并雙擊設置端口號為2。
為了簡化整個下載過程,我們這里對信號不做任何算法處理,直接將兩個模塊連接起來,如下圖。這也就意味著LED的亮度與光敏電阻狀態(tài)直接相關。
模型截圖
Step4:編譯下載
國產(chǎn)分揀機器人排行榜SimulinkSupportPackageforArduinoHardware支持幾乎所有的Arduino型號。在點擊紅色方框的按鈕編譯下載之前,需要通過配置頁面來指定當前所使用的Arduino板卡類型。
設置Arduino板卡
確保Arduino與電腦相連,點擊上圖模型截圖中紅色方框的編譯按鈕,框圖將會自動生成C/C++代碼,并后臺自動調用ArduinoIDE進行編譯下載到Arduino板卡上去。此時,你用手捂住光敏電阻,便會看到LED燈亮度的變化。
Step5:在線調試
對于ArduinoMEGA2560等型號,還支持在線調試。在配置頁面,除了選擇型號外,如下圖設置為“Externalmodel"。
設置在線調試運行
分揀機器人應用的現(xiàn)狀點擊綠色按鈕開始仿真。
此時,框圖同樣被生成代碼并編譯下載到Arduino上運行,同時Simulink模型運行,雙擊打開示波器Scope模塊實時看到當前所讀取的傳感器信號。這個數(shù)據(jù)也可以保存下載,做后期傳感器標定與分析。
生產(chǎn)分揀機器人企業(yè)信號波形
傳感器標定,也就是經(jīng)常都需要將原始值進行線性或非線性縮放以及平移,得到有物理含義的數(shù)值,比如自定義的光照強度等級。如下圖,中間接入一個簡單的查表模塊進行線性縮放。
支持一鍵下載的硬件除了舉例的Arduino之還有很多,算法的設計也可以非常復雜。實際上,越是復雜的算法,才越能體現(xiàn)框圖式算法設計方法的優(yōu)勢。
下載安裝對應的硬件支持包之后,幫助文檔里都會提供由淺入深的應用案例。如下圖是一個LEGO解魔方算法的一個案例。
LEGO解魔方算法模型
快遞分揀機器人現(xiàn)場打開這個模型,點擊編譯,就可以把這個算法完整下載到LEGO機器人上去了,有興趣的可以自己親自動手試一試。
垃圾分揀機器人研制成功順豐自動分揀機器人分揀機器人有哪些