Moog SmartMotor SM34165MT-IP Ethernet Ip Manual

Page 1
For the mobile version of this guide, see:
animatics.com/docs/guides-html/c6_eip_pc/
EtherNet/IP Guide
Class 6 SmartMotor Technology
Page 2
Copyright Notice
©2015, Moog Inc., Animatics.
This manual, as well as the software described in it, is furnished under license and may be used or copied only in accordance with the terms of such license. The content of this manual is furnished for informational use only, is subject to change without notice and should not be con­strued as a commitment by Moog Inc., Animatics. Moog Inc., Animatics assumes no respons­ibility or liability for any errors or inaccuracies that may appear herein.
Except as permitted by such license, no part of this publication may be reproduced, stored in a retrieval system or transmitted, in any form or by any means, electronic, mechanical, record­ing, or otherwise, without the prior written permission of Moog Inc., Animatics.
The programs and code samples in this manual are provided for example purposes only. It is the user's responsibility to decide if a particular code sample or program applies to the applic­ation being developed and to adjust the values to fit that application.
Moog Animatics and the Moog Animatics logo, SmartMotor and the SmartMotor logo, Com­bitronic and the Combitronic logo are all trademarks of Moog Inc., Animatics. CIP, DeviceNet and EtherNet/IP are trademarks of ODVA, Inc. Other trademarks are the property of their respective owners.
Please let us know if you find any errors or omissions in this manual so that we can improve it for future readers. Such notifications should contain the words "EtherNet/IP Guide" in the sub­ject line and be sent by e-mail to: techwriter@moog.animatics.com. Thank you in advance for your contribution.
Contact Us:
Moog Inc., Animatics 1421 McCarthy Boulevard Milpitas, CA 95035 USA
Tel: 1 (408) 965-3320 Fax: 1 (408) 965-3319 Support: 1 (888) 356-0357
www.animatics.com
Page 3
Table of Contents
Introduction 7
Purpose 8
Abbreviations and Definitions 9
Safety Information 11
Safety Symbols 11
Other Safety Considerations 11
Safety Information Resources 13
Additional Documents 14
Additional Resources 15
EtherNet/IP Overview 17
EtherNet/IP Introduction 18
The OSI Model 18
EtherNet/IP Adaptation of CIP 19
Objects 21
Objects 21
Classes, Instances and Attributes 22
Messaging 23
Explicit (Non-cyclic) Messages 23
Implicit (Cyclic) Messages 23
Explicit/Implicit Messaging Example 23
Connections, Wiring and Status LEDs 25
Connectors and Pinouts 26
M-Style Motor Connectors and Pinouts 26
Moog Animatics Industrial Ethernet Cables 27
EtherNet/IP Custom Cable 27
Cable Diagram 28
EtherNet/IP Cable Diagram 28
Status LEDs 29
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 3 of 160
Page 4
EtherNet/IP on Class 6 SmartMotors 31
EtherNet/IP Implementation 32
EtherNet/IP Identity 32
EtherNet/IP Software Version Numbers 32
Device Profile 32
SmartMotor Device Profile Overview 33
CIP Objects for EtherNet/IP Devices 33
Application Objects for Position Controller Devices 34
Additional Objects 34
EDS File 35
EtherNet/IP User Program Commands 37
Network Settings and Status Commands 38
Program Example 40
Status and Diagnostic Codes 41
Status/Error Codes 41
Diagnostic Codes 41
Position Controller Device (0x10) 43
Position Controller Device Application Objects 44
Position Controller Device Object Model 44
Position Controller Implicit I/O Messages 45
General Command and Response Message Types 45
Attribute GET/SET Command Types 0x1A and 0x1B 50
Error Response Message Type (0x14) 51
Semantics for Command and Response Messages 52
Position Controller I/O Handshaking 55
Profile Moves 56
Torque Command 57
Control Mode Change - Change Dynamic 57
Position Controller Implicit I/O Message Examples 58
SmartMotor Notes 58
Set Acceleration 58
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 4 of 160
Page 5
Set Velocity, Leave Drive ON 59
Set Target Position, Perform Move 59
Disable Hardware Limits (Object 0x25, Attribute 49) 59
Extended Position Move (32-byte frame) 60
Object Reference 61
Required Objects 62
Identity Object (0x01) 63
Instance Attributes Semantics 65
Message Router Object (0x02) 67
Assembly Object (0x04) 68
Connection Manager Object (0x06) 69
TCP/IP Interface Object (0xF5) 70
Instance Attributes Semantics 74
Ethernet Link Object (0xF6) 77
Instance Attributes Semantics 80
Application Objects 83
Position Controller Supervisor (0x24) 84
Position Controller (0x25) 86
Additional Objects 91
Device Level Ring (DLR) Object (0x47) 92
Instance Attributes Semantics 93
QoS Object (0x48) 94
SmartMotor I/O Object (0x71) 96
AOI Descriptions - Allen Bradley PLC 99
SM6_Attribute_Ext_Clear - Clear Attribute to Get (Extended Command) 100
SM6_Attribute_Ext_Get - Load Attribute to Get ID & Wait (Extended Command) 101
SM6_Attribute_Ext_Load - Load Attribute to Get ID (Extended Command) 102
SM6_Attribute_Ext_Value - Return Attribute data (Extended Command) 104
SM6_Clear_Flags - Reset System State Flag 106
SM6_Disable - Disable Drive 107
SM6_Drive - Drive Data Exchange 108
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 5 of 160
Page 6
SM6_Enable - Enable Drive 110
SM6_Get_Attribute - Get Drive Attribute 111
SM6_Move_Position_Ext - Position Move(Extended Command) 112
SM6_Move_Velocity_Ext - Velocity Move(Extended Command) 114
SM6_Move_Torque - Apply Torque 116
SM6_Set_Acceleration - Set Drive Acceleration 117
SM6_Set_Attribute - Set Drive Attribute 118
SM6_Set_Deceleration - Set Drive Deceleration 119
SM6_Set_Mode - Set Drive Mode 120
SM6_Set_Position - Set Drive Position 121
SM6_Set_Variable_u - Set Drive Variable "u" 122
SM6_Set_Velocity - Set Drive Target Velocity 123
SM6_Stop_Hard - Perform a Hard Stop 124
SM6_Stop_Smooth - Perform a Smooth Stop 125
Adding AOI Support - Allen Bradley PLC 127
Extracting the SmartMotor Support files 128
Adding a SmartMotor Module 129
Importing the UDTs 136
Importing the AOIs 140
SmartMotor AOI Example 144
Troubleshooting 155
Reference Documents 157
ODVA Specifications 157
ODVA Libraries 157
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 6 of 160
Page 7

Introduction

Introduction
This chapter provides information on the purpose and scope of this manual. It also provides information on safety notation, related documents and additional resources.
Purpose 8
Abbreviations and Definitions 9
Safety Information 11
Safety Symbols 11
Other Safety Considerations 11
Safety Information Resources 13
Additional Documents 14
Additional Resources 15
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 7 of 160
Page 8

Purpose

Purpose
This manual explains the Moog Animatics Class 6 SmartMotor™ support for the EtherNet/IP™ protocol. It describes the major concepts that must be understood to integrate a SmartMotor slave with a PLC or other EtherNet/IP master. However, it does not cover all the low-level details of the EtherNet/IP protocol.
NOTE: The feature set described in this manual requires a specific motor firmware version. Please consult Moog Animatics for the proper software version.
This manual is intended for programmers or system developers who have read and under­stand THECIPNETWORKSLIBRARYVolume1-CommonIndustrialProtocol(CIP™) and THE CIPNETWORKSLIBRARYVolume2-EtherNet/IPAdaptationofCIP, which are published and maintained by ODVA.org (http://www.odva.org). Therefore, this manual is not a tutorial on those specifications or the EtherNet/IP protocol. Instead, it should be used to understand the specific implementation details for the Moog Animatics SmartMotor. For a general overview of EtherNet/IP, see EtherNet/IP Overview on page 17.
The reference chapters of this manual include details about the specific commands available in the SmartMotor through the EtherNet/IP protocol. The commands include those required by the specifications and those added by Moog Animatics.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 8 of 160
Page 9

Abbreviations and Definitions

Abbreviations and Definitions
The following table provides a list of abbreviations and definitions of terms that may be used in this manual or related documents.
Abbreviation/
Term
API Actual Packet Interval
ASCII American Standard Code for Information Interchange
AT Acceleration Target
BOI Buss-Off Interrupt
Client A device that sends a request to, and expects a response from, a server.
Consumer Network device that reads messages from a producer device.
CoS Change of State I/O trigger
DC Direct Current
DLR Device Level Ring. A ring topology that allows the Ethernet devices to
keep communicating if there is a break in the ring.
DT Deceleration Target
EDS Electronic Data Sheet. A text file that contains configuration information
for the device.
EPR Expected Packet Rate
EtherNet/IP Ethernet Industrial Protocol
Description
Explicit mes­saging
FOC Field Oriented Current
FTP File Transfer Protocol
IE Industrial Ethernet
Implicit mes­saging
IN Input
LAN Local Area Network
MACID Media Access Control Identifier
NASM Network Access State Machine
ODVA Open DeviceNet Vendors Association, Inc, which is the standards organ-
OUT Output
PDU Protocol Data Unit
PLC Programmable Logic Controller
(Non-cyclic) Not time-sensitive, typically used for network and device configuration, and setup of cyclic connections.
(Cyclic) Timely, repetitive transfer of data, typically used for I/O control (e.g., PID loop closure).
ization that maintains the specifications for the CIP industrial network pro­tocols.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 9 of 160
Page 10
Abbreviations and Definitions
Abbreviation/
Term
Description
Producer A device that puts messages on the network for "consumer" devices
(other network devices that will read the messages).
PU Position Units
PV Profile Velocity (mode)
PT Position Target
RTE Real-Time Ethernet
Rx Receive
Server A device that receives requests from clients and sends responses to
them.
Slave device Device consuming data transfers from a Network Master. A PLC (Pro-
grammable Logic Controller) is a good example of a Master.
SMI SmartMotor Interface (software)
STD State Transition Diagram
TCP Transmission Control Protocol
TQ Torque (mode)
Tx Transmit
UDP User Datagram Protocol
UCMM Unconnected Message Manager
VU Velocity Units
VT Velocity Target
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 10 of 160
Page 11

Safety Information

Safety Information
This section describes the safety symbols and other safety information.

Safety Symbols

The manual may use one or more of the following safety symbols:
WARNING: This symbol indicates a potentially non-lethal mechanical hazard, where failure to follow the instructions could result in serious injury to the operator or major damage to the equipment.
CAUTION: This symbol indicates a potential minor hazard, where failure to fol­low the instructions could result in slight injury to the operator or minor dam­age to the equipment.
NOTE: Notes are used to emphasize non-safety concepts or related information.

Other Safety Considerations

The Moog Animatics SmartMotors are supplied as components that are intended for use in an automated machine or system. As such, it is beyond the scope of this manual to attempt to cover all the safety standards and considerations that are part of the overall machine/system design and manufacturing safety. Therefore, the following information is intended to be used only as a general guideline for the machine/system designer.
It is the responsibility of the machine/system designer to perform a thorough "Risk Assess­ment" and to ensure that the machine/system and its safeguards comply with the safety stand­ards specified by the governing authority (for example, ISO, OSHA, UL, etc.) for the locale where the machine is being installed and operated. For more details, see Machine Safety on page 12.
Motor Sizing
It is the responsibility of the machine/system designer to select SmartMotors that are prop­erly sized for the specific application. Undersized motors may: perform poorly, cause excess­ive downtime or cause unsafe operating conditions by not being able to handle the loads placed on them. The MoogAnimaticsProductCatalog, which is available on the Moog Anim- atics website, contains information and equations that can be used for selecting the appro­priate motor for the application.
Replacement motors must have the same specifications and firmware version used in the approved and validated system. Specification changes or firmware upgrades require the approval of the system designer and may require another Risk Assessment.
Environmental Considerations
It is the responsibility of the machine/system designer to evaluate the intended operating environment for dust, high-humidity or presence of water (for example, a food-processing environment that requires water or steam wash down of equipment), corrosives or chemicals
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 11 of 160
Page 12
Other Safety Considerations
that may come in contact with the machine, etc. Moog Animatics manufactures specialized IP­rated motors for operating in extreme conditions. For details, see the MoogAnimaticsProduct Catalog, which is available on the Moog Animatics website.
Machine Safety
In order to protect personnel from any safety hazards in the machine or system, the machine/system builder must perform a "Risk Assessment", which is often based on the ISO 13849 standard. The design/implementation of barriers, emergency stop (E-stop) mech­anisms and other safeguards will be driven by the Risk Assessment and the safety standards specified by the governing authority (for example, ISO, OSHA, UL, etc.) for the locale where the machine is being installed and operated. The methodology and details of such an assess­ment are beyond the scope of this manual. However, there are various sources of Risk Assess­ment information available in print and on the internet.
NOTE: The following list is an example of items that would be evaluated when per­forming the Risk Assessment. Additional items may be required. The safeguards must ensure the safety of all personnel who may come in contact with or be in the vicinity of the machine.
In general, the machine/system safeguards must:
l
Provide a barrier to prevent unauthorized entry or access to the machine or system. The barrier must be designed so that personnel cannot reach into any identified danger zones.
l
Position the control panel so that it is outside the barrier area but located for an unres­tricted view of the moving mechanism. The control panel must include an E-stop mech­anism. Buttons that start the machine must be protected from accidental activation.
l
Provide E-stop mechanisms located at the control panel and at other points around the perimeter of the barrier that will stop all machine movement when tripped.
l
Provide appropriate sensors and interlocks on gates or other points of entry into the pro­tected zone that will stop all machine movement when tripped.
l
Ensure that if a portable control/programming device is supplied (for example, a hand­held operator/programmer pendant), the device is equipped with an E-stop mechanism.
NOTE: A portable operation/programming device requires many additional system design considerations and safeguards beyond those listed in this sec­tion. For details, see the safety standards specified by the governing author­ity (for example, ISO, OSHA, UL, etc.) for the locale where the machine is being installed and operated.
l
Prevent contact with moving mechanisms (for example, arms, gears, belts, pulleys, tooling, etc.).
l
Prevent contact with a part that is thrown from the machine tooling or other part-hand­ling equipment.
l
Prevent contact with any electrical, hydraulic, pneumatic, thermal, chemical or other hazards that may be present at the machine.
l
Prevent unauthorized access to wiring and power-supply cabinets, electrical boxes, etc.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 12 of 160
Page 13

Safety Information Resources

l
Provide a proper control system, program logic and error checking to ensure the safety of all personnel and equipment (for example, to prevent a run-away condition). The con­trol system must be designed so that it does not automatically restart the machine/sys­tem after a power failure.
l
Prevent unauthorized access or changes to the control system or software.
Documentation and Training
It is the responsibility of the machine/system designer to provide documentation on safety, operation, maintenance and programming, along with training for all machine operators, main­tenance technicians, programmers, and other personnel who may have access to the machine. This documentation must include proper lockout/tagout procedures for maintenance and programming operations.
It is the responsibility of the operating company to ensure that:
l
All operators, maintenance technicians, programmers and other personnel are tested and qualified before acquiring access to the machine or system.
l
The above personnel perform their assigned functions in a responsible and safe manner to comply with the procedures in the supplied documentation and the company safety practices.
l
The equipment is maintained as described in the documentation and training supplied by the machine/system designer.
Additional Equipment and Considerations
The Risk Assessment and the operating company's standard safety policies will dictate the need for additional equipment. In general, it is the responsibility of the operating company to ensure that:
l
Unauthorized access to the machine is prevented at all times.
l
The personnel are supplied with the proper equipment for the environment and their job functions, which may include: safety glasses, hearing protection, safety footwear, smocks or aprons, gloves, hard hats and other protective gear.
l
The work area is equipped with proper safety equipment such as first aid equipment, fire suppression equipment, emergency eye wash and full-body wash stations, etc.
l
There are no modifications made to the machine or system without proper engineering evaluation for design, safety, reliability, etc., and a Risk Assessment.
Safety Information Resources
Additional SmartMotor safety information can be found on the Moog Animatics website; open the file "109_Controls, Warnings and Cautions.pdf" located at:
http://www.animatics.com/support/moog-animatics-catalog.html
OSHA standards information can be found at:
https://www.osha.gov/law-regs.html
ANSI-RIA robotic safety information can be found at:
http://www.robotics.org/robotic-content.cfm/Robotics/Safety-Compliance/id/23
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 13 of 160
Page 14

Additional Documents

UL standards information can be found at:
http://ulstandards.ul.com/standards-catalog/
ISO standards information can be found at:
http://www.iso.org/iso/home/standards.htm
EU standards information can be found at:
http://ec.europa.eu/growth/single-market/european-standards/harmonised-stand­ards/index_en.htm
Additional Documents
The Moog Animatics website contains additional documents that are related to the information in this manual. Please refer to the following list:
l
Class6SmartMotor™Installation&StartupGuide
http://www.animatics.com/smartmotor-install-startup-guides
l
SmartMotor™Developer'sGuide
http://www.animatics.com/smartmotor-developers-guide
l
SmartMotor™ProductCertificateofConformance
http://www.animatics.com/download/Declaration of Conformity.pdf
l
SmartMotor™ULCertification
http://www.animatics.com/download/MA_UL_online_listing.pdf
l
SmartMotorDeveloper'sWorksheet (interactive tools to assist developer: Scale Factor Calculator, Status Words, CAN Port Status, Serial Port Status, RMODE Decoder, and Syntax Error Codes)
http://www.animatics.com/tools
l
MoogAnimaticsProductCatalog
http://www.animatics.com/support/moog-animatics-catalog.html
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 14 of 160
Page 15

Additional Resources

Additional Resources
The Moog Animatics website contains additional resources such as product information, doc­umentation, product support and more. Please refer to the following addresses:
l
General company information:
http://www.animatics.com
l
Product information:
http://www.animatics.com/products.html
l
Product support (Downloads, How To videos, Forums, Knowledge Base, and FAQs):
http://www.animatics.com/support.html
l
Sales and distributor information:
http://www.animatics.com/sales-offices.html
l
Application ideas (including videos and sample programs):
http://www.animatics.com/applications.html
EtherNet/IP is a common standard maintained by by ODVA.org:
l
ODVA.org website:
http://www.odva.org/
l An EtherNet/IP Quick Start for Vendors Handbook is available at:
http://www.odva.org/Portals/0/Library/Publications_Numbered/PUB00213R0_Ether­NetIP_Developers_Guide.pdf
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 15 of 160
Page 16
Page 17

EtherNet/IP Overview

EtherNet/IP Overview
This chapter provides an overview of EtherNet/IP features. These sections briefly summarize the technical information provided on the ODVA.org website. To view the fully detailed inform­ation or to obtain the specifications, see the ODVA.org website at: http://www.odva.org.
EtherNet/IP Introduction 18
The OSI Model 18
EtherNet/IP Adaptation of CIP 19
Objects 21
Objects 21
Classes, Instances and Attributes 22
Messaging 23
Explicit (Non-cyclic) Messages 23
Implicit (Cyclic) Messages 23
Explicit/Implicit Messaging Example 23
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 17 of 160
Page 18

EtherNet/IP Introduction

EtherNet/IP
TM
DeviceNet
TM
Physical
Data Link
Network
Transport
Session
Presentation
Application,
Proles
Common Industrial Protocol (CIP)
CIP Network Adaptations
OSI Model Layers
Semicond.
Proles
I/O
Proles
Transducer
Proles
Motion Ctrl
Proles
CIP Motion
TM
Proles
Other
Proles
Safety Serv. & Messages
Safety Obj.
Library
CIP Safety
TM
Proles
Connection Management and Routing
Data Management Services
(Explicit and I/O Messages)
Object Library
(Communications, Applications, Time Synchronization)
DeviceNet Physical Layer
CAN CSMA/NBA
DeviceNet Network and Transport
Ethernet Physical Layer
Ethernet CSMA/CD
Internet Protocol
TCP/UDP
EtherNet/IP Introduction
Ethernet/Industrial Protocol (EtherNet/IP) is a fieldbus communications protocol that was ini­tially developed in the 1990s. It is now a CIP-based technology that is managed by the Open DeviceNet Vendors Association (ODVA), which is a standards organization that manages all CIP network technologies.
EtherNet/IP and DeviceNet are two CIP network technologies that are supported by Moog Animatics (see OSI Model for EtherNet/IP and DeviceNet on page 18). These networks share the same CIP layers and use objects to describe the network devices (this collection of objects specific to a device is the device profile). Because of this, they are able to communicate with each other. For example, a device on an EtherNet/IP network can communicate with one on a DeviceNet network. For more information on CIP objects, see Objects on page 21.
The Class 6 EtherNet/IP SmartMotor is designed to operate as a device on an EtherNet/IP net­work. This allows the system designer to take advantage of SmartMotor technology through its device profile (for example, start a user program stored in the SmartMotor). For details on the SmartMotor device profile using the Position Controller device, see SmartMotor Device Profile Overview on page 33.
The full specification for EtherNet/IP is available from the ODVA.org website. For details, see
THECIPNETWORKSLIBRARYVolume1-CommonIndustrialProtocol(CIP™) and THECIP NETWORKSLIBRARYVolume2-EtherNet/IPAdaptationofCIP.

The OSI Model

The OSI model describes the architecture for the CIP-based industrial network protocols. Moog Animatics supports EtherNet/IP and DeviceNet using the Position Controller Supervisor and Position Controller profiles. The other profiles shown are not currently supported.
OSIModelforEtherNet/IPandDeviceNet
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 18 of 160
Page 19

EtherNet/IP Adaptation of CIP

Peer-to-peer, multicast, unicast
Ethernet
Internet Protocol (IP)
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP)
Explicit
Messages
Device Proles and
Application Objects
Physical
Data Link
Network
Transport
Session
Presentation
Application
Implicit
Messages
IEEE Standards
TCP/IP Suite
Common Industrial Protocol (CIP)
OSI Model Layers
The following table provides a brief description of each of the seven OSI model layer.
Layer Description
Physical The physical properties—electrical and mechanical—of the network
(e.g., cables, connectors, pin-outs, voltages, flow control, etc.). For EtherNet/IP, it is based on IEEE 802.3 technology.
Data Link How packets of data will be transmitted between devices (MAC, CRC,
etc.). For EtherNet/IP, it is based on IEEE 802.3 technology.
Network The switching and routing layer, i.e, anything related to the device
IP address, DNS, datagrams, cyclic and non-cyclic. For EtherNet/IP, uses the TCP/IP Suite.
Transport Controls how much data (size of block) that will be sent and received,
manages the delay time between messages, maintains the quality of ser­vice (QoS). For EtherNet/IP, uses the TCP/IP Suite, uses both TCP and UDP.
Session Opens/closes and manages the connection between devices and applic-
ations, explicit and implicit messages are used. This layer is part of CIP.
Presentation Delivers and formats information to/from the application layer (trans-
lates data from the network to the application or from the application to the network). This layer is part of CIP.
Application Handles the application that provides the user interaction. This layer is
part of CIP.
For more details, see the ODVA.org website.
EtherNet/IP Adaptation of CIP
EtherNet/IP is an implementation of Ethernet technology with the addition of CIP layers. Like other ODVA industrial network protocols, it is based on the OSI model. Therefore, it is spe­cifically tailored for industrial environments and applications. Refer to the following figure.
OSIModel:EtherNet/IPImplementation
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 19 of 160
Page 20
EtherNet/IP Adaptation of CIP
As shown in the previous figure, EtherNet/IP uses two communication protocols for message transport:
l
Transmission Control Protocol (TCP) is used for Explicit messages—these are non-cyclic messages for device configuration and setup of cyclic connection content.
l
User Datagram Protocol (UDP) is used for Implicit (I/O) messages—these are cyclic messages that handle time-critical control data.
For more details on messages, see Messaging on page 23. Also, see Position Controller Implicit I/O Messages on page 45.
EtherNet/IP is designed to be reliable, easily expanded for future growth, and can the­oretically handle an unlimited number of devices. Note, however, that there may be other factors that impose limitations on the size of the network.
For more details, see the ODVA.org website.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 20 of 160
Page 21

Objects

CIP Network
Required = Optional =
Assembly
Object
Application
Object(s)
Parameter
Object
Message Router
Identity
Object
TCP/IP Interface
Object
Ethernet Link
Object
Connection Manager
Object
I/O
Explicit
Msg

Objects

This section briefly describes the features of CIP device objects. For more details, see THE CIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol(CIP™), which is available
on the ODVA.org website.
Objects
Because EtherNet/IP is a CIP-based network, the network devices are described through sets of objects. Each set of objects is organized in a specific manner with specific attributes so that each network device operates in a certain way—that organization is the object model (or device model). Every device with the same object model will operate in the same manner.
NOTE: All device features must be described through objects in order to be access­ible through CIP.
The following types of objects are used in a device profile:
l
Required objects: these must be present in every CIP device.
l
Application objects: these are specific to the type of device and its function.
l
Manufacturer-Specific objects: these are optional objects that are specific to each device manufacturer.
The following figure shows a version of the EtherNet/IP object model with required and optional objects.
EtherNet/IPObjectModel
For the SmartMotor-specific model, see the object model for your SmartMotor application, which is described later in this guide.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 21 of 160
Page 22

Classes, Instances and Attributes

Device Address
Object 2
Instance 1
Object Class 2
Object 1
Instance 2
Object Class 1
Attribute 3
Attribute 2
Attribute 1
Object 1
Instance 1
Attribute 3
Attribute 2
Attribute 1
Classes, Instances and Attributes
The CIP object model uses classes, instances and attributes to describe each device. Refer to the following figure.
l
Class: a fixed collection of objects with each object having a fixed set of attributes. The CIP object library contains three primary object classes: general use, application spe­cific, and network specific.
l
Instance: an occurrence of a particular object (in other words, there can be more than one occurrence of the same object but with different attribute values).
l
Attributes: a set of data values that describe an object instance (instance attributes). They can also describe an object class (class attributes).
Classes,Instances,Attributes
The device description (class, instance, attributes) information is also contained in the Elec­tronic Data Sheet (EDS) file, which is supplied by the equipment vendor (see EDS File on page
35).
For more details, see the ODVA.org website.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 22 of 160
Page 23

Messaging

Tool
I/O Connection
Object
Device A
I/O Connection
Object
Device B
I/O Connection
Object
Device A
I/O Connection
Object
Device B
I/O Connection from A to B
(Implicit messaging)
Congure connection instance
(Explicit messaging)
Congure connection instance
(Explicit messaging)
CONFIGURATIONRESULT
Messaging
There are two types of messages used by EtherNet/IP: explicit messages and implicit mes­sages. Each is described in the following sections.

Explicit (Non-cyclic) Messages

Explicit messages are non-cyclic, i.e., they are typically sent once instead of at regular inter­vals. Further, explicit messages are not time sensitive. They are used for communicating information such as configuration, diagnostic, data logs, and other information that is not time critical. They can also be used to set up implicit (cyclic) connection content (see the next sec­tion).
Explicit messages are point-to-point messages. In other words, a device sends out a message directed to a specific recipient device. The recipient device will return a response to that mes­sage. As a result, the explicit messages are much larger than implicit messages (refer to the next section) and can generate a lot of network traffic; therefore, they are not used for trans­mitting cyclic data.

Implicit (Cyclic) Messages

Implicit messages (also referred to as I/O messages) are cyclic, i.e., they are sent at regular intervals. Implicit messages are used to communicate critical, time-sensitive information. They are typically used for I/O control, PID loop closure, and Motion or Application control.
The implicit message connection between the two devices is established up front and con­nection ID assignment is made. Therefore, the actual implicit messages contain just the con­nection ID and the data. As a result, implicit messages are very small, they can travel quickly, and they do not use much network bandwidth.

Explicit/Implicit Messaging Example

In the following figure, a tool uses explicit messaging to configure the connections between two network devices. Once that I/O connection is established, the devices can communicate using implicit messaging. For more details, see THECIPNETWORKSLIBRARY,Volume1:Com-
monIndustrialProtocol(CIP™), which is available on the ODVA.org website.
Explicit/ImplicitMessagingExample
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 23 of 160
Page 24
Page 25

Connections, Wiring and Status LEDs

Connections, Wiring and Status LEDs
This chapter provides information on the SmartMotor connectors, a multidrop cable diagram, and a description of the SmartMotor status LEDs.
Connectors and Pinouts 26
M-Style Motor Connectors and Pinouts 26
Moog Animatics Industrial Ethernet Cables 27
EtherNet/IP Custom Cable 27
Cable Diagram 28
EtherNet/IP Cable Diagram 28
Status LEDs 29
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 25 of 160
Page 26

Connectors and Pinouts

1
2 3
4
POWER INPUT
PIN
FUNCTION
DESCRIPTION
1
24 VDC
CONTROL I/O POWER
2
EARTH
CHASSIS GROUND
3
GND
MOTOR COMMON GROUND
4
48 VDC
MOTOR POWER
1
2
3
4
5
6
7
8
COMMUNICATION
PIN
FUNCTION
1
GND-COMMON
2
RS-485B CH0
3
RS-485A CH0
4
ENC A+ IN
5
ENC B- IN
6
ENC A- IN
7
5 VDC OUT
8
ENC B+ IN
1
2
3
4
5
6
7
8
9
10
11
12
4
3 1
2
EtherNet/IP
PIN
FUNCTION
1
+TX
2
+RX
3
-TX
4
-RX
I/Os
PIN
FUNCTION
DESCRIPTION
1
IN0
GENERAL PURPOSE
2
IN1
GENERAL PURPOSE
3
IN2/POSLIMIT
POSITIVE LIMIT
4
IN3/NEGLIMIT
NEGATIVE LIMIT
5
IN4
GENERAL PURPOSE
6
IN5
GENERAL PURPOSE
7
IN6
GENERAL PURPOSE
8
IN7-DRVEN
DRIVE ENABLE
9
OUT8/BRAKE
BRAKE OUTPUT
10
OUT9-NOFAULT
NOT FAULT
11
24 VDC OUT*
CONTROL/IO POWER
12
GND
MOTOR COMMON GROUND
INPUT OR OUTPUT
INPUT, DISCRETE OR ANALOG
POSSIBLE (SELECTABLE) FUNCTIONS
INPUT, DISCRETE OR ANALOG INPUT INPUT INPUT
INPUT
INPUT
INPUT OUTPUT OUTPUT POWER OUTPUT** N/A
GENERAL PURPOSE GENERAL PURPOSE POSITIVE LIMIT OR GENERAL PURPOSE
NEGATIVE LIMIT OR GENERAL PURPOSE GENERAL PURPOSE, OR EXTERNAL ENCODER INDEX CAPTURE GENERAL PURPOSE, OR INTERNAL ENCODER INDEX CAPTURE GENERAL PURPOSE, G COMMAND, OR HOMING INPUT (ETHERCAT ONLY)
CONTROL I/O POWER N/A
NOT FAULT
BRAKE OUTPUT OR GENERAL-PURPOSE OUTPUT
DRIVE ENABLE
*NOTE: 2 AMPS MAX **SUPPLIED FROM POWER INPUT PIN 1
LED 4: EtherNet/IP Link 1 Port LED
LED 2: EtherNet/IP Network Status LED
LED 0: Motor Drive LED
LED 5: EtherNet/IP Link 2 Port LED
LED 3: EtherNet/IP Module Status LED
LED 1: Motor Busy LED
USB Active LED
Connectors and Pinouts

M-Style Motor Connectors and Pinouts

The following figure provides a brief overview of the connectors and pinouts available on the M-style SmartMotors.
NOTE: When daisy-chaining SmartMotors for an EtherNet/IP network, there is no specific IN or OUT Ethernet port. In other words, either Ethernet port can be used for the input or the output.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 26 of 160
Page 27

Moog Animatics Industrial Ethernet Cables

Industrial Ethernet Connector
(Motor end of cable)
PIN
1 2 3 4
+TX +RX
-TX
-RX
DESCRIPTION
Shield tied to motor housing
RJ45S Connector
(EtherNet/IP master end of cable)
1 2 3 4 5 6 7 8
+TX
-TX +RX No Connection No Connection
-RX No Connection No Connection
PIN
DESCRIPTION
Shield tied to RJ45S connector
Moog Animatics Industrial Ethernet Cables
The following Industrial Ethernet cables are available from Moog Animatics.
M-style to M-style Ethernet Cable
This cable has M12 male threaded connectors at both ends. It is available in 1, 3, 5 and 10 meter lengths. For the standard cable, use part number CBLIP-ETH-MM-xM, where "x" denotes the cable length. A right-angle version is also available; use part number CBLIP-ETH-MM-xMRA.
M-style to RJ45 Ethernet Cable
This cable has an M12 male threaded connector at one end, and an RJ45 male connector at the opposite end. It is available in 1, 3, 5 and 10 meter lengths. For the standard cable, use part number CBLIP-ETH-MRJ-xM, where "x" denotes the cable length. A right-angle version is also available; use part number CBLIP-ETH-MRJ-xMRA.

EtherNet/IP Custom Cable

The following figure provides details for creating a custom shielded EtherNet/IP cable.
NOTE: The motor end of the cable requires an industrial Ethernet connector.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 27 of 160
Page 28

Cable Diagram

EtherNet/IP Bus
Other EtherNet/IP device:
- I/O block,
- Servo drive,
- etc.
EtherNet/IP Master
- PC,
- PLC,
- etc.
Moog Animatics SmartMotor
Moog Animatics SmartMotor
Optional ring for cable redundancy*
*Ring conguration requires an EtherNet/IP master with two ports
NOTE: Either Ethernet port can be used
to daisy-chain the motors.
Example Daisy-Chain Conguration
Cable Diagram
This section describes the cabling information for adding a SmartMotor to an EtherNet/IP net­work.
CAUTION: To minimize the possibility of electromagnetic interference (EMI), all connections should use shielded Ethernet Category 5 (Cat 5), or better, cables.

EtherNet/IP Cable Diagram

The following diagram shows an example EtherNet/IP network with the SmartMotors daisy chained to the EtherNet/IP master device. An optional "ring" configuration can be created if the EtherNet/IP master device has two ports.
Many network configurations are possible, such as line, tree or star. Requirements for specific configurations depend on the capabilities of the EtherNet/IP controller devices, the node devices, types and lengths of cables, and use of other networking equipment. For specific details on creating an EtherNet/IP network, refer to the ODVA publication EtherNet/IPMedia PlanningandInstallationManual, which is available on the ODVA.org website.
NOTE: Unlike other fieldbus protocols, EtherNet/IP does not require terminators at each end of the network bus.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 28 of 160
Page 29

Status LEDs

Off No power Solid green Drive on Blinking green Drive off, no faults Triple red flash Watchdog fault Solid red Faulted or no drive enable input
Off Not busy Solid green Drive on, trajectory in progress
Off No/bad cable; no/bad Link port Solid green Link established
Flashing # red Flashes fault code* (see below)
when Drive LED is solid red
Blinking green Activity
Off No/bad cable; no/bad Link port Solid green Link established
Blinking green Activity
Off No power Flashing red/grn Power-up self test Flashing green Standby Solid green Device operational Flashing red Minor fault
Solid red Major fault
Off No power or no IP address Flashing red/grn Power-up self test Flashing green No connections Solid green Connected Flashing red Connection timeout
Solid red Duplicate IP
LED 4: EtherNet/IP Link 1 Input LED
LED 2: EtherNet/IP Network Status LED
LED 0: Motor Drive LED
LED 5: EtherNet/IP Link 2 Output LED
LED 3: EtherNet/IP Module Status LED
LED 1: Motor Busy LED
LED 0: Motor Drive LED LED 1: Motor Busy LED
LED 3: EtherNet/IP Module Status LED
LED 5: EtherNet/IP Link 2 Output LED
LED 2: EtherNet/IP Network Status LED
LED 4: EtherNet/IP Link 1 Input LED
LED Status on Power-up:
• With no program and the travel limit inputs are low: LED 0 solid red; motor is in fault state due to travel limit fault
LED 1 off
• With no program and the travel limits are high: LED 0 solid red for 500 milliseconds then flashing green
LED 1 off
• With a program that only disables travel limits:
LED 0 red for 500 milliseconds then flashing green LED 1 off
Flash
1 2 3 4 5 6 7 8
9 10 11
Description
NOT Used Bus Voltage Over Current Excessive Temperature Excessive Position Velocity Limit dE/Dt - First derivative of position error is excessive Hardware Positive Limit Reached Hardware Negative Limit Reached Software Positive Travel Limit Reached Software Negative Travel Limit Reached
LED1 Fault Codes:
*Busy LED pauses for 2 seconds before flashing the code
Flickering = On/Off in 0.1 sec; Blinking = On/Off in 0.5 sec; Flashing = separated by 1 sec for EtherNet/IP LEDs and 2 sec for Fault Codes
USB Active LED
Flashing green Active Flashing red Suspended Solid red USB power detected, no
configuration
USB Active LED
Status LEDs
This section describes the functionality of the Status LEDs on the Class 6 SmartMotor.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 29 of 160
Page 30
Page 31

EtherNet/IP on Class 6 SmartMotors

EtherNet/IP on Class 6 SmartMotors
This section provides an overview of the EtherNet/IP communications protocol imple­mentation on the Moog Animatics Class 6 SmartMotor.
EtherNet/IP Implementation 32
EtherNet/IP Identity 32
EtherNet/IP Software Version Numbers 32
Device Profile 32
SmartMotor Device Profile Overview 33
CIP Objects for EtherNet/IP Devices 33
Application Objects for Position Controller Devices 34
Additional Objects 34
EDS File 35
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 31 of 160
Page 32

EtherNet/IP Implementation

EtherNet/IP Implementation
This section describes EtherNet/IP implementation information for the Class 6 SmartMotor.

EtherNet/IP Identity

The following identity information is available when the SmartMotor is queried by the Ether­Net/IP master.
l
Product Codes: 10 - SM6-M
l
Device Name: Factory data in nonvolatile EEPROM memory.
l
Serial Number: Factory data in nonvolatile EEPROM memory.
NOTE: These identity items match those shown on the SmartMotor name plate.

EtherNet/IP Software Version Numbers

The initial EtherNet/IP software release is 6.0.2.23.

Device Profile

The Class 6 EtherNet/IP SmartMotor profile uses the Position Controller (0x10) device. For Position Controller details, see SmartMotor Device Profile Overview on page 33.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 32 of 160
Page 33

SmartMotor Device Profile Overview

SmartMotor Device Profile Overview
This section provides an overview of the objects used in the SmartMotor device profile. It includes: CIP required objects and network objects (the CIP objects), ODVA "Device" set of objects (the Application objects), and Moog Animatics vendor-specific objects (the Additional objects).
For a full description of each object, see the corresponding "For details..." section. For more details on the Position Controller Device, see Position Controller Device (0x10) on page 43.

CIP Objects for EtherNet/IP Devices

The following table shows the minimum objects required for any EtherNet/IP device.
Object Class
Identity Object 0x01 Provides identification
Message Router Object
Assembly Object
Connection Man­ager Object
TCP/IP Inter­face Object
Class
Code
0x02 Provides message hand-
0x04
0x06 Establishes and man-
0xF5 Configures the device’s
1
Description
and general device information. Object is required in every net­work device.
ling for communicating with objects in the phys­ical device.
Binds attributes of mul­tiple objects, allowing data to/from each object to be sen­t/received through a single connection. Also used to bind input or out­put data.
ages the com­munications connections (exchanges of messages), including connections across mul­tiple subnets.
TCP/IP network inter­face. For example, this includes the device’s IP Address, Network Mask, and Gateway Address.
Required/
Optional
Required 1
Required 1
Optional ­used for the SmartMotor
Conditional (required for EtherNet/IP)
Conditional (required for EtherNet/IP)
Instances
For details,
see...
Identity Object (0x01) on page 63
Message Router Object (0x02) on page 67
2 Assembly Object
(0x04) on page 68
1
1
Connection Man­ager Object (0x06) on page 69
TCP/IP Interface Object (0xF5) on page 70
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 33 of 160
Page 34

Application Objects for Position Controller Devices

Object Class
Ethernet Link Object
1. Network-Specific Link Objects
1
Class
Code
0xF6 Maintains link-specific
Description
counters and status information for the com­munications interface.
Required/
Optional
Conditional (required for EtherNet/IP)
Instances
1
For details,
see...
Ethernet Link Object (0xF6) on page 77
Application Objects for Position Controller Devices
The Position Controller Device type is 0x10; there is one instance. The following table shows the required application objects for a Position Controller device.
Object Class
CIP Required Objects
Position Con­troller Super­visor
Position Con­troller
Class
Code
(see
previous
table)
0x24 Handles errors for Pos-
0x25 Performs control out-
Description
(see previous table) Required (see pre-
ition Controller, also home and registration inputs.
put velocity profiling; handles input/output to/from the motor, limit switches regis­tration, etc.
Required/
Optional
Required 1 Position Con-
Required 1 Position Con-
Instances
vious table)
For details,
see...
(see previous table)
troller Super­visor (0x24) on page 84
troller (0x25) on page 86

Additional Objects

In addition to the object classes in the previous tables, the following manufacturer-specific and other objects have been added for the SmartMotor.
Object Class
Device Level Ring (DLR) Object
Quality of Ser­vice (QOS) Object
SmartMotor I/O Object
Class
Code
0x47 Allows use of an Ethernet
ring network topology
0x48 Provides priority-depend-
ent control of the Eth­ernet data streams.
0x71
Manufacturer-specific object associated with the Position Controller Device
Description
Required/
Optional
1 Device Level
1 QoS Object
Instances
1
For details,
see...
Ring (DLR) Object (0x47) on page 92
(0x48) on page 94
SmartMotor I/O Object (0x71) on page 96
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 34 of 160
Page 35

EDS File

EDS File
The Electronic Data Sheet (EDS) file is supplied by the equipment manufacturer. It is an ASCII text file that is structured as specified by the CIP specification. The EDS file contains all of the necessary information for the configurable parameters of the corresponding device (i.e., it contains information required by the CIP specification and may include vendor-specific information provided by the manufacturer). For example, there is an EDS file supplied by Moog Animatics for the EtherNet/IP SmartMotor.
All CIP network configuration tools have the ability to read EDS files. The information in the EDS file is used by the configuration tool to guide the user through the configuration process.
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
To obtain the EDS file for the SmartMotor:
1.
Access the Download Center on the Moog Animatics website at:
http://www.animatics.com/support/download-center.html
2.
From the folder list, select Firmware And Fieldbus Downloads > Fieldbus Config > Ether­Net/IP folder.
3.
Locate the EDS file (.eds extension) and click it.
4.
Save the file to a location on your computer.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 35 of 160
Page 36
Page 37

EtherNet/IP User Program Commands

EtherNet/IP User Program Com­mands
This chapter provides details on the EtherNet/IP commands used with the SmartMotor and its user program. SmartMotor programming is described in the SmartMotor™Developer'sGuide. The SmartMotor user program allows the motor to take on autonomous or distributed control functions needed in an application.
Network Settings and Status Commands 38
Program Example 40
Status and Diagnostic Codes 41
Status/Error Codes 41
Diagnostic Codes 41
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 37 of 160
Page 38

Network Settings and Status Commands

Network Settings and Status Commands
The SmartMotor's EEPROM can store nonvolatile EtherNet/IP information about the network. For proper EtherNet/IP operation, each SmartMotor must have a unique IP address. If a DHCP server is used in the network, then the SmartMotor default IP address (0.0.0.0) is used; if a fixed IP address is needed or there is no DHCP server, the IP address can be set using the IPCTL command. This can be accomplished: at the PLC over EtherNet/IP; with SMI and a USB connection, or RS-485 on channel 0; with a SmartMotor user program. If an IP address is assigned through any method, including the DHCP server, that address is stored and used at the next power-up.
NOTE: Nonvolatile memory will be read at power-up or after the Z (reset) com­mand has been executed.
The commands in the following table are related to the network settings and status.
Command
IPCTL(action,"string")
RETH(0), or
x=ETH(0)
RETH i s the same as RETH(0)
x=ETH is the same as
x=ETH(0)
RETH(1), or
x=ETH(1)
RETH(2), or
x=ETH(2)
RETH(3), or
x=ETH(3)
Description/
Parameter
action=
0: set IP address
1: set Mask
2: set Gateway
EtherNet/IP status Bit 0 = Initialization failure
Module status Bit 0 = No power
Network status Bit 0 = Not powered, no IP address
Stack fault code For details, see Status and Diagnostic Codes
The drive is shipped out-of-box with an IP Address of 0.0.0.0. This address enables DHCP support for addressing. The DHCP server manages the IP Address assigned to the drive.
If a value other than 0.0.0.0 is assigned then DHCP is disabled and the static IP Address is used. Assigning an IP Address of 0.0.0.0 will re-enable DHCP if desired
Value is formatted as an IP address entered as a string, e.g., IPCTL(0,"192.168.0.10"). By default, these values are set to 0 (i.e., "0.0.0.0")
NOTE: The drive must be power cycled or reset using a "Z" terminal window command before the new IP Address takes affect.
Bit 1 = Configuration change Bit 2 = Reserved Bit 3 = Network processor failure Bit 4 = Port 1 has LINK Bit 5 = Port 2 has LINK
Bit 1 = Self test Bit 2 = Standby Bit 3 = Device operational Bit 4 = Minor (recoverable) fault Bit 5 = Major (non-recoverable) fault
Bit 1 = No connections Bit 2 = Connected Bit 3 = Connection timeout Bit 4 = Duplicate IP Bit 5 = Self-test
on page 41.
Values
Non-
Volatile
Setting
YES
N/A
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 38 of 160
Page 39
Network Settings and Status Commands
Command
RETH(5), or
x=ETH(5)
RETH(6), or
x=ETH(6)
RETH(7), or
x=ETH(7)
RETH(8), or
x=ETH(8)
RETH(9), or
x=ETH(9)
RETH(14)
RETH(15) IP address Value is in dotted-decimal for mat.
RETH(16) Subnet mask Value is in dotted-decimal format.
RETH(17) Gateway Value is in dotted-decimal format.
RETH(18) MAC ID string format-
RETH(30), or
x=ETH(30)
RETH(31), or
x=ETH(31)
RETH(45), or
x=ETH(45)
RETH(46), or
x=ETH(46)
RETH(47), or
x=ETH(47)
RETH(48), or
x=ETH(48)
RETH(49), or
x=ETH(49)
RETH(50), or
x=ETH(50)
RETH(51), or
x=ETH(51)
RETH(54), or
x=ETH(54)
ETHCTL(3,x)
Description/
Parameter
LFW firmware version Firmware version as 32-bit interger. E.g.,
3.1.0.1 would be a value 50397185 (0x03010001).
Network Lost user pro-
gram number
Processor type -1 = Failed
Protocol type 0 = Not defined
Network Lost action The c urr ent value assigned to the Network
ted r eport only
I/O read data size Value is c onfigur ed by the master.
I/O write data size Value is configured by the master.
IP address as integer E.g., for an IP address of 192.168.1.3 (C0 A8
IP subnet mask as
integer
IP gateway as integer E.g., for an IP gateway of 192.168.1.1 (C0 A8
Low 3 bytes of MAC ID
(device ID) as integer
High 3 bytes of MAC ID
(device ID) as integer
Internal error code For details, see Status and Diagnostic Codes
Internal error source For Moog Animatics use.
Initialize error code For details, see Status and Diagnostic Codes
Reset Resets Stack Fault code RETH(3) to 0
The current Network Los t program label num­ber.
0 = Unknown 1 = netX 10 2 = netX 50 3 = netX 51/52 4 = netX 100
1 = PROFINET 2 = EtherCAT 3 = EtherNet/IP
Lost action.
E.g., 00:01:02:a9:ff:00
01 03 hex), this command reports ­1062731517 (it reports as a 32-bit signed value).
E.g., for an IP netmask of 255.255.0.0 (FF FF 00 00 hex), this command reports -65536 (it reports as a 32-bit signed value).
01 01 hex), this command reports ­1062731519 (it reports as a 32-bit signed value.)
E.g., for a MACID of 00:01:02:a9:ff:00, this command reports 11140864 (00 a9 ff 00 hex)
E.g., for a MACID of 00:01:02:a9:ff:00, this command reports 258 (00 00 01 02 hex)
on page 41
on page 41
Values
Non-
Volatile
Setting
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 39 of 160
Page 40

Program Example

Command
ETHCTL(6,<value>) Network Lost user pro-
ETHCTL(9,<value>) Network Lost action
ETHCTL(45,x)
ETHCTL(46,x)
ETHCTL(47,x)
ETHCTL(50,x)
ETHCTL(51,x)
Description/
Parameter
gram label number
Set IP address as
integer
Set IP subnet mask as
integer
Set IP gateway as
integer
Reset Resets Internal Error code RETH(50) and
Reset Resets Internal Error code RETH(50) and
Values
This setting is nonvolatile.
Program label to jump to if the Network Lost action, ETHCTL(9,<value>), is either set to 4 or 5.
This setting is nonvolatile.
0 – Ignore, no action (default setting) 1 – Send OFF command to motor (servo off) 2 – Send X command to motor (smooth stop) 3 – Send S command to motor (hard stop) 4 – Send GOSUB(x) command, where x is the value of the user program label as defined by ETHCTL(6,<value>). 5 – Send GOTO(x) command, where x is the value of the user program label as defined by ETHCTL(6,<value>).
NOTE: Loss of network is an edge-triggered event if I/O Control goes from RUN to any other state.
E.g., to set for an IP address of 192.168.1.3 (C0 A8 01 03 hex), x=3232235779
E.g., to set for an IP netmas k of 255.255.0.0 (FF FF 00 00 hex), x=4294901760
E.g., to set for an IP gateway of 192.168.1.1 (C0 A8 01 01 hex), x=3232235777
Internal Error source RETH(51) to 0
Internal error source RETH(51) to 0
Non-
Volatile
Setting
Yes
Yes
Yes
Program Example
The following code example sets the device IP address.
IPCTL(0,"192.168.0.10") 'Set the IP address to 192.168.0.10
'Add rest of program below
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 40 of 160
Page 41

Status and Diagnostic Codes

Status and Diagnostic Codes
The following tables provide details on the status/error codes and the diagnostic codes.

Status/Error Codes

Hex
Value
00000000 0 Status is OK
C01F0002 -1071710206 System is out of memor y
C01F0003 -1071710205 Task runs out of empty packets at the local packet pool
C01F0004 -1071710204 Sending a packet failed
C01F0010 -1071710192 Assembly instance already exists
C01F0011 -1071710191 Invalid assembly instance
C01F0012 -1071710190 Invalid assembly length
C01F0020 -1071710176 No free connection buffer available
C01F0021 -1071710175 Object class is invalid
C01F0022 -1071710174 Segment of the path is invalid
C01F0023 -1071710173 Object Class is alr eady used
C01F0024 -1071710172 Connection failed
C01F0025 -1071710171 Unknown format of connection parameter
C01F0026 -1071710170 Invalid connection ID
C01F0027 -1071710169 No resource for creating a new class object available
C01F0028 -1071710168 Invalid request parameter
C01F0029 -1071710167 General connection failure
C01F0031 -1071710159 Access denied, instance is read only
C01F0032 -1071710158 DPM address is already used by an other instance
C01F0033 -1071710157 Set Output command is already running
C01F0034 -1071710156 EtherNet/IP Object Task is running a reset
C01F0035 -1071710155 Object Service already exists
Decimal
Value
Description

Diagnostic Codes

Hex
Value
00000000 0 Status is OK
C01F0001 -1071710207 No free packet available to create a response of the
C01F0002 -1071710206 No free packet available to send the input data
C01F0003 -1071710205 Routing a request to an object failed; an error occurred at
C01F0004 -1071710204 Sending the c onfirmation of a request failed; an error
C01F0005 -1071710203 Getting a confirmation of a request from an unknown
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Decimal
Value
Description
request
the destination packet queue
occurred at the packet queue
object
Page 41 of 160
Page 42
Diagnostic Codes
Hex
Value
C01F0006 -1071710202 Instance of the CC object could not be created; no free
C01F0007 -1071710201 Completing a Connection Close command failed; sending
C01F0008 -1071710200 Completing a Connection Open command failed; sending
C01F0009 -1071710199 Sending the Delete Transport command failed; Encap
C01F000A -1071710198 Sending the Forward Open c ommand failed; Encap Queue
C01F000B -1071710197 Sending the Start Transport command failed; Encap
C01F000C -1071710196 Connection manager received a confirmation of unknown
C01F000D -1071710195 Sending the Forward Close command failed; Encap Queue
C01F000E -1071710194 Failed the Complete Reset command; did not get a empty
Decimal
Value
Description
memory available
the command to the packet queue failed
the command to the packet queue failed
Queue signal an error
signal an error
Queue signal an error
service
signal an error
packet
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 42 of 160
Page 43

Position Controller Device (0x10)

Position Controller Device (0x10)
This chapter provides information on the Position Controller Device (0x10). For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol(CIP™), which is available on the ODVA.org website.
Position Controller Device Application Objects 44
Position Controller Device Object Model 44
Position Controller Implicit I/O Messages 45
General Command and Response Message Types 45
Attribute GET/SET Command Types 0x1A and 0x1B 50
Error Response Message Type (0x14) 51
Semantics for Command and Response Messages 52
Position Controller I/O Handshaking 55
Profile Moves 56
Torque Command 57
Control Mode Change - Change Dynamic 57
Position Controller Implicit I/O Message Examples 58
SmartMotor Notes 58
Set Acceleration 58
Set Velocity, Leave Drive ON 59
Set Target Position, Perform Move 59
Disable Hardware Limits (Object 0x25, Attribute 49) 59
Extended Position Move (32-byte frame) 60
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 43 of 160
Page 44

Position Controller Device Application Objects

CIP Network
Required =
Message Router
Identity
Object
Network Specic
Link Object(s)
I/O
Msg*
Explicit
Msg
Optional =
Position Controller
Supervisor Object
Postion
Controller
Supervisor
Position
Controller
Object
Axis Objects
Connection
*NOTES:
Consumed Connection Path: Position Controller Supervisor class Consumed Command Message attribute
Produced Connection Path: Position Controller Supervisor class Produced Command Message attribute
Position Controller Device Application Objects
The following table shows the application objects for the Position Controller device and describes their functions. For a full description of each object, see the corresponding "For details..." section.
Object Class
Position Con­troller Super­visor
Position Con­troller
Class
Code
Description
0x24 Handles errors for the
Position Controller as well as Home and Regis­tration inputs.
0x25 Performs the control
output velocity profiling and handles input and
Required/
Optional
Instances
Required 1 Position Con-
Required 1 Position Con-
For details,
see...
troller Super­visor (0x24) on page 84
troller (0x25) on
page 86 output to and from the motor drive unit, limit switches registration etc.
Note that these objects are the Application Objects in the overall SmartMotor device profile. For a listing of all objects in the device profile used for the SmartMotor, see SmartMotor Device Profile Overview on page 33.

Position Controller Device Object Model

The following figure provides a diagram of the Position Controller Device object model.
PositionControllerDeviceObjectModel
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 44 of 160
Page 45

Position Controller Implicit I/O Messages

Position Controller Implicit I/O Messages
This section describes the details about implicit I/O messages for the device.

General Command and Response Message Types

This section describes the formats for consumed and produced general messages.
l
The standard CIP Position Controller I/O connection messages are 8-byte messages.
l
The Class 6 EtherNet/IP SmartMotor supports both the standard 8-byte format and an extended 32-byte format.
l
The first eight bytes of the 32-byte format match the 8-byte format defined in the ODVA CIP Position Controller specification. The SmartMotor will select which message format to use based on the host controller connection size.
Connection
Size
8 bytes The motor will use the CIP standard communication format and Command Mes-
sage Types
32 bytes
Any other The motor will respond with an error
The default connection size used in the Class 6 EtherNet/IP SmartMotor EDS file is 32-bytes.
NOTE: Implicit I/O messages are the most efficient method of exchanging cyclic data, such as Target Position and Actual Position, with the SmartMotor. These mes­sage types for the Position Controller Polled I/O Connection are typically the best choice for commanding the SmartMotor shaft position or applied torque.
The motor will use:
l
CIP Standard 8 byte messages
l
Additional Data Fields in the Command / Response Message frames
l
Extended Command Message Types 6 (Position Move) & 7 (Velocity Move)
Description
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 45 of 160
Page 46
General Command and Response Message Types
Polled I/O: Consumed General Message Format
NOTE: 32-byte Extended fields are shown with gray-highlighted rows.
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Enable Reg.
Arm
1 Block #
2 Command Axis Number Command Message Type (1 through 7)
3 Response Axis Number Response Message Type (1 through 7)
4–7 Command Data
8–11 Target Position
12–15 Target Velocity
16–20 Acceleration
20–23 Deceleration
24 Attribute to Get Axis Number Attribute to Get Message Type (0x1A, 0x1B)
25 Reserved
26–27 Attribute to Get Number
28–31 Reserved
Notes:
1. Byte 0 bits 6 and 1 are not supported in Class 5 motors.
2. For Semantics, refer to Command Message Semantics on page 52.
3. Byte alignment for 4-byte values is Little Endian (Low byte, Middle Low byte, Middle High byte, High Byte).
4. Byte alignment for 2-byte values is Little Endian (Low byte, High Byte).
Hard Stop Smooth Stop Direction
1
(Vel. mode)
3
3
3
3
3
Incremental Start
4
Block
Load Data/
1
Start Profile
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 46 of 160
Page 47
General Command and Response Message Types
Polled I/O: Produced General Message Format
NOTE: 32-byte Extended fields are shown with gray-highlighted rows.
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Enable Reg.
1 Block #
2 Load
Complete
3 Response Axis Number Response Message Type (1 through 5)
4–7 Response Data
8–11 Actual Position
12–15 Actual Velocity
16–19 Reserved
20 Attribute to Get Axis Number Attribute to Get Message Type (0x1A, 0x1B)
21 Reserved
22–23 Attribute to Get Number
24–27
28–31 Reserved
Notes:
1. Not supported.
2. Byte 2 bit 0 c an be configured as the Servo Bus Voltage Okay s tatus.
3. For semantics, refer to Response Message Semantics on page 53.
4. Byte alignment for 4-byte values is Little Endian (Low byte, Middle Low byte, Middle High byte, High Byte).
5. Byte alignment for 2-byte values is Little Endian (Low byte, High Byte).
1
Level
Block
1
Fault
No data if Attribute to Get Axis Number and Mes sage Type are zero
Home
1
Level
Following
Error Fault
Current
Direction
Negative
Limit
Attribute to Get Data
General
Fault
Positive
Limit
On Target
Position
Revers e
Limit
4
4
4
5
Block in
Execution
Forward
Limit
1
Profile in
Progress
Fault
Input
1,2
General Command / Response Message Types
Command /
Response
Command Data Response Data
Message Type
a
1
a
2
Target Position Actual Position 0
Target Velocity Command Position 1
3 Acceleration Actual Velocity N/A
4 Deceleration Command Velocity N/A
a
5
Torque Torque 2
Position Profile
a,b
6
Move - See
N/A 0
description below
Velocity Profile
a,b
7
Move - See
N/A
description below
Notes: a. The drive Control Mode must match the desired command type in order to start a profile move or apply torque. b. Only available for 32-byte connections.
Class 0x25
Attr #3
Mode Setting
1
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 47 of 160
Page 48
General Command and Response Message Types
Standard Command Types
The standard CIP Command Types 1–5 will load individual motor parameters, such as Accel­eration, Deceleration, etc. A Profile Move will be started or a torque will be applied when the command type in the message is Target Position, Target Velocity or Torque, and the Control Mode is set to Position, Velocity or Torque, respectively.
The normal flow for a Position Move:
1.
Set the Control Mode to Position Control.
2.
Set the Acceleration value.
3.
Set the Deceleration value.
4.
Set the Target Velocity value.
5.
Set the Target Position value (this message would start the Position Move).
The normal flow for a Velocity Move:
1.
Set the Control Mode to Velocity Control.
2.
Set the Acceleration value.
3.
Set the Deceleration value.
4.
Set the Target Velocity value (this message would start the Velocity Move).
The normal flow for a apply Torque:
1.
Set the Control Mode to Torque Control.
2.
Set the Torque value (this message would start Torque Control).
Extended Profile Move Command Types (32-byte message format only)
There are two additional command types when the host I/O connection size is 32 bytes: 6 (Move Position) and 7 (Move Velocity). These commands take advantage of the additional fields in the 32-byte format, allowing a move to be started with one command.
The normal flow for a Position Move:
1.
Set the control mode to Position Control.
2.
Send a Move Position message (Command type 6) with Target Position, Target Velocity, Acceleration and Deceleration values (this message would start the Position Move).
The normal flow for a Velocity Move:
1.
Set the Control Mode to Velocity Control.
2.
Send a Velocity Position message (Command type 7) with Target Velocity, Acceleration and Deceleration values (this message would start the Position Move).
NOTE: A Velocity Move command sent to a motor already in motion with either Pos­ition Control or Velocity Control, will immediately change the Target Velocity to the value in the message.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 48 of 160
Page 49
General Command and Response Message Types
Extended Attribute to Get (32-byte message format only)
The 32-byte format also has fields allowing the Class 6 SmartMotor to send parameter data back to the controller independent of the Command and Response Message types set in the first eight bytes.
l
When the "Attribute to Get Message Type" field is set to 26 (0x1A - Position Controller Supervisor) or 27 (0x1B - Position Controller) the motor will return the value of the Object Attribute specified in field "Attribute to Get Number" (bytes 26-27). The value will be returned in the "Attribute to Get Data" field of the response (bytes 24 - 27).
l If there are any errors in the request, the motor will respond with:
o
A Message Type of 0x14 in the Attribute to Get Message Type field of the response
o
The General Error Code in byte 24 of the response
o
The Additional Error Code in byte 25 of the response
o
A value of 0x00 in byte 26 of the response
o
A copy of the Attribute to Get Axis Number / Message Type (byte 24) from the request in byte 27 of the response
l
When the "Attribute to Get Message Type" field is set to a value of zero, the motor will set the entire "Attribute to Get" structure and "Attribute to Get Data" of the response (bytes 20 -27) to zeroes.
The general flow when using the Extended Attribute to Get fields: (Assumes the Attribute to Get fields start out loaded with 0x00).
1.
Load the "Attribute to Get Number" with the desired Attribute Number.
2.
Load the "Attribute to Get Axis Number" with a value of 0 or 1.
3.
Load the "Attribute to Get Message Type" with the number for the desired object 0x1A (Position Controller Supervisor) or 0x1B (Position Controller).
4.
Wait for the "Attribute to Get Message Type" and "Attribute to Get Number" in the response to match the requested values. If the "Attribute to Get Message Type" becomes 0x14 there is an error in the request, follow the logic for errors in section Error Response Message Type (0x14) on page 51.
5.
When the "Attribute to Get Message Type" and "Attribute to Get Number" match the requested values, process the data in the response.
6.
Clear the "Attribute to Get Message Axis Number / Type" and "Attribute to Get Number" values to values of 0x00.
7.
Wait for the "Attribute to Get Message Type" field changes to zero in the response.
The motor will respond with the current value of the requested Attribute to Get each time the motor processes the I/O message independent of the Implicit Message handshaking.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 49 of 160
Page 50

Attribute GET/SET Command Types 0x1A and 0x1B

Attribute GET/SET Command Types 0x1A and 0x1B
This section describes the formats for consumer and producer GET/SET messages. These mes­sage types allow the set and get services of the Position Controller Supervisor(type 0x1A) and Position Controller(type 0x1B) classes and their objects attributes. This is a form of indirect addressing over the Polled I/O Connection instead of using an Explicit Connection transfer.
Polled I/O: Consumed Message Format
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Enable Reg.
Arm
1 Attribute Number to GET
2 Command Axis Number Command Message Type (0x1A or 0x1B)
3 Attribute Number to SET
4 Command (SET) Data Low Byte
5 Data Middle Low
6 Data Middle High
7 Command Data High Byte
Notes:
1. Byte 0 bits 6 and 1 are not supported Class 5 motors.
2. For Semantics, refer to Command Message Semantics on page 52.
Hard Stop Smooth
1
Stop
Direction
(Vel. mode)
Incremental Start
Block
1
Load Data/
Start Profile
Polled I/O: Produced Message Format
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Enable Reg.
Level
1 GET Attribute Number for the Response Data
2 Load
Complete
3 Response Axis Number Response Message Type (0x1A or 0x1B)
4 Response (GET) Data Low Byte
5 Data Middle Low
6 Data Middle High
7 Response Data High Byte
Notes:
1. Byte 2 bit 0 c an be configured as the Servo Bus Voltage Okay s tatus.
2. Not supported.
3. For Semantics, refer to Response Mes sage Semantics on page 53.
Block
Fault
Home Level2Current
2
Following
2
Error Fault
Direction
Negative
Limit
General
Fault
Positive
Limit
On Target
Position
Revers e
Limit
Block in
Execution
Forward
Limit
2
Progress
Fault Input
Profile in
Fault
Attribute Message Types
NOTE: See byte 3 in the previous tables.
Message
Type
26(0x1A) 36(0x24) Position Controller Supervisor Attribute Value to Set Attribute Value to Get
27(0x1B) 37(0x25) Position Controller Attribute Value to Set Attr ibute Value to Get
Class
Number
Class Description Command Data Response Data
1
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 50 of 160
Page 51

Error Response Message Type (0x14)

Error Response Message Type (0x14)
This section describes the formats for producer Error Response messages. It also provides the error codes for the Position Controller Device.
Polled I/O: Produced Error Response Message Format
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Enable Reg.
Level
1 Reserved = 0
2 Load
Complete
3 Response Axis Number Response Message Type (0x1A or 0x1B)
4 General Error Code
5 Additional Error Code
6 Copy of Command message Byte 2
7 Copy of Command Message Byte 3
Notes:
1. Not supported.
2. Byte 2 bit 0 c an be configured as the Servo Bus Voltage Okay s tatus.
3. For Semantics, refer to Response Mes sage Semantics on page 53.
Block
Fault
Home Level1Current
1
Following
1
Error Fault
Direction
Negative
Limit
General
Fault
Positive
Limit
On Target
Position
Revers e
Limit
Block in
Execution
Forward
Limit
1
Profile in
Progress
Fault
1,2
Input
Error Codes for Position Controller Device
General
Error
Code
0x08 0x01 Service Not Sup-
0x05 0x01 Path Destination
0x09 0xFF Invalid Attribute
0x0E 0xFF Attribute Not Set-
0x13 0xFF Not Enough Data I/O Command message was lees then 8 bytes
0x14 0xFF Attribute Not Sup-
Additional Error Code
Error
Description
ported
0x02 Service Not Sup-
ported
Unknown
0x02 Path Destination
Unknown
Value
table
ported
Semantics
Command message type is not supported; this will take precedence over additional code 2
Response message type not supported
Consumed axis number was requested that does not exist
Asked to produce data for a axis number that does not exist
Value typically out of range
Requested to modify something not change­able
Requested or specified attribute is not sup­ported
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 51 of 160
Page 52

Semantics for Command and Response Messages

Semantics for Command and Response Messages
This section provides semantic information for the command and response messages in the previous tables.
Command Message Semantics
This following table provides semantic information for the command messages.
Cmd
Item
Load Data/ Start Profile
Start Block Not supported.
Incremental This bit is used to define the position value as either absolute or
Direction (V. Mode)
Smooth Stop This bit is used to bring the motor to a controlled stop at the cur-
Hard Stop This bit is used to bring the motor to an immediate stop.
Registration Arm Not supported.
Enable This bit is used to control the enable output. Clearing this bit will
Block # This byte defines the block number to be executed when the
Command Mes­sage Type
Response Mes­sage Type
Command Axis Number
Target Position 0x01 This double word defines the Profile Move’s Target Position in
Target Velocity 0x02 This double word defines the Profile Move’s Target Velocity in
Msg
Type
Set from zero to one to load command data. The transition of
this bit from zero to one will also start a Profile Move when the command message type contained in the command message field is the message type that starts a Profile Move for the mode selected.
incremental. 0 = absolute position value and 1 = incremental position value.
This bit is used to control the direction of the motor in Velocity
mode. 1 = forward, positive; 0 = reverse, negative.
rently implemented deceleration rate.
set the enable output inactive and the currently executing motion profile will be aborted.
Start Block bit transitions from zero to one.
This field defines the Command Message Type
This field defines the Response Message Type
These three bits define the Consumed Axis Connection attribute
of the Position Controller Supervisor class. This attribute value specifies the instance number of all of the axis objects whose data are contained in the I/O command message. The SmartMo­tor is a single-axis device. Therefore, only axis 1 is used, which can be specified by either 0 or 1.
position units, when the Load Data /Start Profile bit transitions from zero to one.
profile units, when the Load Data /Start Profile bit transitions from zero to one
Description
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 52 of 160
Page 53
Semantics for Command and Response Messages
Cmd
Item
Acceleration 0x03 This double word defines the Profile Move’s Acceleration in pro-
Deceleration 0x04 This double word defines the Profile Move’s Target Position in
Torque 0x05 This double word is used to set the output torque, when the Load
Attribute Value 0x1A–
Object Attribute to Get
Object Attribute to Set
Msg
Type
0x1B
0x1A–
0x1B
0x1A–
0x1B
Description
file units, when the Load Data /Start Profile bit transitions from zero to one.
profile units, when the Load Data /Start Profile bit transitions from zero to one.
Data /Start Profile bit transitions from zero to one. The torque value will only take effect when in torque mode. (Position Con­troller Object Attribute 3 = 2)
This double word defines the value of the attribute to set, when the Load Data/Start Profile bit transitions from zero to one.
This byte defines the object attribute to get the value of and return in the response message.
This byte defines the object attribute to set to the new value defined by the Attribute Value when the Load Data/Start Profile bit transitions from zero to one.
Response Message Semantics
This following table provides semantic information for the response messages.
Item Description
Profile in Pro­gress
Block in Exe­cution
On Target Pos­ition
General Fault This bit indicates the logical "or" of all fault conditions.
Current Direction This bit shows the current direction of the motor. If the motor is not mov-
Home Level Not supported.
Registration Level Not supported.
Enable This bit indicates the state of the enable output. A 1 indicates the enable
Executing Block # This byte defines the currently executing block if the Block In Execution
Fault Input Not supported.
Forward Limit This bit indicates that the forward input is active.
Reverse Limit This bit indicates that the reverse input is active.
This bit indicates that a profile move is in progress.
Not supported.
This bit indicates whether or not the motor is on the last targeted position. (1 = Current position equals the last target position.)
ing the bit indicates the direction of the last commanded move. 0 = reverse, negative direction; 1 = forward, positive direction.
output is active.
bit is active.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 53 of 160
Page 54
Semantics for Command and Response Messages
Item Description
Positive Limit This bit indicates that the motor has attempted to travel past the pro-
grammed positive limit position. This bit remains valid until the motor is moved within the limits or the programmed limit value is set greater than the current position.
Negative Limit This bit indicates that the motor has attempted to travel past the pro-
grammed negative limit position. This bit remains valid until the motor is moved within the limits or the programmed limit value is set less than the current position.
Following Error Fault
Block Fault Not supported.
Load Complete This bit indicates that the command data contained in the command mes-
Response Mes­sage Type
Response Axis Number
Actual Position This double word reflects the actual position in position units. If position
Commanded Pos­ition
Actual Velocity This double word reflects the actual velocity in profile units.
Command Velo­city
Torque This double word reflects the torque.
Home Position This double word reflects the captured home position in position units.
Index Position This double word reflects the captured index position in position units.
Registration Pos­ition
General Error Code
Additional Code This byte contains an object/service-specific value that further describes
Attribute Value This double word reflects the value of the attribute to get.
Object Attribute to Get
This bit indicates that a following error fault has occurred. This fault occurs when the following error, or difference between the commanded and actual position, exceeds the programmed allowable following error.
sage has been successfully loaded into the device.
This byte defines the Response Message Type
These three bits report the Produced Axis Connection attribute of the Pos­ition Controller Supervisor class. This attribute value specifies the instance number of all of the axis objects whose data is contained in the I/O response message. The SmartMotor is a single-axis device. There­fore, only axis 1 is used, which can be reported as either 0 or 1.
feedback is not used, this word will report the commanded position.
This double word reflects the commanded or calculated position in pos­ition units.
This double word reflects the commanded or calculated velocity in profile units.
This double word reflects the captured registration position in position units.
This byte identifies an error has been encountered. The specific behavior for the Position Controller Profile is summarized in Error Response Mes­sage Type (0x14) on page 51. For a complete list of General Error codes, see Appendix B in THECIPNETWORKSLIBRARYVolume1-Common IndustrialProtocol(CIP™), which is available on the ODVA.org website.
the error condition. If the responding object has no additional information to specify, then the value 0xFF is placed within this field.
This byte defines the object attribute from which to get the value.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 54 of 160
Page 55

Position Controller I/O Handshaking

Start
Load Command Data
Values, Command Axis Number,
and Command Type into
Command Message
Set Load Data/Start Prole
bit=1
Is Load Data
Complete bit in
response
message = 1?
Set Load Data/Start Prole
bit=0
Output
Instance
FLT
NO YES
NO
YES
See note
Position Controller I/O Handshaking
This section describes I/O handshaking for the Position Controller device.
NOTE: References to "client" are from the viewpoint of the Master device.
Client Data Loading Procedure
The following figure describes the client data loading procedure.
NOTE: When the Event Data Block is present, additional elements are included based on the Event Checking Status element. If the Extended Format bit is set in the Event Checking Status word, then the following are included: Reg Data Ack, Home Data Ack, and Watch Data Ack. The Event Block Count field determines the repetition (from zero to seven times) of the following elements: Event ID #, Event Status #, Event Type #, Event Position #, and Event Time Stamp #.
ClientDataLoadingProcedure
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 55 of 160
Page 56

Profile Moves

Start
Call Client Data
Loading Procedure
Is
Prole in
Progress bit in
response
message=0?
NO
YES
End
Client Profile Move Procedure
The following figure describes the client profile move procedure.
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Profile Moves
Attribute 3 of the Position Controller Object determines how the device operates and responds for a profile move. A profile move uses Acceleration (and Deceleration) and a Target Velocity to operate the device at the Target Velocity or move it to a Target Position. It can also output a Torque if the Position Controller (0x25) Attribute 3 value is set for that. Refer to the fol­lowing figure—the values shown are the same ones used in the I/O Assembly Examples later in this section.
ClientProfileMoveProcedure
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 56 of 160
Page 57

Torque Command

Acceleration
AT=100
Target Velocity
VT=32768
Deceleration*
Begin
Motion
Target Position Reached
Position=0 Position=8000
*NOTE: For the SmartMotor, there is an override that automatically sets DT equal to AT if the motor power is turned on and only AT is set.
MotionProfileForI/OAssemblyExamples
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Torque Command
Attribute 3 of the Position Controller Object determines how the device operates. The SmartMotor can output a Torque command to the integrated motor if the Position Controller (0x25) Attribute 3 value is set for Torque mode using a setting of 2 for the attribute.
Refer to the SmartMotor™Developer'sGuide for further information on Torque mode.

Control Mode Change - Change Dynamic

With the SmartMotor, it is possible to change from one control mode to another during oper­ation or while in a move profile in any other mode. In other words, while operating in Position mode with Position Controller mode Attribute 3 set to the value 0 and using Implicit Message Type 1, the programmer can change to Torque mode by setting Attribute 3 to the value 2 and then executing a new "Start Profile" with Implicit Message Type 5.
This "Change Dynamic" feature can be fully executed using the Implicit Messages of the Pos­ition Controller Device. This is facilitated using Message Type 0x1B during a profile once it has started, and then starting another profile after changing the mode attribute.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 57 of 160
Page 58

Position Controller Implicit I/O Message Examples

Position Controller Implicit I/O Message Examples
These examples are meant for reference only. They depict the Frame data on the bus over the Implicit Connection for the Position Controller Device (0x10) I/O assembly to create a profile move (refer to the following description). When operating on DeviceNet, these frames are for the Polled I/O Implicit Connection.
NOTE:
To simplify the presentation, these examples do not include extended data transfer across the network.
All but the last example show the standard 8-byte command/response frames. If the drive is configured for the extended 32-byte frames, the extra 24 bytes are assumed to be set to values of zero.

SmartMotor Notes

For proper operation, external hardware input conditions must be satisfied to get the desired results. For example, to enable the drive stage on the model SM34165MT-IP SmartMotor, the drive-enable input (pin 10 of the 12-pin I/O connector) must be at 24 Volts (enabled).
The SmartMotor is a single axis. Therefore, the value 0 or 1 may be used for the axis number in the I/O Data (the examples typically use 0 for easier reading). Also, the symbol "0x??" is used to indicate there are bits within the byte that are determined by the present state of the SmartMotor.
The following are further assumptions for the SmartMotor:
l
Motor sample rate set to: 16 kHz
l
Motor counts per revolution: 4000
l
Motor mode: Position
l
Hardware Travel Limits are Satisfied or Disabled
l
SmartMotor Hardware Enable is Satisfied

Set Acceleration

For the following example, Command Frame = CF, Response Frame = RF.
Frame
Type
CF 0–7
RF 0–7
01 00 23 21 7D 01 00 00
?? 00 8? 21 00 00 00 00
Frame Data
(Hexadecimal Bytes)
Result
Axis 1 ADT=100
Axis 1 at Position 0
Clear the Load Data, Power Stage ON
CF 0–7 80 00 01 01 00 00 00 00 Ask for position
RF 0–7
8? 00 0? 01 00 00 00 00
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 58 of 160
Axis 1 ON, Position 0
Page 59

Set Velocity, Leave Drive ON

Set Velocity, Leave Drive ON
For the following example, Command Frame = CF, Response Frame = RF.
Frame
Type
CF 0–7
RF 0–7
CF 0–7 80 00 01 01 00 00 00 00 Ask for position
RF 0–7
8D 00 02 01 A0 0F 00 00
8? 00 8? 01 00 00 00 00
8? 00 0? 01 00 00 00 00
Frame Data
(Hexadecimal Bytes)
Clear the Load Data
Result
Axis 1 VT=32768
Axis 1 at Position 0
Axis 1 ON, Position 0

Set Target Position, Perform Move

For the following example, Command Frame = CF, Response Frame = RF.
Frame Type
CF 0–7
RF 0–7
CF 0–7 80 00 01 01 00 00 00 00 Ask for position
RF 0–7
81 00 01 01 40 1F 00 00
81 00 8? 01 00 00 00 00
Clear the Load Data (assumes motor completed move)
80 00 0? 01 40 1F 00 00
Frame Data
(Hexadecimal Bytes)
Result
PT=8000 G
Axis 1 at Position 0
Position 8000

Disable Hardware Limits (Object 0x25, Attribute 49)

For the following example, Command Frame = CF, Response Frame = RF.
Frame Type
CF 0–7
RF 0–7
CF 0–7 00 00 01 01 00 00 00 00 Ask for position
RF 0–7
NOTE: If the SmartMotor is on, this will turn it off.
01 31 1B 31 E0 00 00 00
0? 31 8? 1B E0 00 00 00
0? 00 0? 01 00 00 00 00
Frame Data
(Hexadecimal Bytes)
Clear the Load Data
Result
At Position 0
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 59 of 160
Page 60

Extended Position Move (32-byte frame)

Extended Position Move (32-byte frame)
For the following example, Command Frame = CF, Response Frame = RF.
Frame
Type
0–15
CF
16–31
0–15
RF
16–31
0–15
RF
16–31
0–15
RF
16–31
Frame Data
(Hexadecimal Bytes)
8d 00 06 01 00 00 00 00 60 e3 16 00 90 e2 00 00 ac 0d 00 00 10 0e 00 00 00 00 00 00 00 00 00 00
91 00 80 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
91 00 00 01 01 00 00 00 01 00 00 00 7f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
The move continues until the target position is reached
94 00 00 01 60 e3 16 00 60 e3 16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Result
AT=3500 DT=3600 VT=58000 PRT=1500000 G
Axis 1 at Position 0, Velocity 0 Load Complete set
Axis 1 at Position 1, Velocity 127 Load Complete clear
Axis 1 at Position 1500000, Velocity 0 Load Complete clear
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 60 of 160
Page 61

Object Reference

Object Reference
This chapter provides details on the EtherNet/IP protocol objects used with the Moog Anim­atics SmartMotor. The following TOC provides a listing of those objects.
The Moog Animatics Class 6 SmartMotor device profile supports the required object classes of the Position Controller Device 0x10 (see Volume 1 of the ODVA CIP specification). For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol(CIP™), which is available on the ODVA.org website.
Required Objects 62
Identity Object (0x01) 63
Message Router Object (0x02) 67
Assembly Object (0x04) 68
Connection Manager Object (0x06) 69
TCP/IP Interface Object (0xF5) 70
Ethernet Link Object (0xF6) 77
Application Objects 83
Position Controller Supervisor (0x24) 84
Position Controller (0x25) 86
Additional Objects 91
Device Level Ring (DLR) Object (0x47) 92
QoS Object (0x48) 94
SmartMotor I/O Object (0x71) 96
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 61 of 160
Page 62

Required Objects

Required Objects
The following sections/tables list the attributes for each of the CIP required and network objects.
Identity Object (0x01) 63
Message Router Object (0x02) 67
Assembly Object (0x04) 68
Connection Manager Object (0x06) 69
TCP/IP Interface Object (0xF5) 70
Ethernet Link Object (0xF6) 77
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 62 of 160
Page 63

Identity Object (0x01)

Identity Object (0x01)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Identity Object (0x01).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance num-
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description Semantics
Default Value: 1
ber of this object. Default Value: 1
instances currently cre­ated at this class level of the device. Default Value: 1
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
If updates require an increased value, the value increases by 1.
The largest instance number this object.
The number of object instances at this class hierarchy level.
Identity Attributes
AttribIDAccess
Rule
1 Get Vendor ID UINT Identification of each
2 Get Device Type UINT Indication of general
3 Get Product Code UINT Identification of a par-
Name
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
Description Semantics
vendor by number. Default Value: 810
type of product. Default Value: 16
ticular product of an individual vendor. Default Value: 10
Vendor ID. Zero is not valid.
Product code (vendor assigned).
Page 63 of 160
Page 64
Identity Object (0x01)
AttribIDAccess
Rule
4 Get Revision STRUCT
5 Get Status WORD Summary status of
6 Get Serial Number UDINT Serial number of device Set by factory.
7 Get Product Name SHORT_
8 Get State USINT Present state of the
9 Get Configuration
10 Get Heartbeat Inter-
Name
Major Revision USINT Incremented by the
Minor Revision USINT Identifies product
Consistency Value
val
Data
Type
of:
STRING
UINT Contents identify con-
USINT The nominal interval
Description Semantics
Revision of the item the Identity Object rep­resents. Default Value: 1.1
vendor when there is a significant change to the product "fit, form, or function".
changes that do not affect user con­figuration choices.
device.
Human readable iden­tification.
device as represented by the state transition diagram.
figuration of device.
between heartbeat mes­sages in seconds.
Zero is not valid for either the Major or Minor Revision fields.
Limited to values between 1 and 127; the eighth bit (rep­resenting, when set to one, values of 128 –
255) is reserved by CIP and shall have a value of zero.
Displayed as three digits with leading zeros as necessary.
See below: Attribute 5: Status
Set by factory; will match motor's name plate.
0 = Nonexistent 1 = Device Self Test­ing 2 = Standby 3 = Operational 4 = Major Recoverable Fault 5 = Major Unre­coverable Fault 6 – 254 = Reserved 255 = Default Value
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 64 of 160
Page 65
Instance Attributes Semantics
Instance Attributes Semantics
Attribute 5: Status
Bits Name Description
0 Owned TRUE indicates the device (or an object within the device)
has an owner. Within the Master/Slave paradigm the set­ting of this bit means that the Predefined Master/Slave Connection Set has been allocated to a master. Outside the Master/Slave paradigm the meaning of this bit is TBD.
1 Reserved; 0.
2 Configured TRUE indicates the application of the device has been con-
figured to do something different than the “out–of–box” default. This shall not include configuration of the com­munications.
3 Reserved; 0.
4-7 Extended Device Status Vendor–specific or as defined by the following table. The
EDS shall indicate if the device follows a vendor-specific definition for these bits by using the DeviceStatusAssembly keyword. See Default Values for Bits 4-7.
8 Minor Recoverable Fault TRUE indicates the device detected a problem with itself,
which is thought to be recoverable. The problem does not cause the device to go into one of the faulted states.
9 Minor Unrecoverable
Fault
10 Major Recoverable Fault TRUE indicates the device detected a problem with itself,
11 Major Unrecoverable
Fault
12-15 Extended Device Status 2Reserved; eiter 0 or vendor specific.
TRUE indicates the device detected a problem with itself, which is thought to be unrecoverable. The problem does not cause the device to go into one of the faulted states.
which caused the device to go into the “Major Recoverable Fault” state.
TRUE indicates the device detected a problem with itself, which caused the device to go into the “Major Unre­coverable Fault” state.
Default Values for Bits 4-7
Value Description
0 Self-Testing or Unknown
1 Firmware Update in Progress
2 At least one faulted I/O connection
3 No I/O connections established
4 Non-Volatile Configuration bad
5 Major Fault – either bit 10 or bit 11 is true (1)
6 At least one I/O connection in run mode
7 At least one I/O connection established, all in idle mode
8-9 Reserved
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 65 of 160
Page 66
Instance Attributes Semantics
Value Description
10-15 Vendor specific
1
1. No mechanism is provided to enumerate the vendor-specific use of these values in the EDS file.
Services
Service
Code
Supported in:
Name Description
Class Instance
0x01 Get_Attributes_All Returns a predefined listing of this
object's attributes
0x05 Reset Invokes the Reset service for the
device.
0x0E Get_Attribute_Single Returns the contents of the specified
attribute
0x10 Set_Attribute_Single Modifies an attribute (required if
Heartbeat Interval is defined)
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol
(CIP™), which is available on the ODVA.org website.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 66 of 160
Page 67

Message Router Object (0x02)

Message Router Object (0x02)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Message Router Object (0x02).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance num-
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 1
ber of this object. Default Value: 1
instances currently cre­ated at this class level of the device. Default Value: 1
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
Semantics
The current assigned value is 1. If updates require an increased value, the value increases by 1.
The largest instance num­ber of a created object at this class hierarchy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
Name
Data
Type
Description Semantics
Services
Service
Code
0x0E Get_Attribute_Single Returns the contents of the specified
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 67 of 160
Page 68

Assembly Object (0x04)

Assembly Object (0x04)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Assembly Object (0x04).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 2
number of this object. Default Value: 0xFFFF
instances currently cre­ated at this class level of the device. Default Value: 0
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
Semantics
The current value assigned to this attrib­ute is 2.
The largest instance number of a created object at this class hier­archy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
3 Get Data ARRAY of BYTE Assembly Data
4 Get Size UINT Number of bytes in Attribute 3.
Name Data Type Description Semantics
Services
Service
Code
0x0E Get_Attribute_Single Returns contents of the specified attribute
0x10 Set_Attribute_Single Modifies an attribute value.
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 68 of 160
Page 69

Connection Manager Object (0x06)

Connection Manager Object (0x06)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Connection Manager Object (0x06).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 1
number of this object. Default Value: 1
instances currently cre­ated at this class level of the device. Default Value: 1
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
Semantics
The current assigned value is 1. If updates require an increased value, the value increases by 1.
The largest instance number of a created object at this class hier­archy level.
The number of object instances at this class hierarchy level.
Instance Attributes
None.
Services
Service
Code
0x0E Get_Attribute_Single Returns the contents of the specified
0x10 Set_Attribute_Single Modifies an attribute value.
0x4E Forward_Close Closes a connection
0x54 Forward_Open Opens a connection
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 69 of 160
Page 70

TCP/IP Interface Object (0xF5)

TCP/IP Interface Object (0xF5)
The following tables provide the Class and Identity Attributes, and the Supported Services for the TCP/IP Interface Object (0xF5).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance num-
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 3
ber of this object. Default Value: 1
instances currently cre­ated at this class level of the device. Default Value: 1
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
Semantics
The largest instance number of a created object at this class hier­archy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
1 Get Status DWORD Interface status See below: Attribute 1:
2 Get Configuration
3 Set/Get
(NV)
Name
Capability
Configuration Control
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
DWORD Interface capability
DWORD Interface control flags
Description Semantics
flags. Default Value: 0x95
Default Value: 0
Status
Bitmap of capability flags. See below: Attrib­ute 2: Configuration Capability
Bitmap of control flags. See below: Attribute 3: Configuration Control
Page 70 of 160
Page 71
TCP/IP Interface Object (0xF5)
AttribIDAccess
Rule
Name
4 Get Physical Link
Object
Path size UINT Size of Path Number of 16 bit words
Path Padded
Data
Type
STRUCT of:
EPATH
Description Semantics
Path to physical link object.
E.g., 0x20, 0xF6, 0x24, 0x01; where: [20] = 8 bit class seg­ment type; [F6] = Eth­ernet Link Object class; [24] = 8 bit instance segment type; [01] = instance 1
in Path
Logical segments identi­fying the physical link object.
Path is restricted to one logical class seg­ment and one logical instance segment. Max size is 12 bytes.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 71 of 160
Page 72
TCP/IP Interface Object (0xF5)
AttribIDAccess
Rule
(a)
5
Set/Get
(NV)
6 Set/Get
(NV)
Name
Interface Con­figuration
Data
Type
STRUCT of:
Description Semantics
TCP/IP network inter­face configuration. Default Value: 0
Contains the con­figuration parameters required for a device to operate as a TCP/IP node.
IP Address(a)
UDINT 0 = no IP address has
been configured. Other­wise, set IP address to valid Class A, B, or C address. Loopback address (127.0.0.1) is not allowed.
Network Mask UDINT The device’s network
mask
Gateway Address
UDINT Default gateway
address
0 = network mask address not configured
0 = no gateway address has been con­figured. Otherwise, set address to valid Class A, B, or C address. Loopback address (127.0.0.1) is not allowed.
Name Server UDINT Primary name server 0 = no name server
address has been con­figured. Otherwise, set address to valid Class A, B, or C address.
Name Server 2 UDINT Secondary name server 0 = no secondary name
server address has been configured. Other­wise, set address to valid Class A, B, or C address.
Domain Name STRING Default domain name ASCII characters. Max-
imum length is 48 char­acters. 0 = no Domain Name is configured.
Host Name STRING Host name.
Default Value: ""
ASCII characters. Max­imum length is 64 char­acters. Pad to an even number of characters (pad not included in length). 0 = no Host Name is configured.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 72 of 160
Page 73
TCP/IP Interface Object (0xF5)
AttribIDAccess
Rule
Name
7 Get Safety Network
Number
8 Set/Get
TTL Value USINT TTL value for Ether-
(NV)
9 Set/Get
Mcast Config STRUCT
(NV)
Alloc Control USINT Multicast address alloc-
Reserved USINT Reserved. 0
Num Mcast UINT Number of IP multicast
Mcast Start Addr UDINT Starting multicast
10 Set/Get
SelectAcd BOOL Activates the use of
(NV)
Data
Type
Description Semantics
6 octets See CIP Safety Spe-
cification, Volume 5, Chapter 3 (available from ODVA.org). Default Value: 0
Net/IP multicast pack­ets. Default Value: 1
IP multicast address
of:
configuration. Default Value: 0
ation control word. Determines how addresses are alloc­ated.
addresses to allocate for EtherNet/IP.
address from which to begin allocation.
ACD. Default Value: 1
Time-to-Live value for IP multicast packets. Default value is 1. Min­imum is 1; maximum is 255
0 = default allocation algorithm 1 = allocated according to the values specified in Num Mcast and Mcast Start Addr 2 = Reserved
Determines whether multicast addresses are generated via algorithm or are expli­citly set.
The number of IP mul­ticast addresses alloc­ated, starting at “Mcast Start Addr”. Maximum value is device spe­cific. However, shall not exceed the number of EtherNet/IP mul­ticast connections sup­ported by the device.
IP multicast address (Class D). A block of “Num Mcast” addresses is allocated starting with this address.
1 = enable ACD (default), 0 = disable ACD
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 73 of 160
Page 74
Instance Attributes Semantics
AttribIDAccess
Rule
11 Set/Get
(NV)
Name
Last Conflict Detected
AcdActivity USINT State of ACD activity
Data
Type
STRUCT of:
Description Semantics
Structure containing information related to the last conflict detec­ted. Default Value: 0
ACD Diagnostic Para­meters. See below: Attribute 11: LastCon­flictDetected
ACD activity when last conflict detec­ted. Default Value: 0
RemoteMAC Array
of 6 USINT
MAC address of remote node from the ARP PDU in which a conflict was
MAC from Eth Pkt Hdr.
detected. Default Value: 0
ArpPdu ARRAY
of 28 USINT
Copy of the raw ARP PDU in which a conflict was detected.
ARP PDU
Default Value: 0
12 Set/Get
(NV)
EtherNet/IP QuickConnect
BOOL Enable/Disable of Quick-
Connect feature.
0 = Disable (default)
1 = Enable Default Value: 0
13 Set/Get
(NV)
Encapsulation Inactivity Timeout
UINT Number of seconds of
inactivity before TCP connection is closed.
0 = disabled
1-3600 = timeout (sec)
Default Value: 120
a. The drive is shipped out-of-box with an IP Address of 0.0.0.0. This address enables DHCP support for address­ing. The DHCP server manages the IP Address assigned to the drive. If a value other than 0.0.0.0 is assigned then DHCP is disabled and the static IP Address is used. Assigning an IP Address of 0.0.0.0 will re-enable DHCP. Value is formatted as an IP address entered as a string, e.g., IPCTL(0,"192.168.0.10"). By default, these values are set to 0 (i.e., "0.0.0.0")
NOTE: The drive must be power cycled or reset using a "Z" terminal window command before the new IP Address takes affect.
Instance Attributes Semantics
Attribute 1: Status
Bits Name Description
0-3 Interface Con-
figuration Status
0 = Interface Configuration attribute has not been configured. 1 = Interface Configuration attribute contains configuration obtained from BOOTP, DHCP or nonvolatile storage. 2 = IP address member of the Interface Configuration attribute contains configuration, obtained from hardware settings (e.g.: pushwheel, thumbwheel, etc.) 3-15 = Reserved
4 Mcast Pending Indicates a pending configuration change in the TTL Value and/or
Mcast Config attributes. This bit is set when either the TTL Value or Mcast Config attribute is set; it is cleared the next time the device starts.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 74 of 160
Page 75
Instance Attributes Semantics
Bits Name Description
5 Interface Con-
figuration Pend­ing
6 AcdStatus Indicates when an IP address conflict has been detected by ACD.
7 AcdFault Indicates when an IP address conflict has been detected by ACD
8-31 Reserved 0
Indicates a pending configuration change in the Interface Con­figuration attribute. This bit is 1 (TRUE) when Interface Con­figuration attribute are set and the device requires a reset in order for the configuration change to take effect (as indicated in the Configuration Capability attribute). The intent of the Interface Config Pending bit is to allow client software to detect that a device’s IP configuration has changed, but will not take effect until the device is reset.
This bit shall default to 0 (FALSE) on startup. If ACD is supported and enabled, then this bit is set to 1 (TRUE) any time an address conflict is detected as defined by the [ConflictDetected] trans­itions.
or the defense failed, and that the current Interface Configuration cannot be used due to this conflict. This bit is 1 (TRUE) if an address conflict has been detected and this interface is currently in the Notification & FaultAction or AcquireNewIpv4Parameters ACD state, and is 0 (FALSE) otherwise.When this bit is set, then this CIP port will not be usable. However, for devices with mul­tiple ports, this bit provides a way of determining if the port has an ACD fault and thus cannot be used.
Attribute 2: Configuration Capability
Bits Name Description
0 BOOTP Client 1 (TRUE) = device is capable of obtaining its network con-
figuration via BOOTP.
1 DNS Client 1 (TRUE) = device is capable of resolving host names by querying
a DNS server.
2 DHCP Client 1 (TRUE) = device is capable of obtaining its network con-
figuration via DHCP.
3 DHCP-DNS
Update
4 Configuration Set-
table
5 Hardware Con-
figurable
6 Interface Con-
figuration Change Requires Reset
7 AcdCapable 1 (TRUE) = device is ACD capable
8-31 Reserved 0
0
1 (TRUE) = the Interface Configuration attribute is settable.
If 1 (TRUE), the IP Address member of the Interface Con­figuration attribute can be obtained from hardware settings. If this bit is FALSE the Status Instance Attribute (1), Interface Con­figuration Status field value shall never be 2. (The Interface Con­figuration attribute contains valid configuration, obtained from hardware settings.)
If 1 (TRUE), the device requires a restart in order for a change to the Interface Configuration attribute to take effect. If this bit is FALSE a change in the Interface Configuration attribute will take effect immediately.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 75 of 160
Page 76
Instance Attributes Semantics
Attribute 3: Configuration Control
Bits Name
0-3 Configuration
Method
4 DNS Enable If 1 (TRUE), the device shall resolve host names by querying a
5-31 Reserved 0
Attribute 11: LastConflictDetected
AcdActivity
Value AcdMode Description
0 NoConflictDetected
(Default)
1 ProbeIpv4Address Last conflict detected during ProbeIpv4Address state.
2 OngoingDetection Last conflict detected during OngoingDetection state or sub-
3 SemiActiveProbe Last conflict detected during SemiActiveProbe state or sub-
0 = device shall use statically-assigned IP configuration values. 1 = device shall obtain its interface configuration values via BOOTP. 2 = device shall obtain its interface configuration values via DHCP. 3-15 = Reserved.
DNS server.
No conflict has been detected since this attribute was last cleared.
sequent DefendWithPolicyB state.
sequent DefendWithPolicyB state.
Description
Services
Service
Code
0x01 Get_Attributes_All Returns a predefined listing of this
0x0E Get_Attribute_Single Returns the contents of the specified
0x10 Set_Attribute_Single Modifies an attribute value.
For more details, see THECIPNETWORKSLIBRARY,Volume2:EtherNet/IPAdaptationofCIP, which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
objects attributes
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 76 of 160
Page 77

Ethernet Link Object (0xF6)

Ethernet Link Object (0xF6)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Ethernet Link Object (0xF6).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance num-
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
Default Value: 3
ber of this object. Default Value: 2
UINT Number of object
instances currently cre­ated at this class level of the device. Default Value: 2
UINT The attribute ID number of
the last class attribute of the class definition imple­mented in the device.
UINT The attribute ID number of
the last instance attribute of the class definition implemented in the device.
Description
Semantics
The minimum value = 1. Use ≥2 if instance attribute 6 is imple­mented. Use 3 if any instance attributes 7-10 are implemented. Max value = 3.
The largest instance number of a created object at this class hierarchy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
1 Get Interface Speed UINT Interface speed currently
2 Get Interface Flags DWORD Interface status flags.
Name
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
in use. Default Value: 100
Default Value: 0x20
Page 77 of 160
Description
Semantics
Speed in Mbps (e.g., 0, 10, 100, 1000, etc.)
Bit map of interface flags. See Attribute 2: Interface Flags.
Page 78
Ethernet Link Object (0xF6)
AttribIDAccess
Rule
3 Get Physical
4 Get Interface Coun-
Name
Address
ters
In Octets UDINT Octets received on the
In Ucast Pack­ets
In NUcast Pack­ets
In Discards UDINT Inbound packets received
In Errors UDINT Inbound packets that con-
In Unknown Pro­tos
Out Octets UDINT Octets sent on the inter-
Out Ucast Pack­ets
Out NUcast Packets
Out Discards UDINT Outbound packets dis-
Out Errors UDINT Outbound packets that con-
Data
Type
ARRAY
of 6
USINTs
STRUCT
of:
UDINT Unicast packets received
UDINT Non-unicast packets
UDINT Inbound packets with
UDINT Unicast packets sent on
UDINT Non-unicast packets sent
MAC layer address Assigned by the man-
Counters relevant to
interface
on the interface
received on the interface
on the interface but dis­carded
tain errors (does not include In Discards)
unknown protocol
face
the interface
on the interface
carded
tain errors
Description
Semantics
ufacturer, per IEEE
802.3 requirements.
the receipt of pack­ets on the interface.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 78 of 160
Page 79
Ethernet Link Object (0xF6)
AttribIDAccess
Rule
Name
Data
Type
5 Get Media Counters STRUCT
Alignment
UDINT Frames received that are
Errors
FCS Errors UDINT Frames received that do
Single Collisions UDINT Successfully transmitted
Multiple Col-
UDINT Successfully transmitted
lisions
SQE Test Errors UDINT Number of times SQE test
Deferred Trans-
UDINT Frames for which first
missions
Late Collisions UDINT Number of times a col-
Excessive Col-
UDINT Frames for which trans-
lisions
MAC Transmit
UDINT Frames for which trans-
Errors
Carrier Sense
UDINT Times that the carrier
Errors
Frame Too Long UDINT Frames received that
MAC Receive
UDINT Frames for which recep-
Errors
of:
Description
Semantics
Media-specific counters Contains counters
specific to Ethernet media.
not an integral number of octets in length
not pass the FCS check
frames which experienced exactly one collision
frames which experienced more than one collision
error message is gen­erated
transmission attempt is delayed because the medium is busy
lision is detected later than 512 bit-times into the transmission of a packet
mission fails due to excess­ive collisions
mission fails due to an internal MAC sublayer transmit error
sense condition was lost or never asserted when attempting to transmit a frame
exceed the maximum per­mitted frame size
tion on an interface fails due to an internal MAC sub­layer receive error
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 79 of 160
Page 80
Instance Attributes Semantics
AttribIDAccess
Rule
6 Set/Get
(NV)
7 Get Interface Type USINT Type of interface: twisted
8 Get Interface State USINT Current state of the inter-
9 Set/Get
(NV)
10 Get Interface Label SHORT_
Name
Interface Con­trol
Control Bits WORD Interface Control Bits
Forced Inter­face Speed
Admin State USINT Administrative state:
Data
Type
STRUCT
of:
UINT Speed at which the inter-
STRING
Configuration for physical interface. Default Value: 0
face is set to operate.
pair, fiber, internal, etc. Default Value: 0x02
face: operational, dis­abled, etc. Default Value: 0
enable, disable. Default Value: 0
Human readable iden­tification. Default Value: "port1", "port2"
Description
Semantics
See Attribute 6: Interface Control.
Speed in Mbps (10, 100, 1000, etc.)
See Attribute 7: Interface Type.
See Attribute 8: Interface State.
See Attribute 9: Admin State.
Text string that describes the inter­face; content of the string is vendor spe­cific.
Instance Attributes Semantics
Attribute 2: Interface Flags
Bits Name
0 Link Status Indicates whether or not the IEEE 802.3 communications interface
is connected to an active network: 0 = inactive link; 1 = active link. The determination of link status is implementation specific. In some cases, devices can tell whether the link is active via hard­ware/driver support. In other cases, the device may only be able to tell whether the link is active by the presence of incoming pack­ets.
1 Half/Full Duplex Indicates the duplex mode currently in use by the interface:
0 = half duplex; 1 = full duplex. Note that if the Link Status flag is 0, then the value of the Half/Full Duplex flag is indeterminate.
Description
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 80 of 160
Page 81
Instance Attributes Semantics
Bits Name
2-4 Negotiation
Status
5 Manual Setting
Requires Reset
6 Local Hardware
Fault
7-31 Reserved Set to zero.
Indicates the status of link auto-negotiation: 0 = Auto-negotiation in progress. 1 = Auto-negotiation and speed detection failed. Using default val­ues for speed and duplex. Default values are product-dependent; recommended defaults are 10 Mbps and half duplex. 2 = Auto negotiation failed but detected speed. Duplex was defaul­ted. Default value is product-dependent; recommended default is half duplex. 3 = Successfully negotiated speed and duplex. 4 = Auto-negotiation not attempted. Forced speed and duplex.
Indicates whether or not the device requires a reset to apply changes made to the Interface Control attribute (#6): 0 = the device automatically applies changes made to the Inter­face Control attribute (#6) and, therefore, does not require a reset in order for changes to take effect. This is the value this bit shall have when the Interface Control attribute (#6) is not imple­mented. 1 = the device does not automatically apply changes made to the Interface Control attribute (#6) and, therefore, will require a reset in order for changes to take effect.
0 = the interface detects no local hardware fault; 1 = a local hardware fault is detected. The meaning of this is product-specific. Examples are an AUI/MII interface detects no transceiver attached or a radio modem detects no antennae attached. In contrast to the soft, possible self-correcting nature of the Link Status being inactive, this is assumed a hard-fault requir­ing user intervention.
Description
Attribute 6: Interface Control
Control Bits
Bits Name
0 Auto-negotiate Auto-negotiation is enabled or disabled:
0 = 802.3 link auto-negotiation is disabled; 1 = auto-negotiation is enabled. If auto-negotiation is disabled, then the device shall use the set­tings indicated by the Forced Duplex Mode and Forced Interface Speed bits.
1 Forced Duplex
Mode
2-15 Reserved Set to zero.
If the Auto-negotiate bit is 0, the Forced Duplex Mode bit indicates whether the interface shall operate in full or half duplex mode: 0 = half duplex; 1 = full duplex. Interfaces not supporting the requested duplex shall return a GRC hex 0x09 (Invalid Attribute Value). If auto-negotiation is enabled, attempting to set the Forced Duplex Mode bits shall result in a GRC hex 0x0C (Object State Con­flict).
Description
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 81 of 160
Page 82
Attribute 7: Interface Type
Instance Attributes Semantics
Value
0 Unknown interface type.
1 The interface is internal to the device, for example, in the case of an embedded
switch.
2 Twisted-pair (e.g., 10Base-T, 100Base-TX, 1000Base-T, etc.)
3 Optical fiber (e.g., 100Base-FX)
4-255 Reserved.
Attribute 8: Interface State
Value
0 Unknown interface type.
1 The interface is enabled and is ready to send and receive data.
2 The interface is disabled.
3 The interface is testing.
4-255 Reserved.
Attribute 9: Admin State
Value
0 Reserved.
1 Enable the interface.
2 Disable the interface.
3-255 Reserved.
Description
Description
Description
Services
Service
Code
0x01 Get_Attributes_All Returns a predefined listing of this
0x0E Get_Attribute_Single Returns the contents of the specified
0x10 Set_Attribute_Single Modifies an attribute value.
For more details, see THECIPNETWORKSLIBRARY,Volume2:EtherNet/IPAdaptationofCIP, which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
objects attributes
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 82 of 160
Page 83

Application Objects

Application Objects
The following sections/tables list the attributes for each of the Application objects (ODVA "device" set of objects).
Position Controller Supervisor (0x24) 84
Position Controller (0x25) 86
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 83 of 160
Page 84

Position Controller Supervisor (0x24)

Position Controller Supervisor (0x24)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Position Controller Supervisor Object (0x24).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance
3 Get Number of
6 Get Max ID Number
7 Get Max ID Number
32 Get Consumed Axis
33 Get Produced Axis
Name
Instances
Class Attributes
Instance Attrib­utes
Selection Num­ber
Selection Num­ber
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
USINT Specifies the axis num-
USINT Specifies the axis num-
Description
Value = 2
number of an object currently created in this class level of the device.
instances currently cre­ated at this class level of the device.
ber of the last class attribute of the class definition imple­mented in the device.
ber of the last instance attribute of the class definition imple­mented in the device.
ber to which the data contained in the I/O Command Message is routed.
ber to which the data contained in the I/O Response Message is routed.
Semantics
The current assigned value is 2. If updates require an increased value, the value increases by 1.
SmartMotor value is typ­ically 1 for this attribute.
SmartMotor value is typ­ically 1 for this attribute.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 84 of 160
Page 85
Position Controller Supervisor (0x24)
Object Instance 1 Attributes
AttrIDAccess
Rule
1 Get Number of
2 Get Attribute
3 Get Axis Num-
4 Reserved
5 Get General
6 Set/Get Command
7 Set/Get Response
15 Set/Get Index Arm BOOL Used to arm the index input
18 Get Index Pos-
25 Set/Get Follow
27 Set/Get Follow
28 Set/Get Follow Mul-
100 Set/Get Follow Type USINT
Name
Attributes
List
ber
Fault
Message Type
Message Type
ition
Enable
Divisor
tiplier
Data
Type
USINT Returns the total number of attributes supported by
this object in this device.
Array of USINT
USINT Returns the axis number which is the same as the
BOOL Bit is a logical OR of all fault condition attribute flags.
USINT Command message type that is being sent by the con-
USINT Response message type that is returned to the con-
DINT The position at the time the home input is triggered.
BOOL Enables following of the Follow Axis.
DINT Used to calculate the Command Position by dividing
DINT Used to calculate the Command Position by multiplying
Returns an array with a list of the attributes supported by this object in this device.
instance of the object.
1 = Fault condition
trolling device
trolling device
Values: 1 = arm index input, 0 = trigger occurred
Values: 0 = disabled, 1 = enabled
the Follow Axis position with this value.
the Follow Axis position with this value.
Values: 0 = Step Dir, 1 = AqB
Description
Services
Service
Code
0x0E Get_Attribute_Single Returns contents of specified attribute
0x10 Set_Attribute_Single Modifies the attribute value
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 85 of 160
Page 86

Position Controller (0x25)

Position Controller (0x25)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Position Controller Object (0x25).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance
3 Get Number of
6 Get Max ID Number
7 Get Max ID Number
Name
Instances
Class Attributes
Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 2
number of an object currently created in this class level of the device.
instances currently cre­ated at this class level of the device.
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
Semantics
The current assigned value is 2. If updates require an increased value, the value increases by 1.
Instance Attributes
In the following table, a "unit" is one count of the encoder resolution returned by attribute 40 (the Feedback resolution).
NOTE: The user program commands are not in the same units shown below. In other words, the report RVT value shown in the SMI Terminal window will not equal a get of Attr ID 7.
AttrIDAccess
Rule
1 Get Number of Attrib-
2 Get Attribute List Array
Name
utes
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
USINT Returns the total number of attributes supported
by this object in this device
Returns an array with a list of the attributes sup­of USINT
ported by this object in this device
Page 86 of 160
Description
Page 87
Position Controller (0x25)
AttrIDAccess
Rule
3 Set/Get Mode USINT Operating Mode:
6 Set/Get Target Position DINT Profile Position value to set in Profile units (see
7 Set/Get Target Velocity DINT Profile Velocity in units/sec, positive only
8 Set/Get Acceleration DINT Profile Acceleration in units/sec-sec, positive
9 Set/Get Deceleration DINT Profile Deceleration in units/sec-sec, positive
10 Set/Get Incremental Pos-
11 Set/Get Load Data/ Start
13 Set/Get Actual Position DINT Actual absolute position. Can be Set to redefine
14 Get Actual Velocity DINT Reports actual velocity in units/sec.
15 Get Commanded Pos-
16 Get Commanded
17 Set/Get Enable BOOL On the enable edge, commanded position is set
Name
ition Flag
Profile/ Profile in Progress
ition
Velocity
Data
Type
0 = Position mode (default)
1 = Velocity mode
2 = Torque mode
Attr ID 40)
only
only.
BOOL Defines Attr ID 6 as being either absolute or
incremental:
0 = absolute move
1 = incremental move
BOOL On set, loads data and starts the current profile.
On get, reports Profile in Progress
actual position.
DINT The instantaneous calculated position
DINT The instantaneous velocity in units/sec.
to equal actual position.
Description
Values:
0=disable
1=enable
20 Set/Get Smooth Stop BOOL Smooth Stop motor
21 Set/Get Hard Stop BOOL Hard Stop motor
23 Set/Get Direction BOOL Instantaneous Direction
Values:
0=reverse
1=forward
Is set to change or select direction on Velocity
Mode
24 Set/Get Reference Dir-
ection
25 Set/Get Torque DINT Output Torque
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
BOOL Shaft Rotation Direction (forward facing shaft):
0 = CW
1 = CCW
Range: -32767 to 32767
Page 87 of 160
Page 88
Position Controller (0x25)
AttrIDAccess
Rule
29 Get Wrap Around BOOL Position Wrap Around Indicator Flag
30 Set/Get Kp INT Proportional Gain
31 Set/Get Ki INT Integral Gain
32 Set/Get Kd INT Derivative Gain
33 Set/Get MaxKi INT Integration Limit
35 Set/Get Velocity Feed
37 Get Sample Rate INT Update sample rate in micro-seconds
40 Get Feedback Res-
41 Get Motor Resolution DINT Motor resolution in motor steps. Number of
45 Set/Get Max Dynamic Fol-
46 Set/Get Following Error
47 Set/Get Following Error
48 Get Actual Following
49 Set/Get Hard Limit
50 Get Forward Limit BOOL Forward Limit stop input status active
51 Get Reverse Limit BOOL Reverse Limit stop input status active
52 Set/Get Soft Limits
Name
Forward
olution
lowing Error
Action
Fault
Error
Action
Enable
Data
Type
If 1, the motor has gone past its maximum pos-
ition.
Range: 0 to 32767
Range: 0 to 32767
Range: 0 to 32767
Range: 0 to 32767
INT Velocity feed forward gain value
Range: 0 to 32767
DINT Number of actual position feedback counts per
revolution
motor steps in one revolution of the motor.
DINT Maximum allowable following error when the
motor is in motion
USINT Following Error Action code:
0=Servo off
1=Hard Stop
2=Smooth Stop
128=MTB
BOOL Following error occurrence flag
DINT Actual Following error
USINT Hard Limit Action code:
0 = Servo off
1 = Hard Stop
2 = Smooth Stop
128 = MTB
224 = Both hardware limits disabled
BOOL Enables Soft Limits
Description
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 88 of 160
Page 89
Position Controller (0x25)
AttrIDAccess
Rule
53 Set/Get Soft Limit Action USINT Soft Limit Action Code:
54 Set/Get Positive Soft
55 Set/Get Negative Soft
56 Get Positive Limit
57 Get Negative Limit
58 Get Load Data Com-
100 Set/Get Current Limit DINT Current limit of motor 0 to 1023
101 Set/Get Reset Motor
102 Set/Get Reset Motor BOOL Set to 1 for RESET action, the Get returns the
103 Set/Get Overheat Set-
104 Get Temperature INT Real time temperature
105 Set/Get Variable u DINT Motor user variable u
106 Set/Get Variable v DINT Motor user variable v
107 Set/Get Variable w DINT Motor user variable w
108 Set/Get Variable x DINT Motor user variable x
109 Set/Get GOSUBnnn UINT Setting executes a user program command
110 Get Loss of Network
111 Get Status Word WORD Motor status word
Name
Limit Position
Limit Position
Triggered
Triggered
plete
Faults
point
Action
Data
Type
0 = Servo off
1 = Hard Stop
2 = Smooth Stop
128 = MTB
DINT Soft limit positive boundary in position counts,
enable BOTH soft limits
DINT Soft limit negative boundary in position counts,
enable BOTH soft limits
BOOL Hard or Soft limit forward limit occurrence flag
BOOL Hard or Soft limit forward limit occurrence flag
BOOL Valid data for a valid I/O command message
type has been loaded into the position controller
BOOL Set to 1 for RESET action, the Get returns the
Drive Ready Status
Drive Ready Status
USINT Overheat setpoint 0-70 or 0-85 degrees C
GOSUBnnn. The Get returns the program running
status.
USINT Action if DeviceNet network heartbeat lost:
0 = IGNORE (No Command)
1 = OFF (Motor Off)
2 = X (Smooth Stop)
3 = S (Hard Stop)
4 = GOSUB
5 = GOTO
Description
112 Get Angle Match BOOL Commutation Angle Match bit
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 89 of 160
Page 90
Services
Position Controller (0x25)
Service
Code
0x0E Get_Attribute_Single Returns the contents of the specified
0x10 Set_Attribute_Single Modifies the attribute value
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 90 of 160
Page 91

Additional Objects

Additional Objects
The following sections/tables list the attributes for the manufacturer-specific and other objects that don't fall into the previous categories.
Device Level Ring (DLR) Object (0x47) 92
QoS Object (0x48) 94
SmartMotor I/O Object (0x71) 96
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 91 of 160
Page 92

Device Level Ring (DLR) Object (0x47)

Device Level Ring (DLR) Object (0x47)
The following tables provide the Class and Identity Attributes, and the Supported Services for the Device Level Ring (DLR) Object (0x47).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description Semantics
Default Value: 3
number of this object. Default Value: 1
instances currently cre­ated at this class level of the device. Default Value: 1
ber of the last class attribute of the class definition implemented in the device.
ber of the last instance attribute of the class definition implemented in the device.
The current value assigned to this attribute is 3.
The largest instance num­ber of a created object at this class hierarchy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
1 Get Network Topo-
2 Get USINT Current status of net-
Name
logy
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
USINT Current network topo-
Description Semantics
logy mode
work
0 = Linear 1 = Ring
0 = Normal 1 = Ring Fault 2 = Unexpected Loop 3 = Partial Fault 4 = Rapid Fault/Restore Cycle
Page 92 of 160
Page 93
Instance Attributes Semantics
AttribIDAccess
Rule
Name
10 Get Active Super-
visor Address
Data
Type
STRUCT of:
Description Semantics
IP and/or MAC address of the active ring super­visor. Default Value: 0
UDINT Supervisor IP Address 0 = No configured IP
address
ARRAY
Supervisor MAC Address Ethernet MAC address of 6 USINTs
12 Get Capability Flags DWORD Describes the DLR cap-
abilities of the device
See below: Attribute 12: Capability Flags
Instance Attributes Semantics
Attribute 12: Capability Flags
Bits Name Description
0 Announce-based Ring Node
1
Set if device’s ring node implementation is based on processing of Announce frames.
1 Beacon-based Ring Node
1
Set if device’s ring node implementation is based on processing of Beacon frames.
2-4 Reserved Set to zero.
5 Supervisor Capable Set if device is capable of providing the super-
visor function.
6 Redundant Gateway Capable Set if device is capable of providing the redund-
ant gateway function.
7 Flush_Table frame Capable Set if device is capable of supporting the Flush_
Tables frame.
8-31 Reserved Set to zero.
1. Bits 0 and 1 are mutually exclusive. Only one of these bits can be set in the attribute value that a device reports.
Services
Service
Code
0x01 Get_Attributes_All Returns a predefined listing of this
0x0E Get_Attribute_Single Returns the contents of the specified
For more details, see THECIPNETWORKSLIBRARY,Volume1:CommonIndustrialProtocol (CIP™), which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
objects attributes
attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 93 of 160
Page 94

QoS Object (0x48)

QoS Object (0x48)
The following tables provide the Class and Identity Attributes, and the Supported Services for the QoS Object (0x48).
Class Attributes
AttribIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance num-
3 Get Number of
6 Get Maximum
7 Get Maximum
Name
Instances
ID Number Class Attributes
ID Number Instance Attrib­utes
Data
Type
UINT Number of object
UINT The attribute ID num-
UINT The attribute ID num-
Description
Default Value: 3
ber of this object.
Default Value: 1
instances currently cre-
ated at this class level
of the device.
Default Value: 1
ber of the last class
attribute of the class
definition implemented
in the device.
ber of the last instance
attribute of the class
definition implemented
in the device.
Semantics
The current assigned value is 1. If updates require an increased value, the value increases by 1.
The largest instance number of a created object at this class hier­archy level.
The number of object instances at this class hierarchy level.
Instance Attributes
AttribIDAccess
Rule
a
1
Set/Get
(NV)
2 Set/Get
(NV)
3 Set/Get
(NV)
802.1Q Tag Enable
DSCP PTP Event USINT DSCP value for PTP
DSCP PTP Gen­eral
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Name
Data
Type
USINT Enables or disables
USINT DSCP value for PTP
Page 94 of 160
Description Semantics
sending 802.1Q frames on CIP and IEEE 1588 messages. Default Value: 0
(IEEE 1588) event mes­sages. Default Value: 59
(IEEE 1588) general messages. Default Value: 47
0 = disabled 1 = enabled Value change takes effect the next time the device restarts.
DSCP field size is 6 bits, valid range: 0-63
DSCP field size is 6 bits, valid range: 0-63
Page 95
QoS Object (0x48)
AttribIDAccess
Rule
4 Set/Get
(NV)
5 Set/Get
(NV)
6 Set/Get
(NV)
7 Set/Get
(NV)
8 Set/Get
(NV)
a. The 802.1Q VLAN tagging mechanism can be turned on and off by setting or clearing the value of attribute 1 (802.1Q Tag Enable) of the QoS object.
Name
DSCP Urgent USINT DSCP value for CIP
DSCP Scheduled USINT DSCP value for CIP
DSCP High USINT DSCP value for CIP
DSCP Low USINT DSCP value for CIP
DSCP Explicit USINT DSCP value for CIP
Data
Type
Description Semantics
DSCP field size is 6 bits, transport class 0/1 urgent priority mes­sages. Default Value: 55
transport class 0/1 scheduled priority mes­sages. Default Value: 47
transport class 0/1 high priority mes­sages. Default Value: 43
transport class 0/1 low priority messages. Default Value: 31
explicit messages (transport class 2/3 and UCMM) and all other EtherNet/IP encapsulation mes­sages. Default Value: 27
valid range: 0-63
DSCP field size is 6 bits,
valid range: 0-63
DSCP field size is 6 bits,
valid range: 0-63
DSCP field size is 6 bits,
valid range: 0-63
DSCP field size is 6 bits,
valid range: 0-63
Services
Service
Code
0x0E Get_Attribute_Single Returns the contents of the specified
0x10
For more details, see THECIPNETWORKSLIBRARY,Volume2:EtherNet/IPAdaptationofCIP, which is available on the ODVA.org website.
Supported in:
Name Description
Class Instance
attribute
Set_Attribute_Single Modifies the contents of the spe­cified attribute
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 95 of 160
Page 96

SmartMotor I/O Object (0x71)

SmartMotor I/O Object (0x71)
The following tables describe the attributes and instances for the SmartMotor I/O Object (0x71).
Attribute Table (Instance 0)
AttrIDAccess
Rule
1 Get Revision UINT Revision of this object.
2 Get Max Instance UINT Maximum instance number of
3 Get Number of
6 Get Maximum
7 Get Maximum
8 Get I/O Word
Name
Instances
ID Number Class Attrib­utes
ID Number Instance Attributes
State
Data Type
Default Value: 1
this object. Default Value: 1
UINT Number of object instances cur-
rently created at this class level of the device. Default Value: 1
UINT The attribute ID number of the
last class attribute of the class definition implemented in the device.
UINT The attribute ID number of the
last instance attribute of the class definition implemented in the device.
WORD Returns the value of first 16 I/O
points; bit 0 is I/O 0 (zero)
Description Semantics
The current value assigned to this attrib­ute is 1.
The largest instance number of a created object at this class hier­archy level.
The number of object instances at this class hierarchy level.
Attribute Table (One instance per I/O pin)
AttrIDAccess
Rule
1 Set/Get Function USINT Sets (or gets) the function as Output, Input
2 Set/Get Output State BOOL Sets (or gets) the output states as ON or
3 Get I/O State BOOL Returns present state of the I/O, either ON
4 Get Analog Raw
Name
Value
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Data
Type
or Special.
OFF.
or OFF.
INT Hardware dependent
Description Semantics
Values: 1 = Input 2 = Special
Values: 0 = OFF 1 = ON
Values: 0 = OFF 1 = ON
Page 96 of 160
Page 97
SmartMotor I/O Object (0x71)
Instance I/O Number Function
1 0 – Input
2 1 – Input
3 2 – Input Positive Limit
4 3 – Input Negative Limit
5 4 – Input
6 5 – Input
7 6 – Input Go
8 7 – Input Drive Enable
9 8 – Output External Brake
10 9 – Output Fault
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 97 of 160
Page 98
Page 99
AOI Descriptions - Allen BradleyPLC

AOI Descriptions - Allen Bradley PLC

This chapter describes the Add On Instructions (AOIs) that are available for use with the Ether­Net/IP SmartMotor and Allen Bradley PLCs. The AOIs can be used "as is" or modified for end-user-specific solutions.
NOTE: Typically, only one AOI should be active at a time.
The AOIs write to a common command structure stored in the DriveStore tag, which is ini­tialized in the SM6_Drive AOI and passed into all the other AOIs. The exception to this is when a 32-byte connection is used. The 32-byte message frames make available the Attribute to Get fields. When loaded with proper values, the Attribute to Get fields cause the targeted drive to return the value of a selected Drive Attribute in the Attribute to Get fields of the response. The Attribute to Get fields can be used in conjunction with the normal com­mand/response fields.
SM6_Attribute_Ext_Clear - Clear Attribute to Get (Extended Command) 100
SM6_Attribute_Ext_Get - Load Attribute to Get ID & Wait (Extended Com­mand) 101
SM6_Attribute_Ext_Load - Load Attribute to Get ID (Extended Command) 102
SM6_Attribute_Ext_Value - Return Attribute data (Extended Command) 104
SM6_Clear_Flags - Reset System State Flag 106
SM6_Disable - Disable Drive 107
SM6_Drive - Drive Data Exchange 108
SM6_Enable - Enable Drive 110
SM6_Get_Attribute - Get Drive Attribute 111
SM6_Move_Position_Ext - Position Move(Extended Command) 112
SM6_Move_Velocity_Ext - Velocity Move(Extended Command) 114
SM6_Move_Torque - Apply Torque 116
SM6_Set_Acceleration - Set Drive Acceleration 117
SM6_Set_Attribute - Set Drive Attribute 118
SM6_Set_Deceleration - Set Drive Deceleration 119
SM6_Set_Mode - Set Drive Mode 120
SM6_Set_Position - Set Drive Position 121
SM6_Set_Variable_u - Set Drive Variable "u" 122
SM6_Set_Velocity - Set Drive Target Velocity 123
SM6_Stop_Hard - Perform a Hard Stop 124
SM6_Stop_Smooth - Perform a Smooth Stop 125
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 99 of 160
Page 100

SM6_Attribute_Ext_Clear - Clear Attribute to Get (Extended Command)

SM6_Attribute_Ext_Clear - Clear Attribute to Get (Extended Command)
Description
Clears the Extended Attribute to Get fields in the Axis Command buffer. This will cause the drive to clear the Attribute to Get fields in the Response buffer.
Operands
Operand Data Type Operand Type Description
SM6_Attribute_Ext_Clear SM6_Attribute_Ext_Clear Tag Control tag for this AOI
Axis SM6_Axis Tag The targeted drive
Structure
Field Type Description
.DN BOOL Set when the drive indicates the instruction has been processed.
.ER BOOL Set if there are any timeout or processing errors.
Operation
Scan Mode Description
Prescan Initialize variables.
Rung-condition-in is FALSE Initialize variables.
Rung-condition-in is TRUE Clears the Extended Attribute to Get fields in the Axis Command
buffer.
NOTE: This command requires a connection size of 32 bytes.
Moog AnimaticsClass 6 EtherNet/IP Guide, Rev. B
Page 100 of 160
Loading...