ADAMS與Simulink聯合仿真(二)

ADAMS與Simulink聯合仿真(二)

在上一篇中設置好ADAMS向Simulink生成的工程後打開Matlab,先定位到ADAMS的工作目錄

一、輸入對應文件前綴的名稱(輸入錯誤會有修正提示)

這裏寫圖片描述

在裏面可以看到輸入輸出量,工作區會看到一些ADAMS的參數量

二、輸入adams_sys,會啓動simulink,並生成一個Model

這裏寫圖片描述
其中有兩個紅色的模塊分別爲S-Funtion和State-Space,用法和simulink是一樣的,這裏爲了簡單演示,通過一個Ramp模塊輸入驅動變量,即是通過ADAMS中的輸入狀態變量驅動旋轉驅動

三、點擊adams_sub,設置MSC Software

這裏寫圖片描述

默認是使用本地的模擬,Adams/Sover type選項選擇C++,Interprocess option選擇PIPE,選擇TCP話可以遠程調試,Animation mode選擇batch是在Simulink中調試,不調用ADAMS,選擇interactive是調用系統中的ADAMS進行聯合仿真,Simulation mode選擇continuous,若只選擇simulink調試,後面選項不用改,若是選擇聯合ADAMS仿真這要將下面的步長設置的和ADAMS中相同。

四、simulink仿真與聯合仿真區別

在設置好上面的參數後開始先進行simulink的單獨仿真Ramp設置的是18,仿真時間爲10秒,也就是旋轉半周,我的ADAMS模型是兩個旋轉驅動驅動兩個杆件,輸出的狀態變量參數爲兩個杆件相對與大地(缺省值)的X、Y軸的位移量。

這裏寫圖片描述

顯然這個兩個結構的X-Y位移圖是正確的,設置adams_sub的MSC Software,Animation mode選項選擇interactive選項,imulation mode選擇discrete(離散),進行simulink和ADAMS的聯合仿真,交互步長設置爲0.05。仿真過程中會啓動ADASM,沒啓動的話說明上面那一步錯了。

這裏寫圖片描述

ADASM與simulink的聯合仿真是離散的,調試值長一點的話,直線會變得圓滑,看個人使用,真正的聯合仿真效果還是很好的,通過我上一篇的一些函數簡紹,可以把一些接觸力,摩擦力,力矩等以狀態變量的形式表現出來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章