LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Reading data on multiple Allen Bradley Controllogix PLC

Thanks for the reply Drew,

 

the devices are all (for now) Controllogix 5500.

 

Where do you find the system tag?

 

I will try the sync/async read today, but what is the difference between those 2 states and the default?

 

For the Server stage field, is that in OPC of Quick Client? Why would it work with 3 channels 1 dev per channel and not with 1 channel 3 device?

 

No i only have 1 network card in my computer. (laptop), and wireless switch is disabled.

 

Thanks again!

0 Kudos
Message 21 of 29
(1,378 Views)

Chronik,

 

The system tags that Drew was referring to can be found in the OPC Quick Client.  The system tags are shown in the screenshot below:

 

System tags.png

 

As far as the differences between synchronous/ asynchronous reading and writing goes,

  • Asynchronous—Specifies that the Shared Variable Engine does not wait for the OPC server to process the write operation before continuing.
  • Synchronous—Specifies that the Shared Variable Engine waits for the OPC server to process the write operation before continuing. As a result, the Synchronous option can cause slow response times and poor system performance.

This information can be found in the "Configure OPC Client Instance Dialog Box" Help file.

 

The Server State can be found by clicking on the server name in OPC Quick Client, then going to Edit>>Properties.  A window will then pop up and you'll see "Server State" listed there.

 

Untitled.png

 

Hope this helps!

 

Regards,
Austin S.

National Instruments
Academic Field Engineer
Download All
0 Kudos
Message 22 of 29
(1,359 Views)

Thanks for the reply, i will check that later on today.

 

Per default, is it synchronous ? I do not want to do any write in the PLC, asynchronous should be best for me? Should i play with the 1 write for 10 read thing?

 

Thanks

0 Kudos
Message 23 of 29
(1,342 Views)

Chronik,

 

I'm sorry if the information we have provided was unclear.  The synchronous/asynchronous read/writes are used in a one-shot read/write.  This means that you are manually reaquesting or sending information.  This is opposed to normal operation, when the OPC server is polling the device and updating values as they change.  In essence, the normal operation is asynchronous, but it is a different process.

 

Finally, since you are not doing any writes, the write optimization settings (10 writes to 1 read) won't apply in your case.  This basically optimizes the communications bandwidth while you are updating values on the PLC, which you are not doing.  Therefore, this will not affect your situation.

 

Drew T.
Camber Ridge, LLC.
0 Kudos
Message 24 of 29
(1,320 Views)

Thanks for the reply.

 

Synchronous and async is only in quick client, and not in OPC so i shouldn't bother with this at all if i understand correctly. And no need to modify the 10 writes 1 read ratio neither..

 

Here are the screenshots you requested

0 Kudos
Message 25 of 29
(1,315 Views)
0 Kudos
Message 26 of 29
(1,314 Views)

And the server status (with 1 channel - 3 devices (not working) but says its running)

0 Kudos
Message 27 of 29
(1,312 Views)

Chronik,

 

I don't see anything there, but I do want to point out, that the recommended server configuration is to have one device per channel, for performance and parallelism considerations.  At this point, I am not sure that there is a reason to have multiple devices in your channels, but if you still want to persue the issue, I do have some next steps for you.  

 

OPC Server Diagnostics

 

You can log OPC server diagnostic information in two different ways.

 

-OPC Diagnostics

 

To do this, click View » Diagnostics » OPC.  This will bring you to a window where you can log the OPC activity by clicking Diagnostics » Start.  You should be able to see information about what is happening with the OPC server.  You can also save this file and post it here if you cannot find anything to troubleshoot.

 

-Channel Diagnostics

 

To do this, you must first open the Channel Properties (Right Click » Properties) and check Enable Logging.  Then, with the channel selected, click View » Diagnostics » Channel.  This will bring up a window which should tell you what kind of problems you might be experiencing.

 

I/O Server Diagnostics


Were you ever able to set up the I/O server and bound variables as I mentioned in a previous post?  Do they exhibit the same behavior you are seeing in the Quick Client?  If so, you can set up diagnostic logging on the I/O server to see what the problem might be.  

 

- Right click your I/O server in the project explorer and select Properties.  

- In the window below, select the diagnostics tab and check Enable diagnostics.

 

2011-08-10_1548.png

 

Once you have set this up, try running a VI using the shared variables you created and see if you get updates from them.  If you still have the problem, check out the log file and post it here so we can take a look.

Drew T.
Camber Ridge, LLC.
0 Kudos
Message 28 of 29
(1,296 Views)

Drew,

 

"the recommended server configuration is to have one device per channel, for performance and parallelism considerations."

 

I think that this ends the debate right there.

 

I will develop my app further, and i'll let you know if i encounter any limitations because of this, which i doubt.

 

Thank you very much for your time on this.

0 Kudos
Message 29 of 29
(1,283 Views)