用MATLAB b的simscape对倒立摆进行仿真

时间:2024-03-24 17:00:43

标题MATLAB学习笔记(一):倒立摆的Simscape建模与仿真

  • 在simscape里对倒立摆进行物理建模
  • 倒立摆的分析和控制器的设计
  • 控制器的建模与仿真
  • 仿真结果
  • 资料与参考

一.在simscape里对倒立摆进行物理建模

1.打开MATLAB软件,在命令窗口输入smnew进入simscape仿真环境
用MATLAB 2018b的simscape对倒立摆进行仿真
用MATLAB 2018b的simscape对倒立摆进行仿真 这个就是simscape的环境了
2.打开library browser,找到里面的simscape

用MATLAB 2018b的simscape对倒立摆进行仿真
我们可以从里面吧我们需要的模块都先放上面的仿真环境
从joints里面找到旋转副和滑动副(待用)
用MATLAB 2018b的simscape对倒立摆进行仿真

1.下一步我们先对小车、滑轨、摆杆进行搭建(这一步的难点在模型的坐标变换关系,各位小伙伴们可以在这之前好好去研究一下,因为这个一下也说不清楚)

1.小车
用MATLAB 2018b的simscape对倒立摆进行仿真
这里一定要注意坐标模块B,F的连接关系,下图是参数设置
用MATLAB 2018b的simscape对倒立摆进行仿真
2.摆杆(这个和小车的步骤一样,只是参数设置不一样)
用MATLAB 2018b的simscape对倒立摆进行仿真
L,W,H这里我用的是蒙版功能你们可以去了解一下(mask)
L=0.5,W=H=0.05
3.滑轨可以不要(这个你们就自己去探索了,这个对仿真没有影响只是看起来好看而已)

2.接下来我们就将小车和摆杆通过旋转副和旋转副连接起来

连接好了以后整体效果是这样
用MATLAB 2018b的simscape对倒立摆进行仿真
参数汇总
用MATLAB 2018b的simscape对倒立摆进行仿真
还有那个PS-Simulink模块的参数这个很关键,我当时就是在这里搞了好久
涉及到时间的函数信号,大家可以这样设置
用MATLAB 2018b的simscape对倒立摆进行仿真

到此物理模型就建完啦!!!

二.控制器的建模与仿真

接下来我们就给我们的物理模型添加控制器
对于一阶倒立摆其控制方法有很多,经典控制(传递函数)、现代控制理论(状态空间方程)等等都可以建立很好的控制模型,我们这里是直接用PD控制器对其进行控制实现。
用MATLAB 2018b的simscape对倒立摆进行仿真

三.仿真结果

如果上面搭建的没有问题的话,就可以进行仿真了
用MATLAB 2018b的simscape对倒立摆进行仿真
用MATLAB 2018b的simscape对倒立摆进行仿真

四.资料与参考

1.simscape入门
2.用Simscape实现三维物理仿真(四)——用PID控制倒立摆系统
3.Advanced控制理论】8.5_线性控制器设计_轨迹跟踪(Follow a Desired Path)
4.使用Simscape仿真单摆和双摆
5.Simscape Multibody —— Revolute Joint的使用6.Simscape/Multibody/Frames and Transforms坐标系使用详解

五.总结和感谢

倒立摆是小伙伴们学习控制的一个很好的练手模型,希望大家和我多多交流我们一起学习。后期我打算尝试一下其他的控制方法。
在此也要感谢以上参考资料博主们的付出,也请大家多多关注,如有问题或者更好的仿真方法也请您和我交流,我有时间一定第一时间回复您!!!