08-14-2012 02:52 PM
Hello, this would seem to be a very simple problem, however they all are until you find the last answer. We have a remote switch (Zetron) that has two write coils 1=open 2=close. In Lookout, I have a two pushbuttons that each trigger separate OneShots that direct the Modbus output. For example:
Modbus5.1 = OPEN_US192_OS;
Modbus5.2 = CLOSE_US192_OS;
What I see from the com trace is that Lookout writes the coil, but with zero, wereas I need it to write a one, or true.
08:02:38.5 - Modbus5 -> [40][05][00][01][00][00][93][1B]
08:02:41.0 - Modbus5 <- [40][05][00][01][00][00][93][1B]
What I would expect to see is FF 00 right before the checksum, however all I ever see is 00 00.
I've attached my com trace and Lookout source.
Any help or suggestions would be greatly appreciated.
08-17-2012 04:22 PM
OK, my problem seems to be timing. We are using radio com links, so the cycle time is a bit slow.
Here's a simple question: how do tell Lookout (6.6) to only write to a single coil. Everything seems to want togle the bit (pushbutton, OneShot, etc.) all keep state and try to turn the coil OFF when the logic goes false. The problem I have with this is the radio packet latency. I want to just write to a coil and then check status. Nothing more. How can I do this?
Thanks in advance...
08-21-2012 03:16 PM
You would need two seperate objects.
Create a connection on the modbus object and a switch:
MODBUS.10001 = CommandSwitch
Then create an expression:
MyExpression = MODBUS.10001
The switch tells the device what to do, the expression tells the operator what it is doing.
Is this close?
We have had problems with long-delay (serial radio) communications and the Remote connection. This was our solution. We also have additional logic (timers) that will reset the switch if the expression is not the same.