Simulink RT - Lookup-Table for Strings

5 次查看(过去 30 天)
Hey folks,
I´m actually trying to communicate with some industrial devices via TCP. The protocol is ASCII-based SCPI command structure. For that application I would like to create a lookup-table which takes a numeric value as an input/index and replies with the corresponding string (for example '*IDN?). Since strings are kind of accepted in Simulink but aren´t well handable, do you have any hints how this can be done? The solution needs to be code-generatable since I use a Speedgoat-machine on which the program runs.
Best
Jonathan
PS: Since I work on a campus license, I can use any available toolbox.

采纳的回答

Dimitri MANKOV
Dimitri MANKOV 2020-11-27
Hi Jonathan,
Which MATLAB release are you using? You could maybe try a construct based on String Constant and Multiport Switch blocks. String Constant blocks were introduced in Simulink in R2018a, and fully support code generation. For more information and examples about the usage of strings in Simulink, have a look here.
Best,
Dimitri
  1 个评论
johnnynoc4sh
johnnynoc4sh 2020-11-27
Thank you very much Dimitri for you support!
This is exactly what I tried in the first place. It kinda works, but isnt the most beautiful solution. But I found another option which might help other people out:
I use Stateflow charts which output the desired string. Remember to switch the chart action language from Matlab to C because strings are only supported for C action language.
Best

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by