Delaying an enumerated signal

19 ビュー (過去 30 日間)
Michael Joslin
Michael Joslin 2011 年 7 月 28 日
コメント済み: ICT 2024 年 9 月 13 日
I have a model that is sending out signals on a certain schedule. There are several merge blocks that combine some of my signals, however I have two signals that are arriving at the merge block at the same time. One needs to be delayed but I cannot simply put in a unit delay because they are enumerated signals. I get the following error:
'rpMDL/Behavioral Models/BCCR_EREV_Container/BCCR_EREV/MngBCCR_BatChargCntrl/MngBCCR_CntrlBatChargProcess/Unit Delay' cannot convert parameter X0 from data type 'double' to data type 'TeBCCR_e_ChrgSysMd' because conversion of parameters with enumerated data types is not supported
Is there a way to delay an enumeration signal without to add in some data type conversions?

採用された回答

Kaustubha Govind
Kaustubha Govind 2011 年 7 月 28 日
What have you entered as the Initial Conditions value on the block? If it is the default of '0', you need to change that to an enumerated value.
  2 件のコメント
Michael Joslin
Michael Joslin 2011 年 7 月 28 日
Aha! That works, thank you!
ICT
ICT 2024 年 9 月 13 日
For me, this does not work. Are there any other solutions?
I keep getting this error:
Data type mismatch. 'Input Port 1' of '<model>/Unit Delay2' expects a signal of data type 'double'. However, it is driven by a signal of data type 'MyEnum'.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeString についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by