08-05-2024 02:58 PM
08-06-2024 09:16 AM - edited 08-06-2024 09:19 AM
The SerialDataStream object simply transfers a ByteStream via the serial interface
Which data is included in the ByteStream - does not matter for the object.
If you want to transfer ModBus RTU over it,
then you have to assemble the ModBus RTU protocol yourself in the PLC and put it into the ByteStream...
https://www.modbus.org/docs/PI_MBUS_300.pdf
If you use a Beckhoff controller,
it would probably be less effort to simply use the TF6255 package and program it natively
( there are currently no Nexeed objects available for it )
https://www.beckhoff.com/de-de/produkte/automation/twincat/tfxxxx-twincat-3-functions/tf6xxx-connect...
08-15-2024 12:58 PM
In BMG we implemented Modbus with a base object that provides IModbus as a channel. You can get such a channel by either using ModbusRtu which takes IOpconSerial and converts it into IModbus or you can use ModbusTcp which needs an IP address+port and creates IModbus from these parameters. Objects can then use IModbus as a channel parameter. If there is no existing objects then we have ModbusUniversalTemplate which makes programming a unit with Modbus interface quite easy.
If you are a Bosch employee then you can contact me through Outlook/Teams (Marvin Werner) to get access to these objects and an introduction depending on your use case. If you are an external user that is working on a project for Bosch then you can try asking your Bosch contact person to contact me, if you think it's worth it.
Alternatively use the solutions provided by Thorsten_Brach. That's how I was doing Modbus, too, before I created those objects.