主要内容

S函数遵守ModelOperatingPoint

ModelOperatingPointC MEX s -函数的遵从规范

和matlab一样®s函数,你的C MEX s函数代码必须通知Simulink金宝app®S函数的遵守情况ModelOperatingPoint特征。您可以使用S-Function API来完成此任务,ssSetOperatingPointCompliance

在大多数情况下,将遵从性指定为默认值就足以保存和恢复必要的状态数据。要指定默认遵从性,请添加以下行:

ssSetOperatingPointCompliance(年代,USE_DEFAULT_OPERATING_POINT).

选项如下:

设置 结果
OPERATING_POINT_COMPLIANCE_UNKNOWN 这是所有s函数的默认设置。对于s函数不使用PWorks, 金宝appSimulink保存并恢复默认的模拟工作点(见USE_DEFAULT_OPERATING_POINT),并发出警告,告知用户这一假设。另一方面,在保存和恢复过程中,如果遇到金宝app使用的s函数,Simulink会报告错误PWorks
USE_DEFAULT_OPERATING_POINT 这个设置指示Simulink在保存和恢复时,将金宝apps函数作为一个内置块来处理ModelOperatingPoint对象。此设置保存连续状态、非划痕Dworks和过零信号信息
USE_EMPTY_OPERATING_POINT

此设置通知Simulink s函数没有任何金宝app仿真状态。使用此设置,不会为该块保存任何状态信息。该设置主要用于使用的“接收”块(即没有输出端口的块)PWorks或者dwork存储文件或图形窗口的句柄。

请注意

如果s函数寄存器任何离散或连续状态或过零信号,则不允许此设置。

DISALLOW_OPERATING_POINT 这个设置通知Simulink s函数不允许金宝app保存或恢复其工作点。金宝app当您试图保存或恢复时,Simulink报告一个错误ModelOperatingPoint包含这个s函数的模型的对象。如果s -函数与第三方库通信且状态序列化不可能,则可以使用此设置。
USE_CUSTOM_OPERATING_POINT 这个设置通知Simulink s功能已经金宝appmdlGetOperatingPointmdlSetOperatingPoint方法。

对于s函数的使用PWorks -函数必须使用自定义金宝appmdlGetOperatingPointmdlSetOperatingPoint方法。下面的语句说明了正确的格式。

mxArray* mdlGetOperatingPoint(SimStruct* S) void mdlSetOperatingPoint(SimStruct* S, const mxArray* inSS)

有关如何实现这些方法的示例,请参见使用s函数API的自定义代码和手动编码块

另请参阅

|||||

相关话题