Sunteți pe pagina 1din 19

tM tManager Performance P f Considerations C id ti

2013 Online Development Inc. All Rights Reserved.

June 27, 2013

Topics
Performance overview Rockwell Automation reference manuals RA Logix Design recommendations Queuing data in a controller RA EtherNet/IP recommendations OLDI tManager performance optimization recommendations tManager EtherNet/IP Communication options Database communication

2013 Online Development Inc. All Rights Reserved.

June 27, 2013

Typical Performance Landscape


There are many factors that affect overall throughput of your tManager system ..
Controller
Controller Model ControlLogix L63 vs L75, etc. Rockwell Design ps Tips
Time Slice Continuous, Periodic & Eventbased tasks DINTS Optimized UDTs Single Dimension Arrays

Network or ControlLogix Backplane


Backplane vs Front Ethernet port Type of Ethernet Bridge
ENBT vs EN2Tvs EN3T

tManager
Trigger Scan Times OLDI Best Practices
Triggers/Endpoints gg p /Maps Use of Transaction Logs Use of Store & Forward Use of Status Tags System Log configuration Handshaking

Business Ethernet
Network Configuration
Transaction rates Firewalls g Network Loading # of hops etc

Database
Database Maintenance & Design
Table Design -contains i d /k index/keys on th the appropriate columns Stored Procedure design -- consider impact of locks on h heavily il used d tables, views, etc.

EtherNet/IP Design Guidelines


Switch features

2013 Online Development Inc. All Rights Reserved.

June 27, 2013

Rockwell Automation Design Documents Referenced While Preparing this PPT


ControlLogix and CompactLogix Design Documents
http://www rockwellautomation com/solutions/integratedarchitecture/resources3 html http://www.rockwellautomation.com/solutions/integratedarchitecture/resources3.html
Expand Performance and Capacity Guidelines Chapter 2 of the Logix5000 Controllers Design Considerations manual has information concerning task scheduling and time slice setup for optimum performance. Pub. 1756-RM094F-EN-P Chapter 3 of the Logix5000 Controllers Design Considerations manual contains guidelines for using various Logix data types

Integrated Architecture Top 50 Design Points


http://www.rockwellautomation.com/solutions/integratedarchitecture/resources4.html#top50

EtherNet/IP Performance Guide


http://literature.rockwellautomation.com/idc/groups/literature/documents/ap/enet-ap001_-en-p.pdf

2013 Online Development Inc. All Rights Reserved.

June 27, 2013

Logix Optimization: Logix Time Slice


If you have a continuous task, RSLogix 5000 & Studio 5000 allow you to allocate a System Overhead Time Slice (SOTS), which is a percentage of the CPUs time reserved for background CPU functions such as:
Communicating with programming & HMI devices Responding to messages Sending messages Serial port message & instruction processing Alarm instruction processing

The Th tManager tM uses CIP Cl Class 3 ( (unconnected) t d) messaging, i processed d iin th the time ti slice li The SOTS only affects messaging performance if a continuous task exists
The default value is 20% Raising the SOTS increases the scan time of the continuous task, but should increase the number of messages per second that are sent between the tManager and Logix processor The recommended SOTS setting for a data concentrator is 50% or greater. Suggest starting with 50%. If everything is working well, you can see if raising it higher improves performance further
2013 Online Development Inc. All Rights Reserved. 5 June 27, 2013

Logix Optimization : Task Configuration


When Motion, Periodic, and Event Based tasks are used, configure them carefully
Eliminate task overlaps Allow enough time for the communications task - SOTS Don Dont t configure multiple periodic tasks at the same priority and same rate Each task will task switch with the others, executing in 1 msec intervals until all are complete There is overhead associated with each task switch

For more information on how Logix processors handle different types of tasks, and to see graphical examples of the effects of changing the SOTS and other task p parameters, , reference Chapter p 2 in the RA Logix g 5000 Controllers Design g Considerations manual
The information on this slide is from the Rockwell Automation Optimizing Control System Performance presentation, presented at various Automation Fairs. The information is also contained in the Logix5000 Controllers Design Considerations manual.
2013 Online Development Inc. All Rights Reserved. 6 June 27, 2013

Logix Optimization : Use DINTS


Use the DINT data type whenever possible. Logix is optimized for 32 bit data types, and they are processed faster than other data types
SINT
Memory usage for a Tag Memory R M Reserved d for f d data t in i a UDT Memory used to access instruction in an ADD * Execution Time for an ADD instruction * 4 Bytes
1 Byte (8 Bit aligned)

INT
4 Bytes
2 Bytes (16 Bit aligned)

DINT
4 Bytes
4 Bytes (32 Bit aligned)

REAL
4 Bytes
4 Bytes (32 Bit aligned)

236 Bytes

260 Bytes

28 Bytes

44 Bytes

L63 - 3.31 sec

L63 - 3.49 sec

L63 - 0.26 sec

L63 - 1.45 sec

* Assumes all parameters are same data type


The information on this slide is from the Rockwell Automation Optimizing Control System Performance presentation, presented at various Automation Fairs. The information is also contained in Chapter 3 of the Logix5000 Controllers Design Considerations manual.
2013 Online Development Inc. All Rights Reserved. 7 June 27, 2013

Logix Optimization : Data Structure Guidelines


Utilize the following data structure guidelines whenever possible
Use Single Dimensional Arrays and User Defined Structures when designing your application Create tag names that are as descriptive as possible while keeping them short h t to t minimize i i i the th memory usage and d the th communication i ti packet k t size i Use single aliasing to prevent changes to documented logic on upload of project Create C packed k d UDTs UDT to optimize i i memory and d performance f Use DINT arrays for B3 File usage (avoid bool arrays) Use the LINT data type (64-bit integer value) to store date and time values

The information on this slide is from the Rockwell Automation Optimizing Control System Performance presentation, presented at various Automation Fairs. The information is also contained in Chapter 3 of the Logix5000 Controllers Design Considerations manual.
2013 Online Development Inc. All Rights Reserved. 8 June 27, 2013

Logix Optimization : Optimizing UDT Memory Usage


16 bytes 12 bytes

DATATYPE Sample1 BOOL Bit1; SINT Tiny_Value BOOL Bit2; INT Small_Value DINT Big_Value REAL Float_Value END_TYPE

DATATYPE Sample1 BOOL Bit1; BOOL Bit2; SINT Tiny y_Value INT Small_Value DINT Big_Value REAL Float_Value END_TYPE

User defined structures allow you to combine multiple data types (atomic, predefined or user defined) into a new data type
All elements in a structure are located on a byte (8 bit) boundary You can optimize the layout for readability or memory usage usage. Optimized memory usually yields better performance Reduces the amount of memory used and reduces communications time

Group all bits adjacent to each other when creating a user defined structure

The information on this slide is from the Rockwell Automation Optimizing Control System Performance presentation, presented at various Automation Fairs. The information is also contained in Chapter 3 of the Logix5000 Controllers Design Considerations manual.
2013 Online Development Inc. All Rights Reserved. 9 June 27, 2013

Queuing Applications Reasons Needed


You might need to queue data if you cannot afford to loose data if:
there are brief durations of database/network delays
Before f data is written to the S Store & Forward queue there is a time-out period that will pass. This method will result in no data loss while waiting for transaction timeouts

data periodically changing faster than the minimum scan times (250 ms)
With the method described on the next slide, you cannot sustain data changing faster than the minimum scan time for long periods of time just short periods

2013 Online Development Inc. All Rights Reserved.

10

June 27, 2013

Queuing Applications -- Implementation


1. Write the controller tags to a temporary queue (array), and then move them to the mapped tags when the tManager trigger is ready to fire again
Use the LINT output of a Logix GSV instruction when mapping the time to the database vs using the tManagers Timestamp macro Calculate the number of positions in the cue based on the time you want to compensate for and your scan rate, and then double it (to compensate for the transaction time-out)

2. Configure a Status Tag for the message path (in the Trigger Configuration g screen of the associated trigger) gg ) 3. Advance the data from the controller queue to the mapped tags by monitoring the status tag for values >=20 and <100. Then, fire the trigger
20 = the message reached either the Store & Forward queue or its destination >100 = an error has occurred Reference KB answer 153 to read about handshaking and the trigger/message path status tags
2013 Online Development Inc. All Rights Reserved. 11 June 27, 2013

RA EtherNet/IP Switch Recommendations


When using Ethernet/IP for control, use an industrial grade switch Required switch features:
Full-duplex p capability p y on all p ports

Recommended switch features:


VLAN Auto-negotiation/manually configurable speed/duplex Wire-speed switching fabric SNMP IGMP snooping

The information on this slide is from Chapter 6 of the Logix5000 Controllers Design Considerations manual.

constrains multicast traffic to ports associated with a particular IP multicast group

Port diagnostics Port-mirroring (required for troubleshooting)


Allows traffic analyzer connection without affecting the run run-time time system

STP for loop prevention QoS

For additional control network g guidelines, , reference the RA Logix g 5000 Controllers Design Considerations manual and the RA EtherNet/IP Performance Guide
12 June 27, 2013

2013 Online Development Inc. All Rights Reserved.

tManager Optimization: System Log & Status Tags


When you configure the System log, do not keep the Log detail level setting at DEBUG long-term
Only enable the DEBUG mode for System logging if you are instructed to use it by OLDI support, and then remember to change the setting back to INFO or one of the other options when you are done Logging DEBUG messages will have a negative impact on tManager performance

Status Tags
Since they y will add loading g on the controller and could affect p performance, , only y define Status Tags for the projects, triggers and endpoints where they are needed and will be used by the controllers application program

2013 Online Development Inc. All Rights Reserved.

13

June 27, 2013

tManager Optimization: Transaction Logging & Overrun Timers


Only enable Trigger & Endpoint Transaction Logging as needed for regulatory purposes, or during troubleshooting & start-up
Transaction logging reduces the number of transactions per second that the tManager can process If you have a large transaction, logging the entire transaction has a g greater detrimental effect than jjust logging a specific number of bytes

Trigger and Endpoint Overrun Timers


The overrun features should be enabled sparingly, mainly during troubleshooting, since they will slow down the overall throughput of all the triggers on the module. For more information on Overrun Timers, reference the tManager Troubleshooting presentation. The values entered for the trigger overrun timers need to be greater than the Scan Period If the values are too low Period. low, the system log will get filled with overrun errors errors, the module throughput will decrease, and other important events and/or errors may be missed

2013 Online Development Inc. All Rights Reserved.

14

June 27, 2013

tManager Optimization: Store & Forward


If Store & Forward is enabled on an endpoint, once communications are interrupted & data is sent to the S&F queuethe number of transactions processed per second may decrease
There is an initial time-out period that depends on either the adapters configured connection or the transaction time-out values before writing to the S&F queue is initiated Writing data to the queue, which is stored on the tManagers compact flash, may take more time than sending the information to its normal destination Once communication is restored, there may be a detrimental effect on overall tManager performance while data from the S&F queue is sent to its intended destination

2013 Online Development Inc. All Rights Reserved.

15

June 27, 2013

tManager Optimization: Separate Triggers & Endpoints


Handshake mode selection effects when the next trigger firing occurs:
When combining transactions under one trigger, remember that the trigger cannot fi again fire i until til th the completion l ti of f all ll th the messages at t th their i llevell of fh handshaking. d h ki Therefore, one slow message, or one message with a high level of Handshaking selected, would cause all messages to wait for its completion It Its s often best to have one trigger per message path For more information on Handshaking, reference the tManager Details and Best Practices presentation

Separate endpoints are recommended if you have a transaction message which you might expect to be more time-consuming (x-sec vs. <1-sec to complete).
The use of a separate p endpoint p will allow faster transactions to continue while the slower transactions wait in the queue for their completion

2013 Online Development Inc. All Rights Reserved.

16

June 27, 2013

tManager Optimization: One Controller.One Map


Although you can use tags from multiple controllers in a single map, it is not recommended
If any of a maps input variables are not available when the trigger fires, the trigger is marked as faulted and will not retry for 60-seconds If multiple controllers are used in a map, loss of communications with any of these controllers t ll will ill cause th the t trigger i t to stop t fi firing i until til all ll of f the th controllers t ll are once again available

If you need tags from multiple controllers mapped into a single database table at the same time
Recommend mapping all the tags into a data concentrator controller Map p tags g from the data collector PLC to the database table in a single g map p

2013 Online Development Inc. All Rights Reserved.

17

June 27, 2013

tManager EtherNet/IP Communications


EtherNet/IP communication over the ControlLogix backplane is usually faster than out one of the front Ethernet ports
Rockwell Automation designed the ControlLogix backplane for speed and ease of communications, so backplane communication to the tManager is always as fast or faster EtherNet/IP Eth N t/IP out t the th f front t port t iis comparable bl t to communication i ti over EtherNet/IP Eth N t/IP via i a 1756-ENBT A 1756-EN2T/3T is twice a fast as a 1756-ENBT

Reference Rockwell Automation Knowledgebase document 40784 for a comparison of the different Logix EtherNet/IP Bridge modules http://rockwellautomation.custhelp.com/app/answers/detail/a_id/40784 http://rockwellautomation.custhelp.com/app/answers/detail/a id/40784

2013 Online Development Inc. All Rights Reserved.

18

June 27, 2013

Database Communication
Configuring several database adapters versus having everything go to/from the same database has no impact on performance The size of the transactions & speed of the databases response to the tManagers tManager s transactions, which can be affected by the databases database s configuration and maintenance, do have an impact on throughput

2013 Online Development Inc. All Rights Reserved.

19

June 27, 2013

S-ar putea să vă placă și