那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用MATLAB這把“利器”開發機器人

454398 ? 來源:電子發燒友網 ? 作者:MathWorks楊興 ? 2016-01-21 10:29 ? 次閱讀

機器人絕對是當前的一個熱門話題之一。從工業機器人到掃地機器人,從實驗室機器人到各種創新玩具機器人,機器人逐漸走進了大眾的視野,進入了普通人的生活。不管是技術發燒友還是普通消費者,都越來越多的把目光投向了機器人。隨著網絡眾籌的興起,技術創業的經濟門檻降低,一個又一個明星眾籌項目也激發了越來越多的技術愛好者從關注到實踐,紛紛投身機器人開發的懷抱。每個人都期待著自己開發的創新原型,能稱為下一個被投資人或公眾所矚目的焦點。

古人云,“工欲善其事,必先利其器。” 現在讓我們來看看如何使用MATLAB 這個“利器” 來幫助我們快速實現我們的創意

MATLAB 平臺

MATLAB 是全球知名的數據分析和處理軟件,這個紅色的二次曲面 LOGO 幾乎出現在每一所大學的教科書里。

如何使用MATLAB 這把“利器”開發機器人

圖1 MATLAB LOGO

但事實上,它不再僅僅是那個我們在學生時代所認識的僅僅用于數據處理與畫圖的“超級計算器”,它在行業內的應用遠比教育領域更為廣泛和深入。從下圖的工具箱結構可以窺知一二。可以看到右側的深藍色模塊,它也為各個專門的應用領域開發了一系列工具箱。

如何使用MATLAB 這把“利器”開發機器人

圖2 MATLAB 工具箱

MATLAB/Simulink 算法開發平臺也幾乎是汽車、軍工等行業進行控制算法設計的必備工具。基于 Simulink模型的建模、仿真、測試驗證以及代碼生成,這種基于模型的設計理念 (MBD)也正在替代傳統的手寫 C 代碼的開發流程,成為算法開發的主流與未來的趨勢。

如何使用MATLAB 這把“利器”開發機器人

圖3 基于模型的設計

那么,這對于開發機器人意味著什么呢?這意味著,你不僅可以擺脫繁復的 C 代碼編程,還可以借助 MATLAB 強大的工具箱系列,通過仿真來幫助你測試算法、優化參數等等。如果用戶購買了代碼生成工具箱,還可以提取所生成的嵌入式 C/C++ 算法函數,集成到自己外部的工程項目中去,如圖4左側箭頭,這也是商業產品開發的主流選擇。

電子發燒友《機器人技術特刊》,更多優質內容,馬上下載閱覽


MATLAB/Simulink Support Package

我這里主要想介紹一下免費硬件支持包: MATLAB/Simulink Support Package。它相當于是 MATLAB 與各種低成本硬件之間的橋梁。

下載安裝官方免費的 MATLAB/Simulink Support package,簡單設置好對應的板卡后,Simulink 框圖或者 MATLAB腳本便可以一鍵編譯下載到硬件運行了,如下圖右側箭頭。這對于快速實現早期創意非常有用,尤其是對小的開發團隊來說,可以將注意力更多的放到算法設計與開發上,而不是基本的 C 代碼實現。

如何使用MATLAB 這把“利器”開發機器人

圖4 從模型到實現

MATLAB/Simulink Support Package為一系列所支持的板卡提供了基本的驅動模塊,只需要在軟件界面上進行簡單的配置,就可以將實現框圖式的算法模型一鍵下載到硬件板卡上去,有助于我們快速實現早期創意,縮短原型開發周期。

通過它,我們可以很容易實現與這些硬件通訊,讀取數據到 MATLAB 環境進行分析和處理,輕松下載 Simulink這種框圖式的算法來實現各種有創意的應用。

如何使用MATLAB 這把“利器”開發機器人

圖5 MATLABSimulink Support Package

案例介紹

下面,我們使用 Arduino MEGA 2560來演示如何實現將模型一鍵下載到硬件。這是一個非常簡單的例子:使用光敏電阻來控制LED燈的明暗。

硬件連線

簡單的說就是利用光敏電阻與固定電阻串聯形成分壓電路,并將分壓電壓讀入Arduino,然后用這個值來輸出控制發光二極管的明暗。將分壓電壓值讀入Arduino的A1 引腳;將發光二極管的正極連接PWM的第二個引腳,如下圖所示。其它的基本連線不再繁述。

如何使用MATLAB 這把“利器”開發機器人

圖6 硬件連線圖

軟件準備

通過 MATLAB 主界面上的 Add-Ons 的 Get Hardware Support Packages向導,選擇所需要安裝的支持包。

如何使用MATLAB 這把“利器”開發機器人

圖7 安裝包下載入口

選擇 Arduino,根據向導提示下載或安裝支持包。

如何使用MATLAB 這把“利器”開發機器人

圖8 下載安裝向導

安裝完成后,打開Simulink Library Browser 中的Simulink Support Package for Arduino Hardware庫,如下圖。我們可以看到為 Arduino提供的一系列驅動模塊,從模塊的示意圖以及端口的符號,我們可以大概推測它的作用:從各種類型的板卡接口讀取或輸出信號

另外從左側樹狀圖可以看到,還提供了 Ethernet Shield 與 Wifi Shield 的驅動模塊。

如何使用MATLAB 這把“利器”開發機器人

圖9 Arduino 支持庫

建模

Simulink 建模簡單可以描述為模塊的拖拽與連線的過程。

我們需要從A1端口(分壓線接入)讀取分壓信號,所以從庫里拖入一個 Analog Input模塊,并雙擊設置端口號為1,設置采樣時間為 0.01 S。另外還需要輸出到 PWM的第二個引腳( LED連接處),所以拖入一個 PWM 模塊,并雙擊設置端口號為2。

為了簡化整個下載過程,我們這里對信號不做任何算法處理,直接將兩個模塊連接起來,如下圖。這也就意味著 LED 的亮度與光敏電阻狀態直接相關。

如何使用MATLAB 這把“利器”開發機器人

圖10 模型截圖

編譯下載

Simulink Support Package for Arduino Hardware支持幾乎所有的 Arduino 型號。在點擊紅色方框的按鈕編譯下載之前,需要通過配置頁面來指定當前所使用的 Arduino 板卡類型,如下圖。

如何使用MATLAB 這把“利器”開發機器人

圖11 設置Arduino板卡

確保 Arduino 與電腦相連,點擊上圖模型截圖中紅色方框的編譯按鈕,框圖將會自動生成C/C++ 代碼,并后臺自動調用 Arduino IDE 進行編譯下載到 Arduino板卡上去。

此時,你用手捂住光敏電阻,便會看到 LED 燈亮度的變化。

在線調試

對于 Arduino MEGA 2560等型號,還支持在線調試。在配置頁面,除了選擇型號外,如下圖設置為 ‘External mode’。

如何使用MATLAB 這把“利器”開發機器人

圖12 設置在線調試運行

點擊圖中的綠色仿真按鈕。

如何使用MATLAB 這把“利器”開發機器人

圖13 在線調試

此時,框圖同樣被生成代碼并編譯下載到 Arduino 上運行,同時 Simulink 模型運行,雙擊打開示波器 Scope 模塊實時看到當前所讀取的傳感器信號。這個數據也可以保存下載,做后期傳感器標定與分析。

如何使用MATLAB 這把“利器”開發機器人

圖14 信號波形

傳感器標定,也就是經常都需要將原始值進行線性或非線性縮放以及平移,得到有物理含義的數值,比如自定義的光照強度等級。如下圖,中間接入一個簡單的查表模塊進行線性縮放。

如何使用MATLAB 這把“利器”開發機器人

后續

支持一鍵下載的硬件除了舉例的 Arduino之還有很多,算法的設計也可以非常復雜。實際上,越是復雜的算法,才越能體現框圖式算法設計方法的優勢。

下載安裝對應的硬件支持包之后,幫助文檔里都會提供由淺入深的應用案例。如下圖是一個LEGO解魔方算法的一個案例。

如何使用MATLAB 這把“利器”開發機器人

圖15 LEGO解魔方算法模型

打開這個模型,點擊編譯,就可以把這個算法完整下載到 LEGO 機器人上去了,有興趣的可以自己親自動手試一試。

圖16 LEGO解魔方

結語

使用MATLAB/Simulink Support Package 相當于鋪平了從Simulink 到硬件實現的路,使得不擅長寫 C 代碼的人可以徹底擺脫代碼實現的困擾,借助 Simulink 平臺也能輕易的開發出更多有趣的應用來。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • matlab
    +關注

    關注

    185

    文章

    2981

    瀏覽量

    231015
  • 人工智能
    +關注

    關注

    1796

    文章

    47683

    瀏覽量

    240313
  • 機器人技術
    +關注

    關注

    18

    文章

    193

    瀏覽量

    31708
收藏 人收藏

    評論

    相關推薦

    鴻蒙機器人與鴻蒙開發板聯動演示

    鴻蒙機器人與鴻蒙開發板聯動演示,機器人的角色為迎賓機器人開發板負責人賓客出現監聽
    發表于 12-02 14:55

    matlab機器人

    請問一下機器人的計算工作是否用MATLAB在計算呢?能簡單說明一下嗎?
    發表于 05-30 16:58

    什么是工業機器人

    3個階段:70年代的萌芽期,80年代的開發期和90年代的適用化期。70年代是世界科技發展的一個里程碑:人類登上了月球,實現了金星、火星的軟著陸。我國也發射了人造衛星。世界上工業機器人應用掀起一個高潮
    發表于 01-19 10:58

    nao機器人與其他機器人的區別

    相比于之前的機器人,NAO機器人穿上人類的服裝,那就像是一個真人出現在我們面前似得,NAO機器人的四肢設計的非常的靈活,具有多個自由度的身體,使得NAO機器人能夠靈敏的行走以及參加一
    發表于 02-13 15:43

    第2章 機器人控制MATLAB 仿真程序

    第2章 機器人控制MATLAB 仿真程序
    發表于 09-24 11:34

    第3章 機器人控制MATLAB 仿真程序

    第3章 機器人控制MATLAB 仿真程序
    發表于 09-24 11:36

    第9章 機器人控制MATLAB 仿真程序

    第9章 機器人控制MATLAB 仿真程序.zip
    發表于 09-24 11:45

    機器人基礎書籍

    列舉部分學習過程中接觸的部分書籍,部分有中文版,部分有更新版本。1.機器人基礎書籍適合入門的書籍:機器人機器人建模規劃與控制機器人學、機器
    發表于 05-22 06:53

    請問未來機器人可以進行FPGA開發嗎?

    隨著人工智能技術的發展,機器人已經開始接管人類的部分工作,例如快遞、工廠作業、餐廳服務員甚至媒體編輯---紐約時報就聘請了一位機器人做總編。未來,機器人可以介入半導體設計開發嗎?例如,
    發表于 10-10 06:33

    淺談差速機器人的純軌跡跟蹤仿真

    差速機器人的純軌跡跟蹤仿真(Matlab)剛入門,有的地方不對,煩請大家指正。目錄差速機器人的純軌跡跟蹤仿真(Matlab)1 差速機器人
    發表于 09-01 08:11

    基于Matlab的開源六自由度協作機器人實驗平臺

    一前言針對機器人相關專業的教學需求,商飛信息科技開發出此開源六自由度協作機器人實驗平臺。該平臺有以下幾大特色機器人本體采用自主設計的3Kg負載六自由度協作
    發表于 09-07 07:10

    機器人簡介

    業、建筑業,或是危險的工作[1]。同時,機器人的研究和開發制造一直將下面三條原則作為機器人開發的準則。即:...
    發表于 09-07 06:05

    基于Matlab和VR技術的移動機器人建模及仿真

    利用 Matlab 建立移動機器人的動力學模型 ,在虛擬現實 (VR )環境下 ,實時仿真移動機器人路徑跟蹤的運動特性 ,為基于 Internet 的機器人遙操作試驗搭建了仿真平臺 。
    發表于 09-20 06:24

    基于MATLAB機器人運動仿真研究

    基于MATLAB機器人運動仿真研究:按照一定的要求對一種柱面坐標機器人進行了參數設計,討論了該機器人的運動學問題,然后在MATLAB 環境
    發表于 12-29 23:53 ?128次下載

    基于Matlab的機構與機器人分析資料下載

    基于Matlab的機構與機器人分析資料下載
    發表于 05-25 10:35 ?13次下載
    网络百家乐官网漏洞| 哪里有百家乐官网游戏下载| 立即博百家乐官网的玩法技巧和规则| 天地人百家乐现金网| 大发888客户端下载| 百家乐游戏平台架设| 威尼斯人娱乐城注册| 贞丰县| 百家乐官网专业赌| 钱柜百家乐的玩法技巧和规则| 爱拼国际娱乐| 澳门百家乐官网网上娱乐场开户注册 | 百家乐官网娱乐网站| 免费百家乐官网统计工具| 澳门百家乐赌场| 百家乐官网是骗人的| 百家乐官网玩法| 大发888网址是什么| 百家乐官网海滨网现场| 百家乐新庄| 丰城市| 澳门百家乐官网有限公司| 百家乐官网博彩网太阳城娱乐城| 免费百家乐预测软件| 百家乐官网桌子10人| 百家乐打线| 百家乐官网如何写路| 有百家乐的游戏平台| 旬阳县| 百家乐娱乐注册就送| 舟山星空棋牌首页| 百家乐官网看牌技巧| 百家乐轮盘技巧| 百家乐官网教父方法| 现金百家乐赌法| 百家乐官网视频下载| 澳门百家乐走势图怎么看| 瑞金市| 金鼎百家乐局部算牌法| 波音百家乐官网现金网| 百家乐赢钱秘籍鹰|