MELSEC MX Controller MX-R model
Products -Improving program development efficiency-

- Reduce programming time and streamline development with one-tool engineering and intuitive operation
- Programming using IEC 61131-3 languages
- Create programs using only dialog boxesNEW
- Reduce programming effort with labels and structures
- Streamline your project development by modularizing programs into components
- Efficiently develop large-scale projects with multiple members using program configuration management
- Standardization of programs and reduction in design effortNEW
- Reduce commissioning time for multi-axis machines
Reduce programming time and streamline development with one-tool engineering and intuitive operation
Sequence control and motion control programs are combined into one. There is no need to create separate programs for each module or exchange data, simplifying your programs. With a single tool handling both sequence and motion control programs, you can easily modularize the program into components, manage change history, and debug.
Programming using IEC 61131-3 languages
Ladder diagram (LD), structured text (ST), and function block diagram (FBD) are supported. Motion control programming also supports LD, ST, and FBD, allowing the use of FBs that conform to the international PLCopen® Motion Control FB standard.

The PLCopen®-compliant Motion Control FB interface is standardized,
making it easier for others than the original programmer to understand program content,
reducing design and maintenance time.
Create programs using only dialog boxesNEW
The Wizard function simplifies program creation
Follow the on-screen prompts to generate a program tailored to your application. Since there is no need to remember complex procedures, the Wizard function significantly reduces the workload.
In addition, the generated programs can be freely edited.
Reduce the time and effort required to create motion programs
Basic motion programs can be generated automatically by configuring the axes and setting the required arguments. The creation of programs required for single-axis positioning, including servo ON, homing, and positioning, can be streamlined.
Reduce programming effort with labels and structures
Improve program readability by managing signals such as sensor signals with labels named according to their role and use. Using labels allows you to program without worrying about devices used in other programs when creating multiple programs.
What is a label?
A variable that is used by a program, instead of a device. Label names and data types can be defined optionally according to their role and use.
Program readability can be improved by using labels.
- ■Duplication of addresses used by devices does not need to be considered.
- ■The usage of data can be understood from the specified label name even without a comment.
- ■Changes to a label are reflected in all the same labels, so that working hours can be reduced.
What is a structure?
A structure unifies labels of multiple types (data types) to define a new data type. Using structures helps arrange and manage data and improves reusability.
- ■Data structures can be reused among programs that perform similar processing.
- ■Structures can also be reused in programs of other machines.
What is an array?
Data of the same type can be managed by number in an array. You can easily handle large amounts of data by using arrays.
Multiple devices can be used as arrays or structures
The label information (network labels) of devices can be used as bit arrays, structures, and structure arrays, so that programming efficiency can be improved.
- ■Programming, such as index specification, can be performed by specifying an array element in the structure array.
Supporting arrays
By defining elementary data types, structures, FB types, and axis data as arrays, the same FB can be declared/described at once. The program can be simplified because there is no need to call the same FB again.
- ■The same FB can be declared/described at once so that programming time can be reduced.
Supporting the label initial value setting in a table format
You can set initial values for array elements and structure instances on the label editor. This eliminates the need for initial value setting programs, reducing the program capacity and the scan time.
- ■The initial values can be set to array elements, reducing the programming time.
Streamline your project development by modularizing programs into components
Increase program reusability by using label names, FBs, structures, and arrays to modularize a program into components. This approach not only reduces development time but also creates more readable programs. It also ensures consistent programming quality regardless of developer skill level. Each component can be assigned to a specific member, clarifying roles and responsibilities.
Example of combination of labels, FBs, and structures
Efficiently develop large-scale projects with multiple members using program configuration management
Program configuration management enables program reuse and collaboration.
Changes made by others are reflected immediately, with centralized history management for easy tracking of changes.
Program history log can be kept
You can track which version caused a machine failure.
●Data registration method
- You can track who changed which components and when.
- Edited data is not overwritten by others.
Data can be restored for only a specific part
Sudden machine failures can be responded to quickly.
●Verification method

●Rollback method

Standardization of programs and reduction in design effortNEW
FB library for roll-to-roll control equipment
The functions required to control roll-to-roll equipment are provided as function blocks (FBs).
Simply placing the FBs enables the production line to be programmed.
The FBs also help standardize control programs across machines throughout the production line.
Example of applying FBs for roll-to-roll control equipment in a coater

List of FBs in the FB library for roll-to-roll control equipment
| Application | Function |
|---|---|
| Tension control | Tension sensor feedback velocity control |
| Dancer feedback velocity control | |
| Tension sensor feedback torque control | |
| Winding diameter calculation | Cumulative thickness winding diameter calculation |
| Ratio operation type winding diameter calculation | |
| Auxiliary function for tension control | Reference line velocity generation |
| Inertial compensation torque calculation | |
| Friction compensation correction | |
| Taper tension calculation | |
| Length measurement calculation | |
| Residual length calculation | |
| PID control | |
| Droop control for roll press | |
| Edge position control |
| Application | Function |
|---|---|
| Cutter control | Flying shear cam generation |
| Filter operation | Low-pass filter operation (primary delay filter) |
| Moving average filter operation |
For information about obtaining and using the FB library,
please contact your local Mitsubishi Electric representative.
Easily register FBs in the engineering software
Import the FB library into GX Works3. The FBs are ready for use after a few simple operations.
Reduce commissioning time for multi-axis machines
Easy axis generation
Real drive axes can be generated from network configuration information. Generating axes based on network configuration settings reduces the time and effort required to set up axes.
- ■Axes can be generated at once for servo amplifiers that are not assigned axes.
Setting IP addresses of axes at once
You can view a list of stations assigned to each axis and change their IP addresses.
- ■The IP address of the station to be assigned to the axis can be set at once.