我是靠谱客的博主 独特戒指,最近开发中收集的这篇文章主要介绍1_simulink简单入门_simulink仿真PID控制,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1_simulink简单入门_simulink仿真PID控制
2_simulink搭建RCL_电阻电感电容模块


毕业前想去做物联网还是或者linux,结果玩了一年多的电机控制,早就深知matlab/simulink绕不过的,拖到现在,下班晚上再把大学自控做实验用的matlab捡起来,再去b站学习simulink。做控制,matlab/simulink是绕不过的,这是个很强大的仿真工具。

如果初学simulink,做电机控制的,我推荐b站的:CELEC(陈诚电气)
https://space.bilibili.com/493190982/video

姑且说是simulink是图形化的编程。那么编程学习最快的方式,就是边系统学习边实践边探索。

c语言采用面向对象思想实现的pid模块:
https://blog.csdn.net/qq_38190041/article/details/119276490

simulink的打开方式

  1. 在命令行窗口中直接输入simulink
  2. 在上方菜单栏主页中,点击simulink

创建新的模型

一般也就只会用到这个Blank Model。在这里插入图片描述

电气、 控制常用的库

在这里插入图片描述

  1. simulink
    这个是最重要的,基础的、数学的
  2. Simscape
    这个是电气、控制的常用库

这些库就是我们进行图形化编程的,拖拉拽的模块。我大概记录一些,不过还是多用用试试就晓得了。

  1. simulink/Commonly Used Blocks

    • Bus Creator:总线器,不同信号组合成一个输出信号(一个数据结构,像数组,结构体)
    • Bus Selector:与Bus Creator相反、分解。
    • Constant: 常数,恒定值。
    • Data Type Conversion: 数据转换器
    • Delay:延时模块。
    • Demux: 组合信号分解
    • Mux:多个信号组合
    • Discrete-Time Integrator: 离散积分器
    • Gain:增益,比例(比如在单位变换,系数)
    • In1: 生成子模块的时候,信号的输入
    • Integrator: 积分器
    • logical Operator: 逻辑与或
    • Out1: 子系统输出常用的输出信号
    • Product: 乘法器
    • Relational operator: 小于等于
    • stauration: 限幅饱和
    • Scope: 示波器,波形显示
  2. simulink/Continous:连续模块,积分微分,二阶积分,pid,传递函数

  3. simulink/Dashboard:人机交互的 界面相关的

  4. simulink/Discontinuities:只有Quantizer常用一点

  5. simulink/Discrete:离散形式的一些模块,做仿真z变换的用的较少。

  6. simulink/Logic and Bit Operations:简单的逻辑

  7. simulink/Lookup Tables:查表相关的函数

  8. simulink/Math operations:数学相关的,常用的,加减乘除等等

  9. simulink/Signal :信号相关的

  10. simulink/sinks:显示,保存等等的

  11. simulink/source:pwm,波等等的,阶跃

  12. simulink/user-Defined Functions:用户自定义

    • fcn: 最简单的
    • matlab function: 考虑采样,if else
    • S-Function:功能负载,卡尔曼滤波,最小二乘法。

一个简单仿真_PID

PID的仿真。用库里的PID模块,然后自己搭建一个PID模块。

首先需要大概会用到什么

  • 一个阶跃(Step)
  • PID模块(PID controller)
  • 传递函数(Transfer fcn)
  • 示波器(scope)
  • 求和(sum)

如果熟悉simulink的模块名字,可以直接在空白处,输入模块名字。
在这里插入图片描述
不熟悉,需要到模块库里找。

这样就搭建了一个针对这个传递函数的控制调节模型。
在这里插入图片描述

双击PID即可设置控制器参数,设置KP=26,KI=65,KD=0的波形:

在这里插入图片描述

如何搭建自己搭建一个简单的PID模块。
需要用的模块

  1. 增益
  2. 积分
  3. 微分
  4. 求和

在这里插入图片描述
上面是用matlab的模块,下面是自己搭的。然后看下波形对比,也是一样的:
在这里插入图片描述
最后可以把它生成一个subsystem。
在这里插入图片描述

如何对subsystem进行参数设置接口

  1. 先在增益模块中,将kp,ki,kd的值进行参数化
    在这里插入图片描述
  2. 对生成的subsystem右键进行Mask的创建
    在这里插入图片描述
  3. 编辑mask
    在这里插入图片描述
  4. 点击模块,就可以实现这样的效果了
    在这里插入图片描述

matlab,simulink需要多使用,才能用的熟。


被抛弃的写随笔公众号改写技术文章了,感兴趣的可以关注公众号:王崇卫

在这里插入图片描述

最后

以上就是独特戒指为你收集整理的1_simulink简单入门_simulink仿真PID控制的全部内容,希望文章能够帮你解决1_simulink简单入门_simulink仿真PID控制所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部