Time-based Position Capture Algorithm

Similar documents
ControlLogix Configurable Flowmeter Module Firmware Revision 2.4

ControlLogix EtherNet/IP Bridge Module

ControlNet-to-DeviceNet Linking Device

GuardLogix Controller to Kinetix 6000 Drive with Safe-Off using EtherNet/IP CompactBlock Guard I/O Module

PCI Expansion Slot Kit for 6181P (1500P) Series D Integrated Display Computer

Logix5563 Controller

ControlLogix HART Analog I/O Modules

InView Firmware Update

Event-based tasks give Logix5000 controllers a more effective way of gaining high-speed processing without compromising CPU performance.

Teaching Color-Sensing Connected Components Building Block. Quick Start

DriveTools SP Version 5.06 Software Patch

DriveTools SP v4.03 Software Patch

ControlLogix Controllers Revision 14

Color-Sensing Connected Components Building Block. Quick Start

Enhanced, Protected, Ethernet, and ControlNet PLC-5 Firmware

Drive Software Wizards Version 3.10

20-COMM-E EtherNet/IP Adapter Firmware Revision 4.002

Simple Package Measurement Connected Components Building Block. Quick Start

Drive Software Wizards v2.2

Drive Software Wizards v2.3

POINT I/O and ArmorPOINT I/O EtherNet/IP Adapters

DriveTools SP v5.05 Software Patch

DeviceNet Communications

Adapter Kit for PanelView 1200/1200e Touch Screen Terminal Cutout

20-COMM-B BACnet MS/TP Adapter Firmware v1.002

Logix5000 Controllers Produced and Consumed Tags

Programming Manual Catalog Numbers 1756 ControlLogix, 1769 CompactLogix, 1789 SoftLogix, 1794 FlexLogix, PowerFlex 700S with DriveLogix

Drive Software Wizards v3.2

Drive Software Wizards v1.3

ControlLogix Redundancy System Revision 8

PowerFlex 7-Class Human Interface Module Series A Firmware v3.010

ControlLogix Integrated Motion

PowerFlex 755 Drives (revision 4.002)

T61 Leveraging Integrated Architecture Using Kinetix and PowerFlex Drives

Logix5000 Controllers Nonvolatile Memory Card

ControlLogix Controllers, Revision 18

20-WIM-Nx DPI Wireless Interface Module Firmware v1.003

1203-EN1 EtherNet/IP-to-SCANport Module Firmware v1.005

MicroLogix 1100 Programmable Controllers FRN 16

T62 - Next Generation of Compact AC Drives

Ferrite Core for Internal DPI Cables on PowerFlex 700S Frame 3 and 4 Drives

1756 ControlLogix Chassis Specifications

20-COMM-E EtherNet/IP Adapter Firmware v4.001

PowerFlex 753 Drives (revision 1.011)

PowerFlex 753 Drives (revision 9.002)

PowerFlex 755 Drives (revision 2.009)

Data Highway/Data Highway Plus Asynchronous Communication Interface Module, Series D

1203-SSS Smart Self-powered Serial Converter Firmware v3.007

PowerFlex 700S Drives with Phase II Control (4.002)

DriveLogix 5730 Controller (13.20)

20-COMM-M Modbus/TCP Adapter Firmware v2.001

PowerFlex 20-HIM-A6 and 20-HIM-C6S HIM Firmware Revision 1.006

1203-SSS Smart Self-powered Serial Converter Firmware v3.006

CompactLogix 5370 L3 Controllers

PowerFlex 753 Drives (revision )

ControlLogix Digital I/O Modules

PowerFlex 753 Drives (revision 6.003)

Differential Liquid/Gas Pressure Transmitter

PowerFlex 755 Drives (revision )

CED/Nebraska Rockwell Training Schedule Sorted by Course #

DriveTools SP v5.03 Software Patch

20-COMM-P Profibus Adapter Firmware v1.006

20-COMM-H RS485 HVAC Adapter Firmware Revision 2.010

20-COMM-H RS485 HVAC Adapter Firmware Revision 2.009

MicroLogix 1400 Programmable Controllers FRN 13

PowerFlex 753 Drives (revision 1.009)

Logix5000 Controllers Major, Minor, and I/O Faults

Electronic Keying in Logix5000 Control Systems

CompactLogix Selection Guide

ControlLogix 7252 LDT Interface Manual Revision 1.1

POINT I/O and ArmorPOINT I/O Dual Port EtherNet/IP Adapters

ControlLogix 5560M03SE Combination Controller and SERCOS Interface, Firmware Revision 13

T08: What s New in Motion and Time-based

435NBX Basic Ladder Logix Setup

PowerFlex 753 Drives (revision )

Kinetix 6000 Drive Component Compatibility

Kinetix 6000 Axis Module and Shunt Module

GuardLogix 5570 Controller Systems

PowerFlex 753 Drives (revision 8.002)

Logix5000 Controllers Function Block Diagram

Automation of Intermittent VFFS Machine Using Allen-Bradley Micro850 Programmable Controllers

Kinetix 6200 and Kinetix 6500 Servo Drive Selection

Scalable Motion Solutions

AMCI SD17060E Ethernet/IP Stepper Motor Indexer / Drive

Micro800 Programmable Controllers: Getting Started with Motion Control Using a Simulated Axis

New Possibilities with Distributed I/O

Logix5000 Controllers Major, Minor, and I/O Faults

CompactLogix L20 and L30 Controllers Revision 13

APPLICATION NOTE. Title: SigmaLogic Example Code Example Manual. 1. Application Overview. Revision 2 February 21, 2018 Page 1 of 31

Leveraging Automatic Device Configuration. K endall C onnection L ive!

Communicating To Acromag Series 9xxEN-60xx Ethernet Modules From Legacy Allen Bradley or Rockwell Automation Devices

Logix 5000 Controllers Major, Minor, and I/O Faults

AN100 v1.4. EtherCAT network synchronization. Distributed clocks

PowerFlex 753 Drives (revision 1.010)

Allen-Bradley Communications Modules Implementing network-based access control for users, devices and networks

Programming Manual. Original Instructions. itrak System. Firmware Version: 1.110

Copyright Information. Copyright ThePlcCorner.com

PowerFlex 70 Safe-Off Control EtherNet/IP Guard I/O Safety Module and GuardLogix Integrated Safety Controller

ControlLogix/Studio 5000 Logix Designer Course Code Course Title Duration CCP143 Studio 5000 Logix Designer Level 3: Project Development 4.

Communicating To Acromag Series 9xxEN-6xxx and XTxxx2-xxx Ethernet Modules In An Allen Bradley ControlLogix System

Transcription:

Application Note Time-based Position Capture Algorithm Purpose This Application Note applies to Kinetix 2000, 6000, and 7000 Multi-axis Servo Drives. This document explains the operation and limitations of the Time-Based Position Capture (TBPC) algorithm used to register the command and actual position of an axis at a specific Coordinated System Time (CST) in which an event occurred. This registration event can be an event of another axis or any other system event. The TBPC algorithm can capture the position of a virtual and a consumed axis as well as a real axis that does not have registration sensor through soft registration. A soft registration is a typical application for the TBPC algorithm. Soft registration is used when a registration event of a single axis or multiple axes, which does not have a registration sensor, is based on the registration event of an axis with a registration sensor. The experimental results presented in this Application Note describe the operation and limitations of the TBPC algorithm for soft registration. Two types of position registration techniques may be implemented: a hard registration and a soft registration. The soft registration is an algorithm implemented in the program of the controller. The hard registration uses a registration sensor that yields better position registration accuracy than the soft registration. The operation of each registration technique is described next in order to compare the performance, operation, and limitations of both techniques. Description of Operation of the Hard The operation of a hard registration is:. A Motion Arm (MAR) instruction is executed and the drive begins to monitor the registration input specified in this instruction. At this moment, a dedicated hardware in the drive automatically monitors the state of the selected registration input (input or input 2), which is illustrated as follows. Figure - Hard Encoder Encoder Counter Sensor Latch Position

2 Time-based Position Capture Algorithm 2. When a transition of the edge (positive or negative) specified in the MAR instruction occurs on the registration sensor, the actual position is latched by the registration latch. 3. This registration position is transferred to the SERCOS module on the next cycle time and axis to the controller on the next coarse update period. This registration position is stored in the Position attribute if registration input is used or in the 2Position attribute if registration input 2 is used. This position is stored in position units.. The lower 32 bits of the CST (6 bits total) time at which this registration event occurred is saved in the Time attribute if registration input is used or 2Time attribute if registration input 2 is used. This time is given in microseconds. The resolution of the Time attribute and 2Time attribute is the cycle time. For example, the shortest step in time that is stored in these attributes is given by the cycle time of the SERCOS ring. This is a key point for the soft registration. The uncertainty of this hard registration is: Uncertainty = AxisSpeed Delay The axis speed in given in position units per second, and the delay is given in seconds. The Delay is the period of time necessary to identify the specific transition on the registration input of the servo drive. This delay is typically µs for hardware registration. Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm 3 Description of Operation of the Soft This section describes the operation of the TBPC algorithm for soft registration, which is illustrated below. Figure 2 - Time-based Position Capture Algorithm SSV Axis with hard registration sensor Time Actual Position History Interpolated Actual Position Interpolation Time Other System Time Command Position History Interpolated Command Position Axis with hard registration sensor Axis to calculate registration position Controlled by Controller The operation of the TBPC algorithm described in this application note is based on the system configuration shown in Figure 3. In this system, the first axis (Axis 0) is connected to a registration sensor to watch for hard registration events. When a hard registration event occurs on the first axis, the actual position and command position of the second axis (Axis 02) will be computed by the TBPC algorithm. Thus, the TBPC algorithm is being used for software registration of the second axis. Figure 3 - System Configuration for a Soft on Axis 02 Controller Motion Planner (Coarse Update Period) SERCOS module SERCOS ring (Cycle Time) Axis 0 Axis 02 Sensor Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm The operation of the TBPC algorithm is:. A MAR instruction is executed and the drive of the first axis (Axis 0) begins to monitor the registration events. 2. When a transition on the registration sensor of the first axis (Axis 0) occurs, the actual position and the registration time of Axis 0 are saved. See Description of Operation of the Hard. 3. The Time attribute saves the registration time if the registration input is being used. Otherwise, the 2Time attribute saves the registration time if registration input 2 is being used. The resolution of the Time attribute and 2Time attribute is the cycle time as shown in Figure. Thus, the registration time is a multiple of the cycle time. Although the registration event occurred between 5000 and 6000 µs, in the example illustrated below, the registration time will not be able to save the exact time in which the registration event occurred. Thus, the registration time will be saved as 6000 µs, which represents a resolution of millisecond (000 µs) because the cycle time is millisecond for this example. Figure - Example of the Time Example: Coarse Update Period: ms Cycle Time: ms event time = 6000 0 000 cycle time 8000 200 CST (μs) coarse update. A Set System Value (SSV) instruction is executed to set the interpolation time attribute (InterpolationTime) of Axis 02 with the registration time attribute of Axis 0. See Figure 2 - Time-based Position Capture Algorithm. The interpolated actual position (InterpolatedActualPosition) and the interpolated command position (InterpolatedCommandPosition) axis attributes are automatically calculated when the InterpolationTime axis attribute is updated. The procedure to obtain the InterpolationTime for Axis 02 is given as follows: Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm 5 The controller stores the actual position and the command position at each coarse update period in a history buffer with capacity for 00 samples. The controller can track the trajectory of the last 00 positions (actual and command) of each axis. As the following table shows, each sample in this history buffer is associated with a time stamp. Table - Example of Data Saved in History Buffer for 00 Coarse Update Periods Time stamp ActualPosition CommandPosition t x a x c t 2 x a2 x c2 t 3 x a3 x c3 t x a x c The time stamp is essentially the Coordinated System Time (CST) of the controller when the motion planner is executed. The actual position is the value read from the drive during input updates of the coarse update period. The command position is the last value in the motion planner. A first order interpolation is used to compute the interpolated actual position. A second order interpolation is used to compute the interpolated command position based on the history of positions and the InterpolationTime axis attribute. 5. The value of the interpolated actual position and the interpolated command position of Axis 02 are directly read on the InterpolatedActualPosition and the InterpolatedCommandPosition attributes. The main core of TBPC algorithm code is: Figure 5 - Portion of Code in Ladder for a Time-Based Position Capture Algorithm Publication 209-AT00A-EN-P - September 2007

6 Time-based Position Capture Algorithm Limitations of the Time-Based Position Capture Algorithm This section discusses the limitations and the accuracy of the TBPC algorithm. Results may vary according to the configuration of the motion planner. The system configuration for a soft registration was implemented with Kinetix 6000 drives and ControlLogix system to obtain experimental results that show the limitations of the TBPC algorithm. Both axes, Axis 0 and Axis 02, were running independently (not geared) at constant speed. The results shown in Table 2 and Table 3 show the effect of cycle time and coarse update period on the TBPC algorithm (referred in the tables as Soft ) in comparison with a hard registration. The results for both hard registration and soft registration were generated for Axis 02 in such a manner that a soft and a hard registration were running at the same time in the controller for comparison purposes. This was accomplished with the registration switch connected in parallel to both drives (Axis 0 and Axis 02). The results were obtained from about 0 registrations per second (3500 deg/s) to about one registration per second (350 deg/s). Each result shown in this table is a result of 00 registration events. Observe that a larger cycle time results in a larger mean error and a larger standard deviation. See Table 2 - Hard Compared to Soft (Cycle Time of the SERCOS Ring). A faster registration rate also yields a larger error in both the mean value and standard deviation. A soft registration returns an interpolated actual position with a larger difference to the exact actual position than the actual position obtained from a hard registration in addition to a larger variability (lower repeatability). A hard registration presents an expected standard deviation different than zero as shown in Table 2 because the registration sensor is not ideal. Thus, a registration sensor which does not have the ability to activate the registration input at the exact same point each time during a hard registration render the position registration errors represented by the standard deviation. Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm 7 Table 2 - Hard Compared to Soft (Cycle Time of the SERCOS Ring) Speed Cycle Coarse Update Hard Soft Mean Error Time Period mean ±std mean ±std Degree/s ms ms degrees degrees degrees degrees ()(2) HR m -SR m 3500 0.5 2 333.27 7.20 52.82 0.0822 0.085 0.077 332.07.2 7.63 0.80.079 2.008.20 3.08 5.9 700 0.5 2 39.83 7.68 3.93 0.066 0.069 0.0689 39.23 6.3.63 0.3533 0.50 0.979 0.60.55 2.30 350 0.5 2 33.29 55.73.96 0.060 0.076 0.06 33.7 55..7 0.0835 0. 0.232 0. 0.32 0.9 () (2) HR m = Mean value of the hard registration SR m = Mean value of the soft registration The behavior of a hard registration and a soft registration can be observed when Axis 0 and Axis 02 were running at 3500 degrees/s, cycle time of 2 milliseconds and coarse update of 8 milliseconds. Each step on the waveform for the soft registration represents one registration event. As this example shows, there are about 0 registrations per second. Figure 6 - Soft and Hard for Axis 02 at 3500 deg/s, Cycle Time of 2 milliseconds and Coarse Update of 8 milliseconds Position (degree) 36 3 32 30 28 26 2 Hard Soft 22 20 0 2000 000 6000 8000 0000 2000 Time (ms) Publication 209-AT00A-EN-P - September 2007

8 Time-based Position Capture Algorithm A similar analysis can be made to evaluate the effect of the coarse update time on the soft registration accuracy. Observe in the table below that the coarse update period of the motion planner does not interfere with the accuracy of the soft registration. The different coarse update periods from 2 milliseconds through 8 milliseconds yield approximately the same mean error and standard deviation for each speed. However, a faster registration rate yields a larger error in both mean value and standard deviation. Thus, the accuracy of the soft registration decreases with a greater speed. Table 3 - Hard Compared to Soft (Coarse Update Period of the Motion Planner) Speed Cycle Coarse Update Hard Soft Mean Error Time Period mean ±std mean ±std Degree/s ms ms degrees degrees degrees degrees HR ()(2) m -SR m 3500 700 350 2 8 6.50 7.20 272.2 0.0726 0.085 0.0708 3.9.2 269.00.0903.079.053 3.3 3.08 3.20 2 8 8.05 7.68 27.6 0.0673 0.069 0.0598 6.53 6.3 270.3 0.505 0.50 0.506.5.55.5 2 8 2.62 55.73 266.76 0.022 0.076 0.0509 2.32 55. 266. 0.6 0. 0.200 0.30 0.32 0.32 () HR m : Mean value of the Hard (2) SR m : Mean value of the Soft Note that the standard deviation of the soft registration drastically decreases when the period of time between each registration event is a multiple of the cycle time. For instance, 3600 degrees/s and 3000 degrees/s result in lower standard deviations while any other frequency between these two results in larger standard deviations for a cycle time of millisecond. Assuming one registration event per revolution, 3600 degrees/s yields a period of 00 milliseconds between each registration event, which is a multiple of a cycle time of millisecond. However, 3000 degrees/s yield a period of 20 milliseconds between each registration event, which is also a multiple of a cycle time of millisecond. Any other speed between 3000 and 3600 degrees/s yields a period between each registration event that is not a multiple of the cycle time. As the experimental results show, the hard registration should be used in applications that require greater accuracy in measuring the registration events instead of the TBPC algorithm technique. See Limitations of the Time-Based Position Capture Algorithm. Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm 9 Cause of Limitations of the Time-Based Position Capture Algorithm Lower accuracy of the TBPC algorithm is primarily associated with the precision of the registration time. As mentioned in the Description of Operation of the Hard, the resolution of the registration time is the SERCOS cycle time. A shorter cycle time yields a better resolution for the registration time, which in turn results in a better accuracy for the interpolated positions obtained through the TBPC algorithm. Thus, when a registration event occurs between two cycle times in the SERCOS ring, an error in the interpolated actual position and interpolated command position will result. See Figure - Example of the Time. The ability to interpolate positions is proportional to the precision in which the registration time is captured as shown in Figure 7. As this figure shows, a registration event at 2.2 milliseconds can result in different interpolated actual positions due to the resolution of the registration time. For example, the interpolated actual position with a cycle time of 2 milliseconds was found to be 200 when it should be calculated as 55. Meanwhile, an interpolated actual position of 62.5 was obtained with a faster cycle time of 0.5 milliseconds, which resulted in better accuracy for the TBPC algorithm. Figure 7 - Mathematical Representation of the Cycle Time Effect on TBPC Algorithm Accuracy event at 2.2ms event at 2.2ms event at 2.2ms Time 0 ms 0 ms 0 ms Position 00 200 00 200 00 200 Cycle time = 2ms time = ms Cycle time = ms time = 3ms Cycle time = 0.5ms time = 2.5ms Interpolation Interpolation Interpolation Interpolated Actual Position = 200 Interpolated Actual Position = 75 Interpolated Actual Position = 62.5 Position = 55 Publication 209-AT00A-EN-P - September 2007

0 Time-based Position Capture Algorithm This also explains why the coarse update period does not interfere in the TBPC algorithm accuracy. This is because the coarse update period does not change the resolution of the registration time as the cycle time does. Thus, additional error in the registration time and consequently in the interpolated positions is not generated when different coarse update periods are used. The uncertainty of the TBPC technique is: Uncertainty AxisSpeed CycleTime The axis speed is given in position units per second and the cycle time is given in seconds. This uncertainty equation can be tested in Table 2 and Table 3. The results obtained for the uncertainty through this equation are close to the values in the error columns of these tables. CIP Motion versus SERCOS for Time-Based Position Capture Algorithm The Common Industrial Protocol (CIP) motion can provide high performance, multi-axis, and synchronized motion. The CIP motion also provides a clock synchronization of 00 nanoseconds between the controller and the servo drives. As a result, the clock in the servo drives is synchronized with the clock of the controller. When a hard registration event occurs, the registration position will be time-stamped. This will result in a registration time independent of the cycle time. Thus, the TBPC algorithm accuracy that is associated with the resolution of the registration time in SERCOS is supposed to be greatly increased in CIP motion. Equipment The pieces of equipment used in this Application Note to generate the results presented here are: Integrated Axis Module: 209-AC09-M02 - FW.89.02 Axis Module: 209-AM0 - FW.89.08 Controller: 756-L63/A - FW 5.3 SERCOS module: 756-M08SE - FW 5.37 RSLogix5000 V5.00.00 Publication 209-AT00A-EN-P - September 2007

Time-based Position Capture Algorithm Additional Resources These documents contain additional information concerning related Rockwell Automation products. Resource Motion Modules in Logix5000 Control Systems, publication LOGIX-UM002 ODVA Common Industrail Protocol Motion Brochure, publication 002-BR00 Description Provides details about how to setup and program motion control using Logix motion modules. Provides details about multi-axis synchronized motion over EtherNet/IP. You can view or download publications at http://literature.rockwellautomation.com. To order paper copies of technical documentation, contact your local Rockwell Automation distributor or sales representative. Publication 209-AT00A-EN-P - September 2007

Rockwell Automation Support Rockwell Automation provides technical information on the Web to assist you in using its products. At http://support.rockwellautomation.com, you can find technical manuals, a knowledge base of FAQs, technical and application notes, sample code and links to software service packs, and a MySupport feature that you can customize to make the best use of these tools. For an additional level of technical phone support for installation, configuration, and troubleshooting, we offer TechConnect support programs. For more information, contact your local distributor or Rockwell Automation representative, or visit http://support.rockwellautomation.com. Installation Assistance If you experience a problem within the first 2 hours of installation, please review the information that's contained in this manual. You can also contact a special Customer Support number for initial help in getting your product up and running. United States.0.66.33 Monday Friday, 8 a.m. 5 p.m. EST Outside United States Please contact your local Rockwell Automation representative for any technical support issues. New Product Satisfaction Return Rockwell Automation tests all of its products to ensure that they are fully operational when shipped from the manufacturing facility. However, if your product is not functioning and needs to be returned, follow these procedures. United States Outside United States Contact your distributor. You must provide a Customer Support case number (see phone number above to obtain one) to your distributor in order to complete the return process. Please contact your local Rockwell Automation representative for the return procedure. Allen-Bradley, Rockwell Automation, and TechConnect are trademarks of Rockwell Automation, Inc. Trademarks not belonging to Rockwell Automation are property of their respective companies. Publication 209-AT00A-EN-P - September 2007 2 Copyright 2007 Rockwell Automation, Inc. All rights reserved. Printed in the U.S.A.