Simscape Multiby学习笔记5——在Multibody中建立控制器-驱动力-传感器
文章目錄
- 一. 給關節施加力和建立傳感器
- 二. 加入PID控制器
- 三.觀察運行結果
- 四. 給零件施加外部力
一. 給關節施加力和建立傳感器
建立完模型之后,我們最想要做的就是模擬系統在受力情況下是怎么運動的,這就是動力學仿真的真諦。上一節我們其實已經觀察了自由單擺在只受重力作用下的運動,其實就是一個正弦變動,由于沒有摩擦力,所以他會一直等幅振蕩。
接著上一節的內容,本次我們的目標是給單擺施加驅動力矩,同時記錄單擺的擺動位置和速度。在Multibody里面施加力和增加傳感器都是在關節當中進行的。
打開我們上一節的模型,雙擊打開Revolute Joint,像下面這樣設置
Internal Mechanics是施加彈性力(Spring Stiffness)與阻尼(Damping Coefficient),以前都學過的,彈性力與位移成正比,阻尼力與速度成正比(力是廣義力,包含力矩)這樣設置完之后其實就是一個標準的質量—彈簧—阻尼系統了,一個二階系統。
Actuation是驅動力,在Torque里面選擇Provided by Input,就是通過輸入力驅動,當然可以選擇直接給一個值的。
Sensing就是傳感器,這里勾選Position和velocity,位置和速度。
完事之后Revolute Joint就多出了幾個接口,分別是輸入力與輸出位置、速度。
加進去一個正弦信號,一個Simulink-PS Converter,一個PS-Simulink Converter,一個Scope,一個to workspace塊,連接起來。最后像下面這樣。
說明一下,所有的部件都可以在Simulink library里面找到,找不到就搜索,最快的是直接在模型里面打字,它會自己出來的,比如搜索To Worksapce模塊
這樣就加入了力和傳感器,Simulink-PS Converter和PS-Simulink Converter的作用已經說過了,是實現Simulink信號與Multibody信號的轉換,沒有這個東西它是不讓你連接的。
點擊運行,觀察三維視圖里面的真實運動,打開Scope觀察位移和速度的曲線,然后在Matlab Workspce里面可以使用導出的數據繪圖。這里我就不截圖了,很簡單。
二. 加入PID控制器
接下來是重頭戲,我們看如何加入PID控制器,控制輸入力矩,實現單擺的角度控制。
有了上面的基礎其實答案已經呼之欲出了,我們只需要像在simulink里面仿真一樣加入PID控制器、比較器就行了。只不過Simulink里面的Plant是建立的數學模型(傳遞函數或狀態空間或S-function別的什么東東),而Multibody里面是虛擬樣機。
直接給出連接關系,如下:
這里面PID控制器的參數調整采用里面提供的PID整定器,雙擊打開PID控制器,點擊Tune,打開PID Turner
PID Turner的頁面如下,TURNING TOOLS里面拖動兩個按鈕就可以調整輸出曲線。
調完之后點擊RESULT,點擊UPDATE Block,將參數更新到PID控制器。
三.觀察運行結果
點擊運行,看看效果。很快就調整到倒立位置了,也就是設立的參考輸入180度。
可以加一個示波器看看角度曲線。可以看到跟PID整定的曲線是一樣的,大家可以調整一下PID,看看變化。
四. 給零件施加外部力
上面我們是通過關節的設置,來實現給關節施加力的,那么能不能直接給零件施加力呢,答案是肯定的,這個時候需要用到External Force And Torque模塊。下面我們看看它的用法
拖進來一個External Force And Torque模塊,位置在這里
拖進來之后雙擊打開,如下設置,增加一個沿著x軸的力(復選框打鉤)。這里解釋一下,關于力的施加位置和方向,External Force And Torque模塊有一個輸出端口F(follower),連接到下一個坐標系。力的作用點就是下一個連上來的坐標系的原點,力方向就是沿著下一個練上來的坐標系的軸。
然后連接,把External Force And Torque的F連到pendulum的尾巴上去。也就是說給單擺的末端施加了一個始終垂直于單擺的力。在這個力的作用下就會形成繞轉軸的力矩,單擺就會擺起來。
運行之后看一下。
圖里面這個坐標系就是pendulum的尾巴坐標系,力的施加方向就是沿著這個坐標系的x軸的。
那么怎么施加力和力矩到任意一點呢?就很簡單了,首先需要在你想要施加力的位置建立一個坐標系,然后把External Force And Torque的F連到這個坐標系就行了。
總結
以上是生活随笔為你收集整理的Simscape Multiby学习笔记5——在Multibody中建立控制器-驱动力-传感器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: exure9 秘钥_AxureRP9.0
- 下一篇: 安装Sphinx