FX - Programming - Manual - Intermediate and Advance PDF
FX - Programming - Manual - Intermediate and Advance PDF
MELSEC FX Family
Programmable Logic Controllers
BY: AS AUTOMATION SERVICES
TRAINER: MR.TSOON
WWW.ASASMY.COM
Contents
Contents
1 Introduction
FX Beginners Manual 5
Contents
3 An Introduction to Programming
4 Devices in Detail
VI MITSUBISHI ELECTRIC
Contents
6 Expansion Options
FX Beginners Manual 7
Contents
Index
FX Beginners Manual 11
Moie Info rmatbn lntiod uction
1 Introduction
Input Output
Switch
Contactors
FX Beginners Manual 21
How PLCs Process Programs Programmable Logic Controllers
Switch on PLC
Input signals
PLC program
Process image
Instruction 1
of inputs
Instruction 3
....
....
Process image ....
of outputs Instruction n
Output signals
2 2 MITSUBISHI ELECTRIC
Programmable Logic Controllers How PLCs Process Programs
Program execution
After this the program is executed, during which the PLC accesses the stored states of the
inputs in the process image. This means that any subsequent changes in the input states will
not be registered until the next program cycle!
The program is executed from top to bottom, in the order in which the instructions were pro-
grammed. Results of individual programming steps are stored and can be used during the cur-
rent program cycle.
Program execution
X000 X001
0 M0
M6 Store result
M1 M8013
4 Y000
M2 Control output
M0
9 Y001
FX Beginners Manual 23
The MELSEC FX Family Programmable Logic Controllers
Specifications FX1S FX1N FX2N FX2NC FX3G FX3GC FX3GE FX3S FX3U FX3UC
Max integrated
30 60 128 96 60 32 40 30 128 96
I/O points
Expansion capability
34 132 256 256 256 256 256 * 384 384
(max. possible I/Os)
Program memory
2000 8000 16000 16000 32000 32000 32000 4000 64000 64000
(steps)
Cycle time per 0.55 0.55
0.08 0.08 0.21/0.42 0.21/0.42 0.21/0.42 0.21 0.065 0.065
log. instruction (s) 0.7 0.7
No. of instructions
27 / 2 / 27 / 2 / 27 / 2 / 27 / 2 / 29 / 2 / 29 / 2 / 29 / 2 / 29 / 2 / 27 / 2 / 29 / 2 /
(standard / step ladder /
85 89 107 107 124 122 122 116 218 218
special function)
Max. special function 8 right 8 right 8 right 8 right 8 right
2 8 4 2 left
modules connectable 4 left 4 left 2 left 10 left 6 left
* Not expandable
24 MITSUBISHI ELECTRIC
Selecting the Right Controller Programmable Logic Controllers
No. of No. of
Series I/Os Type Power supply Output type
inputs outputs
10 FX1S-10 MD-DD 6 8
14 FX1S-14 MD-DD 8 6 24 V DC
Transistor
FX1S or
20 FX1S-20 MD-DD 12 8 or relay
100 240 V AC
30 FX1S-30 MD-DD 16 14
14 FX1N-14 MD-DD 8 6
24 FX1N-24 MD-DD 14 10 12 24 V DC
Transistor
FX1N or
40 FX1N-40 MD-DD 24 16 or relay
100 240 V AC
60 FX1N-60 MD-DD 36 24
16 FX2N-16 MD-DD 8 8
32 FX2N-32 MD-DD 16 16
48 FX2N-48 MD-DD 24 24 24 V DC
Transistor
FX2N or
64 FX2N-64 MD-DD 32 32 or relay
100 240 V AC
80 FX2N-80 MD-DD 40 40
128 FX2N-128 MD-DD 64 64
16 FX2NC-16 MD-DD 8 8
32 FX2NC-32 MD-DD 16 16 Transistor
FX2NC 24 V DC
64 FX2NC-64 MD-DD 32 32 or relay
96 FX2NC-96 MD-DD 48 48
14 FX3G-14 MD/DDD 8 6
24 FX3G-24 MD/DDD 14 10 Optional
FX3G 100 240 V AC Transistor
40 FX3G-40 MD/DDD 24 16 or relay
60 FX3G-60 MD/DDD 36 24
FX3GC 32 FX3GC-32MT/DDD 16 16 24 V DC Transistor
24 FX3GE-24MR/ES 16 8
FX3GE 100 240 V AC Relay
40 FX3GE-40MR/ES 16 14
10 FX3S-10 MD/ESD 6 4
14 FX3S-14 MD/ESD 8 6 Optional
FX3S 100 240 V AC Transistor
20 FX3S-20 MD/ESD 12 8 or relay
30 FX3S-30 MD/ESD 16 14
16 FX3U-16 MD-DD 8 8
32 FX3U-32 MD-DD 16 16
24 V DC
Transistor
48 FX3U-48 MD-DD 24 24 or
or relay
FX3U 100 240 V AC
64 FX3U-64 MD-DD 32 32
80 FX3U-80 MD-DD 40 40
Transistor
128 FX3U-128 MD-DD 64 64 100 240 V AC
or relay
16 FX3UC-16 MD/DDD 8 8
32 FX3UC-32 MD/DDD 16 16
FX3UC 24 V DC Transistor
64 FX3UC-64 MD/DDD 32 32
96 FX3UC-96 MD/DDD 48 48
FX Beginners Manual 25
Programmable Logic Controllers Selecting the Right Controller
To choose the right controller for your application you need to answer the following questions:
How many signals (external switch contacts, buttons and sensors) do you need to input?
What types of functions do you need to switch, and how many of them are there?
What power supply options are available?
How high are the loads that the outputs need to switch? Choose relay outputs for switching
high loads and transistor outputs for switching fast, trigger-free switching operations.
26 MITSUBISHI ELECTRIC
Controller Design Programmable Logic Controllers
The input circuits use floating inputs. They are electrically isolated from the other circuits of
the PLC with optical couplers. The output circuits use either relay or transistor output techno-
logy. The transistor outputs are also electrically isolated from the other PLC circuits with optical
couplers.
The switching voltage at all the digital inputs must have a certain value (e.g. 24 V DC). This volt-
age can be taken from the PLCs integrated power supply unit. If the switching voltage at the
inputs is less than the rated value (e.g. <24 V DC) then the input will not be processed.
The maximum output currents are 2 A on 250 V three-phase AC and non-reactive loads with
relay outputs and 0.5 A on 24 V DC and non-reactive loads.
Protective cover
Terminal cover
Mounting hole
Power supply
connection Terminals for
digital inputs
Interface for expansion
adapter boards LEDs for indicating
the input status
Cutout for adapters or
control panel RUN/STOP switch
2 analog potentiometers
LEDs for indicating
Connection for the operating status
programming units LEDs for indicating
Connection for the the output status
service power supply
Protective cover
Terminals for
digital outputs
FX Beginners Manual 27
Programmable Logic Controllers Controller Design
Protective cover
Terminals for
Terminal cover digital inputs
Connection of the
Mounting hole power supply
Terminal cover
Protective cover
Housing cover
28 MITSUBISHI ELECTRIC
Controller Design Programmable Logic Controllers
Protective cover
Memory battery
Battery
compartment
Extension bus
RUN/STOP switch (on side)
Protective cover
Operating status LEDs for expansion bus
Y0
X0
Y1
the input status
X1
Y2
X2
COM1 Y3
Memory cassette
X3
COM
Connector for
(optional)
terminal strips
Y4
X4
X5
X6
X7
Terminals for
digital inputs
Terminals for
digital outputs
Protective cover
Shock protection
Slots for memory Terminal strip for
cassette, display and digital inputs
expansion adapter
LEDs for indicating
2 analog setpoint input status
potentiometers
RUN/STOP switch LEDs for indicating
operating mode
Mount for
optional battery Cover for expansion
bus
Connection for program-
ming unit (RS422) LEDs for indicating
output status
Connection for program- Output terminals
ming unit (USB)
Shock protection
Protective cover
FX Beginners Manual 29
Programmable Logic Controllers Controller Design
Battery connector
Battery
Battery cover
Protective cover
Slot for memory
cassette, display and
expansion adapter Shock protection
Terminals for digital
Terminals for analog inputs Battery
inputs holder
LEDs for indicating
2 analog potentiometers operating mode
input status
RUN/STOP switch Cover for expansion
bus
Special adapter connector
LEDs for output status
RS-422 Interface
USB Interface
RJ45 connector
(10BASE-T/100BASE-TX)
Terminals for digital
Terminals for analog outputs
output
Shock protection
Protective cover
2 10 MITSUBISHI ELECTRIC
Controller Design Programmable Logic Controllers
Protective cover
Shock protection
Shock protection
Protective cover
FX Beginners Manual 2 11
Programmable Logic Controllers Controller Design
Battery cover
Protective cover
Terminal cover
Terminals for
digital inputs
Top cover
(used if FX3U-7DM Protective cover
is not installed)
Expansion bus
(to the side)
Cover of the adapter
board terminal Connection for
programming unit
2 12 MITSUBISHI ELECTRIC
Controller Design Programmable Logic Controllers
The following table describes the meaning and functionality of the single components und
parts of a Mitsubishi PLC.
Component Description
Optional expansion adapter boards can be connected to this interface. A variety of differ-
Connection for
ent adapters are available for all FX lines (except the FX2NC and the FX3GC). These
expansion
adapters extend the capabilities of the controllers with additional functions or communica-
adapter boards
tions interfaces. The adapter boards are plugged directly into the slot.
Connection for pro- This connection can be used for connecting the FX-20P-E hand-held programming unit or
gramming units an external PC or notebook with a programming software package (e.g. GX Works2 FX).
Read/write memory in which the PLC program can be stored and read with the program-
EEPROM ming software. This solid-state memory retains its contents without power, even in the
event of a power failure, and does not need a battery.
Slot for optional memory cassettes. Inserting a memory cassette disables the controllers
Memory cassette slot
internal memory the controller will then only execute the program stored in the cassette.
Both additional I/O expansion modules and special function modules that add additional
Extension bus capabilities to the PLC system can be connected here. See chapter 6 for an overview of
the available modules.
The analog potentiometers are used for setting analog setpoint values. The setting can be
Analog
polled by the PLC program and used for timers, pulse outputs and other functions (see
potentiometers
Section 4.6.1).
The service power supply (not for FX2NC, FX3GC and FX3UC) provides a regulated 24V
DC power supply source for the input signals and the sensors. The capacity of this power
Service power supply supply depends on the controller model (e.g. FX1S, FX1N, FX3G, FX3GE and FX3S:
400 mA; FX2N-16MD-DD through FX2N-32MD-DD: 250 mA, FX2N-48MD-DD through
FX2N-64MD-DD: 460 mA)
The digital inputs are used for inputting control signals from the connected switches, but-
Digital inputs tons or sensors. These inputs can read the values ON (power signal on) and OFF (no
power signal).
You can connect a variety of different actuators and other devices to these outputs,
Digital outputs
depending on the nature of your application and the output type.
These LEDs show which inputs are currently connected to a power signal, i.e. a defined
LEDs for indicating
voltage. When a signal is applied to an input the corresponding LED lights up, indicating
the input status
that the state of the input is ON.
These LEDs show the current ON/OFF states of the digital outputs. These outputs can
LEDs for indicating
switch a variety of different voltages and currents depending on the model and output
the output status
type.
The LEDs RUN, POWER and ERROR show the current status of the controller. POWER
LEDs for indicating
shows that the power is switched on, RUN lights up when the PLC program is being exe-
the operating status
cuted and ERROR lights up when an error or malfunction is registered.
The battery protects the contents of the MELSELC PLCs volatile RAM memory in the
event of a power failure (FX2N, FX2NC, FX3GC, FX3U and FX3Uc only). It protects the
Memory battery
latched ranges for timers, counters and relays. In addition to this it also provides power for
the integrated real-time clock when the PLCs power supply is switched off.
MELSEC PLCs have two operating modes, RUN and STOP. The RUN/STOP switch
allows you to switch between these two modes manually.
RUN/STOP switch
In RUN mode the PLC executes the program stored in its memory.
In STOP mode program execution is stopped.
FX Beginners Manual 2 13
An Introduction to Programming Structure of a Program Instruction
3 An Introduction to Programming
Device
X0 Device
AND X0
Instruction Instruction
The instruction describes what is to be done, i.e. the function you want the controller to per-
form. The operand or device is what you want to perform the function on. Its designation con-
sists of two parts, the device name and the device address:
X0
Device name Device address
Examples of devices:
Device name Type Function
X Input Input terminal on the PLC (e.g. connected to a switch)
Y Output Output terminal on the PLC (e.g. for a contactor or lamp)
M Relay A buffer memory in the PLC that can have two states, ON or OFF
T Timer A time relay that can be used to program timed functions
C Counter A counter
Data storage in the PLC in which you can store things like measured
D Data register
values and the results of calculations.
FX Beginners Manual 31
Bits, Bytes and Words An Introduction to Programming
Bit 15 Bit 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 Byte 1 Byte
1 Word
Since a data register is 16 bits wide it can store signed values between -32,768 and +32,767
(see Chapter 3.3). When larger values need to be stored two words are combined to form a
32-bit long word, which can store signed values between -2,147,483,648 and +2,147,483,647.
Counters make use of this capability, for example.
Decimal numbers
The decimal number system is the system we use most commonly in everyday life. It is a posi-
tional base 10 system, in which each digit (position) in a numeral is ten times the value of the
digit to its right. After the count reaches 9 in each position the count in the current position is
returned to 0 and the next position is incremented by 1 to indicate the next decade (9 10,
99
100, 199 1,000 etc).
Base: 10
Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
In the MELSEC FX family of PLCs decimal numbers are used for entering constants and the
setpoint values for timers and counters. Device addresses are also entered in decimal format,
with the exception of the addresses of inputs and outputs.
Binary numbers
Like all computers a PLC can only really distinguish between two states, ON/OFF or 0/1. These
binary states are stored in individual bits. When numbers need to be entered or displayed in
other formats the programming software automatically converts the binary numbers into the
other number systems.
Base: 2
Digits: 0 and 1
3 MITSUBISHI ELECTRIC
15
An Introduction to Programming Number Systems
When binary numbers are stored in a word (see above) the value of each digit (position) in the
word is one power of 2 higher than that of the digit to its right. The principle is exactly the same
as in decimal representation, but with increments of 2 instead of 10 (see graphic):
2 0 1 2 8 256
21 2 29 512
2 2 4 2 10 1024
2 3 8 211 2048
2 4 16 2 12 4096
25 32 213 8192
2 6 64 2 14 16384
2 7 128 2 15 32768*
* In binary values bit 15 is used to represent the sign (bit 15=0: positive value, bit 15=1: negative value)
To convert a binary value to a decimal value you just have to multiply each digit with a value of 1
by its corresponding power of 2 and calculate the sum of the results.
Hexadecimal numbers
Hexadecimal numbers are easier to handle than binary and it is very easy to convert binary
numbers to hexadecimal. This is why hexadecimal numbers are used so often in digital tech-
nology and programmable logic controllers. In the controllers of the MELSEC FX family hexa-
decimal numbers are used for the representation of constants. In the programming manual
and other manuals hexadecimal numbers are always identified with an H after the number to
avoid confusion with decimal numbers (e.g. 12345H).
Base: 16
Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (the letters A, B, C, D, E and F represent the
decimal values 10, 11, 12, 13, 14 and 15)
The hexadecimal system works in the same way as the decimal system you just count to FH
(15) instead of to 9 before resetting to 0 and incrementing the next digit (FH 10H, 1FH
20H, 2FH 30H, FFH 100H etc). The value of digit is a power of 16, rather than a power of
10:
1A7FH
160= 1 (in this example: 15 x 1 = 15)
161= 16 (in this example: 7 x 16 = 112)
162= 256 (in this example: 10 x 256 = 2560)
163= 4096 (in this example: 1 x 4096 = 4096)
6783 (decimal)
FX Beginners Manual 33
Number Systems An Introduction to Programming
The following example illustrates why it is so easy to convert binary values hexadecimal
values:
1 1 1 1 0 1 1 0 1 0 1 1 1 0 0 1 Binary
15 5 11 9 Decimal*
F 5 B 9 Hexadecimal
* Converting the 4-bit blocks to decimal values does not directly produce a value that corresponds to the complete
16-bit binary value! In contrast, the binary value can be converted directly to hexadecimal notation with exactly the
same value as the binary value.
Octal numbers
Inputs X8 and X9 and outputs Y8 and Y9 do not exist on the base units of the MELSEC FX fam-
ily. This is because the inputs and outputs of MELSEC PLCs are numbered using the octal
number system, in which the digits 8 and 9 dont exist. Here, the current digit is reset to 0 and
the digit in the next position is incremented after the count reaches 7 (0 7, 10 17, 70 77,
100 107 etc).
Base: 8
Digits: 0, 1, 2, 3, 4, 5, 6, 7
Summary
The following table provides an overview of the four different number systems:
34 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
Chapter
INV Invert Inverts the result of an operation
3.4.12
FX Beginners Manual 35
An Introduction to Programming The Basic Instruction Set
A circuit in a program always begins with an LD- or LDI instruction. These instructions can be
performed on inputs, relays, timers and counters.
For examples of using these instructions see the description of the OUT instruction in the next
section.
The OUT instruction can be used to terminate a circuit. You can also program circuits that use
multiple OUT instructions as their result. This is not necessarily the end of the program, how-
ever. The device set with the result of the operation using OUT can then be used as an input
signal state in subsequent steps of the program.
ON (1)
X0
OFF (0)
ON (1)
Y0
OFF (0)
The condition of the LD instruction (poll for signal state 1) is true so the result of the t
operation is also true (1) and the output is set.
36 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
ON (1)
X0
OFF (0)
ON (1)
Y0
OFF (0)
X004 X005
would simply overwrite the
M10
result of the first assign-
ment.
X001 X003
with modification shown on
M10
the right. This takes all the
required input conditions X004 X005
into account and sets the
result correctly.
FX Beginners Manual 37
An Introduction to Programming The Basic Instruction Set
Before we continue with the description of the rest of the instructions we should first describe
how signals from switches, sensors and so on can be used in your programs.
PLC programs need to be able respond to signals from switches, buttons and sensors to per-
form the correct functions. It is important to understand that program instructions can only poll
the binary signal state of the specified input irrespective of the type of input and how it is
controlled.
As you can imagine, this means that when
When a make contact is ope-
you are writing your program you need to be
Make aware whether the element connected to the
rated the input is set (ON, sig-
contact
nal state 1) input of your PLC is a make or a break device.
An input connected to a make device must be
treated differently to an input connected to a
break device. The following example illustra-
When a break contact is ope-
Break tes this.
rated the input is reset (OFF,
contact
signal state 0)
Usually, switches with make contacts are used. Sometimes, however, break contacts are used
for safety reasons for example for switching off drives (see section 3.5).
The illustration below shows two program sequences in which the result is exactly the same,
even though different switch types are used: When the switch is operated the output is set
(switched on).
24 V
X000
LD X000
0 Y000
OUT Y000
X0
Switch operated
ON
X0
OFF
ON
Y0
OFF
t
24 V
X000
LDI X000
0 Y000
OUT Y000
X0
Switch operated
ON
X0
OFF
ON
Y0
OFF
38 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
Note that the programming software uses the same icons and function keys for the AND and
ANI instructions as for the LD and LDI instructions. When you program in Ladder Diagram for-
mat the software automatically assigns the correct instructions on the basis of the insertion
position.
When you program in Instruction List format remember that you cant use the AND and ANI
instructions at the beginning of circuit (a program line in ladder diagram format)! Circuits must
begin with an LD or LDI instruction (see Chapter 3.4.1).
In the example output Y0 is only switched on when inputs X0 and X1 are both on:
ON (1)
X0
OFF (0)
ON (1)
X1
OFF (0)
ON (1)
Y0
OFF (0)
FX Beginners Manual 39
An Introduction to Programming The Basic Instruction Set
In the example output Y0 is only switched on when input X0 is on and input X1 is off:
ON (1)
X0
OFF (0)
ON (1)
X1
OFF (0)
ON (1)
Y0
OFF (0)
3 10 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
3.4.5 OR operations
Example of an OR instruction
Ladder Diagram Instruction List
X000 0 LD X000
0 Y000 1 OR X001
2 OUT Y000
X001
OR instruction
ON (1)
X1
OFF (0)
ON (1)
Y0
OFF (0)
FX Beginners Manual 3 11
An Introduction to Programming The Basic Instruction Set
X000 0 LD X000
0 Y000 1 ORI X001
2 OUT Y000
X001
ORI instruction
ON (1)
X0
OFF (0)
ON (1)
X1
OFF (0)
ON (1)
Y0
OFF (0)
Although ANB- and ORB are PLC instructions they are only displayed and entered as connect-
ing lines in the Ladder Diagram display. They are only shown as instructions in Instruction List
format, where you must enter them with their acronyms ANB and ORB.
Both instructions are entered without devices and can be used as often as you like in a pro-
gram. However, the maximum number of LD and LDI instructions is restricted to 8, which effec-
tively also limits the number of ORB or ANB instructions you can use before an output instruc-
tion to 8 as well.
3 12 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
ANB instruction
X000 X001
0 Y007
M2 M10
Instruction List
0 LD X000
1 ORI M2 1st parallel connection (OR operation)
2 LDI X001
3 OR M10 2nd parallel connection (OR operation)
4 ANB ANB instruction connecting both OR operations
5 OUT Y007
In this example output Y07 is switched on if input X00 is 1, or if relay M2 is 0 and input X01 is
0, or if relay M10 is 1.
X000 X001
0 Y007
Instruction List
0 LD X000
1 ANI X001 1st serial connection (AND operation)
2 LDI M2
3 AND M10 2nd serial connection (AND operation)
4 ORB ORB instruction connecting both AND operations
5 OUT Y007
In this example output Y07 is switched on if input X00 is 1 and input X01 is 0, or if relay M2 is
0 and relay M10 is 1.
FX Beginners Manual 3 13
An Introduction to Programming The Basic Instruction Set
In PLC programs you will often need to detect and respond to the rising or falling edge of a bit
devices switching signal. A rising edge indicates a switch of the device value from 0 to 1, a
falling edge indicates a switch from 1 to 0.
During program execution operations that respond to rising and falling pulses only deliver a
value of 1 when the signal state of the referenced device changes.
When do you need to use this? For example, suppose you have a conveyor belt with a sensor
switch that activates to increment a counter every time a package passes it on the belt. If you
dont use a pulse-triggered function you will get incorrect results because the counter will
increment by 1 in every program cycle in which the switch registers as set. If you only register
the rising pulse of the switch signal the counter will be incremented correctly, increasing by 1
for each package.
Note Most applied instructions can also be executed by pulse signals. For details see chapter . 5).
ON (1)
X1
OFF (0)
M0
0
3 14 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
1
M235
0
ON (1)
X10
OFF (0)
1
M374
0
If X10 is off (0) and M235 is on (1) relay M374 is switched on for the t
duration of a single program cycle.
With the exception of the pulse trigger characteristic the functions of the LDP, LDF, ANDP,
ANDF, ORP and ORF instructions are identical to those of the LD, AND and OR instructions.
This means that you can use pulse-trigger operations in your programs in exactly the same
way as the conventional versions.
CD
The signal state of an OUT instruction will normally only remain 1 as long as the result of the
operation connected to the OUT instruction evaluates to 1. For example, if you connect a
pushbutton to an input and a lamp to the corresponding output and connect them with an LD
and an OUT instruction the lamp will only remain on while the button remains pressed.
The SET instruction can be used to use a brief switching pulse to switch an output or relay on
(set) and leave them on. The device will then remain on until you switch it off (reset) with a RST
instruction. This enables you to implement latched functions or switch drives on and off with
pushbuttons. (Outputs are generally also switched off when the PLC is stopped or the power
supply is turned off. However, some relays also retain their last signal state under these condi-
tions for example a set relay would then remain set.)
To enter a SET or RST instruction in Ladder Diagram format just click on the icon shown in the
table above in GX Works2, or press the F8 key. Then enter the instruction and the name of the
device you want to set or reset, for example SET Y1.
FX Beginners Manual 3 15
An Introduction to Programming The Basic Instruction Set
X001
0 SET M0 0 LD X001
1 SET M0
X002 2 LD X002
2 RST M0 3 RST M0
X1
X2
M0
This example is a program for controlling a pump to fill a container. The pump is controlled
manually with two pushbuttons, ON and OFF. For safety reasons a break contact is used for the
OFF function. When the container is full a level sensor automatically switches the pump off.
Ladder Diagram Instruction List
X001
0 SET Y000 0 LD X001
Pump Pump 1 SET Y000
ON 2 LDI X002
3 OR X003
4 RST Y000
X002
2 RST Y000
Pump Pump
OFF
X003
Level
sensor
3 16 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
The MPS, MRD and MPP instructions are used to store the results of operations and interme-
diate values in a memory called the stack, and to read and delete the stored results. These
instructions make it possible to program multi-level operations, which makes programs easier
to read and manage.
When you enter programs in Ladder Diagram format these instructions are inserted automati-
cally by the programming software. The MPS, MRD and MPP instructions are only actually
shown when you display your program in Instruction List format, and they must also be entered
manually when you program in this format.
0 Y000 1 MPS
2 AND X001
MPS X002 3 OUT Y000
Y001 4 MRD
5 AND X002
MRD 6 OUT Y001
X003
Y002 7 MPP
8 AND X003
MPP 9 OUT Y002
To make the advantage of these instructions clearer the example below shows the same pro-
gram sequence programmed without MPS, MRD and MPP:
When you use this approach you must program the devices (X0 in this example) repeatedly.
This results in more programming work, which can make quite a difference in longer programs
and complex circuit constructions.
In the last output instruction you must use MPP instead of MRD to delete the stack. You can use
multiple MPS instructions to create operations with up to 11 levels. For more examples of how
to use the MPS, MRD and MPP instructions see the Programming Manual for the FX Family.
FX Beginners Manual 3 17
An Introduction to Programming The Basic Instruction Set
* PLC and PLF instructions can be used to set outputs (Y) and relays (M).
These instructions effectively convert a static signal into a brief pulse, the duration of which
depends on the length of the program cycle. If you use PLS instead of an OUT instruction the
signal state of the specified device will only be set to 1 for a single program cycle, specifically
during the cycle in which the signal state of the device before the PLS instruction in the circuit
switches from 0 to 1 (rising edge pulse).
The PLF instruction responds to a falling edge pulse and sets the specified device to 1 for a
single program cycle, during the cycle in which the signal state of the device before the PLF
instruction in the circuit switches from 1 to 0 (falling edge pulse).
To enter a PLS or PLF instruction in Ladder Diagram format click in the GX Works2 toolbar on
the tool icon shown above or press F8. Then enter the instruction and the corresponding
device to be set in the dialog, e.g. PLS Y2.
X000
0 PLS M0 0 LD X000
1 PLS M0
M0 2 LD M0
2 SET Y000 3 SET Y000
4 LD X001
X001 5 PLF M1
4 PLF M1 6 LD M1
7 RST Y000
M1
6 RST Y000
M0
Relays M0 and M1 are only
switched on for the duration of a
single program cycle.
M1
Y0
3 18 MITSUBISHI ELECTRIC
The Basic Instruction Set An Introduction to Programming
The Master Control Set (MC) and Reset (MCR) instructions can be used to set conditions on
the basis of which individual program blocks can be activated or deactivated. In Ladder Dia-
gram format a Master Control instruction functions like a switch in the left-hand bus bar that
must be closed for the following program block to be executed.
N0 M10
X002
The switch does not have to 4 Y003
be programmed manually and
it is only actually displayed X003
during program execution in 6 Y004
Monitor mode.
8 MCR N0
X002 X004
10 M155
Instruction List
0 LD X001
1 MC N0 M10
4 LD X002
5 OUT Y003
6 LD X003
7 OUT Y004
8 MCR N0
10 LD X002
11 AND X004
12 OUT M155
In the example above the program lines between the MC and MCR instructions are only exe-
cuted when input X001 is on.
The section of the program to be executed can be specified with the nesting address N0
through N7, which allows you to enter multiple MC instructions before the closing MCR instruc-
tion. (See the FX Programming Manual for an example of nesting.) Addressing a Y or M device
specifies a make contact. This contact activates the program section when the input condition
for the MC instruction evaluates true.
FX Beginners Manual 3 19
An Introduction to Programming The Basic Instruction Set
If the input condition of the MC instruction evaluates false the states of the devices between the
MC and MCR instructions change as follows:
Latched timers and counters and devices that are controlled with SET an RST instructions
retain their current state.
Unlatched timers and devices that are controlled with OUT instructions are reset.
(See chapter 4 for details on these timers and counters.)
The INV instruction is used on its own without any operands. It inverts the result of the opera-
tion that comes directly before it:
If the operation result was 1 it is inverted to 0
If the operation result was 0 it is inverted to 1.
X001 X002
0 Y000 0 LD X001
1 AND X002
2 INV
INV instruction
3 OUT Y000
1
X002
0
1
Operation result before the
INV instruction
0
1
Operation result after the
INV instruction Y000
0
The INV instruction can be used when you need to invert the result of a complex operation. It
can be used in the same position as the AND and ANI instructions.
The INV instruction cannot be used at the beginning of an operation (circuit) like an LD, LDI,
LDP or LDF instruction.
3 20 MITSUBISHI ELECTRIC
Safety First! An Introduction to Programming
+24 V
In this example the contactor for a drive sys-
tem can also be switched off manually with
ON OFF an Emergency OFF switch.
EMERG.
OFF X000 X001 X002
0V
This ensures that if there is a cable break the drive is switched off automatically and it is not
possible to activate the drive. In addition to this, switching off has priority because it is pro-
cessed by the program after the switch on instruction.
Interlock contacts
If you have two outputs that should never both be switched on at the same time for example
outputs for selecting forward or reverse operation for a motor the interlock for the outputs
must also be implemented with physical contacts in the contactors controlled by the PLC. This
is necessary because only an internal interlock is possible in the program and an error in the
PLC could cause both outputs to be activated at the same time.
FX Beginners Manual 3 21
An Introduction to Programming Safety First!
The example on the right shows such an inter- X000 X001 X002
lock with contactor contacts. Here it is physi-
cally impossible for contactors K1 and K2 to be
switched on at the same time.
COM Y000 Y001
K2 K1
K1 K2
Automatic shutdown
When a PLC is used to control motion sequences in which hazards can arise when compo-
nents move past certain points additional limit switches must be installed to interrupt the move-
ment automatically. These switches must function directly and independently of the PLC. See
Chapter 3.6.2 for an example of such an automatic shutdown facility.
3 22 MITSUBISHI ELECTRIC
Programming PLC Applications An Introduction to Programming
The first step is to have a clear concept of what you want to do. This means that you need to
take a bottom-up approach and write a clear description of what it is you want the PLC to do.
Task description
The objective is to create an alarm system with several alarm circuits and a delay function for
arming and disarming the system.
The system will be armed with a key switch, with a 20-second delay between turning the
switch and activation. This provides enough time for the user to leave the house without
tripping the alarm. During this delay period a display will show whether the alarm circuits
are closed.
An alarm will be triggered when one of the circuits is interrupted (closed-circuit system,
also triggers an alarm when a circuit is sabotaged). In addition to this we want to show
which circuit triggered the alarm.
When an alarm is triggered a siren and a blinking alarm lamp are activated after a delay of
10 seconds. (The acoustic and visual alarms are activated after a delay to make it possible
to disarm the system after entering the house. This is also why we want to use a special
lamp to show that the system is armed.)
The siren will only be sounded for 30 seconds, but the alarm lamp will remain activated
until the system is disarmed.
A key-operated switch will also be used to deactivate the alarm system.
FX Beginners Manual 3 23
An Introduction to Programming Programming PLC Applications
Programming
Now we can start writing the program. Whether relay devices are going to be needed and if so
how many usually only becomes clear once you actually start programming. What is certain in
this project is that we are going to need three timers for important functions. If we were using a
hard-wired controller we would use timer relays for this. In a PLC you have programmable elec-
tronic timers (see section 4.3). These timers can also be defined before we start programming:
When the key-operated switch is turned to ON the delay implemented with timer T0 starts to
run. After 20 seconds (K200 = 200 x 0.1s = 20s) the indicator lamp connected to output Y000
lights up, indicating that the system is armed.
Monitor alarm circuits and trigger alarm signal
Ladder Diagram Instruction List
X002 Y000
6 LDI X002
6 SET M1
7 AND Y000
8 SET M1
SET Y003 9 SET Y003
10 LDI X003
X003 Y000 11 AND Y000
10 SET M1
12 SET M1
13 SET Y004
SET Y004 14 LDI X004
15 AND Y000
X004 Y000 16 SET M1
14 SET M1 17 SET Y005
SET Y005
Output Y000 is polled in this routine to check whether the alarm system is armed. You could
also use a relay here that would then be set and reset together with Y000. An interruption of an
alarm circuit will only set relay M1 (indicating that an alarm has been triggered) if the alarm sys-
tem is actually armed. In addition to this outputs Y003 through Y005 are used to indicate which
alarm circuit triggered the alarm. Relay M1 and the corresponding alarm circuit output will
remain set even when the alarm circuit is closed again.
3 24 MITSUBISHI ELECTRIC
Programming PLC Applications An Introduction to Programming
M1 K100
18 LD M1
18 T1
19 OUT T1 K100
T1 K300 22 LD T1
22 T2 23 OUT T2 K300
When an alarm is triggered (M1 switches to 1) the 10s delay timer starts. After the 10 seconds
T1 then starts timer T2, which is set to 30 seconds, and the siren activation time begins.
Alarm display (switch on siren and rotating beacon)
Ladder Diagram Instruction List
T1 T2
26 Y001 26 LD T1
27 ANI T2
T1 28 OUT Y001
29 Y002 29 LD T1
30 OUT Y002
The siren is activated after the 10s activation delay (T1) and remains on while timer T2 is run-
ning. After the end of the 30s activation period (T2) the siren deactivates. The rotating beacon
is also switched on after the 10s delay. The following illustration shows the signal sequence
generated by this section of the program:
1
M1
0
1
T1 10 s
0
1
T2 30 s
0
ON
Y1
OFF
ON
Y2
OFF
FX Beginners Manual 3 25
An Introduction to Programming Programming PLC Applications
X001
31 RST Y000
31 LDI X001
32 RST Y000
33 RST Y001
RST Y001
34 RST Y002
35 RST Y003
RST Y002 36 RST Y004
37 RST Y005
RST Y003 38 RST M1
RST Y004
RST Y005
RST M1
When the alarm system is switched off with the key-operated switch all the outputs used by the
program and the relay M1 are all reset. If an alarm was triggered the interrupted alarm circuit
which was released until the system was switched off is displayed.
3 26 MITSUBISHI ELECTRIC
Programming PLC Applications An Introduction to Programming
S/S 0 V
N
PE
L1
100-240 S/S X1 X3 X5 X7
VAC L N X0 X2 X4 X6
0 1 2 3
4 5 6 7
MITSUBISHI IN
POWER
RUN
ERROR
FX1S-14MR
OUT
0 1 2 3
4 5
0V Y0 Y1 Y2 Y4 14MR
24V COM0 COM1 COM2 Y3 Y5 -ES/UL
H0 E1 H1 H2 H3 H4
FX Beginners Manual 3 27
An Introduction to Programming Programming PLC Applications
Task description
We want to implement a control system for a warehouses rolling shutter gate that will enable
easy operation from both outside and inside. Safety facilities must also be integrated in the
system.
Warning lamp H1
S3
S7
S1 S5
STOP
S6
S0 S2 S4
Operation
It must be possible to open the gate from outside with the key-operated switch S1 and to
close it with pushbutton S5. Inside the hall it should be possible to open the gate with
pushbutton S2 and to close it with S4.
An additional time switch must close the gate automatically if it is open for longer than
20 s.
The states gate in motion and gate in undefined position must be indicated by a blin-
king warning lamp.
Safety facilities
A stop button (S0) must be installed that can halt the motion of the gate immediately at any
time, stopping the gate in its current position. This Stop switch is not an Emergency OFF
function, however! The switch signal is only processed by the PLC and does not switch any
external power connections.
A photoelectric barrier (S7) must be installed to identify obstacles in the gateway. If it regis-
ters an obstacle while the gate is closing the gate must open automatically.
Two limit switches must be installed to stop the gate motor when the gate reaches the fully
open (S3) and fully closed (S6) positions.
3 28 MITSUBISHI ELECTRIC
Programming PLC Applications An Introduction to Programming
X001
0 PLS M100 0 LD X001
The signals for opening the gate are processed first: When key-operated switch S1 or button
S2 are operated a signal is generated and M001 is set to a signal state of 1 for just one pro-
FX Beginners Manual 3 29
An Introduction to Programming Programming PLC Applications
gram cycle. This ensures that the gate cannot be blocked if the button sticks or of the operator
does not release it.
It must be ensured that the drive can only be switched on when it is not already turning in the
opposite direction. This is implemented by programming the PLC so that M1 can only be set
when M2 is not set.
NOTE The motor direction interlock must also be complemented by an additional interlock with
physical contactors outside the PLC (see wiring diagram).
A similar approach is used to process the signals from buttons S4 and S5 for closing the gate.
Here, M1 is polled for a signal state of 0 to ensure that M1 and M2 cannot both be set at the
same time.
Close gate automatically after 20 seconds
Ladder Diagram Instruction List
X003 K200
14 T0 14 LDI X003
15 OUT T0 K200
T0 18 LD T0
18 SET M2 19 SET M2
When the gate is open limit switch S3 activates and input X3 is switched off.(For safety reasons
S3 is a break contact.) When this happens timer T0 starts the 20s delay (K200 = 200 x 0.1s =
20s). When the timer reaches 20s relay M2 is set and the gate is closed.
Stop gate with STOP switch
Ladder Diagram Instruction List
X000
20 RST M1 20 LDI X000
21 RST M1
RST M2
22 RST M2
Pressing the STOP button (S0) resets relays M1 and M2, stopping the gate motor.
Identifying obstacles with the photoelectric barrier
Ladder Diagram Instruction List
X007 M2
23 RST M2 23 LD X007
24 AND M2
25 RST M2
SET M1 26 SET M1
If an obstacle is registered by the photoelectric barrier while the gate is closing relay M2 is
reset and the close operation is halted. After this relay M1 is set, opening the gate again.
3 30 MITSUBISHI ELECTRIC
Programming PLC Applications An Introduction to Programming
X003
27 RST M1 27 LDI X003
28 RST M1
X006 29 LDI X006
29 RST M2 30 RST M2
When the gate is open limit switch S3 is activated and input X3 is switched off. This resets relay
M1, turning off the motor. When the gate is fully closed S6 is activated, X6 is switched off and
M2 is reset, turning off the motor. For safety reasons the limit switches are break contacts. This
ensures that the motor is also switched off automatically (or cannot be switched on) if the con-
nection between the switch and the input is interrupted.
NOTE The limit switches must be wired so that they also switch off the motor automatically without
support from the PLC (see wiring diagram).
M1
31 Y001 31 LD M1
M2 33 LD M2
33 Y002 34 OUT Y002
At the end of the program the signal states of relays M1 and M2 are transferred to outputs Y001
and Y002.
Warning lamp: Gate in Motion and Gate in Undefined Position
Ladder Diagram Instruction List
35 LD X003
X003 X006 M8013
36 AND X006
35 Y000
37 AND M8013
38 OUT Y000
If neither of the limit switches is activated this means that the gate is being opened or closed or
has been stopped in an intermediate position. In all these situations the warning lamp blinks.
The blink speed is controlled with special relay M8013, which is automatically set and reset at
1s intervals (see Chapter 4.2).
FX Beginners Manual 3 31
An Introduction to Programming Programming PLC Applications
Photoelectric barrier
Close gate (outside)
Open gate (outside)
L1
N
PE
S/S 0 V
100-240 S/S X1 X3 X5 X7
VAC L N X0 X2 X4 X6
0 1 2 3
4 5 6 7
MITSUBISHI IN
POWER
RUN
ERROR
FX1S-14MR
OUT
0 1 2 3
4 5
0V Y0 Y1 Y2 Y4 14MR
24V COM0 COM1 COM2 Y3 Y5 -ES/UL
Interlock by contactor
K2 K1
Deactivation by limit switches
S3 S6
H1 K1 K2
Open gate
Warning lamp
Close gate
3 32 MITSUBISHI ELECTRIC
Inputs and Outputs Devices in Detail
4 Devices in Detail
The devices in PLCs are used directly in control program instructions. Their signal states can
be both read and changed by the PLC program. A device reference has two parts:
the device name and
the device address.
Example of a device reference (e.g. input 0):
X0
Device name Device address
NOTE The PLC cannot change the state of inputs. For example, it is not possible to execute an OUT
instruction on an input device.
If an output instruction is executed on an output the result of the current operation (the signal
state) is applied to the output terminal of the PLC. If it is a relay output the relay closes (all relays
have make contacts). If it is a transistor output the transistor makes the connection and acti-
vates the connected circuit.
The identifier for output devices is Y. Outputs can be used in logic operation instructions as
well as with output instructions. However, it is important to remember that you can never use an
output instruction on the same output more than once (see also section 3.4.2).
42 MITSUBISHI ELECTRIC
Devices in Detail Inputs and Outputs
The following table provides a general overview of the inputs and outputs of the controllers of
the MELSEC FX family.
(i)
With expansion modules, the total number of inputs can be increased to max. 84 (X123) and the total number of
outputs can be increased to max. 64 (X77). However, the sum of all inputs and outputs cannot exceed 128.
With expansion modules, the total number of inputs can be increased to max. 128 (X177) and the total number of
outputs can be increased to max. 128 (Y177). However, the sum of all inputs and outputs cannot exceed 128.
FX Beginners Manual 41
Inputs and Outputs Devices in Detail
FX Beginners Manual 43
Devices in Detail Relays
4.2 Relays
In your PLC programs you will often need to store intermediate binary results (a signal state of
0 or 1) temporarily for future reference. The PLC has special memory cells available for this
purpose known as auxiliary relays, or relays for short (device identifier: "M").
You can store the binary result of an operation in a relay, for example with an OUT instruction,
and then use the result in future operations. Relays help to make programs easier to read and
also reduce the number of program steps: You can store the results of operations that need to
be used more than once in a relay and then poll it is often as you like in the rest of the program.
M1
M1
Poll for signal state 1 (relay set)
M1
Poll for signal state 0 (has the relay been reset?)
In addition to normal relays the FX controllers also have retentive or latched relays. The nor-
mal unlatched relays are all reset to a signal state of 0 when the PLC power supply is switched
off, and this is also their standard state when the controller is switched on. In contrast to this,
latched relays retain their current states when the power is switched off and on again.
Relay types
Device
Unlatched relays Latched relays
Device identifier M
Device type Bit device
Possible values fr a device 0 or 1
Device address format Decimal
FX1S 384 (M0M383) 128 (M384M511)
FX1N 384 (M0M383) 1152 (M384M1535)
FX2N CD
524 (M500M1023)
500 (M0M499)
FX2NC 2048 (M1024M3071)
FX3G
Number of devices and 384 (M0M383)
addresses FX3GC @ 1152 (M384M1535)
6144 (M1536M7679)
FX3GE
384 (M0M383)
FX3S 128 (M384M511)
1024 (M512M1535)
FX3U CD
524 (M500M1023)
500 (M0M499)
FX3UC 6656 (M1024M7679)
(i)
You can also configure these relays as latched relays with the PLC parameters.
You can also configure these relays as unlatched relays with the PLC parameters.
@
If the optional battery is installed, the function of latched registers can be assigned to these registers in the PLC
parameters. They are then buffered by the battery.
44 MITSUBISHI ELECTRIC
Relays Devices in Detail
In addition to the relays that you can switch on and off with the PLC program there is also
another class of relays known as special or diagnostic relays. These relays use the address
range starting with M8000. Some contain information on system status and others can be used
to influence program execution. The following table shows a few examples of the many special
relays available.
Special Program processing
Function
relay options
M8000 When the PLC is in RUN mode this relay is always set to 1.
M8001 When the PLC is in Run mode this relay is always set to 0.
Initialisation pulse (following activation of RUN mode this relay is set
M8002
to 1 for the duration of one program cycle. Poll signal state
M8004 PLC error
M8005 Low battery voltage
M8013 Clock signal pulse: 1 second
Clear all devices (except data registers D) that are not registered as
M8031
battery-latched. Poll signal state
Disable outputs the PLC outputs remain off but program execution Set signal state.
M8034
continues.
FX Beginners Manual 45
Devices in Detail Timers
4.3 Timers
When you are controlling processes you will often want to program a specific delay before
starting and stopping certain operations. In hard-wired controllers this is achieved with timer
relays. In PLCs this is achieved with programmable internal timers.
Timers are really just counters that count the PLCs internal clock signals (e.g. 0.1s pulses).
When the counter value reaches the setpoint value the timers output is switched on.
All timers function as make delay switches and are activated with a 1 signal. To start and reset
timers you program them in the same way as outputs. You can poll the outputs of timers as
often as you like in your program.
X0 K123
0 T200 0 LD X0
1 OUT T200 K123
T200 5 OUT Y0
4 Y0
In the above example timer T200 is started when input X0 is switched on. The setpoint value is
123 x 10ms = 1.23 s, so T200 switches on output Y0 after a delay of 1.23 s. The signal
sequence generated by the following program example is as follows:
You can also specify the timer setpoint value indirectly with a decimal value stored in a data
register. See section 4.6.1 for details.
46 MITSUBISHI ELECTRIC
Timers Devices in Detail
Retentive timers
In addition to the normal timers described above, all controllers covered in this manual except
the FX1S series also have retentive timers that retain their current time counter value even if
the device controlling them is switched off.
The current timer counter value is stored in a memory that is retained even in the event of a
power failure.
Example of a program using a retentive timer:
X1 K345
0 T250 0 LD X0
1 OUT T250 K345
4 LD T250
T250
4 Y1 6 LD X2
7 RST T250
X2
6 RST T250
Timer T250 is started when input X0 is switched on. The setpoint value is 345 x 0.1 s = 34.5s.
When the setpoint value is reached T250 switches output Y1 on. Input X2 resets the timer and
switches its output off.
FX Beginners Manual 47
Devices in Detail Timers
(i)
These timers are only available when special relay M8028 is set ("1"). The total number of 100 ms timers is then
reduced to 32 (T0T31).
When special relay M8028 is set ("1"), the timers T32 to T62 operate as 10 ms timers.
48 MITSUBISHI ELECTRIC
Counters Devices in Detail
4.4 Counters
The programmers of the FX family also have internal counters that you can use for program-
ming counting operations.
Counters count signal pulses that are applied to their inputs by the program. The counter out-
put is switched on when the current counter value reaches the setpoint value defined by the
program. Like timers, counter outputs can also be polled as often as you like in the program.
Example of a program using a counter:
X0
0 RST C0 0 LD X0
1 RST C0
10
9
8
7
6
5
4 Once the counter value has reached the set-
3
2 point value any additional pulses on input X1
1
0 no longer have any effect on the counter.
Y0
There are two kinds of counters, 16-bit counters and 32-bit counters. As their names indicate,
they can count up to either 16-bit or 32-bit values and they use 16 bits and 32 bits, respectively,
to store their setpoint values. The following table shows the key features of these counters.
FX Beginners Manual 49
Devices in Detail Counters
In addition to normal counters the controllers of the MELSEC FX family also have high-speed
counters. These are 32-bit counters that can process high-speed external counter signals
read on inputs X0 to X7. In combination with some special instructions it is very easy to use
these counters to automate positioning tasks and other functions.
High-speed counters use an interrupt principle: The PLC program is interrupted and responds
immediately to the counter signal. For a detailed description of high-speed counters please
refer to the Programming Manual for the MELSEC FX family.
4 10 MITSUBISHI ELECTRIC
Counters Devices in Detail
Counter overview
Counter types
Device
Normal counters Retentive counters
Device identifier C
Device type (for setting and polling) Bit device
Possible device values (counter output) 0 or 1
Device address format Decimal
As a decimal integer constant. The setpoint can
be set either directly in the instruction or indi-
Counter setpoint value entry
rectly in a data register (two data registers for
32-bit counters).
16 bit counter 16 (C0C15) 16 (C16C31)
FX1S 32 bit counter
32 bit high-speed counter 21 (C235C255)
16 bit counter 16 (C0C15) 184 (C16C199)
FX1N 32 bit counter 20 (C200C219) 15 (C220C234)
32 bit high-speed counter 21 (C235C255)
16 bit counter 100 (C0C99) 100 (C100C199)
FX2N
32 bit counter 20 (C200C219) 15 (C220C234)
FX2NC
Number of devices 32 bit high-speed counter 21 (C235C255)
and addresses 16 bit counter 16 (C0C15) 184 (C16C199)
FX3G
FX3GC 32 bit counter 20 (C200C219) 15 (C220C234)
FX3GE 32 bit high-speed counter 21 (C235C255)
16 bit counter 16 (C0C15) 16 (C16C31)
FX3S 32 bit counter 35 (C200C234)
32 bit high-speed counter 21 (C235C255)
16 bit counter 100 (C0C99) 100 (C100C199)
FX3U
32 bit counter 20 (C200C219) 15 (C220C234)
FX3UC
32 bit high-speed counter 21 (C235C255)
(i)
The current counter values of retentive counters are retained when the power supply is switched off.
You can set the PLC parameters to configure whether the current values of these counters should be retained
when the power supply is switched off.
FX Beginners Manual 4 11
Devices in Detail Registers
4.5 Registers
The PLCs relays are used to store the results of operations temporarily. However, relays can
only store values of On/Off or 1/0, which means that they are not suitable for storing measure-
ments or the results of calculations. Values like this can be stored in the registers of the con-
trollers of the FX family.
Registers are 16 bits or one word wide (see section 3.2). You can create double word regis-
ters capable of storing 32-bit values by combining two consecutive data registers.
Register:
16 bit
2 14 2 13 2 12 2 11 2 10 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0
0: = positive value
1: = negative value
0: = positive value
1: = negative value
A normal register can store values from 0000H FFFFH (-32,768 32,767). Double-word reg-
isters can store values from 00000000H FFFFFFFFH (-2,147,483,648 2,147,483,647).
The controllers of the FX family have a large number of instructions for using and manipulating
registers. You can write and read values to and from registers, copy the contents of registers,
compare them and perform math functions on their contents (see chapter 5).
Data registers can be used as memory in your PLC programs. A value that the program writes
to a data register remains stored there until the program overwrites it with another value.
When you use instructions for manipulating 32-bit data you only need to specify the address of
a 16-bit register. The more significant part of the 32-bit data is automatically written to the next
consecutive register. For example, if you specify register D0 to store a 32-bit value D0 will con-
tain bits 0 through 15 and D1 will contain bits 16 through 31.
4 12 MITSUBISHI ELECTRIC
Registers Devices in Detail
NOTE When special relay M8033 is set the contents of the unlatched data registers are also not
cleared when the PLC is stopped.
(i)
You can also configure these registers as latched registers with the PLC parameters.
You can also configure these registers as unlatched registers with the PLC parameters.
@
If the optional battery is installed, the function of latched registers can be assigned to these registers in the PLC
parameters. They are then buffered by the battery.
Just like the special relays (Chapter 4.2.1) starting at address M8000 the FX controllers also
have special or diagnostic registers, whose addresses start at D8000. Often there is also a
direct connection between the special relays and special registers. For example, special relay
M8005 shows that the voltage of the PLCs battery is too low, and the corresponding voltage
value is stored in special register D8005. The following table shows a small selection of the
available special registers as examples.
FX Beginners Manual 4 13
Devices in Detail Registers
The contents of file registers are also not lost when the power supply is switched off. File regis-
ters can thus be used for storing values that you need to transfer to data registers when the
PLC is switched on, so that they can be used by the program for calculations, comparisons or
as setpoints for timers.
File registers have the same structure as data registers. In fact, they are data registers they
consist of blocks of 500 addresses each in the range from D1000 to D7999.
Device File registers
Device identifier D
Word device (two registers can be combined to store double-word
Device type (for setting and polling)
values)
16 bit register: 0000H to FFFFH (-32768 to 32767)
Possible device values 32 bit register: 00000000H to FFFFFFFFH (-2 147 483 648 to
2 147 483 647)
Device address format Decimal
1500 (D1000D2499)
FX1S A maximum of 3 blocks of 500 file registers each can be defined in
the PLC parameters.
FX1N
FX2N
7000 (D1000D7999)
FX2NC
A maximum of 14 blocks of 500 file registers each can be defined in
FX3G the PLC parameters.
Number of devices and
addresses FX3GC
FX3GE
2000 (D1000D2999)
FX3S A maximum of 4 blocks of 500 file registers each can be defined in
the PLC parameters.
7000 (D1000D7999)
FX3U
A maximum of 14 blocks of 500 file registers each can be defined in
FX3UC
the PLC parameters.
For a detailed description of the file registers see the Programming Manual for the MELSEC
FX family.
4 14 MITSUBISHI ELECTRIC
Programming Tips for Timers and Counters Devices in Detail
The usual way to specify timer and counter setpoint values is directly, in an output instruction:
In the example above T31 is a 100ms timer. The constant K500 sets the delay to 500 x 0.1s =
50s. The setpoint for counter C0 is also set directly, to a value of 34 with the constant K34.
The advantage of specifying setpoints like this is that you dont have to concern yourself with
the setpoint value once you have set it. The values you use in the program are always valid,
even after power failures and directly after switching the controller on. However, there is also a
disadvantage: If you want to change the setpoint you need to edit the program. This applies
particularly for timer setpoint values, which are often adjusted during controller configuration
and program tests.
You can also store setpoint values for timers and counters in data registers and have the pro-
gram read them from the registers. It is then possible to change the values quickly with a pro-
gramming unit if necessary, or to specify setpoint values with switches on a control console or
a HMI control panel.
The following listing shows an example of how to specify setpoint values indirectly:
When relay M15 is one the contents of data register D100 are copied to D131. This register
contains the setpoint value for T131. You could use a programming or control unit to adjust
the contents of D100.
The special relay M8002 is only set for a single program cycle directly after the PLC is swit-
ched on. This is used to copy the constant value of 34 to data register D5, which is then
used as the setpoint value for counter C0.
You dont have to write program instructions to copy the setpoint values to the data registers.
You could also use a programming unit to set them before the program is started, for example.
FX Beginners Manual 4 15
Devices in Detail Programming Tips for Timers and Counters
E WARNING:
If you use normal registers the setpoint values will be lost when the power supply is
switched off and when the RUN/STOP switch is set to the STOP position. If this happens
hazardous conditions may be created next time the power is switched on and/or when
the PLC is started again, because all the setpoints will have a value of 0.
If you dont configure your program to copy the values automatically you should always
use latched data registers for storing the setpoint values for timers and counters. Also,
remember that even the contents of these registers will also be lost when the PLC is
switched off if the backup battery is empty.
X001 D8030
0 T1 0 LD X001
1 OUT T1 D8030
T1 D8031 4 LD T1
4 T2 5 OUT T2 D8031
8 LD T1
T1 T2 8 ANI T2
8 Y000 10 OUT Y000
In the program example above Y0 is switched on after the delay specified for timer T1, for the
time specified for timer T2 (delayed pulse generation).
4 16 MITSUBISHI ELECTRIC
Programming Tips for Timers and Counters Devices in Detail
Signal sequence
ON
X1
OFF
1
T1 [D8030]
0
1
T2 [D8031]
0
ON
Y0
OFF
FX Beginners Manual 4 17
Devices in Detail Programming Tips for Timers and Counters
By default, all the timers in MELSEC PLCs are delayed make timers, i.e. the output is switched
ON after the defined delay period. However, you will often also want to program a delayed
break operation (switch OFF after a delay). A typical example of this is a ventilation fan in a
bathroom that needs to continue running for several minutes after the lights are switched off.
X001
0 Y000 0 LD X001
1 LD Y000
Y000 T0 2 ANI T0
3 ORB
4 OUT Y000
X001 K300 5 LDI X001
5 T0 6 OUT T0 K300
As long as input X1 (e.g. a light switch) is on output Y0 (fan) is also on. However, the latching
function ensures that Y0 also remains on after X1 has been switched off, because timer T0 is
still running. T0 is started when X1 is switched off. At the end of the delay period (300 x 0.1s =
30s in the example) T0 interrupts the Y0 latch and switches the output off.
Signal sequence
X1
30 s
T0
Y0
X001
0 SET Y000 0 LD X001
1 SET Y000
X001 K300 2 LDI X001
2 T0 3 OUT T0 K300
6 LD T0
T0 7 RST Y000
6 RST Y000
When X1 is switched on output Y0 is set (switched on). When X1 is switched off timer T0 is
started. After the delay period T0 then resets output Y0. The resulting signal sequence is iden-
tical with that produced by program version 1.
4 18 MITSUBISHI ELECTRIC
Programming Tips for Timers and Counters Devices in Detail
Sometimes you will want to switch an output on after a delay and then switch it off again after
another delay. This is very easy to implement with the controllers basic logical instructions.
Ladder Diagram Instruction List
X000 K25
0 T1 0 LD X000
1 OUT T1 K25
X000 K50 4 LDI X000
4 T2 5 OUT T2 K50
8 LD T1
T1 T2 9 OR Y000
8 Y000 10 ANI T2
11 OUT Y000
Y000
Signal sequence
ON
X0
OFF
1
T1
0
1
T2
0
ON
Y0
OFF
t1 t2
t
Output Y000 is latched with the help of T1, keeping the output switched on until the end of the
break delay period.
FX Beginners Manual 4 19
Devices in Detail Programming Tips for Timers and Counters
The controllers have special relays that make it very easy to program tasks requiring a regular
clock signal (for example for controlling a blinking error indicator light). Relay M8013 switches
on and off at 1-second intervals, for example. For full details on all special relays see the Pro-
gramming Manual for the FX family.
If you need a different clock frequency or different on and off times you can program your own
clock signal generator with two timers, like this:
Ladder Diagram Instruction List
X001 T2 K10
0 T1 0 LD X001
1 ANI T2
T1 K20 2 OUT T1 K10
5 T2 5 LD T1
6 OUT T2 K20
9 OUT Y000
Y000
Input X1 starts the clock generator. If you want, you can omit this input then the clock genera-
tor is always on. In the program you could use the output of T1 to control a blinking warning
light. The on period is determined by T2, the off period by T1.
The output of timer T2 is only switched on for a single program cycle. This time is shown much
longer than it really is in the signal sequence illustration below. T2 switches T1 off and immedi-
ately after this T2 itself is also switched off. In effect this means that the duration of the on
period is increased by the time that it takes to execute a program cycle. However, since the
cycle is only a few milliseconds long it can usually be ignored.
Signal sequence
ON
X0
OFF
1
T1 t1
0
1
T2 t2
0
ON
Y1
OFF
4 20 MITSUBISHI ELECTRIC
Applied Instructions Reference More Advanced Programming
The basic logic instructions listed in Chapter 3 can be used to emulate the functions of a
hard-wired contactor controller with a programmable logic controller. However, this only
scratches the surface of the capabilities of modern PLCs. Since every PLC is built around a
microprocessor they can also easily perform operations like mathematical calculations, com-
paring numbers, converting from one number system to another or processing analog values.
Functions like these that go beyond the capabilities of logic operations are performed with spe-
cial instructions, which are referred to as applied or application instructions.
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
Conditional Jump to a program
CJ
position
CALL Calls (executes) a subroutine
Subroutine Return, marks the end of a
SRET
subroutine
Interrupt Return, marks the end of an
IRET
interrupt routine
Program flow Enable Interrupt, enables processing
EI
functions of interrupt routines
Disable Interrupt, disables processing
DI
of interrupt routines
First End, marks end of main program
FEND
block
WDT WatchDog Timer refresh
FOR Marks beginning of a program loop
NEXT Marks end of a program loop
FX Beginners Manual 51
More Advanced Programming Applied Instructions Reference
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
CMP Compare numerical values
Zone Compare, compares numerical
ZCP
ranges
Move data from one storage area to
MOV
another
SMOV Shift Move
Move and com-
pare functions CML Compliment, copies and inverts
BMOV Block Move
FMOV Fill Move, copy to a range of devices
XCH Exchange data in specified devices
BCD BCD conversion
BIN Binary conversion
ADD Add numerical values
SUB Subtract numerical values
MUL Multiply numerical values
DIV Divide numerical values
INC Increment
Math and logic
instructions DEC Decrement
WAND Logical AND
WOR Logical OR
WXOR Logical exclusive OR
Negation, logical inversion of device
NEG
contents
ROR Rotate right
ROL Rotate left
RCR Rotation right with carry
RCL Rotation left with carry
SFTR Shift right, bitwise shift to the right
SFTL Shift left, bitwise shift to the left
Rotate and shift
functions Word shift right, shift word values to the
WSFR
right
Word shift left, shift word values to the
WSFL
left
Shift register write, writes to a FIFO
SFWR
stack
Shift register read, reads from a FIFO
SFRD
stack
Zone Reset, resets ranges of like
ZRST
devices
DECO Decode data
ENCO Encode data
SUM Sum (number) of active bits
FX Beginners Manual 5
22
Applied Instructions Reference More Advanced Programming
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
REF Refresh inputs and outputs
REFF Refresh inputs and filter adjust
MTR Input matrix, read a matrix (MTR)
DHSCS High-speed counter set
DHSCR High-speed counter reset
High-speed DHSZ High speed zone compare
instructions
SPD Speed detection
PLSY Pulse Y output (frequency)
Pulse output with pulse width
PWM
modulation
Pulse ramp (accelleration/deceleration
PLSR
setup)
Initial state, set up multi-mode STL
IST
system
SER Search data stack
ABSD Absolute counter comparison
INCD Incremental counter comparison
Application TTMR Teaching timer
instructions
STMR Special timer
ALT Alternate state, flip-flop function
RAMP Ramp function
ROTC Rotary table control
SORT Sort table data on selected fields
TKY Ten key input
HKY Hexadecimal key input
DSW Digital switch
SEGD 7-segment display decoder
SEGL 7-segment display with latch
Instructions for
external ARWS Arrow switch
I/O devices ASC ASCII conversion
PR Print, data output via the outputs
Read data from a special function
FROM
module
Write data to a special function
TO
module
RS RS serial communications
PRUN Parallel run (octal mode)
ASCI Convert to an ASCII character
HEX Convert to a hexadecimal character
Instructions for CCD Check Code, sum and parity check
external serial Read setpoint values from
devices VRRD
FXOO-8AV-BD
Read switch settings from
VRSC
FXOO-8AV-BD
RS2 RS serial communications (2)
PID PID control loop
Zone push, store contents of index
ZPUSH
Store/restore registers
index registers Zone pop, restore contents of index
ZPOP
registers
52 MITSUBISHI ELECTRIC
More Advanced Programming Applied Instructions Reference
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
DECMP Compare floating point values
DEZCP Compare floating point values (range)
DEMOV Move floating point values
DESTR Convert floating point value to a string
DEVAL Convert string to floating point value
Convert floating point value to scientific
DEBCD
notation
Convert scientific notation to floating
DEBIN
point
DEADD Add floating point numbers
Floating point
operations DESUB Subtract floating point numbers
DEMUL Multiply floating point numbers
DEDIV Divide floating point numbers
DEXP Floating point exponent
DLOGE Calculate natural logarithm
DLOG10 Calculate decadic logarithm
DESQR Square root of floating point numbers
DENEG Reverse sign of floating point numbers
Convert floating-point numbers to
INT
integers
SIN Calculate the sine
COS Calculate the cosine
TAN Calculate the tangent
Trigonometry
instructions for ASIN Calculate the arc sine
floating point ACOS Calculate the arc cosine
numbers
ATAN Calculate the arc tangent
RAD Convert degrees to radians
DEG Convert radians to degrees
WSUM Sum of the contents of word devices
WTOB Word to byte, divide words into bytes
Byte To Word, form words from indi-
BTOW
vidual bytes
Data operations Combine groups of 4 bits to form
UNI
words
DIS Divide words into groups of 4 bits
SWAP Swap least and most significant bits
SORT Sort the data in a table
Return to zero home point (with prox-
DSZR
imity switch)
DVIT Positioning with interrupt
TBL Positioning with data table
Positioning DABS Read absolute current position
instructions
ZRN Return to zero home point
PLSV Output pulses with variable frequency
DRVI Position to an incremental value
DRVA Position to an absolute value
54 MITSUBISHI ELECTRIC
Applied Instructions Reference More Advanced Programming
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
TCMP Compare clock data
Compare clock data with a zone
TZCP
(range)
TADD Add clock data
TSUB Subtract clock data
Operations with
Convert hours / minutes / seconds
the PLCs inte- HTOS
time value to seconds
grated clock
Convert seconds time value to hours /
STOH
minutes / seconds
TRD Read clock time and date
TWR Write time and date to PLC clock
HOUR Operating hours counter
FX Beginners Manual 55
More Advanced Programming Applied Instructions Reference
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
LD=
LD>
LD<
LD<>
LD<=
LD>=
AND=
Comparison AND>
Compare data within operations
operations AND<
AND>=
OR=
OR>
OR<
OR<>
OR<=
OR>=
LIMIT Limits the output range of values
BAND Define input offset
ZONE Define output offset
SCL Scale values
Data control
instructions Convert an ASCII number to a binary
DABIN
value
BINDA Convert a binary value to ASCII code
Scale values (different value table
SCL2
structure to SCL)
IVCK Check status of frequency inverter
IVDR Control frequency inverter
IVRD Read frequency inverter parameter
Instructions for IVWR Write parameter to frequency inverter
communication
with frequency Write parameters to frequency inverter
IVBWR
inverters in blocks
Writes operation command and set
frequency to the inverter and reads
IVMC
the inverter status and the output fre-
quency (speed) from the inverter
MODBUS Communication of the MODBUS mas-
ADPRW
communication ter with slaves (read/write data)
Data exchange RBFM Read from module buffer memory
with special func-
tion modules WBFM Write to module buffer memory
Compare current value of a
High-speed coun-
HSCT high-speed counter with data in data
ter instruction
tables
LOADR Read data from extension file registers
SAVER Write data to extension file registers
Initialise extension registers and
INITR
Instructions for extension file registers
extension file Read values from devices in extension
registers LOGR
registers and extension file registers
Write data from extension registers to
RWER
extension file registers
INITER Initialise extension file registers
56 MITSUBISHI ELECTRIC
Applied Instructions Reference More Advanced Programming
Controller
Instruc- FX3G
Category Function FX2N FX3U
tion FX1S FX1N FX3GC FX3S
FX2NC FX3UC
FX3GE
FLCRT Create/check file
Insructions for a FLDEL Delete file/CF card format
CF memory card FLWR Write data to CF card
mounted in a
special adapter FLRD Read data from CF card
FX3U-CF-ADP FLCMD FX3U-CF-ADP command
FLSTRD FX3U-CF-ADP status read
Programming applied instructions in GX Works2 FX is simple. Just position the cursor in the
place in the program line where you want to insert the instruction and type the abbreviations for
the instruction and its operand(s). GX Work2 will automatically register that you are entering
an instruction and will open the input dialog (see below). Alternatively, you can also position the
cursor and then click on the insert instruction tool in the toolbar .
Then enter the abbreviations for the instruction and its operand(s) in the input field, separating
them by spaces.
All numbers must be preceded by a letter character, which either identifies the device type or
in the case of constants specifies the number format. The letter K identifies decimal con-
stants and H identifies hexadecimal constants.
In the example on the left a MOV instruction
is used to write the value 5 to data register
D12.
The Help button opens a dialog in which you can search for a suitable instruction for the func-
tion you want to perform. The help also contains information on how the functions work and the
type and number of devices that they take as operands.
Then you just click on OK to insert the M457
applied instruction into the program. MOV K5 D12
If you are programming in Instruction List format enter the instruction and its operand(s) in a
single line, separated by spaces.
FX Beginners Manual 57
More Advanced Programming Instructions for Moving Data
The MOV instruction moves data from the specified source to the specified destination.
NOTE Note that despite its name this is actually a copy process it does not delete the data from
the source location.
X001
The contents of the data source will be When the input condition is no lon-
copied to the data destination as long as the ger true the instruction will no lon-
input condition evaluates true. The copy ope- ger change the contents of the data
ration does not change the contents of the destination.
data source.
58 MITSUBISHI ELECTRIC
Instructions for Moving Data More Advanced Programming
In the example below the contents of D20 are written to data register D387 when the state of
M110 changes from 0" to 1".
Ladder Diagram Instruction List
M110 0 LD M110
0 MOVP D20 D387 1 MOVP D20 D387
After this single operation has been performed copying to register D387 stops, even if the
M110 remains set. The signal sequence illustrates this:
M110
The contents of the data source are only copied to the destina-
tion on the rising pulse of the input condition.
When input X010 is on the current value of 32-bit counter C200 is written to data registers D40
and D41. D40 contains the least significant bits.
As you might expect, there is also a pulse-triggered version of the 32-bit DMOV instruction:
Ladder Diagram Instruction List
M10 0 LD M10
0 DMOVP D10 D610 1 DMOVP D10 D610
When relay M10 is set the contents of registers D10 and D11 are written to registers D610 and
D611.
FX Beginners Manual 59
More Advanced Programming Instructions for Moving Data
The previous section showed how you can use the MOV instruction to write constants or the
contents of data registers to other data registers. Consecutive sequences of relays and other
bit devices can also be used to store numerical values, and you can copy them as groups with
applied instructions. To do this you prefixing a K factor to the address of the first bit device,
specifying the number of devices you want to copy with the operation.
Bit devices are counted in groups of 4, so the K factor specifies the number of these groups of
4. K1 = 4 devices, K2 = 8 devices, K3 = 12 devices and so on.
For example, K2M0 specifies the 8 relays from M0 through M7. The supported range is K1 (4
devices) to K8 (32 devices).
Examples for addressing groups of bit devices:
K1X0: 4 inputs, start at X0 (X0 to X3)
K2X4: 8 inputs, start at X4 (X4 to X13, octal notation)
K4M16: 16 relays, start at 16 (M16 to M31)
K3Y0: 12 outputs, start at Y0 (Y0 to Y13, octal notation)
K8M0: 32 relays, start at M0 (M0 to M31)
Addressing multiple bit devices with a single instruction makes programming quicker and pro-
duces more compact programs. The following two examples both transfer the signal states of
relays M0 M3 to outputs Y10 Y13:
M0
Y010
M1
M8000
Y011
MOV K1M0 K1Y010
M2
Y012
M3
Y013
If the destination range is smaller than the source range the excess bits are simply ignored
(see the following illustration, top example). If the destination is larger than the source 0 is
written to the excess devices. Note that when this happens the result is always positive
because bit 15 is interpreted as the sign bit (lower example in the following illustration).
Bit 15 Bit 0
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Sign bit (0: positive, 1: negative)
MOV D0 K2 M0
These relays will not be changed
0 1 0 1 0 1 0 1
M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0
MOV K2 M0 D1
Sign bit (0: positive, 1: negative)
0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1
Bit 15 Bit 0
5 10 MITSUBISHI ELECTRIC
Instructions for Moving Data More Advanced Programming
The MOV instruction described in section 5.2.1 can only write single 16 or 32 bit values to a
destination. If you want, you can program multiple sequences of MOV instructions to move
contiguous blocks of data. However, it is more efficient to use the BMOV (Block MOVe) instruc-
tion, which is provided specifically for this purpose.
Ladder Diagram Instruction List
BMOV also has a pulse-triggered version, BMOVP (see section 5.1.2 for details on pulse-trig-
gered execution).
Blocks of bit devices: When you move blocks of bit devices with BMOV the K factors of the data
source and the data destination must always be identical.
Example
M0 0 0 Y000
M1 1 1 Y001
M2 1 1 Y002
M3 0 0 Y003
This copies 2 blocks with 4 bit
M4 1 1 Y004
M5 0 0 Y005
M6 1 1 Y006
M7 0 0 Y007
FX Beginners Manual 5 11
More Advanced Programming Instructions for Moving Data
The FMOV (Fill MOVe) instruction copies the contents of a word or double word device or a
constant to multiple consecutive word or double word devices. It is generally used to delete
data tables and to set data registered to a predefined starting value.
Ladder Diagram Instruction List
O Data to be written to the target devices (constants can also be used here)
f) Data destination (first device of the destination range)
8 Number of elements to be written in the destination range (max. 512)
The following example writes the value 0 to 7 elements:
FMOV K0 D10 K7
0 0 D 10
0 D 11
0 D 12
0 D 13
0 D 14
0 D 15
0 D 16
Here too, FMOV has a pulse-triggered version, FMOVP (see section 5.1.2 for details on
pulse-triggered execution).
You can also transfer 32-bit data by prefixing the instruction with D (DFMOV and DFMOVP).
5 12 MITSUBISHI ELECTRIC
Instructions for Moving Data More Advanced Programming
You can add expansion modules to increase the number of inputs and outputs available to all
base units of the MELSEC FX series except the FX1S and the FX3S models. In addition to this
you can also supplement the controllers functions by adding so-called special function mod-
ules for example for reading analog signals for currents and voltages, for controlling temper-
atures and for communicating with external equipment.
The digital I/O expansion modules do not require special instructions; the additional inputs and
outputs are handled in exactly the same way as those in the base unit. Communication
between the base unit and special function modules is performed with two special applied
instructions: the FROM and TO instructions.
Each special function module has a memory range assigned as a buffer for temporary storage
of data, such as analog measurement values or received data. The base unit can access this
buffer and both read the stored values from it and write new values to it, which the module can
then process (settings for the modules functions, data for transmission etc).
TO
FROM
The buffer memory can have up to 32,767 indi- Buffer memory address 0
vidual addressable memory cells, each of Buffer memory address 1
which can store 16 bits of data. The functions of
the buffer memory cells depends on the indi- Buffer memory address 2
vidual special function module see the mod- :
ules documentation for details. :
Buffer memory address n-1
Buffer memory address n-1
The following information is required when you use the FROM and TO instructions:
The special function module to be read from or written to
The address of the first buffer memory cell to be read from or written to
The number of buffer memory cells to be read from or written to
The location in the base unit where the data from the module is to be stored or containing
the data to be written to the module
FX Beginners Manual 5 13
More Advanced Programming Instructions for Moving Data
24+
24- SLD
24+
24+
24-
24-
L+
V+
L-
V+
VI-
VI-
I+
I+
SLD
L+
FG
V+
L-
V+
VI-
VI-
I+
SLD
I+
FG
V+
V+
L+
FX2N-4AD-TC
L-
VI-
VI-
I+
SLD
FX2N-4DA
I+
L+
FG
V+
L-
V+
VI-
VI-
I+
I+
Special function
Module 1 Module 2
module 0
32-bit data
This means that the starting address for 32-bit data is always the address containing the less
significant 16 bits of the double word.
The value you can enter for the number of data units depends on the PLC model you are using
and whether you are using the 16-bit or 32-bit version of the FROM instruction:
Valid range for no. of data units to be transferred
PLC Model
16-Bit Instruction (FROM, TO) 32-Bit Instruction (DFROM, DTO)
FX2N 1 to 32 1 to 16
FX2NC 1 to 32 1 to 16
FX3G, FX3GC, FX3GE, FX3U, FX3UC 1 to 32767 1 to 16383
0 FROM K0 K9 D0 K1 0 FROM K0 K9 D0 K1
0 e 0 0 e 0
0 DFROM K2 K8 D8 K4
The next example illustrates the use of the pulse triggered version, FROMP. Here the contents
of the four buffer addresses 0 3 are only transferred to data registers D10 D13 when the sig-
nal state of the input condition changes from 0 to 1.
0 FROMP K0 K0 D10 K4
FX Beginners Manual 5 15
More Advanced Programming Compare Instructions
CMP compares two numerical values, which can be constants or the contents of data regis-
ters. You can also compare the current values of timers and counters. Depending on the result
of the comparison (greater than, less than or equal) one of three bit devices is set.
Ladder Diagram Instruction List
0 LD ...0.
0 CMP D0 K100 M0 1 CMP D0 K100 M0
0 e 0 e 0
O Input condition
f) First value to be compared
8 Second value to be compared
O First of three consecutive relays or outputs, which are set (signal status 1) depending on
the result of the comparison:
1. Device 1: ON if Value 1 > Value 2
2. Device 2: ON if Value 1 = Value 2
3. Device 3: ON if Value 1 < Value 2
5 16 MITSUBISHI ELECTRIC
Compare Instructions More Advanced Programming
In this example the CMP instruction controls relays M0, M1 and M2. M0 is 1 if the contents
of D0 is greater than 100; M1 is 1 if the contents of D0 is precisely 100 and M2 is 1 if D0 is
less than 100. The state of the three bit devices is maintained even after the input condition
has been switched off because their last state is stored.
To compare 32-bit data you just use DCMP instead of CMP:
Ladder Diagram Instruction List
0 LD ....
0 DCMP D0 D2 M0 1 DCMP D0 D2 M0
In the example above the contents of D0 and D1 are compared with the contents of D2 and D3.
The handling of the three bit devices indicating the result of the comparison is exactly the same
as for the 16-bit version of the instruction.
Application example
It is easy to create a two-point control loop with the CMP instruction:
Ladder Diagram Instruction List
M8000 0 LD M8000
0 CMP D20 K22 M20 1 CMP D20 K22 M20
8 LD M20
M20 9 RST Y000
8 RST Y000 10 LD M22
11 SET Y0001
M22
10 SET Y000
In this example the CMP instruction is executed cyclically. M8000 is always 1 when the PLC is
executing the program. Register D20 contains the value for the current room temperature.
Constant K22 contains the setpoint value of 22C. Relays M20 and M22 show when the tem-
perature goes higher or lower than the setpoint. If the room is too warm output Y0 is switched
off. If the temperature is too low M22 switches output Y0 on again. This output could be used to
control a pump for adding hot water, for example.
FX Beginners Manual 5 17
More Advanced Programming Compare Instructions
In the CMP instruction described in the last section the result of the comparison is stored in
three bit devices. Often, however, you only want to execute an output instruction or a logic oper-
ation on the basis of the result of a comparison, and you generally wont want to have to use
three bit devices for this. You can achieve this with the load compare instructions and the AND
and OR bitwise logic comparisons.
O Compare condition
f) First compare value
8 Second compare value
If the condition evaluates true the signal state after the comparison is set to 1. A signal state of
0 shows that the comparison evaluated as false. The following comparisons are possible:
Compare for "equals": = (value 1 = value 2)
The output of the instruction is only set to "1" if the values of both devices are identical.
Compare for "greater than": > (value 1 > value 2)
The output of the instruction is only set to "1" if the first value is greater than the second value.
Compare for "less than": < (value 1 < value 2)
The output of the instruction is only set to "1" if the first value is smaller than the second value.
Compare for "not equal": <> (value 1 <> value 2)
The output of the instruction is only set to "1" if the two values are not equal.
Compare for "less than or equal to": <= (value 1 < value 2)
The output of the instruction is only set to "1" if the first value is less than or equal to the se-
cond value.
Compare for "greater than or equal to": >= (value 1 > value 2)
The output of the instruction is only set to "1" if the first value is greater than or equal to the
second value.
To compare 32-bit data prefix a D (for double word) to the compare condition:
Ladder Diagram Instruction List
5 18 MITSUBISHI ELECTRIC
Compare Instructions More Advanced Programming
The example above checks whether the contents of data registers D10 and D11 are greater
than the contents of registers D250 and D251.
More examples:
Ladder Diagram Instruction List
0 LD>= C0 D20
0 >= C0 D20 M12
5 OUT M12
Relay M12 is set to "1" when the value of counter C0 is equal to or greater than the contents of D20.
Output Y003 is switched on when the contents of D10 is greater than -2,500 and timer T52 has
finished running.
Ladder Diagram Instruction List
Relay M53 is set to "1" if either the value of counter C200 is less than 182,547 or relay M110 is
set to "1".
0 LD ...
0 <= D40 D50 1 AND<= D40 D50
0 e 0 e
O Compare condition
f) First comparison value
8 Second comparison value
An AND comparison can be used just like a normal AND instruction (see chapter 3).
The comparison options are the same as those described above for a comparison at the begin-
ning of an operation. Here too, you can also compare 32-bit values with an AND operation:
FX Beginners Manual 5 19
More Advanced Programming Compare Instructions
0 0 LD ...
1 OR>= C20 K200
0 e
O Compare condition
f) First comparison value
8 Second comparison value
An OR comparison can be used just like a normal OR instruction (see chapter 3).
The comparison options are the same as those described above for a comparison at the begin-
ning of an operation. Here too, you can also compare 32-bit values with an OR operation:
Ladder Diagram Instruction List
0 0 LD ...
1 ORD= C200 D10
D= C200 D10
5 20 MITSUBISHI ELECTRIC
Math Instructions More Advanced Programming
FX Beginners Manual 5 21
More Advanced Programming Math Instructions
5.4.1 Addition
The ADD instruction calculates the sum of two 16-bit or 32-bit values and writes the result to
another device.
Ladder Diagram Instruction List
ADD D0 D1 D2 0 ADD
0 D0 D1 D2
0 e 0 e
Examples
Add 1,000 to the contents of data register D100:
D 100 D 102
ADD K1000 D100 D102 1000 + 53 1053
The signs of the values are taken into account by the ADD instruction:
D 10 D 11 D 12
ADD D10 D11 D12 5 + -8 -3
You can also add 32-bit values by prefixing a "D" to the ADD instruction (DADD):
D1 D0 D3 D2 D5 D4
DADD D0 D2 D4 65238 + 27643 92881
If you want you can also write the result to one of the source devices. However, if you do this
remember that the result will then change in every program cycle if the ADD instruction is exe-
cuted cyclically!
D0 D0
ADD D0 K25 D0 18 + 25 43
The ADD instruction can also be executed in pulse-triggered mode. Then it is only executed
when the signal state of the input condition changes from "0" to "1". To use this mode just add a
"P" suffix to the ADD instructions (ADDP, DADDP).
In the following example the constant value 27 is only added to the contents of D47 once, in the
program cycle in which the signal state of relay M47 changes from "0" to "1":
Ladder Diagram Instruction List
M47
0 LD M47
0 ADDP D47 K27 D51 1 ADDP D47 K27 D51
5 22 MITSUBISHI ELECTRIC
Math Instructions More Advanced Programming
5.4.2 Subtraction
The SUB instruction calculates the difference between two numerical values (contents of
16-bit or 32-bit devices or constants). The result of the subtraction is written to a third device.
Ladder Diagram Instruction List
SUB D0 D1 D2 0 SUB
0 D0 D1 D2
0 e 0 e
Examples
Subtract 100 from the contents of data register D11 and write the result to D101:
D 100 D 101
SUB D100 K100 D101 247 100 147
The signs of the values are taken into account by the SUB instruction:
D 10 D 11 D 12
SUB D10 D11 D12 5 -8 13
You can also subtract 32-bit values by prefixing a D to the SUB instruction (DSUB):
D1 D0 D3 D2 D5 D4
DSUB D0 D2 D4 65238 27643 37595
If you want you can also write the result to one of the source devices. However, if you do this
remember that the result will then change in every program cycle if the SUB instruction is exe-
cuted cyclically!
D0 D0
SUB D0 K25 D0 197 25 172
The SUB instruction can also be executed in pulse-triggered mode. Then it is only executed
when the signal state of the input condition changes from "0" to "1". To use this mode just add a
"P" suffix to the SUB instructions (SUBP, DSUBP).
In the following example the contents of D394 is only subtracted from contents of D50 once, in
the program cycle in which the signal state of relay M50 changes from "0" to "1":
Ladder Diagram Instruction List
M50
0 LD M50
0 SUBP D50 D394 D51
1 SUBP D50 D394 D51
FX Beginners Manual 5 23
More Advanced Programming Math Instructions
5.4.3 Multiplication
The FX controllers MUL instruction multiplies two 16-bit or 32-bit values and writes the result
to a third device.
Ladder Diagram Instruction List
MUL D0 D1 D2 0 MUL
0 D0 D1 D2
0 e 0 e
O Multiplicand
f) Multiplier
When you multiply two 16-bit values the result can quite easily exceed the range that can be
displayed with 16 bits. Because of this the product of multiplications is always written to two
consecutive 16-bit devices (i.e. a 32-bit double word).
When you multiply two 32-bit values the product is written to four consecutive 16-bit devices
(64 bits, two double words).
Always take the size of these device ranges into account when you are programming and
take care not to create range overlaps by using the devices in the ranges to which the pro-
ducts are written!
Examples
Multiply the contents of D0 and D1 and store the product in D3 and D2:
D0 D1 D3 D2
MUL D0 D1 D2 1805 x 481 868205
The signs of the values are taken into account by the MUL instruction. In this example the value
in D10 is multiplied by the constant value -5:
D 10 D 21 D 20
MUL D10 K-5 D20 8 x -5 -40
You can also multiply 32-bit values by prefixing a "D" to the MUL instruction (DMUL):
D1 D0 D3 D2 D7 D6 D5 D4
DMUL D0 D2 D4 65238 x 27643 1803374034
The MUL instruction can also be executed in pulse-triggered mode by adding a "P" suffix to the
MUL instructions (MULP, DMULP). The following multiplication is only executed when input
X24 switches from "0" to "1":
Ladder Diagram Instruction List
X24
0 LD X24
0 MULP D25 D300 D26 1 MULP D25 D300 D26
5 24 MITSUBISHI ELECTRIC
Math Instructions More Advanced Programming
5.4.4 Division
The MELSEC FX familys DIV instruction divides one number by another (contents of two
16-bit or 32-bit devices or constants). This is an integer operation and cannot process float-
ing-point values. The result is always an integer and the remainder is stored separately.
Ladder Diagram Instruction List
0 DIV D0 D1 D2 0 DIV D0 D1 D2
0 e 0 e
O Dividend
f) Divisor
8 Quotient (result of the division, dividend divisor = quotient)
NOTES The divisor should never be 0. Division by 0 is not possible and will generate an error.
When two 16-bit values are divided the quotient is written to one 16-bit device and the re-
mainder is written to the next device. This means that the result of a division always requires
two consecutive 16-bit devices (= 32 bits).
When you divide two 32-bit values the quotient is written to two 16-bit devices and the re-
mainder is written to the next two 16-bit devices. This means that four consecutive 16-bit de-
vices are always required for the result of a 32-bit division.
Always take the size of these device ranges into account when you are programming and
take care not to create range overlaps by using the devices in the ranges to which the results
of the calculations are written!
Examples
Divide the contents of D0 by the contents of D1 and write the result to D2 and D3:
D0 D1 D2
DIV D0 D1 D2 40 6 6 Quotient (6 x 6 = 36)
D3
4 Remainder (40 - 36 = 4)
The signs of the values are taken into account by the DIV instruction. In this example the coun-
ter value of C0 is divided by the value in D10:
C0 D 10 D 200
DIV C0 D10 D200 36 -5 -7 Quotient
D 201
1 Remainder
FX Beginners Manual 5 25
More Advanced Programming Math Instructions
Adding a P suffix to the DIV instructions executes the instructions in pulse-triggered mode
(DIV -> DIVP, DDIVPL -> DMULP). In the following example the counter value of C12 is only
divided by 4 in the program cycle in which input X30 is switched on:
X30
0 DIVP C12 K4 D12 0 LD X30
1 DIVP C12 K4 D12
In real life one calculation is seldom all you want to perform. The FX controllers allow you to
combine math instructions to solve more complex calculations. Depending on the nature of the
calculation you may have to use additional devices to store intermediate results.
The following example shows how you could calculate the sum of the values in data registers
D101, D102 and D103 and then multiply the result by the factor 4:
Ladder Diagram Instruction List
M101 10 LD M101
0 ADD D101 D102 D200 1 ADD D101 D102 D200
8 MPS
M8022 9 ANI M8022
ADD D200 D103 D200 10 ADD D200 D103 D200
17 MPP
M8021 M8022 18 ANI M8021
MUL D200 K4 D104 19 ANI M8022
20 MUL D200 K4 D104
First the contents of D101 and D102 are added and the result is stored in D200.
If (and only if) the sum of D101 and D102 does not exceed the permitted range it is then
added to the value in D103.
If the sum of D101 through D103 does not exceed the permitted range it is multiplied by the
factor 4 and the result is written to D104 and D105.
5 26 MITSUBISHI ELECTRIC
Available Modules Expansion Options
6 Expansion Options
6.1 Introduction
You can expand the base units of the MELSEC FX series with expansion modules and special
function modules.
These modules are divided into three categories:
6.1.1 Modules that that occupy digital inputs and outputs (installed on the right of the
controller). These include the compact and modular digital expansion and special function
modules.
6.1.2 Modules that do not occupy any digital inputs and outputs (installed on the left side of
the controller).
6.1.3 Interface and communications adapters that do not occupy any digital inputs and
outputs (installed directly in the controller unit).
A variety of different modular and compact expansion modules are available for adding I/Os to
the MELSEC FX1N/FX2N/FX2NC/FX3G/FX3GC/FX3GE/FX3U and FX3UC base units. In addition
to this, digital I/Os can also be added to the controllers of the FX1S and FX1N series with special
expansion adapters that are installed directly in the controller itself. These adapters are a par-
ticularly good choice when you only need a few additional I/Os and/or do not have enough
space to install expansion modules on the side of the controller.
The "modular" expansion units only contain the digital inputs and outputs, they do not have
their own power supplies. The "compact" expansion units have a larger number of I/Os and an
integrated power supply unit for the system bus and the digital inputs.
The available base units and expansion units can be mixed and matched in a huge variety of
different combinations, making it possible to configure your controller system very precisely to
the needs of your application.
Analog I/O modules convert analog input signals to digital values or digital values to analog
output signals.
A number of modules are available for current/voltage signals and for temperature monitoring
with direct connections for Pt100 resistance thermometers or thermo elements.
A FX3GE base unit can input two analog signals and output one analog signal (010 V or
420 mA in each case) without additional modules.
See Chapter 7 for an introduction to analog signal processing.
62 MITSUBISHI ELECTRIC
Expansion Options Introduction
Mitsubishi Electric produces a range of interface modules and adapters with serial ports
(RS-232, RS-422 and RS-485) for connecting peripherals or other controllers.
A number of special communications modules are available for integrating the MELSEC FX1N,
FX2N, FX2NC and all FX3 controllers in a variety of different networks.
Network interface modules are currently available for Ethernet, Profibus DP, AS-interface,
DeviceNet, CANopen, CC-Link and Mitsubishis own proprietary networks.
The base units of the FX3GE series are already equipped with an Ethernet interface.
You can complement the internal high-speed counters of the MELSEC FX controllers with
additional external hardware high-speed counter modules, which you can use for connecting
devices like incremental rotary transducers and positioning modules for servo and stepping
drive systems.
You can program precise positioning applications with the MELSEC FX family with the help of
positioning modules for pulse train generation. These modules can be used to control both
stepping and servo drives.
Mitsubishi Electrics control and display panels provide an effective and user-friendly
human-machine interface (HMI) for working with the MELSEC FX series. HMI control units
make the functions of the controlled application transparent and comprehensible.
All the available units can monitor and edit all relevant PLC parameters, such as actual and
setpoint values for times, counters, data registers and sequential instructions.
HMI units are available with both text and graphics based displays. Fully-programmable func-
tion keys and touch-sensitive screens make them even easier to use. The units are pro-
grammed and configured with a Windows-based PC running user-friendly software.
The HMI units communicate with the FX PLCs via the programming interface, and they are
connected directly with their standard cable. No additional modules are required to connect
the units to the PLCs.
FX Beginners Manual 61
Analog Modules Processing Analog Values
Base unit of
Analog input FX3U series
Voltage or module
current Digital value
Analog/Digital
e. g. 50 l/s conversion
e. g. 5 V
or 12 mA e. g. 2000
72 MITSUBISHI ELECTRIC
Processing Analog Values Analog Modules
Base unit of
Temperature probe
Temperature FX family
acquisition
Temperature module Digital value
Analog/Digital
conversion
e. g. 47 C e. g. 470
Peripheral
equipment
FX Beginners Manual 71
Analog Modules Processing Analog Values
e. g. 2000 z. B. 5 V
oder 12 mA
A wide range of analog modules are available for the MELSEC FX family and you need to
choose the correct module for each automation task. The main criteria for selection are as
follows:
Compatibility with the PLC base unit
The analog module must be compatible the with PLC base unit you are using. For example,
you cannot connect the analog modules of the FX3U series to a base unit of the FX1N
series.
Resolution
The resolution describes the smallest physical value that can be acquired or output by the
analog module.
In the case of analog input modules the resolution is defined as the change in voltage, cur-
rent or temperature at the input that will increase or decrease the digital output value by 1.
In the case of analog output modules the resolution is the change in the voltage or current
value at the module output caused by increasing or decreasing the digital input value by 1.
The resolution is restricted by the internal design of the analog modules and depends on
the number of bits required to store the digital value. For example, if a 10V voltage is
acquired with a 12-bit A/D converter the voltage range is divided into 4,096 steps (212 =
4096, see section 3.3). This results in a resolution of 10V/4096 = 2.5mV.
Number of analog inputs or outputs
The inputs or outputs of analog modules are also referred to as channels. You can choose
analog input modules with 2, 4 or 8 channels, depending on the number of channels you
need. Please note that there is a limit to the number of special function modules you can
connect to a PLC base unit (see section 7.1.2). If you know that you will need to install other
special function modules it is thus better to use one module with four channels rather than
two modules with two channels each, because this allows you to connect more additional
modules.
FX Beginners Manual 73
Processing Analog Values Analog Modules
A number of different types of analog modules are available for the MELSEC FX family.
Adapter Boards
Adapter boards are small circuit boards that are installed directly in the FX1S, FX1N, FX3G,
FX3GE or FX3S controllers, which means that they dont take up any extra space in the
switchgear cabinet.
The analog input adapter enters the digital values of both
input channels directly into the special register. This
makes the further processing of the measured values
especially simple.
BY0+ BY0- BY1+ BY1-
Special Adapter
Adapter modules can be connected only to the left side of a basic unit of the MELSEC FX3G,
FX3GC, FX3GE, FX3S, FX3U or FX3UC series.
The installation of one analog adapter module is possible
in FX3G basic units with 14 or 24 inputs and outputs and
also to FX3GE or FX3S base units.
Up to two analog adapter modules can be connected to
FX3G basic units with 40 or 60 I/Os and FX3GC base units
and up to four to a FX3U or FX3UC.
Special adapters do not use any input or output points in
the base unit. They communicate directly with the base
unit via special relays and registers. Because of this, no
instructions for communication with special function
modules are needed in the program (see below).
74 MITSUBISHI ELECTRIC
List of Analog Modules Processing Analog Values
Voltage:
0 V to 5 V DC 2.5 mV (12 bits)
FX2N-2AD 2 0 V to 10 V DC 0 0
Current:
4 A (12 bits)
4 mA to 20 mA DC
Voltage: 5 mV
-10 V to 10 V DC (with sign, 12 bits)
FX2N-4AD 4 Current: 0 0
10 A
4 mA to 20 mA DC
Special (with sign, 11 bits)
-20 mA to 20 mA DC
Function
Block Voltage: 0.63 mV
-10 V to 10 V DC (with sign, 15 bits)
FX2N-8AD* 8 Current: 0 0
2.50 A
4 mA to 20 mA DC
(with sign, 14 bits)
-20 mA to 20 mA DC
Voltage: 0.32 mV
-10 V to 10 V DC (with sign, 16 bits)
FX3U-4AD 4 Current: 0 0 0 0
1.25 A
4 mA to 20 mA DC
(with sign, 15 bits)
-20 mA to 20 mA DC
Voltage:
2.5 mV (12 bits)
FX1N-1DA- 0 V to 10 V DC
1 0 0 0 0 0
BD Current:
8 A (11 bits)
Adapter 4 mA to 20 mA DC
Board Voltage:
2,5 mV (12 bit)
FX3G-1DA- 0 V to 10 V DC
1 0 0 0 0 0
BD Current:
8 A (11 bit)
4 mA to 20 mA DC
Voltage:
2.5 mV (12 bits)
Special FX3U-4DA- 0 V to 10 V DC
Analog Output Modules
4 0 0 0
Adapter ADP Current:
4 A (12 bits)
4 mA to 20 mA DC
Voltage:
0 V to 5 V DC 2.5 mV (12 bits)
FX2N-2DA 2 0 V to 10 V DC 0 0
Current:
4 A (12 bits)
4 mA to 20 mA DC
Voltage:
5 mV (with sign, 12 bits)
Special -10 V to 10 V DC
Function FX2N-4DA 4 Current: 0 0
Block 0 mA to 20 mA DC 20 A (10 bits)
4 mA to 20 mA DC
Voltage: 0.32 mV
-10 V to 10 V DC (with sign, 16 bits)
FX3U-4DA 4 Current: 0 0 0 0
0 mA to 20 mA DC 0.63 A (15 bits)
4 mA to 20 mA DC
* The special function module FX2N-8AD can acquire temperatures as well as currents and voltages.
FX Beginners Manual 75
Processing Analog Values List of Analog Modules
4 mA to 20 mA DC
Voltage:
0 V to 5 V DC 40 mV (8 bits)
2 inputs 0 V to 10 V DC
Current:
64 A (8 bits)
4 mA to 20 mA DC
FX0N-3A 0 0 0 0
Voltage:
0 V to 5 V DC 40 mV (8 bits)
1 output 0 V to 10 V DC
Current:
64 A (8 bits)
Special 4 mA to 20 mA DC
Function 50 V
Block Voltage:
(with sign, 12 bits)
-100 mV to 100 mV DC
0.312 mV
-10 V to 10 V DC
4 inputs (with sign, 16 bits)
Current:
10 A/1,25 A
FX2N-5A 4 mA to 20 mA DC 0 0
(with sign, 15 bits)
-20 mA to 20 mA DC
Voltage: 5 mV
-10 V to 10 V DC (with sign, 12 bits)
1 output
Current:
20 A (10 bits)
0 mA to 20 mA DC
Pt100 resistance
FX3U-4AD-
4 thermometer: 0.1 C 0 0 0
PT-ADP
-50 C to 250 C
Pt100 resistance
FX3U-4AD-
4 thermometer: 0.2 C to 0.3 C 0 0 0
PTW-ADP
-100 C to 600 C
Pt1000 resistance ther-
Special mometer: 0.1 C 0 0 0
Adapter FX3U-4AD- -50 C to 250 C
4
PNK-ADP Ni1000 resistance
thermometer: 0.1 C 0 0 0
Temperature Acquisition Modules
-40 C to 110 C
Thermocouple type K:
0.4 C
FX3U-4AD- -100 C to 1000 C
4 0 0 0
TC-ADP Thermocouple type J:
0.3 C
-100 C to 600 C
Thermocouple type K:
0.1 C
-100 C to 1200 C
Thermocouple type J:
FX2N-8AD* 8 0.1 C 0 0
-100 C to 600 C
Thermocouple type T:
0.1 C
Special -100 C to 350 C
Function Pt100 resistance
Block FX2N-4AD-
4 thermometer: 0.2 C to 0.3 C 0 0
PT
-100 C to 600 C
Thermocouple type K:
0.4 C
FX2N-4AD- -100 C to 1200 C
4 0 0
TC Thermocouple type J:
0.3 C
-100 C to 600 C
* The special function block FX2N-8AD is able to measure voltage, current and temperature.
76 MITSUBISHI ELECTRIC
List of Analog Modules Processing Analog Values
The adapter board, special adapter or special function block can be used with a base unit or expansi-
on unit of this series.
0 The adapter board, special adapter or special function block cannot be used with this series.
FX Beginners Manual 77
Index
Index
A E
ADD instruction 5-22 EEPROM 2-13
ANB instruction 3-12 Emergency STOP devices 3-21
AND instruction 3-9 Example of programming
ANDP/ANDF instruction 3-14 A rolling shutter gate 3-28
ANI instruction 3-9 An alarm system 3-23
Adapter boards (analog input/output) 7-4 Clock signal generator 4-20
Analog input modules Delay switch 4-6
Function 7-1 Specifying timer and counter setpoints 4-15
Overview 7-5 Switch-off delay 4-18
Analog output modules
Function 7-2 F
Overview 7-5 FMOV instruction 5-12
Automatic shutdown 3-22 FROM instruction 5-15
Falling edge 3-14
B
BMOV instruction 5-11 H
Binary numbers 3-2 Hexadecimal numbers 3-3
Buffer memory 5-13
I
C INV instruction 3-20
CMP instruction 5-16 Instruction
Counter ADD 5-22
Functions4-9 ANB 3-12
Specifying setpoints indirectly 4-15 AND 3-9
ANDF 3-14
D ANDP 3-14
DIV instruction 5-25 ANI 3-9
Data registers 4-12 BMOV 5-11
Device CMP 5-16
Address3-1 DIV 5-25
Counter overview 4-11 FMOV 5-12
Data register overview 4-13 FROM 5-15
File register overview 4-14 INV 3-20
Inputs/outputs overview 4-2 Interlock of contacts 3-21
Name 3-1 LD 3-6
Relay overview 4-4 LDF 3-14
Timer overview 4-8 LDI 3-6
LDP 3-14
MC 3-19
MCR 3-19
MOV 5-8
MPP 3-17
MPS 3-17
MRD 3-17
FX Beginners Manual I
Index
MUL 5-24 P
OR 3-11
PLF instruction 3-18
ORB 3-12
PLS instruction 3-18
ORF 3-14
Process image processing 2-2
ORI 3-11
Program instruction 3-1
ORP 3-14
Pt100 resistance thermometers 7-2
OUT 3-6
PLF 3-18 R
PLS 3-18 RST instruction 3-15
RST 3-15 RUN/STOP switch 2-13
SET 3-15 Resistance thermometer 7-2
SUB 5-23 Resolution (Analog modules) 7-3
TO 5-16 Retentive timers 4-7
Rising edge 3-14
L
LD instruction 3-6 S
LDI instruction 3-6 SET instruction 3-15
LDP/LDF instruction 3-14 SUB instruction 5-23
Safety for cable breaks 3-21
M
Service power supply 2-13
MC instruction 3-19
Signal feedback 3-22
MCR instruction 3-19
Special function modules
MOV instruction 5-8
Analog modules 7-4
MPP instruction 3-17
exchange of data with base unit 5-13
MPS instruction 3-17
Special registers 4-13
MRD instruction 3-17
Special relays 4-5
MUL instruction 5-24
Switch-off delay 4-18
Memory battery 2-13
T
O
TO instruction 5-16
OR instruction 3-11
Temperature acquisition modules
ORB instruction 3-12
Function 7-2
ORF instruction 3-14
Overview 7-6
ORI instruction 3-11
Temperature control module 7-5, 7-6, 7-7
ORP/ORF instruction 3-14
Thermocouples 7-2
OUT instruction 3-6
Timers 4-6
Octal numbers 3-4
Optical couplers 2-7
II MITSUBISHI ELECTRIC