M-style to RJ45 Ethernet Cable Ethernet Cable Schematic PROFINET Cable Diagram Maximum Cable Length PROFINET Status LEDs PROFINET Configuration Configure Motor with PC User Program Requirements Required Nonvolatile EEPROM Values Moog Animatics Class 6 PROFINET Guide Rev. D Page 3 of 76...
Page 4
PLC Memory Set acceleration value, command ADT=255 Set maximum velocity value, command VT=100000 Make a relative position move User Program Commands SNAME("string") IPCTL(function,"string") =ETH, RETH ETHCTL(function, value) Program Example Moog Animatics Class 6 PROFINET Guide Rev. D Page 4 of 76...
Page 5
Reserved Motor Variables Command and Response Codes Command Packet Codes to Motor Commands Extended 16-bit command codes Response Packet Codes to Motor Commands Extended 16-bit response codes Troubleshooting Moog Animatics Class 6 PROFINET Guide Rev. D Page 5 of 76...
Motor Sizing Environmental Considerations Machine Safety Documentation and Training Additional Equipment and Considerations Safety Information Resources Additional Documents Related Guides Other Documents Additional Resources PROFINET and PROFIBUS Resources Moog Animatics Class 6 PROFINET Guide Rev. D Page 6 of 76...
PROFINET, which is optimized for high speed, is designed to communicate between control systems and distributed I/O at the device level. Moog Animatics has defined a set of 8-bit command and response codes to be transmitted and received over PROFINET. For details, see Command Packet Codes to Motor Commands on page 54.
Page 8
Document sections include Output and Input data formats (PROFINET cargo), a list of the Moog Animatics PROFINET command codes explained in terms of the equivalent SmartMotor commands, and a list of Moog Animatics PROFINET response codes explained in terms of the equivalent SmartMotor commands.
User-supplied PC with the Microsoft Windows operating system User-supplied PLC with PROFINET master or other PROFINET master Moog Animatics PROFINET cable, or equivalent, to connect the PLC to the SmartMotor's industrial Ethernet port (for details, see PROFINET Motor Connectors and Pinouts on...
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.
Machine Safety 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...
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...
EU standards information can be found at: http://ec.europa.eu/growth/single-market/european-standards/harmonised- standards/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. Related Guides Class 6 SmartMotor™ Installation & Startup Guide http://www.animatics.com/cl-6-install-startup-guide...
Additional Resources Additional Resources The Moog Animatics website contains useful resources such as product information, documentation, product support and more. Please refer to the following addresses: General company information: http://www.animatics.com Product information: http://www.animatics.com/products.html Product support (Downloads, How To videos, Forums, Knowledge Base, and FAQs): http://www.animatics.com/support.html...
LED 0: Motor Drive LED LED 1: Motor Busy LED POWER INPUT PIN FUNCTION DESCRIPTION 24 VDC CONTROL I/O POWER EARTH CHASSIS GROUND MOTOR COMMON GROUND 48 VDC MOTOR POWER Moog Animatics Class 6 PROFINET Guide Rev. D Page 16 of 76...
Cables and Diagram Cables and Diagram This section provides information on Moog Animatics industrial Ethernet cables and a PROFINET system cable diagram. Moog Animatics Industrial Ethernet Cables The following cables are available from Moog Animatics. M-style to M-style Ethernet Cable This cable has M12 male threaded connectors at both ends.
Maximum Cable Length For transmission speeds of 100 Megabits/second on shielded Ethernet Cat 5 cable, EtherCAT and PROFINET allow cable lengths up to 100 meters between network nodes. Moog Animatics Class 6 PROFINET Guide Rev. D Page 18 of 76...
Hardware Positive Limit Reached LED 1 off Hardware Negative Limit Reached Software Positive Travel Limit Reached Software Negative Travel Limit Reached *Busy LED pauses for 2 seconds before flashing the code Moog Animatics Class 6 PROFINET Guide Rev. D Page 19 of 76...
Configure PLC with PC Configure SmartMotor to PROFINET PLC Sends Commands to Motor Network Data Format Example PLC Memory Sequence to Set Report Data to Motor Clock PROFINET Communication Example Moog Animatics Class 6 PROFINET Guide Rev. D Page 20 of 76...
SmartMotor. The GSDML file defines the three output words and seven input words, but it does not specify where this is located in the PLC memory. That location is determined by the configuration tools supplied by the PLC manufacturer. Moog Animatics Class 6 PROFINET Guide Rev. D Page 21 of 76...
Word Position Error 0000 0000 ..0000 0000 0680 0000 0000 0000 The following are the SmartMotor’s Status Word response bit definitions (the response shown above is 0680). Moog Animatics Class 6 PROFINET Guide Rev. D Page 22 of 76...
A status word of 0x0680 (which breaks down to the bits 0000 0110 1000 0000) indicates the servo is off, the left and right limits have been activated, and the drive is not ready. Moog Animatics Class 6 PROFINET Guide Rev. D Page 23 of 76...
007A 0000 0000 007A 0000 03A1 0680 0000 0000 0000 As time goes on, the clock data is updated. 007A 0000 0000 007A 0001 B01A 0680 0000 0000 0000 Moog Animatics Class 6 PROFINET Guide Rev. D Page 24 of 76...
It changes as the updated clock value is received. To create a PROFINET connection to the SmartMotor: 1. Install the SMI software. For more details, see the Moog Animatics Class 6 SmartMotor™ Installation & Startup Guide. 2. Connect control power to the 12-pin connector.
Page 26
When detection has completed, Motor 1 will be shown under the USB network. 5. Double click Motor1 to open the Motor View tool. Click Poll to update the Status. Moog Animatics Class 6 PROFINET Guide Rev. D Page 26 of 76...
Page 27
NOTE: The new station name in the following figure (in the red box) won't be shown until power is cycled and the motor is redetected. Refer to the next step. Moog Animatics Class 6 PROFINET Guide Rev. D Page 27 of 76...
Page 28
Watch the clock value being updated in your PLC PROFINET input registers "7 words in", bytes 2-5. For examples of sending command sequences and communication handshaking, refer to Sample Command Sequences on page 29. Moog Animatics Class 6 PROFINET Guide Rev. D Page 28 of 76...
Set torque value, specify the response data Initiate torque mode, command MT Initiate Relative Position Move Commands PLC Memory Set acceleration value, command ADT=255 Set maximum velocity value, command VT=100000 Make a relative position move Moog Animatics Class 6 PROFINET Guide Rev. D Page 29 of 76...
After disabling the limits and clearing any faults, the shaft may be turned using the following command sequences: Initiate Mode Torque on page 33 Initiate Relative Position Move on page 35 These sequences are described in following sections. Moog Animatics Class 6 PROFINET Guide Rev. D Page 30 of 76...
00A2 0000 0000 0080 0000 0000 0000 Initiate torque mode, command MT Insert command 0x21 data to begin torque mode. 00A2 0000 0021 00A2 0000 0000 0080 0000 0000 0000 Moog Animatics Class 6 PROFINET Guide Rev. D Page 33 of 76...
Page 34
Wait for the command code clear acknowledge in the input buffer. 00A2 0000 0000 00A2 0014 0000 0009 0000 05DC 0000 Set data to 0. 0000 0000 0000 00A2 0014 0000 0009 0000 05DC 0000 Moog Animatics Class 6 PROFINET Guide Rev. D Page 34 of 76...
The motor performs its move. While the trajectory is in the slew phase, you will see something like: 03A2 0000 2710 03A2 0001 86AD 0009 0000 CA23 0011 Moog Animatics Class 6 PROFINET Guide Rev. D Page 36 of 76...
Page 37
0001 86AD velocity (100,000 in slew) status 0009 Bt = 1 Bi = 1 measured current position 0000 CA23 measured current position error 0011 Moog Animatics Class 6 PROFINET Guide Rev. D Page 37 of 76...
NOTE: Nonvolatile memory will be read at power-up or after the Z (reset) command has been executed. The following sections list the commands used to operate the motor on a PROFINET network. SNAME("string") IPCTL(function,"string") =ETH, RETH ETHCTL(function, value) Program Example Moog Animatics Class 6 PROFINET Guide Rev. D Page 38 of 76...
The =ETH and RETH commands are used to assign/report errors and certain status information for the PROFINET bus. Assigned to a program variable: x=ETH(y) As a report: RETH(y) Refer to the following table for details. Moog Animatics Class 6 PROFINET Guide Rev. D Page 39 of 76...
Page 40
RETH(16) Subnet mask; value is in dotted-decimal format; report only. RETH(17) Gateway; value is in dotted-decimal format; report only. RETH(18) MAC ID string formatted; report only; e.g., 00:01:02:a9:ff:00 Moog Animatics Class 6 PROFINET Guide Rev. D Page 40 of 76...
Page 41
(8) returns 0. The value -1070596029 indicates an invalid SNAME format was used. =ETH(57) RETH(57) Gets the real-time Ethernet sync correction =ETH(58) RETH(58) Gets the real-time Ethernet sync count Moog Animatics Class 6 PROFINET Guide Rev. D Page 41 of 76...
192.168.1.3 (C0 A8 01 03 hex), x=3232235779; non-volatile. ETHCTL(46,x) Set IP subnet mask as integer; e.g., to set for an IP netmask of 255.255.0.0 (FF FF 00 00 hex), x=4294901760; non-volatile. Moog Animatics Class 6 PROFINET Guide Rev. D Page 42 of 76...
Program Example The following code example sets the nonvolatile station name. SNAME("mymotor1") a=ETH(0) IF( a&2 ) 'Execute reset if station name changed ENDIF 'Add rest of program below Moog Animatics Class 6 PROFINET Guide Rev. D Page 43 of 76...
This section describes the PROFINET Output and Input packet format. It also provides notes for the Command (Output) packets and Response (Input) Packets. Output and Input Packet Format Command (Output) Packet Notes Response (Input) Packet Notes Moog Animatics Class 6 PROFINET Guide Rev. D Page 44 of 76...
/ word Description Notes swap Word Byte parameter Command Code Acknowledge Response Code Acknowledge Response Data Value (32 bits), big-endian format Status Word (16 bits), big-endian format Moog Animatics Class 6 PROFINET Guide Rev. D Page 45 of 76...
Page 46
Position error is a full 32-bit when accessed by this method. NOTE: The PROFINET SmartMotor supports the byte/word swap parameter as of firmware 6.0.2.41 or later Output (12 Words) Data Format (I/O Controller Command) Moog Animatics Class 6 PROFINET Guide Rev. D Page 46 of 76...
Page 47
Offset byte / word Description Notes swap Word Byte parameter Reserved (reports as 0xFF) Reserved (reports as 0xFF) Reserved (ignore, reports as 0) Reserved (ignore, reports as 0) Moog Animatics Class 6 PROFINET Guide Rev. D Page 47 of 76...
Page 48
Response code 7 ack (16 bits) Response data 0 (32 bits) See note 1: some codes must use of this section Response data 1 (32 bits) Response data 2 (32 bits) Moog Animatics Class 6 PROFINET Guide Rev. D Page 48 of 76...
Page 49
This is for protection in case the PLC/Controller is attempting to write in the 6 byte output format but has the 24- byte format configured. Moog Animatics Class 6 PROFINET Guide Rev. D Page 49 of 76...
The PROFINET interface does not interfere with the SmartMotor's EPTR command for access to EEPROM. Therefore, the user program may use the EPTR command at the same time. Moog Animatics Class 6 PROFINET Guide Rev. D Page 50 of 76...
The Response Data Value for a GET_MODE (SmartMotor RMODE) command will contain the integer code returned by the SmartMotor, which may be unexpected by users familiar with the RMODE command in older Moog Animatics products. For details on the RMODE command, see the Moog Animatics SmartMotor™ Command Reference Guide.
Reserved Motor Variables The PROFINET interface does not: Require the reservation of any user variables. Some older Moog Animatics products required the reservation of yyy and zzz. However, this is not the case in the PROFINET interface—these variables are freely available for the user.
This section lists the PROFINET packet command and response codes and their corresponding SmartMotor commands. Command Packet Codes to Motor Commands Extended 16-bit command codes Response Packet Codes to Motor Commands Extended 16-bit response codes Moog Animatics Class 6 PROFINET Guide Rev. D Page 53 of 76...
C/D* 1, x01 25-27, (Obsolete) x19-x1B 1, x01 28, x1C Initiate mode follow quadrature C/D* 1, x01 29, x1D Enable position mode C/D* 1, x01 30, x1E (Obsolete) Moog Animatics Class 6 PROFINET Guide Rev. D Page 54 of 76...
Page 55
Reset command scan error latch bit C/D* 1, x01 66, x42 C/D* Not available in Class 6 PROFINET 1, x01 67, x43 Reset encoder wraparound event latch bit C/D* Moog Animatics Class 6 PROFINET Guide Rev. D Page 55 of 76...
Page 56
Set mask on user bits, word 1, status word 13 US(W,1,<value>) C/D* 94, x5E <value> Clear specific user bit 0-31 UR(<value>) C/D* 95, x5F <value> Set specific user bit 0-31 US(<value>) C/D* Moog Animatics Class 6 PROFINET Guide Rev. D Page 56 of 76...
Page 57
149, x95 (Reserved) 150, x96 <value> Set maximum allowable temperature (high limit) TH=<value> C/D* 151-162, (Reserved) x97-xA2 163, xA3 <value> Set velocity target VT=<value> C/D* 164, xA4 (Reserved) Moog Animatics Class 6 PROFINET Guide Rev. D Page 57 of 76...
Page 58
<value> represents which variable is referred to in the next variable read operation: 'a' is 0, 'b' is 1, ..., 'zzz' is 77. (Range is 0-77) 208, xD0 (Reserved) Moog Animatics Class 6 PROFINET Guide Rev. D Page 58 of 76...
Page 59
Store long to EEPROM VST(<value long>,1) C/D* u32EptrActual += 4 (But does not affect EPTR NOTE: This u32EptrActual is not the same as the or variables.) program EPTR= command. Moog Animatics Class 6 PROFINET Guide Rev. D Page 59 of 76...
Page 60
0 - report actual position in encoder counts (this is the power-up default value) 1 - report al[0] (big-endian format) 2 - report af[0] (IEEE-754 32-bit single precision, big-endian format) 241-254, (Reserved) xF1-xFE Moog Animatics Class 6 PROFINET Guide Rev. D Page 60 of 76...
Set variable p p=<value> C/D* 272, x0110 <value> Set variable q q=<value> C/D* 273, x0111 <value> Set variable r r=<value> C/D* 274, x0112 <value> Set variable s s=<value> C/D* Moog Animatics Class 6 PROFINET Guide Rev. D Page 61 of 76...
Page 62
Set variable ddd ddd=<value> C/D* 312, x0138 <value> Set variable eee eee=<value> C/D* 313, x0139 <value> Set variable fff fff=<value> C/D* 314, x013A <value> Set variable ggg ggg=<value> C/D* Moog Animatics Class 6 PROFINET Guide Rev. D Page 62 of 76...
Page 63
In other words, to set a new value for the variable, the change of data must be a change relative to the previous network output data cycle (not the current state of the variable in the motor) from the PLC. Moog Animatics Class 6 PROFINET Guide Rev. D Page 63 of 76...
Page 67
<var a-zzz> is: 'a'+u8VarIndexGetActual only <length>=u8VarLenGet (does not affect EPTR) u32EptrActual += (<length>*4); if (u8AutoIncGet) then: u8VarIndexGetActual += <length> NOTE: This u32EptrActual is not the same as the program EPTR= command. Moog Animatics Class 6 PROFINET Guide Rev. D Page 67 of 76...
Page 68
<value>: 0=IGNORE (No Command), 1=OFF (Motor Off), 2=X (Soft Stop), 3=S (Immediate Stop), 4=GOSUB, 5=GOTO 230-234, (Reserved) xE6-xEA 235, xEB <value>= cyclic encoder resolution RRES Moog Animatics Class 6 PROFINET Guide Rev. D Page 68 of 76...
<value>= variable l cyclic 268, x010C <value>= variable m cyclic 269, x010D <value>= variable n cyclic 270, x010E <value>= variable o cyclic 271, x010F <value>= variable p cyclic Moog Animatics Class 6 PROFINET Guide Rev. D Page 69 of 76...
Page 71
<value>= long array element 1 Ral[1] cyclic <value>= long array element ... Ral[...] 818, x0332 cyclic <value>= long array element 50 Ral[50] 819 - 65535, cyclic (Reserved) x0333 - xFFFF Moog Animatics Class 6 PROFINET Guide Rev. D Page 71 of 76...
1-7. Value out of range Check the data value, or related com- mands such as EE address or variable index for appropriate range of values. Moog Animatics Class 6 PROFINET Guide Rev. D Page 72 of 76...
Page 73
Motor does not have Configure the motor to be used without limit switches limit switches by setting their inputs as attached. general use. Moog Animatics Class 6 PROFINET Guide Rev. D Page 73 of 76...
Page 74
Check the unrecognized commands mands used in pro- against those listed in the section "Com- gram. mands Not Currently Supported" in the Class 6 Moog Animatics SmartMotor™ User's Guide Moog Animatics Class 6 PROFINET Guide Rev. D Page 74 of 76...
Need help?
Do you have a question about the Animatics Class 6 SmartMotor and is the answer not in the manual?
Questions and answers