C5-E EtherNetIP/USB Online Manual

EtherNet/IP

With EtherNet/IP™, it is possible to use the most important CiA402 operating modes of the controller. The use of the cyclical modes described in the CiA402 standard (interpolated position mode, cyclic synchronous torque, velocity and position) is not currently possible. The following message types are supported:
  • CIP™ messages (CIP UCMM, CIP class 3 and others)
  • I/O data transfer (CIP class 1)

EtherNet/IP™ references: www.odva.org.

  • THE CIP NETWORKS LIBRARY Volume 1: Common Industrial Protocol (CIP), Date: April.2014,Edition: 3.16
  • THE CIP NETWORKS LIBRARY Volume 2: EtherNet/IP Adaptation of CIP, Date: April.2015,Edition: 1.19
Note:

Nanotec controllers are always based on CANopen standard CiA402. All attributes are therefore stored in a so-called object dictionary. These can be addressed with an index and a subindex, e.g., 1018h:01h. The index is a 16-bit value and the subindex is an 8-bit value.

The controller offers EtherNet/IP™, but this protocol uses a different procedure: all attributes are stored on the basis of objects. For this reason, the C5-E uses an assignment to create a bridge between EtherNet/IP™ and CANopen. As a consequence, the configuration of this controller is somewhat different that with normal EtherNet/IP™ devices.

Device profile

The Nanotec EtherNet/IP™ implementation contains a manufacturer-specific device profile for accessing manufacturer-specific controller properties and motor control.

With the following three services, it is possible to access each attribute for reading or writing. Each attribute listed in chapter Description of the object dictionary can be accessed.

Name Service Class Instance Attribute
Get object dictionary entry 0x32 0x64 1 0
Set object dictionary entry 0x33 0x64 1 0
Get object dictionary entry Rockwell 0x34 0x64 1 0

In addition to the manufacturer-specific profile, the following standard services are also offered:

  • Message Router Object
  • Connection Manager
  • Connection Configuration
  • Port
  • Ethernet Link Object
  • TCP/IP Object
  • Assembly

Service: Get object dictionary entry

The following table shows the assignment of the data for reading an attribute. The length of the data is dependent on the attribute.

Name Service Class Instance Attribute Data
GetOD entry 0x32 0x64 1 0 Index (16-bit) Subindex (8-Bit)

Service: Set object dictionary entry

The following table shows the assignment of the data for writing a value in an attribute. The length of the data is dependent on the attribute. It is at least 1 byte and no more than 4 bytes long.

Name Service Class Instance Attribute                Data
SetOD entry 0x33 0x64 1 0 Index (16-bit) Subindex (8-Bit) Value

Service: Get object dictionary entry Rockwell

The following table shows the assignment of the data for reading an attribute. The response contains a 16-bit object type, a 16-bit data length and the data. The response to this is: Object type (16-bit), followed by the data length (16-bit) and the data itself.

Name Service Class Instance Attribute Data
GetOD entry 0x34 0x64 1 0 Index (16-bit) Subindex (8-Bit)

Assembly objects

There is a set of producer/consumer groups (I/O Common) that contain the most important data for the following operating modes/configurations:

  • Profile Position Mode
  • Velocity Mode
  • Profile Velocity Mode
  • Profile Torque Mode
  • Homing Mode
  • Auto setup mode
  • Digital inputs and outputs

An additional set (I/O PDI) contains the input and output objects for the Plug & Drive interface (PDI), seePDI assemblies.

Note:

It is not possible to use the I/O Common assembly set and PDI assemblies (I/O PDI) simultaneously.

Select only one connection; either I/O Common or I/O PDI.

A configuration assembly is not supported. The attributes that are not included in the assemblies must be read and written via the manufacturer-specific device profile.

Assembly Path
Target -> Originator Assembly - Common 20 04 24 64 30 03
Originator -> Target Assembly - Common 20 04 24 65 30 03
Configuration - Common

Assembly - Common Target -> Originator - Data assignment

Offset (bytes) Object dictionary entry Size (bits)
0 6061h:00h Modes Of Operation Display 8
2 6041h:00h Statusword 16
4 6064h:00h Position Actual Value 32
8 6043h:00h Vl Velocity Demand Value 16
10 6044h:00h Vl Velocity Actual Value 16
12 606Bh:00h Velocity Demand Value 32
16 606Ch:00h Velocity Actual Value 32
20 6074h:00h Torque Demand 16
22 1001h:00h Error Register 8
24 1003h:01h Predefined Error Field 32
28 60FDh:00h Digital Inputs 32
32 Reserved for future use 796 (24 x 32)

Assembly - Common Originator -> Target - Data assignment

Offset (bytes) Object dictionary entry Size (bits)
0 6060h:00h Modes Of Operation 8
2 6040h:00h Controlword 16
4 607Ah:00h Target Position 32
8 6042h:00h Vl Target Velocity 16
12 60FFh:00h Target Velocity 32
16 6071h:00h Target Torque 16
18 6098h:00h Homing Method 8
20 60FEh:01h Digital Output 32
24 Reserved for future use 860 (26 x 32)

PDI assemblies

The assemblies for the Plug & Drive interface contain the input or output object of the PDI. You can find additional information on the Plug & Drive interface in document Function description Plug & Drive interface on us.nanotec.com.

Assembly Path
Target -> Originator Assembly - Common 20 04 24 68 30 03
Originator -> Target Assembly - Common 20 04 24 69 30 03

Assembly - Common Target -> Originator - Data assignment

Offset (bytes) Object dictionary entry Size (bits)
0 2292h:01h PDI Status 16
2 603Fh:00h Error Code 16
4 2292h:02h PDI Return Value 32

Assembly - Common Originator -> Target - Data assignment

Offset (bytes) Object dictionary entry Size (bits)
0 2291h:01h PDI Set Value 1 32
4 2291h:02h PDI Set Value 2 16
6 2291h:03h PDI Set Value 3 8
8 2291h:04h PDI Command 8

Configuring the assembly objects

The assembly objects in the controller are static and do not support dynamic assemblies. The size of the static assemblies is always 128 bytes. The most important data for the various operating modes are already configured; it is, however, possible to append additional data.

The mapped data can only be changed with the SetOD entry command. If changing the configuration, note that the EDS file must also be adapted. It is recommended that the new data be appended to the end of the current mapping. As listed in chapter Assembly objects, there is a data range provided for future use. The advantage of this approach is that the Rockwell AOIs and example projects still function.

Note: The PDI assemblies cannot be modified.

The data are organized successively without gaps. If an 8-bit data value is to have, e.g., 32-bit alignment, it is possible to use so-called dummy objects. Use can also be viewed in the standard configuration for objects 3501h and 3601h.

Note:

To be able to change the mapping, you must first deactivate it by setting the corresponding subindex 0h to "0".

After writing the objects to the respective subindices, enter the number of mapped objects in subindex 0h.

The following table lists all available dummy objects:

Index Data type
0002h Signed integer (8 bit)
0003h Signed integer (16 bit)
0004h Signed integer (32 bit)
0005h Unsigned integer (8 bit)
0006h Unsigned integer (16 bit)
0007h Unsigned integer (32 bit)

Rockwell Studio 5000

Restrictions

The controller operates with all possible data formats; it can handle the data formats in the following list.

Abbreviation
Size in bytes Signed Unsigned
8 SINT USINT
16 INT UINT
32 DINT UDINT

Rockwell PLCs only support signed number formats. Thus, all attributes are converted to a DINT (32 byte, signed). This can cause problems when converting an unsigned 32-bit integer to one with a sign if the highest bit is set. In this case, the number becomes a negative – instead of a positive – number. Currently, such UDINT attributes – which may likely have the highest bit set – are usually a status and it is possible to reference the individual bits with a BOOL type.

There are AOIs (add-on instructions) that simplify access to the object dictionary by automatically converting the numbers to a DINT and from a DINT to the correct number format. For further details, see chapter Add-on instructions (AOI).

Example project

On the Nanotec website www.nanotec.de, you can find an example project that was created for a CompactLogix PLC. It was created for Version 20 and Version 21 of the Logix Designer. The name of the project is Nanotec_SampleCode_CompactLogix_Vxx.ACD. This object contains and also uses all AOIs.

If a PLC other than the CompactLogix or if another Logix Designer version is to be used, it is recommended that a new project be created and the MainRoutine of the example project be imported. To do this, right-click on MainProgram in the Controller Organizer, select the Import Routine and select MainRoutine.L5X from Nanotec to import it into the MainProgram.

Note: It is recommended that the name Nanotec be used for the name of the EtherNet/IP™ module. As a result, the AOIs function without modification, as the path name is already used in some AOIs and variables.

Add-On-Instructions (AOI)

As described in chapter Restrictions, there are a number of restrictions imposed with respect to the Rockwell PLC. To handle these restrictions, Nanotec offers a number of AOIs, which can be used to communicate with Nanotec controllers.

It is strongly recommended that these AOIs be used, as they utilize the correct number format.

All add-on instructions provided by Nanotec use the prefix "AOI_" in their name.

The following AOIs are offered:

  • AOI_Autosetup
  • AOI_Bootloader
  • AOI_Controlword_6040h
  • AOI_GetOdEntry_old
  • AOI_GetOdEntry v1.0
  • AOI_IO_Common
  • AOI_MotorDriveSubmodeSelect_3202h
  • AOI_RestoreParameter_1011h
  • AOI_SetOdEntry
  • AOI_SetParamsHomingMode
  • AOI_SetParamsProfilePositionMode
  • AOI_SetParamsProfileTorqueMode
  • AOI_SetParamsProfileVelocityMode
  • AOI_SetParamsVelocityMode
  • AOI_Statusword_6041h
  • AOI_StoreParameter_1010h

AOI_Autosetup

This AOI performs an auto setup. The auto setup determines encoder parameters and other important parameters that are necessary for operating the controller in closed loop mode. Auto setup is not necessary if the controller is operated in open-loop mode.

Parameter

Required Name Data type Use Description
yes AOI_Autosetup AOI_Autosetup InOut
yes Execute BOOL Input
no Done BOOL Output
no Error BOOL Output
yes IO_Common AOI_IO_Common InOut AOI for reading or writing the "IO Common" assemblies
yes Controlword_6040h AOI_Controlword_6040h InOut AOI for shifting the state machine up or down or for resetting errors.

Description

AOI_Autosetup
Instance of this AOI, created as a Controller Tag.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
IO_Common
Instance of AOI_IO_Common, created as a Controller Tag.
Controlword_6040h
Instance of AOI_Controlword_6040h, created as a Controller Tag.

AOI_Bootloader

This AOI switches the controller to boot loader mode, in which the controller awaits further instructions, e.g., for a firmware update. Special PC software is needed for this firmware update (Plug & Drive Studio).

Parameter

Required Name Data type Use
yes AOI_Bootloader AOI_Bootloader InOut
no Done BOOL Output
no Error BOOL Output
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut

Description

AOI_Bootloader
Instance of this AOI, created as a Controller Tag.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
MSG_DATA_Input
Buffer that is needed for transferring a message.
Execute
This AOI is executed on the rising edge of this parameter.
SetOdEntry_MSG
Instance of a message object for writing an entry in the object dictionary.

AOI_Controlword_6040h

This AOI is used to handle object 6040h, and, thus, serves to simplify use of the CiA 402 Power State Machine. The AOI has three operating modes:
OpMode = 1
Switch up object 6040h for the CiA 402 Power State Machine.
OpMode = 2
Switch down object 6040h for the CiA 402 Power State Machine.
OpMode = 3
Deleting the error bit in object 6041h.

Depending on the status bit of object 6041h, it can increase or decrease the status of the CiA 402 Power State Machine. In OpMode=1, the AOI increases the status step-by-step until the Operation enabled status (6040h=15) is reached. In OpMode=2, the AOI decreases the status step-by-step until the Switch on disabled status (6040h=6) is reached.

Parameter

Required Name Data type Use
yes AOI_Controlword_6040h AOI_Controlword_6040h InOut
yes Od6040h DINT InOut
yes Od6041h DINT InOut
yes OpMode DINT Input
yes Execute BOOL Input
no Done BOOL Output
no Error BOOL Output
no Quickstop BOOL Output

Description

AOI_Controlword_6040h
Instance of this AOI, created as a Controller Tag.
Od6040h
Reference to the content of object 6040h.
Od6041h
Reference to the content of object 6041h.
OpMode
Selection of the mode in which the AOI is to operate.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error in statusword 6041h.
Quickstop
Flag that indicates a quickstop in statusword 6041h.

AOI_GetOdEntry_old

This AOI reads a value from an object in the object dictionary.

Parameter

Required Name Data type Use
yes AOI_GetOdEntry_old AOI_GetOdEntry_old InOut
yes Execute BOOL Input
no Error BOOL Output
no Done BOOL Output
yes Send_MSG MESSAGE InOut
yes MSG_Data_Input SINT[7] InOut
yes MSG_Data_Output SINT[7] InOut
yes Index DINT Input
yes Subindex DINT Input
yes SignedValue BOOL Input
yes Data_Size DINT Input
yes Data DINT Output

Description

AOI_GetOdEntry
Instance of this AOI, created as a Controller Tag.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
Send_MSG
Instance of a message object for setting a value in the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
MSG_Data_Output
Buffer that is needed for sending the message.
Index
Index of the object (parameter).
Subindex
Subindex of the object (parameter).
SignedValue
Sign of the data value.
Data_Size
Length of the data value in bytes.
Data
Returned data value.

AOI_GetOdEntry v1.0

This AOI reads a value of an object in the object dictionary and always writes the data to a DINT. This function is the best approach for Rockwell, since the object definition is sent as well. The AOI can thereby convert the response to a DINT.

Parameter

Required Name Data type Use
yes AOI_GetOdEntry AOI_GetOdEntry InOut
no Done BOOL Output
no Error BOOL Output
yes Send_MSG MESSAGE InOut
yes MSG_Data_Input SINT[100] InOut
yes MSG_Data_Output SINT[100] InOut
yes Index DINT Input
yes Subindex DINT Input
yes Data DINT Output
yes Data_String STRING InOut
yes Execute BOOL Input

Description

AOI_GetOdEntry
Instance of this AOI, created as a Controller Tag.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
Send_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
MSG_Data_Output
Buffer that is needed for sending the message.
Index
Index of the object (parameter).
Subindex
Subindex of the object (parameter).
Data
The value that was read from the object.
Data_String
If a string was read, it is stored here.
Execute
This AOI is executed on the rising edge of this parameter.

AOI_IO_Common

This AOI is the most important add-on instruction. It handles the exchange of the input/output data with the assemblies. Due to the need to be able to handle "unsigned values," a simple CPS instruction is insufficient for copying. All input values are transformed to a DINT and all output values are converted from a DINT to the native format of the parameter.

Parameter

Required Name Data type Use
yes AOI_IO_Common AOI_IO_Common InOut
yes Execute BOOL Input
no Controlword_6040h_0 DINT Input
no Statusword_6041h_0 DINT Output
no Modes_Of_Operation_6060h_0 DINT Input
no Error_Register_1001h_0 DINT Output
no Predefined_Error_Field_1003h_1 DINT Output
no Target_Position_607Ah_0 DINT Input
no Position_Actual_Value_6064h_0 DINT Output
no VI_Target_Velocity_6042h_0 DINT Input
no Vl_Velocity_Demand_Value_6043h_0 DINT Output
no Vl_Velocity_Actual_Value_6044h_0 DINT Output
no Target_Velocity_60FFh_0 DINT Input
no Velocity_Demand_Value_606Bh_0 DINT Output
no Velocity_Actual_Value_606Ch_0 DINT Output
no Target_Torque_6071h_0 DINT Input
no Torque_Demand_6074h_0 DINT Output
no Homing_Method_6098h_0 DINT Input
no Digital_Inputs_60FDh_0 DINT Output
no Digital_Outputs_60FEh_1 DINT Input
yes IO_Data_In SINT[32] InOut
yes IO_Data_Out SINT[22] InOut

Description

AOI_IO_Common
Instance of this AOI, created as a Controller Tag.
Execute
This AOI is executed on the rising edge of this parameter.
IO_Data_In
Reference to the input data of the assembly.
IO_Data_Out
Reference to the output data of the assembly.
All others
Variables that are created as a Controller Tag. The data type is always DINT and must be used instead of accessing the parameter via the assembly.

AOI_MotorDriveSubmodeSelect_3202h

This AOI reads or writes to object 3202h. Two operating modes are available:
OpMode = 1
Reads the value of 3202h and writes it to the output.
OpMode = 2
Sets the input and writes the value in object 3202h.

Parameter

Required Name Data type Use
yes AOI_MotorDriveSubmodeSelect_3202h

AOI_MotorDrive

SubmodeSelect_3202h

InOut
yes Input DINT Input
yes Output DINT Output
yes GetOdEntry_MSG MESSAGE InOut
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output
yes MSG_Data_Input SINT[100] InOut
yes MSG_Data_Output SINT[100] InOut
yes OpMode DINT Input
yes Execute BOOL Input

Description

AOI_MotorDriveSubmodeSelect_3202h
Instance of this AOI, created as a Controller Tag.
Input
Value that is to be written to object 3202h of the object dictionary.
Output
Value that is read from object 3202h of the object dictionary.
GetOdEntry_MSG
Instance of a message object for reading a value in the object dictionary.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
MSG_Data_Output
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_RestoreParameter_1011h

This AOI can be used to restore a subset of objects in the object dictionary (to factory settings) that are loaded the next time the controller is switched off/on. The controller is restarted after the values are reset. See also chapter Saving objects.

Three subsets are available via methods:

Method 1
Restore all parameters
Method 2
Restore all communication parameters
Method 3
Restore all application parameters
Method 4
Restore all user parameters
Method 5
Restore all movement parameters
Method 6
Restore all motor tuning parameters

Parameter

Required Name Data type Use
yes AOI_RestoreParameter_1011h AOI_RestoreParameter_1011h InOut
no Done BOOL Output
no Error BOOL Output
yes MSG_Data_Input SINT[100] InOut
yes Method DINT Input
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut

Description

AOI_RestoreParameter_1011h
Instance of this AOI, created as a Controller Tag.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
Method
  • 1: Restore all parameters
  • 2: Restore all communication parameters
  • 3: Restore all application parameters
  • 4: Restore all user parameters
  • 5: Restore all movement parameters
  • 6: Restore all motor tuning parameters

AOI_SetOdEntry

With this AOI, it is possible to write a value to an object of the object dictionary.

Parameter

Required Name Data type Use
yes AOI_SetOdEntry AOI_SetOdEntry InOut
yes Execute BOOL Input
no Error BOOL Output
no Done BOOL Output
yes Send_MSG MESSAGE InOut
yes MSG_Data_Input SINT[100] InOut
yes Index DINT Input
yes Subindex DINT Input
yes Data_Size DINT Input
yes Data DINT Input

Description

AOI_SetOdEntry
Instance of this AOI, created as a Controller Tag.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
Send_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Index
Index of the object (parameter).
Subindex
Subindex of the object (parameter).
Data_Size
Quantity of data in bytes.
Data
Data value that is to be written.

AOI_SetParamsHomingMode

With this AOI, it is possible to set the most important parameters for Homing mode all at once. Parameters are stored in UDT_ParamsHomingMode. The AOI writes the parameters in the controller one after the next.

Parameter

Required Name Data type Use
yes AOI_SetParamsHomingMode AOI_SetParamsHomingMode InOut
yes Parameter UDT_ParamsHomingMode InOut
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output

Description

AOI_SetParamsHomingMode
Instance of this AOI, created as a Controller Tag.
Parameter
Reference to the configured parameter.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_SetParamsProfilePositionMode

With this AOI, it is possible to set the most important parameters for Profile Position mode all at once. Parameters are stored in UDT_ParamsProfilePositionMode. The AOI writes the parameters in the controller one after the next.

Parameter

Required Name Data type Use
yes AOI_SetParamsProfilePositionMode

AOI_SetParams

ProfilePositionMode

InOut
yes Parameter UDT_ParamsProfilePositionMode InOut
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output

Description

AOI_SetParamsProfilePositionMode
Instance of this AOI, created as a Controller Tag.
Parameter
Reference to the configured parameter.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_SetParamsProfileTorqueMode

With this AOI, it is possible to set the most important parameters for Profile Torque mode all at once. Parameters are stored in UDT_ParamsProfileTorqueMode. The AOI writes the parameters in the controller one after the next.

Parameter

Required Name Data type Use
yes AOI_SetParamsProfileTorqueMode AOI_SetParamsProfileTorqueMode InOut
no EnableIn BOOL Input
no EnableOut BOOL Output
yes Parameter UDT_ParamsProfileTorqueMode InOut
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output

Description

AOI_SetParamsProfileTorqueMode
Instance of this AOI, created as a Controller Tag.
Parameter
Reference to the configured parameter.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_SetParamsProfileVelocityMode

With this AOI, it is possible to set the most important parameters for Profile Velocity mode all at once. Parameters are stored in UDT_ParamsProfileVelocityMode. The AOI writes the parameters in the controller one after the next.

Parameter

Required Name Data type Use
yes AOI_SetParamsProfileVelocityMode AOI_SetParamsProfileVelocityMode InOut
yes Parameter UDT_ParamsProfileVelocityMode InOut
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output

Description

AOI_SetParamsVelocityMode
Instance of this AOI, created as a Controller Tag.
Parameter
Reference to the configured parameter.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input

Buffer that is needed for sending the message.

Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_SetParamsVelocityMode

With this AOI, it is possible to set the most important parameters for Velocity mode all at once. Parameters are stored in UDT_ParamsVelocityMode. The AOI writes the parameters in the controller one after the next.

Parameter

Required Name Data type Use
yes AOI_SetParamsVelocityMode AOI_SetParamsVelocityMode InOut
yes Parameter UDT_ParamsVelocityMode InOut
yes MSG_Data_Input SINT[100] InOut
yes Execute BOOL Input
yes SetOdEntry_MSG MESSAGE InOut
no Done BOOL Output
no Error BOOL Output

Description

AOI_SetParamsProfileVelocityMode
Instance of this AOI, created as a Controller Tag.
Parameter
Reference to the configured parameter.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.

AOI_Statusword_6041h

Object 6041h in the object dictionary indicates whether the status requested in object 6040h was reached. The AOI divides the bits into individual flags.

Parameter

Required Name Data type Use
yes AOI_Statusword_6041h AOI_Statusword_6041h InOut
yes Statusword_6041h DINT InOut
no Ready_To_Switched_On BOOL Output
no Switched_On BOOL Output
no Operational_Enabled BOOL Output
no FAULT BOOL Output
no Voltage_Enabled BOOL Output
no Quick_Stop BOOL Output
no Switched_On_Disabled BOOL Output
no Warning BOOL Output
no Synchronization BOOL Output
no Remote BOOL Output
no Target_Reached BOOL Output
no Internal_Limit_Reached BOOL Output
no Operation_Mode_Specific1 BOOL Output
no Operation_Mode_Specific2 BOOL Output
no Closed_Loop_Available BOOL Output

Description

AOI_Statusword_6041h
Instance of this AOI, created as a Controller Tag.
Statusword_6041h
Reference to the content of object 6041h.
All others
Variables that were created as Controller Tag. They are always of type BOOL and can be used instead of accessing individual bits. Another advantage is that these flags are named.

AOI_StoreParameter_1010h

This AOI can be used to store a subset of objects from the object dictionary, thereby automatically making them available the next time the controller is restarted. Furthermore, the values are retained by means of a firmware update. See also chapter Saving objects.

The available subsets are listed below:

Method 1
Store all parameters
Method 2
Store all communication parameters
Method 3
Store all application parameters
Method 4
Store all user parameters
Method 5
Store all movement parameters
Method 6
Store all motor tuning parameters

Parameter

Required Name Data type Use
yes AOI_StoreParameter_1010h AOI_StoreParameter_1010h InOut
no Done BOOL Output
no Error BOOL Output
yes MSG_Data_Input SINT[100] InOut
yes MSG_Data_Output SINT[100] InOut
yes Method DINT Input
yes Execute BOOL Input
yes GetOdEntry_MSG MESSAGE InOut
yes SetOdEntry_MSG MESSAGE InOut

Description

AOI_StoreParameter_1010h
Instance of this AOI, created as a Controller Tag.
SetOdEntry_MSG
Instance of a message object for writing a value to the object dictionary.
GetOdEntry_MSG
Instance of a message object for reading a value in the object dictionary.
MSG_Data_Input
Buffer that is needed for sending the message.
MSG_Data_Output
Buffer that is needed for sending the message.
Execute
This AOI is executed on the rising edge of this parameter.
Done
Flag that indicates the successful execution and completion of the AOI.
Error
Flag that indicates an error during the transfer of a message.
Method
  • 1: Store all parameters
  • 2: Store all communication parameters
  • 3: Store all application parameters
  • 4: Store all user parameters
  • 5: Store all movement parameters
  • 6: Store all motor tuning parameters

User-defined data types

All user-defined data types provided by Nanotec have the prefix "UDT_" in the name.

  • UDT_ParamsHomingMode
  • UDT_ParamsProfilePositionMode
  • UDT_ParamsProfileTorqueMode
  • UDT_ParamsProfileVelocityMode
  • UDT_ParamsVelocityMode

UDT_ParamsHomingMode

The most important parameters for Homing mode can be configured here if a variable of this data type is created as Controller Tag. The parameters can then be written with AOI_SetParamsHomingMode.

This UDT contains the following data:

  • Od607Ch_00 DINT
  • Od6099h_01 DINT
  • Od6099h_02 DINT
  • Od609Ah_00 DINT
  • Od2056h_00 DINT
  • Od203Ah_01 DINT
  • Od203Ah_02 DINT

UDT_ParamsProfilePositionMode

The most important parameters for Profile Position mode can be configured here if a variable of this data type is created as Controller Tag. The parameters can then be written with AOI_SetParamsProfilePositionMode.

This UDT contains the following data:

  • Od607Bh_01 DINT
  • Od607Bh_02 DINT
  • Od607Ch_00 DINT
  • Od607Dh_01 DINT
  • Od607Dh_02 DINT
  • Od607Eh_00 DINT
  • Od6081h_00 DINT
  • Od6082h_00 DINT
  • Od6083h_00 DINT
  • Od6084h_00 DINT
  • Od6085h_00 DINT
  • Od6086h_00 DINT
  • Od60C5h_00 DINT
  • Od60C6h_00 DINT
  • Od60A4h_01 DINT
  • Od60A4h_02 DINT
  • Od60A4h_03 DINT
  • Od60A4h_04 DINT

UDT_ParamsProfileTorqueMode

The most important parameters for Profile Torque mode can be configured here if a variable of this data type is created as Controller Tag. The parameters can then be written with AOI_SetParamsProfileTorqueMode.

This UDT contains the following data:

  • Od6072h_00 DINT
  • Od6087h_00 DINT

UDT_ParamsProfileVelocityMode

The most important parameters for Profile Velocity mode can be configured here if a variable of this data type is created as Controller Tag. The parameters can then be written with AOI_SetParamsProfileVelocityMode.

This UDT contains the following data:

  • Od606Dh_00 DINT
  • Od606Eh_00 DINT
  • Od607Eh_00 DINT
  • Od6083h_00 DINT
  • Od6084h_00 DINT
  • Od6085h_00 DINT
  • Od6086h_00 DINT
  • Od604Ah_01 DINT
  • Od604Ah_02 DINT

UDT_ParamsVelocityMode

The most important parameters for Velocity mode can be configured here if a variable of this data type is created as Controller Tag. The parameters can then be written with AOI_SetParamsVelocityMode.

This UDT contains the following data:

  • Od604Ch_01 DINT
  • Od604Ch_02 DINT
  • Od6048h_01 DINT
  • Od6048h_02 DINT
  • Od6049h_01 DINT
  • Od6049h_02 DINT
  • Od6046h_01 DINT
  • Od6046h_02 DINT
  • Od604Ah_01 DINT
  • Od604Ah_02 DINT
▶   next

Contents