MATLAB/simulink_S函数

S函数是simulink动态系统的核心,可以采用m代码,C,C++等语言编写S函数,由一种特定的语法构成,用来描述并实现连续系统,离散系统以及复合系统等动态系统。S函数可以接收来自simulink求解器的相关信息,并对求解器发出的命令做出适当的响应

基础知识

simulink

simulink是MATLAB中的可视化仿真工具,基于MATLAB采用框图方式实现动态系统建模、仿真和分析的过程。每个simulink模块都有三个基本元素:输入向量,状态向量和输出向量。分别用u,x,y表示。
在这里插入图片描述
其中状态向量最为重要,可以分为连续状态,离散状态或两者混合状态,实际运用中多用离散状态。
在这里插入图片描述
simulink的仿真过程包含两个主要阶段:初始化运行阶段,初始化主要是设置一些基本参数,如系统输入输出个数,状态初值,采样时间等;运行阶段主要是计算输出,更新离散状态,计算连续状态等;
对系统仿真控制是通过系统模型与求解器之间建立对话的方式进行,simulink将系统模型、模块参数和系统方程传递给simulink求解器,求解器将计算出的系统状态与仿真时间通过simulink传递给系统模型本身,通过这样的交互作用方式完成动态系统仿真。在这里插入图片描述

S函数

过零

动态系统仿真过程中,过零是指系统模型中的信号或系统模型特征的某种改变,包括:1)信号在上一个仿真时间步长之内改变了符号。2)系统模块在上个仿真时间步长改变了模式。对于离散模块及其产生的离散信号不需要进行过零检测

直接馈通(direct feedthrough)

直接馈通:表示系统的输出可变

  • 14
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值