Message from 5/04 to Controllogix L61

bigbuckaroo

Member
Join Date
Apr 2009
Location
Wisconsin
Posts
114
First off title is lacking some key information but I did not know how to word it well but hopefully I can explain it. I have an AB 5/04 with a standard PanelView on a DH+ network that goes back to a Contrologix gateway rack utlilizing a 1756-ENBT card and a 1756-DHRIO card. This is attached to the PLC network of which the Controllogix L61 processor also resides along with it's associated PanelView Plus. In the 5/04 there is memory allocated to store user inputted vessel product names. There are 7 vessels where the corrosponding names are store in the following locations: Vessel 1 N13:10 to N13:14. Vessel 2 N13:15 to N13:19. Vessel 3 N13:20 to N13:24. Vessel 4 N:13:25 to N13:29. Vessel 5 N13:30 to N13:34. Vessel 6 N13:35 to N13:39 and Vessel 7 N13:40 to N13:44. Now obviously these are interger files but when you open the data file and change the Radix to ASCII you now have the product names. What I would like to do is send that information to the L61 processor and PV+ and ultimately use that information for product routing verification. Can someone help me down this path to get those memory locations to show up as strings on the other end? I am assuming I will have to set up a message read between the two but could use some help from there. If more information is needed let me know and I will provide. Thanks in advance
 
You could explicitly MSG (SLC Typed Read) the integer files into the CLX tag database and then DTOS the "results".
Within the RSL5K project file create the controller scoped (let's call it SLC_READ) INT Data Type tag with Dimension 0 = 35.
Create a controller scoped MESSAGE Data Type tag (let's call it GET_SLC_DATA).
Within any of your project's Continuous Task Routines's programs, add a rung containing the MSG instruction GET_SLC_DATA conditioned by its own XIO .en bit.
Within the MSG configuration applet Configuration tab choose the "SLC Typed Read" Message Type, the Source Element N13:10, Number of Elements = 35 and the Destination Tag SLC_READ.
Within the Communication tab of the MSG configuration applet, choose the DH+ Communication Method and the Channel A or B where the targeted network is patched (if identifier Links are being used on the DH+ network they will also have to be entered here); under the Destination Node enter the SLC's DH+ node number.
Within the Path field enter 1(backplane), x(the slot number of the Local Rack residing 1756-DHRIO module).
This sounds pretty easy, however, configuring the DH+ Gateway Links navigation could be tricky.:rolleyes:
Finalize the Edits and monitor the MSG instruction's Communication tab Status Indicators. If everything is peachy, you shouldn't see any error codes.
If there are no errors present, it means that the SLC_READ tag is being filled with the SLC's N13:10 through N13:45 integer values.
Once there the hard part is over...:ROFLMAO:
Create seven INT Data Type tags (let's call them VESSEL_1_PRODUCT, VESSEL_2_PRODUCT, etc.) of Dimension 0 = 5.
Move the first five elements of SLC_READ tag into VESSEL_1_PRODUCT, elements 6 through 10 into VESSEL_2_PRODUCT, etc.
Create seven STRING Data Type tags (named VESSEL_1_PRODUCT_NAME, VESSEL_2_PRODUCT_NAME and so on.
Deploy DTOS instructions on each of the seven VESSEL_x_PRODUCT tags with the VESSEL_x_PRODUCT_NAME destination.
Once here you could display the Vessel Product Name strings within any HMI application related to the CLX controller.
 
You could explicitly MSG (SLC Typed Read) the integer files into the CLX tag database and then DTOS the "results".
Within the RSL5K project file create the controller scoped (let's call it SLC_READ) INT Data Type tag with Dimension 0 = 35.
Create a controller scoped MESSAGE Data Type tag (let's call it GET_SLC_DATA).
Within any of your project's Continuous Task Routines's programs, add a rung containing the MSG instruction GET_SLC_DATA conditioned by its own XIO .en bit.
Within the MSG configuration applet Configuration tab choose the "SLC Typed Read" Message Type, the Source Element N13:10, Number of Elements = 35 and the Destination Tag SLC_READ.
Within the Communication tab of the MSG configuration applet, choose the DH+ Communication Method and the Channel A or B where the targeted network is patched (if identifier Links are being used on the DH+ network they will also have to be entered here); under the Destination Node enter the SLC's DH+ node number.
Within the Path field enter 1(backplane), x(the slot number of the Local Rack residing 1756-DHRIO module).
This sounds pretty easy, however, configuring the DH+ Gateway Links navigation could be tricky.:rolleyes:
Finalize the Edits and monitor the MSG instruction's Communication tab Status Indicators. If everything is peachy, you shouldn't see any error codes.
If there are no errors present, it means that the SLC_READ tag is being filled with the SLC's N13:10 through N13:45 integer values.
Once there the hard part is over...:ROFLMAO:
Create seven INT Data Type tags (let's call them VESSEL_1_PRODUCT, VESSEL_2_PRODUCT, etc.) of Dimension 0 = 5.
Move the first five elements of SLC_READ tag into VESSEL_1_PRODUCT, elements 6 through 10 into VESSEL_2_PRODUCT, etc.
Create seven STRING Data Type tags (named VESSEL_1_PRODUCT_NAME, VESSEL_2_PRODUCT_NAME and so on.
Deploy DTOS instructions on each of the seven VESSEL_x_PRODUCT tags with the VESSEL_x_PRODUCT_NAME destination.
Once here you could display the Vessel Product Name strings within any HMI application related to the CLX controller.

AHHHHHH....Much thanks!! Reading your excellent response makes it sound easy. It may take me the rest of the day to give it a try. I was trying to use Rslinx Enterprise in RSVIEW ME project but it wouldn't let me browse through the ENBT. I think I found the Technote which states that it is not possible to do that in Rslinx Enterprise to use Classic. Anyway I will give your adivce a try and post back the results. Again thanks for the advice.
 
So I had a chance to work on this. I have the message set up and transfering the data to tag: silo_monitor_product_ name_data(0).........(34). I am then using COP instruction with a source of silo_monitor_product_name_data(0) and a destination of pt1_product(0) with a lenght of 5. So far so good as I have verified the data going to pt1_product(0), (1), (2), (3), and (4). Not sure if I am using the DTOS instruction properly as I am not seeing my string. DTOS is set up as source pt1_product(0) and destination as pt1_product_name which has been set up as a string tag. The instruction is only taking the first number group the one at tag(0) and not all 5 of the numbers and also when I monitor the string tag in the destination it displays the same thing, the number and not the string representation. I have even taken a PV+ program added a string display with the string tag as the connection. when I put it in test display mode it reads the number. So what am I missing? I admit I do not use string tags so this is new to me and could very well be something simple that I am not seeing. Thanks.
 
Well...haven't done this for a while...:unsure:
I would try to get it working for one vessel first...:rolleyes:
Create five STRING Data Type tags and name them pt1_product_AString, pt1_product_BString, pt1_product_CString, pt1_product_DString and pt1_product_EString.
Deploy five DTOS instructions with the Sources pt1_product (0), pt1_product_(1) and so on and with the Destinations pt1_product_AString, pt1_product BString and so on.
Once you have the five "parts of the name" within the five pt1_product_A, B, C, D, EString tags, deploy four CONCAT instructions which will build your final pt1_product_name tag.
A+B, (A+B)+C, [(A+B)+C]+D, {[(A+B)+C]+D}+E
 
Last edited:
So I started on this again and tried the previous suggestion. However I still am not seeing string data. So far I have used 5 DTOS instructions and 1 CONCAT instruction. It seems to be moving the data as in the CONCAT destination tag I have the 2 tags from the first 2 DTOS instructions. So the numbers from first DTOS is 20047 and second DTOS is 22048 appear in the CONCAT instruction as 2004722048. When I monitor the destination string tag the DATA tag contains the numbers for example: PT1_product_nameDATA(0) contains the number 2, PT1_product_nameDATA(1) contains a 0 and so on. I do not see letters in the DATA part of the tag like I would expect. The number 20047 represents the letters NO and 22048 is a V and a space because there is a second word in the string name. Any other ideas? I am starting to wonder if this is possible or if there is a better way. Suggestions welcome. Thanks
 
Take a big step back and let's break this topic (and the sentences) up into digestible chunks.

As I understand, you're reading an Integer data table from an SLC-5/04 into a ControlLogix over DH+, and that part's working correctly.

If your data is ASCII, then the DTOS instruction isn't what you want. That's a "DINT to STRING", meant to turn a value like 123 into a string like "123".

Instead, you want to move values directly into the .DATA section of a String in the ControlLogix.

The hard part is going to be figuring out the byte sequence, and that might be experimental.

So let's start: post exactly the contents of the first Integer file, from RSLogix 500. For completeness, let's show them in Decimal, Hex, and ASCII:

Example:

N13:10 = 17487 = x444F = DO
N13:11 = 20053 = x4E55 = NU
N13:12 = 21587 = x5453 = TS
 
An example screenshot of how it might work is attached.

I happen to be working on a CompactLogix project with strings this morning, so it's fresh in my mind.

BB_String_Handling.jpg
 
The following is the contents of the interger files in the 5/04 N13:10 dec = 20047 hex = 4e4f ASCII = NO N13:11 dec = 22048 hex = 5620 ASCII = V(space) N13:12 dec = 21327 hex = 534f ASCII = SO N13:13 dec = 21058 hex = 5242 ASCII = RB N13:14 dec = 8224 hex = 2020 ASCII = space space So the product name would be NOV SORB. I apologize in advance if this post doesn't turn out to be all lined up and spaced correctly. For some reason when I post from work I am missing some functions or what not like the ability to attach files or when i want to put something into quotation marks the post puts the word quote like this: "something" it makes my posts look all screwy. anyway I really appereciate the help. I may have to borrow some glasses to read your screen shot Ken. Eyes aren't what they used to be.
 
Last edited:
I had all that information lined up and spaced out but when i hit submit reply it bunched everything all together and replaced my quotation marks with &quot. very strange. hopefully you can read it.
 
One question...
Are the SLC/PanelView system operators entering "numbers" or they are actually entering the product name ?
If you have the ASCII format data within the SLC you could MSG it directly to the CLX without the "reformat" hassle.
 
Last edited:
One question...
Are the SLC/PanelView system operators entering "numbers" or they are actually entering the product name ?
If you have the ASCII format data within the SLC you could MSG it directly to the CLX without the "reformat" hassle.

The operators chose the product name from the Panelview they do not create it. There is a screen where managment can create a new product name and save it. It looks to me like all that information is being put into integer (N) files when it is created using the Panelview to input the information.
 

Similar Topics

I have a 1756-L62 that is sending a message to give a 1769-L24ER a permissive bit to run. This system has been working fine for about 2 years...
Replies
4
Views
3,810
Hey everyone, Got called out tonight on an issue with a ControlLogix L62 processor, curious if anyone has seen anything like this before. I've...
Replies
3
Views
1,626
ControlLogix 5575 (L75): Sudden/Repeating "Unconnected Message Timeout" (0204) This ControlLogix PLC (L75/5575) has been in operation for at...
Replies
24
Views
10,618
I would like to Read the CPU Usage % information like the Task Monitor tool provides from one ControlLogix to another via a CIP Message. Comms...
Replies
12
Views
5,910
Dear All, I would liket to ask for your help. I have a L73S PLC which communicates with a Soft Siemens PLC by MSG. (I already got the system...
Replies
2
Views
1,367
Back
Top Bottom