1.1 Hardware Configuration Overview

The Hardware Configuration provides a means of setting details for the hardware and communication devices with which the IEC application program interfaces. This information consists of items such as: MECHATROLINK Axis and Remote I/O configuration, parameters for devices on the Ethernet network, and Option Slot configuration. For each of these elements, the Configuration software automatically enters variable groups and default names in the Global Variables Definition for use with the application program.

Other capabilities of the Hardware Configuration include graphical motor tuning interface, test move interface, alarm monitoring, and axis parameter monitoring.

Overview of Hardware Configuration

Menu on Hardware Configuration


1.2 Accessing the Configuration

Open a project before launching the Hardware Configuration, otherwise the Open Project dialog box will appear so a project can be selected.

Click the Icon on the toolbar [image] to launch the Hardware Configuration.


1.3 Closing the Configuration

The Hardware Configuration will automatically close when the programming environment is closed, or if another project is opened. It is not necessary to close the Hardware Configuration while in the MotionWorks IEC programming environment.


1.4 Online vs. Offline

1.4.1 Online vs. Offline

Offline

When the Hardware Configuration is offline, all data displayed, modified and saved is written to XML files in the project directory. If devices are added or removed, the IEC application will be changed accordingly when the Hardware Configuration's save button is pressed. This includes updating drivers, variable groups, and auto created variables. Changes made Offline that do not require servopack updates (no pn values changed) can be sent to the controller using the Online Menu to send the Offline configuration.

Online

Upon connection with a controller, a search for configuration data previously stored by MotionWorks IEC Hardware Configuration is performed.

If no configuration is found in controller (factory default):

The auto discovered hardware is compared to the offline Hardware Configuration. If the hardware matches, the parameters for each component are compared. If the parameters match, the controller’s configuration is displayed. If the configurations are different at either the hardware or parameter level, a side-by-side comparison will be displayed. The user must select one of the two configurations. When the Save function is executed, the project's Hardware Configuration is stored in the controller.

If a previously stored configuration is found:

The previously stored Hardware Configuration is compared to the offline hardware. If the hardware matches, the parameters for each component are compared. If the parameters match, the controller’s configuration is displayed. If the configurations are different at either the hardware or parameter level, a side-by-side comparison will be displayed. The user must select one of the two configurations.

Process of going online with an MPiec Series Controller

It is not possible to go online with an offline Hardware Configuration that includes hardware not physically connected to the controller. For example, if the project's Configuration contains four servo axes but only one servo is connected to the controller over the MECHATROLINK motion network, it will not be possible to go online with the Hardware Configuration, however the user can send a configuration with missing hardware to the controller without going online.

  1. Click the ‘Online' menu

  2. Click the 'Controller Configuration Utilities' menu

  3. Click 'Send offline configuration to controller then reboot controller’. Note that this feature will only send the XML configuration files to the StartUp directory on the controller, and not send amplifier parameters to devices on the MECHATROLINK network.


1.4.1 Configuration Comparison

This window will appear if differences were detected in the configuration files in the project directory on the computer and the MPiec controller.

Device Differences

Differences in physical devices or communication settings are displayed visually in the windows.

Parameter Differences

If both locations contained configuration files, the exact differences can be viewed by right clicking in the item highlighted in red.

If either location did not contain configuration files, such as the case of a new project or new controller, the differences cannot be displayed.


1.5 Saving Configuration Data

Configuration files are stored in a sub directory of the MotionWorks IEC application’s project directory when the Save icon is clicked from within the Hardware Configuration. When online with the controller, the save function also downloads parameters to the controller and all MECHATROLINK motion devices.

The Save function will universally save data for all configured components.

Saving while offline

Saving while online with the controller


1.7.1 User File Download

To add a user data file to any MPiec Series Controller, including cam files, follow these steps:

  1. Open the Hardware Configuration

  2. Click the “Online” menu

  3. Click the “Controller Configuration Utilities” menu

  4. Select the radio button called “Send Cam Data to Controller”

5) Select a CSV file.

6) Press Execute.

7) The file will be visible from the web server Project Archive list, and it is possible to select the CSV file using Y_CamFileSelect. Use the directory path in the filename input as shown below:


1.8.1 Adding a Motion Axis

There are a couple methods to add axes to the configuration.

Offline:

1) Right click on the MECHATROLINK-II or MECHATROLINK-III item in the configuration tree.

2) Select 'Add Device' from the menu.

3) Select a drive model.

4) Enter a MECHATROLINK node number. This must match the rotary switches of the MECHATROLINK address on the device. Each device must have a unique address.

Online:

If Self Configuration is selected, the configuration will be automatically loaded into the configuration tree if 'auto discovered' is selected.

Drive configuration is divided into the following areas, depending on the type of drive configured. (Some products may not include all tabs) :

Limits | Test Move | All Parameters
Configuration | Function | Alarm
I/O | Absolute Encoder | Brake
Tuning | Hardware | Dual Encoder

Figure 1: Two SGDV MECHATROLINK II axes and a virtual axis configured on an MP2300siec controller

Figure 2: Thirty two MECHATROLINK III SGDVs and eight virtual axes configured on an MP3200iec controller


1.8.1.1 Multi Axis Parameter Editing

Machine configurations with multiple axes that have similar functionality requirements can be set simultaneously. This is useful in situations when many axes require the same parameter value which may differ from the default value.

Parameter Setting on Multiple Axes

  1. Select MECHATROLINK in the configuration tree.

  2. Select the 'Set Parameters on Multiple Axes' tab as shown in the figure below.

  3. Select the axes whose parameters must be set to the same value.

  4. Select the axes whose parameters must be set/edited.

  5. Select the parameters that must be edited.

  6. By default, all parameters will appear in the list. The parameter list can be reduced / customized by transferring the parameters to the Available box as shown below.

  7. Select the parameters to be edited and transfer them to the Selected group as shown below.

  8. Enter the desired value in the value column. Press 'Enter'. The parameter change will occur for all axes instantaneously. Note that the drives may require a power cycle for some parameter changes to take effect.


1.8.1.2 Copy - Paste All Parameters

Copy All Parameters to Multiple Drives

  1. Select the drive whose parameters will be copied to other drives. Right Click on the drive in the configuration tree.

  2. To copy parameters to multiple axes, select 'Paste Parameters to Multiple Axes'

  3. Select the axes to which the parameters will be copied. In the example shown below, parameters from axis 16 will be copied to axes 17 and 18. Once the target drives are in the Selected window, click the Paste button. Note that drives may require power cycle before for some parameters to take effect. (See the Servopack manual for details.)


1.8.2 Motion axis I/O Addressing

Global variable groups are automatically added to the global variable list when the Hardware Configuration is saved. The following groups and their associated hardware addresses (for all 16 axes) are provided for reference.

Variable group are automatically created for the following motion axis types:

  1. Servo

  2. Variable Frequency Drive

  3. Stepper

Applicability of specific variables will depend on the hardware support for such features.

Please refer to the Sigma-5 manual for further details of individual inputs / outputs and their allocations : SIEPS80000046 (section 3.2)


1.8.3 Limits

Set the soft position, torque, and velocity limits for the application. The Yaskawa system provides some redundancy for torque and velocity limits. In addition to the Servopack speed and torque limits shown below (Pn402, 403, and 407, the MPiec controller can limit position, speed and torque via parameters settable by MC_WriteParameter. Please check the PLCopen help documentation for details.


1.8.4 Servo Tuning

Please refer to the following tuning documents on www.yaskawa.com:

  1. Tuning for minimizing trajectory following error: AN.MCD.09.122

  2. Sigma-5 manual: SIEPS80000046 (section 5.)


1.8.5 Performing a Test Move

Warning: Be sure to safeguard the machine during the Test Move operation! Use a hardwired E-Stop function in case of unexpected operation.

The IEC application program must be stopped using the resource dialog window before using the test move function.

Direction

Select from forward only, reverse only, and forward & reverse motion.

Distance | User Units
Accel/Decel | User Units/s2
Delay Time | ms
Speed | User Units/s
Cycles | Quantity


1.8.6 Motion Alarms

The Alarms tab shows alarm history related to the selected axis. The alarms displayed here are the same alarms available from the web server or the MC_ReadAxisError and function block. Each alarm consists of two 16 bit values; an AlarmClass and AlarmID. The following AlarmClasses refer to alarms originating on devices other than the MPiec controller:

0x3302=SGDH

0x3303=SGDS or SGDV

0x3312=VFD

0x3313=Generic Stepper

0x3314=Oriental Stepper

0x3315=MyComStepper

For each of the AlarmClasses listed above, the AlarmID is the alarm code generated by the device.

For more information regarding Servopack alarms, refer to the following manuals:

Sigma II with NS115: SIEP C710800 01, see section 9.3

Sigma III: YEA-SIA-S800-11, see section 10.1.4

Sigma-5 with rotary motor: SIEPS8000043, see Section 6.1

Sigma-5 with linear motor: SIEPS8000044, see Section 6.1

For more information regarding Variable Frequency Drive alarms, refer to the following manuals:

A1000: SIEP C710616 41, see section 6.3

V1000: SIEP C710606 18, see section 6.5

If the AlarmClass is any other value, check the Controller AlarmID List.


1.8.7 Remote I/O Devices

MECHATROLINK I/O devices, such as those provided by Yaskawa and Phoenix Contact can be connected to the MP2300Siec or MP2310iec controller. Once the remote I/O device has been added and saved in the Hardware Configuration, a new group will be automatically created in the Global Variables grid.

Configuring a Phoenix Remote I/O device

A Phoenix Remote I/O Mapping Tool is available to help configure IL MII BK units.

Instructions for the mapping tool and creating variable sets are available in this document: AN.MP2000iec.10.

More information on the IL MII BK units can be obtained from the Phoenix Contact Bus Coupler Manual from www.phoenixcontact.com.

Application Notes

Phoenix IB IL PWM 2 PAC configuration for pulse/step and direction output : AN.MCD.09.094


1.8.8 Setting User Units

When one of the motion axes is selected on the configuration tree, click on its Configuration tab to set the user unit parameters. Changes to user units will only take effect after a power cycle.

Rotary Motors:

The default User Unit for rotary motors is 1.0 = one motor revolution. This User Unit configuration in the controller is independent of the encoder resolution. Encoder resolution is read from the drive and is factored at run time by the controller firmware.

Linear Motors:

The default User Unit for linear motors is 1.0 = one millimeter, however Pn282 must be set correctly for the linear encoder scale used. Typically, the linear scale pitch is 20 microns.

Warning: If user unit parameters are changed after MC_SetPosition has been executed to store an absolute encoder position offset, the position value will be incorrect after power cycle. Use MC_SetPosition again to calibrate the axis after changing the User Unit parameters.

Example 1:

Example 2:

Mechanical Configuration: Sigma Trac Linear Motor


1.8.9 All Parameters

This tab displays a list of all parameters related to the selected axis, including both controller and drive side parameters. If the Hardware Configuration is online with the controller, the current value column displays parameters in the amplifier (Pns) and controller parameters (non Pn parameters). This page can be used to edit both amplifier parameters and controller parameters.

Color Legend:

Blue = Parameters that are forced to a specific value as shown in the grid. Do not alter these parameters in the amplifier using other means, such as a digital operator, or the Y_WriteParameter function block. If blue parameters are changed using other methods, improper operation may result.

Note: In some applications, it may be advantageous to change the gear ratio Pns 20E and 210 in the amplifier to account for situations where the physical ratio may be changed as part of the machine design. For example, assume the User Units are set for a 360 degree rotary cycle, and the gear ratio setting on the Configuration tab is 5:1. If later the gear box is changed to 10:1, Pn 20E and 210 can be set to reflect an additional 2:1 change in physical ratio, but the controller will still operate using 0 ~ 360 degrees per cycle of the machine.

Grey = Parameters that cannot be changed by the Hardware Configuration.


1.8.10 S-Curve Settings

The configuration page allows the user to select whether an axis is to be used in rotary mode or in linear mode. A rotary mode axis is one which has a positioning system that is based on a modulus called machine cycle. For example, an indexing table that travels in one direction only with a finite machine cycle is a rotary axis. A ball screw system can be defined as a linear axis. For rotary axes, the user should specify a machine cycle.

Refer to section 1.8.8 on how to set user units in the hardware configuration.

S-Curve functionality

S-Curve functionality for discrete motion profiles is available starting in firmware version 1.1.2.5 by enabling the moving average filter function. To use the moving average filter, enable it in the configuration tab for the motion axis. Once enabled in the Hardware Configuration and saved in the controller, the feature cab be toggled off and on in the IEC application using MC_WriteBoolParameter and parameter number 1300. The filter time constant (parameter 1301) can also be specified in the same tab. The filter is implemented as a lag filter as shown below.

The moving average filter limits are [0,5). (0 excluded).

If the Moving average filter time constant is set to 0.1 seconds and the MECHATROLINK/DPRAM update rate is set to 2 ms, the moving average will provide a filter of 50 data points (50 data points in 100 ms). An example of a move profile with the Moving Average Filter applied is shown below. The logic analyzer plot below shows the effect of a 0.1 s moving average filter set up. The logic analyzer is synchronized with a 2 ms application task. It can be seen that the filtered profile (in red) settles to steady state 50 scans after the commanded profile (in blue). Since each scan is 2 ms in time, 50 scans show 100ms in time. Thus it can be seen that a 0.1s moving average filter set up generates an s curve velocity profile where the filtered velocity will lag the commanded trapezoidal profile by 0.1 seconds.

Commanded velocity in blue (Parameter 1011). Post S - curve commanded velocity in red (Parameter 1021)

Note:

For rotary mode applications using the Moving Average Filter, use firmware 1.2.1 or greater.


1.8.11 Dual Encoder (Full Closed Loop)

Configuration of a fully closed module on a Sigma-5 Servopack is possible by setting parameters on the 'Dual Encoder' and 'Configuration' tab.

  1. Set Pn20A, Number of External Scale Pitch.

  2. Set Pn002.2 = 1 (Use absolute encoder as incremental.)

  3. Set Pn002.3 to 1 or 3 depending on the direction of the fully closed encoder.

  4. Increase Pn51B , the allowable deviation between motor and load positions that will trigger an alarm. The proper value is application dependant.

  5. Set Pn22A.3 = 0 (Use motor encoder speed for speed feedback (Recommended.)

NOTES:

Yaskawa recommends selecting an encoder resolution that closely matches the encoder counts per user unit of the Sigma-5 servo. (Less than 20:1 pulse count difference.) High resolution will improve the effectiveness of the powerful auto-tuning algorithms in the Sigma-5 Servopack.

The MPiec controller forces the electronic gear ratio (Pn20E and Pn210) to be unity (1:1). Use the Gear Ratio values on the Configuration tab as shown below.

Please refer to the Sigma-5 manual for details about individual Servopack Pns: SIEPS80000046 (Section 8)

Example 1:

Assume a ball screw system with a lead of 120 mm. There is gear reduction of 9:1, and the external encoder sine wave pitch = 20 um.

Pn20A = (120mm/1 rev of gearbox) x (1rev of gearbox / 9 rev of motor) x (pitch / 0.02 mm) = 667 pitch / rev.

The configuration settings for this example are shown in the figure below.

A snap shot of the dual encoder tab is shown below

Example 2:

Assume a fully closed loop system with the following encoder parameters:

One rev of the motor shaft = 50.265 mm at the load.

Fully Closed Encoder, wheel diameter = 1.25 inches.

Encoder resolution = 5000 sine waves / rev.

8 bit serial converter (256 pulses per cycle).

Therefore, the number of pulses in one rev of the external encoder = 5000 x 256 = 1280000 pulses / rev.

The distance covered in one revolution of the fully closed encoder = 1.25” x Pi x 25.4 = 99.7 mm.

99.7 mm --> 1280000 pulses.

1 mm --> 1280000/99.7 = 12833.36 pulses.

The configuration settings for this example are shown in the figure below.

Pn20A = The number of external encoder pitches per rev of the motor.

1 rev of motor = 50.265 mm.

Therefore, (99.7/50.265) revs of the motor = 99.7 mm (distance for one rev of the fully closed encoder)

99.7/50.265 revs of the motor = 5000 pitches.

Therefore, 1 rev of the motor = (5000 / (99.7/50.265)) = 2513 pitches / rev of motor.

Pn20A = 2513 pitches / rev of the motor.


1.9.1 Ethernet Connections Overview

The controller can operate as an EtherNet/IP scanner and adapter, a Modbus/TCP client (master) and server (slave), and deliver OPC data simultaneously.

Global Variable Groups created when EthetNet/IP adapter and MODBUS TCP server (slave) communication capabilities are enabled in the Hardware Configuration.


1.9.0 Connecting to the Controller

The project IP address is located under the TCP/IP Settings in the Configuration Tree. The IP Address is cross-linked with the IP Address in the Hardware Tab of the Project. All programming tools can communicate simultaneously with the controller (MotionWorks IEC, Hardware Configuration, and web server.) A color-coded indicator in the upper right corner of the window indicates the connection status with a red or green background and displaying the text “Online” or “Offline.”

MotionWorks IEC uses the following Ethernet ports to communicate with the controller hardware. Certain firewall implementations may block these ports, and prohibit communication. An easy way to test for this is a network Ping, or if communication is possible via the web server, but not MotionWorks IEC.

Communication Method | Port Number
MotionWorks IEC | 20547
Hardware Configuration | 4040
Web Server | 80
Ethernet/IP (Implicit Messaging) | 2222
Ethernet/IP (Explicit Messaging) | 44818
Modbus/TCP | 502
OPC Server | 20547

Application Note

Setup for remote EtherNet/IP connections using Routers: AN.MP2000iec.04


1.9.2 Using an HMI (Master) to Communicate to the Controller Via Modbus/TCP

Any MPiec controller can be configured as a MODBUS TCP server (slave) if the user enables the controller as a MODBUS slave in the Hardware Configuration, saves and cycles power on the controller.

The Modbus memory map for an MPiec controller when configured as a server (slave) is shown in the figure below. Note that by default, function codes 01 and 03 return data that was sent to the controller from the master and do not reflect data from the Global Variables in the IEC application program.

If 'Add Holding Register Outputs' is enabled, the IEC application program can write into MODBUS memory register 41025 from as shown in the figure below

If the master requires a Device ID setting for the server, the MPiec controllers have a device ID of "1".

Other Modbus Driver features:

  • The Modbus memory is copied to the Global Variables at the task update rate as configured by the user in the Hardware Configuration.

  • Maximum number of clients on the network: Tested 3 clients polling an MPiec controller simultaneously.

  • Modbus coil 1 equates to the Global Variable at %IX24560. 128 coils are available.

  • Modbus register 40001 equates to the Global Variable at %IW28672. 1024 registers are available.

  • Modbus input 10001 equates to the Global Variable at %QX24560. 128 inputs are available.

  • Modbus register 30001 equates to the Global Variable at %QW28672. 1024 registers are available.

The figure below shows the relationship between Modbus registers and IEC application memory.

Memory map for Modbus memory when the controller is configured a server / slave.

The following groups are automatically created in the Global Variables worksheet when the controller is configured as a MODBUS server.

Selected Modbus clients and related Application Notes available on www.yaskawa.com :

Red Lion HMI: AN.MCD.08.122

Maple Systems HMI: AN.MP2000iec.06

Beijer:

Modicon:

Yaskawa MP2000: AN.MP2000.01

AB PanelView: AN.MP2000iec.02, E Learning Video: eLV.MP2000iec.01.IECtoPVPlusHMI

Phoenix HMI: AN.MP2000iec.05

Pro-face: AN.MCD.09.124

DigiOne IAP serial to Ethernet converter: AN.MCD.09.093


1.9.3 Adding a Modbus Server/Slave Device

The MPiec controller can communicate with up to 20 unique IP addresses simultaneously using Modbus TCP.

A maximum of 20 data blocks of various function codes can be configured if necessary.

The minimum poll period or update interval is 4 ms (+4 ms tolerance.) Note that MODBUS TCP is not a deterministic protocol. Setting a very fast update interval is not recommended because it will increase the load on the CPU. Fast updates and high priorities should be allocated based on application requirements)

Supported Modbus Function Codes:

Function Code | Description | Modbus Address Range (On Slave)
1 | Read Coils | 00001 to 10000
2 | Read Inputs | 10001 to 20000
3 | Read Holding Registers | 40001 to 50000
4 | Read Input Registers | 30001 to 40000
5 | Write Single Coil | 00001 to 10000
6 | Write Single Register | 40001 to 50000
16 | Write Multiple Registers | 40001 to 50000

Step 1: Launch the Hardware Configuration

Step 2: Right click on the Configuration tree on the Modbus/TCP item.

Step 3: The Add Modbus TCP Device window is shown below. Enter a name for the slave device, IP address, status variable name, application task whose update rate will determine the rate at which MODBUS data is updated in the application and update interval. The Status Variable will be automatically entered in the Global Variables section of the IEC Programming Environment. The Status Variable is a WORD. This variable will indicate the status of the connection. Details are described below.

Step 4: After the device details are added, the MODBUS slave device will be displayed in the configuration tree.

Step 5: Click on the new Modbus Device in the Configuration tree at the left of the screen. Locate the hyperlink at the lower right of the screen to "Add Data Blocks" to the device. Select a name to be associated with the function code. For example, if the device is remote I/O, name the I/O Group “Outputs” for example. There is a seven-character limitation on the I/O Group name. The Starting Address is dependent on the remote device. Consult the documentation for the remote device to understand the register offset required to access its functions.

Click on the Local Address Range link to enter the IEC Global variable's address range for this I/O group. Enter the starting address and number of elements. The used address ranges will assist the programmer in deciding which IEC address to use as starting address.

The starting address field is the offset that will be used in the MODBUS slave for the memory area. For example, in the figure shown below, %QW43008 will be mapped to MODBUS register 40001 in the server/slave device.

Step 6: When finished entering data blocks, Save the Configuration. This will create the global memory I/O Group in the IEC Programming Environment.

View of the Global Variables list. Click the Hardware tab in the Project Tree or use the 'View' menu to access. Note the status variable has been created under an input section for this Modbus device even though no input-type function codes were configured.

Step 7: Open the Global Variables list. Right click on the I/O group header to “Insert Variable.” This variable can either be a BOOL, WORD, or any other data type that fits the usage within the program. For example, 16 output bits can be defined as one WORD, and in the program, the 4th bit can be accessed as follows: MYWORD.X3. Another example would be 16 individual BOOL variables with unique names.

Inserting a variable into the Modbus group.

The memory area for this Modbus device is shown in the Group Heading. Bytes %QB43008 - %QB43207 are allocated for the Modbus output registers. Enter the proper memory address for the Modbus memory. If the first bit of the register QB43008 needs to be accessed, enter %QX43008.0. If two bytes QB43008 and QB43009 need to be accessed, it can be done using %QW43008 where W stands for WORD.

Any IEC data type can be transmitted or requested from the remote device, provided the data is interpreted as the same type on the other side.

To determine the memory area allocated for the Modbus connection, look in the MotionWorks IEC’s IO_Configuration window in the Hardware section of the Project Tree Window.

Note: Care should be taken to understand and set the timeout period on the server (slave) driver code. The recommended time out period for server driver code is TO > update interval * # of data blocks.

One data block is polled per update interval set in the client (master). For example if the client has four data blocks configured for a particular server with a 50 ms poll period (update interval), the first data block is polled first. After 50 ms the second data block is polled. 50 ms after the second data block, the third data block is polled and so on. The first data block is polled a second time 200 ms after it was polled the previous time as shown in the figure below

Modbus TCP Status Variable

This variable reflects the connection status. It can be used in the application program to determine if the connection to the remote device is active and the data is valid. The status WORD can be compared to 16#1000, which means that the connection is good. If bits 0 or 1 are on, the connection is not active, and the controller is attempting to reconnect to the remote device.

The status variable is only available when the MPiec controller is the client or master of remote devices.

NOTE: If the status variable has a value of zero as observed in the Global Variables list, the controller may not be running the application program.

Figure 7: Modbus status WORD

Modbus errors in the lower byte of the status variable ONLY if the Application Error bit is TRUE.

Modbus Exception Codes
Code (In lower byte of the status variable) | Name | Meaning
01 | Illegal Function | The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is not configured and is being asked to return register values.
02 | Illegal Data Address | The data address received in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, the PDU addresses the first register as 0, and the last one as 99. If a request is submitted with a starting register address of 96 and a quantity of registers of 4, then this request will successfully operate (address-wise at least) on registers 96, 97, 98, and 99. If a request is submitted with a starting register address of 96 and a quantity of registers of 5, then this request will fail with Exception Code 0x02 “Illegal Data Address” since it attempts to operate on registers 96, 97, 98, 99 and 100, and there is no register with address 100.
03 | Illegal Data Value | A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register.
04 | Slave Device Failure | An unrecoverable error occurred while the server (or slave) was attempting to perform the requested action.
05 | Acknowledge | Specialized use in conjunction with programming commands. The server (or slave) has accepted the request and is processing it, but a long duration of time will be required to do so. This response is returned to prevent a timeout error from occurring in the client (or master). The client or master) can next issue a Poll Program Complete message to determine if processing is completed.
06 | Slave Device Busy | Specialized use in conjunction with programming commands. The server (or slave) is engaged in processing a long–duration program command. The client (or master) should re transmit the message later when the server (or slave) is free.
08 | Memory Parity Error | Specialized use in conjunction with function codes 20 and 21 and reference type 6, to indicate that the extended file area failed to pass a consistency check. The server (or slave) attempted to read record file, but detected a parity error in the memory. The client (or master) can retry the request, but service may be required on the server (or slave) device.
0A | Gateway Path Unavailable | Specialized use in conjunction with gateways. It indicates that the gateway was unable to allocate an internal communication path from the input port to the output port for processing the request. Usually means that the gateway is mis configured or overloaded.
0B | Gateway Target Device Failed to Respond | Specialized use in conjunction with gateways. It indicates that no response was obtained from the target device. Usually means that the device is not present on the network.

Note: Do not delete automatically created variables or groups. If you must delete a group, be sure to delete the group header (an all of its variables) and the group name as listed under IO_Configuration in the Hardware tab. These two items must remain in sync for project to compile properly

Selected MODBUS Servers and Related Application Notes:

Phoenix MODBUS I/O: AN.MCD.09.045

Wago I/O module: eLV.MotionWorksIEC.01.ModbusSlave


1.9.4 Using an EtherNet/IP Scanner to Communicate to the MPiec Controller as an Adapter

12 pre-configured instances are defined for input and output. The pre-configured instances are listed below. Each instance can be enabled or disabled individually based on application requirements.

The following diagram shows the groups with memory mappings from the Global Variables sheet in MotionWorks IEC when all input and output instances have been enabled in the MPiec Hardware Configuration.

Note: The exact byte size of the instance must be configured on the Scanner side. (The entire 128-byte or 256-byte block must be transferred even if less data is required.)

The controller will automatically respond to incoming EtherNet/IP messages from Scanners requesting to read or write data of the pre-defined instances.

Note: The scanner must configure both an input and output assembly. If the application does not require any data from the MPiec controller, use assembly 128 with a size of zero and set the "Use Run/Idle" checkbox to satisfy this requirement.

Global Variable Groups created when EtherNet/IP adapter communication capabilities are enabled in the Hardware Configuration.

The following diagram shows the relationship of Ethernet/IP instances to Global Variable mapping.

Application Notes for selected EtherNet/IP scanner devices:

AB MicroLogix: AN.MCD.08.108

AB ControlLogix: AN.MCD.08.107

AB CompactLogix: AN.MCD.08.110

AB SLC 5/05: AN.MP2000iec.01

Yaskawa MP2000 (with 263IF-01):

Set up for remote EtherNet/IP connection using routers: AN.MP2000iec.04


1.9.5 Adding an Ethernet/IP Adapter

EtherNet/IP data is referred to as an Instance. Each device manufacturer defines the type of data contained and the instances supported. Refer to the specific adapter documentation for details regarding successful communication.

  • The MPiec controllers can communicate with up to 20 unique IP addresses simultaneously using the EtherNet/IP protocol.

  • Explicit Messaging is supported by using the Explict_Message function block provided in the Yaskawa Toolbox v202 or higher. Explicit Messaging does not require setup in the Hardware Configuration.

  • The minimum poll period or update interval is 2 ms. (Note that EtherNet/IP is not a deterministic protocol. Setting a very fast update interval is not recommended because it will increase the load on the CPU. Fast updates and high priorities should be allocated based on application requirements.)

Steps to add an EtherNet/IP adapter:

Step 1: Launch the Hardware Configuration

Step 2: Right click on the Configuration tree on the Ethernet/IP item and select 'Add Device'.

Step 3: Enter the Adapter details in the "Add EtherNet/IP" Adapter dialog box.

Step 4: Once the adapter device has been configured, the adapter device is shown in the configuration tree as shown below.

Step 5: Click on the adapter device and add I/O assembly instances. Please refer to the adapter device manual for details regarding instance numbers and sizes. Some adapter devices require "Configuration" assembly instances.

Step 6: Save the Configuration. This will create the global memory I/O Group in the IEC Programming Environment.

Step 7: Switch to the Online mode and “Send the Offline Configuration.” Save the configuration to the controller and cycle power. The controller will start to communicate with the adapter device.

Step 8: Open the Global Variables list. Right click on the I/O group header to “Insert Variable.” Variables can be any data type that fits the usage within the program. For example, a structure can be created to match the data size of the instance as described in the documentation for the adapter device.

NOTE: When creating user defined datatype STRUCTs, the minimum amount of space a single data element will occupy is a BYTE, so it is not possible to create BOOL type data in the STRUCT that will match the memory map of the EtherNet/IP instance.

Ethernet/IP Status Variable

This variable reflects the connection status. It can be used in the IEC application program to determine if the connection to the remote device is active and the data is valid. The status WORD can be compared to 16#1000, which means that the connection is good. If bits 0 or 1 are on, the connection is not active, and the controller is attempting to reconnect to the remote device.

This status variable is only available when the MPiec controller is the client or master of a remote device.

NOTE: If the status variable has a value of zero as observed in the Global Variables list, the controller may not be running the IEC application program.

Lower 3 Nibbles | Description
0x001 | Unable to connect (timeout)
0x002 | I/O Timeout
0x003 | Reconnect In Progress
0x004 | Connection Failed (invalid response from server)
0x005 | Connection Failed (out of resources)
0x100 | Connection in Use or Duplicate Forward Open
0x103 | Transport Class and Trigger combination not supported
0x106 | Ownership Conflict: There is another master communicating to this adapter with an exclusive ownership setting.
0x107 | Connection not found at target application
0x108 | Invalid Connection Type. Indicates a problem with either the Connection Type or Priority of the Connection.
0x109 | Invalid Connection Size
0x110 | Device not configured
0x111 | RPI not supported. May also indicate problem with connection time-out multiplier, or production inhibit time.
0x113 | Connection Manager cannot support any more connections
0x114 | Either the Vendor Id or the Product Code in the key segment did not match the device
0x115 | Product Type in the key segment did not match the device
0x116 | Major or Minor Revision information in the key segment did not match the device
0x117 | Invalid Connection Point
0x118 | Invalid Configuration Format
0x119 | Connection request fails since there is no controlling connection currently open.
0x11A | Target Application cannot support any more connections
0x11B | RPI is smaller than the Production Inhibit Time.
0x203 | Connection cannot be closed since the connection has timed out
0x204 | Unconnected Send timed out waiting for a response
0x205 | Parameter Error in Unconnected Send Service
0x206 | Message too large for Unconnected message service
0x207 | Unconnected acknowledge without reply
0x301 | No buffer memory available
0x302 | Network Bandwidth not available for data
0x303 | No Tag filters available
0x304 | Not Configured to send real-time data
0x311 | Port specified in Port Segment Not Available
0x312 | Link Address specified in Port Segment Not Available
0x315 | Invalid Segment Type or Segment Value in Path. An unsupported instance may be requested from the adapter.
0x316 | Path and Connection not equal in close
0x317 | Either Segment not present or Encoded Value in Network Segment is invalid.
0x318 | Link Address to Self Invalid
0x319 | Resources on Secondary Unavailable
0x31A | Connection already established
0x31B | Direct connection already established
0x31C | Miscellaneous
0x31D | Redundant connection mismatch
0x31E | No more consumer resources available in the producing module
0x31F | No connection resources exist for target path

Note: Do not delete automatically created variables or groups. If you must delete a group, be sure to delete the group header (an all of its variables) and the group name as listed under IO_Configuration in the Hardware tab. These two items must remain in sync for project to compile properly.

Application Notes/Example Code on selected EtherNet/IP adapter devices

Please refer to subsection 1.9.5.1 for configurations required for selected EtherNet/IP adapter devices.

Motoman NX100: AN.MCD.08.158

Yaskawa V1000: EC.V1000.02

SMC pneumatics: AN.MP2000iec.03

Numatics: AN.MCD.09.092

Omron CJ1 PLC:

DeviceNet slaves: PN.MCD.09.101


1.9.5.1 Adapter Settings for Selected Products

Allen Bradley Armor Block IO

Beckhoff IO

Cognex Vision System

Phoenix EtherNet/IP module

RTA Gateway

SICK Vision Sensor

SMC IO

Turck IO

Yaskawa VFD

Wago Coupler


1.9.6 OPC Server

By default, all global variables are transmitted as OPC data. To disable this feature, click the hardware tab, right-click the resource folder, and select Settings. (See figure below)

OPC Configuration

Any data in the application program can be set as OPC data by simply clicking the checkbox in the variable definition screen in the IEC development environment.

Variable Definition Window

OPC Server Configurator

Application Notes

Phoenix HMI: AN.MP2000iec.08


1.10 External Encoders

Option cards LIO-01, LIO-02, and LIO-06 have an encoder input available for use with the PLCopen function blocks. When any of these cards are configured, external encoder functionality is available.

To use the encoder, check the 'Enable External Encoder' selection and identify the logical axis number. Use the logical axis number in the IEC application as the AXIS_REF.AxisNum value when referring to the external encoder axis. Changes to the user unit parameters will not take effect until power is cycled.

Steps to configure an external encoder

1) Enable the External Encoder

2) Set User Units

3) Set Load Type

4) Set the Encoder Resolution

5) Set the Pulse Count Mode

Three pulse counting methods are supported:

  • Sign (One channel counts, the other indicates the direction.)

  • Up/Down (One channel indicates forward, the other channel indicates reverse.)

  • A/B (Quadrature)

This section describes the details on each pulse counting method:

AXIS_REF assignment in IEC Application code:

Once the configuration is complete and power cycled, the external encoder can be verified via the IEC Application (using the MC_ReadActualPosition function block) or through the Web Server's Machine Operations page.


1.11 Option Slots

Each slot in the controller can optionally contain a module, or remain empty.

The following option cards are supported:

Global variables for the following remote I/O devices with a fixed number of I/O will automatically be entered in the Global Variables grid of the IEC Programming Environment when the user presses 'Save' in the Hardware Configuration:

LIO-01 LIO-02 LIO-04 LIO-05 LIO-06 CNTR AO-01 AI-01

Note: Do not delete automatically created variables or groups. If you must delete a group, be sure to delete the group header (and all of its variables) and the group name as listed in the Project Tree Window's 'IO_Configuration' in the Hardware tab, then press Save in the Hardware Configuration once again to refresh. These two items (Group Name and group listing in IO_Configuration) must remain in sync for project to compile and run properly.


1.12 Task Priority Planning

The following table serves as a guide to architect the execution priority of the various parts of the application program. This table is only applicable to programs that utilize MotionWorks IEC Professional. MotionWorks IEC Express only supports 1 task.

Controller Task | Overall Priority | Note
System Tasks with higher priority than IEC Tasks | 0 | System Tasks
 | 0
 | 0
 | 0
System Tasks with higher priority than IEC Tasks | 8
 | 9
 | 10
 | 10
 | 11
 | 13
 | 20
System Tasks with higher priority than IEC Tasks | 21
Highest Priority IEC Application Task - Priority 0 | 42 | These PLC Tasks are not interrupted by network activity
IEC Application Task - Priority 1 | 43
IEC Application Task - Priority 2 | 44
IEC Application Task - Priority 3 | 45
IEC Application Task - Priority 4 | 46
IEC Application Task - Priority 5 | 47
IEC Application Task - Priority 6 | 48 | PLC Tasks, round robin with MECHATROLINK Work Task
MECHATROLINK Work Task | 48 | MECHATROLINK alarm polling Task, reads all alarms from drives
Alarm Task | 48 | Executes lower priority alarm handlers
IEC Application Task - Priority 7 | 49 | PLC Tasks interrupted by MECHATROLINK work q
IEC Application Task - Priority 8 | 50 | PLC Tasks interrupted by MECHATROLINK work q; round robin with inbound net activity
Network Communication Task | 50 | All inbound traffic comes in at this Priority. Outbound is handled by the driver Tasks
IEC Application Task - Priority 9 | 51 | These PLC Tasks interrupted by network, use for custom network driver
IEC Application Task - Priority 10 | 52
IEC Application Task - Priority 11 | 53 | This PLC Task is interrupted by network, round robin with EIP Communication Task
E/IP Communication Task | 53 | EthernetIP communication driver
IEC Application Task - Priority 12 | 54 | These PLC Tasks interrupted by network and EIP
IEC Application Task - Priority 13 | 55
IEC Application Task - Priority 14 | 56 | This PLC Task is interrupted by network and EIP; Round robin with Modbus TCP Task
Modbus TCP Communication Task | 56 | Modbus communication driver
IEC Application Task - Priority 15 | 57 | This PLC Task is interrupted by Modbus and EIP; but not interrupted by OPC or RMI
Lowest Priority IEC Application Task - Priority 16 | 58 | Interrupted by Modbus and EIP; not OPC or RMI
IEC Application Idle Task | 60 | MotionWorks IEC "Default" Task.
ProConOS Communication Task | 70 | PLC communication: OPC and MotionWorks IEC debug
ProConOS Communication Task | 70
ProConOS Communication Task | 70
ProConOS Communication Task | 70
ProConOS Task for Application "Download Changes" | 73
ProConOS Task for MotionWorks IEC communication | 74
ProConOS debugging Task | 76
ProConOS Task for managing code | 77
ProConOS Task for Run/Stop mode | 78
System Tasks with lower priority than IEC Tasks | 80 | Applet / Hardware Configuration / Web Server communication
 | 81
 | 82
 | 83
System Tasks with lower priority than IEC Tasks | 85
 | 85
 | 85
 | 85

Color Codes:

Hardware Operating System Tasks

Hardware Operating System Tasks

IEC Operating System Tasks

IEC Application Tasks

Network Communication Driver (Incoming Traffic)

Tasks for Hardware Configuration

Network Communication Tasks


1.13 Creating an Archive.ZIP

In MotionWorks IEC version 2.5.0 and greater, a new feature was added to create an Archive.ZIP from an icon on the Configuration toolbar shown below.

Click the Icon on the toolbar to create an Archive.ZIP. This feature is intended to allow users to make minor changes to completed applications and deploy an updated Archive.ZIP to a machine in the field.

Warning: The user must ensure that the offline Hardware Configuration parameters are valid for the machine in which the Archive.ZIP will be installed. The Archive.ZIP file contains all necessary files for the application and will overwrite the XML configuration files, with the exception of any user files such as cam or csv. If user files are required for the application, it may be necessary to instruct the Archive.ZIP installer to use the settings as shown below for "Add or Replace Only."


Web Server Overview

The Web Server is built into the controller firmware and allows the user to locally or remotely perform various activities. By default, there are two access levels to the controller via the web server; the second level requires a password to access features such as firmware upgrade utilities.

Capabilities include:

  • Multiple levels of security. By default, there are some functions available without login, and other that require a password. The default UserName and Password can be edited and additional levels of security can be added by the user.

  • Part number and axis count capability.

  • Firmware version verification and upgrade.

  • Alarm history with time stamp.

  • Basic motion verification via the Machine Operations page.

  • Basic data logging via the Machine operations page.

  • Amplifier parameter read / write, including absolute encoder reset and MECHATROLINK network reset.

  • I/O verification.

  • IP address configuration.

  • Real time clock settings.

The web server's factory default logins, passwords, and access levels can be changed to create additional security levels. Please refer to AN.MCD.09.069 for details on how this can be accomplished.


Computer Requirements

The MPiec Series Controllers support a web server feature that has the following requirements:

  1. Sun Microsystems Java Virtual Machine 1.4.1 or higher.

  2. Internet Explorer 6 or higher. Other browsers such as Mozilla Firefox and Google Chrome will only work if an Internet Explorer compatibility mode is installed.


Web Server Functionality

By default, there are some functions available without login, and other that require a password. The default UserName and Password can be edited and additional levels of security can be added by the user.

The functions available without logging in are:

1) Welcome Page (displays Firmware version and axis count)

2) Alarm Status

3) Alarm Reference (Common alarms, causes and ways to clear alarms)

4) Alarm History (Alarm IDs with time stamps of the latest alarms on the controller)

5) Axis Grids

6) I/O Grid

Additional functions available after the user logs in are:

7) Machine Operations

8) Debugging Output

9) Configuration Sets

10)Ethernet Configuration

11) Set clock

12) Project Archive

13) Update Firmware

14) Initialize SRAM

15) Reboot

Level 2 (Additional functions) of the controller web server can be accessed using the following login and password.

Note that the factory default logins, passwords, and even access levels can be changed and edited to allow OEMS and machine builders create secure levels in the controller’s web server. Please refer to AN.MCD.09.069 for details on how this can be accomplished.


Welcome Page

The Welcome page opens when the user connects to an MPiec controller using Internet Explorer. Details about the controller’s firmware version can be obtained from the web server welcome page.

Use the Welcome page to confirm the firmware version, model number, and axis count capability.


Alarm Status

This page displays current controller and drive alarms from all connected motion axes. Resettable alarms (such as a ServoPack Overspeed alarm A.510) can be cleared using the Clear Alarms button. Certain alarms, such as ServoPack A.C9: ‘Encoder Communication Error’ require power cycle to be cleared. Check the Sigma manuals for details regarding clearable alarms.


Alarm Reference

Common amplifier alarms are listed on the Alarm Reference page.

If the upper 2 bytes (ErrorClass) has a value of 16#3302, 16#3303, 16#4302, or 16#4403, then the source of the alarm is the Sigma Servopack.

Please refer to the following manuals for details regarding Sigma servo amplifier alarms:

• Sigma II with NS115: SIEPC71080001, see section 9.3

• Sigma III: YEA-SIA-S800-11, see section 10.1.4

• Sigma-5 with rotary motor: SIEPS8000043, see Section 6.1

• Sigma-5 with linear motor: SIEPS8000044, see Section 6.1

If the upper 2 bytes (ErrorClass) has a value of 16#3312, then the source of the alarm is the variable frequency drive.

Please refer to the following manuals for details regarding Variable Frequency Drive alarms:

  • A1000: SIEP C710616 41, see section 6.3

  • V1000: SIEP C710606 18, see section 6.5

If the upper 2 bytes (ErrorClass) has a value of 16#3313, 16#3314 or 16#3315, then the source of the alarm is a stepper amplifier.

Please refer to the appropriate stepper amplifier documentation for alarm descriptions.


Alarm History

Alarms are saved in SRAM with a time stamp. This can help in troubleshooting possible failure modes if an axis is down on a machine. It is possible to save the alarm log as an HTM file by pressing the Save button on the Alarm History page.


Axis Grid

The axis grid page provides details about the axes connected to the controller. In the figure shown below, the two axes at nodes 1 and 2 are SGDV servos. Axis 21 is an external encoder available in the LIO card in the controller.


I/O Grid

A sample I/O grid of a MP2300Siec motion control system including an LIO option card and two Sigma Servopacks is shown here. The digital I/O are explained in detail under the I/O tab in the Machine Operations help section.


Machine Operations

Feedback position in user units, velocity in user units/sec, and torque feedback (in % of rated torque) can be monitored on the Machine Operations page. Position, velocity, or torque test moves can be performed. Before starting a test move via the web server, ensure that the IEC Application program is not running by either turning off the Run DIP switch on the controller or stopping the PLC from the Resource Dialog box. Also confirm that no Test Move commands from the Hardware Configuration are taking place. Target parameters like position, velocity acceleration and deceleration must be specified. Set the Enable checkbox before the test move is commanded by pressing the ‘MOVE’ button.


Alarms

The Alarms tab on the Machine Operations page lists all current alarms in the controller and amplifiers. If the alarms listed are clearable without power cycle, the Clear Alarms button will clear the alarms.

The ‘Reset ServoNet’ button will reset MECHATROLINK communications and rediscover all devices on the network. This feature will also soft reboot the amplifiers.


Data Logs

Feedback position, velocity, torque, commanded position, velocity, torque and position error can be recorded at the MECHTROLINK update rate using the Data log function.

Start the logging procedure by pressing ‘Start Logging’. Options to trigger the data capture and number of data points can be set in this page.

Once the End Trigger condition is satisfied, the log is automatically displayed. The data can be saved as a CSV file (using the Save Log button.)

The data log can be zoomed by:

1) Left mouse click and drag diagonally down across the area to be zoomed.

2) Right click and select Zoom In.

To clear the zoom, right mouse click and select ‘Clear zoom’


Axis Parameters

Select drive parameters are displayed on the Axis Params tab of the Machine Operations page. Drive parameters can be written to the device by editing the values and entering the edited data.


Drive Pns

All parameters can be read and written from corresponding drives listed in the Drive Pn tab of the Machine Operations page.

Edits made to drive parameters can be made permanent (by writing to the drive's flash memory) if the Permanent box is checked.

Absolute encoder reset (using Abs Encoder Init) and clearing the multiturn mismatch alarm: A.CC (using Multiturn Reset) can be performed from this tab. The function block Y_ResetAbsoluteEncoder performs the same functions as the buttons on this page.


Diagnostics

The Diagnostics tab shows the total free memory (1.6 MB in the figure below) and the memory being used by the application project running on the controller (1.02 MB in the example shown below)


Debugging Output

The debugging outputs page window shows a log of events encountered and tasks performed during the latest power up of the controller. For example the list of motion axes and I/O units that were discovered, the communication drivers that were started, the configuration files read, etc. are listed in this log.


Configuration Sets

The Configuration Sets page contains a listing of all the XML configuration files on the controller. The disco folder contains files that were created when the controller powered up and discovered devices on the MECHATROLINK network and other I/O connected to the controller. The startup folder is created when the Hardware Configuration is online and saved by the user. This is the only configuration that can be run successfully with an IEC application. This page and the files listed are strictly for troubleshooting purposes and should not be edited by the user.


Drive Parameters

Starting in firmware version 2.2.1, the web server has a new page to send drive parameters to the corresponding MECHATROLINK drives in the system. This feature is useful in machine commissioning operations by eliminating the need to configure the drives with either SigmaWin, DriveWizard, the Hardware Configuration, or the Y_WriteDriveParameters function block.


Ethernet Configuration

The following Ethernet Configuration details of the controller can be identified and set:

  • IP Address(es)

  • Subnet Mask

  • Default Gateway

These fields must not be left blank. Versions of the Hardware Configuration before v1.2.3 could not connect to a controller if Ethernet configuration fields were left blank.

If the Ethernet configuration is changed, the controller must be rebooted for the new settings to take effect.

MP2600iec Ethernet Configuration

The MP2600iec has two Ethernet connections, Cn11A and Cn11B. Each of these connections are physically separate in the controller hardware, meaning they each have their own MAC addresses, and must be connected to separate networks. This means that the subnet portions of the IP address of each port must be different. Also note that the default gateway is only related to Cn11A, so the subnet mask portion of the default gateway must match the IP address of the Cn11A port.


Set Clock

Set and view the controller's real time clock. This time will be used for all alarm time stamps, and is also available in the IEC application program via the RTC_S function block from the ProConOS firmware library or the RealTimeClock function block available in the Yaskawa Toolbox.


Project Archive

It is possible to download or upload the complete application image to / from an MPiec controller without using MotionWorks IEC or the Hardware Configuration. A single file called “Archive.Zip” contains all the Hardware Configuration Data and the IEC Application Program, including any data files that may be used by the application that were downloaded to flash using the “Download File” button from the MotionWorks IEC Resource Dialog or via HTTP file transfer to the controller.

To install an application archive on the controller, follow these steps.

1) Connect to the controller using Internet Explorer.

2) Enter the Login and Password.

3) Under the Maintenance section on the left hand of the screen, click Project Archive

4) Click Browse to locate a previously stored archive.zip file.

5) Click the Upload button to send the file to the controller. It will extract and replace all files shown in the file listing.

6) Reboot is necessary for the configuration and application program to become operable.

WARNING: If the application has absolute encoders, the absolute encoder offset stored when the MC_SetPosition function block is executed is not part of the archive.zip. If the archive.zip file is loaded into another controller, and the application uses absolute encoders, axis calibration (homing) must be performed to be sure that the application will operate properly on the new controller.

Machine Commissioning Note

Sending archive.zip to the controller does not send parameters to the MECHATROLINK amplifers. A function block called Y_WriteDriveParameters can be included in the application program, which will send amplifier parameters listed in XML files on the controller to the referenced MECHATROLINK amplifier when executed.

Starting in firmware version 2.2.1, it is possible to send the amplifier parameters to the MECHATROLINK amplifiers via the web server. See the Drive Parameters page.


Update Firmware

Firmware should not be upgraded on machines running in production environment unless recommended by an authorized Yaskawa representative.

Firmware revisions are available at www.yaskawa.com/iecfw.

NOTE: DO NOT EXTRACT THE FILES FROM THE ZIP. THE CONTROLLER WILL EXTRACT THE FILE ITSELF.

The controller must be in "Supervisor Mode" before the firmware update can begin. This mode can be entered by either turning on the SUP DIP switch on the front of the unit, or by enabling it via software from the Update Firmware page. Both methods are equivalent, however enabling Supervisor Mode via software is recommended because the mode will automatically be cancelled upon the next reboot.

Updating the Firmware:

  1. If choosing to use the physical SUP switch, turn it on and reboot the controller.

  2. Open the web interface in a web browser and connect to the controller by entering the controller IP Address in the Address field.

  3. Select Login from the left menu bar.

  3. Login using the following Login name and password:

Controller | Login | Password
MP3200iec | Admin | MP3200
MP2310iec | Admin | MP2300S
MP2300Siec | Admin | MP2300S
MP2600iec | Admin | MP2600

Note that the factory default Login and passwords may be changed by the user according to the information supplied in product note AN.MCD.09.069.

  4. Select Update Firmware from the left menu:

  5. The firmware update screen will appear:

If the physical SUP switch was not enabled before step 1, the page will say the firmware update is prohibited. Click on the ‘enabled via software’ hyperlink in the text message area. Reboot the controller by clicking on the ‘Reboot Controller’ button on the update page:

  8. After the controller has finished rebooting, the following page will be displayed:

  9. Click on the ‘Update Firmware’ link in the left menu.

  10. Select a firmware.zip file that you wish to load. NOTE: DO NOT EXTRACT THE FILES FROM THE ZIP. THE CONTROLLER WILL EXTRACT THE FILE ITSELF.

  11. Click ‘Browse’ to locate the file.

  12. Click ‘Upload’ to upload the firmware file to the controller.

  13. After the version has been verified, a message box will indicate the version currently in the controller, and the version about to be loaded.

  14. Click on the ‘Update’ button to update the controller firmware.

  15. Do not power cycle the controller or attempt to click on any of the menu bar links while the upgrade is taking place! Wait for the page to indicate that the firmware upgrade has completed.

  16. Verify correct version loaded on the controller by clicking ‘Welcome’ (to refresh) in the left menu bar.

Refer to Product Note PN.MCD.08.083 on www.yaskawa.com for the complete instruction guide.


Initialize SRAM

Data that is reset when the SRAM is initialized:

  1. Absolute Encoder offsets stored in the controller (by the MC_SetPosition function block.)

  2. IEC Global variables marked as 'Retain' data.

  3. Alarm history.


Reboot

The controller can be rebooted from the web server. This function is identical to cycling power. Note that SGDV Servopacks are also 'soft rebooted' when the controller restarts. This will clear any alarms that require power cycling the drive.


Controller AlarmID List

The following is a list of alarm codes that are reported in the Hardware Configuration's Alarms tab or via the Y_ReadAlarm function block. These are non axis specific system alarms.

 | Hex Code |  | Description
 | ErrorClass | AxisErrorID | ErrorClass+AxisErrorID output from MC_ReadAxisError
 | AlarmID |  | AlarmID output from Y_ReadAlarm
motionKernel | 1201 | 0103 | An alarm task queue was full when a new alarm was posted. This indicates that the task is being starved of execution time or that the system is generating many alarms simultaneously.
app | 1401 | 0005 | The script environment ran out of memory. This is a serious condition because it may prevent further errors from being handled correctly.
app | 1401 | 0006 | An error occurred while running the standard error handler for a general script error. This is a serious condition because it indicates the standard error handler is malfunctioning.
app | 1401 | 0007 | This error should never occur and is included only for completeness. It indicates that an unknown and potentially fatal problem has occurred within the script engine.
app | 1401 | 000A | The script task failed to stop cleanly, which may result in unreleased system resources. Error recovery requires the controller be reset.
app | 1401 | 000B | The command line task failed to stop cleanly, which may result in unreleased system resources. Error recovery requires the controller be reset.
app | 1403 | 0002 | The task responsible for publishing events to a remote client failed to stop cleanly, which may result in unreleased system resources. Error recovery requires the controller be reset.
app | 1403 | 0003 | The task responsible for replying to remote clients failed to stop cleanly, which may result in unreleased system resources. Error recovery requires the controller be reset.
app | 1403 | 0004 | The task responsible starting and stopping connections to remote clients failed to stop cleanly, which may result in unreleased system resources. Error recovery requires the controller be reset.
app | 1407 | 0001 | The file system on which the configuration file directory resides could not be read and may be unmounted or corrupted. The system has booted in a minimal configuration mode, and most functionality is limited. If possible, the file system should be recovered or reformatted and new config files uploaded if applicable.
app | 1407 | 0103 | The watchdog timer expired.
app | 1407 | 0108 | A CPU exception occurred.
app | 1407 | 0109 | The firmware files on the controller do not match the expected checksums.
app | 1407 | 010A | The manufacturing procedure failed. The controller probably could not fetch the current time from the network.
app | 140A | 0009 | Network reset detected multiple Axes connected to the same servo network node.
app | 140A | 000A | Network reset detected multiple I/O connected to the same network node.
app | 140A | 0015 | Controller memory was corrupted during network reset resulting in a lost logical Axis data structure.
app | 140A | 0016 | Controller memory was corrupted during network reset resulting in a lost logical I/O data structure.
app | 140A | 0018 | An Abort input specified in the configuration could not be found. The abort condition is considered permanently asserted. No motion is possible until the I/O configuration can be matched to the abort inputs (restart required).
app | 140A | 0021 | Too many events were posted from the system ISR. The motion scan and servo net loop have been shut down.
app | 140B | 0002 | The controller ran out of free memory, possibly resulting in an unrecoverable failure. Please reboot the controller.
app | 140B | 0004 | The largest free memory block is too small, possibly resulting in an unrecoverable failure. Please reboot the controller.
app | 140C | 1035 | The manufacturing data on the controller is invalid. The controller needs to be returned to Yaskawa for reprogramming.
Mechatrolink | 2301 | 0001 | The drive returned an invalid watch dog code indicating a possible dropped communication packet.
Mechatrolink | 2301 | 0002 | The drive failed to return confirmation of last aux command within the default timeout period.
Mechatrolink | 2301 | 0003 | An unrecoverable error occurred during auto configuration. As a result, one or more drives are excluded from the servo network.
Mechatrolink | 2301 | 0004 | Overriding the auto configured axes parameters failed. As a result, one or more drives are excluded from the servo network.
Mechatrolink | 2301 | 0005 | Two or more nodes have the same ID. As a result, all servo network communication has been suspended.
Mechatrolink | 2301 | 0006 | The controller must be the root node on the servo network. All servo network communication has been suspended
Mechatrolink | 2301 | 0007 | The servo network communication device failed to initialize. Servo network communication is not possible.
Mechatrolink | 2301 | 0008 | An error occurred sending command to a node during initialization. The node may not support the configured communications rate. Communication with this node has been prohibited, but communication with other nodes may be possible.
Mechatrolink | 2301 | 000E | The drive does not return response packet.
Mechatrolink | 2301 | 000F | Bus reset generation that controller is not demanding.
Mechatrolink | 2301 | 0010 | It receives response with the same channel at the same Iso cycle.
Mechatrolink | 2301 | 0011 | The ID in the response packet is not same to ID of AxisNode.
Mechatrolink | 2301 | 0012 | The data length in the response packet is not same to value of CSR register(SEND_DSP_DATA_LENGTH) of drive.
Mechatrolink | 2301 | 0013 | The packet type in the response packet is not same S-DSP.
Mechatrolink | 2301 | 0014 | Invalid cycle time has passed with configuration file 'servonet.xml'. As a result, all servo network communication has been suspended.
Mechatrolink | 2301 | 0015 | Node is not found on 1394 network.
Mechatrolink | 2301 | 0016 | Invalid node.
Mechatrolink | 2301 | 0017 | Error matching node IDs.
DPRAM | 2309 | 0001 | Invalid watch dog code from drive
DPRAM | 2309 | 0002 | Aux command confirmation failure
DPRAM | 2309 | 0003 | Auto configuration failed
DPRAM | 2309 | 0004 | Overriding auto configuration failed
DPRAM | 2309 | 0005 | Invalid cyclic check sum from drive
DPRAM | 2309 | 0006 | Invalid watch dog from drive
DPRAM | 2309 | 0007 | Control mode is not supported
DPRAM | 2309 | 0008 | Communication with a node failed during servo network startup
motionKernel | 3103 | 0100 | Controller SRAM battery is low
motionKernel | 3103 | 0101 | The file system failed the integral consistency check. Remedy: Power up the controller in supervisory mode using the SUP switch. Clear the alarm. Turn off the SUP switch. Power cycle the controller.
motionKernel | 3201 | 0001 | The motion kernel didn't request to enable axis. But, the axis is enabled.
motionKernel | 3201 | 0002 | The motion kernel didn't request to disable axis. But, the axis is disabled.
motionKernel | 3201 | 0004 | The encoder position stored in SRAM could not be validated. The value has been reset.
motionKernel | 3201 | 0005 | Main bus power was disconnected while the axis was enabled. Main power must be restored and this alarm cleared before motion can continue.
motionKernel | 3201 | 0101 | Configuration error: multiple alarm tasks with duplicate priority.
motionKernel | 3201 | 0102 | Configuration error: Alarm task not configured. Using default priority and name.
motionKernel | 3202 | 0001 | Axis Coordinate System: The command position was outside the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0002 | Axis Coordinate System: The command position was outside the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0003 | Axis Coordinate System: The command speed was greater than the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0004 | Axis Coordinate System: The command speed was greater than the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0005 | Axis Coordinate System: The command acceleration was greater than the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0006 | Axis Coordinate System: The command acceleration was greater than the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0007 | Axis Coordinate System: The command torque was greater than the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0008 | Axis Coordinate System: The command torque was greater than the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0011 | Joint Coordinate System: The command position was outside the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0012 | Joint Coordinate System: The command position was outside the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0013 | Joint Coordinate System: The command speed was greater than the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0014 | Joint Coordinate System: The command speed was greater than the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0015 | Joint Coordinate System: The command acceleration was greater than the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0016 | Joint Coordinate System: The command acceleration was greater than the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0017 | Joint Coordinate System: The command torque was greater than the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0018 | Joint Coordinate System: The command torque was greater than the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0021 | World Coordinate System: The command position was outside the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0022 | World Coordinate System: The command position was outside the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 3202 | 0023 | World Coordinate System: The command speed was greater than the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0024 | World Coordinate System: The command speed was greater than the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0025 | World Coordinate System: The command acceleration was greater than the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0026 | World Coordinate System: The command acceleration was greater than the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0027 | World Coordinate System: The command torque was greater than the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0028 | World Coordinate System: The command torque was greater than the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0031 | The move specified would exceed the software position limits in the positive direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0032 | The move specified would exceed the software position limits in the negative direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0033 | The move specified would exceed the software speed limits in the positive direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0034 | The move specified would exceed the software speed limits in the negative direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0035 | The move specified would exceed the software acceleration limits in the positive direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0036 | The move specified would exceed the software acceleration limits in the negative direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0037 | The move specified would exceed the software torque limits in the positive direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0038 | The move specified would exceed the software torque limits in the negative direction and was rejected before being started. The group may be moved again immediately if desired.
motionKernel | 3202 | 0039 | The predictive soft limit encountered a segment that doesn't support the predicted stopping point.
motionKernel | 3202 | 0041 | Cam and Contour tables must have a header indicating the number of rows and columns and a feed forward velocity flag. Comma separated data values following the header.
motionKernel | 3202 | 0042 | In CamTables, the first (master) column must be either increasing or decreasing.
motionKernel | 3202 | 0043 | In ContourTables, the first (time) column must start at zero and be increasing.
motionKernel | 3202 | 0044 | The master position was outside the range of the CamTable, which automatically stopped the cam motion.
motionKernel | 3202 | 0045 | One or more slave axes could not attain the target position and velocity within the user specified time limit for the Cam or Gear motion.
motionKernel | 3202 | 0046 | One or more slave axes could not attain the target position and velocity within the user specified distance limit for the Cam or Gear motion.
motionKernel | 3202 | 0051 | Axis enable failed. This problem is usually a result of communication problems with the servo drive.
motionKernel | 3202 | 0052 | Runtime computation detected an invalid motion parameter. This alarm ID can occur if a discrete move has to be completed but the commanded deceleration for that move is not sufficient. For example if a MC_MoveAbsolute aborts another move and the axis has to stop at a position that will come up in a couple of scans, but the deceleration input on the MC_MoveAbsolute is not high enough to make the desired profile, this alarm will occur.
motionKernel | 3202 | 0061 | The axis Positive Overtravel (P-OT) limit has been exceeded. Motion is prevented in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0062 | The axis Negative Overtravel (N-OT) limit has been exceeded. Motion is prevented in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 3202 | 0100 | The inverse kinematics computation detected a world position that can not be reached.
motionKernel | 3202 | 0101 | The inverse kinematics computation detected that the elbow 'handedness' (orientation) does not match the configuration. The 'handedness' must be fixed by commanding the individual axes or manually moving the robot.
motionKernel | 3202 | 0102 | The robot XY position intruded into the configured dead zone area near the origin.
Mechatrolink | 3301 | 0009 | Some motor properties, such as encoder resolution, maximum speed, and maximum torque, could not be determined for the attached motor. The serial encoder may be malfunctioning, incorrectly programmed, or unplugged.
Mechatrolink | 3301 | 000B | Setting of Pn002, digits 3 and 4, disables torque limit and/or velocity limit in velocity and/or torque control modes. Set Pn002 = xx11 to initialize. Saving in the Hardware Configuration will automatically set Pn002.
Mechatrolink | 3301 | 000D | The servo network does not support this motion control mode.
Mechatrolink | 3301 | 0018 | The command position specified an instantaneous jump too large relative to the current position. Sigma-5 amplifiers give an A.94b warning and ignore subsequent position commands for any absolute position reference greater than 2,097,152 encoder pulses (2 revolutions of a 20-bit encoder). The controller watches for deviation between command position and actual motor position greater than 1,966,080 encoder pulses and issues an alarm. This is at 1.875 revolutions of a 20-bit motor little bit of margin. Sigma-II/III drives have a lower maximum following error limit of 1,048,576 encoder pulses. The position error limit on the Servopack (Pn520) should not be set greater than 1.875 rev = 1,966,080.
Mechatrolink | 3301 | 0019 | Setting of Pn002 digit 4 specifies torque feed-forward, but the SERVOPACK model does not support torque FF in position mode.
Mechatrolink | 3302 | 00E4 | The setting of the MECHATROLINK-II transmission cycle is out of the allowable range.
Mechatrolink | 3304 | 0000 | The base code for io alarms. The io's alarm value is bitwise OR'd in with this base value.
DPRAM | 3309 | 0009 | An error occurred sending command to a servo
DPRAM | 3309 | 000A | The drive has an alarm
DPRAM | 3309 | 000B | The data buffer for reading drive parameters via the messaging interface was too small
DPRAM | 3309 | 1000 | Error code prefix for data link errors
DPRAM | 3309 | 100F | Servo check sum error for data link
DPRAM | 3309 | 1010 | Invalid function code for data link
DPRAM | 3309 | 1040 | Option card computed an invalid check sum
DPRAM | 3309 | 1041 | Invalid data size from the option card
DPRAM | 3309 | 2000 | Error code prefix for message errors
DPRAM | 3309 | 2001 | Unsupported message function code
DPRAM | 3309 | 20A0 | Controller option card detected bad CRC
DPRAM | 3309 | 3000 | Error code prefix for data link errors
Mechatrolink | 3312 | 0000 | The base code for inverter alarms. The inverter's alarm value is bitwise OR'd in with this base value.
Mechatrolink | 3312 | 0001 | reserved
Mechatrolink | 3312 | 0002 | reserved
Mechatrolink | 3312 | 0003 | reserved
Mechatrolink | 3312 | 0004 | reserved
Mechatrolink | 3312 | 0005 | reserved
Mechatrolink | 3312 | 0006 | reserved
Mechatrolink | 3312 | 0007 | reserved
Mechatrolink | 3312 | 0008 | reserved
Mechatrolink | 3312 | 0009 | reserved
Mechatrolink | 3312 | 000A | reserved
Mechatrolink | 3312 | 000B | reserved
Mechatrolink | 3312 | 000C | reserved
Mechatrolink | 3312 | 000D | reserved
Mechatrolink | 3312 | 000E | reserved
Mechatrolink | 3312 | 000F | reserved
Mechatrolink | 3312 | 0010 | reserved
Mechatrolink | 3312 | 0011 | reserved
Mechatrolink | 3312 | 0012 | reserved
Mechatrolink | 3312 | 0013 | reserved
Mechatrolink | 3312 | 0014 | reserved
Mechatrolink | 3312 | 0015 | reserved
Mechatrolink | 3312 | 0016 | reserved
Mechatrolink | 3312 | 0018 | reserved
Mechatrolink | 3312 | 0019 | reserved
Mechatrolink | 3312 | 001A | reserved
Mechatrolink | 3312 | 001B | reserved
Mechatrolink | 3312 | 001C | reserved
Mechatrolink | 3312 | 001D | reserved
Mechatrolink | 3312 | 001E | reserved
Mechatrolink | 3312 | 001F | reserved
Mechatrolink | 3312 | 0020 | reserved
Mechatrolink | 3312 | 0021 | reserved
Mechatrolink | 3312 | 0025 | reserved
Mechatrolink | 3312 | 0026 | reserved
Mechatrolink | 3312 | 0027 | reserved
Mechatrolink | 3312 | 0028 | reserved
Mechatrolink | 3312 | 0029 | reserved
Mechatrolink | 3312 | 002A | reserved
Mechatrolink | 3312 | 002B | reserved
Mechatrolink | 3312 | 002C | reserved
Mechatrolink | 3312 | 002D | reserved
Mechatrolink | 3312 | 002E | reserved
Mechatrolink | 3312 | 002F | reserved
Mechatrolink | 3312 | 0031 | reserved
Mechatrolink | 3312 | 0083 | reserved
Mechatrolink | 3312 | 0084 | reserved
Mechatrolink | 3312 | 0085 | reserved
Mechatrolink | 3312 | 0086 | reserved
Mechatrolink | 3312 | 0087 | reserved
Mechatrolink | 3312 | 0088 | reserved
Mechatrolink | 3312 | 0089 | reserved
Mechatrolink | 3312 | 008A | reserved
Mechatrolink | 3312 | 008B | reserved
Mechatrolink | 3312 | 0091 | reserved
Mechatrolink | 3312 | 0092 | reserved
Mechatrolink | 3312 | 0093 | reserved
Mechatrolink | 3312 | 0094 | reserved
Mechatrolink | 3312 | 00E6 | reserved
Mechatrolink | 3312 | 00EC | Power reset required.
Mechatrolink | 3312 | 00ED | (Access not possible 10 consecutive times). Power reset required.
Mechatrolink | 3312 | 00EE | (1s elapsed). Power reset required.
app | 3401 | 0001 | The user script encountered an alarm, suspending its operation.
app | 3401 | 0002 | Script syntax errors are detected before the script is actually executed, during the pre-compile phase. The syntax must be corrected before the script can be run successfully.
app | 3401 | 0003 | Script runtime errors can be caused by a variety of incorrect script routines. The most common error is an attempt to use a 'nil' object where it should not be used.
app | 3401 | 0004 | The system could not find the file specified.
app | 3401 | 0011 | A data value argument provided to the API function was out of the expected range.
app | 3401 | 0012 | An argument provided to the API function was not the expected type.
app | 3401 | 0013 | An object argument provided to the API function was not the expected object type.
app | 3401 | 0014 | A scalar value was provided where a vector was expected, or a vector value was provided where a scalar was expected.
app | 3401 | 0015 | The script attempted to write to a read-only variable.
app | 3401 | 0016 | Use of that API function is not permitted with the current conditions and/or arguments.
app | 3401 | 0017 | The number of data values provided did not match the expected number of axes.
app | 3401 | 0018 | CamTable must have a header indicating the number of rows and columns and a feed forward velocity flag. Comma separated data values follows the header. The first (master) column must be either increasing or decreasing.
app | 3401 | 0019 | ContourTables must have a header indicating the number of rows and columns and a feed forward velocity flag. Comma separated data values follow the header. In ContourTables, the first (time) column must start at zero and be increasing.
app | 3401 | 001A | It is prohibited to start a torque (or velocity) move when any moves other than torque moves (or velocity moves) are currently in progress or queued.
app | 3401 | 00ED | 'LastMove' events should be detected when a move completes normally or is aborted. However, the controller detected a situation in which the move finished but the event did not occur. Please submit an SCR.
communication | 3403 | 0200 | Invalid EtherNet/IP I/O configuration. Common causes of invalid configuration include duplicate t2o/o2t assembly instances or invalid client connection parameters.
communication | 3403 | 0202 | EtherNet/IP remote server unreachable. There is no route to the EtherNet/IP server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0203 | EtherNet/IP remote server unreachable. There is no route to the EtherNet/IP server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0204 | EtherNet/IP network unreachable. Unable to reach the network for the EtherNet/IP server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0205 | EtherNet/IP connection refused. Remote server rejected connection attempt. The remote server may not be listening for connections or there may be a firewall preventing the connection.
communication | 3403 | 0206 | Too many EtherNet/IP connections. The Ethernet/IP client ran out of connection slot resources. Reduce the number of concurrent client connections.
communication | 3403 | 0302 | Error connecting to the Modbus TCP slave. Unable to connect to the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0303 | Modbus TCP slave unreachable. There is no route to the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0304 | Modbus TCP network unreachable. Unable to reach the network for the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
communication | 3403 | 0305 | Modbus TCP slave connection refused. Modbus TCP slave rejected connection attempt. The Modbus TCP slave may not be listening for connections or there may be a firewall preventing the connection.
communication | 3403 | 0306 |
app | 3406 | 0001 | A web server login user was assigned to a group which did not exist. The system is unaffected, but that user will have limited (default) access.
app | 3406 | 0002 | The default login group for the web server was assigned to a group which did not exist. Access control has been disabled, because a minimal amount of access is required in order to log in. The configuration file should be fixed before continuing.
app | 3406 | 0003 | The web server configuration specified access control should be enabled, but did not specify at least one path to control access to. Access control has been disabled. The configuration file should be fixed before continuing.
app | 3407 | 0002 | The base directory for configuration files was missing and has been created automatically. The system has booted in a minimal configuration mode, and most functionality is limited. Please upload a new complete configuration file set.
app | 3407 | 0003 | A required default configuration file was missing. A minimal configuration for the corresponding component has been loaded, and some functionality may be limited.
app | 3407 | 0004 | A required default configuration file was incorrectly formatted. A minimal configuration for the corresponding component has been loaded, and some functionality may be disabled.
app | 3407 | 0005 | A configuration file specified by the user configuration file set was incorrectly formatted. The corresponding default configuration file is being used instead.
app | 3407 | 0006 | The file describing which configuration set to use was corrupted. The default configuration set is being used.
app | 3407 | 0007 | An error occurred while writing a config file. The file system may be full or damaged.
app | 3407 | 0101 | The configured RAM disk on the controller was unable to be created.
app | 3407 | 0102 | Detected an unsupported option card inserted in the controller.
app | 3407 | 0104 | Data in the controller SRAM did not match the expected value. It should be treated as corrupted until it is re-initialized.
app | 3407 | 0106 | The SRAM battery backup power failed. SRAM data should be treated as corrupted until it is re-initialized.
app | 3407 | 0107 | The controller's time-of-day clock detected a voltage decrease in the backup battery. The current time and date is likely to be incorrect. This alarm can be cleared, but will recur when the controller is powered ON until the time and day is reset and the battery is replaced.
app | 3407 | 0204 | Unable to set configured network default gateway
app | 3409 | 0001 | The servo network axis node for the axis specified in the configuration file was not found.
app | 3409 | 0002 | Axis enable failed. This problem is usually a result of communication problems with the servo drive. It may occur after a drive was disconnected from the network. In this case, use Y_ResetMechatrolink to establish communication with the drives once again.
app | 3409 | 0003 | Axis group motion activation failed. Some axes in the group are currently under control of another group, or motion has been blocked by the user.
app | 3409 | 0004 | The motion segment could not be added to the motion queue because it is already queued.
app | 3409 | 0005 | Moves are prohibited when any of the group's axes are disabled, have an alarm, or are in violation of their soft limits.
app | 340A | 0001 | The source for the logical input was not found, the configured input will not be available.
app | 340A | 0002 | The source for the logical output was not found, the configured output will not be available.
app | 340A | 0003 | Two or more axis in the configuration file had the same axis ID.
app | 340A | 0004 | The servo network axis node for the axis specified in the configuration file was not found.
app | 340A | 0005 | The axis group specified in the configuration file could not be created because either one or more of its axes are invalid or the group name is already being used.
app | 340A | 0006 | The type of AtTargetAgent specified in the configuration file is unknown. This is because AtTargetAgent could not be created.
app | 340A | 0007 | The number of constraints for axis group soft limit must be the same as the number of axes in the axis group.
app | 340A | 0008 | The axis group doesn't have the configured frame.
app | 340A | 000B | A continuous-wrap range for an axis causes its position to automatically wrap around between two user-specified numbers. Generally these numbers evaluate to full revolutions of the encoder but other ranges are permitted. However, all ranges specified in user units must map exactly to an integral number of encoder pulses. This alarm indicates that the mapping from user units to encoder ticks was inexact. Use more precise numbers to describe the range or choose a different range that evaluates to an integral number of encoder pulses. When this alarm occurs at startup or servo-net reset, it indicates that the axis has not been connected to an axis node and cannot be servoed on. Otherwise, this alarm indicates that the specified continuous-wrap range was not put into effect.
app | 340A | 000D | Two or more logical outputs specified in the I/O configuration file use the same physical bit. This can cause writes to not correctly generate value-change events on logical outputs for the shared bits. The configuration file should be fixed.
app | 340A | 000E | One or more of the data parameters in the axis configuration file were out-of-range or otherwise incorrectly specified for the axis. The axis was not created and is not available.
app | 340A | 0010 | After servo network reset, the Axis failed to reconnect to the servo network. The drive might have been removed from the network, the node ID of the drive might have changed or there might be a communication problem.
app | 340A | 0012 | After servo network reset, the network I/O failed to reconnect to the servo network. The network I/O module might have been removed from the network, the node ID of the network I/O module might have changed or there might be a network communication problem.
app | 340A | 0013 | After servo network reset, a new axis node was discovered. This axis node is not associated with any existing axes and will not be available. To make this node available, update the configuration and power cycle the controller.
app | 340A | 0014 | After servo network reset, a new I/O node was discovered. This I/O node is not associated with any existing I/O and will not be available. To make this node available, update the configuration and power cycle the controller.
app | 340A | 0017 | One or more of the axis data or configuration parameters were inconsistent or incompatible with the axis node specified. The axis was created but was not connected to the servo node.
app | 340A | 001B | Two or more LogicalInput have the same ID. The configuration file should be fixed.
app | 340A | 001C | Two or more LogicalOutput have the same ID. The configuration file should be fixed.
app | 340A | 001D | Two or more AnalogInput have the same ID. The configuration file should be fixed.
app | 340A | 001E | Two or more AnalogOutput have the same ID. The configuration file should be fixed.
app | 340A | 001F | Analog I/O configuration is missing the 'hardwareConfig' element, and configuration could not be resolved by the physical hardware. The configuration file should be fixed by adding this element to the analog I/O element.
app | 340A | 0020 | One or more axes failed to respond to a servo-off command during a system I/O initiated abort. This is normally the result of communication problems with the drive, which also causes an automatic servo-off.
app | 340A | 0022 | Reset of a servo node failed.
app | 340A | 0023 | The axis position may not be valid because the persistent axis data was corrupted. SRAM should be reinitialized and the axis should be homed.
app | 340C | 0000 | All PLCopen error codes are in the range from 0x0000 to 0x0fff.
app | 340C | 0001 | Time limit exceeded.
app | 340C | 0002 | Distance limit exceeded.
app | 340C | 0003 | Torque limit exceeded.
app | 340C | 0100 | Modbus TCP I/O Driver Error on Server because of invalid address range
app | 340C | 0101 | MBTCP Client I/O driver, MBTCP Connection config is missing input member
app | 340C | 0102 | I/O memory area is not aligned to the correct byte to accommodate reading and writing.
app | 340C | 0103 | Watchdog Error
app | 340C | 0104 | Reserved
app | 340C | 0106 | Reserved
app | 340C | 0107 | Reserved
app | 340C | 0108 | Reserved
app | 340C | 0109 | Reserved
app | 340C | 010A | Not enough memory on PLC for POU during insertion. Project size must be reduced.
app | 340C | 010B | Internal PLC Error in memory management. This error can occur if an older project was loaded on the controller which was compiled to use lees of the controllers total memory space. By using the "Resource" Dialog box, perform "Delete On target," for the bootproject, and then download the application code again.
app | 340C | 010C | Internal PLC Error: POU invalid
app | 340C | 010D | Internal PLC Error: Unknown POU type
app | 340C | 010E | Cannot insert a POU because there is no project.
app | 340C | 010F | Internal PLC Error: Cannot insert a POU because it does not belong to the project.
app | 340C | 0110 | Internal PLC Error: Cannot insert a POU.
app | 340C | 0111 | Internal PLC Error: Invalid POU type
app | 340C | 0112 | Internal PLC Error: Memory reorganization not possible; PLC stopped.
app | 340C | 0113 | Internal PLC Error: SPG defined more than once.
app | 340C | 0114 | Internal PLC Error: Memory error for initialized data of POU.
app | 340C | 0115 | Internal PLC Error: Retain CRC failed. Possible reasons: (1) actual project does not have any retain data, (2) actual project is 'old style' without retain CRC (3) PLC isn't in STOP mode
app | 340C | 0116 | Internal PLC Error: FB defined more than once.
app | 340C | 0117 | Internal PLC Error: Not all POU sent.
app | 340C | 0118 | Internal PLC Error: No program memory defined.
app | 340C | 0119 | Internal PLC Error: Invalid FB number.
app | 340C | 011A | Internal PLC Error: Invalid PG number.
app | 340C | 011B | Internal PLC Error: Invalid SPG number.
app | 340C | 011C | POU uses more than 80 percent of POU memory.
app | 340C | 011D | Project uses more than 80 percent of program memory.
app | 340C | 011E | Internal PLC Error: Invalid function or function block.
app | 340C | 011F | Internal PLC Error: Invalid firmware function or function block.
app | 340C | 0120 | Internal PLC Error: Invalid program.
app | 340C | 0121 | Internal PLC Error: Invalid change of mode.
app | 340C | 0122 | Internal PLC Error: Unknown system mode! PLC stopped!
app | 340C | 0123 | Stack overflow. Increase stack size.
app | 340C | 0124 | System error in module. Check debugging output via controller's web interface.
app | 340C | 0125 | System error in module. Check debugging output via controller's web interface.
app | 340C | 0126 | Internal PLC Error: Error during indirect variable access.
app | 340C | 0127 | PLC CPU overload.
app | 340C | 0128 | Internal PLC Error: Breakpoint unexpected.
app | 340C | 0129 | Internal PLC Error: Error in data configuration.
app | 340C | 012A | Internal PLC Error: Error in retain data configuration.
app | 340C | 012B | Internal PLC Error: Floating point error.
app | 340C | 012C | Internal PLC Error: Fatal error.
app | 340C | 012D | Output string is too short.
app | 340C | 012E | Input string is too short.
app | 340C | 012F | Invalid input parameter 'p' or 'l' (position or length).
app | 340C | 0130 | String is identical to the output string.
app | 340C | 0131 | Invalid string comparison.
app | 340C | 0132 | Invalid data type for string conversion.
app | 340C | 0133 | Error in format string.
app | 340C | 0134 | Error during string conversion.
app | 340C | 0135 | Error in I/O configuration.
app | 340C | 0136 | Initializing I/O driver failed.
app | 340C | 0137 | Board not instantiated.
app | 340C | 0138 | Board number not allowed.
app | 340C | 0139 | Input Group doesn't fit.
app | 340C | 013A | Output Group doesn't fit.
app | 340C | 013B | Board not found.
app | 340C | 013C | Error reading inputs.
app | 340C | 013D | Error writing outputs.
app | 340C | 013E | Error creating I/O semaphore.
app | 340C | 013F | Invalid memory size.
app | 340C | 0140 | Invalid I/O memory address.
app | 340C | 0141 | Internal PLC Error: PG defined more than once.
app | 340C | 0142 | POU exceeds 64K module size during insertion. POU size must be reduced.
app | 340C | 0143 | Internal PLC Error: Error in task configuration.
app | 340C | 0143 | Unknown I/O Driver.
app | 340C | 0200 | Common causes of invalid configuration include duplicate t2o/o2t assembly instances or invalid client connection parameters.
app | 340C | 0202 | Unable to connect to the EtherNet/IP remote server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0203 | There is no route to the EtherNet/IP server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0204 | Unable to reach the network for the EtherNet/IP server. Common causes include: invalid remote server address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0205 | Remote server rejected connection attempt. The remote server may not be listening for connections or there may be a firewall preventing the connection.
app | 340C | 0206 | The Ethernet/IP client ran out of connection slot resources. Reduce the number of concurrent client connections.
app | 340C | 0302 | Unable to connect to the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0303 | There is no route to the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0304 | Unable to reach the network for the Modbus TCP slave. Common causes include: invalid Modbus TCP slave address, invalid gateway, invalid subnet mask, or the Ethernet network is not correctly configured.
app | 340C | 0305 | Modbus TCP slave rejected connection attempt. The Modbus TCP slave may not be listening for connections or there may be a firewall preventing the connection.
app | 340C | 0306 | The Modbus TCP master ran out of connection slot resources. Reduce the number of concurrent slave connections.
app | 340C | 1020 | The controller battery voltage has dropped, indicating it has failed or is about to fail. While the controller is powered on, the battery should be replaced as soon as possible or a prolonged power-down state will cause various static data to be lost.
app | 340C | 1028 | The driver parameter specified in the axis configuration caused an exception
app | 340C | 1029 | The driver parameter did not match the axis configuration
app | 340C | 1030 | The configured axis count exceeded the allowable limit.
app | 340C | 1031 | The axis count exceeded the allowable limit due to an auto-detected axis.
app | 340C | 1033 | Using an incompatible version of the PLCopenPlus firmware function block library may result in controller instability. Consequently, the PLC application will not be allowed to run. Please change either the controller's firmware or the firmware function block library.
app | 340C | 1110 | All motion error codes are in the range from 0x1111 to 0x111f.
app | 340C | 1111 | The move could not be buffered because the motion queue for that axis is full.
app | 340C | 1112 | The move could not be started because motion is prohibited.
app | 340C | 1113 | The servo drive failed to enable or disable.
app | 340C | 1114 | Drive parameter read/write did not complete.
app | 340C | 1115 | Drive parameter read/write failed
app | 340C | 1116 | Torque move prohibited while non-torque moves queued or in progress.
app | 340C | 1117 | Y_CamOut called while not camming.
app | 340C | 1118 | The master slave relationship can not be modified because the master axis has not been set yet.
app | 340C | 1119 | Y_CamFileSelect can not open a second cam table while the first cam table is still being opened.
app | 340C | 111A | The function block can not command an external axis.
app | 340C | 111B | The homing sequence is already in progress.
app | 340C | 111C | MC_SetPosition can not be called while the axis is moving.
app | 340C | 111D | Motion aborted due to axis alarm.
app | 340C | 111E | MC_SetPosition can not set the position to be outside the configured wrap range.
app | 340C | 111F | Can not transition to homing state; must be in StandStill state first.
app | 340C | 1120 | Clear alarms is already in progress.
app | 340C | 1121 | Axis reset is already in progress.
app | 340C | 1122 | Mechatrolink reset is already in progress.
app | 340C | 1123 | Y_CamStructSelect cannot transfer a second cam structure while the first cam structure is being transferred.
app | 340C | 1124 | Y_ReadCamTable cannot be read a second cam structure while the first cam structure is being read.
app | 340C | 1125 | Y_WriteCamTable cannot write a second cam structure while the first cam structure is being written.
app | 340C | 1126 | MC_SetPosition cannot be called while either the master or slave axis is camming.
app | 340C | 1127 | The function block can not be used with a virtual axis.
app | 340C | 1128 | The function block can not be used with an inverter axis.
app | 340C | 1129 | Y_VerifyParmeters and Y_WriteParameters can not be called a second time while the first one is in progress.
app | 340C | 1210 | All error codes for structures are in the range from 0x1211 to 0x121f.
app | 340C | 1211 | Axis ID does not correspond to an axis.
app | 340C | 1212 | The master slave relationship is not defined.
app | 340C | 1213 | The input reference does not correspond to a real input
app | 340C | 1214 | The output reference does not correspond to a real output.
app | 340C | 1215 | The input/output number does not correspond to a real input or output bit.
app | 340C | 1216 | Trigger reference is not valid.
app | 340C | 1217 | The cam switch structure is not valid.
app | 340C | 1218 | The track structure is not valid.
app | 340C | 1219 | Table size results in misaligned data.
app | 340C | 121A | Buffer size results in misaligned data.
app | 340C | 121B | Table type is not supported.
app | 340C | 121C | Invalid start index.
app | 340C | 121D | Invalid end index.
app | 340C | 1220 | All error codes for invalid enumeration values are in the range from 0x1221 to 0x122f.
app | 340C | 1221 | 'BufferMode' does not correspond to a valid enumeration value.
app | 340C | 1222 | 'Direction' does not correspond to a valid enumeration value.
app | 340C | 1223 | 'StartMode' does not correspond to a valid enumeration value.
app | 340C | 1224 | 'ShiftMode' does not correspond to a valid enumeration value.
app | 340C | 1225 | 'OffsetMode' does not correspond to a valid enumeration value.
app | 340C | 1226 | 'Mode' does not correspond to a valid enumeration value.
app | 340C | 1227 | 'SynchMode' does not correspond to a valid enumeration value.
app | 340C | 1228 | 'Parameter' does not correspond to a valid enumeration value.
app | 340C | 1229 | 'AdjustMode' does not correspond to a valid enumeration value.
app | 340C | 122A | 'RampIn' does not correspond to a valid enumeration value.
app | 340C | 122B | 'ControlMode' does not correspond to a valid enumeration value.
app | 340C | 1230 | All error codes for range errors are from 0x1221 to 0x122f.
app | 340C | 1231 | Distance parameter is less than zero.
app | 340C | 1232 | Velocity parameter is less than or equal to zero.
app | 340C | 1233 | Acceleration is less than or equal to zero.
app | 340C | 1234 | Deceleration is less than or equal to zero.
app | 340C | 1235 | Torque is less than or equal to zero.
app | 340C | 1236 | Time is less than or equal to zero
app | 340C | 1237 | Specified time was less than zero.
app | 340C | 1238 | Specified scale was less than or equal to zero.
app | 340C | 1239 | Velocity is negative.
app | 340C | 123A | Denominator is zero.
app | 340C | 123B | Jerk is less than or equal to zero.
app | 340C | 123C | TorqueRamp is less than or equal to zero.
app | 340C | 123D | Engage position is outside the table domain.
app | 340C | 123E | Negative engage width.
app | 340C | 123F | Disengage position is outside the table domain.
app | 340C | 1240 | Negative disengage width.
app | 340C | 1241 | StartPosition is outside of master's range.
app | 340C | 1242 | EndPosition is outside of master's range.
app | 340C | 1310 | All error codes for invalid input data range from 0x1211 to 0x121f.
app | 340C | 1311 | The specified Pn does not exist.
app | 340C | 1312 | The mask does not correspond to valid tracks.
app | 340C | 1313 | The profile must start with relative time equal to zero, and the time must be increasing.
app | 340C | 1314 | The specified cam file does not exist.
app | 340C | 1315 | Invalid header for the cam file. Cam tables must have a header indicating the number of rows, number of columns and a feed forward velocity flag
app | 340C | 1316 | The first (master) column must be either increasing or decreasing.
app | 340C | 1317 | Cam table reference does not refer to a valid cam table.
app | 340C | 1318 | The engage phase exceeded the time limit. Slave axis could not attain the target position and velocity within the user specified time limit.
app | 340C | 1319 | The engage phase exceeded the distance limit. Slave axis could not attain the target position and velocity within the user specified master distance.
app | 340C | 131A | Invalid width input. Width is an enumeration type with the following allowable values 'WIDTH_8'=0, 'WIDTH_16'=1, and 'WIDTH_32'=2.
app | 340C | 131B | The slave axis can not be the same as the master axis.
app | 340C | 131C | Default drive parameter info is not available for this parameter.
app | 340C | 131D | Invalid external axis.
app | 340C | 131E | Invalid virtual axis.
app | 340C | 131F | File extension is not recognized or missing.
app | 340C | 1320 | Could not find the axis parameter file.
app | 340C | 2110 | All log error codes are in the range from 0x2111 to 0x211f.
app | 340C | 2111 | Adding log items or setting up log is not possible because the data log is already set up.
app | 340C | 2112 | Starting or stopping logging is not possible because the data log is not set up.
app | 340C | 2113 | Invalid handle for user log item.
app | 340C | 2114 | Data log can not be created because too many data logs are in use.
app | 340C | 2115 | Invalid handle for data log.
app | 340C | 2116 | A user log item can only support eight inputs for each type.
app | 340C | 2117 | Saving the log failed.
app | 340C | B114 | Failed to send clear alarms command.
app | 340C | B115 | Failed to reset Mechatrolink.
app | 340C | B116 | Mechatrolink reset is prohibited while axes are moving.
app | 340C | B117 | Failed to initialize absolute encoder.
app | 340C | E110 | All error codes for ProConOS errors range from 0xE111 to 0xE11f.
app | 340C | E111 | Instance object is NULL.
app | 340C | E112 | The instance data is NULL.
app | 340C | E113 | The structure pointer check sum is invalid.
app | 340C | E114 | The structure size does not match.
app | 340C | EDED | This function block was implemented in a later firmware version. If you would like to use this function block, then the controller must be updated.
app | 340C | F110 | All error codes for kernel errors range from 0xF111 to 0xF11f.
app | 340C | F111 | An internal assertion in the motion kernel failed indicating the controller is not in a stable state. This error should be reported to Yaskawa Electric America.
user | 3501 | 0000 | A user script task posted an alarm directly.
motionKernel | 4202 | 0001 | The command position will soon reach the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0002 | The command position will soon reach the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0003 | The command speed will soon reach the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0004 | The command speed will soon reach the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0005 | The command acceleration will soon reach the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0006 | The command acceleration will soon reach the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0007 | The command torque will soon reach the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
Memory |  |  |
motionKernel | 4202 | 0008 | The command torque will soon reach the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0011 | The command position will soon reach the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0012 | The command position will soon reach the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0013 | The command speed will soon reach the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0014 | The command speed will soon reach the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0015 | The command acceleration will soon reach the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0016 | The command acceleration will soon reach the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0017 | The command torque will soon reach the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0018 | The command torque will soon reach the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0021 | The command position will soon reach the allowable range for the axis in the positive direction (positive overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0022 | The command position will soon reach the allowable range for the axis in the negative direction (negative overtravel). The axis may not be moved again until the alarm condition is cleared. After the alarm is cleared, it is permissible to execute a move which brings the axis back toward the allowed region, even though the axis is probably still outside the allowed region. Any move which pulls the axis further away from the allowed region will re-trigger the alarm.
motionKernel | 4202 | 0023 | The command speed will soon reach the allowable range for the axis in the positive direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0024 | The command speed will soon reach the allowable range for the axis in the negative direction (overspeed). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0025 | The command acceleration will soon reach the allowable range for the axis in the positive direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0026 | The command acceleration will soon reach the allowable range for the axis in the negative direction. The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0027 | The command torque will soon reach the allowable range for the axis in the positive direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
motionKernel | 4202 | 0028 | The command torque will soon reach the allowable range for the axis in the negative direction (overtorque). The axis may not be moved again until the alarm condition is cleared.
Mechatrolink | 4301 | 000A | The SERVOPACK model type was unable to be determined. This can indicate that some parameters may be incorrect.
Mechatrolink | 4301 | 000C | The controller was unable to send the drive command because servo network resources were allocated to motion. Brake on, brake off, absolute encoder initialization and alarm clear can only be sent when not moving.
Mechatrolink | 4301 | 001C | The Mechatrolink.xml file specified duplicate configuration structures for a node. The first match was used, subsequent matches were ignored.
Mechatrolink | 4301 | 001D | The Mechatrolink.xml file specified duplicate default configuration structures for a node type. The first default structure was used, subsequent structures were ignored.
Mechatrolink | 4301 | 001E | A node was detected on the mechatrolink network, but it is not supported by the software.
Mechatrolink | 4301 | 001F | The Mechatrolink comm board inverter control reference/run control is not enabled. Change the settings in parameters b1-01 and b1-02 to '3' to select PCB reference/run source.
Mechatrolink | 4301 | 0020 | The drive returned an invalid watch dog code indicating a possible dropped communication packet.
Mechatrolink | 4302 | 0000 | The base code for Sigma-II drive warnings. The drive's warning value is bitwise OR'd in with this base value.
Mechatrolink | 4302 | 0091 | This warning occurs before the overload alarms (A.710 or A.720) occur. If the warning is ignored and operation continues, an overload alarm may occur.
Mechatrolink | 4302 | 0092 | This warning occurs before the regenerative overload alarm (A.32) occurs. If the warning is ignored and operation continues, a regenerative overload alarm may occur.
Mechatrolink | 4302 | 0093 | This warning occurs when the absolute encoder battery voltage is lowered. Continuing the operation in this status may cause an alarm.
Mechatrolink | 4302 | 0094 | A value outside the setting range was set using MECHATROLINK-II communications.
Mechatrolink | 4302 | 0095 | A command not supported in the product specifications was sent, OR the command reception conditions were not met.
Mechatrolink | 4302 | 0096 | A communications error occurred (once).
Mechatrolink | 4303 | 0000 | The base code for Sigma-III drive warnings. The drive's warning value is bitwise OR'd in with this base value.
Mechatrolink | 4303 | 0900 | Position error pulse exceeded the parameter settings (Pn520 x Pn51E/100).
Mechatrolink | 4303 | 0901 | When the servo turned ON, the position error pulses exceeded the parameter setting (Pn526 x Pn528/100).
Mechatrolink | 4303 | 0910 | This warning occurs before the overload alarms (A.710 or A.720) occur. If the warning is ignored and operation continues, an overload alarm may occur.
Mechatrolink | 4303 | 0911 | Abnormal vibration at the motor speed was detected. The detection level is the same as A.520. Set whether to output an alarm or warning by "Vibration Detection Switch" of Pn310.
Mechatrolink | 4303 | 0920 | This warning occurs before the regenerative overload alarm (A.320) occurs. If the warning is ignored and operation continues, a regenerative overload alarm may occur.
Mechatrolink | 4303 | 0930 | This warning occurs when the absolute encoder battery voltage is lowered. Continuing the operation in this status may cause an alarm.
Mechatrolink | 4303 | 0941 | The change of the parameters can be validated only after turning the power ON from OFF.
Mechatrolink | 4303 | 094A | Incorrect command parameter number was set.
Mechatrolink | 4303 | 094B | Command input data is out of range.
Mechatrolink | 4303 | 094C | Calculation error was detected.
Mechatrolink | 4303 | 094D | Data size does not match.
Mechatrolink | 4303 | 095A | Command was sent though command sending condition was not satisfied.
Mechatrolink | 4303 | 095B | Unsupported command was sent.
Mechatrolink | 4303 | 095C | Command condition is not satisfied for parameter settings.
Mechatrolink | 4303 | 095D | Command, especially latch command, interferes.
Mechatrolink | 4303 | 095E | Subcommand and main command interfere.
Mechatrolink | 4303 | 0960 | Communications error occurred during MECHATROLINK communications.
Mechatrolink | 4304 | 0000 | The base code for io warnings. The io's warning value is bitwise OR'd in with this base value.
DPRAM | 4309 | 1000 | Error code prefix for data link errors
DPRAM | 4309 | 1011 | Invalid register
DPRAM | 4309 | 1012 | Value exceeded data limit
DPRAM | 4309 | 1013 | Data math error
DPRAM | 4309 | 1014 | Register number and data size do not agree
DPRAM | 4309 | 1015 | Invalid data size
DPRAM | 4309 | 1030 | Servo and option card accessed data link channel at the same time
DPRAM | 4309 | 10FF | Unknown data link error
DPRAM | 4309 | 2000 | Error code prefix for message errors
DPRAM | 4309 | 2002 | Invalid register
DPRAM | 4309 | 2003 | Message size and data quantity do no match
DPRAM | 4309 | 2030 | Invalid register
DPRAM | 4309 | 2031 | Register access not allowed
DPRAM | 4309 | 2032 | Setting value is out of range
DPRAM | 4309 | 2033 | Messaging accessed only part of a register group or spanned register groups
DPRAM | 4309 | 2034 | Message command could not be processed because pre-conditions have not been met
DPRAM | 4309 | 2035 | Command processing is not possible due to conflict
DPRAM | 4309 | 20A1 | Controller option card received an empty message response
Mechatrolink | 4312 | 0000 | The base code for inverter warnings. The inverter's warning value is bitwise OR'd in with this base value.
Mechatrolink | 4312 | 0001 | Reserved
Mechatrolink | 4312 | 0002 | Reserved
Mechatrolink | 4312 | 0003 | Reserved
Mechatrolink | 4312 | 0004 | Reserved
Mechatrolink | 4312 | 0005 | Reserved
Mechatrolink | 4312 | 0006 | Reserved
Mechatrolink | 4312 | 0007 | Reserved
Mechatrolink | 4312 | 0008 | Reserved
Mechatrolink | 4312 | 0009 | Reserved
Mechatrolink | 4312 | 000A | Reserved
Mechatrolink | 4312 | 000B | Reserved
Mechatrolink | 4312 | 000C | Reserved
Mechatrolink | 4312 | 000D | Reserved
Mechatrolink | 4312 | 000E | Reserved
Mechatrolink | 4312 | 0010 | Reserved
Mechatrolink | 4312 | 0011 | Reserved
Mechatrolink | 4312 | 0012 | Reserved
Mechatrolink | 4312 | 0013 | Reserved
Mechatrolink | 4312 | 0014 | Reserved
Mechatrolink | 4312 | 0017 | Reserved
Mechatrolink | 4312 | 0018 | Reserved
Mechatrolink | 4312 | 001A | Reserved
Mechatrolink | 4312 | 001B | Reserved
Mechatrolink | 4312 | 001C | Reserved
Mechatrolink | 4312 | 001D | Reserved
Mechatrolink | 4312 | 001E | Reserved
Mechatrolink | 4312 | 001F | Reserved
Mechatrolink | 4312 | 0022 | Reserved
Mechatrolink | 4312 | 0023 | Reserved
Mechatrolink | 4312 | 0024 | Reserved
Mechatrolink | 4312 | 0025 | Reserved
Mechatrolink | 4312 | 0026 | Reserved
Mechatrolink | 4312 | 0094 | Reserved
Mechatrolink | 4312 | 0095 | Reserved
Mechatrolink | 4312 | 0096 | Reserved
Mechatrolink | 4312 | 00E5 | Reserved
app | 4401 | 0008 | Each call to groupAxes() must be matched by a corresponding call to ungroupAxes(). If a script exits without such a matching call (thus leaving an 'orphaned' group behind), this warning is issued. Clearing the warning also ungroups the orphaned group.
app | 4401 | 0009 | The debug stack trace was longer than expected. It may be clipped.
app | 4403 | 0001 | The event queue for the remote client was full, and an event was dropped. This is generally caused either by exceeding the network bandwidth or exceeding the general system processing power (starving the connection). When an event is dropped in this manner, the connection is terminated.
app | 4403 | 0005 | An RMI connection was attempted by an external client and rejected due to the concurrent connection limit.
app | 4407 | 0001 | The configuration file directory is read-only or resides on a read-only file system. Attempts to update the configuration or create directories will fail.
app | 4407 | 0002 | An attempt was made to write to a read-only configuration file. The write failed.
app | 4407 | 0105 | There was an indication that the SRAM battery backup power may have failed temporarily. SRAM data may have been compromised.
app | 4408 | 0001 | The alarm history was configured to use NVRAM storage, but either the available NVRAM was not sufficient to contain the configured buffer size, or the configured buffer size was not large enough to contain the configured number of records. The alarm history will contain fewer records than configured.
app | 4408 | 0002 | The alarm history was configured to use NVRAM storage and the data was found to be corrupted. The alarm history has been lost. NOTE: this alarm also occurs if the configured size of the alarm history has been changed.
app | 440A | 000C | The position and torque scales specified in the configuration file have different signs. As a result, a positive acceleration results in a negative torque, and position limits are opposite in sign as the torque limits.
app | 440A | 000F | The axis was temporarily disconnected from the servo network during reset. During this time, the feedback data is not valid and the axis cannot be moved.
app | 440A | 0011 | The network I/O was temporarily disconnected from the servo network during reset. During this time, any network I/O state change will be unobservable to the controller.
app | 440A | 0019 | The system was rebooted by the user.
app | 440A | 001A | The system failed to shut down gracefully during a reboot, although the reboot did occur. This does not necessarily indicate that the software is damaged.
app | 440B | 0001 | The controller is running out of memory. Memory should be freed as soon as possible. Try closing connections to the controller or stopping scripts.
app | 440B | 0003 | The largest free memory block is approaching the critical level. Memory should be freed as soon as possible. Try closing connections to the controller or stopping scripts.
app | 440C | 0105 | Reserved
app | 440C | 1032 | The configuration file version is not compatible with the fimware version. Please use the configuration tool to update the configuration files to match the the firmware version.
app | 440C | 1034 | Some function blocks are not supported by the controller firmware. If these function blocks are used in the PLC application, then their ErrorID will always equal 60909. If these function blocks are needed, then please upgrade the controller's firmware.
app | 4501 | 0000 | A user script task posted a warning directly.


Controller Memory