Got it working - Allen-Bradley PLC to Outsystems comms

Got it working - Allen-Bradley PLC to Outsystems comms


Not so much a question but wanted to post a solution we finally got working with alot of support from the Outssytems tech support (Stacey, Pedro, Isaac, Rui - You Rock!) and from João Rosado!

So the activity we wanted to accomplish was to get bidirectional communications from an Allen-Bradley PLC to the Outsystems server.

Method used to accomplish it:
- I found a C# library that would allow communications between the PC the PLC for $250.  This is mainly so I don't have to delve down to socket level connections and figure out the driver between teh two.
- Created a C# WCF service which was then made into a windows service on the PC
- Consumed this service on the Outsystems platform.  Now the problem with this was that it allowed me to initiate communications between the Outsystems server to the PLC but unless I wanted to wait minutes for a timer inside Outsystems to cycle I could not immediately initiate actions inside Outsystems based on a state change inside the PLC. So:
- In the windows service it scans the PLC once a second and looks for values in tags that I am using to pass data (such as a door proximity card read) from the PLC to the Outsystems server.  If it does see a value in one of those tags, it calls a web service I created in Outsystems which in the methods for it, I can have it do whatever I want as soon as that data is passed in even if noone has a website open.

Seems to work very well.  Will be testing it in a more "live" environment as soon as I get a few more things working.
Good work Jason! Nice to know you got it working as you needed.

João Rosado

Nice job, Jason.  I'm not surprised to see your name on a PLC post!