Hi.
I'm working on this project now and we are still having this problem.
To answer your questions:
Are you using a built-in serial port or USB-to-RS232 converter? If it is the latter what brand of converter are you using?
Two serial ports, one built in and an additional serial card installed in the pc.
Are you connected to the PLC via RS232 or RS485 port? Is it one PC to one PLC?
Rs232, one pc, two plcs.
What programming language are you using to handle the communication?
Visual basic 2003.
Did you try to run TRiLOGI and TLServer to monitor the PLC and do you observe any communication error?
Not sure what you mean.
I added some logging to capture the communication and it appears to be completely random. Both Plcs will simply send a bad character, or send nothing. We retry the command up to three times and usually it recovers, but sometimes not and we lose communication. I've tried different baud rates, electrical filtering, which helps a bit, but the problem is still there.
I delayed updating the watchdog (Sleep(200)) as its updated continually, which did not help.
Our customers are seeing failures often as they run 24x7.
I'm out of ideas!
Thanks,
John
Here are some examples:
4/6/09 13:52:41 PLC2 retry, response = @01Wbw4*
4/6/09 13:52:41 Command sent was: Wb041AFF
4/7/09 17:30:49 PLC2 retry, response =
4/7/09 17:30:49 Command sent was: WR0400
4/7/09 18:41:37 PLC1 retry, response = @01Wbw4*
4/7/09 18:41:37 Command sent was: Wb040CFF
This is a sequence where the system failed:
4/8/09 05:04:21 PLC1 retry, response =
4/8/09 05:04:21 Command sent was: WR0400
4/8/09 05:04:21 PLC2 retry, response =
4/8/09 05:04:21 Command sent was: Wb041AFF
4/8/09 05:04:22 PLC1 retry, response =
4/8/09 05:04:22 Command sent was: WR0400
4/8/09 05:04:22 PLC2 retry, response =
4/8/09 05:04:22 Command sent was: Wb041AFF
4/8/09 05:04:23 PLC1 retry, response =
4/8/09 05:04:23 Command sent was: WR0400
4/8/09 05:04:23 PLC2 retry, response =
4/8/09 05:04:23 Command sent was: Wb041AFF
4/8/09 05:04:24 PLC1 retry, response =
4/8/09 05:04:24 Command sent was: WR0400
4/8/09 05:04:24 Connection to PLC1 lost.
4/8/09 05:04:24 PLC2 retry, response =
4/8/09 05:04:24 Command sent was: Wb041AFF
4/8/09 05:04:24 Connection to PLC2 lost.