Escolar Documentos
Profissional Documentos
Cultura Documentos
User Manual
XC series
Programmable controller
Operating manual
3 4 5 6 7
Applied instructions
Special function
V2.5
This manual includes some basic precautions which you should follow to keep you safe and protect the products. These precautions are underlined with warning triangles in the manual. About other manuals that we do not mention, please follow basic electric operating rules.
Precautions Please follow the precautions. If not, it may lead the controlsystem incorrect or abnormal, even cause fortune lose.
Correct Application
The models could only be used according to the manual, and an only be used along with the peripheral equipments recognized or recommended by Xinje Electronic. They could only work normally in the condition of be transported, kept and installed correctly, also please operate and maintain them according to the recommendation.
Xinje Electronic Co., Ltd. Copyright reserved Without exact paper file allowance, copy, translate or using the manual is not allowed. Disobey this, people should take the responsibility of loss. We reserve all the right of expansions and their design patent.
Duty Declare We have checked the manual, its content fits the hardware and software of the products.As mistakes are unavoidable, we couldnt promise all correct. However, we would check the data in the manual frequently, and in the next edition, we will correct the necessary information. Your recommendation would be highly appreciated
Preface
XC1 economic type: This sub-series has specifications of 16 I/O 24 I/O 32 I/O. The function is simple, suitable for common, small scale applications. They dont support high speed count, pulse output, free communication these advanced functions, also they can not connected with the expansions. For the details, please refer to the appendix 8-3 XC1 using description. XC3 Standard type: This sub-series belongs to the standard models of XC series PLC. They could fulfill most using requirements. If no special demonstrate, this manuals content are all written for XC3 series PLC.
XC5 strength type: This sub-series has specifications of 32 I/O48 I/O60 I/O . Besides the functions of XC3-PLC, XC5-32 has function of 4 channels pulse output, XC5-48, XC5-60 support CANBUS instructions, they can realize CAN bus network function. For the details, please refer to the appendix 8-4 XC5 using description
Memo
XC series
1-4General specification
1-6Terminal arrangement
XC
PLC
Program Format
Statement Program
AND OUTetc. these SFC Statement program is the format which useLD
instructions to input. This format is the basic input form to compile the SFC program. But its not convenient for understanding. E.g Step 0 Instruction LD ID X000
Ladder Program
Use sequencial control signal and soft units ID to draw the sequencial circuits graph on the screen, which is called ladder program. As this method uses trigger points symbols and coil symbols to denote the sequencial control circuit so it is easy to understand the programs contents. At the same time its also available to monitor the PLCs action via the status displayed in the circuit. E.g
The programs compiled with the preceding two methods are both stored in Alternation the PLCs program memory in the format of instruction table. So the
XC
PLC
XC3
XC Series Main Units Series Name 1 I/O points 2 3 Input FormatNPN RRelay output TTransistor output RT Mix output of Transistor /Relay Y0 Y1 are transistor Output Format PNP PRRelay output PTTransistor output PRT Mix output of Transistor /Relay Y0 Y1 are transistor Supply Power 4 EAC Power220V CDC Power24V Clock 5 SWith clock and RS485 COM port inside VacantWithout clock and RS485 COM port inside XC1 seriesXC3 seriesXC5 series
Relay Output
Transistor Output
DC24V RT
XC N P N Type P N P Type XC3-32PR-E XC3-32PT-E XC3-32PR-C XC3-32PT-C 16 points 16 points XC3-32R-E XC3-16PR-E XC3-24PR-E XC3-32T-E XC3-16PT-E XC3-24PT-E XC3-32R-C XC3-16PR-C XC3-24PR-C XC3-32T-C XC3-16PT-C XC3-24PT-C 16 points 8 points 12 points 16 points 8 points 12 points
PLC
XC3-16R-E XC3-24R-E
XC3-16T-E XC3-24T-E
XC3-16R-C XC3-24R-C
XC3-16T-C XC3-24T-C
8 points 12 points
8 points 12 points
Model AC Power DC Power Mix output (R&T) XC3-14RT-E XC3-24RT-E XC3-32RT-E XC3-48RT-E XC3-60RT-E XC3-14PRT-E XC3-24PRT-E XC3-32PRT-E XC3-48PRT-E XC3-60PRT-E XC3-14R-C XC3-24R-C XC3-32R-C XC3-48R-C XC3-60R-C XC3-14PR-C XC3-24PR-C XC3-32PR-C XC3-48PR-C XC3-60PR-C Relay Output Transistor Output XC3-14T-C XC3-24T-C XC3-32T-C XC3-48T-C XC3-60T-C XC3-14PT-C XC3-24PT-C XC3-32PT-C XC3-48PT-C XC3-60PT-C Mix output (R&T) XC3-14RT-C XC3-24RT-C XC3-32RT-C XC3-48RT-C XC3-60RT-C XC3-14PRT-C XC3-24PRT-C XC3-32PRT-C XC3-48PRT-C XC3-60PRT-C 8 points 14 points 18 points 28 points 36 points 8 points 14 points 18 points 28 points 36 points 6 points 10 points 14 points 20 points 24 points 6 points 10 points 14 points 20 points 24 points Input Output
Relay Output
Transistor Output
DC24V RT
XC3-14R-E N P N Type XC3-24R-E XC3-32R-E XC3-48R-E XC3-60R-E XC3-14PR-E P N P Type XC3-24PR-E XC3-32PR-E XC3-48PR-E XC3-60PR-E
XC3-14T-E XC3-24T-E XC3-32T-E XC3-48T-E XC3-60T-E XC3-14PT-E XC3-24PT-E XC3-32PT-E XC3-48PT-E XC3-60PT-E
Model AC Power DC Power Mix output (R&T) XC5-32RT-E XC5-48RT-E XC5-60RT-E XC5-32PRT-E Input Mix output (R&T) XC5-32RT-C XC5-48RT-C XC5-60RT-C XC5-32PRT-C 18 points 28 points 36 points 18 points 9 14 points 20 points 24 points 14 points Output
Relay Output
XC5-48R-C XC5-60R-C -
DC24V RT
PLC
28 points 36 points 20 points 24 points
XC5-48PR-E
XC5-48PT-E
XC5-48PRT-E
XC5-48PR-C
XC5-48PT-C
XC5-48PRT-C XC5-60PRT-C
XC
1
E
2 3 4 5 6
1 Series name 2 EExpansion 3 Input points 4 XInput 5 Output points 6 Output format YRRelay output YTTransistor output
I/O points
Input
Output
DC24V RT
8 points 16 points 16 points 16 points 32 points 32 points 32 points 16 points 8 points 16 points 32 points 8 points 16 points 8 points 16 points 32 points
XC-E16X -
XC-E32X -
XC-E32YR
10
XC
PLC
Expansion
XC series PLC can be used independently or used along with the expansions. The following is the chart of a basic unit with 7 expansions.
X1 X3 X5 X7 X11 X13 X15 X17 X21 X23 X25 X27 X31 X33 X35 X37 X41 X43 CO M X0 X2 X4 X6 X10 X12 X14 X16 X20 X22 X24 X26 X30 X32 X34 X36 X40 X42 CO M
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
FG
CO M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
XC- E16YR
PO RT1 PORT2
PW R
PW R R U N ER R
XC- E16X
X Y
PW R R U N ER R
XC- E8X8YR
X Y
PW R R U N ER R
XC- 8AD
X Y
PW R R U N ER R
XC3- 4AD2DA
X Y
PW R R U N ER R
XC- 8PT
X Y
PW R R U N ER R
XC- 6PT- P
X Y
PW R R U N ER R
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B COM 0 Y1 Y2 Y4
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B COM 0 Y1 Y2 Y4
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B CO M 0 Y1 Y2 Y4
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B CO M 0 Y1 Y2 Y4
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B CO M 0 Y1 Y2 Y4
0 1 2 3 4 5 6 7 24V A Y0 CO M 1 Y3 Y5 0V B CO M 0 Y1 Y2 Y4
0V
24V
C AN+ CAN -
C O M 0
Y0
CO M 1
Y1
CO M 2
Y2
CO M 3
Y3
Y4
Y5
Y6
CO M 4
Y7
Y10
Y11
Y12
Y23 Y25 Y27 Y13 Y15 CO M 6 Y20 Y22 C O M 5 Y14 Y16 Y17 Y21 CO M 7 Y24 Y26
Constitution Rules
Input/Output switch quantity is Octal Input/Output analog quantity is Decimal PLC main units can connect with 7 expansions and a BD module. The input/output type is not limited, both switch or analog quantity are available.
11
XC
PLC
Max points/ Channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels -
ID Assignment
Unit
ID
As register
X100~X137 Y100~Y137
Expansion 1#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
ID100~ID131
QD100~QD131
D8250~D8259 X200~X237 Y200~Y237 ID200~ID231
Expansion 2#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD200~QD231
D8260~D8269 X300~X337 Y300~Y337 ID300~ID331
Expansion 3#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD300~QD331
D8270~D8279 X400~X437 Y400~Y437 ID400~ID431
Expansion 4#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD400~QD431
D8280~D8289 X500~X537 Y500~Y537 ID500~ID531
Expansion 5#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD500~QD531
D8290~D8299 X600~X637 Y600~Y637 ID600~ID631
Expansion 6#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD600~QD631
D8300~D8309 X700~X737 Y700~Y737 ID700~ID731
Expansion 7#
Input analog quantity ID Output analog quantity QD Modules set value D Input switch quantity X Output switch quantity Y
QD700~QD731
D8310~D8319 X1000~X1037 Y1000~Y1037 ID1000~ID1031
BD Board
QD1000~QD1031
D8320~D8329
12
XC
PLC
1-4General Specification
General Specification
Items Insulate voltage Anti-noise Ambient temperature Ambient humidity COM 1 COM 2 Up to DC 500V 2M 1000V 1uS pulse per minute 0~60 5%~95%
Specifications
RS-232, connect with host machineHMI program or debug RS-232/RS-485, connect with network or aptitude instrumentinverters etc.
BD board COM port RS-232C/RS-485 CANBUS COM port (XC5 series) Can use M3 screw to fix or install directly on DIN46277 (Width 35mm)
13
XC
PLC
Performance
XC3 series
Item Program executing format Program format Dispose speed Power cut retentive User programs capacity I/O points Interior coils points (M) Points Timer
Loop scan formattime scan format Both statement and ladder 0.5us Use FlashROM and Li battery 2500 steps 8I/6O 8000 steps Input 14/18 points Output 10/14 points 8512 points 620 points 100mS timerSet time 0.1~3276.7 seconds Input 28/36 points Output 20/24 points
T Spec. 10mS timerSet time 0.01~327.67 seconds 1mS timerSet time 0.001~32.767 seconds Points 635 points 16 bits counterset value K0~32767 Spec. 32 bits counterset value K0~2147483647 Data RegisterD 8512 words
Counter
14
XC
PLC
Exterior Size
XC1 series 16 points main units XC3 series 14 points main units (Including 16 points expansions)
63 55
73.3
FG
C O M X0 X2 X4 X6 X1 X3 X5 X7 0 1 2 3 4 5 6 7
110 102 94
XC3- 14RT- E
X Y
PW R RUN ERR
0 1 2 3 4 5 6 7 24V A Y0 C O M 1 Y3 Y5 0V B C O M 0 Y1 Y2 Y4
X in je E le c t r o n ic C o . , L t d
S N : 0 0 6 7 0 3 2 2 6 6
D A T E : 2 0 0 6 0 4 1 0
T Y P E : X C 3 1 4 R E
3.5
XC1 series 32 points main units (Including 24 points main units) XC3 series 32 points main units (Including 24 points main units XC5 series 32 points main units
32 points expansions)
73.3
139 131
FG
C O M X1 X3 X5 X7 X11 X13 X15 X17 X21 C O M X0 X2 X4 X6 X10 X12 X14 X16 X20
0 1 2 3 4 5 6 7
PO RT1
PO RT2
XC 3- 32R - E RUN
Y
PW R ERR
0 1 2 3 4 5 6 7
0V A C O M 0 C O M 1 C O M 2 Y3 Y5 Y6 Y10 C O M 4 Y13 Y15 Y11 Y12 Y14
X in je E le c t r o n ic C o . , L t d
S N : 0 0 6 7 0 3 2 2 6 6
D A T E : 2 0 0 6 0 4 1 0
T Y P E : X C 3 3 2 R E
110 102 94
24V
Y0
Y1
Y2
Y4
C O M 3
Y7
3.5
15
XC
PLC
XC3 series 60 points main units (Including 48 points main units) XC5 series 60 points main units (Including 48 points main units)
207.4 199.4
73.3
X3 X5 X7 X11 X13 X15 X17 X21 X23 X25 X27 X31 X33 X35 X37 X41 X43 CO M X1 CO M X0 X2 X4 X6 X10 X12 X14 X16 X20 X22 X24 X26 X30 X32 X34 X36 X40 X42
0 1 2 3 4 5 6 7
PO RT1
PO RT2
PW R
0 1 2 3 4 5 6 7
X in je E le c t r o n ic C o . , L t d
Y26 Y27
S N : 0 0 6 7 0 3 2 2 6 6
D A T E : 2 0 0 6 0 4 1 0
T Y P E : X C 3 6 0 R E
102 94
24V
0V
CAN+
CAN-
CO M 0
Y0
CO M 1
Y1
CO M 2
Y2
CO M 3
Y3
CO M 4
Y4
Y5
CO M 5
Y6
Y7
CO M 6
Y10
Y11
Y12
Y13
CO M 7
Y14
Y15
Y16
Y17
CO M 8
Y20
Y21
Y22
Y23
CO M 9
Y24
Y25
16
XC
PLC
1-6Terminal arrangement
Main Units
Input terminals BD expansion Input label COM port COM port COM ports cover board Output label Output terminals Screws Input indicate LED Extension port Programming status indicate LED Output indicate LED
XC3- 60 main units XC5- 60 main units 36 Input/24 Output
24V 0V CAN+ A CANCOM B X0 COM 0 X2 Y0 X3 COM 1 X4 Y1 X5 CO M 2 X6 Y2 X7 CO M 3 CO M 4 Y5 Y6 CO M 6 Y11 Y13 Y14 Y16 CO M 8 Y21 Y23 Y24 Y26 Y3 Y7 Y10 Y12 COM 7 Y15 Y17 Y20 Y22 CO Y27 Y4 CO M 5 M 9 Y25 X10 X11 X12 X13 X14 X15 X16 X17 X20 X21 X22 X23 X24 X25 X26 X27 X30 X31 X32 X33 X34 X35 X36 X37 X40 X41 X42 X43
X1
CO M
17
XC
CO M X1 X3 Y0 X5 Y1 X7 Y2 X11 X13 X15 X17 X21 X23 X25 X27 X31 X33
PLC
CO M 24V 0V CAN+ A
X0 B
X2 CO M 0
X4 CO M 1
X6 CO M 2
X10
X12
X14
X16
X20
X22
X24
X26
X30
X32
CAN-
Y3 Y4 CO M 5 Y7 Y10 Y12 CO M 7 Y15 Y17 Y20 Y22 COM 3 CO M 4 Y5 Y6 COM 6 Y11 Y13 Y14 Y16 COM 8 Y21 Y23
XC1- 32 main units XC3- 32 main units XC5- 32 main units 18 Input /14 Output
FG 24V 0V A
X3 X5 X7 X11 X13 X15 X17 X21 CO M X1 X2 X4 X6 X10 X12 X14 X16 X20 CO M X0 CO M 0 Y0 M 2 Y3 M 4 Y13 Y15 CO M 1 CO Y5 Y6 Y10 CO Y1 Y2 Y4 CO M 3 Y7 Y11 Y12 Y14
FG 24V 0V
XC-E8X8YR
COM X1 X3 X5 X7 COM X0 X2 X4 X6 CO M 0
XC-E16X
Y0
CO M 1
Y1
COM 2
Y2
Y3
CO M 3
Y4
Y5
Y6
Y7
18
XC
PLC
COM X11
X0 X12
X1 X13
X2 X14
X3 X15
X4 X16
X5 X17
X6
X7
XC-E16YR
CO M 0 CO M 4
Y0 Y10
CO M 1 COM 5
Y1 Y11
CO M 2 COM 6
Y2 Y12
Y3 Y13
CO M 3 COM 7
Y4 Y14
Y5 Y15
Y6 Y16
Y7 Y17
19
XC
PLC
COM 1
Pin of COM 1
1 3 4 6 7
2 5 8
4RxD 5TxD
2 PRG
COM 2
Pin of COM 2
1 3 4 6 7
2 5 8
RxD 5TxD
4
Program Cable
2 1 5 43 8 6 7
Mini Din 8 core socket (pin)
20
MEMO
14
2-1
Power Specification AC PowerDC Input Type Input Specification DC input signal disposal (AC power type) Output Specification
2-2
2-3
2-4
2-5
2-6
2-7
15
16
2-1Power Specification
For the power specification of XC series programmable controllers basic units, please see the following table
Rated voltage Voltage allow bound Rated frequency Allow momentary power-cut time Impact current Max power consumption Power for sensor use AC100V~240V AC90V~265V 50/60Hz Interrupt time 0.5 AC cycle
AC Power Type
alternation1 sec
max 60A 5mS
To avoid voltage decrease, please use the power cable thicker than 2mm2 Even appear power cut within 10ms PLC can still go on working. But if long time power cut or abnormal power decrease, PLC will stop working, output will also appear OFF status when recover power supply, the PLC will auto start to work. Connect the grounding terminals of basic units and extend modules
DC power type
Rated voltage Voltage allow bound Input current (Only basic unit) Allow momentary power-cut time Impact current Max power consumption Power for sensor use
17
18
2-2AC PowerDC Input Type
The power is connected between L and N terminals. 24+ COM terminals can be used as power 400mA/DC24V which supply sensor. Besides, this terminal cant be given power from outside. terminal is vacant terminal please dont go on exterior connection or use it as relay terminal.
19
2-3Input Specification
Basic Units Input signals voltage Input signals current Input ON current Input OFF current Input response time Input signals format Circuit insulation Input actions display
DC24V 10% 7mA/DC24V Up to 4.5mA Low than 1.5mA About 10ms Contact input or NPN open collector transistor Photo-electricity coupling insulation LED light when input ON
Expansions
Input signals voltage Input signals current Input ON current Input OFF current Input response time Input signals format Circuit insulation Input actions display
DC24V 10% 7mA/DC24V Up to 4.5mA Below 1.5mA About 10ms Contacts input or NPN open collector transistor Photo-electricity coupling insulation LED light input ON. when
20
2-4DC Input Signals DisposalAC Power Type
DC input signal
COM
NPN open collector transistor, if input is ON There are many Input circuit COM
Use optical coupling instrument to insulate the input once circuit and twice circuit
Theres a C-R filter in the twice circuit It is set to avoid wrong operation caused by vibration of input contacts or noise along with input signal. As the preceding reason, for the changing of input ON OFF OFF ON
in PLC, the response time delays about 10msTheres a digital filter inside X000~X015This kind of filter can very from
21
XC series PLCs input power is supplied by its interior 24V power so if use exterior power to drive photoelectricity sensor etc.,
this exterior
Input Connection
22
2-5Output Specification
Relay output Interior power Circuit insulation Action denote Max load Resistant load Induce load Lamp load Open circuits leak current Mini load Response time OFF ON
Below AC250V DC30V Mechanism insulation LED indicate lamp 3A 80VA 100W DC5V 2mA
ONOFF
10ms 10ms
Transistor Output
Interior power Circuit insulation Action denote Max load Restance load Induce load Lamp load Open circuits current Mini load Response time OFF ON leak
Below DC5~30V Optical coupling insulation Indicate lamp LED 0.8A 12W/DC24V 1.5W/DC24V DC5V 2mA
ONOFF
23
Output terminals Relay output type includes 2~4 public terminals. So each public-end unit can drive different power-voltage systems (E.g. Circuits insulation Between the relay output coils and contacts PLCs interior circuits and exterior circuits, load circuits are electric insulation. Besides, each public-end blocks are separate. Action display LED lamp lights when output relays coils galvanize, output contacts are ON. Response time From the output relay galvanize (or cut) to the output contacts be ON (or OFF), the response time is about 10ms Output current The current-voltage below AC250V can drive the load of pure resistace 2A/1 point inductance load below 80VA AC100V or AC200V Open circuits leak current When the output contact be OFF and theres no leak current can directly drive Ne lamp etc.
24
For DC induce load, please parallel connect with commutate diode. If not connect with the commutate diode, the contacts life will be decreased greatly. Please choose the commutate diode which allow inverse voltage endurance up to 5~10 times of the loads voltage, ordinal current exceeds load current. Parallel connect AC induce load with surge absorber can reduce noise.
DC load
AC load
25
Output terminal Basic units transistor output has 1~4 public-end output. Exterior power Please use DC5~30V steady-voltage power for load drive, Circuit insulation Use photoelectricity coupling device to insulate PLCs interior circuit and output transistor. Besides, each public block is separate. Action denote When drive optical coupling LED lights output transistor is ON. Response time From photoelectricity coupling device drive (or cut) to transistor ON (or OFF), the time PLC uses is below 0.2ms. Output current The current is 0.5A per point But as restrict by temperature goes up, the current is 0.8A every four points.
26
27
E.g. The following is the connection graph of RT type PLC with step motor driver
PLC side
Y0
PU
Y1
PU
28
MEMO
29
3-1
Every Soft Unit of PLC Soft Units ID List Disposal of Data Some Encode Principle of Soft Units Timers ID and Function [T]
3-2
3-3
3-4
3-5
3-6
3-7
31
3-1Every Soft Unit of Programmable Controller
timers and countersthey all have Normally open contactsand b contactsNormally closed contacts countless a contacts
InputXand outputYrelay In each basic unit assign the ID of input relay, output relay in the format of X000~X007X010~X017,Y000~Y007Y010~Y017 this octal format. The ID of
extension is connected behind basic unit. The ID of expansion obeys the principle of channel 1 starts from X100/Y100, channel 2 starts from X200/Y200 7 expansions could be connected totally. Use digital filter in the special input filter of input relay, so you can use the program to
Auxiliary relayM
is different from input/output relay it cant gain exterior input it also cant drive exterior loadit can only be used in the program Status S Relay used as step ladder chart. When not used as working procedure No.its the same with auxiliary relay and can be
Auxiliary relay is the relay inside the programmable controller this type of output relay used as common contact/coil to carry on programming. Besides, it can also be signal
TimerT
reach certain set value, output contact act.
Timer could carry on plus operation to 1ms 10ms 100ms etc. time pulse in PLC, When
T100~T199 are timers with the unit of 100ms clock pulse their current values are the
32
CounterC
purpose
The counters can be divided into the following sorts according the their usage and
[Used for interior count] Common use / power failure retentive use 16 bits counter Used for plus count count bound: 1~32,767
147,483,647 These counters are used for PLCs interior signals, usually their response speed is below 10Hz. [Used for high-speed count] For power failure retentive use 32 bits counter: For plus / minus count, count bound: -2,147,483,648~+2,147,483,6487 (Single phase plus count single phase plus/minus count AB phase
Data registerD
Data register is the soft unit used by data register to save data. XC series PLCs data registers are all 16 bits (The high bit is the sign bit), Combine two registers can carry on 32 bits data disposal (The high bit is the sign bit). Just the same with other soft units, data registers can also be divided to be two types: for common use and power failure retentive use.
ConstantK (H)
In the diverse value used by PLC, K means decimal integer H means Hex. Value. They are used to be the set value and current value for the timer and counter, or applied
PointerP I
Pointers are used for branch and interrupt. The pointer (P) used by branch is the jump aim used for condition jump or subroutine jump. Pointer used for interrupt is used for the assigned input interrupt, time interrupt.
33
3-2Devices ID List
For the allocate of devices ID, please see the following list
Besides, when connect input / output expansions and special expansions on the basic units, for
Bound Mnemonic Name 14 points 24\32 points X000~X015 X000~X021 Y000~Y011 Y000~Y015 48 \60 points X000~X033 X000~X043 Y000~Y023 Y000~Y027
points 24\32 48 \60 14 points points points 8 points 14\18 28\36 points points 10\14 20\24 points points 8000 512
Input relay
X000~X007
Output relay
Y000~Y005
6 points
S512~S1023
T0~T99 100ms not accumulation
1024
Timer
620
Counter
T500~T5991ms accumulation T600~T6181ms with interruption precise time C0~C29916 bits forth counter C300~C59832 bits forth/back counter
T400~T499 1ms not accumulation
635
34
NOTE
1. The memorizer area in is the defaulted power failure retentive areasoft elements D M S T C can be set to change the power failure retentive area. For the
details, please see the following table
2. FlashROM register neednt set power failure retentive, its data wont lose when power is
Setting of soft units power failure saving area: Systems defaulted value 4000 3000 620 320 512 Mnemonic Set area Function Start denotation of D power cut save area Start denotation of M power cut save area Start denotation of M power cut save area Start denotation of C power cut save area Start denotation of S power cut save area Memory bound of power drop D4000~D8000 M3000~M8000 Not set C320~C640 S512~S1024
D M T C S
35
3-3Data Disposal of Programmable Controller
According to different usage and purpose, XC series programmable controllers use 5 types of count format. For their usage and function, see the following
DEC DECDECIMAL
NUMBER
The set value of timer and counter K constant The ID of auxiliary relay M
timerT counterC statusS Soft HEX HEXHEXADECIMAL NUMBER The same with DEC datait is used to assign the value in the operands and BIN BINBINARY NUMBER Just as said beforecarry on data allocation to timer, counter or data register in
the format of DEC. or Hex., But in the PLC, these data are all be put in the format of binary data. And, when carry on monitor on the peripherial device,
OCT OCTOCTAL
NUMBER
10-17 70-77
The input relay, output relays soft units ID of XC series PLC are allocate in the format of OCT data. So, it can go on carry of [1-7
CODE DECIMAL
BCD is the method which use 4 bits binary to denote decimal 0~9. Its easy to despose bit. So, BCD is available to denote digital switch or 7 segments display
XC series PLC has the function of high precision floating point operation. Use binary floating point data to execute floating point operation, use decimal floating value to
36
3-4Some encode principles of device
M8002
MOV
K0
D0
M2
MOV
K5
D0
M8000
MOV
D10[D0]
D100
Y0[D0]
When M2 turns from OFF to be ON, D0=5, then D100=D15, Y5 is ON. When D10[D0]=D[10+D0], Y0[D0]=Y[0+D0]. Words offset composed by bit soft units DXn[Dm] means DX[n+Dm] 2
Bit units compose word Input Xoutput Ymiddle coil M could compose 16 bits word. E.g. DX0 means
X0~X17compose to be a 16 bits data. DX20 means X20~X37 combines a 16 bits data.
M0
MOV
K21
DY0
M1
MOV
K3
D0
M8000
MOV
DX2[D0]
D10
In the preceding example, when M0 turns from OFF to be ON, the value of the word DY0 composed by Y0~Y17 equals 21 i.e. Y0 Y2 Y4 turns to be ON status. Before M1 be activate, when D0=0, DX2[D0] means a word composed by X2~X21
When M1turns from OFF to be ON, D0=3, then DX2[D0] means a word composed by X5~X24 DXn the bound of n is the exact bound of X add 0 if not enough.
37
Y0 Y1
D5[D1].4
In the preceding example, D0.4 means when the No.4 bit of D0 is 1, Y0 set ON D5[D1].4 means bit searching address with offset, if D1=5
bit of D10. The bit of word device with offset is denoted as Dn[Dm].x 4
To T and C register, Tn/Cn means be a bit register or a word register should be distinguished by the instructions.
T11
MOV T11 D0
K99
M0
T11
Y1
Tag typePI e.g. P means the tag which using CJ instruction or CALL instruction which could jump; I
means interrupt tag.
38
3-5Timers Number and Function [T]
Please see the following table for the timers [T] number (the number is assigned according to Hex.) T0~T99 T100~T199 T200~T299 T300~T399 T400~T499 T500~T599
Timers number
16 bits 100ms accumulated16 bits 10ms not accumulated16 bits 10ms accumulated16 bits
100ms not accumulated
The timer accumulates clock pulse of 1ms 10ms 10ms inside PLC. When reach the set value, the output contact activates. The common timers dont set exclusive instructions, use OUT instruction to time; use constant K in the program memory, also you could use If drive input X000 of time coil T200 is ON, T200 accumulates 10ms clock pulse with the current value timer. If this current value equals the set value K200, timers output contact activates. That is, output contact activates after 2 seconds of coil driving. Driving input X000 cut or power cut, timer reset, output contact reset.
Common format
39
If the drive input X001 of timers coil T300 is ON, T300 accumulates 10ms clock pulse with the current value counter. When the value reaches the set value K2000, counters output contact activates. In the count process, even the input X001 cut or drop power, when start again, go on counting, its accumulation time is 20 seconds. When reset input X002 is ON, timer reset, output contact reset.
Action
Accumulation format
T10 is a timer with the unit of 100ms. Assign 100 as a constant, then 0.1s 100=10s timer work.
Write content in indirect data register to program or input via data switch. When assigned as power cut retentive register, please note that voltage low will cause the set value instable.
The count format of Timers T0~T599 is 16 bits linear increment mode (0~K32,767). If the timers count value reaches the maximum value K32767, the timer will stop timing, the timers status will remain the same status.
Y0
X0
X0 K200 Y0 T2
T2
Flicker
40
X0 T1 T2
T1 T2 Y0
K20 X0 K10 Y0 T1 T2 T1
If X000 activates, Y000 starts flicker output. T1 controls the OFF time of Y000, T2 controls the ON time of Y000.
For the counters number (C), please refer to the following table: Counters ID 16 bits positive counter 32 bits positive/negative counter C0~C299 C300~C598 (C300, C302...C598) (Each one engrosses 2 counter No.) The number must be even. C600~C634(C600,C602...C634) (Each one engrosses 2 counter No.) The number must be even
The characters of 16 bits counter and 32 bits counter are shown below:
16 bits counter Positive 1~32,767 Constant K or data register Change after positive count Hold the action after positive count
32 bits counter Positive/negative -2,147,483,648~+2,147,483,647 Same as the left, but data register must be in a couple Change after positive count (Loop counter) Hold the action after positive count, reset if negative count
The assigned set value Changing of the current value Output contact
Reset activates
41
16 bits
32 bits
Function
About the assignment of normally used counter and power failure retentive counter, they could be changed in the method of changing FD parameters setting via the peripheral device. 16 bits binary increment counter, its valid setting value is K1~K32,767 (Decimal constant). The set value K0 and K1 have the same meaning, i.e. act when output contacts at the beginning of first time count. If cut the PLCs power, then the value of the normally use counter will be reset. However, counter used by power cut retentive could save the count value after power cut, and the counter will go on counting from the value.
X0
RST
C0
X1
C0
K10
C0
Y0
Every time when X001 drives coil C0, the counters current value will increase. When execute the coil instruction the tenth time, output contact acts. Later, even X001 activates, counters current value will not change. If reset input X000 is ON, execute RST instruction, counters current value is 0, output contacts activates. For the counters set value, it could not only set by constant K, but also be assigned by data registers ID. E.g. assign D10, if the content of D10 is 123, its the same with setting K123. When write the set value to the current value register via MOV instruction etc. When input next time, output coil gets, current value register turns to the set value.
42
For 32 bits binary increment counter, its valid bound is K1~K2,147,483,647 (Decimal constant). With special auxiliary relay M8238, assign the direction of bits positive/negative counters (C300~C498) direction If X2 drives M8238, then it is negative count If no drive, then it is
X2
43
32 bits counter For normally use or power count retentive Assign method of the set value
positive count. According to constant K or to the X3 RST C300 content of data register D, set the value to be positive. Treat contents X4 in consecutive data register as a C300 K10 pair, and dispose it as 32 bits data. C300 So, when assign D0, dispose D0 Y1 and D1 as a 32 bits set data. If use count input X004 to drive coil C300, execute increase count. When reset input X3 is ON, execute RST instruction, counters current value turns to be 0, output contact resets. When use counter as power cut retentive, counters current value, output contacts action and reset status cut power retentive. 32 bits counter can also be used as 32 bits data register. But 32 bits data register cant be used as device in 16 bits applied instructions.
M8238
16 bits counter
Constant assignmentK
X001
C0
K100
Indicate assignmentK
X000 MOV K100 D5 X001 C0 D5
32 bits counter
Constant assignmentK
X001 C300 K43,100
Indicate assignmentK
X000 DMOV K43100 D0 X001 C300 D0 D1
The count mode of counters T0~T599 is 16 bits linear increment mode (0~K32767). When counters count value reaches the max value K32767, the counter will stop counting, the counters status will remain.
44
As shown in the left map, please consider the things of using the same coil Y003 at many positions: E.g. X001=ON X002=OFF
X1
Y3 Y4 Y3
Y3
X2
At first, X001 is ON, its image area is ON, output Y004 is also ON. But, as input X002 is OFF, the image area of Y003 is OFF.
When executing dual output (use dual coil), the back side act in prior
46
47
4-1
4-2
4-3
4-4
4-5
4-6
Compare Instructions ORB ANB ALT SET, RST OUT, RST (Compare with counters soft unit) NOP, END Note Items When Programming
4-7
4-8
4-9
4-10
4-11
4-12
4-13
4-14
4-15
48
49
4-1List of Basic Instructions
XC1
LDF (LoaD Falling Pulse) AND (AND) ANI (AND Inverse) ANDP (AND Pulse) ANDF (AND Falling pulse) OR (OR) ORI (OR Inverse) ORP (OR Pulse) ORF (OR Falling pulse) ANB (ANd Block) ORB (OR Block) OUT (OUT) SET (SET) RST (ReSeT) PLS (PuLSe)
X Y M S T C Dn.m FDn.m X Y M S T C Dn.m FDn.m X Y M S T C Dn.m FDn.m X Y M S T C Dn.m FDn.m Y M S T C Dn.m FDn.m X
X Y M S T C Dn.m FDn.m
Y M S T C Dn.m FDn.m X X Y M S T C Dn.m FDn.m X Y M S T C Dn.m FDn.m Y M S T C Dn.m FDn.m X X Y M S T C Dn.m FDn.m
X Y M S T C Dn.m FDn.m None None
PLF (PuLse Falling) MCS (New bus line start) MCR (Bus line return) ALT (Alternate state) NOP (No Operation) END (END) Falling/trailing edge pulse Connect the public serial contacts Clear the public serial contacts The status of the assigned device is inverted on every operation of the instruction No operation or null step Force the current program scan to end X Y M S T C Dn.m None None
X Y M S T C Dn.m
None None
51
4-2 LD,LDI,OUT
Mnemonic
Mnemonic LD (LoaD)
Function
Devices X Y M S T C Dn.m
FDn.m OUT (OUT)
Devices X Y M S T C Dn.m
FDn.m
Statement
Connect the LD and LDI instructions directly to the left bus bar. Or use them to define a new block of program when using ANB instruction. OUT instruction is the coil drive instruction for the output relay
auxiliary relay status timer counter. For the input relay, cannot use. Can not sequentially use parallel OUT command for many times. For the timers time coil or counters count coil, after using OUT instruction, set constant K is necessary. For the constant Ks set bound
52
Timer/Counter 1ms timer 10ms timer 100ms timer 16 bits counter 32 bits counter 1 Setting bound of K The actual set value 0.001 32.767 seconds
32,767 32,767
1 1
2,147,483,647
X0
Program
Y100 M1203 T0
K19
X1
T0
Y1
4-3 AND,ANI
Mnemonic
Function
Mnemonic
AND (AND)
Devices X Y M S T C Dn.m
FDn.m
M0
Devices X Y M S T C Dn.m
FDn.m
53
Use the AND and ANI instructions for serial connection of contacts. As many contacts as required can be connected in series. They can be used for many times. The output processing to a coil, through writing the initial OUT instruction is called a follow-on output (For an example see the program below: OUT M2 and OUT Y003). Follow-on outputs are permitted repeatedly as long as the output order is correct. Theres no limit for the serial connected contacts No. and follow-on outputs number.
Description
X2 M1
Y2 M2 T1 Y3
Program
Y2 X3
X2 M1 Y2 Y2 X3 M2 T1 Y3
4-4 OR,ORI
54
Mnemonic and Function
Mnemonic Function Format and Devices
OR (OR)
YMSTCDn.m
YMSTCDn.m
Description
Use the OR and ORI instructions for parallel connection of contacts. FDn.m To connect a block that contains more than one contact connected in series to another circuit block in parallel, use an ORB instruction. OR and ORI start from the instructions step, parallel connect with the LD and LDI instructions step said before. There is no limit for the parallel connect times.
X5
Program
Y6
M100
55
Relationship with ANB The parallel connection with OR, ORI instructions should connect with LD, LDI instructions in principle. But after the ANB instruction, its available to add a LD or LDI instruction.
4-5 LDP,LDF,ANDP,ANDF,ORP,ORF
Mnemonic
Function
XYMSTCDn.m
Devices FDn.m
XYMSTCDn.m
Devices FDn.m
XYMSTCDn.m
XYMSTCDn.m
M0
Devices FDn.m
XYMSTCDn.m
M0
Devices FDn.m
XYMSTCDn.m
LDP Description
ANDPORP are active for one program scan after the ANDFORF are active for one program scan after the
M13 M15
Program
M8000 X7
LDP ORP OUT LD ANDP OUT LDF ORF OUT LD ANDF OUT
X5 X6 M8000 X7
M13
M15
57
In the preceding chart, when X005 X007 turns from ON to OFF or from OFF to ON, M13 or M15 has only one scan cycle activates.
Output drive
In two conditions, when X0 turns from OFF to ON, M20 gets a scan cycle.
NOTE
X10
MOV K10 D0
When X10 turns from OFF to ON, only execute once MOV instruction. When X10 turns from OFF to ON, each scan cycle execute once MOV instruction.
X10
MOV
K10
D0
58
4-7 ORB
Mnemonic
Function
Description
To declare the starting point of the circuit (usually serial circuit blocks) to the preceding circuit in parallel. Serial circuit blocks are those in which more than one contacts in series or the ANB instruction is used. An ORB instruction is an independent instruction and is not associated with any device number. There are no limitations to the number of parallel circuits when using an ORB instruction in the sequential processing configuration. When using ORB instructions in a batch, use no more than 8 LD and LDI instructions in the definition of the program blocks (to be connected parallel).
Program
X0 X1 X2 X3 X4 X5
X0 X1 X2 X3 X4 X5
59
4-8 ANB
Devices none
Description
To declare the starting point of the circuit block, use a LD or LDI instruction. After completing the parallel circuit block, connect it to the preceding block in series using the ANB instruction. It is possible to use as many ANB instructions as necessary to connect a number of parallel circuit blocks to the preceding block in series. When using ANB instructions in a batch, use no more than 8 LD and LDI instructions in the definition of the program blocks (to be connected in parallel)
Program
X0 X1 X2 X3 X4 X5 X6 X7 Y20
Start of a branch Start of a branch End of a parallel circuit block End of a parallel circuit block Serial connect with the preceding circuit
60
61
4-9 MCS,MCR
Mnemonic
Mnemonic
Devices None MCR (Master control Reset) Denotes the end of a master control block Devices None
Y0
Description
After the execution of an MCS instruction, the bus line LD LDI shifts to a point after the MCS instruction. An MCR instruction returns this to the original bus line. MCS MCR instructions should use in pair. The bus line could be used nesting. Between the matched MCS MCR instructions use matched MCS
X1
X2 M1 M3 M2
Y0 Y1 Y2
Description
62
4-10 ALT
Mnemonic
Function
The status of the assigned devices inverted on every operation of the instruction
Devices
YMSTCDn.m
Description
The status of the destination device is alternated on every operation of the ALT instruction.
M100
Program
M0 M0
ALT
M0
Y0 Y1
M100 M0 M0 Y0 M0 Y1
63
4-11 PLS,PLF
Mnemonic
Function
PLS (PuLSe)
Devices
YMSTCDn.m YMSTCDn.m
Devices
Description
When a PLS instruction is executed, object devices Y and M operate for one operation cycle after the drive input signal has turned ON. When a PLF instruction is executed, object devices Y and M operate for one operation cycle after the drive input signal has turned OFF.
X0
PLS SET
M0 Y0
Program
M0
X1 M1
PLF RST
M1 Y0
64
4-12 SET,RST
Mnemonic
SET (SET)
YMSTCDn.m YMSTCDn.m
RST (ReSeT)
device
Devices
Description
Turning ON X010 causes Y000 to turn ON. Y000 remains ON even after X010 turns OFF. Turning ON X011 causes Y000 to turn OFF. Y000 remains OFF even after X011 turns OFF. Its the same with M
S. SET and RST instructions can be used for the same device as many times as necessary. However, the last instruction activated determines the current status. After assign the start definition ID and end definition ID, operate the operands in one bound at the same time is available. Besides, its also possible to use RST instruction to reset the current contents of timer, counter and contacts. LD SET LD RST LD SET LD RST LD SET X10 Y0 X11 Y0 X12 M50 X13 M50 X14 S0
65
X10 SET RST SET RST SET RST Y0 Y0 M50 M50 S0 S0
Program
T250
RST T250
K10
X10
X11
Y0
Mnemonic
Function
device
C0 carries on increase count for the OFF ON of X011. When reach the set value K10, output contact C0 activates. Afterwards, even X011 turns from OFF to ON, counters current value will not change, output contact keep on activating. To clear this, let X010 be the activate status and reset the output contact. Its necessary to assign constant K or indirect data registers ID behind OUT instruction.
66
Programming
X11
C0
C0
Y0
Counter used for power cut retentive. Even when power is cut, hold the current value and output contacts action status and reset status.
In the preceding example, when M0 is ON, carry on positive count with OFF ON of X0. Counters current value increase, when reach the set value (K or D), the output contact is reset. When M1 is ON, counters C600 output contact is reset, counters current value turns
4-14 NOP,END
Mnemonic
Function
the scan
Devices: None
Description
When clear the whole program, all the instructions become NOP. If add NOP instructions between the common instructions, they have no effect and PLC will keep on working. If add NOP instructions in the program, then when modify or add programs, the step vary will be decreased. But the program should have rest quantity. If replace the programs instructions with NOP instructions, then the
OUT NOP
67
OR NOP
Open circuit
PLC repeatedly carry on input disposal, program executing and output disposal. If write END instruction at the end of the program, then the instructions behind END instruction wont be executed. If theres no END instruction in the program, the PLC executes the end step and then repeat executing the program from step 0. When debug, insert END in each program segment to check out each programs action. Then, after confirm the correction of preceding blocks action, delete END instruction. Besides, the first execution of RUN begins with END instruction.
When executing END instruction, refresh monitor timer. (Check if scan cycle is a long timer. )
1 Contacts structure and step number Even in the sequencial control circuit with the same action, its also available to simple the program and save programs steps according to the contacts structure. General program principle is a
write the circuit with many serial contacts on the top b write the circuit with many parallel contacts in the left.
If carry on coils dual output (dual coil) in the sequencial control program, then the backward action is prior. Dual output (dual coil) doesnt go against the input rule at the program side. But as the preceding action is very complicate, please modify the program as in the following example.
X0
X2
Y0
X0
X2
Y0
X3 X3 X4
X4
Y0
X0
X2
M0
X3
X4
M1
M0 M1
Y0
There are other methods. E.g. jump instructions or step ladder. However, when use step ladder, if the main programs output coil is programmed, then the disposal method is the same with dual coil, please note this.
Memo
69
5Applied Instructions
In this chapter, we describe applied instructions function of XC series PLC.
70
5-2
Reading Method of Applied Instructions Flow Instructions Contactors Compare Instructions Move and Compare Instructions
5-3
5-4
5-5
5-6
5-7
5-8
5-9
5-10
71
ST FOR NEXT FEND Open the assigned flow, not close the current flow Start of a FOR-NEXT loop End of a FOR-NEXT loop First end LD activates if (S1) = (S2) LD activates if (S1) > (S2) LD activates if (S1) =< (S2)
LD LD LD LD
LD LD
S2 LD activates ifS1S2
LD activates if S1
AND
AND
AND
AND AND
S2 AND activates ifS1 S2 AND activates ifS1 S2 AND activates ifS1 S2 AND activates if S1 S2 AND activates if S1 S2
LD activates if S1
OR OR OR OR
73
OR
OR MOV BMOV FMOV FWRT Data Move MSET ZRST SWAP XCH ADD SUB MUL DIV INC Data Operation DEC MEAN WAND WOR WXOR CML NEG
S2 OR activates if S1S2
OR activates if S1 Move Block move Fill move FlashROM written Zone set Zone reset The high and low byte of the destinated devices are exchanged Exchange Addition Subtraction Multiplication Division Increment Decrement Mean Word And Word OR Word exclusive OR Compliment Negative
74
75
SIN COS TAN TCMP TZCP Clock Operation TADD TSUB TRD TWR Sine Cosine Tangent Time Compare Time Zone Compare Time Add Time Subtract Read RTC data Set RTC data
Note:
16 bits instruction and 32 bits instruction Denotes the soft units which can be used as the operation object
S D
77
The related description The assignment of the data The data register of XC series PLC is a single word (16 bit) data register, single word data only engross one data register which is assigned by single word object instruction. The disposal bound is: Dec. 327,68~327,67, Hex. 0000~FFFF. D(NUM)
Instruction D(NUM)
Object data
Double word 32 bit engrosses two data register, its composed by two consecutive data registers, the first one is assigned by double word object instruction. The dispose bound is: Dec. -214,748,364,8~214,748,364,7, Hex. 00000000~FFFFFFFF. Double word object instruction D(NUM+1) D(NUM)
Instruction D(NUM)
Object data
Object data
The denote way of 32 bits instruction If an instruction can not only be 16 bits but also be 32 bits, then the denote method for 32 bits instruction is to add a D before 16 bits instruction. E.g ADD D0 D2 D4 denotes two 16 bits data adds
78
Instructions list of 16 bits and correspond 32 bits
16 bits WTD FLT INT BIN Data convert BCD ASC HEX DECO ENCO ENCOL Float operation TCMP TZCP Clock operation TADD TSUB TRD TWR 32 bits DFLT DINT DBIN DBCD ECMP EZCP EADD ESUB EMUL EDIV ESQR SIN COS TAN -
16 bits CJ CALL SRET STL Program Flow STLE SET ST FOR NEXT FEND MOV BMOV FMOV Data Move FWRT ZRST SWAP XCH ADD SUB MUL DIV INC Data operation DEC MEAN WAND WOR WXOR CML NEG SHL SHR LSL LSR Data Shift ROL ROR SFTL SFTR WSFL WSFR
79
32 bits -
DMOV DFWRT DXCH DADD DSUB DMUL DDIV DINC DDEC DMEAN DWAND DWOR DWXOR DCML DNEG DSHL DSHR DLSL DLSR DROL DROR DSFTL DSFTR DWSFL DWSFR
5-3Program Flow Instructions
Instructions name Condition Jump Call subroutine Subroutine return Flow start Flow end Open the assigned flow, close the current flow (flow jump) Open the assigned flow, not close the current flow (Open the new flow) Start of a FOR-NEXT loop End of a FOR-NEXT loop First End
80
Condition Jump [CJ]
16 bits instruction Suitable Device
81
CJ
As the instructions of executing list, with CJ instructions, the operate cycle and dual coil can be greatly shorten. In the following chart, if X000 ON then jump from step 1 to the end step of flag P6. When X000 OFF , do not execute jump instructions.
CJ
X0 P6
X1 Y0 X2
RST
T246
X3
T246
K1000
X4
MOV
K3
D0
P6 X0 CJ X5 Y0 P7 X6 P7
RST
T246
See the upward graph, Y000 turns to be dual coil and output. But when X000=OFF, X001 activates. When X000=ON, X005 activates. CJ can not jump from one STL to another STL. If program timer T0~T640 and high speed counter C600~C640 jump after driving, go on working, output point also activate.
Call subroutine [CALL] and Subroutine return [SRET] 16 bits instruction Suitable Device Pointer: P Soft Units Bound: P0~P9999
Suitable Models
CALLSRET
32 bits instruction
X0
Function
CALL
P10
Main program
FEND P10
Subroutine
SRET
END
If X000 ON , carry on Jump instruction and jump to step of flag P10. Here, after executing the subroutine, return to the original step via executing SRET instruction. After the following FEND instruction, program with the flag. In the subroutine, 9 levels Call instruction is allowed, so to the all, 10 levels nesting is available.
82
83
Flow [SET][ST] [STL] [STLE]
16 bits instruction SET ST STL STLE Suitable Device Pointer: S Soft Units Bound: S0~S Suitable Models
32 bits instruction
SET
S0
Function
STL S0
S1 S2
STLE STL S2
STLE
STL and STLE should be used in pairs. STL means start of a flow, STLE means end of a flow. After executing of SET Sxxx instruction, the flow assigned by these instructions is ON. After executing RST Sxxx instruction, the assigned flow is OFF. In flow S0, SET S1 close the current flow S0, open flow S1. In flow S0, ST S2 open the flow S2, but dont close flow S0. When flow turns from ON to be OFF, OFF or reset OUT PLS PLF not accumulate timer etc. which belongs to the flow. ST instruction is usually used when a program needs to run more flows at the same time.
84
[FOR] AND [NEXT]
16 bits instruction Suitable Device Word Device Bit Device Suitable Models 32 bits instruction
D
FORNEXT
D
D FD
K/H
DX
DY
DM
DS
TD
CD
Dn.m
Function
First execute the instructions between FOR~NEXT instructions for several times (the loop time is assigned by the source data), then execute the steps after NEXT.
S
M0 M1
K5 K6 D0 [A]
FOR
nesting level is 8. Between FOR/NEXT, LDP LDF instructions are effective for one time. Every time when M0 turns from OFF to ON, and M1 turns from OFF to ON, [A] loop is executed 6 times. Every time if M0 turns from OFF to ON and M3 is ON, [B] loop is executed 5 7=35 times. If there are many loop times, the scan cycle will be prolonged. Monitor timer error may occur, please note this. If NEXT is before FOR, or no NEXT, or NEXT is behind FENG END, or FOR and
FENDEND
Suitable Device
None
Function
An FEND instruction indicates the first end of a main program and the start of the program area to be used for subroutines. Under normal operating circumstances the FEND instruction performs a similar action to the END instruction, i.e. output processing, input processing and watchdog timer refresh are all carried out on execution.
If program the tag of CALL instruction behind FEND instruction, there must be SRET instruction. If the interrupt pointer program behind FEND instruction, there must be SRET instruction. After executing CALL instruction and before executing SRET instruction, if execute FEND instruction; or execute FEND instruction after executing FOR instruction and before executing NEXT, then an error will occur. In the condition of using many FEND instruction, please compile routine or subroutine between the last FEND instruction and END instruction.
86
5-4Contactors Compare Instructions
Mnemonic
Function Initial comparison contact. Active when the comparison (S1) (S2) is true. Initial comparison contact. Active when the comparison (S1)> (S2) is true Initial comparison contact. Active when the comparison (S1)< (S2) is true
LD
LD
LD LD LD AND AND
LD
Initial comparison contact. Active when the comparison (S1)(S2) is true Initial comparison contact. Active when the comparison (S1)(S2) is true Serial comparison contact. Active when the comparison (S1)(S2)is true.
Initial comparison contact. Active when the comparison (S1) (S2) is true Serial comparison contact. Active when the comparison (S1)> (S2) is true. Serial comparison contact. Active when the comparison (S1)< (S2) is true.
Serial comparison contact. Active when the comparison (S1)(S2) is true. Serial comparison contact. Active when the comparison (S1)(S2) is true. Parallel comparison contact. Active when the comparison (S1)(S2) is true.
Serial comparison contact. Active when the comparison (S1) (S2) is true. Parallel comparison contact. Active when the comparison (S1)> (S2) is true. Parallel comparison contact. Active when the comparison (S1)< (S2) is true.
87
OR OR
OR
Parallel comparison contact. Active when the comparison (S1)(S2) is true. Parallel comparison contact. Active when the comparison (S1)(S2) is true.
Parallel comparison contact. Active when the comparison (S1) (S2) is true.
Initial Comparison LD
16 bits instruction Word Device Bit Device
32 bits instruction
S1 S2
Suitable Models
Refer Below
K/H DX DY DM
Refer Below
D FD
DS
TD
CD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the comparison of the instruction. If the comparison is true then the LD contact is active. If the comparison is false then the LD contact is not active. 16 bits LD 32 bits Active condition
DLD
S1S2
S1S2
88
LD
LD
DLD
S1S2
LD
DLD
S1S2
LD
DLD
S1S2
LD
DLD
S1S2
DLD
S1S2
S1
S2
Program
X0
LD=
K100
C0 X0
Y0
LD
D200
K-30
SET
Y1
DLD M4
K68899
C300
M50
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
use the data as a negative. The comparison of 32 bits counter (C300~) must use 32 bits instruction. If assigned as 16 bits instruction, it will lead the program error or
32 bits instruction
Suitable Models
89
Refer Below
Refer Below
S1
S2
K/H
DX
DY
DM
DS
TD
CD
FD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the comparison of the instruction. If the comparison is true then the LD contact is active. If the comparison is false then the LD contact is not active. 16 bits AND 32 bits Active condition
AND
DAND
AND
DAND
Program AND
DAND
AND
DAND
AND
DAND
DAND
90
X0 AND
S1
S2
K100
C0
Y0
X1
AND
K-30
D0
SET
Y1
X2
DAND
K68899
D10
M50
M4
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
use the data as a negative. The comparison of 32 bits counter (C300~) must use 32 bits instruction. If assigned as 16 bits instruction, it will lead the program error or operation error.
91
Parallel Comparision OR
16 bits instruction Word Device Bit Device
32 bits instruction
S1 S2
Suitable Models
Refer Below
K/H DX DY DM
Refer Below
D FD
DS
TD
CD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the instruction. If the comparison is true then the AND contact is active. If the comparison is false then the AND contact is not active. 16 bits 32 bits Active condition Inactive condition
AND
AND
DAND
DAND DAND
S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2
Y0 OR
M4
S1
S2
K100
C0
X2
DOR
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
92
use the data as a negative. The comparison of 32 bits counter (C300~) must be 32 bits instruction. If assigned as a 16 bits instruction, it will lead the program error or operation error.
5-5Data Move
Mnemonic MOV BMOV FMOV FWRT MSET ZRST SWAP XCH Move Block Move Fill Move Written of FlashROM Zone Set Zone Reset Float To Scientific Exchange
Function
93
[MOV]
16 bits instruction Suitable Models
MOV
K/H DX DY DM
32 bits instruction
S
DMOV
D FD
Suitable Device
DS
D
TD
CD
Dn.m
Move data from one storage area to a new one. Move contents from source to destination If X000 is OFF, data will not change. Constant K10 will automatically convert to be BIN code.
T0 current valueD20
M0
K10 D10
T20
D20
DMOV
C235
D20
D1D0D11D10
94
[BMOV]
16 bits instruction Suitable Device
95
Suitable Models
BMOV
K/H n DX DY DM
32bits instruction
S
D FD
DS
D
TD
CD
Dn.m
Function A quantity of consecutively occurring data elements can be copied to a new destination. The source data is identified as a device head address(S) and a quantity of consecutive data elements (n). This is moved to the destination device (D) for the same number of elements (n). (If the quantity of source device (n) exceeds the actual number of available source devices, then only those devices which fall in the available range will be used. If the number of source devices exceeds the available space at the destination location, then only the available destination devices will be written to.)
S D
X0
BMOV
D5
D10
K3
D5 D6 D7
The BMOV instruction has a built in automatic feature to prevent overwriting errors from occurring when the source (S-n) and destination (D-n) data ranges coincide. This is clearly identified in the following diagram: (NOTE: The numbered arrows indicate the order in which the BMOV is processed).
D9 D10 D11
[FMOV]
16 bits instruction
Suitable Models
FMOV
32 bits instruction
Word Device
Suitable Device
K/H n
DX
DY
DM
DS
D
TD
CD
FD
Bit Device
Dn.m
Function
X0
FMOV
K0
D0
K10
Move K0 to D0~D9. Copy a single data device to a range of destination devices. The data stored in the source device (S) is copied to every device within the destination range, The range is specified by a device head address (D) and a quantity of consecutive elements (n). If the specified number of destination devices (n) exceeds the available space at the destination location, then only the available destination devices will be written to.
96
K0 K0 D 0
K0
D 1
K0 K0
D 2
D 3
K0
D 4 n
K0
D 5
K0
D 6
K0 K0
D 7 D 8
K0
D 9
97
[FWRT]
16 bits instruction Suitable Device Word Device Bit Device Suitable Models
FWRT
K/H DX DY DM
32 bits instruction
S
DFWRT
D FD
D
DS
TD
CD
Dn.m
Function
Written of a word
S D
X0
FWRT
D0
FD0
Function 2
Function 3
Written of multi-word
X2 FWRT D0 FD0 K3
Function
Note 1, FWRT instruction only allow to write data into FlashROM register. In this storage area, even battery drop, data could be stored. So it could be used to store important technical parameters. 2, Written of FWRT needs a long time, about 150ms, so, frequently operate this operation is not recommended. 3, The written time of FlashROM is about 1,000,000 times. So, we suggest using edge signals (LDP
[MSET]
16 bits instruction Word Device Bit Device Suitable Models
MSET
K/H DX DY
D1
32 bits instruction
DM
D2
D FD
DS
TD
CD
Dn.m
[ZRST]
16 bits instruction Word Device Bit Device Function & Action
D1 D2
Suitable Models
ZRST
K/H DX DY
D1
32 bits instruction
D1 D2
D FD
DM
D2
DS
TD
CD
Dn.m
X0
MSET
M10
D1
M120
D2
Zone Set Unit M10~M120 Zone Reset Bit Unit M500~M559 Zone Reset Word Unit D0~D100
D1
X0
ZRST
M500
D1
M559
D2
ZRST
D1 D2 D1
D0
D100
D2
As soft units separate reset instruction, RST instruction can be used to bit unit Y, M, S and word unit T, C, D. As fill move for constant K0, 0 can be written into DX, DY, DM, DS, T, C, D.
RST RST RST M0 T0 D0 K0 D0 K100
Reset M0 Reset the current value and status of T0 Reset the current value and status of C0 Write K0 into D0~D99
X1
X2
FMOV
99
[SWAP]
16bits instruction Suitable Models
SWAP
K/H DX DY DM
32 bits instruction
S
D FD
Suitable Device
DS
TD
CD
Dn.m
Function
Low 8 bits and high 8 bits change when it is 16 bits instruction. If the instruction is a consecutive executing instruction, each operation cycle should change.
100
[XCH]
16 bits instruction Suitable Models
XCH
K/H DX DY DM
32 bits instruction
D1 D2
DXCH
D FD
Suitable Device
101
DS
TD
CD
Dn.m
Function
16 bits instruction
D1 D2
X0
XCH
D10
D11
Before
D10=100
After D10=101
When drive input X0 is ON, each scan cycle should carry on data exchange,
32 bits instruction
D1 D2
X0
DXCH
D10
D20
32 bits instruction [DXCH] swaps value composed by D10 D11 and the value composed by D20 D21.
5-6Data Operation Instructions
Mnemonic ADD SUB MUL DIV INC DEC MEAN WAND WOR WXOR CML NEG
Function Addition Subtraction Multiplication Division Increment Decrement Mean Logic Word And Logic Word Or Logic Exclusive Or Compliment Negation
102
Addition Operation [ADD]
16 bits instruction Suitable Device
103
ADD
K/H DX DY DM
DADD
Flag
D FD
DS
D
TD
CD
Borrow Carry
Dn.m
Function
S1
S2
X0
ADD
D10
D12
D14
D10D12D14
The data contained within the two source devices are combined and the total is stored in the specified destination device. Each datas highest bit is the sign bit, 0 stands for positive 1
5+-8=-3 If the result of a calculation is 0, the 0 flag acts. If the result exceeds 32376716 bits limitor 2,147,483,64732 bits limit, the carry flag acts.refer to the next page. If the result exceeds 323,76816 bits limitor 2,147,483,64832 bits limit, the borrow flag actsRefer to the next page
stands for negative. All calculations are algebraic processed.
[SUB]
16 bits instruction Suitable Models:
SUB
K/H DX DY DM
32 bits instruction
S1 S2
DSUB
D FD
Borrow Carry
Suitable Device
DS
D
TD
CD
Dn.m
S1
S2
X0
Function
SUB
D10
D12
D14
D10D12D14
appoint the soft units content, subtract the soft units content appointed by S2 in the format of algebra. The result will be stored in the soft unit appointed by D . (5-(-8)=13) The action of each flag, the appointment method of 32 bits operations soft units are both the same with the preceding ADD instruction. The importance is: in the preceding program, if X0 is ON, SUB operation will be executed every scan cycle
S1
The relationship of the flags action and vales positive/negative is shown below:
104
[MUL]
16 bits instruction Word Device Bit Device Suitable Models
MUL
K/H DX DY DM
32 bits instruction
S1 S2
DMUL
D FD
Carry
DS
D
TD
CD
Borrow
Dn.m
16 bits operation
S1 S2 D
X0 MUL D0 D2 D4
BIN (D0)
BIN
BIN
(D2)
(D5, D4)
The contents of the two source devices are multiplied together and the result is stored at the destination device in the format of 32 bits. As in the upward chart: when (D0)=8 (D2)=9, (D5, D4) =72. The results highest bit is the symbol bit: positive (0) negative (1).
32 bits operation
S1 S2 D
X1 DMUL D0 D2 D4
BIN
BIN (D3
BIN
D1D0
D2) D7D6D5D4
In 32 bits operation, when use bit device as the destination address, only low 32 bits result can be obtained. The high 32 bits result can not be obtained, so please operate again after transfer one time to the word device Even use word device, 64 bits results cant be monitored at once. In this situation, float point data operation is recommended.
105
[DIV]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1 S2
DDIV
D FD
Borrow Carry
DS
D
TD
CD
Dn.m
16 bits operation
S1 S2 D
X0 DIV D0 D2 D4
Divisor BIN
Result BIN
(D2)
D4
appoints the devices content be the dividend, S2 appoints the devices content be the divisor, D appoints the device and the next one to store the result and the remainder. In the above example, if input X0 is ON, devision operation is executed every scan cycle.
S1
32 bits operation
S1 S2 D
X1 DDIV D0 D2 D4
Dividend BIN
X1
S1
Result S2
D Remainder
D0 BIN D2
BIN D4 (D7,D6)
(D1,D0)
(D3,D2)
D5,D4
The dividend is composed by the device appointed by S1 and the next one. The divisor is composed by the device appointed by S2 and the next one. The result and the remainder are stored in the four sequential devices, the first one is appointed by D If the value of the divisor is 0, then an operation error is executed and the operation of the DIV instruction is cancelled. The highest bit of the result and remainder is the symbol bit (positive:0, negative: 1). When any of the dividend or the divisor is negative, then the result will be negative. When the dividend is negative, then the remainder will be negative.
106
INCDEC
K/H DX DY DM
DINCDDEC
D FD
Borrow Carry
DS
TD
CD
Dn.m
1 Increment [INC]
D
X0
INC
D0
D01(D0)
D
On every execution of the instruction the device specified as the destination current value incremented (increased) by a value of 1.
has its
In 16 bits operation, when +32 767 is reached, the next increment will write -32 767 to the destination device. In this case, theres no additional flag to identify this change in the
2 Decrement [DEC]
D
X1
DEC
D0
D01(D0)
D
On every execution of the instruction the device specified as the destination current value decremented (decreased) by a value of 1.
has its
When -32 768 or -2 147 483 648 is reached, the next decrement will write +32 767
107
[MEAN]
16 bits instruction Word Device Bit Device
Suitable Models
MEAN
K/H n DX DY DM
32 bits instruction
S
D FD
Borrow Carry
DS
D
TD
CD
Dn.m
X0
n K3
MEAN
D0
D10
(D0)
(D1) + (D2) 3
(D10)
The value of all the devices within the source range is summed and then divided by the number of devices summed, i.e. n.. This generates an integer mean value which is stored in the destination device (D) The remainder of the calculated mean is ignored. If the value of n is specified outside the stated range (1 to 64) an error is generated.
108
WANDWOR
K/H DX DY DM
Borrow Carry
DS
D
TD
CD
FD
Dn.m
Function & Action Execute logic AND operation with each bit
S1 S2 D
X0
WAND
D10
D12
D14
0&0=0 1&0=0
0&1=0 1&1=1
X0
WOR
D10
D12
D14
0 or 0=0 1 or 0=1
0 or 1=1 1 or 1=1
X0
WXOR
D10
D12
D14
If use this instruction along with CML instruction, XOR NOT operation could also be executed.
S1 S2 D
X0
WXOR
D10
D12
D14
CML
D14
D14
109
[CML]
16 bits instruction Word Device Bit Device
Suitable Models
CML
K/H DX DY DM
32 bits instruction
S
DCML
D FD
DS
D
TD
CD
Dn.m
X0
CML
D0
DY0
A copy of each data bit within the source device is inverted and then moved to the designated destination. Each data bit in the source device is inverted (0->1, 1->0) and sent to the destination device. If use constant K in the source device, it can be auto convert to be binary. Its available when you want to inverted output the PLCs output
110
X0 M0
X1
M1
The sequential control instruction in the left could be denoted by the following CML instruction.
X2
M2
M8000
CML
DX0
DM0
X3
M3
X17
M17
[NEG]
16 bits instruction Word Device Bit Device
Suitable Models
NEG
K/H DX DY DM
32 bits instruction
D
DNEG
D FD
DS
TD
CD
Dn.m
X0
NEG
D10
(D10) +1
(D10)
The bit format of the selected device is inverted, I.e. any occurrence of a 1 becomes a 0 and any occurrence of 0 becomes 1, when this is complete, a further binary 1 is added to the bit format. The result is the total logic sigh change of the selected devices contents.
111
112
5-7Shift Instructions
Mnemonic SHL SHR LSL LSR ROL ROR SFTL SFTR WSFL WSFR
Function Arithmetic shift left Arithmetic shift right Logic shift left Logic shift right Rotation left Rotation right Bit shift left Bit shift right Word shift left Word shift right
113
[SHL] & [SHR]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
D
SHLSHR
n K/H DX DY DM
DSHLDSHR
D FD
XC3 XC5
DS
TD
CD
Dn.m
Note: In the left example, when X1 is ON, left/right shift is executed at every scan cycle.
114
DLSLDLSR
D FD
XC3 XC5
TD
CD
Dn.m
115
NOTE: In every scan cycle, loop shift left/right action will be executed
ROLROR
n K/H DX DY
DROLDROR
D FD
XC3 XC5
DM
DS
TD
CD
Dn.m
Function & Action The bit format of the destination device is rotated n bit places to the left on every operation of the instruction
Every time when X000 turns from OFF to ON, executes n bits left rotation.
116
Every time when X000 turns from OFF to ON, executes n bits right rotation.
SFTLSFTR
n1n2 K/H DX DY DM
S
DSFTLDSFTR
D FD
XC3 XC5
DS
TD
CD
S
D
Dn.m
Function & Action The instruction copies n2 source devices to a bit stack of length n1. For every new addition of n2 bits, the existing data within the bit stack is shifted n2 bits to the left/right. Any bit data moving to the position exceeding the n1 limit is diverted to an overflow area. The bit shifting operation will occur every time the instruction is processed unless it is modified with either the pulse suffix or a controlled interlock.
M11~M 8 M15~M 12
M 7~M 4 M11~M8
117
M 7~M 4 M3~M0
M11~M 8 M7~M4
WSFLWSFR
n1n2 K/H DX DY DM
XC3 XC5
DS
D
TD
CD
FD
Dn.m
Function & Action The instruction copies n2 source devices to a word stack of length n1. For each addition of n2 words, the existing data within the word stack is shifted n2 words to the left/right. Any word data moving to a position exceeding the n1 limit is diverted to an overflow area. The word shifting operation will occur every time the instruction is processed unless it is modified with either the pulse suffix or a controller interlock.
D25~D22 overflow
D21~D18 D25~D22
D17~D14 D21~D18
118
n2
D17~D14 D13~D10
D21~D18 D17~D14
5-8Data Convert
Mnemonic WTD FLT FLTD INT BIN BCD ASC HEX DECO ENCO ENCOL
Function Single word integer converts to double word integer 32 bits integer converts to float point 64 bits integer converts to float point Float point converts to integer BCD convert to binary Binary converts to BCD Hex. converts to ASCII ASCII converts to Hex. Coding High bit coding Low bit coding
119
[WTD]
16 bits instruction Word Device Bit Device Suitable Models
WTD
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
WTD
D0
D10
D0 D11D10
D0 D10
0 or 1 D11
120
[FLT] & [FLTD]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
S
FLT
K/H DX DY DM
DFLT
S
XC3 XC5
DS
TD
CD
D
FD
Dn.m
16 Bits
S D
X0
FLT
D10
D12
(D10)
(D13,D12)
32 Bits
S D
X0
DFLT
D10
D12
D11,D10 D13,D12
64 Bits
S D
X0
FLTD
D10
D14
D13,D12,D11,D10 D17,D16,D15,D14
Convert BIN integer to binary float point. As the constant K H will auto convert by the float operation instruction, so this FLT instruction cant be used. The instruction is contrary to INT instruction.
121
[INT]
16 bits instruction Word Device Bit Device
Suitable Models
K/H DX DY DM
32 bits instruction
INT
S
XC3 XC5
DS
TD
CD
D
FD
Dn.m
16
S D
X0
INT
D10
D20
D11,D10
Binary Floating
32
S D
X0
DINT
D10
D20
D11,D10
Binary Floating
The binary source number is converted into an BIN integer and stored at the destination device. Abandon the value behind the decimal point. This instruction is contrary to FLT instruction. When the result is 0, the flag bit is ON
122
When converting, less than 1 and abandon it, zero flag is ON. 16 bits operation
-32,768~32,767
[BIN]
16 bits instruction Word Device Bit Device
Suitable Models
BIN
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
BIN
D10
D0
(Operation error lock) will not work. As constant K automatically converts to binary, so its not suitable for this instruction.
123
[BCD]
16 bits instruction Word Device Bit Device
Suitable Models
BCD
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
BCD
D10
D0
124
[ASCI]
16 bits instruction Word Device Bit Device
Suitable Models
ASCI
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
n K4
ASCI
D100
D200
Convert each bit of sources (S) Hex. format data to be ASCII code, move separately to the high 8 bits and low 8 bits of destination (D). The convert alphanumeric number is assigned with n. (D) is low 8 bits, high 8 bits, store ASCII data. The convert result is the following Assign start device (D100)=0ABCH (D101)=1234H
n D D200 down D200 up D201 down D201 up D202 down D202 up K1 [C] K2 [B] [C] K3 [A] [B] [C] K4 [0] [A] [B] [C] K5 [4] [0] [A] [B] [C] K6 [3] [4] [0] [A] [B] [C] K7 [2] [3] [4] [0] [A] [B] K8 [1] [2] [3] [4] [0] [A] K9 [8] [1] [2] [3] [4] [0]
125
D203 down D203 up D204 down [C] [B] [C] [A] [B] [C]
[HEX]
16 bits instruction Word Device Bit Device
Suitable Models
HEX
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
n K4
HEX
D200
D100
Convert the high and low 8 bits in source to HEX data. Move 4 bits every time to destination. The convert alphanumeric number is assigned by n.
D101 D100
ASCII Code 30H 41H 42H 43H 31H 32H 33H 34H
HEX Convert 0 A B C 1 2 3 4 5
1 2
D102
D200 down D200 up D201 down D201 up D202 down D202 up D203 down D203 up
0H
Not change to be 0
0AH 0ABH
0ABCH
3 4 5 6
0H 0AH
ABC1H BC12H
n=k4
126
D200 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0
30H [0] 1 0 0 1 0
42H [B] 1 1 1 C 0 0
127
[DECO]
16 bits instruction Word Device Bit Device Suitable Models
DECO n
K/H DX DY DM
X Y M S
D
32 bits instruction
S
D FD
XC3 XC5
DS
TD
CD
Dn.m
When
X10
is software unit
S
n16
D
n K3
DECO
DX0
M10
X001 1
X000 1
1 M13
2 0 M12
1 0 M11
0 0 M10
M14
The source address is 1+2=3 so starts from M10, the number 3 bit (M13) is 1. If the source are all 0, M10 is 1 When n=0, no operation, beyond n=0~16, dont execute the instruction. When n=16, if coding command D is soft unit, its point is 2^8=256
When
X0
is word device
S
n4
D
n K3
DECO
D0
D1
high bits all converts to be 0. When n=0, no disposal, beyond n=0~4, dont execute the instruction.
[ENCO]
16 bits instruction Word Device Bit Device
Suitable Models
K/H ENCO DX
n
32 bits instruction
DY DM DS
D
TD
CD
FD
XC3 XC5
M
S
Dn.m
When
X0
is bit device
n16
D
n K3
ENCO
M10
D10
M17 0 7
M16 0 6
M15 0 5
M14 0 4
M13 1
M12 0 2
M11 1 1
M10 0 0
b15 0 0
D10 0 0
4 0
1 1 b0
All be 0
When
X1
is word device
n4
D
n K3
ENCO
D0
D1
b15 0 1
D0 0 1
0 7
0 6
0 5
0 4
0 2 4 0
1 1
b0 0 0
b15 0 0
Be ignored
0 0
D1 0 0
1 1 b0
All be 0
If many bits in the source ID are 1, ignore the low bits. If source ID are all 0, dont execute the instructions. When drive input is OFF, the instruction is not executed, encode output dont change. When n=8, if encode instructions S is bit unit, its point number is 2^8=256
129
130
[ENCOL]
16 bits instruction Word Device Bit Device Suitable Models
ENCOL
K/H n DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
M
S
Dn.m
If
is bit device
n16
S D
X0
n K3
ENCOL
M10
D10
M17 0 7
M16 0 6
M15 1 5
M14 0 4
M13 1
M12 0 2
M11 0 1
M10 0 0
b15 0 0
D10 0 0
4 0
1 1 b0
All be 0
n16
S D
X1
n K3
ENCOL
D0
D1
b15 0 1
D0 0 1
0 7
0 6
1 5
0 4
Be ignored
b15 0 0 0 0 D1 0 0 0 0
0 2 4 0
0 1
b0 0 0
1 1 b0
All be 0
If many bits in the source ID are 1, ignore the high bits. If source ID are all 0, dont execute the instructions. When drive input is OFF, the instruction is not executed, encode output dont change. When n=8, if encode instructions S is bit unit, its point number is 2^8=256
131
132
5-9Floating Operation
Mnemonic ECMP EZCP EADD ESUB EMUL EDIV ESQR SIN COS TAN
Function Float Compare Float Zone Compare Float Add Float Subtract Float Multiplication Float Division Float Square Root Sine Cosine Tangent
133
[ECMP]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S1 S2
ECMP
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
M
D
Dn.m
D11,D10 D21,D20M0,M1,M2
S1 S2 D
X0
ECMP M0
D10
D20
>
M0
(D21<D20)
(D11, D10)
Binary Floating
M1
(D11, D10) =
Binary Floating
(D21<D20)
Binary Floating
M2
(D11, D10) <
Binary Floating
(D21<D20)
Binary Floating
Binary Floating
The status of the destination device will be kept even if the ECMP instruction is deactivated.
The binary float data of S1 is compared to S2. The result is indicated by 3 bit devices specified with the head address entered as D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X0
ECMP
K500
D100
M10
K500 D101D100M10,M11,M12
Binary converts Binary floating
134
[EZCP]
16 bits instruction Word Device Bit Device Suitable Models
K/H DX
S1
32 bits instruction
S1 S2 S3
ECMP
D FD
XC3 XC5
DY
S2
DM
S3
DS
TD
CD
M
D
Dn.m
X0
EZCP M3
D10
>
D20
(D1, D0)
D0
M3
ON
(D20, D21)
Binary Floating
M4
(D21,D10)
>
D31D30
Binary Floating ON
ON
M5
The status of the destination device will be kept even if the EZCP instruction is deactivated.
The data of S1 is compared to the data of S2. The result is indicated by 3 bit devices specified with the head address entered as D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X0
EZCP
K10
K2800
D5
M0
K10
Binary converts
[D6,D5]
K2800M0M1M2
Binary converts
Binary Floating
Please set S1<S2, when S2>S1, see S2 as the same with S1 and compare them.
135
[EADD]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EADD
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EAAD
D10
D20
D50
D11,D10
Binary Floating
(D21,D20)
Binary Floating
The floating point values stored in the source devices S1 and S2 are algebraically added and the result stored in the destination device D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1 EAAD D100 K1234 D110
K1234
( D101,D100)
(D111,D110)
The same device may be used as a source and as the destination. If this is the case then, on continuous operation of the EADD instruction, the result of the previous operation will be used as a new source value and a new result calculated. This will happen every program scan unless the pulse modifier or an interlock program is used.
136
[ESUB]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
ESUB
FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
ESUB
D10
D20
D50
(D11,D10)
(D21,D20)
(D51,D50)
The floating point value of S2 is subtracted from the floating point value of S1 and the result stored in destination device D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
ESUB
K1234
D100
D110
K1234
(D101,D100)
(D111,D110)
The same device may be used as a source and as the destination. If this is the case then, on continuous operation of the EADD instruction, the result of the previous operation will be used as a new source value and a new result calculated. This will happen every program scan unless the pulse modifier or an interlock program is used.
137
[EMUL]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EMUL
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EMUL
D10
D20
D50
D11D10 D21,D20
Binary Floating Binary Floating
The floating value of S1 is multiplied with the floating value point value of S2. The result of the multiplication is stored at D as a floating value. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1 EMUL K100 D100 D110
(K100)
(D101,D100)
Binary Floating
138
[EDIV]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EDDIV
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EDIV
D10
D20
D50
D11,D10D21,D20D51,D50
The floating point value of S1 is divided by the floating point value of S2. The result of the division is stored in D as a floating point value. No remainder is calculated. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
EDIV
D100
K100
D110
(D101,D100)
(K100)
(D111,D110)
If S2 is zero then a divide by zero error occurs and the operation fails.
139
[ESQR]
16 bits instruction Word Device Bit Device
Suitable Models
32 bits instruction
ESQR
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
ESQR
D10
D20
(D11,D10)
D21,D20
A square root is performed on the floating point value in S the result is stored in D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
ESQR
K1024
D110
K1024
D111D110
Binary Floating
When the result is zero, zero flag activates Only when the source data is positive will the operation be effective. If S is negative then an error occurs and error flag M8067 is set ON, the instruction cant be executed.
140
[SIN]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
SIN
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
SIN
D50
D60
This instruction performs the mathematical SIN operation on the floating point value in S (angle RAD). The result is stored in D.
D51
D50
/180)
SIN value
141
[COS]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
COS
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
COS
D50
D60
This instruction performs the mathematical COS operation on the floating point value in S (angle RAD). The result is stored in D.
D51
D50
/180)
COS value
142
[TAN]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
TAN
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
TAN
D50
D60
(D51,D50)RAD
(D61,D60)TAN
This instruction performs the mathematical TAN operation on the floating point value in S. The result is stored in D.
D51
D50
/180)
TAN value
143
5-10Clock Operation
Function Time Compare Time Zone Compare Time Add Time Subtract Read RTC data Set RTC data
Note The models without clock can not use these instructions.
144
Time Compare [TCMP]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
S1 S2 S3
DIV
K/H DX DY DM
DDIV
D FD
XC3 XC5
DS
TD
CD
S
S
D
Dn.m
Function & Action Compare the assigned time with time data.
The status of the destination devices is kept, even if the TCMP instruction is deactivated.
S1
S2
S3
S time is compared to the time value in the 3 data devices specified by the head D address , The result is indicated in the 3 bit devices specified by the head
Assign the compare standard Hour Assign the compare standard Minute Assign the Hour of clock data 1 Assign the Minute of clock data 1, 2 According to the compare result, the 3 devices output ON/OFF.
S1 S2 S3 S S S D D
145
[TZCP]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S3
XC3 XC5
S2
DS
TD
CD
FD
S
D
Dn.m
Function & Action Compare the two assigned time with time data
The status of the destination devices is kept, even if the TCMP instruction is deactivated.
Compare the 3 clock data start from S with the two ends on the clock compare bound, according to the area bound, output the three ON/OFF status starts from D
S1 S2 S
D
, ,
S 1
S2 S
D
1 2 : Assign the compare low limit in the form of Hour, Minute and Second. 1 2 : Assign the compare low limit in the form of Hour, Minute and Second.
S 1 S2 S
D
146
[TADD]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S2
XC3 XC5
DS
TD
CD
D
FD
Dn.m
X0
TADD
D10
D20
D30
Each of S1, S2 and D specify the head address of 3 data devices to be used a time value. The time value in S1 is added to the value in S2, the result is stored to D as a new time value. If the addition of the two times results in a value greater than 24 hours, the value of the result is the time remaining above 24 hours. When this happens the carry flag M8022 is
S1 18 (Hour) 10 (Minute) 30 (Second) 18 hour 10 min. 30 sec. + S2 10 (Hour) 20 (Minute) 5 (Second) 3 hour 20 min. 10 sec. D 4 (Hour) 30 (Minute) 35 (Second) 4 hour 30 min. 35 sec.
0 Hour 0 Minute 0 Second Set zero flag ON. The valid range of Hour is0~23. The valid range of Minute is0~59.
When the result is 0
147
[TSUB]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S2
XC3 XC5
DS
TD
CD
D
FD
Dn.m
X0
TSUB
D10
D20
D30
(D10, D11, D12) S1 D10 (Hour) D11 (M inute) D12 (Second) 10 hour 20 min. 30 sec. _
Each of S1, S2 and D specify the head address of 3 data devices to be used a time value. The time value in S1 is subtracted from the time value in S2, the result is stored to D as a new time. If the subtraction of the two times results in a value less than 00:00:00 hours, the value of the result is the time remaining below 00:00:00 hours. When this happens the borrow flag M8021 is set ON.
S1 10 (Hour) 20 (Minute) 5 (Second) 10 hour 20 min. 5 sec. _ S2 18 (Hour) 10 (Minute) 30 (Second) = D 4 (Hour) 30 (Minute) 35 (Second)
When the result is 0 (0 hour 0 min. 0 sec.), zero flag set ON.
[TRD]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
D
DDIV
D FD
XC3 XC5
DS
TD
CD
Dn.m
X0
TRD
D0
The current time and date of the real time clock are read and stored in the 7 data devices specified by the head address D.
Read PLCs real time clock according to the following format. The reading source is the special data register
D8013~D8019which save
Unit D0 D1 D2 D3 D4 D5 D Item Year Month Date Hour Minute Second Week
Unit D8018 D8017 D8016 D8015 D8014 D8013 D8019 Special data register for real
Clock data 0-99 1-12 1-31 0-23 0-59 0-59 0 (Sun.)-6 (Sat.)
time clock t
149
[TWR]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
DDIV
D FD
XC3 XC5
DS
TD
CD
Dn.m
X0
The 7 data devices specified with the head address S are used to set a new
TWR
D10
Write the set clock data into PLCs real time clock. In order to write real time clock, the 7 data devices specified with the head address S should be pre-set.
Clock data 0-99 1-12 1-31 0-23 0-59 0-59 0 (Sun.)-6 (Sat.)
Item Year Month time clock t Date Hour Minute Second Week Special data register for real
150
After executing TWR instruction, the time in real time clock will immediately change to be the new set time. So, when setting the time it is a good idea to set the source data to a time a number of minutes ahead and then drive the instruction when the real time reaches this value.
5Applied Instructions
In this chapter, we describe applied instructions function of XC series PLC.
5-1
Table of Applied Instructions Reading Method of Applied Instructions Flow Instructions Contactors Compare Instructions Move and Compare Instructions
5-2
5-3
5-4
5-5
5-6
5-7
5-8
5-9
5-10
151
152
5-1Applied Instruction List
The applied instructions sort and their correspond instructions are listed in the following table: Common statements of XC1/XC3/XC5: Sort Mnemonic CJ CALL SRET STL STLE Program Flow SET ST FOR NEXT FEND Function Condition jump Call subroutine Subroutine return Flow start Flow end Open the assigned flow, close the current flow Open the assigned flow, not close the current flow Start of a FOR-NEXT loop End of a FOR-NEXT loop First end LD activates if (S1) = (S2) LD activates if (S1) > (S2) LD activates if (S1) =< (S2)
LD LD LD
LD
LD activates if S1 LD activates if S1
S2
Data Compare
LD AND
LD AND
AND
S2 LD activates ifS1S2 AND activates ifS1 S2 AND activates ifS1 S2 AND activates ifS1 S2
153
AND AND
AND
OR OR OR OR OR
OR MOV BMOV FMOV FWRT Data Move MSET ZRST SWAP XCH ADD SUB MUL DIV INC Data Operation DEC MEAN WAND WOR WXOR CML NEG
S2 OR activates if S1S2 OR activates if S1S2 OR activates if S1S2 OR activates if S1S2 OR activates if S1S2
OR activates if S1 Move Block move Fill move FlashROM written Zone set Zone reset The high and low byte of the destinated devices are exchanged Exchange Addition Subtraction Multiplication Division Increment Decrement Mean Word And Word OR Word exclusive OR Compliment Negative
154
Arithmetic Shift Left Arithmetic Shift Right Logic shift left Logic shift right Rotation shift left Rotation shift right Bit shift left Bit shift right Word shift left Word shift right Single word integer converts to double word integer 32 bits integer converts to float point 64 bits integer converts to float point Float point converts to binary
BIN BCD ASC HEX DECO ENCO ENCOL ECMP EZCP EADD Float Point Operation ESUB EMUL EDIV ESQR SIN COS TAN TCMP TZCP Clock Operation TADD TSUB TRD TWR BCD converts to binary Binary converts to BCD Hex. converts to ASCII ASCII converts to Hex. Coding High bit coding Low bit coding Float compare Float Zone compare Float Add Float Subtract Float Multiplication Float division Float Square Root Sine Cosine Tangent Time Compare Time Zone Compare Time Add Time Subtract Read RTC data Set RTC data
156
Note:
Denote the instruction name 16 bits instruction and 32 bits instruction Denotes the soft units which can be used as the operation object
S
Ladder Example D Flag after executing the instruction. Instructions without the direct flag will not display.
157
The related description The assignment of the data The data register of XC series PLC is a single word (16 bit) data register, single word data only engross one data register which is assigned by single word object instruction. The disposal bound is: Dec. 327,68~327,67, Hex. 0000~FFFF. D(NUM)
Instruction D(NUM)
Object data
Double word 32 bit engrosses two data register, its composed by two consecutive data registers, the first one is assigned by double word object instruction. The dispose bound is: Dec. -214,748,364,8~214,748,364,7, Hex. 00000000~FFFFFFFF. Double word object instruction D(NUM+1) D(NUM)
Instruction D(NUM)
Object data
Object data
The denote way of 32 bits instruction If an instruction can not only be 16 bits but also be 32 bits, then the denote method for 32 bits instruction is to add a D before 16 bits instruction. E.g ADD D0 D2 D4 denotes two 16 bits data adds
158
Instructions list of 16 bits and correspond 32 bits
16 bits WTD FLT INT BIN Data convert BCD ASC HEX DECO ENCO ENCOL Float operation TCMP TZCP Clock operation TADD TSUB TRD TWR 32 bits DFLT DINT DBIN DBCD ECMP EZCP EADD ESUB EMUL EDIV ESQR SIN COS TAN -
16 bits CJ CALL SRET STL Program Flow STLE SET ST FOR NEXT FEND MOV BMOV FMOV Data Move FWRT ZRST SWAP XCH ADD SUB MUL DIV INC Data operation DEC MEAN WAND WOR WXOR CML NEG SHL SHR LSL LSR Data Shift ROL ROR SFTL SFTR WSFL WSFR
159
32 bits -
DMOV DFWRT DXCH DADD DSUB DMUL DDIV DINC DDEC DMEAN DWAND DWOR DWXOR DCML DNEG DSHL DSHR DLSL DLSR DROL DROR DSFTL DSFTR DWSFL DWSFR
5-3Program Flow Instructions
Instructions name Condition Jump Call subroutine Subroutine return Flow start Flow end Open the assigned flow, close the current flow (flow jump) Open the assigned flow, not close the current flow (Open the new flow) Start of a FOR-NEXT loop End of a FOR-NEXT loop First End
160
Condition Jump [CJ]
16 bits instruction Suitable Device
161
CJ
As the instructions of executing list, with CJ instructions, the operate cycle and dual coil can be greatly shorten. In the following chart, if X000 ON then jump from step 1 to the end step of flag P6. When X000 OFF , do not execute jump instructions.
CJ
X0 P6
X1 Y0 X2
RST
T246
X3
T246
K1000
X4
MOV
K3
D0
P6 X0 CJ X5 Y0 P7 X6 P7
RST
T246
See the upward graph, Y000 turns to be dual coil and output. But when X000=OFF, X001 activates. When X000=ON, X005 activates. CJ can not jump from one STL to another STL. If program timer T0~T640 and high speed counter C600~C640 jump after driving, go on working, output point also activate.
Call subroutine [CALL] and Subroutine return [SRET] 16 bits instruction Suitable Device Pointer: P Soft Units Bound: P0~P9999
Suitable Models
CALLSRET
32 bits instruction
X0
Function
CALL
P10
Main program
FEND P10
Subroutine
SRET
END
If X000 ON , carry on Jump instruction and jump to step of flag P10. Here, after executing the subroutine, return to the original step via executing SRET instruction. After the following FEND instruction, program with the flag. In the subroutine, 9 levels Call instruction is allowed, so to the all, 10 levels nesting is available.
162
163
Flow [SET][ST] [STL] [STLE]
16 bits instruction SET ST STL STLE Suitable Device Pointer: S Soft Units Bound: S0~S Suitable Models
32 bits instruction
SET
S0
Function
STL S0
S1 S2
STLE STL S2
STLE
STL and STLE should be used in pairs. STL means start of a flow, STLE means end of a flow. After executing of SET Sxxx instruction, the flow assigned by these instructions is ON. After executing RST Sxxx instruction, the assigned flow is OFF. In flow S0, SET S1 close the current flow S0, open flow S1. In flow S0, ST S2 open the flow S2, but dont close flow S0. When flow turns from ON to be OFF, OFF or reset OUT PLS PLF not accumulate timer etc. which belongs to the flow. ST instruction is usually used when a program needs to run more flows at the same time.
164
[FOR] AND [NEXT]
16 bits instruction Suitable Device Word Device Bit Device Suitable Models 32 bits instruction
D
FORNEXT
D
D FD
K/H
DX
DY
DM
DS
TD
CD
Dn.m
Function
First execute the instructions between FOR~NEXT instructions for several times (the loop time is assigned by the source data), then execute the steps after NEXT.
S
M0 M1
K5 K6 D0 [A]
FOR
nesting level is 8. Between FOR/NEXT, LDP LDF instructions are effective for one time. Every time when M0 turns from OFF to ON, and M1 turns from OFF to ON, [A] loop is executed 6 times. Every time if M0 turns from OFF to ON and M3 is ON, [B] loop is executed 5 7=35 times. If there are many loop times, the scan cycle will be prolonged. Monitor timer error may occur, please note this. If NEXT is before FOR, or no NEXT, or NEXT is behind FENG END, or FOR and
FENDEND
Suitable Device
None
Function
An FEND instruction indicates the first end of a main program and the start of the program area to be used for subroutines. Under normal operating circumstances the FEND instruction performs a similar action to the END instruction, i.e. output processing, input processing and watchdog timer refresh are all carried out on execution.
If program the tag of CALL instruction behind FEND instruction, there must be SRET instruction. If the interrupt pointer program behind FEND instruction, there must be SRET instruction. After executing CALL instruction and before executing SRET instruction, if execute FEND instruction; or execute FEND instruction after executing FOR instruction and before executing NEXT, then an error will occur. In the condition of using many FEND instruction, please compile routine or subroutine between the last FEND instruction and END instruction.
166
Mnemonic
Function Initial comparison contact. Active when the comparison (S1) (S2) is true. Initial comparison contact. Active when the comparison (S1)> (S2) is true Initial comparison contact. Active when the comparison (S1)< (S2) is true
LD
LD
LD LD LD AND AND
LD
Initial comparison contact. Active when the comparison (S1)(S2) is true Initial comparison contact. Active when the comparison (S1)(S2) is true Serial comparison contact. Active when the comparison (S1)(S2)is true.
Initial comparison contact. Active when the comparison (S1) (S2) is true Serial comparison contact. Active when the comparison (S1)> (S2) is true. Serial comparison contact. Active when the comparison (S1)< (S2) is true.
Serial comparison contact. Active when the comparison (S1)(S2) is true. Serial comparison contact. Active when the comparison (S1)(S2) is true. Parallel comparison contact. Active when the comparison (S1)(S2) is true.
Serial comparison contact. Active when the comparison (S1) (S2) is true. Parallel comparison contact. Active when the comparison (S1)> (S2) is true. Parallel comparison contact. Active when the comparison (S1)< (S2) is true.
167
OR OR
OR
Parallel comparison contact. Active when the comparison (S1)(S2) is true. Parallel comparison contact. Active when the comparison (S1)(S2) is true.
Parallel comparison contact. Active when the comparison (S1) (S2) is true.
Initial Comparison LD
16 bits instruction Word Device Bit Device
32 bits instruction
S1 S2
Suitable Models
Refer Below
K/H DX DY DM
Refer Below
D FD
DS
TD
CD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the comparison of the instruction. If the comparison is true then the LD contact is active. If the comparison is false then the LD contact is not active. 16 bits LD 32 bits Active condition
DLD
S1S2
S1S2
168
LD
LD
DLD
S1S2
LD
DLD
S1S2
LD
DLD
S1S2
LD
DLD
S1S2
DLD
S1S2
S1
S2
Program
X0
LD=
K100
C0 X0
Y0
LD
D200
K-30
SET
Y1
DLD M4
K68899
C300
M50
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
use the data as a negative. The comparison of 32 bits counter (C300~) must use 32 bits instruction. If assigned as 16 bits instruction, it will lead the program error or
32 bits instruction
Suitable Models
Refer Below
Refer Below
S1
S2
K/H
DX
DY
DM
DS
TD
CD
FD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the comparison of the instruction. If the comparison is true then the LD contact is active. If the comparison is false then the LD contact is not active. 16 bits AND 32 bits Active condition
AND
DAND
AND
DAND
Program AND
DAND
AND
DAND
AND
DAND
DAND
170
X0 AND
S1
S2
K100
C0
Y0
X1
AND
K-30
D0
SET
Y1
X2
DAND
K68899
D10
M50
M4
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
use the data as a negative. The comparison of 32 bits counter (C300~) must use 32 bits instruction. If assigned as 16 bits instruction, it will lead the program error or operation error.
171
Parallel Comparision OR
16 bits instruction Word Device Bit Device
32 bits instruction
S1 S2
Suitable Models
Refer Below
K/H DX DY DM
Refer Below
D FD
DS
TD
CD
Dn.m
Instruction & Function The value of S1 and S2 are tested according to the instruction. If the comparison is true then the AND contact is active. If the comparison is false then the AND contact is not active. 16 bits 32 bits Active condition Inactive condition
AND
AND
DAND
DAND DAND
S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2 S1S2
Y0 OR
M4
S1
S2
K100
C0
X2
DOR
Note Items
When the source datas highest bit (16 bits b15 32 bits b31) is 1
use the data as a negative. The comparison of 32 bits counter (C300~) must be 32 bits instruction. If assigned as a 16 bits instruction, it will lead the program error or 172 operation error.
5-5Data Move
Mnemonic MOV BMOV FMOV FWRT MSET ZRST SWAP XCH Move Block Move Fill Move Written of FlashROM Zone Set Zone Reset Float To Scientific Exchange
Function
173
[MOV]
16 bits instruction Suitable Models
MOV
K/H DX DY DM
32 bits instruction
S
DMOV
D FD
Suitable Device
DS
D
TD
CD
Dn.m
Move data from one storage area to a new one. Move contents from source to destination If X000 is OFF, data will not change. Constant K10 will automatically convert to be BIN code.
T0 current valueD20
M0
K10 D10
T20
D20
DMOV
C235
D20
D1D0D11D10
174
[BMOV]
16 bits instruction Suitable Device
175
Suitable Models
BMOV
K/H n DX DY DM
32bits instruction
S
D FD
DS
D
TD
CD
Dn.m
Function A quantity of consecutively occurring data elements can be copied to a new destination. The source data is identified as a device head address(S) and a quantity of consecutive data elements (n). This is moved to the destination device (D) for the same number of elements (n). (If the quantity of source device (n) exceeds the actual number of available source devices, then only those devices which fall in the available range will be used. If the number of source devices exceeds the available space at the destination location, then only the available destination devices will be written to.)
S D
X0
n K3
BMOV
D5
D10
D5 D6 D7
The BMOV instruction has a built in automatic feature to prevent overwriting errors from occurring when the source (S-n) and destination (D-n) data ranges coincide. This is clearly identified in the following diagram: (NOTE: The numbered arrows indicate the order in which the BMOV is processed).
D9 D10 D11
[FMOV]
16 bits instruction
Suitable Models
FMOV
32 bits instruction
Word Device
Suitable Device
K/H n
DX
DY
DM
DS
D
TD
CD
FD
Bit Device
Dn.m
Function
X0
n K10
FMOV
K0
D0
Move K0 to D0~D9. Copy a single data device to a range of destination devices. The data stored in the source device (S) is copied to every device within the destination range, The range is specified by a device head address (D) and a quantity of consecutive elements (n). If the specified number of destination devices (n) exceeds the available space at the destination location, then only the available destination devices will be written to.
176
K0 K0 D 0
K0
D 1
K0 K0
D 2
D 3
K0
D 4 n
K0
D 5
K0
D 6
K0 K0
D 7 D 8
K0
D 9
177
[FWRT]
16 bits instruction Suitable Device Word Device Bit Device Suitable Models
FWRT
K/H DX DY DM
32 bits instruction
S
DFWRT
D FD
D
DS
TD
CD
Dn.m
Function
Written of a word
S D
X0
FWRT
D0
FD0
Function 2
Function 3
Written of multi-word
X2 FWRT D0 FD0 K3
Function
Note 1, FWRT instruction only allow to write data into FlashROM register. In this storage area, even battery drop, data could be stored. So it could be used to store important technical parameters. 2, Written of FWRT needs a long time, about 150ms, so, frequently operate this operation is not recommended. 3, The written time of FlashROM is about 1,000,000 times. So, we suggest using edge signals (LDP
[MSET]
16 bits instruction Word Device Bit Device Suitable Models
MSET
K/H DX DY
D1
32 bits instruction
DM
D2
D FD
DS
TD
CD
Dn.m
[ZRST]
16 bits instruction Word Device Bit Device Function & Action
D1 D2
Suitable Models
ZRST
K/H DX DY
D1
32 bits instruction
D1 D2
D FD
DM
D2
DS
TD
CD
Dn.m
X0
MSET
M10
D1
M120
D2
Zone Set Unit M10~M120 Zone Reset Bit Unit M500~M559 Zone Reset Word Unit D0~D100
D1
X0
ZRST
M500
D1
M559
D2
ZRST
D1 D2 D1
D0
D100
D2
As soft units separate reset instruction, RST instruction can be used to bit unit Y, M, S and word unit T, C, D. As fill move for constant K0, 0 can be written into DX, DY, DM, DS, T, C, D.
RST RST RST M0 T0 D0 K0 D0 K100
Reset M0 Reset the current value and status of T0 Reset the current value and status of C0 Write K0 into D0~D99
X1
X2
FMOV
179
[SWAP]
16bits instruction Suitable Models
SWAP
K/H DX DY DM
32 bits instruction
S
D FD
Suitable Device
DS
TD
CD
Dn.m
Function
Low 8 bits and high 8 bits change when it is 16 bits instruction. If the instruction is a consecutive executing instruction, each operation cycle should change.
180
[XCH]
16 bits instruction Suitable Models
XCH
K/H DX DY DM
32 bits instruction
D1 D2
DXCH
D FD
Suitable Device
181
DS
TD
CD
Dn.m
Function
16 bits instruction
D1 D2
X0
XCH
D10
D11
Before
D10=100
After D10=101
When drive input X0 is ON, each scan cycle should carry on data exchange,
32 bits instruction
D1 D2
X0
DXCH
D10
D20
32 bits instruction [DXCH] swaps value composed by D10 D11 and the value composed by D20 D21.
5-6Data Operation Instructions
Mnemonic ADD SUB MUL DIV INC DEC MEAN WAND WOR WXOR CML NEG
Function Addition Subtraction Multiplication Division Increment Decrement Mean Logic Word And Logic Word Or Logic Exclusive Or Compliment Negation
182
Addition Operation [ADD]
16 bits instruction Suitable Device
183
ADD
K/H DX DY DM
DADD
Flag
D FD
DS
D
TD
CD
Borrow Carry
Dn.m
Function
S1
S2
X0
ADD
D10
D12
D14
D10D12D14
The data contained within the two source devices are combined and the total is stored in the specified destination device. Each datas highest bit is the sign bit, 0 stands for positive 1
5+-8=-3 If the result of a calculation is 0, the 0 flag acts. If the result exceeds 32376716 bits limitor 2,147,483,64732 bits limit, the carry flag acts.refer to the next page. If the result exceeds 323,76816 bits limitor 2,147,483,64832 bits limit, the borrow flag actsRefer to the next page
stands for negative. All calculations are algebraic processed.
[SUB]
16 bits instruction Suitable Models:
SUB
K/H DX DY DM
32 bits instruction
S1 S2
DSUB
D FD
Borrow Carry
Suitable Device
DS
D
TD
CD
Dn.m
S1
S2
X0
Function
SUB
D10
D12
D14
D10D12D14
appoint the soft units content, subtract the soft units content appointed by S2 in the format of algebra. The result will be stored in the soft unit appointed by D . (5-(-8)=13) The action of each flag, the appointment method of 32 bits operations soft units are both the same with the preceding ADD instruction. The importance is: in the preceding program, if X0 is ON, SUB operation will be executed every scan cycle
S1
The relationship of the flags action and vales positive/negative is shown below:
184
[MUL]
16 bits instruction Word Device Bit Device Suitable Models
MUL
K/H DX DY DM
32 bits instruction
S1 S2
DMUL
D FD
Carry
DS
D
TD
CD
Borrow
Dn.m
16 bits operation
S1 S2 D
X0 MUL D0 D2 D4
BIN (D0)
BIN
BIN
(D2)
(D5, D4)
The contents of the two source devices are multiplied together and the result is stored at the destination device in the format of 32 bits. As in the upward chart: when (D0)=8 (D2)=9, (D5, D4) =72. The results highest bit is the symbol bit: positive (0) negative (1).
32 bits operation
S1 S2 D
X1 DMUL D0 D2 D4
BIN
BIN (D3
BIN
D1D0
D2) D7D6D5D4
In 32 bits operation, when use bit device as the destination address, only low 32 bits result can be obtained. The high 32 bits result can not be obtained, so please operate again after transfer one time to the word device Even use word device, 64 bits results cant be monitored at once. In this situation, float point data operation is recommended.
185
[DIV]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1 S2
DDIV
D FD
Borrow Carry
DS
D
TD
CD
Dn.m
16 bits operation
S1 S2 D
X0 DIV D0 D2 D4
Divisor BIN
Result BIN
(D2)
D4
appoints the devices content be the dividend, S2 appoints the devices content be the divisor, D appoints the device and the next one to store the result and the remainder. In the above example, if input X0 is ON, devision operation is executed every scan cycle.
S1
32 bits operation
S1 S2 D
X1 DDIV D0 D2 D4
Dividend BIN
X1
S1
Result S2
D Remainder
D0 BIN D2
BIN D4 (D7,D6)
(D1,D0)
(D3,D2)
D5,D4
The dividend is composed by the device appointed by S1 and the next one. The divisor is composed by the device appointed by S2 and the next one. The result and the remainder are stored in the four sequential devices, the first one is appointed by D If the value of the divisor is 0, then an operation error is executed and the operation of the DIV instruction is cancelled. The highest bit of the result and remainder is the symbol bit (positive:0, negative: 1). When any of the dividend or the divisor is negative, then the result will be negative. When the dividend is negative, then the remainder will be negative.
186
INCDEC
K/H DX DY DM
DINCDDEC
D FD
Borrow Carry
DS
TD
CD
Dn.m
1 Increment [INC]
D
X0
INC
D0
D01(D0)
D
On every execution of the instruction the device specified as the destination current value incremented (increased) by a value of 1.
has its
In 16 bits operation, when +32 767 is reached, the next increment will write -32 767 to the destination device. In this case, theres no additional flag to identify this change in the
2 Decrement [DEC]
D
X1
DEC
D0
D01(D0)
D
On every execution of the instruction the device specified as the destination current value decremented (decreased) by a value of 1.
has its
When -32 768 or -2 147 483 648 is reached, the next decrement will write +32 767
187
[MEAN]
16 bits instruction Word Device Bit Device
Suitable Models
MEAN
K/H n DX DY DM
32 bits instruction
S
D FD
Borrow Carry
DS
D
TD
CD
Dn.m
X0
n K3
MEAN
D0
D10
(D0)
(D1) + (D2) 3
(D10)
The value of all the devices within the source range is summed and then divided by the number of devices summed, i.e. n.. This generates an integer mean value which is stored in the destination device (D) The remainder of the calculated mean is ignored. If the value of n is specified outside the stated range (1 to 64) an error is generated.
188
WANDWOR
K/H DX DY DM
Borrow Carry
DS
D
TD
CD
FD
Dn.m
Function & Action Execute logic AND operation with each bit
S1 S2 D
X0
WAND
D10
D12
D14
0&0=0 1&0=0
0&1=0 1&1=1
X0
WOR
D10
D12
D14
0 or 0=0 1 or 0=1
0 or 1=1 1 or 1=1
X0
WXOR
D10
D12
D14
If use this instruction along with CML instruction, XOR NOT operation could also be executed.
S1 S2 D
X0
WXOR
D10
D12
D14
CML
D14
D14
189
[CML]
16 bits instruction Word Device Bit Device
Suitable Models
CML
K/H DX DY DM
32 bits instruction
S
DCML
D FD
DS
D
TD
CD
Dn.m
X0
CML
D0
DY0
A copy of each data bit within the source device is inverted and then moved to the designated destination. Each data bit in the source device is inverted (0->1, 1->0) and sent to the destination device. If use constant K in the source device, it can be auto convert to be binary. Its available when you want to inverted output the PLCs output
190
X0 M0
X1
M1
The sequential control instruction in the left could be denoted by the following CML instruction.
X2
M2
M8000
CML
DX0
DM0
X3
M3
X17
M17
[NEG]
16 bits instruction Word Device Bit Device
Suitable Models
NEG
K/H DX DY DM
32 bits instruction
D
DNEG
D FD
DS
TD
CD
Dn.m
X0
NEG
D10
(D10) +1
(D10)
The bit format of the selected device is inverted, I.e. any occurrence of a 1 becomes a 0 and any occurrence of 0 becomes 1, when this is complete, a further binary 1 is added to the bit format. The result is the total logic sigh change of the selected devices contents.
191
192
5-7Shift Instructions
Mnemonic SHL SHR LSL LSR ROL ROR SFTL SFTR WSFL WSFR
Function Arithmetic shift left Arithmetic shift right Logic shift left Logic shift right Rotation left Rotation right Bit shift left Bit shift right Word shift left Word shift right
193
[SHL] & [SHR]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
D
SHLSHR
n K/H DX DY DM
DSHLDSHR
D FD
XC3 XC5
DS
TD
CD
Dn.m
Note: In the left example, when X1 is ON, left/right shift is executed at every scan cycle.
194
DLSLDLSR
D FD
XC3 XC5
TD
CD
Dn.m
195
NOTE: In every scan cycle, loop shift left/right action will be executed
ROLROR
n K/H DX DY
DROLDROR
D FD
XC3 XC5
DM
DS
TD
CD
Dn.m
Function & Action The bit format of the destination device is rotated n bit places to the left on every operation of the instruction
Every time when X000 turns from OFF to ON, executes n bits left rotation.
196
Every time when X000 turns from OFF to ON, executes n bits right rotation.
SFTLSFTR
n1n2 K/H DX DY DM
S
DSFTLDSFTR
D FD
XC3 XC5
DS
TD
CD
S
D
Dn.m
Function & Action The instruction copies n2 source devices to a bit stack of length n1. For every new addition of n2 bits, the existing data within the bit stack is shifted n2 bits to the left/right. Any bit data moving to the position exceeding the n1 limit is diverted to an overflow area. The bit shifting operation will occur every time the instruction is processed unless it is modified with either the pulse suffix or a controlled interlock.
M11~M 8 M15~M 12
M 7~M 4 M11~M8
197
M 7~M 4 M3~M0
M11~M 8 M7~M4
WSFLWSFR
n1n2 K/H DX DY DM
XC3 XC5
DS
D
TD
CD
FD
Dn.m
Function & Action The instruction copies n2 source devices to a word stack of length n1. For each addition of n2 words, the existing data within the word stack is shifted n2 words to the left/right. Any word data moving to a position exceeding the n1 limit is diverted to an overflow area. The word shifting operation will occur every time the instruction is processed unless it is modified with either the pulse suffix or a controller interlock.
D25~D22 overflow
D21~D18 D25~D22
D17~D14 D21~D18
198
n2
D17~D14 D13~D10
D21~D18 D17~D14
5-8Data Convert
Mnemonic WTD FLT FLTD INT BIN BCD ASC HEX DECO ENCO ENCOL
Function Single word integer converts to double word integer 32 bits integer converts to float point 64 bits integer converts to float point Float point converts to integer BCD convert to binary Binary converts to BCD Hex. converts to ASCII ASCII converts to Hex. Coding High bit coding Low bit coding
199
[WTD]
16 bits instruction Word Device Bit Device Suitable Models
WTD
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
WTD
D0
D10
D0 D11D10
D0 D10
0 or 1 D11
200
[FLT] & [FLTD]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
S
FLT
K/H DX DY DM
DFLT
S
XC3 XC5
DS
TD
CD
D
FD
Dn.m
16 Bits
S D
X0
FLT
D10
D12
(D10)
(D13,D12)
32 Bits
S D
X0
DFLT
D10
D12
D11,D10 D13,D12
64 Bits
S D
X0
FLTD
D10
D14
D13,D12,D11,D10 D17,D16,D15,D14
Convert BIN integer to binary float point. As the constant K H will auto convert by the float operation instruction, so this FLT instruction cant be used. The instruction is contrary to INT instruction.
201
[INT]
16 bits instruction Word Device Bit Device
Suitable Models
K/H DX DY DM
32 bits instruction
INT
S
XC3 XC5
DS
TD
CD
D
FD
Dn.m
16
S D
X0
INT
D10
D20
D11,D10
Binary Floating
32
S D
X0
DINT
D10
D20
D11,D10
Binary Floating
The binary source number is converted into an BIN integer and stored at the destination device. Abandon the value behind the decimal point. This instruction is contrary to FLT instruction. When the result is 0, the flag bit is ON
202
When converting, less than 1 and abandon it, zero flag is ON. 16 bits operation
-32,768~32,767
[BIN]
16 bits instruction Word Device Bit Device
Suitable Models
BIN
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
BIN
D10
D0
(Operation error lock) will not work. As constant K automatically converts to binary, so its not suitable for this instruction.
203
[BCD]
16 bits instruction Word Device Bit Device
Suitable Models
BCD
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
BCD
D10
D0
204
[ASCI]
16 bits instruction Word Device Bit Device
Suitable Models
ASCI
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
n K4
ASCI
D100
D200
Convert each bit of sources (S) Hex. format data to be ASCII code, move separately to the high 8 bits and low 8 bits of destination (D). The convert alphanumeric number is assigned with n. (D) is low 8 bits, high 8 bits, store ASCII data. The convert result is the following Assign start device (D100)=0ABCH (D101)=1234H
n D D200 down D200 up D201 down D201 up D202 down D202 up K1 [C] K2 [B] [C] K3 [A] [B] [C] K4 [0] [A] [B] [C] K5 [4] [0] [A] [B] [C] K6 [3] [4] [0] [A] [B] [C] K7 [2] [3] [4] [0] [A] [B] K8 [1] [2] [3] [4] [0] [A] K9 [8] [1] [2] [3] [4] [0]
205
D203 down D203 up D204 down [C] [B] [C] [A] [B] [C]
[HEX]
16 bits instruction Word Device Bit Device
Suitable Models
HEX
K/H DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
Dn.m
X0
n K4
HEX
D200
D100
Convert the high and low 8 bits in source to HEX data. Move 4 bits every time to destination. The convert alphanumeric number is assigned by n.
D101 D100
ASCII Code 30H 41H 42H 43H 31H 32H 33H 34H
HEX Convert 0 A B C 1 2 3 4 5
1 2
D102
D200 down D200 up D201 down D201 up D202 down D202 up D203 down D203 up
0H
Not change to be 0
0AH 0ABH
0ABCH
3 4 5 6
0H 0AH
ABC1H BC12H
n=k4
206
D200 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0
30H [0] 1 0 0 1 0
42H [B] 1 1 1 C 0 0
207
[DECO]
16 bits instruction Word Device Bit Device Suitable Models
DECO n
K/H DX DY DM
X Y M S
D
32 bits instruction
S
D FD
XC3 XC5
DS
TD
CD
Dn.m
When
X10
is software unit
S
n16
D
n K3
DECO
DX0
M10
X001 1
X000 1
1 M13
2 0 M12
1 0 M11
0 0 M10
M14
The source address is 1+2=3 so starts from M10, the number 3 bit (M13) is 1. If the source are all 0, M10 is 1 When n=0, no operation, beyond n=0~16, dont execute the instruction. When n=16, if coding command D is soft unit, its point is 2^8=256
When
X0
is word device
S
n4
D
n K3
DECO
D0
D1
high bits all converts to be 0. When n=0, no disposal, beyond n=0~4, dont execute the instruction.
[ENCO]
16 bits instruction Word Device Bit Device
Suitable Models
K/H ENCO DX
n
32 bits instruction
DY DM DS
D
TD
CD
FD
XC3 XC5
M
S
Dn.m
When
X0
is bit device
n16
D
n K3
ENCO
M10
D10
M17 0 7
M16 0 6
M15 0 5
M14 0 4
M13 1
M12 0 2
M11 1 1
M10 0 0
b15 0 0
D10 0 0
4 0
1 1 b0
All be 0
When
X1
is word device
n4
D
n K3
ENCO
D0
D1
b15 0 1
D0 0 1
0 7
0 6
0 5
0 4
0 2 4 0
1 1
b0 0 0
b15 0 0
Be ignored
0 0
D1 0 0
1 1 b0
All be 0
If many bits in the source ID are 1, ignore the low bits. If source ID are all 0, dont execute the instructions. When drive input is OFF, the instruction is not executed, encode output dont change. When n=8, if encode instructions S is bit unit, its point number is 2^8=256
209
210
[ENCOL]
16 bits instruction Word Device Bit Device Suitable Models
ENCOL
K/H n DX DY DM
32 bits instruction
S
D FD
XC3 XC5
DS
D
TD
CD
M
S
Dn.m
If
is bit device
n16
S D
X0
n K3
ENCOL
M10
D10
M17 0 7
M16 0 6
M15 1 5
M14 0 4
M13 1
M12 0 2
M11 0 1
M10 0 0
b15 0 0
D10 0 0
4 0
1 1 b0
All be 0
n16
S D
X1
n K3
ENCOL
D0
D1
b15 0 1
D0 0 1
0 7
0 6
1 5
0 4
Be ignored
b15 0 0 0 0 D1 0 0 0 0
0 2 4 0
0 1
b0 0 0
1 1 b0
All be 0
If many bits in the source ID are 1, ignore the high bits. If source ID are all 0, dont execute the instructions. When drive input is OFF, the instruction is not executed, encode output dont change. When n=8, if encode instructions S is bit unit, its point number is 2^8=256
211
212
5-9Floating Operation
Mnemonic ECMP EZCP EADD ESUB EMUL EDIV ESQR SIN COS TAN
Function Float Compare Float Zone Compare Float Add Float Subtract Float Multiplication Float Division Float Square Root Sine Cosine Tangent
213
[ECMP]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S1 S2
ECMP
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
M
D
Dn.m
D11,D10 D21,D20M0,M1,M2
S1 S2 D
X0
ECMP M0
D10
D20
>
M0
(D21<D20)
(D11, D10)
Binary Floating
M1
(D11, D10) =
Binary Floating
(D21<D20)
Binary Floating
M2
(D11, D10) <
Binary Floating
(D21<D20)
Binary Floating
Binary Floating
The status of the destination device will be kept even if the ECMP instruction is deactivated.
The binary float data of S1 is compared to S2. The result is indicated by 3 bit devices specified with the head address entered as D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X0
ECMP
K500
D100
M10
K500 D101D100M10,M11,M12
Binary converts Binary floating
214
[EZCP]
16 bits instruction Word Device Bit Device Suitable Models
K/H DX
S1
32 bits instruction
S1 S2 S3
ECMP
D FD
XC3 XC5
DY
S2
DM
S3
DS
TD
CD
M
D
Dn.m
X0
EZCP M3
D10
>
D20
(D1, D0)
D0
M3
ON
(D20, D21)
Binary Floating
M4
(D21,D10)
>
D31D30
Binary Floating ON
ON
M5
The status of the destination device will be kept even if the EZCP instruction is deactivated.
The data of S1 is compared to the data of S2. The result is indicated by 3 bit devices specified with the head address entered as D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X0
EZCP
K10
K2800
D5
M0
K10
Binary converts
[D6,D5]
K2800M0M1M2
Binary converts
Binary Floating
Please set S1<S2, when S2>S1, see S2 as the same with S1 and compare them.
215
[EADD]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EADD
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EAAD
D10
D20
D50
D11,D10
Binary Floating
(D21,D20)
Binary Floating
The floating point values stored in the source devices S1 and S2 are algebraically added and the result stored in the destination device D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1 EAAD D100 K1234 D110
K1234
( D101,D100)
(D111,D110)
The same device may be used as a source and as the destination. If this is the case then, on continuous operation of the EADD instruction, the result of the previous operation will be used as a new source value and a new result calculated. This will happen every program scan unless the pulse modifier or an interlock program is used.
216
[ESUB]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
ESUB
FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
ESUB
D10
D20
D50
(D11,D10)
(D21,D20)
(D51,D50)
The floating point value of S2 is subtracted from the floating point value of S1 and the result stored in destination device D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
ESUB
K1234
D100
D110
K1234
(D101,D100)
(D111,D110)
The same device may be used as a source and as the destination. If this is the case then, on continuous operation of the EADD instruction, the result of the previous operation will be used as a new source value and a new result calculated. This will happen every program scan unless the pulse modifier or an interlock program is used.
217
[EMUL]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EMUL
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EMUL
D10
D20
D50
D11D10 D21,D20
Binary Floating Binary Floating
The floating value of S1 is multiplied with the floating value point value of S2. The result of the multiplication is stored at D as a floating value. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1 EMUL K100 D100 D110
(K100)
(D101,D100)
Binary Floating
218
[EDIV]
16 bits instruction Word Device Bit Device Suitable Models
S1 S2
32 bits instruction
S2 S1
EDDIV
D FD
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
Dn.m
X0
EDIV
D10
D20
D50
D11,D10D21,D20D51,D50
The floating point value of S1 is divided by the floating point value of S2. The result of the division is stored in D as a floating point value. No remainder is calculated. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
EDIV
D100
K100
D110
(D101,D100)
(K100)
(D111,D110)
If S2 is zero then a divide by zero error occurs and the operation fails.
219
[ESQR]
16 bits instruction Word Device Bit Device
Suitable Models
32 bits instruction
ESQR
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
ESQR
D10
D20
(D11,D10)
D21,D20
A square root is performed on the floating point value in S the result is stored in D. If a constant K or H used as source data, the value is converted to floating point before the addition operation.
X1
ESQR
K1024
D110
K1024
D111D110
Binary Floating
When the result is zero, zero flag activates Only when the source data is positive will the operation be effective. If S is negative then an error occurs and error flag M8067 is set ON, the instruction cant be executed.
220
[SIN]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
SIN
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
SIN
D50
D60
This instruction performs the mathematical SIN operation on the floating point value in S (angle RAD). The result is stored in D.
D51
D50
/180)
SIN value
221
[COS]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
COS
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
COS
D50
D60
This instruction performs the mathematical COS operation on the floating point value in S (angle RAD). The result is stored in D.
D51
D50
/180)
COS value
222
[TAN]
16 bits instruction Word Device Bit Device Suitable Models
32 bits instruction
TAN
S
XC3 XC5
K/H
DX
DY
DM
DS
TD
CD
D
FD
Dn.m
X0
TAN
D50
D60
(D51,D50)RAD
(D61,D60)TAN
This instruction performs the mathematical TAN operation on the floating point value in S. The result is stored in D.
D51
D50
/180)
TAN value
223
5-10Clock Operation
Function Time Compare Time Zone Compare Time Add Time Subtract Read RTC data Set RTC data
Note The models without clock can not use these instructions.
224
Time Compare [TCMP]
16 bits instruction Word Device Bit Device Suitable Models 32 bits instruction
S1 S2 S3
DIV
K/H DX DY DM
DDIV
D FD
XC3 XC5
DS
TD
CD
S
S
D
Dn.m
Function & Action Compare the assigned time with time data.
The status of the destination devices is kept, even if the TCMP instruction is deactivated.
S1
S2
S3
S time is compared to the time value in the 3 data devices specified by the head D address , The result is indicated in the 3 bit devices specified by the head
Assign the compare standard Hour Assign the compare standard Minute Assign the Hour of clock data 1 Assign the Minute of clock data 1, 2 According to the compare result, the 3 devices output ON/OFF.
S1 S2 S3 S S S D D
225
[TZCP]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S3
XC3 XC5
S2
DS
TD
CD
FD
S
D
Dn.m
Function & Action Compare the two assigned time with time data
The status of the destination devices is kept, even if the TCMP instruction is deactivated.
Compare the 3 clock data start from S with the two ends on the clock compare bound, according to the area bound, output the three ON/OFF status starts from D
S1 S2 S
D
, ,
S 1
S2 S
D
1 2 : Assign the compare low limit in the form of Hour, Minute and Second. 1 2 : Assign the compare low limit in the form of Hour, Minute and Second.
S 1 S2 S
D
226
[TADD]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S2
XC3 XC5
DS
TD
CD
D
FD
Dn.m
X0
TADD
D10
D20
D30
Each of S1, S2 and D specify the head address of 3 data devices to be used a time value. The time value in S1 is added to the value in S2, the result is stored to D as a new time value. If the addition of the two times results in a value greater than 24 hours, the value of the result is the time remaining above 24 hours. When this happens the carry flag M8022 is
S1 18 (Hour) 10 (Minute) 30 (Second) 18 hour 10 min. 30 sec. + S2 10 (Hour) 20 (Minute) 5 (Second) 3 hour 20 min. 10 sec. D 4 (Hour) 30 (Minute) 35 (Second) 4 hour 30 min. 35 sec.
0 Hour 0 Minute 0 Second Set zero flag ON. The valid range of Hour is0~23. The valid range of Minute is0~59.
When the result is 0
227
[TSUB]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
S1
DDIV
S2
XC3 XC5
DS
TD
CD
D
FD
Dn.m
X0
TSUB
D10
D20
D30
(D10, D11, D12) S1 D10 (Hour) D11 (M inute) D12 (Second) 10 hour 20 min. 30 sec. _
Each of S1, S2 and D specify the head address of 3 data devices to be used a time value. The time value in S1 is subtracted from the time value in S2, the result is stored to D as a new time. If the subtraction of the two times results in a value less than 00:00:00 hours, the value of the result is the time remaining below 00:00:00 hours. When this happens the borrow flag M8021 is set ON.
S1 10 (Hour) 20 (Minute) 5 (Second) 10 hour 20 min. 5 sec. _ S2 18 (Hour) 10 (Minute) 30 (Second) = D 4 (Hour) 30 (Minute) 35 (Second)
When the result is 0 (0 hour 0 min. 0 sec.), zero flag set ON.
[TRD]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
D
DDIV
D FD
XC3 XC5
DS
TD
CD
Dn.m
X0
TRD
D0
The current time and date of the real time clock are read and stored in the 7 data devices specified by the head address D.
Read PLCs real time clock according to the following format. The reading source is the special data register
D8013~D8019which save
Unit D0 D1 D2 D3 D4 D5 D Item Year Month Date Hour Minute Second Week
Unit D8018 D8017 D8016 D8015 D8014 D8013 D8019 Special data register for real
Clock data 0-99 1-12 1-31 0-23 0-59 0-59 0 (Sun.)-6 (Sat.)
time clock t
229
[TWR]
16 bits instruction Word Device Bit Device Suitable Models
DIV
K/H DX DY DM
32 bits instruction
DDIV
D FD
XC3 XC5
DS
TD
CD
Dn.m
X0
The 7 data devices specified with the head address S are used to set a new
TWR
D10
Write the set clock data into PLCs real time clock. In order to write real time clock, the 7 data devices specified with the head address S should be pre-set.
Clock data 0-99 1-12 1-31 0-23 0-59 0-59 0 (Sun.)-6 (Sat.)
Item Year Month time clock t Date Hour Minute Second Week Special data register for real
230
After executing TWR instruction, the time in real time clock will immediately change to be the new set time. So, when setting the time it is a good idea to set the source data to a time a number of minutes ahead and then drive the instruction when the real time reaches this value.
6Special Function InstructionsXC3/XC5
In this chapter, we introduce the functions of high-speed count input, high-speed pulse output and MODBUS communication instructions of XC series PLC.
6-1
High-speed Count Pulse Uutput Modbus Instructions Free Format Communication PWM Pulse Modulate Frequency Testing Precise Time
6-2
6-3
6-4
6-5
6-6
6-7
6-8
6-9
231
232
6-1High-speed Count High-speed Count Function
XC series PLC all have high speed count function. By choosing different counter, you can realize count function of increment mode, pulse + direction input mode, AB phase mode count, the frequency can reach 200KHz.
233
2About the definition of high speed counters input terminals, please refer to the following table
When X input terminals are not used as high speed input port, they could be used as common input terminals. [U]---count pulse input [Dir]---count direction judgment (OFF means +, ON means -) [A]---A phase input [B]---B phase input
XC3-48
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 X000 U X001 X002 X003 X004 X005
XC3-24
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 X000 U X001 X002 X003 X004 X005 X006 X007 X010 X011 X012 U U 234 U U Dir B A U U Dir B A U Dir B A
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 X000 U X001 X002 X003 X004 X005 U U U U Dir B A U Dir B A
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 X000 U X001 X002 X003 U U Dir B A
3About the high speed counters which dont support four times frequency in AB phase high speed counters, please refer to the following table:
PLC MODELS XC3-14 XC3 Series XC3-24/ XC3-32 XC3-48/ XC3-60 XC5 Series XC5-32 XC5-48/ XC5-60 High speed counters without four times counter C630 C632 C630 C632
Input Mode
Increment Mode
235
Under increment mode, input pulse signal, the count value increases with each pulse signal.
ON OFF
+1
+1
+1
+1
+1
+1
+1
+1
Pulse Input
Pulse + Direction input mode: Under pulse + direction input mode, both the pulse signal and direction signal are input, the count value increase/decrease according to the direction signals status.
ON
+1
+1
+1
+1
-1
-1
-1
-1
OFF ON OFF
AB phase mode: Under AB phase mode, the count value increase/decrease according to the signal difference (A phase and B phase)
ON
OFF ON OFF
+1
-1
2 Count Value High speed counters count bound: K-2,147,483,648 ~ K+2,147,483,647. If the count value exceeds the bound, overflow or underflow will occur; if occur overflow, K+2,147,483,647 will change to be K-2,147,483,648, then go on counting; if occur underflow, K-2,147,483,648 will change to be K+2,147,483,647, then go on counting
M0
C600
K2000
M1
RST
C600
See the right graph, when M0 is ON, C600 starts to count with the pulse input from X0 port; when M1 turns from OFF to ON, the status value and count value of C600 reset.
236
COM COM X0
X1 X2
X3 X4
X5 X6 COM
COM X0
X1 X2
X3 X4
X5 X6
Increment Mode
Pulse input
COM COM X0
X1 X2
X3 X4
X5 X6
Program Example
The following, we take XC3-60 PLC model as the example to tell how to program with the high speed count
237
M0
When M1 activates, reset when execute RST instruction. When M2 is ON, C604 starts to count. The count input is X004, In this example, the set value is the content indirectly assigned in the data register. See the graph, reset via M3 in the sequential control program.
M2
C604
D0(D1)
M3
RST
C604
M4
M5
RST
C620
M6
C622
K100
M7
RST
C622
status from X002, decide the count direction. If X003 is OFF, execute increase count; if X003 is ON,
B phase.
The output contactors (correspond with the current value) action is the same with
238
M8 C630 K1000
C630
Y002
M9
RST
C630
When M8 is ON, C630 counts with the input X000 (B phase), X001(A phase) via interruption. If M9 is ON, execute RST instruction to reset. If the current value exceeds the set value, then Y002 is ON; If the current value is smaller than the set value, then Y002 is OFF
M10
C632
D0(D1)
When M10 is ON, C632 starts to count. The count input is X002 (B phase) X003(A phase).
C632
Y004
M11
RST
C632
Reset via M11. If the current value exceeds the set value, then Y004 activates; If the current value is smaller than the set
In the condition of A phase input is OFF ON, if B phase input is OFF, the counter is increase count; if B phase input is ON, the counter is decrease count.
Times Frequency
High speed counters have one time frequency and four times frequency two modes. PLCs defaulted count mode is four times frequency mode. The count format of two count modes is shown below: One time frequency mode: A B phase counters count format:
A +1 B -1
Decrement count
AB phase count add 4 times frequency count mode. The count mode is shown below: Increment count
239
A B
+1 +1 +1 +1 +1 +1 +1 +1+1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1
Decrement count
A B
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
In the condition of testing the same pulses by the counter, the count value equals four times under four times frequency mode of that under one time frequency mode. The setting method of 4 times frequency mode: 1 is 1 time frequency, 4 is 4 times frequency, 1 is 1 time frequency, 4 is 4 times frequency 1 is 1 time frequency, 4 is 4 times frequency
240
6-2Pulse Output Pulse Output Function
Normally XC3 series and XC5 series PLC have 2 channels pulse output. Via different instruction to program, you can realize single direction pulse output without speedup/speed-down; or you can realize single direction pulse output with speedup/speed-down; or you can realize multiply-segment, positive/negative output and so on. The output frequency can reach 400K Hz.
Step Motor
Y0 COM0 COM1 Y1 COM2 Y2
Driver
Note: 1) To use pulse output, you should use PLC with transistor output. Such as XC3-14T-E or XC3-60RT-E etc.
2) XC5-32 PLC models have 4 channels (Y0 Y1 Y2 Y3) pulse output function.
241
PLSY: generate certain quantity pulse with the assigned frequency PLSF: generate sequential pulse with changeable frequency form
PLSY Instruction
S1 S2 D
M0
PLSY
K30
D1
Y0
M8170
RST
M0
Generate certain quantity pulse with the assigned frequency; support 32 bits instruction [DPLSY].
S1 S2
D
When M0 is ON, PLSY instruction output pulse of 30Hz at Y0, the pulse number is assigned by D1, when sending pulse, coil M8170 sets ON. When the output pulse reach the set value, stop pulse output, coil M8170 sets OFF, reset M0. Limited pulse output Set pulse number After finish outputting the set pulse number, output will auto stop. PLSF Instruction:
S D
M0
PLSF
D0
Y0
Generate sequential pulse with changeable frequency form Support 32 bits instruction [DPLSF].
S
Assign the frequency. Operands: K TD CD D FD 200~400KHz (If the set frequency is lower than 200Hz, output 200Hz) Assign Y port which generates pulse, can only output at Y000 or Y001 With the changing of the set frequency in D0, the output pulse frequency from Y0 changes. Accumulate pulse number in register D8170 Sequential pulse output
D Bound:
242
Continuously output pulse with the set frequency till pass the statement, then stop outputting.
M0
PLSR
K3000
D300
K300
Y0
M8170
RST
M0
Generate a certain quantity pulse with the assigned frequency; support 32 bits instruction [DPLSR]
S1 S2 S3
D
Total output pulse number. When M0 is ON, PLSR starts pulse output, send assigned pulse number according to the assigned speedup/speed-down slope highest frequency. To output with the constant speed, set the speedup/speed-down time as 0. If set the pulse number as H 7FFFFFFF, infinity pulse number will be sold out, at this time coil M8170 set ON. When the output pulse number reaches the set value, stop pulse outputting, at
FD Operands: KTDCDDFD
243
M0
PLSR
D0
D100
Y3
M8170
RST
M0
The instruction which generates a certain quantity pulse with the assigned frequency. S1 An area with Dn or FDn as the start address. In the above example, D0 set the highest frequency of segment 1 pulse, D1 set the highest frequency of segment 1 pulse, D2 set the highest frequency of segment 2 pulse, D3 set the highest frequency of segment 2 pulse,
S2
if the set value of Dn, Dn+1 are both 0, it means segment finish. You can set at most 24 segments. Operands: D, FD Speedup/speed-down time. Here the time means the speed time from start to the first segments speedup time, meantime, all segments frequency and time slope are defined. So the following speedup/speed-down speed follows them. Operands: K, TD, CD, D, FD Assign the Y number of output pulse, can only output at Y000 or Y001 Support double words output DPLSR, here D0 D1 set the highest frequency of segment
1 D2 D3 set the pulse number of segment 1, D4 D5 set the highest frequency of segment 2
244
Frequency: 0~400KHz Speedup/speed-down time: Below 5000ms Output Terminals: Y0 or Y1 Direction output terminal: Any Y Output Mode: Limited number of pulse Pulse Number: 16 bits instruction: 0~K32767 32 bits instruction: 0~K2147483647 Instruction: PLSR PLSR: Generate certain pulse with the assigned frequency and speedup/speed-down time. Dual Pulse Output with Speedup/Speed-down
S1 S2 D1 D2
M0
PLSR
D0
D100
Y0
Y3
M8170
RST
M0
Generate certain pulse with the assigned frequency, speedup/speed-down time, pulse direction. S1 An area which takes Dn or FDn with the start address. In the preceding example, D0 set the max frequency of segment 1, D1 set pulse number of segment 1. D2 set the max frequency of segment 2, D3 set pulse number of segment 2,
245
segments at most. Operands: D, FD. Speedup/speed-down time, here the time means the speedup time from the start to the highest frequency. At the same time all segments frequency and time slope is defined, so the following speedup/speed-down format all do according to them. Operands: K TD CD D FD
S2
D 1
D 2
S1
In the condition of pulse output reaches the highest frequency of current segment, and stably output, if M1 turns from OFF to ON, then enter next pulse output with the speedup/speed-down time. In pulse output speedup/speed-down process, execute this instruction is invalid.
246
-------- the broken line means the original pulse output curve
PLSR
D0
D100
Y0
M1
STOP
Y0
M8170
RST
M0
If M000 turns from OFF to ON, PLSY activates and Y000 output pulse, D0 assign the frequency, D001 assign the pulse number, D100 assign the speedup/speed-down time, when the output pulse number reaches the set value, stop pulse outputting. At the rising edge of M001, STOP instruction stop pulse outputting at Y000 immediately.
Output port Y0: pulse output port 0 (Single Phase) Output port Y1: pulse output port 1 (Single Phase)
The following graph is connection of output terminals and step motor driver:
247
PLC Side Step Motor Driver Side
Y0
PU
Y1
PU
Note Items
1 Concept of Step Frequency
248
In the process of speedup/speed-down, each steps time is 5ms, this time is fixed. The max. step is 15K. (the increase/decrease frequency of each step). If the value exceeds 15K, count as 15K the minimum step frequency is 10Hz, if lower than 10Hz, calculate as 10Hz. When carrying on pulse output, please note each segments pulse number shouldnt lower than 10, 2
In the process of segment pulse output, if the current pulse number has sent out but still havent reached the current segments max. frequency, then in the process from the current segment to the next pulse output, there will be pulse frequency jump. See the following chart. To avoid frequency jump, please note the speedup/speed-down time set value not to small. 3 Pulse Output cant realize dual output In one main program, you cant write two or up to two pulse output instruction with the same output port Y. The following program is wrong.
M0 PLSR D0 D100 Y0
M1
PLSR
D200
D1000
Y0
Application
E.g.1: Fixed Stop With subsection pulse output statement [PLSR] and pulse segment switch statement [PLSNEXT], realize fixed-length function.
249
M0 M1 Take the preceding program as the example, in D0 D1 and D2
Segment 1
Segment 2
D3, set two parts pulse output with the same frequency value. The pulse number in D3 is set to be the number needed When M1 is ON. This will realize fixed-length stop function. Refer
M8170
E.g.2
Follow Relationship
The pulse output frequency of Y0 equals the tested input frequency of X003. If the tested input frequency at X003 changes, the output frequency at Y0 changes relatively.
X000
FRQM
K20
D0
K1
X003
PLSF
D0
Y0
ID
frequency pulse ID
Function
Description
250
M8170 M8171 M8172 M8173 M8174 M8175 M8176 M8177 M8178 M8179 M8180 M8181 PULSE_4 PULSE_3 PULSE_2 PULSE_1 Sending pulse flag 32 bits pulse overflow flag Direction flag Sending pulse flag 32 bits pulse overflow flag Direction flag Sending pulse flag 32 bits pulse overflow flag Direction flag Sending pulse flag 32 bits pulse overflow flag Direction flag sending sending sending sending Be 1 at pulse sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON
251
High
ID D8170 D8171 D8172 D8173 D8174 D8175 D8176 D8177 D8178 D8179 D8180 D8181 D8190 D8191 D8192 D8193 D8194 D8195 D8196
frequency pulse ID
Function The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
Description
PULSE_1
PULSE_2
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
PULSE_3
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
PULSE_4
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
PULSE_1
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
PULSE_2
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
PULSE_3
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
PULSE_4
252
6-3Communication Function
XC5-PLC main units can fulfill your requirement of communication and network. They not only support simple network (Modbus protocolfree communication protocol), but also support those complicate network. XC3-PLCXC5-PLC offer communication access, with which
XC3-PLC you can communicate with the devices (such as printer, instruments etc.) that have their own communication protocol.
COM Port
There are 2 COM ports (Port1 Port2) on XC3 series PLC main units, while there are 3 COM ports on XC5 series PLC main units. Besides the same COM ports (Port1 Port2), they have also CAN COM port. COM 1 (Port1) is the program port, it can be used to download the program and connect with the other devices. The parameters (baud rate, data bit etc.) of this COM port are fixed, cant be re-set. COM 2 (Port2) is communication port, it can be used to download program and connect with the other devices. The parameters (baud rate, data bit etc.) of this COM port can be re-set via software. Via BD board, XC series PLC can expend another COM port. This COM port
CO M X1 X3 X5 X7 X11 X13 X15 X17 X21 X23 X25 X27 X31 X33 X35 X37 X41 X43 CO M X0 X2 X4 X6 X10 X12 X14 X16 X20 X22 X24 X26 X30 X32 X34 X36 X40 X42
0 1 2 3 4 5 6 7
PO RT1
PO RT2
XC5- 60R- E
PW R RUN ERR Y 0 1 2 3 4 5 6 7
X
0V
24V
CAN+ CAN -
CO M 0
Y0
CO M 1
Y1
CO M 2
Y2
CO M 3
Y3
Y4
Y5
Y6
CO M 4
Y7
Y10
Y11
Y12
Y13 Y23 Y25 Y27 Y15 CO M 6 Y20 Y22 CO M 5 Y14 Y16 Y17 Y21 CO M 7 Y24 Y26
253
1 3 4 6 7
2 5 8
About RS485 COM port, A is + signal B is - signal. On XC series PLC, COM2 (Port2) can be both RS485 and RS232, so, you cant only use two at the The pin graph of COM 1 Port1 same time.
4RxD 3CAN Port 2 1 3 4 5 5TxD CAN6 port can be 8 used to realize CANbus communication.
7
Communication Parameter Station Baud Rate Data Bit Stop Bit Check
Modbus Station number: 1~254 255 (FF) is free format communication 300bps~115.2Kbps 8 bits data bit 7 bits data bit
EvenOddNo check
2 stop bits 1 stop bit
254
Parameter Setting
XC series PLC can set the communication parameters with the COM port
1~254 bit is modbus station number Baud rate, data bit, stop bit, check Unit: ms
timeout waiting Reply timeout judgment time Start symbol End symbol Free format setting Unit: ms
timeout waiting High 8 bits invalid High 8 bits invalid 8/16 bits cushion, with/without start bit, with/without stop bit 255 is free format
1~254 bit is modbus station number Baud rate, data bit, stop bit, check Unit: ms
if set to be 0, it means no
timeout waiting
3
FD8223 FD8224 FD8225 FD8226 Reply timeout judgment time Start symbol End symbol Free format setting Unit: ms
if set to be 0, it means no
timeout waiting High 8 bits invalid High 8 bits invalid 8/16 bits cushion, with/without start bit, with/without stop bit
4 3 2 1 0
1Odd check
0 No check 0
FD8216 COM1 /FD8226 COM2 15 14 13 12 11 10 9 8 7 6 5
4 3 2 1 0
Reserve
6-3-1
Communication Function XC series PLC support both Modbus master and Modbus slave Master format: When PLC is set to be master, PLC sends request to other slave devices via Modbus instructions, other devices response the master. Slave format: when PLC is set to be slave, it can only response with other master devices. The defaulted status of XC-PLC is Modbus slave. For the soft units number in PLC which corresponds with Modbus address number, please see the following table:
Communication ID
Dec.
Corresponded Modbus ID
M0
X0
Y0
S0
M8000
T0
C0
Hex.
4000
4800
5000
6000
6400
6C00
Note: coils Modbus ID=Modbus ID which corresponds with coils start ID +coil number Register space: Registers start ID
Dec.
Corresponded Modbus ID
D0
TD0
CD0
D8000
FD0
FD8000
Hex.
3000
3800
4000
4800
6800
Note: registers Modbus ID=Modbus ID which corresponds with registers start ID + register number
Communication Instructions
X0
COLR
K1
K500
K3
M1
K2
Coil read instruction, Modbus function code is 01H . Function: Read the assigned bureaus assigned coil status to PLCs assigned coil.
S1 S2 S3 D1 D2
Far away coils start number. Operands: KTDCDDFD Coil number. Operands: KTDCDDFD
2
X0
INPR
K1
K500
K3
M1
K2
Read the input coil instruction, Modbus function code is 02H Function: Read the assigned bureaus assigned input coil status to PLCs assigned coil.
S1 S2 S3 D1 D2
Far away coils start number. Operands: KTDCDDFD Coil number. Operands: KTDCDDFD
Instruction description: when X0 is ON, execute COLR or INPR instruction. After finish executing the instruction, set communication finish bit. No operation when X0 is OFF. If communication errors, resend automatically. If reach 10 times, set communication error flag. User can check the relative register to judge the reason.
X0
COLW
K1
K500
M1
K2
Write single coil instruction, Modbus function code is 05H Function: Write the assigned coil status to PLCs assigned bureaus assigned coil.
D1 D2 S1 S2
Far away communication bureau number . Operands: K TD CD D FD Far away communication bureau number .
Operands: KTDCDDFD
X0
MCLW
K1
K500
K3
M1
K2
D1 Function: Write the assigned multi-coil status to PLCs assigned bureaus assigned coil. D2 D3 S1 S2
Far away communication bureau number. Operands: KTDCDDFD Coil number. Operands: KTDCDDFD
Operands: K TD CD D FD
Instruction description: when X0 is ON, execute COLW or MCLW instruction. After finish executing the instruction, set communication finish bit. No operation when X0 is OFF. If communication errors, resend automatically. If reach 10 times, set communication error flag. User can check the relative register to judge the reason.
5 Register Read [REGR]
S1 S2 S3 D1 D2
X0
REGR
K1
K500
K3
D1
K2
Read register instruction, Modbus function code is 03H. Function: Read the assigned bureaus assigned register status to PLCs assigned register.
S1 S2 S3 D1 D2
FD Far away communication bureau number. Operands: KTDCDDFD Register number. Operands: KTDCDDFD
Far away communication bureau number. Operands: K TD CD D 6
X0
INRR
K1
K500
K3
D1
K2
Read the input register instruction, Modbus function code is 04H. Function: Read the assigned bureaus assigned input register status to PLCs assigned register.
S1 S2 S3 D1 D2
FD Far away communication bureau number. Operands: KTDCDDFD Register number. Operands: KTDCDDFD
Far away communication bureau number. Operands: K TD CD D
Instruction description: when X0 is ON, execute REGR or INRR instruction. After finish executing the instruction, set communication finish bit. No operation when X0 is OFF. If communication errors, resend automatically. If reach 10 times, set communication error flag. User can check the relative register to judge the reason.
X0
REGW
K1
K500
D1
K2
Write single register instruction, Modbus function code is 06H Function: write the assigned register status to PLCs assigned bureaus assigned register.
D1 D2 S1 S2
Far away communication bureau number. Operands: K TD CD D Far away communication bureau number.
FD Operands: KTDCDDFD
X0
MRGW
K1
K500
K3
D1
K2
Write multi-register instruction, Modbus function code is 10H Function: write the assigned input register status to PLCs assigned bureaus assigned register.
S1 S2 S3 D1 D2
FD Far away communication bureau number. Operands: KTDCDDFD Register number. Operands: KTDCDDFD
Far away communication bureau number. Operands: K TD CD D
Instruction description: when X0 is ON, execute REGW or MRGW instruction. After finish executing the instruction, set communication finish bit. No operation when X0 is OFF. If communication errors, resend automatically. If reach 10 times, set communication error flag. User can check the relative register to judge the reason.
10
11
6-3-2
Free Communication
Communication Mode: Start Symbol (1 byte) Data Block (max. 128 bytes) End Symbol (1 byte)
Free format communication transfer data in the format of data block, each block can transfer 128 bytes at most. Meanwhile each block can set a start symbol and end symbol, or not set.
12
Instruction Format 1
Send Data
S1 S2
M0
n K1
SEND
D10
D100
n COM port
2 Receive Data
M1
S1 S2
n K1
RCV
D20
D200
FD The received characters number. Operands: KTDCDDFD nCOM port Bound: K1~K2
S1 S2
13
14
6-4PWM Pulse Width Modulation
16 bits instruction PWM
S1 S2
Suitable Model
32 bits instruction
S1
S2
XC3 XC5
Suitable device
15
K/H
DX
DY
DM
DS
TD
CD
FD
Dn.m
S1
S2
X0
PWM
K100
D10
Y0
S1 S2
D
Assign occupy/empty ratio value n. The bound is 1~255 Assign output frequency f. The bound is 0~72KHz Assign Y number of output pulse Can only output at Y000 or Y001 (please treat as transistor output type).
times of the actual frequency (i.e. 10f). E.g. to set the frequency as 72KHz, then set value in (S1) as 720000. When X000 is ON, output PWM wave when X000 is OFF, stop outputting. PMW
t
T0
6-5Frequency Testing
16 bits instruction Suitable Model 32 bits instruction XC3 XC5
FRQM
S1 S2
S1
Suitable device
K/H
DX
DY
DM
DS
TD
CD
D
FD
S3
Dn.m
X000
FRQM
K20
D100
K1
X003
S1: Pulse cycle number (The sampled pulse cycle number in one scan cycle.) Operands: D CD TD D: Testing result. Operands: D CD TD S2: Frequency division choice. Bound: K1 or K2
When the frequency division is K1, the bound is: no less than 9Hz, precision bound: 9~18KHz. When the frequency division is K2 S3: pulse input X number In frequency testing, if choose frequency division as K2, the frequency testing precision is higher than frequency division K1. When X000 is ON, FRQM will test 20 pulse cycles from X003 every scan cycle. Calculate the frequencys value and save into D100. Test repeatedly. If the tested frequencys value is smaller than the test bound, then return the test value as 0.
The correspond X number with the pulse output of frequency testing: Model 14 points 24/32 points 48/60 points X
XC3 series
X1X11X12 X4X5
X2 X3
16
6-6Precise Time
16 bits instruction
STR
D2
D2
XC3 XC5
Suitable device
D2
K/H
DX
DY
DM
DS
TD
CD
FD
D1
Dn.m
D1
D2
X0
STR
T600
K100
T600
Y0
M0
RST
T600
D 1
This instruction is the precise time instruction with the cycle of 1ms. Precise timer is 32 bits, the count values bound is 0~+2,147,483,647. When X000 turns from OFF to ON, timer T600 starts to time, when time accumulation reaches 100ms, T600 set if X000 again turns from OFF to ON, timer T600 turns from ON to OFF restart to time, when time accumulation reaches 100ms, T600 again reset. See the following chart. SFC graph of the preceding program is:
17
X0
M0
When precise time reaches the count value, a correspond interrupt tag will be generated, some interrupt subroutines can be executed. Each precise timer has its correspond interrupt tag. See the following graph:
X0
STR
T600
K100
M0
RST
T600
FEND
When X000 turns from OFF to ON, timer T600 starts to time, when time reaches 100ms, T600 set; at the same time an interruption occurs, the program jump to interrupt tag I3001 and execute an interruption subroutine.
I3001
SRET
Interrupt tag I3001 I3002 I3003 I3004 I3005 I3006 I3007 I3008 I3004 I3010
18
Timers number T600 T602 T604 T606 T608 T610 T612 T614 T616 T618
19
6-7Interruption Function
XC series PLC all have interrupt function. There are two kinds of interrupt function: external interrupt and time interrupt. Via interrupt function, some special program can be disposed, not affected by PLCs scan cycle.
6-7-1.External Interrupt Input terminal X can be used as external interrupts input, each input terminal corresponds with an eternal interrupt, the rising edge or falling edge of each input can both active the interrupt. The interrupt subroutine is written behind the main program (Behind FEND command). When interrupt activates, the main program will immediately stop executing, turn to execute the correspond interrupt subroutine. After finish executing the interrupt subroutine, go on execute the main program.
Main program
XC3-24/32 models Input terminal X2 X5 X10 XC3-48/60 models Input terminal X11 X10
Rising interrupt
Pointers tag Rising interrupt I0000 I0100 Falling interrupt I0001 I0101
20
X7 Interrupt Instruction I0200 I0201 M8052
Enable Interruption [EI] Disable Interruption [DI] and Interrupt Return [IRET]
EI
Normally PLC is in the status of disable interruption, if use EI instruction of allow interruption, then in the process of scan the program, if interrupt input changes from OFF to ON, then execute interrupt subroutine
I0000
, return to the
used as
The
pointer
(I****)
IRET
END
DI
Via DI instruction, you could set interruption disabled area. In EI~DI area, interrupt input is allowed. When dont need interrupt disabled, please program only with EI instruction, neednt program with DI instruction.
Disable interruption
FEND
21
Disable Interruption
To each input interruption, special relay of disable interruption is given. (M8050~M8052) In the left program, if use M0 to make M8050 ON, then disable the interrupt input of route 0 Enable interruption
EI M0 M8050
FEND I0000
Interrupt Subroutine
IRET END
22
6-7-2.Time Interrupt
In the condition of the main programs executing cycle too long, if certain special program should be executed; or in sequential control scan, a special program should be executed every certain time, time interruption function is suitable. It could be not affected by PLCs scan cycle, execute the time interrupt program every Nms.
X0 Y0
INC
D0
IRET
The defaulted time interruption status is open. Time interrupt subroutine is similar with other interrupt subroutines. It must be written behind the main program, start with I40xx instruction, end with IRET. There are 10 routes time interruption, the denote method is: I40**~I49**. (** means time interrupts time, the unit is ms.)E.g. I4010 means execute the first routes interruption every 10ms. Table of interruption tag Interruption tag I40** I41** I42** I43** I44** I45** I46** I47**
Description
** denotes the time of time interrupt. The bound is 1~99 unit is ms.
23
I48** I49** -
Disable interruption
EI
Enable interruption
FEND
I4010
Interrupt subroutine
IRET
Disable Interruption
24
Enable interruption For the first 3 routes time interruption, special relay of disable interruption is given. (M8056~M8059) In the left example program, if use M0 to make M8056 ON, then disable the time interruption of route 0.
EI M0 M8056
FEND
Interrupt Subroutine
I4020
IRET END
25
26
6-8CAN-Bus FunctionXC5 Series
CAN-Bus Brief Introduction
CAN: Controller Area Network, included in industrial area bus category. Compared with common communication bus, CAN bus data communication has performance of outstanding dependability real time ability and flexibility. CAN controller works under multi-master format. In the network, each node can send data to bus according to the bus visit priority. These characters make each node in CAN bus network has stronger data communication real time performance, and easy to construct redundant structure, improve the systems dependability and flexibility. In CANBUS network, any node can initiatively send message at any time to any other node, no master and no slave. Flexibility communication, its easy to compose multi-device backup system, distributing format monitor, control system. To fulfill different real time requirement, the nodes can be divided to be different priority level. With non-destroy bus arbitrament technology, when two nodes send message to the network at the same time, the low level priority node initiatively stop data sending, while high level priority node can continue transferring data without any influence. So there is function of node to node, node to multi-node, bureau broadcasting sending/receiving data. Each frames valid byte number is 8, so the transfer time is short, the probability ratio is low. External Connection CAN-Bus Communication Port: CAN
CAN
The connection among each node of CAN bus is shown in the following, at the two ends, add 120 ohm middle-terminal resistors.
27
120R 120R
00
01
02
Network Format of CAN Bus There are two forms of CAN bus network: one is statements communication format; the other is interior protocol communication format. These two forms can carry on at the same time. Statements communication format This format means, in the local PLC program, via CAN-bus instructions, carry on bit or word reading/writing with the assigned far away PLC. Interior protocol communication format This format means, via setting of special register, with collocate table format, realize allude with each other among PLCs certain devices space. In this way, realize PLC source sharing in CAN-bus network.
CAN-bus Statements
Coil read statement Function
S1 S2 S3 D
Read the assigned bureaus assigned coil status into the local assigned coil.
Far away communication bureau ID Far away coils start number. Operands K M Coils number
X0
CCOLW
K2
K20
K4
M20
Write the local assigned multi-coils status into the assigned bureaus assigned coil
Far away communication bureau ID Far away coils start number. Coils number The masters sending coils start ID. Operand M
28
X0
CREGR
K2
K20
K4
D20
Read the assigned bureaus assigned register to the local assigned register.
Far away communication bureau ID. Far away registers start number. Operands K D
X0
CREGW
K2
K20
K4
D20
Write the local assigned input register into the assigned bureaus assigned register.
Far away communication bureau ID. Far away registers start number. Register number.
29
Open and close of interior protocol communication function Using via setting the data of register FD8350
communication CAN interior protocol communication function is defaulted closed. Communication parameters setting Setting of baud rate bureau ID
Definition of configure items Interior protocol communicates via setting configure items. There are four configure items read bits item, read words item, write bits item, write words item. Configure format
Step 1 Add separately four configure items number FD8360read bits item FD8361read words item FD8362write bits item FD8363write words item. Step 2 configure each items communication object, each item needs to set four parameters: according to the order far away nodes bureau ID far away nodes object ID local
FD8374~FD8377 means item 2 configure items can be set.
CAN Communication Setting ID FD8350 FD8351 FD8352 Function CAN communication mode CAN baud rate Selfs CAN bureau ID Configured sending frequency Read bits item Read words item Write bits item Write words item Far away node ID Far away nodes object ID The local objects ID number Item 1 configure Description 0 means not use 1 means interior protocol Refer to CAN baud rate setting table CAN protocol using (the defaulted value is 1) The set values unit is ms (sending one time every several ms) Set to be 0 means sending every cycle, the defaulted value is 5ms
FD8354
FD9390 FD9391
31
FD9392 FD9393 Local objects ID Number
Baud rate BPS 1K 2K 5K 10K 20K 40K 50K 80K 100K 150K 200K 250K 300K 400K 500K 600K 800K
32
17 1000K
CAN node status M8350 M8351 M8352 M8353 M8354 M8355 M8356 M8357 M8358
Configure item 1 Configure item 2 Configure item 3 Configure item 4 Configure item 5 Configure item 6 Configure item 7 Configure item 8 Configure item 9 Reset after receiving confirmation
M8240
M8241
M8242
If set to be 1, then automatic self recover after error generate If set to be 0, then after error generate, CAN stop working The defaulted value is 1, not retentive after power cut
33
0 No error
D8240
Generate errors configure item number The sending data package number each second The receiving data package number each second CAN communication error number
high speedgood performance PLC. Besides the independent using of I/O points,
pulse output and other functions could be used. So XC series PLC could satisfy diverse control.
34
7-1
7-2
7-3
35
E.g The following is the program which realize continuous sending high-low pulse The parameters
Parameters of step motor step square angle =1.8 degree/step, fractionlet =40 round is 8000
High frequency pulse max frequency is 100KHz the total pulse number is 24000 3 rounds
Statement Program: LD M8002 SET M0 LDF M10 DMOV K100000 DMOV K24000 MOV K100 LDP M10 DMOV K10000 DMOV K8000 LD M1
//Initially forth pulse coil //Set M0 ON //M10 falling edge trigger condition //Transfer decimal data 100000 into double-word register D200 // Transfer decimal data 24000 into double-word register D210 // Transfer decimal data 100 into word register D220 //M10 rising edge trigger condition // Transfer decimal data 10000 into double-word register D200 // Transfer decimal data 8000 into double-word register D210 //M1 status trigger condition
37
OUT LD SET SET LDF RST RST ALT LD T0 K20 T0 M1 M0 M8170 M0 M1 M10 M0 //100ms counter T0, time 2 seconds //T0 status trigger condition //set M1 // set M1 //M8170 falling edge trigger condition //reset M0 // reset M1 //M10 status reverse //M0 status trigger condition //Take value is D200 as frequency value in D210 as pulse number value in D220 as speedup/speed-down time, send pulse via Y0
Program description
When PLC changes from STOP to RUN, M8002 coil gets through a scan cycle, set high frequency pulse parameters into D200 D210, set speedup/speed-down time into D220, set M0, the motor start to speedup with high frequency and work 3 rounds, set coil M8170 at the same time; the motor runs 3 rounds, the speed-down till stop, coil M8170 reset. Here reset M0, set M1, reverse M10 status, set low frequency parameters into D200 D210. the counter starts to delay with 2 seconds, when reach this 2 seconds, M1 is reset, M0 is set again, the motor starts to run 1 round with low frequency. After finish this 1 round, the motor starts to run with high
38
7-2Example of MODBUS Instructions
E.g. The following is the communication program of one master station and 4 slave stations Each parameters
Ladder program
Program description
When PLC changes from STOP to RUN, M8002 coil gets through a scan cycle. S0 flow
39
D14 into No.2 slave machines D10D14. after finish communication, set M8138, at the same time write slave machines D15D19 into master machines D15D19set communication finish flag. Realize write and read to a
open, write master machines D10
7-3Example of free format communication This example is the free format program with DH107/DH108 series instruments:
I
Interface specification
DH107/DH108 series instruments use asynchronism serial communication ports, the interface level fits the standard of RS232C or RS485. the data format is 1 start bit, 8 bits data, no check bit, one or two stop bits. Baud rate of communication transfer data could modified to be 1200~19200bit/s
II Format of communication instructions DH107/108 instruments use Hex. data format to indicate each instruction code and data. Read/write instruction: Read The address code +52H 82 +parameters (to read) code+0+0+CRC check code
Write The address code +43H 67+ parameters (to write) code +the write datas low byte +the
write datas high byte +CRC check code Read instructions CRC check code is parameters (To read) code *256+82+ADDR ADDR is instruments ID value, the bound is 0~100 (please do not add 80H). CRC is the redundant caused by the following operation: the preceding data operate with binary 16 bits integer plus. The redundant is 2 bytes, the low byte is ahead, the high byte is behind Write instructions CRC check code is parameters (to write) code *256+67+parameters (to write) value +ADDR The parameters (to write) value is indicated by Hex. binary integer No matter write or read, the instruments will return the following data The test value PV+ the given value SV+ the output value MV and alarm status + read/written parameters value +CRC check code PV
SV and the read parameters value should be integer format, each engrosses 2 bytes, MV
engrosses one byte, the data bound is 0~220, the alarm status engrosses one byte, CRC check code engross 2 bytes, the total is 10 bytes. CRC check code is PV+SV+ alarm status *256+MV +parameters value +ADDR the redundant caused by the integer plus (the detailed format, please refer to AIBUS communication protocol description) .
40
III Compile communication program After power on, the program read the current temperature value every 40ms. In this period the user could also write the set temperature value. Data area definition
Accept data buffer area: D20~D29 Instruments station ID: D30 Read commands value: D31=52 H Write commands value: D32=43 H Parameters code: D33 Temperature setting: D34 CRC check code: D36 Temperature display: D200,D201 Format of sending data: 81H 81H 43H 00H c8H 00H 0cH 01H (display of the current temperature) Setting of communication parameters: baud rate: 9600 8 bits data bit, 2 bits stop bit, no check. Set FD8220=255
FD8221=5
Note ( both the host machine and the slave machine should use the version higher than V2.4)
41
Program
42
43
44
45
Memo
46
8Appendix
This chapter gives some auxiliary information of XC series PLC.
8-1
8-2
8-3
Brief Introduction of XC1 series PLC Brief Introduction of XC5 series PLC
8-4
47
48
8-1List of special auxiliary relayspecial data register
PC status M
Description PLC be ON when running PLC be OFF when running The first scan cycle is ON when PLC starts running The first scan cycle is OFF when PLC starts running
ID M8000
Function Working normally ON coil Working normally OFF coil Initial positive pulse coil
M8001
M8002
M8003
M8005
PC status D
Description
ID D8002 D8005
0.1V unit
49
Clock M
Description
ID M8010
Function
5ms
M8011
M8012
M8013
M8014
M8018
Bits of year
ON4
Flag ID M8020 M8021 M8022 M8023 M8026 M8029 RAMP mode Zero Borrow Carry Function
M
Description
When plus/minus operation result is 0 When borrow occurs in minus operation When carry occurs in plus operation or overflow occurs in bit shift operation
50
Clock
D
Description
ID D8010 D8011 D8012 D8013 D8014 D8015 D8016 D8017 D8018 D8019
Function The current scan cycle Mini value of scan time Max vale of scan time Unit: 0.1ms Unit: 0.1ms Unit: 0.1ms
0~59BCD code format 0~23BCD code format 0~31BCD code format 0~12BCD code format 2000~2099BCD code format
0~59 BCD code format 0
Flag D
51
ID D8021 D8022 D8023 D8024 D8025 D8026 D8027 D8028 D8029 Suitable host machine version Models information Max 5 ASC and a \0 Model Serial number Compatible systems version number Systems version number Compatible models version number Models version number Function Low byte High byte Low byte High byte Low byte High byte Description
PC mode M ID M8030 M8031 M8032 M8033 M8034 M8038 Function PLC initializing Non-retentive register clear Retentive register clear Register retentive stop All output forbidden Parameter setting
Description
When driving this M, ON/OFF image memory of Y, M, S, TC and the current value of T, C, D are all cleared When PLC changes from RUN to STOP, leave all content in image register and data register Set PCs all external contacts to be OFF status Communication parameters set flag
PC mode D
52
ID
D8030
Function
Description
Step ladder M
Description
Function
When mode shifting, all output reset are forbidden When M8047 acts, act when any unit of S0~S999 turns to be ON
Interrupt M
53
ID M8050 Function Forbid input interruption 0 Forbid input interruption 1 Forbid input interruption 2 Forbid input interruption 3 Forbid input interruption 4 Forbid input interruption 5 Forbid time interruption 0 Forbid time interruption 1 Forbid time interruption 2 Interrupt forbidden Forbid all interruption After executing EI, even interruption allowed, but when M acts at this time, the correspond input interruption couldnt act separately After executing EI, even interruption allowed, but when M acts at this time, the correspond input interruption couldnt act separately E.g. Description
M8051 I010 M8052 I020 M8053 I030 M8054 I040 M8055 I050 M8056 I40 M8057 I41 M8058 I42
I000
when
is
forbidden
M8059
Error check M
Description
Function Operation error Scan overtime No user program User program error
Interior codes checking error Execute code or collocate table check error
Error check D
54
Unit: 1ms
Communication
55
ID M8120 M8122 M8124 COM1 M8125 M8127 M8128 M8129 M8130 M8132 M8134 M8135 COM2 M8137 M8138 M8139 Receive error flag Receive correct flag Timeout judgment flag RS232 is sending flag RS232 is receiving flag Receive imperfect flag Receiving finished normally, but the received data is less than the required RS232 is sending flag RS232 is receiving flag Receive imperfect flag Receive error flag Receive correct flag Timeout judgment flag Receiving finished normally, but the received data is less than the required Function Description
M8140 M8142 M8144 M8145 COM3 M8147 M8148 M8149 Receive error flag Receive correct flag Timeout judgment flag RS232 is sending flag RS232 is receiving flag Receive imperfect flag Receiving finished normally, but the received data is less than the required
Communication
D
56
ID D8120 D8121 D8123 COM1 D8126 7: hardware error 10: no start sign 8: CRC check error 11: no end sign 9: bureau ID error 12: communication time out Data number received by RS232 Function Description
D8127
D8128 D8129 D8130 D8131 D8133 D8136 COM2 D8137 Communication error code 7: hardware error 10: no start sign 8: CRC check error 11: no end sign 9: bureau ID error 12: communication time out Data number received by RS232
D8138 D8139 D8140 D8141 D8143 D8146 COM3 D8147 Communication error code 7: hardware error 10: no start sign 8: CRC check error 11: no end sign 9: bureau ID error 12: communication time out Data number received by RS232
D8148 D8149
ID M8150 M8151 M8152 M8153 M8154 M8155 M8156 M8157 M8158 M8159 M8160 M8161 M8162 M8163 M8164 M8165 M8166 M8167 M8168 M8169
Counter ID
Function Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign Count finished sign
Description 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1 24 segments count finished, flag is 1
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 C636 C638
Pulse output M
58
High
ID M8170 M8171 M8172 M8173 M8174 M8175 M8176 M8177 M8178 M8179 M8180 M8181
frequency pulse ID
Function Sending pulse flag 32 bits pulse overflow flag Direction flag sending
Description Be 1 at pulse sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON Be 1 at pulse sending sending Be 1 when overflow 1 is positive direction, the correspond direction port is ON
PULSE_1
PULSE_2
PULSE_3
PULSE_4
Positive/negative count
ID M8238
Counters ID
C300~C498
ID D8150 D8151 D8152 D8153 D8154 D8155 D8156 D8157 D8158 D8159 D8160 D8161 D8162 D8163 D8164 D8165 D8166 D8167 D8168 D8169
Counters ID
Function The current segment (means No.n segment) The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment The current segment
Description
C600 C602 C604 C606 C608 C610 C612 C614 C616 C618 C620 C622 C624 C626 C628 C630 C632 C634 C636 C638
Pulse output D
60
High
ID D8170 D8171 D8172 D8173 D8174 D8175 D8176 D8177 D8178 D8179 D8180 D8181 D8190 D8191 D8192 D8193 D8194 D8195 D8196 D8197
frequency pulse ID
Function The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
Description
PULSE_1
PULSE_2
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
PULSE_3
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment) Only XC5-32RT-E (4 pulse) have
PULSE_4
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number The current segment (means No.n segment)
PULSE_1
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
PULSE_2
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
PULSE_3
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number Only XC5-32RT-E (4 pulse) have
PULSE_4
The low 16 bits of accumulated pulse number The high 16 bits of accumulated pulse number
Expansions information D
61
Unit Type Input switch quantity X Expansion 1# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 2# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 3# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 4# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 5# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 6# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X Expansion 7# Output switch quantity Y Input analog ID Output analog QD Modules set value D Input switch quantity X BD Expansion Output switch quantity Y Input analog ID Output analog QD Modules set value D ID
as register
X100~X137 Y100~Y137
Max I/O//channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels 32 points 32 points 16 channels 16 channels -
ID100~ID131 QD100~QD131 D8250~D8259 X200~X237 Y200~Y237 ID200~ID231 QD200~QD231 D8260~D8269 X300~X337 Y300~Y337 ID300~ID331 QD300~QD331 D8270~D8279 X400~X437 Y400~Y437 ID400~ID431 QD400~QD431 D8280~D8289 X500~X537 Y500~Y537 ID500~ID531 QD500~QD531 D8290~D8299 X600~X637 Y600~Y637 ID600~ID631 QD600~QD631 D8300~D8309 X700~X737 Y700~Y737 ID700~ID731 QD700~QD731 D8310~D8319 X1000~X1037 Y1000~Y1037 ID1000~ID1031 QD1000~QD1031 D8320~D8329
62
8-2List of special FLASH data register SFD
I filter
Number FD8000 FD8002 FD8003 FD8004 FD8005 FD8006 FD8007 FD8008 FD8009 Function X port, input filter time value Description Unit: ms
I mapping
Number FD8010 FD8011 FD8012 Function X00 corresponds with I** X01 corresponds with I** X02 corresponds with I** Description X0 corresponds with the number of input image I**
FD8073 3
O mapped
Number FD8074 FD8075 FD8076 Function Y00 corresponds with I** Y01 corresponds with I** Y02 corresponds with I** Description Y0 corresponds with the number of input image O**
FD8137 4
I property
Number FD8138 FD8139 FD8140 X01 property X02 property Function X00 property Description 0: positive logic others: negative logic
FD8201
63
X77 property
Communication
Number FD8210 Function Communicate mode Description 255 is free format
1~254 bits modbus station ID FD8211 FD8212 COM1 FD8213 FD8214 FD8215 FD8216 Communicate format Judgment time of ASC timeout Judgment time of reply timeout Start ASC End ASC Free format setting Baud rate data bit stop bit checkout Unit: ms Unit: ms if set to be 0, it means no timeout waiting High 8 bits be of no effect Low 8 bits be of no effect 8/16 bits cushion, with/without start bit, with/without end bit, 255 is free format
FD8220
Communicate mode
1~254 bits modbus station ID FD8221 FD8222 COM2 FD8223 FD8224 FD8225 Communicate format Judgment time of ASC timeout Judgment time of reply timeout Start ASC End ASC Baud rate data bit stop bit checkout High 8 bits be of no effect Low 8 bits be of no effect Unit: ms Unit: ms if set to be 0, it means no timeout waiting FD8226 Free format setting 8/16 bits cushion, with/without start bit, with/without end bit
64
FD8230 Communicate mode 255 is free format
1~254 bits modbus station ID FD8231 FD8232 COM3 FD8233 FD8234 FD8235 Communicate format Judgment time of ASC timeout Judgment time of reply timeout Start ASC End ASC Baud rate data bit stop bit checkout High 8 bits be of no effect Low 8 bits be of no effect Unit: ms Unit: ms if set to be 0, it means no timeout waiting FD8236 Free format setting 8/16 bits cushion, with/without start bit, with/without end bit
8-3-1
Performance
Performance Index
Item Specification 16 points 24 points 32 points
65
Program format Dispose speed Power cut retentive User programs capacity I/O points Interior coils points (M) Points Timer 8I/8O Both statement and ladder 0.5us Use FlashROM 2000 steps 12/12 556 points 80 points 16/16
T
Spec.
10mS timerSet time 0.01~327.67 seconds 1mS timerSet time 0.001~32.767 seconds
48 points 16 bits counter set value K0~32767
Points Counter
Spec.
406 words
FlashROM Register FD
510 words No 0~99mS 6 bits ASCII Power on self-diagnose Monitor timer grammar check
High speed dispose function Setting of time scan space Password protection Self diagnose function
8-3-2
Statements
XC1 series PLC includes all SFC statements of XC3 series PLC, part of applied statements, no special function statements. XC1 series PLC has the following applied instructions: Sort Mnemonic CJ CALL SRET Program Flow STL STLE SET Function Condition jump Call subroutine Subroutine return Flow start Flow end Open the assigned flow, close the current flow
66
ST FOR NEXT FEND MOV BMOV FMOV Data Move FWRT MSET ZRST SWAP XCH ADD SUB MUL DIV INC Data Operation DEC MEAN WAND WOR WXOR CML NEG Open the assigned flow, not close the current flow Start of a FOR-NEXT loop End of a FOR-NEXT loop First end Move Block move Fill move FlashROM written Zone set Zone reset The high and low byte of the destinated devices are exchanged Exchange Addition Subtraction Multiplication Division Increment Decrement Mean Word And Word OR Word exclusive OR Compliment Negative
8-3-3
Mnemonic X Y M S
67
M0~M319 M8000~M8370 for special using S0~S31 T0~T23 100ms not accumulation T100~T115 100ms accumulation
8-4-1
Performance
68
Performance Index
Item Specification 32 points 48 points 60 points
Program executing format Program format Dispose speed Power cut retentive User programs capacity I/O points Interior coils points (M) Points Timer
Loop scan format time scan format Both statement and ladder 0.5us Use FlashROM and Li battery 2500 steps 18 I / 14 O 28/20 8512 points 620 points 10000 steps 36/24
T
Spec.
10mS timerSet time 0.01~327.67 seconds 1mS timerSet time 0.001~32.767 seconds
635 points 16 bits counter set value K0~32767
Points Counter
Spec.
8512 words
FlashROM Register FD
2048 words High speed counter, pulse output, external interrupt 0~99mS 6 bits ASCII Power on self-diagnose Monitor timer grammar check
High speed dispose function Setting of time scan space Password protection Self diagnose function
69
8-4-2
Mnemonic X Y
Bound 32 points X000~X021 Y000~Y015 M0~M2999 48\60 points X000~X033 X000~X047 Y000~Y023 Y000~Y027 32 points 18 points 14 points
Points 48\60 points 28\36 points 20\24 points 8000 512 1024
Interior relay
M3000~M7999 S512~S1023
Timer
T300~T39910ms accumulation T400~T4991ms not accumulation T500~T5991ms accumulation T600~T6181ms with interruption precise
T200~T299 10ms not accumulation time
620
70
Memo
71
72