Allen Bradley Micro 820 PLC

dmroeder has pointed out to me that I was in error.

I have doubled checked and pycomm3 will NOT read the local variables even if
init_program_tags=true, even thought the documents say otherwise.

I do use pycomm3 to read/write my GLOBAL variables by using a raspberry pi running Mqtt sparkplug B protocol.

I am sorry for the confusion.

And a Thank You to dmroeder
 
dmroeder has pointed out to me that I was in error.

I have doubled checked and pycomm3 will NOT read the local variables even if
init_program_tags=true, even thought the documents say otherwise.

I do use pycomm3 to read/write my GLOBAL variables by using a raspberry pi running Mqtt sparkplug B protocol.

I am sorry for the confusion.

And a Thank You to dmroeder

I appreciate you double checking and updating us. I thought I was crazy...
 
Hi dmroeder,

I am able to get the wireshark logs using python communication library. I just wanted to compare forward open message of control logix with Micro 800. Can you please share sample code to read value of control logix PLC using python script so that I can compare it with forward open message of Micro 800 PLC.

Thanks a lot
 
Hi dmroeder,

I am able to get the wireshark logs using python communication library. I just wanted to compare forward open message of control logix with Micro 800. Can you please share sample code to read value of control logix PLC using python script so that I can compare it with forward open message of Micro 800 PLC.

Thanks a lot

Assuming your controller is in slot 0, the only difference would be the line Micro800 = True. This is False by default, so if you omit that line, it will read ControlLogix.

Code:
from pylogix import PLC

with PLC() as comm:
    comm.IPAddress = '192.168.1.9'
    ret = comm.Read('MyTag')
    print(ret.Value)
 
Assuming your controller is in slot 0, the only difference would be the line Micro800 = True. This is False by default, so if you omit that line, it will read ControlLogix.

Code:
from pylogix import PLC

with PLC() as comm:
    comm.IPAddress = '192.168.1.9'
    ret = comm.Read('MyTag')
    print(ret.Value)

Hi dmroeder,

My controller is in slot 0 hence I am not setting comm.ProcessorSlot. If I want to access program variable of control logix which is actually inside program name (MainProgram) and variable name is Int_0001. Can you let me know the format which needs to be passed as argument of Read function.

Thanks a lot
 
ret = comm.Read("Program:MainProgram.Int_0001")

Below is the script used by me for the Test :

from pylogix import PLC
with PLC() as comm:
comm.IPAddress = '192.168.154.226'
ret = comm.Read("Program:MainProgram.Int_0001")
print(ret.TagName, ret.Value, ret.Status)

Output:
Program:MainProgram.Int_0001 None Unknown error timed out

I am not sure why above error is observed. Do you have any clue about this?
 
Pylogix is likely not reaching the PLC, this is usually some network configuration problem on your computer. You would get this error if you tried connecting to an IP address that didn't exist.

What model of Ethernet module is in your CLX rack?
Can you ping the module and are you 100% sure you are pinging the right address?

What if you do:

ret = comm.Discover()
print(ret)
 
Pylogix is likely not reaching the PLC, this is usually some network configuration problem on your computer. You would get this error if you tried connecting to an IP address that didn't exist.

What model of Ethernet module is in your CLX rack?
Can you ping the module and are you 100% sure you are pinging the right address?

What if you do:

ret = comm.Discover()
print(ret)

I tried to ping the device from my computer, it is pinging properly.
Added below code to the script :
ret = comm.Discover()
print(ret)

Output :
None [LGXDevice(Length=49, EncapsulationVersion=1, IPAddress=192.168.154.57, VendorID=1, Vendor=Rockwell Automation/Allen-Bradley, DeviceID=14, DeviceType=None, ProductCode=181, Revision=12.11, Status=52, SerialNumber=0xd048c1e7, ProductNameLength=15, ProductName=2080-LC20-20QBB, State=3),LGXDevice(Length=45, EncapsulationVersion=1, IPAddress=192.168.154.226, VendorID=1, Vendor=Rockwell Automation/Allen-Bradley, DeviceID=12, DeviceType=None, ProductCode=58, Revision=6.6, Status=48, SerialNumber=0xf3217b, ProductNameLength=11, ProductName=1756-ENBT/A, State=3)] Success
 
Hmm, I see. Do you have multiple network adapters configured on your machine? You could try disabling other adapters. Maybe python is using the wrong network adapter.
 
I tried to access global variable and able to fetch the value using the script shared by you. But whether it is possible to Read local program variables created using connected component workbench software.

Were you successful reading global variables?

You cannot read local variables.
 
Were you successful reading global variables?

You cannot read local variables.

Hi dmroeder,

Wish you a very Happy New Year 2023...!!!

I tried to analyze the logs captured in wireshark during Read operation. I am not able to differentiate between packet structure for control logix and micro 800 PLC.

Do you have any packet sample with you which has to be sent during read operation for micro 800 plc. It will be really helpful for me to progress further.

Thanks
 
Last edited:
Happy new year to you too!!

Hopefully the images will make enough sense. I zipped them because I didn't like the way the forum shows them in post.

View attachment 63988

Hi dmroeder,

Thanks for your quick response and sharing the images.
It would be great if you can attach complete wireshark log captured for Control Logix PLC while performing Read and Write operation. I am facing issue with Python script when tried with Control Logix PLC at my end. I am getting timeout issue as posted earlier.

Thanks
 
Happy new year to you too!!

Hopefully the images will make enough sense. I zipped them because I didn't like the way the forum shows them in post.

View attachment 63988

Hi dmroeder,

Thanks for your quick response and sharing the images.
It would be great if you can attach complete wireshark log captured for Control Logix PLC while performing Read and Write operation. I am facing issue with Python script when tried with Control Logix PLC at my end. I am getting timeout issue as posted earlier. Currently I am stuck since I don't have wireshark logs for control logix PLC captured using python script.
If you could attach it here it would be a great help for me.

Thanks
 

Similar Topics

This unit was removed from one project where it had perfomed nicely. Wired into simulator and we have no signs of life no LED,s lit power...
Replies
2
Views
934
Hi all, I have problem that I could do with some help with: I have a setup consisting of an Allen Bradley Micro 820 controller, Panelview 800 and...
Replies
6
Views
3,048
I have an allen Bradley micro running a fan in an industrial paint mixing facility. The input fuse is 3a. The system will run fine for a bit and...
Replies
4
Views
1,980
Found a couple of old unused Micro 810s with lcd displays in the miscellaneous section. Don't ever use ccw or indeed any Allen Bradley, but...
Replies
12
Views
4,140
Hi guys, I need to add 2 x 1769-IF4 and 1 x 1769 OW16 output card into an existing Micro 1400 Series A PLC. It has already has 3 expansion...
Replies
7
Views
2,812
Back
Top Bottom