CompactLogix to Modbus RTU slaves via PLC2 unprotected read MSG

adamjstewart

Member
Join Date
Jul 2008
Location
Coquitlam, BC
Posts
9
I am attempting to use a ControlLogix processor and a Digi One IAP, to read from several Modbus RTU slaves(GE Multilin motor protection relays). Apparently I need to use a PLC2 unprotected read MSG instead of a SLC typed read, due to the location of the 4x registers in the GE Multilins. I have mapped an array with the mapping tool in RS5K (or so I believe). My problem thus far is configuring the MSG as a PLC2 unprotected read. I keep on getting an error that the source file type is not correct. Has anyone ever set up a MSG this way?

Thks

Adam
 
Welcome to the forum !

What is the precise syntax you used for the PLC-2 data address ?

Post screenshots or descriptions of exactly how you have configured the MSG instruction in RSLogix 5000.

The mapping tool is unrelated to the MSG instruction. It is only used when the controller needs to respond to a PLC/SLC message that it has received (usually over DH+, but sometimes also over DF1, Ethernet, or ControlNet).
 
Hi thanks!
I think that is part/all of the issue. I am not sure what the addressing structure of the PLC-2 source should look like. A] because its not actually a PLC-2 that I am trying to read from (it's a DOIAP) and B] any and all of the help files and google searches so far have not really shown me how to properly configure the MSG PLC-2 Unprotected Read instruction over ethernet.

I don't actually have the DOIAP yet, its being shipped. I am just trying to set up the code first. It may be a moot issue until I actually get the unit from Digi.

Thks Adam.

MBSLAVEID4.jpg PLC2 Mapping.jpg
 
A note from the DOIAP white paper...

If you need access to all 65,535 Modbus registers, use the​
[FONT=Tahoma,Tahoma]PLC2 [/FONT]or [FONT=Tahoma,Tahoma]CIF Unprotected Read[/FONT]. These reads map directly into Modbus registers. A CIF read of offset 0 maps to Modbus 4x00001, offset 100 maps to Modbus 4x00101, and so on. This off-by-one behavior occurs because Modbus register 4x00001 is actually sent on the wire as address 0, not 1.


I got snagged on the "A CIF read of offset 0 maps to Modbus 4x00001..."

 
I think that the PLC-2 memory is just "offsets", instead of having data files with File Numbers and Data Types (B,N,F, etc).

Say you need to read Modbus addresses 420001 through 420101. You'd put the value "20000" in the Source Element field of the ControlLogix MSG instruction.

The Destination Element should be an INT[x] array tag. Call it "Multilin_Data".

The Destination Element does not have to be part of the PLC-2/3/5 Mapping feature in this case. In fact, I'd keep the tag out of there to avoid confusing future users. The PLC-2/3/5 mapping feature is only used by the ControlLogix when it receives a command request with one of those legacy addresses in it.
 
I found a doc on the PLC-2 addressing. The PLC-2 data table addressing structure is set up xxxx/xx, word/bit, 0000-17777 octal/0-17 octal.
As an offset of 0, if I try to enter 000000 to allow me to access 4x00001 it will not allow it.
It will not accept an entry of 20000...hmmmm
It WILL accept a values of 010000, 010001, 010002, 010003, 010004, 010005, 010006, 010007, 010010...
however...
not 000000

Will experiment some more...thks
 
Last edited:
Issue Solved?

Did you find a solution to this issue. I've run into the same issue where I'm try to read holding register (4x) 30001 through my DigiOne IAP in compact logix using a MSG block. Since register 30001 is N310:0 in a SLC type read, it's over the limit of N255 for a SLC Type Read according to Digi Document 90000643_A. According to this document I need to use either PLC2 or CIF Unprotected Read but I don't know what the format of the "Source Element" should be for this type of read. If I'm trying to read holding register (4X) 30001 what do I put into the source element field in my message block for a PLC2 Unprotected Read?
 

Similar Topics

Hello I need to design a panel to read (Maybe write also) some signals over modbus RTU protocol using an AllenBradley compact plc. At first i...
Replies
18
Views
12,006
Hello-time to pull the trigger on this project. I need to connect a Modbus RTU chiller to a Compactlogix PLC through ethernet to pass information...
Replies
2
Views
2,283
Hey guys, A couple of quick questions but first a layout of what I'm working with. Compactlogix 1769-L37erm controller. The current system we...
Replies
2
Views
1,226
Going to preface this by saying I am a complete modbus newbie, so apologies if my terminology is off... We have a Prosoft PLX31-EIP-MBTCP modbus...
Replies
3
Views
1,325
Client's Customer has an L64 v20 with MCI56-MCM Modbus in 2 slots. Client has an 1769-L16ER-BB1B v20 that needs to communicate with the L64 via...
Replies
3
Views
2,284
Back
Top Bottom