MATLAB做機器人仿真第一講:如何調用link函數

2020-12-14 程式設計師小白學開發

01MATLAB做機器人仿真,新手入門踩坑第一講,成功調用link函數

很多時候,我們新接觸一個行業,會遇到各種各樣的問題,這個坑,那個坑的,整理筆記留給後來新學的人。關於這個MATLAB中的link函數問題,我查了很多文檔,也沒有找到合適的解釋,摸索了一個下午,終於解決了,就給大家做個共享吧。

雖然在MATLAB界面還會出現一些紅色的警告,但是感覺已經很欣慰了,很高興了。

02版本說明

安裝 的MATLAB是2019b,破解版本的,自行安裝MATLAB Robotic box是不行的,需要重新再安裝,添加路徑進行安裝才行。

我的MATLAB自帶的robotic庫是無法使用link函數的。這困擾了我很久。終於找到問題的原因了。

成功運行的界面圖

03源碼

x1=-pi/2; a1=121.16; d1=191.99;

x2=0; a2=850.94; th2=82.19*pi/180;

x3=0; a3=482.6;

x4=pi/2; a4=133.35;

x5=-pi/2; a5=0; th5=pi/2;

x6=0; d6=380.9;

L(1)=Link([0 d1 a1 x1]); L(1).qlim=[-pi,pi];

L(2)=Link([0 0 a2 x2]); L(2).qlim=[-pi/6,pi/2];

L(3)=Link([0 0 a3 x3]); L(3).qlim=[-pi/2,pi/2];

L(4)=Link([0 0 a4 x4]); L(4).qlim=[-pi/2,pi/2];

L(5)=Link([0 0 a5 x5]); L(5).qlim=[-pi/2,pi/2];

L(6)=Link([0 d6 0 x6]); L(6).qlim=[-pi,pi];

robot6=SerialLink(L,'name','robot6','offset',[0 -th2 th2 0 -th5 0]);

%% 軌跡規劃-圓

Th=0:pi/60:2*pi;R=400;

for I=1:length(Th)

j=1:length(Th);

x(1,j)=1500;

y(1,j)=R*sin(Th);

z(1,j)=0+R*cos(Th);

end

for ko=1:length(Th)

TTr=[x(ko),y(ko),z(ko)];

TO(:,:,ko)=transl(TTr)*trotz(-90,'deg')*troty(0,'deg')*trotx(-90,'deg');

end

qz=ikine(robot6,TO,'pinv');

plot3(x,y,z,'r','LineWidth',2);

hold on;

plot(robot6,qz,'loop');

hold off;

困擾很久的問題,終於搞定了,滿滿的自信和成就感!這個周末很愉快。

04link函數調用錯誤原因和解決方法

link函數調用的話,會提示這樣的錯誤:link函數不支持,或者link函數不支持的double類型,其根本原因就是MATLAB仿真機器人的庫沒有安裝,我們要自行下載和安裝哦。

安裝成功後在界面輸入ver進行版本的查看即可,如上圖。

學無止境,我在研究機器人仿真,請加入我一起學習吧,需要安裝包的可以跟我聯繫,免費贈送哦。

相關焦點

  • MATLAB機器人仿真,調用link函數編譯錯誤以及解決方法詳解
    MATLAB做機器人仿真,必須要使用的link函數,調用錯誤以及解決方法MATLAB比較著名的仿真就是simulink,這個仿真使用起來還是比較簡單的,但是作為初學者的我,確實出現了不少問題,我將相關的問題記錄下來,方便後續開發使用。
  • Matlab函數大全
    : sim --- 仿真運行一個 simulink 模塊 sldebug --- 調試一個 simulink 模塊 simset --- 設置仿真參數 simget --- 獲取仿真參數 3.2 線性化和整理命令 : linmod --- 從連續時間系統中獲取線性模型 linmod2 ---
  • Coin3D+QT+VS仿真機器人開發調試錯誤第一講
    VS2017+QT+Coin3D讀取SolidWorks中的wrl模型調試錯誤第一講最近項目需求,需要做一套仿真軟體,由於單位的加密軟體存在,開發過程出現了一堆堆的坑,安裝vs2017缺少開發工具造成了其和qt搭建不起來相關的開發模塊。
  • 使用Signal Tap II採集到的數據進行Matlab仿真
    在使用FPGA進行無線通信或者進行信號處理時,一般按照這樣的步驟進行:(1)利用matlab進行浮點算法仿真本文引用地址:http://www.eepw.com.cn/article/201710/365698.htm(2)將matlab
  • 直觀的讀懂什麼是PID(附帶matlab仿真解讀)
    下面我們在matlab的仿真中看一下兩者的差異首先我們使用matlab自帶的PID模塊快速的建立一個模型假設一個溫度加熱的傳遞函數如模型所示首先我們設置P=1; I=0; =0仿真結果如下然後設置P=2; I=0; D=0仿真結果如下然後將兩個放在一起做一下對比藍色的為P=2
  • 算法工匠MATLAB專訓營:Matlab繪圖,小試牛刀
    可以明確的說網上的程序大多就是一個理論仿真,根本不考慮實際環境的因素。那這樣的程序是培養不了大家的算法思維的。而在這個程序裡,關於信號的捕獲、跟蹤、解調、交織解交織、解碼等內容都在程序裡面詳細寫了。大家在網上想找到這方面的程序,幾乎是白日做夢!再次強調這個程序可以用於產品的研發,因此需要大家仔細的閱讀,比較和其他理論程序的差異!比如第一章的內容和本章的其他程序。
  • 基於MATLAB軟體心跳呼吸模型建立與仿真設計
    2 跳呼吸模型仿真  2.1 正弦振蕩模型  通常情況下,在生命探測領域,心跳和呼吸模型可以用兩個正弦振蕩函數來表示:    其中,A1和A2分別為呼吸和心跳的振幅;w1和w2分別為呼吸和心跳的頻率;θ2是常數相位。
  • 基於Matlab/Simulink的風力機特性仿真
    採用matlab/Simulink進行風力機的仿真建模,模擬外界真實情況下,通過已知的λ和Cpmax,求得風機的轉速與風速之間的比例係數,在最佳比例係數下,實現風力機的最大功率捕捉,得到風力機的靜態仿真波形。
  • Matlab被禁的現實意義和解決方案
    matlab這些方面有個很大的好處就是文檔非常全,而且有全球許多人寫各種翻譯和支持文檔,而且數據文件支持做的很全,可以導入其他軟體產生的數據。這些功能對於大學生來說是很有價值的,但說到底不怕麻煩都可以替換,替換門檻也不高。
  • 基於Matlab數值計算引擎的三維可視化視景仿真技術
    仿真結果的可視化不僅能夠加快與加深技術人員對仿真變化過程的認識,而且可以發現通常數值信息很難發現的現象,獲得意外的啟發和靈感,從而縮短仿真的實驗周期,提高仿真效率,取得更好的仿真效果。視景仿真的實時性使研究人員在仿真運行過程中實時地監控系統,具備仿真交互能力。視景仿真技術應用在公司裝備研究具有以下幾方面的意義:1、直觀性和高效性。
  • Matlab如何調用動態連接庫DLL文件的函數?
    1、引言最近在開發一個項目時,已經用C語言寫好了主要算法部分,並將主要功能的實現以函數形式封裝到了動態連接庫DLL文件中,但客戶要求提供Matlab調用DLL函數的例子,因此,花了點時間研究了下Matlab語言中調用DLL函數的方法,並記錄下來以作後用。
  • Matlab如何調用動態連接庫DLL文件的函數?
    1、引言最近在開發一個項目時,已經用C語言寫好了主要算法部分,並將主要功能實現部分以函數形式封裝到了動態連接庫DLL文件中,但客戶要求提供Matlab調用DLL函數的例子,因此,花了點時間研究了下Matlab語言中調用DLL
  • matlab是什麼程式語言?matlab是程式語言嗎
    可以直接調用,用戶也可以將自己編寫的實用程序導入到MATLAB函數庫中方便自己以後調用,此外許多的MATLAB愛好者都編寫了一些經典的程序,用戶可以直接進行下載就可以用。二、matlab是程式語言嗎?嚴格的來說matlab不算是程式語言。只有你有C語言的基礎,Matlab就很容易。Matlab是邊解釋邊執行。
  • 哈工大、哈工程無法使用 MATLAB 軟體
    MATLAB 能做什麼? 2、MATLAB強大的作圖功能 MTALAB具有強大的3D繪圖功能,函數調用簡單,並且很多功能都以工具箱的方式可供應用,即使是沒有接觸過MATLAB,學會繪製3D圖,也很容易。
  • 美國禁止中國高校使用它的Matlab,我國應該獨立自主開發功能軟體
    什麼是matlab軟體呢?它有何作用?MATLAB的應用範圍非常廣,只要是學理工的都離不開這款軟體,MATLAB是美國MathWorks公司出品的商業數學軟體,用於數據分析、無線通信、深度學習、圖像處理與計算機視覺、信號處理、量化金融與風險管理、機器人,控制系統等領域。功能很強大,幾乎很多領域都可以用到。它主要有這些功能。
  • 如何在Gazebo裡仿真ROS機器人的SLAM建圖和導航
    三、SLAM建圖的仿真我們先進行SLAM建圖的仿真。在這個仿真中,我們將使用Gmapping算法,需要使用USB手柄來控制機器人在場景中進行移動,遍歷所有活動區域,建立環境地圖。這個圖案,是由很多條線段疊加而成,這些線段是機器人本體中心地面投影和每一個雷射雷達紅色障礙點的連線,也就是測距雷射飛行的軌跡,表示這條線段內部沒有障礙物。我們可以使用USB手柄遙控機器人移動,在場景裡巡遊,Gmapping會調用內部的SLAM算法,把整個場景的地圖都掃描出來。如果沒有USB手柄怎麼辦?
  • 中國多久可以寫出一套matlab?
    儘管我們天天都在喊我們如何如何厲害,當人家動真格了我們還是應該能夠意識到,我們跟美國的差距還是很大的,尤其是在科技和教育方面,潮水退去才知道誰在裸泳。我們必須正視這個差距,更要未雨綢繆地去做核心技術的投入。
  • 三門問題及matlab仿真驗證
    今天看到一個問題——三門問題,感覺挺有趣的,自己也親自上手利用matlab仿真模擬了一下,分享給大家。【三門問題matlab仿真驗證】通過matlab編程,每次模擬10000次,共模擬9次,代碼放在文末。通過上表仿真模擬的結果可以看出,結果確實是不換門的話,贏得汽車的機率是1/3;而換門的話,贏得汽車的機率是2/3。
  • MATLAB機器人仿真第二講:運行m文件的方法和編譯錯誤詳解
    比如我這裡的調用了MATLAB自帶的robottool,每次需要先打開robottool才行。如果你的m文件編譯也出現錯誤的話,一定要看m文件是否需要特定的MATLAB工具包,如果是的話,先打開,如我這裡需要先打開:startup_rvc工具箱,在工作區輸入該命令即可。如果打開後還未解決,那麼要將m文件的路徑切換為當前的工作區。
  • 【Matlab】Sound
    sound在matlab裡更多的並不是用於製作音樂,而是提醒和分析聲音背後的數學,物理規律為什麼說是提醒呢,因為有些比較複雜的程序,往往需要matlab運算很久才會有結果,這時候人一般是不會盯著屏幕等著出結果,而是走開先去幹其他事。這時候就需要matlab在運算完後發出提示,最好是聲音。所以sound在matlab裡更多是用於提醒程序已運行完,結果已得出(一般用beep函數)。