Red Lion comms error diagnostics ?

Ken Roach

Lifetime Supporting Member + Moderator
Join Date
Apr 2002
Location
Seattle, WA
Posts
17,480
Hi guys,

I'm hoping Jeff and Paul and some of the other Red Lion experts here can give me some advice.

I encountered a couple of weird behaviors from Crimson 3 and a G308 yesterday, probably related to having tags addressed to data table elements that didn't exist in the MicroLogix 1400 controller.

The source of those issues is a different discussion. The problem I want to address is that I didn't know what tag wasn't being read or written; all I got was a cascading set of "frozen" data values or dashes through my data boxes.

Is there some kind of diagnostic output data stream, data log, or a status/diagnostic object I can put on screen ?

I understand that individual tags can be given Events or Alarms and those are viewable.

But to get some indication that the G3 can't read or write a specific data table in my controller, do I have to anticipate that and create an alarm for every possible one ?

I'm looking for something similar to the FactoryTalk Diagnostics Display in the PanelView Plus; if a read or write failed to the controller, you could bring up that display and see an error message scroll by.
 
The IsDeviceOnline(x) where x is the device number or name will tell you when a device is missing. I normally tie that to an alarm that gets logged ("SLC communication lost" is a typical label for that alarm).

I've not had stale data appear when there's a problem, only the dashes. I think, however, that if you have a value in the "simulate as" property of a tag, the value specified may appear if comms are not established.

I have not had much trouble out of it. On the bench, I can unplug the comm cable, and within 1 second or two, all the PLC tags will go to the "----" state, and once plugged back in, they all get refreshed pretty quickly too. This has worked for me with ethernet and serial connections.
 
Thanks, Paul !

I've used the "IsDeviceOnline" function to run an ordinary indicator; I'll make it an Alarm, too.

But let's say you made a mistake and addressed a tag to N7:20, but N7 is only 20 elements long so the last one is N7:19. Or somebody loaded a new PLC program and deleted the data table you were using.

All the other tags in your project exist, and the controller is responding to messages with an error reply, rather than timing out. A diagnostic display that showed the actual addresses which were generating error responses would be a great diagnostic tool.

I suppose I can experiment with this. I had just hoped that the communications status wasn't an all-or-nothing affair.
 
Ken you got me I will look tonight and maybe try to set one up and play.
My first thought was IsDeviceOnline then I really read you post and found out you wanted to see if something was outside of the data table size.
 
I've had both references to an element that didn't exist (outside the data table size) and to a data file that didn't exist (leftover from another project).

I'm also concerned about the situation where a connection is being affected by induced noise, an intermittent cable connection, or a busy end device. As far as I can tell, there are not Crimson 3 functions to return error counts (like CRC errors or alignment errors) from a serial or Ethernet port.
 
I just thought of a way I can test the untreachable address for a SLC anyhow, in the emulator tomorrow. I may be able to catch a pause in a real G306 and try to access both a SLC tag and Compactlogix tag that don't exist. One of the best things about screwing up in crimson, is that you can revert in seconds...I am not sure if it will break other comms, but this system must message to both types of PLCs within a couple of seconds round trip to successfully sort, so if more than just the bad tag goes haywire, I will know instantly, and not cost any downtime, only a pause at the packing end.

I don't know about error counters, I think you can manipulate the sensitivity of the IsDeviceOnline() function with the Comms Port and Device settings, and perhaps roll your own.
 
Ken,

At this time there is no such diagnostic information available. If you map to a location that is not available you will see dashed lines on the screen for that variable and other variables from the same device will flash letting you know there is a problem.

Thanks
Jeremy
 
If you map to a location that is not available you will see dashed lines on the screen for that variable and other variables from the same device will flash letting you know there is a problem.

Thanks
Jeremy
I was about to say the same thing after my test of an invalid address in a SLC 5/03 (on a real G310), except that I am not seeing any flashing of the other valid tags. Only the invalid one displays as "---".

What would happen if I referenced that tag in an expression in a program?
 
It depends on how you have the external data configured in the program. With the default settings the program will not run with missing data. If you choose to Run Anyway the program will run and use the last known value for missing data.

Thanks
Jeremy
 
Ken,

There is an indirect way. I was playing with a Modbus RTU network on some drives. There is tag you can create (Dan at Red Lion showed it to me) called CommsError. This tag gives each comm you have configured a bit location in the tag. Each time a certain comm took a poop you would see its associated bit change state. In my case it was one of 5 drives I was talking Modbus to. I thought about putting this Tag into an array and then doing a count up on tags I created for each comm in the array. This isn't bullet proof but it could point you to comms that are giving problems.

I did not roll this myself due to problems on the drive end I could not overcome. We scrapped the test and moved on.
 

Similar Topics

Hi all, I have a client that has a water tank with a loop powered level sensor; the 4-20mA loop goes through a telephone line, half a mile away...
Replies
26
Views
6,984
Has anyone here done inter-device communication with Red Lion DataStation Plus units ? I have an application where I may be putting a DSPLE at...
Replies
4
Views
2,047
So i have this application where I have to read/write from/to the serial port. Write has worked fine so far, but it is reading that I have issues...
Replies
3
Views
1,872
Guys & Gails, I'm looking to have 2 screens talk to each other. I'm confused on how to map the blocks.I am sure its simple. Do i map blocks in...
Replies
5
Views
2,441
Hi all, I have a Red Lion Display Station Plus that I am using to do protocol conversion from a EIP Micrologix 1400 to an air handling unit that...
Replies
9
Views
5,190
Back
Top Bottom