Simulink - TCP/IP Send / Receive Variable Size

3 vues (au cours des 30 derniers jours)
johnnynoc4sh
johnnynoc4sh le 7 Juil 2020
Commenté : johnnynoc4sh le 14 Juil 2020
Dear all,
I want to implement a Modbus TCP communication between MATLAB Simulink and a measurement device by using the Instrument Control Toolbox. For the Modbus protocol different function codes are defined, e.g. 0x04 for reading registers and 0x16 for writing registers. Depending on the function code the message to send/receive by the TCP/IP block differs in size. For both blocks (TCP/IP Send and Receive) you need to predefine how many bytes the message will be. You are also restricted to only use one block for the same target (IP/Port) in one model. Therefore it is impossible to do Modbus TCP/IP read and writing operations within the same model. I think this is quite a big limitation. Anybody has an idea how to overcome this challenge?
Regards
Jonathan

Réponse acceptée

Govind KP
Govind KP le 14 Juil 2020
Hi Jonathan,
One possible way I can see is to create and use an m-func block in Simulink to call the modbus function.
You can find more details at this link
  1 commentaire
johnnynoc4sh
johnnynoc4sh le 14 Juil 2020
Exactly the way how I implemented it. Thanks for the valuable hint!

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by