MDLEMOROSSING
更新零交叉向量
必需的
不
语言
C,C ++
句法
#define mdl_zero_crossingsvoid mdlzeroprossings(SimStruct *s)
参数
-
s
-
代表S功能块的SIMSTRUCT。
描述
仅当S函数进行零交叉检测时,才需要提供此可选方法。实施零交叉检测通常需要使用零交叉和模式工作向量来确定何时发生零交叉以及S函数的输出应如何响应此事件。这MDLEMOROSSING
方法应使用S-功能的零交叉向量来更新
。SSGETNONSMPLEDZC
您可以使用可选的MDLEMOROSSING
当您的S功能已注册时连续_sample_time
并没有零采样(零)(ssgetnumnonsampledzcs(s)> 0
)。这MDLEMOROSSING
常规用于提供Simulink金宝app®带有信号的发动机将用于零交叉点。这些通常是
连续进入S功能的信号
内部生成的信号通常在不连续性中发生零的信号
mdlOutputs
因此,使用零交叉信号来定位不连续性,并在零交叉点处结束当前时间步长。为了向发动机提供零交叉信号,MDLEMOROSSING
更新ssgetnonsampleszcs(S)
向量。
例子
例如,请参阅sfun_zc_sat.c
。可以在此中找到此示例的详细说明零交叉。