Hi all,
so now I seem to have managed describing the format of the messages of an
industry protocol.
Still I have to manually implement the protocol itself. I have to construct
messages in a pre-defined format, send that to a remote station, wait for a
response, extract data from that.
Depending on the returned data, I construct other messages and send them again …
I would think that it should be possible to sort of describe this in a
universal way too.
I’m sort of thinking of something like this:
* I have some format (Preferably XML) where I define a state-machine for
every protocol.
* In this state machine I can attach message templates to the
transitional-edges (similar to the XMl representation in the TDML)
* In the states I define the options of what next edge I should take:
* Sort of:
* If “initial State” -> Send “COTP Connect” message -> Wait for
Response -> if response/returnCode = 0xFF (all ok) -> Send
“S7SetupConnectionRequest” message -> Wait For Response -> If …
* If /S7Response/Parameter/ReturnCode == 0xFF -> Go to the
“Initialized” state
* If != 0xFF -> Go to some “Error handling” state
So now my question:
* Does Something like this already exist?
* Would it make sense to define something here in the Daffodil project, or
should I do that in PLC4X?
Chris