Reason for Simulink.BusElement objects no longer supporting the SampleTime property

2 次查看(过去 30 天)
Dear Users,
I would like to raise a question on the following update starting from 2020b. regarding the Simulink.BusElement objects no longer support the SampleTime property:
"Simulink.BusElement objects no longer support the SampleTime property
The SampleTime property of Simulink.BusElement objects is no longer supported.
BusElement objects that specify a sample time cause an error during compile. To remove the sample time specification from a BusElement object, set its SampleTime to -1."
I am wondering why this has been established, since this modification makes serious incompatibility issues with respect to codes developed with earlier versions. I would like to grasp the rationale for this decision to understand whether this change helps solving hidden issues occurring before.
Thank you very much,
Stefano
  2 个评论
Andrea Colagrossi
Andrea Colagrossi 2023-1-20
I have the same doubt as the one made by Stefano. Defining the SampleTime in Bus Objects is common practice for space code production according to SAVOIR standards for automatic code generation.
Michele Bechini
Michele Bechini 2023-1-20
I struggled with the very same issue without finding a straightforward solution! I updated to 2021b, and now my code (that was compliant with SAVOIR standards) is completely broken... Is there a reason for this change in the SampleTime philosophy?

请先登录,再进行评论。

采纳的回答

Amal Raj
Amal Raj 2023-3-15
The decision to remove Simulink's SampleTime property. BusElement objects were made to make it easier to handle sample times in bus signals. The use of sample times in bus signals can be complicated and error-prone, particularly when dealing with heterogeneous signals with varying sample times. By enforcing a consistent sample time across all elements of a bus signal, the removal of SampleTime from BusElement objects simplifies the handling of sample times in bus signals.
The change was also made to align the behavior of Simulink.BusElement objects with Simulink.Signal objects, which also do not support the SampleTime property. This makes the handling of sample times more consistent across different types of signals in Simulink.
Although this change may cause incompatibility issues with codes developed in earlier versions, it is necessary to ensure consistency and simplify the handling of sample times in bus signals. Users can modify their codes to remove the SampleTime property from BusElement objects to ensure compatibility with the updated version.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Component-Based Modeling 的更多信息

产品


版本

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by