Simulink中步长、powergui采样时间、模块采样时间、控制周期的关系

最近在搭模型的时候,对simulink中的各个“时间”产生了概念上的混淆,网上的资料也是鱼龙混杂,看了之后更是一知半解。因此本文针对Simulink中的各个时间做一个概念上的总结和辨析,也算是为后人避个坑。

仿真步长

步长是matlab仿真时运算每步的时间,在Simulink中可以针对离散系统和连续系统,选择性的设置定步长仿真和变步长仿真。设置的渠道在下图。

这里介绍几个概念:

  • 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。
  • 仿真补偿模式
    1. 定步长仿真:求解器按照固定步长来进行仿真,这个步长可以根据系统的精度来进行设置。步长越小,精度越高,采样步长就越多,仿真一次需要的时间就越长。
    2. 变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测,变步长系统Matlab会不断迭代缩小步长,直到结果满足误差要求为止,具体的采样点的个数有误差精度来决定。

总体来说,步长反应的时系统描述的精度,步长越小,系统的精度越高,反映在曲线上就是曲线采样点越多,曲线越平滑。用硬件的思想来理解的话,这个步长可以等效为主频,即每一个步长周期等效为处理器的时钟周期。

控制周期

这个问题在搭建控制系统模型仿真中会遇到,模拟负责控制的单片机发指令,隔一段时间发一次指令,因此就有了控制周期,也可以用控制频率表示。表示完成一次控制所需要的时间,比如对于电机的FOC控制来说,电机的控制周期就是进行一次矢量控制的时间,即控制周期等于开关管的开关频率。

模块采样时间

既然是模块的采样时间,那么该系统一定是个离散系统。采样是数据更新的时间,控制的核心是反馈,控制器需要系统的输出才能给出下一步的控制指令,但是系统输出是一个连续信号,但是我们需要的是一个离散信号,因此在测量时就涉及到采样频率,也就是我多久测量一次系统的输出。同样以上述电机为例,这个采样时间可以理解为电机三相相电流的采样周期。值得注意的是,采样周期要小于控制周期,这样才能保证系统稳定运行。

Powergui的采样时间

当你的系统如果用到了电气元件,就需要在仿真中配置Powergui模块。powergui的采样时间,指的是整个电气模型的数据更新时间长短,具体来说指的是电气信号的采样时间,比如电源。powergui的采样时间越短,则说明Simulink描述电气模型描述的越准确。同时powergui的设置是不影响非电气信号的,两个或两个以上的采样时间设置,若同时作用在同一个模块上,以最大的为准。

各模块的关系

控制周期>模块的采样时间/powergui的采样时间>仿真步长时间

Simulink中步长、powergui采样时间、模块采样时间、控制周期的关系相关推荐

  1. python时间模块提取时间_【转载】python自动提取文本中的时间(包含中文日期)...

    import re import chardet from datetime import datetime,timedelta # 匹配正则表达式 matchs = { 1:(r'\d{4}%s\d ...

  2. simulink中Bus creator与Demux模块有什么区别啊?

    看了帮助,仍然不能理解,求个大佬通俗解释一下

  3. matlab 白噪声模块,simulink中白噪声设置

    已知白噪声譜为 S0,如何生产随即数序列? 遇到问题: 1,用 simulink 中的 Band-Limited White Noise 模块,设置 Noise Power 为 S0, 可是为什么 S ...

  4. python学习之老男孩python全栈第九期_day019知识点总结——collections模块、时间模块、random模块、os模块、sys模块...

    一. collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:namedtuple.deque.Counte ...

  5. 时间模块,os模块,sys模块

    时间模块 和时间有关系的我们就要用到时间模块.在使用模块之前,应该首先导入这个模块. #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time( ...

  6. Matlab/Simulink中的S函数模块嵌入人工智能、神经网络算法设计仿真案例详解(以基于RBF神经网络算法的VSG转动惯量自调节为例)

    参考文献 An improved virtual synchronous generator power control strategy  Deep reinforcement learning b ...

  7. SQL Server 查找统计信息的采样时间与采样比例

    SQL Server 查找统计信息的采样时间与采样比例 原文:SQL Server 查找统计信息的采样时间与采样比例 有时候我们会遇到,由于统计信息不准确导致优化器生成了一个错误的执行计划(或者这样表 ...

  8. 雷达篇(九)雷达中的“快采样”和“慢采样”

    雷达一般在三维球坐标系当中测量目标的分布情况,分别对应着目标的距离.方位角和俯仰角:通过对其回波信号进行相应的信号处理就可以得到相应距离.多普勒和波达角.在对目标进行处理之前,首先要先对目标回波信号进 ...

  9. ansys workbench17.0 lsdyna模块设置时间步长

    笔者在通过workbench中的lsdyna模块计算显式动力学分析时,遇到了得出结果时间步长过长的问题.由于受fluent思维的影响一直想改变分析设置的时间步长设置,但是一直找不到,今日通过看另一位大 ...

  10. 普中科技51单片机的ADC采样电位器功能实现以及特点

    ADC模数转换的目的: **单片机能够接受和处理的数据都是离散的数字量,而不是连续的模拟量,**就和机器语言不能和普通语言一样通用,要先转换成单片机能够接受的数据,才能进行对模拟量数据(比如,温度,受 ...

最新文章

  1. Nature综述: 蓝藻水华的形成机理及防治动态
  2. java继承 映射_hibernate继承关系映射和java反射机制的运用
  3. Matlab中的文件读取函数
  4. IO的几种分类(详细)
  5. html知识笔记(三)——img标签、form表单
  6. mongoose更新数据,如果这条记录不存在,则直接变为新增
  7. 1005 继续(3n+1)猜想 (25分)
  8. gulp 批量添加类名 在一个任务中使用多个文件来源
  9. 阿里将开源进行到底!
  10. linux 静态连接失败,Windows7下archlinux静态网络配置错误连不上网怎么办?
  11. Qt_我写过的bug
  12. python写彩票程序30选7_写一个彩票程序:30选7
  13. 汉字编码对照表(gb2312/Big5/GB2312)
  14. 隐藏计算机关机键,关机快捷键有哪些?电脑Windows快捷关机最全方法图文详解
  15. LUP分解法求解线性方程组
  16. 微信小程序(沧海一笑)
  17. 什么是数据安全,为什么它很重要?
  18. 四足机器人(一)----MATLAB simulink对四足机器人物理建模
  19. 如何使用python进行自动网上考试
  20. 【寒假每日一题】洛谷 P2404 自然数的拆分问题

热门文章

  1. SAP中“成本构成分解成本核算为零”是什么原因导致的
  2. linux centos 环境下Device eth0 does not seem to be present,delaying initialization. 问题处理
  3. 业务,大数据监控平台搭建
  4. 英语语法快速入门1--简单句(附思维导图)
  5. 68pin SCSI接头针脚排序
  6. 华为eNSP静态路由下一跳实验
  7. 什么是功能性测试?-Alltesting|泽众云测试
  8. IT大学生应该经常浏览的十大网站
  9. python输出数字三角形_python 数字三角形
  10. NAS媒体库资源归集整理工具nas-tools