jlada
Electrical
- Oct 4, 2002
- 14
Communicating to A-B processors seems to be an issue.
I wrote a subset of the DH+ protocol (in C) based on A-B's own documentation. The intent was to read and write to a few registers in an SLC 1500, which it does well enough. A few years ago i wrote the Omron Host Link protocol (also in C) and figured that DH+ was going to be as simple. Wrong. I spent at least two weeks getting it that far. Mind you, since most of the ground work has been done, it wouldn't take too much time to add additional functions. The code is set up for iether BCC or CRC checksum and will recognize all the possible fault conditions coming back from the processor, for example.
In retrospect, i would use A-B's own Interchange library (which the customer had already purchsed). It's bound to be more robust and certainly more complete.
If anybody's interested, i could cut and paste the functions together. Be forwarned - i use a lot of globals. Bad programming practice, i know. If you're into 'proper' style, you'd have to rewrite to pass more parameters...
Jeff
I wrote a subset of the DH+ protocol (in C) based on A-B's own documentation. The intent was to read and write to a few registers in an SLC 1500, which it does well enough. A few years ago i wrote the Omron Host Link protocol (also in C) and figured that DH+ was going to be as simple. Wrong. I spent at least two weeks getting it that far. Mind you, since most of the ground work has been done, it wouldn't take too much time to add additional functions. The code is set up for iether BCC or CRC checksum and will recognize all the possible fault conditions coming back from the processor, for example.
In retrospect, i would use A-B's own Interchange library (which the customer had already purchsed). It's bound to be more robust and certainly more complete.
If anybody's interested, i could cut and paste the functions together. Be forwarned - i use a lot of globals. Bad programming practice, i know. If you're into 'proper' style, you'd have to rewrite to pass more parameters...
Jeff