0% found this document useful (0 votes)
11 views

Serial Communication Protocol [Modbus Version] Operation Manual v2

The ROBO Cylinder Series operation manual outlines procedures for serial communication using the Modbus protocol with RC controllers. It includes specifications for communication modes, wiring, and settings, as well as precautions to prevent malfunctions. The manual details both RTU and ASCII transmission modes, emphasizing the importance of using the same mode across devices in a network.

Uploaded by

luiz.csilva82
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Serial Communication Protocol [Modbus Version] Operation Manual v2

The ROBO Cylinder Series operation manual outlines procedures for serial communication using the Modbus protocol with RC controllers. It includes specifications for communication modes, wiring, and settings, as well as precautions to prevent malfunctions. The manual details both RTU and ASCII transmission modes, emphasizing the importance of using the same mode across devices in a network.

Uploaded by

luiz.csilva82
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 250

ROBO CYLINDER Series

PCON, ACON, SCON, ERC2


Serial Communication
[Modbus Version]

Operation Manual, Second Edition


Introduction
The explanations provided in this manual are limited to procedures of serial communication. Refer to the
operation manual supplied with the ROBO Cylinder Controller (hereinafter referred to as RC controller) for
other specifications, such as control, installation and connection.

Caution
(1) If any address or function not defined in this specification is sent to an RC controller, the
controller may not operate properly or it may implement unintended movements. Do not send
any function or address not specified herein.

(2) RC controllers are designed in such a way that once the controller detects a break (space)
signal of 150 msec or longer via its SIO port, it will automatically switch the baud rate to 9600
bps.
On some PCs, the transmission line remains in the break (space) signal transmission mode
while the communication port is closed. Exercise caution if one of these PCs is used as the
host device, because the baud rate in your RC controller may have been changed to 9600
bps.

(3) Set the communication speed and other parameters using IAI’s teaching tools (teaching
pendant or PC software), and then transfer the specified parameters to the controller.

(4) If the controller is used in a place meeting any of the following conditions, provide sufficient
shielding measures. If sufficient actions are not taken, the controller may malfunction:
[1] Where large current or high magnetic field generates
[2] Where arc discharge occurs due to welding, etc.
[3] Where noise generates due to electrostatic, etc.
[4] Where the controller may be exposed to radiation

(5) When performing wiring tasks and inserting/extracting connectors in/from sockets, make sure
that the power supplies of the host and each RC controller are turned off. Carrying out such
tasks with the power supplies turned on may result in electric shock and/or damage to parts.
(6) In order to prevent malfunctions due to noise, wire the communication cables such that the
communication cables are isolated from power lines and other control wiring.

(7) In order to prevent malfunctions due to noise, make sure to take noise prevention measures
on the electric equipment in the same power supply circuit or within the same device.

The company names and product names referred to in the text are trademarks or
registered trademarks of the respective companies.
Table of Contents

1 Overview.................................................................................................................... 1
2 Specifications ............................................................................................................ 2
2.1 Communication Mode ...................................................................................................... 3
3 Preparation for Communication ................................................................................. 4
3.1 In Case the Host Uses RS232C Interface........................................................................ 4
(1) System configuration ...................................................................................................................... 4
(2) Wiring ................................................................................................................................................ 5
(3) SIO converter (vertical specification: RCB-TU-SIO-A, horizontal specification: RCB-TU-SIO-B) .. 7
3.2 In Case the Host Uses RS485 Interface .......................................................................... 8
(1) System configuration ...................................................................................................................... 8
(2) Wiring ................................................................................................................................................ 9
3.3 Communication Connector Pin Assignment of PLC and PC (Reference)...................... 10
3.4 Various Setting before Starting Communication ............................................................ 11
3.5 Setting Axis Numbers..................................................................................................... 12
3.6 Setting Controller Communication Speed ...................................................................... 13
3.6.1 Setting Wiring and Hardware for Each System ...........................................................................13
3.6.2 Setting Communication Speed ........................................................................................................13
4 Communication........................................................................................................ 15
4.1 Message Transmission Timing....................................................................................... 15
4.2 Timeout and Retry.......................................................................................................... 16
4.3 Internal Addresses and Data Structure of RC Controller ............................................... 17
4.3.1 Structure of Data Registers...............................................................................................................17
4.3.2 Details of Data Registers ...................................................................................................................18
(1) Data of device control register 1 (Address = 0D00H) (DRG1) .............................................. 19
(2) Data of device control register 2 (Address = 0D01H) (DRG2) .............................................. 20
(3) Data of position number specification registers (Address = 0D03H) (POSR).................... 21
(4) Data of device status register 1 (address = 9005H) (DSS1) ................................................. 22
(5) Data of device status register 2 (address = 9006H) (DSS2) ................................................. 23
(6) Data of expansion device status register (address = 9007H) (DSSE).................................. 24
(7) Data of system status registers (9008H) (STAT) ..................................................................... 25
(8) Data of special port monitor registers (9012H) (SIPM)........................................................... 26
(9) Data of zone status register (9013H) (ZONS) .......................................................................... 27
(10) Data of position number status register (9014H) (POSS) ...................................................... 28
4.3.3 Structure of Status Registers............................................................................................................29
4.3.4 Data of Status Registers....................................................................................................................30
5 Modbus RTU ........................................................................................................... 33
5.1 Message Frames (Query and Response) ...................................................................... 34
5.2 List of RTU Mode Queries.............................................................................................. 37
5.3. Data and Status Reading (Queries Using Code 03) ...................................................... 41
5.3.1 Reading Consecutive Multiple Registers.......................................................................................41
5.3.2 Current Position Reading <<PNOW>> (in 0.01 mm units) .......................................................44
5.3.3 Present Alarm Code Reading <<ALMC>> ...................................................................................46
5.3.4 I/O Port Input Signal Status Reading <<DIPM>> ........................................................................48
5.3.5 I/O Port Output Signal Status Reading<<DOPM>> ...................................................................52
5.3.6 Device Status Reading 1 <<DSS1>>.............................................................................................56
5.3.7 Device Status Reading 2 <<DSS2>>.............................................................................................58
5.3.8 Device Status Reading 3 <<DSSE>> ............................................................................................60
5.3.9 Device Status Reading4 <<STAT>> ..............................................................................................62
5.3.10 Current Speed Reading <<VNOW>> ............................................................................................64
5.3.11 Current Ampere Reading <<CNOW>>..........................................................................................66
5.3.12 Deviation Reading <<DEVI>> ..........................................................................................................68
5.3.13 Total Time after Power On Reading <<STIM>>..........................................................................70
5.3.14 Special Input Port Input Signal Status Reading<<SIPM>>.......................................................72
5.3.15 Zone Output Signal Status Reading<<ZONS>> .........................................................................74
5.3.16 Position Complete Number Reading<<POSS>> ......................................................................76
5.4 Operation Commands and Data Rewrite (Query Using Code 05) ................................. 78
5.4.1 Writing to Coil .......................................................................................................................................78
5.4.2 Safety Speed Enable/Disable Switching (SFTY) ........................................................................79
5.4.3 Servo ON/OFF <<SON>>.................................................................................................................81
5.4.4 Alarm Reset <<ALRS>> ....................................................................................................................83
5.4.5 Brake Forced Release <<BKRL>> .................................................................................................85
5.4.6 Pause <<STP>> ..................................................................................................................................87
5.4.7 Home Return <<HOME>> ................................................................................................................89
5.4.8 Positioning Start Command <<CSTR>> .......................................................................................91
5.4.9 Jog/Inch Switching <<JISL>>...........................................................................................................93
5.4.10 Teaching Mode Command <<MOD>> ..........................................................................................95
5.4.11 Position Data Load Command <<TEAC>> ..................................................................................97
5.4.12 Jog+ Command <<JOG+>>.............................................................................................................99
5.4.13 Jog- Command <<JOG->> .............................................................................................................101
5.4.14 Start Positions 0 to 7 <<ST0 to ST7>> Movement Command (Limited to PIO Patterns 4 and 5) ...............103
5.4.15 PIO/Modbus Switching Setting <<PMSL>>................................................................................105
5.4.16 Deceleration Stop <<STOP>> .......................................................................................................107
5.5 Direct Writing of Control Information (Queries Using Code 06) ................................... 109
5.5.1 Writing to Registers...........................................................................................................................109
5.6 Direct Writing of Positioning Data (Queries Using Code 10)........................................ 112
5.6.1 Numerical Value Movement Command ......................................................................................112
5.6.2 Writing Position Table Data ............................................................................................................123
6 Modbus ASCII ......................................................................................................... 130
6.1 Message Frames (Query and Response) .................................................................... 131
6.2 ASCII Code Table ........................................................................................................ 134
6.3 List of ASCII Mode Queries.......................................................................................... 135
6.4. Data and Status Reading (queries Using Code 03) ..................................................... 139
6.4.1 Reading Consecutive Multiple Registers.....................................................................................139
6.4.2 Current Position Reading (in 0.01 mm units) Monitor <<PNOW>> ......................................142
6.4.3 Present Alarm Code Query <<ALMC>>......................................................................................144
6.4.4 I/O Port Input Signal Status Reading <<DIPM>> ......................................................................146
6.4.5 I/O Port Output Signal Status Reading <<DOPM>> ................................................................150
6.4.6 Controller Status Signal Reading <<DSS1>> ............................................................................154
6.4.7 Controller Status Reading 2 <<DSS2>> .....................................................................................156
6.4.8 Controller Status Reading 3 <<DSSE>> .....................................................................................158
6.4.9 Controller Status Reading 4 <<STAT>>......................................................................................160
6.4.10 Current Speed Query <<VNOW>>...............................................................................................162
6.4.11 Current Ampere Reading <<CNOW>>........................................................................................164
6.4.12 Deviation Reading <<DEVI>> ........................................................................................................166
6.4.13 Total Time after Power On Reading <<STIM>>........................................................................168
6.4.14 Special Input Port Input Signal Status Query <<SIPM>>........................................................170
6.4.15 Zone Output Signal Status Reading <<ZONS>> ......................................................................172
6.4.16 Position Complete Number Query <<POSS>> .........................................................................174
6.5 Operation Commands and Data Rewrite (Query Using Code 05) ............................... 176
6.5.1 Writing to Coil .....................................................................................................................................176
6.5.2 Safety Speed Enable/Disable Switching (SFTY) ......................................................................177
6.5.3 Servo ON/OFF <<SON>>...............................................................................................................179
6.5.4 Alarm Reset <<ALRS>> ..................................................................................................................181
6.5.5 Brake Forced Release <<BKRL>> ...............................................................................................183
6.5.6 Pause <<STP>> ................................................................................................................................185
6.5.7 Home return <<HOME>> ................................................................................................................187
6.5.8 Positioning Start Command <<CSTR>> .....................................................................................189
6.5.9 Jog/Inch Switching <<JISL>>.........................................................................................................191
6.5.10 Teaching Mode Command <<MOD>> ........................................................................................193
6.5.11 Position Data Load Command <<TEAC>> ................................................................................195
6.5.12 Jog+ Command <<JOG+>>...........................................................................................................197
6.5.13 Jog- Command <<JOG->> .............................................................................................................199
6.5.14 Start Positions 0 to 7 <<ST0 to ST7>> (Limited to PIO Patterns 4 and 5) ..........................201
6.5.15 PIO/Modbus Switching Setting <<PMSL>>................................................................................203
6.5.16 Deceleration Stop <<STOP>> .......................................................................................................205
6.6 Control Information Direct Writing (Queries Using Code 06) ....................................... 207
6.6.1 Writing to Registers...........................................................................................................................207
6.7 Positioning Data Direct Writing (Queries Using Code 10)............................................ 210
6.7.1 Numerical Value Movement Command ......................................................................................210
6.7.2 Writing Position Table Data ............................................................................................................221
7 Troubleshooting..................................................................................................... 228
7.1 Responses at Errors (Exception Responses) .............................................................. 229
7.2 Notes ............................................................................................................................ 232
7.3 When Communication Fails ......................................................................................... 233
8 Reference Materials............................................................................................... 239
8.1 CRC Check Calculation ............................................................................................... 240
8.2 Configuration of Systems that Use both SIO and PIO ................................................. 242
1 Overview
The ROBO Cylinder Controller (hereinafter referred to as RC controller) is equipped with a serial bus
interface for asynchronous communication conforming to the EIA RS485 standard. This interface allows
the RC controller to communicate with the host (host controller). In this way, it is possible to build an SIO
link system that can connect and control up to 16 axes of slaves (RC controllers) (*1).
In addition to sending commands to each axis individually, it is also possible to broadcast the same
command to all slaves at the same time.
Modbus Protocol is employed as the communication protocol, and it is possible to send commands from a
host as well as read internal information.
Since the specifications of Modbus Protocol are disclosed globally, software development can be carried
out easily.
(*) Note that it is only possible to connect RC series devices on the same network; old RC series (protocol T) or
other devices cannot be connected.

There are 2 types of serial transmission modes: ASCII mode (where 1-byte (8 bits) data is converted to
ASCII code (2 characters) and sent) and RTU mode (where 1-byte (8 bits) data is sent as is). RC
controllers (other than ROBONET controllers) identify the transmission mode on a packet-by-packet basis,
thus making it possible to receive in both modes (*2). Please note that ROBONET controllers can only
receive in the RTU mode and do not support the ASCII mode.
(*2) Make sure to use the same serial transmission mode for all devices on one network: it is not allowed to use both
modes.

œ Controllable controllers
• ERC2
• PCON-C / CG / CF / CY / SE / PL / PO
• ACON-C / CG / CY / SE / PL / PO
• SCON

1
2 Specifications

Item Method/condition
Interface Conforming to EIA RS485
Communication method Half-duplex communication
Maximum total extension distance 100 m
Synchronization method Start-stop synchronization
Connection pattern 1-to-N unbalanced bus connection (1 ≤ N ≤ 16)
Transmission mode RTU/ASCII (auto-detect) *
Baud rate (bps) Selectable from the following speeds via parameter setting:
9600, 14400, 19200, 28800, 38400
57600, 76800, 115200, 230400
Bit length 8 bits
Stop bit 1 bit
Parity None

* ROBONET controllers do not support the ASCII mode.

2
2.1 Communication Mode
In the Modbus protocol, communication takes place in a single-master/multiple-slave configuration. In this
communication, only the master (the PLC host in the example below) issues a query to a specified slave
(the RC controller connected to axis C in the example below). When the specified slave receives this
query, it executes the function specified in the query, and then returns a response message (one
communication cycle is completed with this operation).
The query message format consists of the slave address (or broadcast), function code defining the
content of request, data, and error check.
The response message format consists of the function code confirming the content of request, data, and
error check. Following figure shows the query message format and response message configuration.

Query message Response message


Device address (example: axis C) Device address (example: axis C)
Function code Confirmation function code
Data Data
Error check Error check

Axis A Axis B Axis C Axis D Axis E

Fig. 2.1

3
3 Preparation for Communication
3.1 In Case the Host Uses RS232C Interface
(1) System configuration
PC

The host must be either


a PLC or PC. It is not
allowed to connect both
Master
at the same time.
/host

RS232C cable
(prepared by the customer)
Check the pin assignment of the
interface on the host side and prepare
either straight-through or cross-
connected cables accordingly.
RS232C cross-connected cable
(prepared by the customer)

IAI’s teaching pendant or PC


software can be connected.

(Female) (Female)
Junction
SIO converter
(5-1473574-4 made by AMP)
Vertical specification: Can be connected using
RCB-TU-SIO-A a terminal block, instead.
e-CON connector
Horizontal specification:
(4-1473562-4 made by AMP)
RCB-TU-SIO-B
(RS232C ⇔ RS485)
Terminating resistor R = 220 Ω
Recommended cables When using a commercially
Taiyo Electric Wire & Cable HK-SB/20276xL (m) available RS232C ⇔ RS485
2P x AWG22 converter, adjust the resistance
Prepared by the customer to the converter.

Cable for network connection


Controller link cables CB-ERC2-CTL001
CB-RCB-CTL002
(Comes with one junction,
one e-CON connector and
one terminating resistor with
R = 220 Ω, 1/4 W)

SIO-compatible power supply I/O cable


CB-ERC2-PWBIO***

Make sure to use the common 0 V line


Caution of the 24 V power supply for each
controller (other than SCON).

Fig. 3.1

4
(2) Wiring
RS232C cables (commercially available cables, etc.)
Make sure to check the signal names of the RS232 C
connectors on the host side before connecting (refer to “3.3
Communication Connector Pin Assignment of PLC and SIO converter
PC”)
Host
RS232C connectors

TB1 or
J4/J5
(refer to (3) for
the detailed
explanation)

D-sub connector

If the host side (PLC or PC) is using


flow control, connect RS and CS as well
as DR and ER as shown in the figure to
the left.

Make sure to use the common 0 V line


Caution of the 24 V power supply for each
controller (other than SCON).

e-CON connector

SIO converter 2-pair shielded cables


Recommended cables: 4-directional junction (5-1473574-4 made by AMP)
Taiyo Electric Wire & Cable
Refer to Fig. 3.2 (figure HK-SB/20276xL 2P x AWG22
above).

Host (1) To the next page


RS232C connectors

e-CON connector (3-1473562-4 made by AMP)


Housing color: Green
Controller link cable
CB-RCB-CTL002

PCON/ACON/SCON Yellow
Nth slave Orange
(N = maximum 16 slaves)
Blue
Recommended cables:
Taiyo Electric Wire & Cable HK-SB/20276xL (m) Nth slave (N = maximum 16 slaves)
1P x AWG22 e-CON connector (3-1473562-4 made by AMP)
Housing color: Orange
Fig. 3.2_1/2

5
Make sure to use the common 0 V line
Caution of the 24 V power supply for each
controller (other than SCON).
2-pair shielded cables 4-directional junction
Recommended cables: (5-1473574-4 made by AMP)
Taiyo Electric Wire & Cable Terminating resistor R = 220 Ω
HK-SB/20276xL 2P x AWG22 (comes with controller link cable)
When using a commercially
available RS232C ⇔ RS485
converter, adjust the resistance
(1) From the to the converter.
previous page

e-CON connector (3-1473562-4 made by AMP)


Housing color: Green

Cables for network connection Controller link cable


CB-ERC2-CTL001 CB-RCB-CTL002

Orange Yellow
Orange
Blue Blue Orange
Brown Blue
Green
Green
Nth slave (N = maximum 16 slaves)

e-CON connector (3-1473562-4 made by AMP)


Housing color: Orange

Orange
Blue
Brown
Green

SIO-compatible power supply I/O cable


CB-ERC2-PWBIO***

In case of standard ERC2 products (the wiring processing is different from ERC2-SE)

J.S.T. Mfg V0.5-3 Terminal block e-CON connector

Connected to junction

• PIO-compatible power supply I/O cable


CB-ERC2-PWBIO***
Attached cable ERC2-standard (other than SE)
Orange (red 1) Orange (red 1)

Orange (black 1) Orange (black 1)

Pink (black 1)

Please prepare cables for the parts enclosed with dashed lines
(Connect to the 0 V line and GND.
of the 24 V power (Recommended cables: Taiyo Electric Wire & Cable HK-SB/20276xL (m)
supply of ERC2) 2P x AWG22
Please use AWG22 cable or thicker for the GND cable.)

Fig. 3.2_2/2

6
(3) SIO converter (vertical specification: RCB-TU-SIO-A, horizontal specification: RCB-TU-SIO-B)

A RS232C ⇔ RS485 converter Link connector (J4 and J5)

Link connection terminal block


(TB1) Power supply and
emergency stop terminal block
(TB2)
LED for monitoring
(LED1 and LED2)

PORT switch

D-sub 9-pin connector

Mini DIN8 pin connector


Fig. 3.3

~ Power supply and emergency stop terminal block (TB2)


• EMG1 and EMG2: Discrete outputs of the emergency stop switch of the teaching pendant
EMG1 and EMG2 are connected to the emergency stop switch of the
teaching pendant when the PORT switch is set to ON; EMG1 and EMG2 are
short circuited when the switch is set to OFF.
• 24 V: Supply +24 V power (current consumption 0.1 A or less)
• 0 V: Supply 0 V power (use common 0 V for all 24 V DC-supplied controllers).
• FG: A terminal to which FG is connected
* Compatible wires: Single wire: ∅ 0.8 to 1.2 mm
Twisted wire: AWG18 to 20 (strip length 10 mm, soldering
treatment on tips)

~ Link connection terminal block (TB1)


A connector for link connection with an RC controller
• A: Connect to pin 1 (SGA) of the communication connector of the RC controller
• B: Connect to pin 2 (SGB) of the communication connector of the RC controller

~ D-sub 9 pin connector


A connector for connection with the master (host) side

~ Mini DIN8 pin connector


A connector for connection with teaching pendant or PC software

~ PORT switch
• ON: Use teaching pendant
• OFF: Do not use teaching pendant

~ LED for monitoring (LED1 and LED2)


• LED1: Turns on/flashes when the RC controller is transmitting
• LED2: Turns on/flashes when the master (host) side is transmitting

~ Link connector (J4 and J5)


Connectors for link connection with an RC controller
An optional link cable (CB-RCB-CTL002) can be connected as is.

7
3.2 In Case the Host Uses RS485 Interface
(1) System configuration
PC

The host must be either


a PLC or PC. It is not
allowed to connect both
Master at the same time.
/host

SIO converter
Vertical specification:
RCB-TU-SIO-A
Horizontal specification:
RCB-TU-SIO-B
(RS232C ⇔ RS485)

RS232C cross-connected cable


(prepared by the customer)

Junction Note: The baud rate of an RC controller automatically


(5-1473574-4 made by AMP) Can be switches to 9600 [bps] if it detects a break (space) signal
connected using lasting 150 [msec] or longer from the SIO port.
e-CON connector a terminal block, In some PCs, transmission lines are placed in break condition
(4-1473562-4 made by AMP) instead. when the communication port is not open. Please be aware
that if such PCs are used, the baud rate of the connected RC
controllers may be set to 9600 [bps] unintentionally.

Recommended cables
(Taiyo Electric Wire & Cable HK-SB/20276xL (m) 2P x AWG22)
Prepared by the customer Adjust to the master (host).

Cable for network connection


Controller link cables CB-ERC2-CTL001
CB-RCB-CTL002
(Comes with one junction,
one e-CON connector and
one terminating resistor with
R = 220 Ω, 1/4 W)

SIO-compatible power supply I/O cable


CB-ERC2-PWBIO***

Make sure to use the common 0 V line


Caution of the 24 V power supply for each
controller (other than SCON).

Fig. 3.4

8
(2) Wiring
Make sure to use the common 0 V line
Caution of the 24 V power supply for each
controller (other than SCON).
2-pair shielded cables
Recommended cables: 4-directional junction (5-1473574-4 made by AMP)
Taiyo Electric Wire & Cable
RS485 connectors HK-SB/20276xL 2P x AWG22

Transmission data+
Transmission data-
Reception data+ To (2)
Reception data-

e-CON connector (3-1473562-4 made by AMP)


Housing color: Green

Please note that some PLCs Controller link cable


are configured such that CB-RCB-CTL002 Nth slave (N = maximum 16 slaves)
SDA is the negative terminal
Yellow Yellow
of the transmission data and
SDB is the positive terminal Orange Orange
(in this case, RDA is the
Blue Blue
negative terminal of the
reception data and RDB is
the positive terminal).
Please refer to “3.3 Nth slave (N = maximum 16
Communication Connector slaves)
Pin Assignment of PLC and e-CON connector (3-1473562-4 made by AMP)
PC” for pin assignment on Housing color: Orange
the PLC side.
4-directional junction
2-pair shielded cables
Recommended cables: (5-1473574-4 made by AMP)
Determine the terminating
Taiyo Electric Wire & Cable
HK-SB/20276xL 2P x AWG22 resistance value according
to the specification on the
master (host) side
(PLC, RS232C ⇔ RS485
converter in case of PC).
From (2)

e-CON connector (3-1473562-4 made by AMP)


Housing color: Green
Cables for network connection
CB-ERC2-CTL001 Controller link cable
CB-RCB-CTL002
Orange Orange
Yellow
Blue Blue
Brown Orange
Green
Blue
Green

Nth slave (N = maximum 16 slaves)

e-CON connector (3-1473562-4 made by AMP)


Housing color: Orange
Orange
Blue
Brown
Green
Please refer to “3.1. (2)
Wiring” for ERC2 other
SIO-compatible power supply I/O cable than ERC2-SE.
CB-ERC2-PWBIO***

Fig. 3.5

9
3.3 Communication Connector Pin Assignment of PLC and PC (Reference)
In case of PLC made by Mitsubishi: In case of PLC made by Omron: In case of PLC made by Keyence:
QJ71C24 RS232C CJ1W-SCB or SCU RS232C KV-L20R RS232C
D-sub 9-pin connector (male: cable side) D-sub 9-pin connector (male: cable side) D-sub 9-pin connector (female: cable side)

One end of the One end of the


shielded cable shall shielded cable shall
be connected to a be connected to a
connector housing PC: RS232C
D-sub 9-pin connector (female: cable side) connector housing
or grounded. or grounded.
PC

To use flow control, connect RS


and CS as well as DR and ER.

Connect the shielded cable


to the connector housing

In case of PLC made by Mitsubishi:


In case of PLC made by Omron:
QJ71C24 RS485
CJ1W-SCB or SCU RS485
Terminal block
D-sub 9-pin connector (male: cable side)
Wire cables based on the printed signal
names on the communication unit panel.
Transmission data- (SDA) Transmission data-
Transmission data+ (SDB) Transmission data+ Transmission data+ Transmission data-
Transmission data- Transmission data+

Reception data+
Reception data-
Reception data- (RDA) One end of the
One end of the shielded cable shall
shielded cable shall In case of PLC made by Keyence: be connected to a
Reception data+ (RDB) KV-L20R RS485
be connected to a connector housing
connector housing Terminal block or grounded.
or grounded.
(Set the toggle switch 1: SG
to a two-wire system) Transmission data-
2: Reception data- (RDA)
3: Transmission data- (SDA) Transmission data+

4: Reception data+ (RDB)


5: Transmission data+ (SDB)
(Set the toggle switch on the 485 (2) side) One end of the
shielded cable shall
be connected to a
* Please refer to instruction manual of each manufacturer for detailed explanations. connector housing
or grounded.
Fig. 3.6

10
3.4 Various Setting before Starting Communication

Completion of wiring

If multiple controllers are


connected, set the axis
numbers (refer to section 3.5).

Only necessary to set


once at first launch
Set the communication
speed of each controller
(refer to section 3.6).

Launch the network


(start up the master and
each controller).

Disable PIO startup.


RTU: Refer to section 5.4.15
ASCII: Refer to section 6.5.15

All controllers disabled?

* Not necessary if
communication is only used
Turn on the servo of the axis to monitor each controller
to be activated.
RTU: Refer to section 5.4.3
ASCII: Refer to section 6.5.3

Return the axis to be activated to


home.
RTU: Refer to section 5.4.7
ASCII: Refer to section 6.5.7
* Not necessary in case of absolute
specification
This is the completion of
settings. The main loop setting
Main loop: will be described below.
Normal processing
(position move, etc.)

Fig. 3.7

11
3.5 Setting Axis Numbers
Set an axis number for each RC controller on the SIO link using hexadecimal digits from 0 to FH, which is
the number for the 16th axis.
If the panel surface of an RC controller has an axis number setting switch (ADRS) (PCON-C/CG, ACON-
C/CG and SCON), adjust the arrow to point to the axis number using a flat bladed screwdriver (make sure
that each axis number is unique).

In case of axis 1 In case of axis 2 In case of axis 11


(* set the switch to 0) (* set the switch to 1) (* set the switch to A)

Fig. 3.8

In case an RC controller is not equipped with an axis number setting switch, set the axis number from a
PC or the teaching pendant. The procedure for setting numbers from a PC is explained in the following.
Please refer to the instruction manual of the teaching pendant (CON-T, RCM-E and RCM-T) for how to set
numbers from the teaching pendant.
Connect the PC to the SIO connector of the RC controller for which an axis number is to be set.

PC

Fig. 3.9

Set the numbers using the following procedure.


[1] Start the RC connection software and select the [Setting (S)] menu.
[2] Select the [Controller Setting] menu item.
[3] Select the [Axis Number Assignment (N)] menu item.
[4] Enter an axis number (0 to 15) in the axis number table (*) (make sure to enter a number that does not
coincide with existing axis numbers).

Enter the value obtained


by subtracting 1 from the
axis number to be set.

Fig. 3.10

12
3.6 Setting Controller Communication Speed
In order to perform communication, the communication speed of the PLC and each RC controller must
match.
Set the communication speed according to the procedure explained in sections 3.6.1 and 3.6.2. (Please
refer to the instruction manual for the PLC in question for how to set communication speed of the PLC.)
Please be aware that the wiring is different depending on the system configuration.

3.6.1 Setting Wiring and Hardware for Each System


(1) In case of using a PC as the master (host) controller
It is possible to make settings without changing the current connection. In case of RC controllers
equipped with a mode toggle switch (PCON-C/CG, ACON-C/CG and SCON), set the mode toggle switch
to MANU before making the settings.

(2) In case a PLC is used as the master (host) controller connected via RS232C
Connect a PC as master (host) controller instead of the PLC (refer to Figure 3.1). At this point,
disconnect the PLC from the SIO converter and connect the PC to the teaching port of the SIO converter
(refer to section 3.1 (3)) using the cable supplied with the PC software. In case of RC controllers with a
mode toggle switch (PCON-C/CG, ACON-C/CG and SCON), set the mode toggle switch to MANU.

(3) In case a PLC is used as the master (host) controller connected via RS422
Connect a PC directly to each RC controller in the same way as for setting axis numbers. In case of RC
controllers with a mode toggle switch (PCON-C/CG, ACON-C/CG and SCON), set the mode toggle
switch to MANU.

3.6.2 Setting Communication Speed


Set the communication speed using the following procedure.
(1) Start the RC connection software and select [Edit (E)] from the [Parameters (P)] menu.

Fig. 3.11

13
[2] Select the axis number of the controller to be changed.

Fig. 3.12

[3] Set parameter No. 16, SIO communication speed.

Fig. 3.13

14
4 Communication
4.1 Message Transmission Timing

Query Query
(message frame)
Master (PLC, etc.)

Controller (slave) Response Delay time Delay time Response


Delay time
= “Internal processing (message frame)
time” +Min.
delay for activating
local transmitter”
(parameter No. 17)

Fig. 4.1

The basic transmission control procedure consists of the master sending a query, and the RC controller
that received the query sending a response, which are considered one unit.
The delay time after a query message is received until a response message is sent is calculated as the
total sum of parameter No. 17 “Min. delay for activating local transmitter” effective during operation
(default value 5 ms) and the internal processing time (refer to the table below).
After receiving a query message, the RC controller waits for the “min. delay for activating local
transmitter.” Once this delay time elapses, the controller will activate the transmitter and start sending a
response message. The master must enable the receive function of its own station within the
aforementioned delay time after sending a query message.
After sending a response message, the RC controller immediately prepares to receive the next query.

Internal processing time (the processing time varies depending on the accessed category)
Item Time
Read/write a register other than those in the low-speed memory area 1 msec max.
Position data (1 position) Read 4 msec max.
Position data (1 position) Write 15 msec max.
Position data (1 position) Read/write 18 msec max.
Position data (9 positions) Read 9 msec max.
Position data (9 positions) Write 90 msec max.
Position data (9 positions) Read/write 98 msec max.

15
4.2 Timeout and Retry

After sending a query, the host waits for a response from the controller (except when the query that has
been sent is a broadcast query).
If the elapsed time after sending a command until a response is received exceeds the timeout value
(Tout), the host may send the command again to reestablish communication. If the number of retries
exceeds three times, it means that an irremediable communication error has occurred.
The method for calculating the timeout value (Tout) is explained below.

1. Timeout value (Tout)


Tout = To + α + (10 x Bprt/Kbr) [msec]
To: Internal processing time* x Safety factor (3)
α: Min. delay for activating local transmitter [msec] (default value of parameter No. 17 is 5 ms)
Kbr: Baud rate [kbps]
Bprt Response message bytes + 8

Caution The internal processing time varies depending on the category of the register to be
accessed. The processing time required for each action is listed in the table below.

Item Time
Read/write a register other than those in the low-speed memory area 1 msec max.
Position data (1 position) Read 4 msec max.
Position data (1 position) Write 15 msec max.
Position data (1 position) Read/write 18 msec max.
Position data (9 positions) Read 9 msec max.
Position data (9 positions) Write 90 msec max.
Position data (9 positions) Read/write 98 msec max.

2. Number of Retries
Nrt = 3 (note that setting of the number of retries is mandatory)

16
4.3 Internal Addresses and Data Structure of RC Controller
The registers of an RC controller are composed of data registers and status registers.

4.3.1 Structure of Data Registers


The layout of the data registers is shown below.

(Reserved for system)*

I/O control information registers

(Reserved for system)*

Position table information


(low-speed memory area)

(Reserved for system)*

Controller monitor information registers

(Reserved for system)*

Position command registers


(Reserved for system)*

Numerical command registers

(Reserved for system)*

* Areas reserved for the system cannot be used for communication.

17
4.3.2 Details of Data Registers

Address Area name Description Symbol Reference page


[hex] RTU ASCII
Reserved for
0000 to 0CFF
system
0D00 I/O control Device control register 1 DRG1 109 19 207 19
0D01 information Device control register 2 DRG2 20 20
category
0D03 Position number specification register POSR 21 21
Reserved for
0D04 to 0FFF
system
1000 to 3FFF Position table Offset [hex]
information +0000H Target position PCMD 123 125 221 223
(low-speed
+0002H Positioning band INP
memory area)
+0004H Speed command VCMD
+0006H Individual zone boundary + ZNMP
+0008H Individual zone boundary - ZNLP
* Detailed +000AH Acceleration command ACMD
addresses +000BH Deceleration command DCMD 126 224
can be
calculated
+000CH Push-current limiting value PPOW
using the +000DH Load current threshold LPOW
formula to the +000EH Control flag specification CTLF
right. → * Address = 1000H + (16 x position No.) + offset
Reserved for
4000 to 8FFF
system
9000 Controller Current position monitor PNOW 41 44 139 142
9002 monitor Present alarm code query ALMC 46 144
information
9003 Input port query DIPM 48 146
category
9004 Output port monitor query DOPM 52 150
9005 Device status 1 query DSS1 56 154
9006 Device status 2 query DSS2 58 156
9007 Expansion device status query DSSE 60 158
9008 System status query STAT 62 160
900A Current speed monitor VNOW 64 162
900C Current ampere monitor CNOW 66 164
900E Deviation monitor DEVI 68 166
9010 System timer query STIM 70 168
9012 Special input port query SIPM 72 170
9013 Zone status query ZONS 74 172
9014 Position complete number status query POSS 76 174
Reserved for
9015 to 97FF
system
Position Position movement command register
9800 command POSR
category
Reserved for
9801 to 98FF
system
9900 Numerical Target position coordinate specification register PCMD 112 114 210 212
9902 value Positioning band specification register INP
command
9904 Speed specification register VCMD
category
9906 Acceleration/deceleration speed specification register ACMD 115 213
9907 Push-current limiting value PPOW
9908 Control flag specification register CTLF 116 224
Reserved for
9909 to FFFF
system

18
(1) Data of device control register 1 (Address = 0D00H) (DRG1)

Bit Symbol Name Function


15 EMG EMG operation 0: Emergency stop not actuated
specification 1: Emergency stop actuated
Changing this bit to 1 will switch the controller to the emergency stop mode.
Take note that the drive source will not be cut off.
(The ALM LED on the controller will not illuminate.)
14 SFTY Safety speed command 0: Disable safety speed
1: Enable safety speed
Changing this bit to 1 will limit the speeds of all movement commands to the
speed specified by user parameter No. 35, “Safety speed.”
13 --- Cannot be used
12 SON Servo ON command 0: Servo OFF
1: Servo ON
Changing this bit to 1 will turn the servo ON. However, the following
conditions must be satisfied:
• Device status register 1 (5.3.6 or 6.4.6): The EMG status bit is 0.
• Device status register 1 (5.3.6 or 6.4.6): The major failure status is 0.
• Device status register 2 (5.3.7 or 6.4.7): The enable status bit is 1.
• System status register (5.3.9 or 6.4.9): The auto servo OFF status is 0.
11 to 9 Cannot be used
8 ALRS Alarm reset command 0: Normal
Alarm will reset
Present alarms will be reset upon detection of a rising edge for this bit (this
bit: 0 → 1). Note, however, that if any of the causes for the alarm has not
been removed, the same alarm will be generated again.
If a rising edge is detected for this bit (this bit: 0 → 1) during a pause, the
remaining travel will be canceled.
7 BKRL Brake forced-release 0: Normal
command 1: Forcibly release brake
Changing this bit to 1 will forcefully release the brake even if the brake is
ON.
6 - Cannot be used
5 STP Pause command 0: Normal
1: Pause command
All motor movement is inhibited while this bit is 1. If this bit turns 1 while the
actuator is moving, the actuator will decelerate to a stop. When the bit is set
to 0 again thereafter, the actuator will resume the remaining travel.
If this bit is set during home return, the movement command will be held if
the actuator has not yet reversed after contacting the mechanical end. If the
actuator has already reversed after contacting the mechanical end, home
return will be repeated from the beginning.
4 HOME Home return command 0: Normal
1: Home return command
Home return will start when a rising edge is detected for this bit (this bit: 0 →
1). Once the home return is completed, the HEND bit will become 1. Home
completion can be entered as many times as desired.
3 CSTR Positioning start 0: Normal
command 1: Position start command
When a rising edge is detected for this bit (this bit: 0 → 1), the actuator will
move to the target position of the position number stored in the position
number specification register (POSR). If this bit remains 1, a position
complete will not be output even when the actuator enters the positioning
band (return to the normal status by writing 0 to this bit).
If this command is executed before home return has been performed at
least once after the power was turned on (the HEND bit is 0), the actuator
will perform home return and then start moving to the target position.
* The target position, speed and all other operation parameters must be set
in the position table (nonvolatile memory) of the controller in advance.
2 to 0 --- Cannot be used

19
(2) Data of device control register 2 (Address = 0D01H) (DRG2)

Bit Symbol Name Function


15 --- Cannot be used
14 JISL Jog/inch switching 0: Jog
1: Inch
When this bit is 0, the jog operation is selected. When this bit is 1, the inching
operation is selected.
If this bit switches while the actuator is jogging, the actuator will decelerate to a
stop.
If this bit switches while the actuator is inching, the inching movement will
continue.
Jog/inch switching by this bit is not reflected in the jogging/inching operation
initiated by a tool.
13 --- Cannot be used
12 --- Cannot be used
11 MOD Teaching mode command 0: Normal operation mode
1: Teaching mode
Changing this bit to 1 will switch the controller to the teaching mode.
10 TEAC Position data load 0: Normal
command 1: Position data load command
The current position data will be written to the position number specified by the
position number specification register if 1 is written to this bit while the 11th bit of
the teach mode command is 1 (teaching mode).
If other position data fields are empty, the default parameter values will be written
at the same time in the empty fields other than the target position (positioning
band INP, speed VCMD, acceleration/deceleration speed ACMD, control flag
CTLF).
After writing 1 to this bit, wait for 20 msec or longer before proceeding.
9 JOG+ Jog+ command 0: Normal
1: Jog+ command
• The actuator jogs in the direction opposite home as long as this bit is 1 if the
14th JISL bit is 0. The speed and acceleration/deceleration match the
specifications in user parameter No. 26 “PIO jog speed” and rated
acceleration/deceleration speed.
If this bit is set to 0 or the 8th bit of the jog-command is changed to 1, the
actuator will decelerate to a stop.
• If a positive edge (this bit: 0 → 1) is detected for the jog+ command while the
14th JISL bit is 0, the actuator inches in the direction opposite home.
The speed, travel and acceleration/deceleration speed match the specifications
in user defined parameter No. 26 (PIO jog speed), user parameter No. 48 (PIO
inching distance) and rated jog acceleration/deceleration, respectively.
8 JOG- Jog- command 0: Normal
1: Jog- command
• The actuator jogs in the direction of home as long as this bit is 1 if the 14th
JISL bit is 0. The speed and acceleration/deceleration speed match the
specifications in user parameter No. 26 “PIO jog speed” and rated
acceleration/deceleration speed.
If this bit is set to 0 or the 9th bit of the jog-command is changed to 1, the
actuator will decelerate to a stop.
• If a positive edge (this bit: 0 → 1) is detected for the jog+ command while the
14th JISL bit is 0, the actuator inches in the direction of home.
The speed, travel and acceleration/deceleration speed match the specifications
in user defined parameter No. 26 (PIO jog speed), user parameter No. 48 (PIO
inching distance) and rated jog acceleration/deceleration, respectively.
7 ST7 Start position 7 (If either of these bits is enabled) The actuator moves to the position of the
6 ST6 Start position 6 specified position number.
5 ST5 Start position 5 These bits are only valid when PIO patterns 4 or 5 (solenoid valve mode) is
4 ST4 Start position 4 selected. The move is started if either of the ST0 to ST7 bits is set to 1 (this bit: 0
3 ST3 Start position 3 → 1).
2 ST2 Start position 2 If a position other than the enabled start poison is selected, the alarm “085
1 ST1 Start position 1 Position No. error at moving” is generated.
0 ST0 Start position 0 It is possible to select the level operation or edge operation by user parameter
No. 27 movement command type.
If multiple positions are entered at the same time, the smallest number takes the
priority.

20
(3) Data of position number specification registers (Address = 0D03H) (POSR)

Bit Symbol Name Function


15 --- Cannot be used
14 --- Cannot be used
13 --- Cannot be used
12 --- Cannot be used
11 --- Cannot be used
10 --- Cannot be used
9 --- Cannot be used
8 PC256 Position command bit 256 These bits indicate position numbers to be moved using binary codes.
7 PC128 Position command bit 128 The actuator moves to the target position when CSTR of device control
6 PC64 Position command bit 64 register 1 (5.5.1 or 6.6.1) is set to 1 after specifying a position number.
5 PC32 Position command bit 32 Note that the maximum position number varies depending on the model
4 PC16 Position command bit 16 and PIO pattern.
3 PC8 Position command bit 8
2 PC4 Position command bit 4
1 PC2 Position command bit 2
0 PC1 Position command bit 1

21
(4) Data of device status register 1 (address = 9005H) (DSS1)

Bit Symbol Name Function


15 EMGS EMG status 0: Emergency stop not actuated
1: Emergency stop actuated
This bit indicates whether or not the controller is currently in the emergency stop
mode due to an emergency stop input, cutoff of the drive source, etc.
14 SFTY Safety speed enabled 0: Safety status disabled
status 1: Safety status enabled
This bit indicates whether the safety speed of the controls is enabled or disabled
by the “Safety speed command bit” in device control register 1.
13 PWR Controller ready status 0: Controller busy
1: Controller ready
This bit indicates whether or not the controller can be controlled externally.
Normally this bit does not become 0 (busy).
12 SV Servo ON status 0: Servo OFF
1: Servo ON
This bit indicates the servo ON status. This bit will remain 0 until the servo ON
parameter is invoked after a servo ON command is received. If the servo cannot
be turned ON for some reason even after a servo ON command is received, this
bit will remain 0.
The RC controller does not accept any movement command while this bit is 0.
11 PSFL Missed work in push- 0: Normal
motion operation 1: Missed work in push-motion operation
This bit will turn 1 when the actuator reaches the push-motion band (missed work
in push-motion operation) in accordance with a push-motion operation command.
Operation commands other than push-motion do not change this bit.
10 ALMH Major failure status 0: Normal
1: Major failure alarm present
This bit will turn 1 if any alarm at the cold start level or operation cancellation
level is generated.
Alarms at the operation cancellation level can be reset by using an alarm reset
command, but resetting alarms at the cold start level requires turning the power
supply off and then on again.
9 ALML Minor failure status 0: Normal
1: Minor failure alarm present
This bit will turn 1 when a message level alarm is generated.
8 ABER Absolute error status 0: Normal
1: Absolute error present
This bit will turn 1 if an absolute error occurs in case the absolute specification is set.
7 BKRL Brake forced-release status 0: Brake actuated
1: Brake released
This bit indicates the status of brake operation. Normally the bit remains 1 while
the servo is ON. Even when the servo is OFF, changing the “brake forced-
release command bit” in device control register 1 to 1 will change this bit to 1.
6 --- Cannot be used
5 STP Pause status 0: Normal
1: Pause command active
This bit does not reflect the pause status during movement and will become 1
while the pause command is input.
If the PIO/Modbus Switch Setting (5.4.15 or 6.5.15) is PIO enabled, paused PIO
signals are monitored (set the switch to AUTO in case of RC controllers with a
mode toggle switch). If Modbus is enabled, the Pause Commands (5.4.6 or 6.5.6)
are monitored.
4 HEND Home return completion 0: Home return not yet complete
status 1: Home return complete
This bit will become 1 when home return is completed. In case the absolute
specification is set, the bit is set to 1 from the startup if absolute reset has been
completed.
If an absolute position command is issued while this bit is 0, an alarm will be
generated.
3 PEND Position complete status 0: Positioning not yet complete
1: Position complete
This bit will become 1 when the actuator reaches the target position and enters
the positioning band. When the servo is turned ON, the current position will
become the target position, and therefore this bit will become 1. This bit will also
become 1 during the push-motion operation as well as at the completion.
2 --- Cannot be used
1 --- Cannot be used
0 --- Cannot be used

22
(5) Data of device status register 2 (address = 9006H) (DSS2)

Bit Symbol Name Function


15 --- Cannot be used
14 --- Cannot be used
13 LOAD Load output judgment 0: Normal
status 1: Load output judgment
If a load current threshold or check range (individual zone boundaries: only
supported by PCON-CF) is set when a movement command is issued, this
bit indicates whether or not the motor current has reached the threshold
inside the check range.
This bit maintains the current value until the next position command is
received.
12 TRQS Torque level status 0: Normal
1: Torque level achieved
This bit becomes 1 when the current ampere value reaches the push-motion
torque while moving by push-motion operation.
Since this bit indicates a level, its status will change when the current level
changes.
11 MODS Teaching mode status 0: Normal operation mode
1: Teaching mode
This bit becomes 1 when the teaching mode is selected by the “teach mode
command bit” of device control register 2.
10 TEAC Position-data load 0: Normal
command status 1: Position data load complete
Setting the “position-data load command bit” in device control register 2 to 1
will change this bit to 0. This bit will turn 1 once position data has been
written to the EEPROM successfully.
9 JOG+ Jog+ status 0: Normal
1: “Jog+” command active
This bit becomes 1 while the “jog+ command bit” of device control register 2
is selected.
8 JOG- Jog- status 0: Normal
1: “Jog-“ command active
This bit becomes 1 while the “jog- command bit” of device control register 2
is selected.
7 PE7 Position complete 7 These bits output a position complete number as a binary value in PIO
6 PE6 Position complete 6 pattern 4 or 5 (solenoid valve mode).
5 PE5 Position complete 5 These bits become 1 when the actuator reaches the target position and
4 PE4 Position complete 4 enters the positioning band via the position movement command.
3 PE3 Position complete 3 These bits become 0 if the servo is turned OFF, but will become 1 if the
2 PE2 Position complete 2 servo is turned ON again as far as the actuator is within the positioning band
1 PE1 Position complete 1 of the command position data. Moreover, they will become 1 when push-
0 PE0 Position complete 0 motion is completed or missed in push-motion operation.

23
(6) Data of expansion device status register (address = 9007H) (DSSE)

Bit Symbol Name Function


15 EMGP Emergency stop status 0: Emergency stop input OFF
1: Emergency stop input ON
This bit indicates the status of the emergency stop input port.
14 MPUV Motor voltage low status 0: Normal
1: Motor drive source cut off
This bit becomes 1 if there is no input from the motor drive power supply.
13 RMDS Operation mode status 0: AUTO mode
1: MANU mode
This bit becomes 1 when the RC controller is in the MANU mode.
Note that the controller is always in the MANU mode in cases of models not
equipped with an operation mode switch (ERC2, PCON-SE, ACON-SE,
PCON-CY and ACON-CY).
12 --- Cannot be used
11 GHMS Home return status 0: Normal
1: Home return
This bit remains 1 for as long as home return is in progress. This bit will be 0
in other cases.
10 PUSH Push-motion operation 0: Normal
in progress 1: Push-motion operation in progress
This bit remains 1 while push-motion operation is in progress (the actuator is
inside the push-motion range, excluding the approach range) following a
push-motion operation command. This bit will turn 0 in any of the following
conditions:
1. The actuator has missed the push motion operation.
2. The actuator has paused.
3. The next movement command has been issued.
4. The servo has turned OFF.
9 PSNS Excitation detection 0: Excitation detection not yet complete
status 1: Excitation detection complete
PCON/ERC2 Series controllers perform excitation detection at the first servo
ON command received after the controller has started. This bit becomes 1
when excitation detection is completed.
This bit remains 0 if the excitation detection has failed. Even after a
successful detection, the bit will return to 0 when a software reset is
performed.
This bit becomes 1 if pole sensing is performed with the first servo ON
command after startup and the operation is completed in case of ACON
series controllers.
On SCON Series controllers, this bit is always 0.
8 PMSS PIO/Modbus switching 0: PIO commands enabled
status 1: PIO command disabled
The switching is made by the “PIO/Modbus switching specification bit” in the
expansion device control register (DRGE).
7 --- Cannot be used
6 Cannot be used
5 MOVE Moving signal 0: Stopped
1: Moving
This bit indicates whether or not the actuator is moving (conditions during
home return and push-motion operation included). This bit remains 0 while
the actuator is paused.
4 --- Cannot be used
3 --- Cannot be used
2 --- Cannot be used
1 --- Cannot be used
0 --- Cannot be used

24
(7) Data of system status registers (9008H) (STAT)

Bit Symbol Name Function


31 to 18 --- Cannot be used
17 ASOF Auto servo OFF 0: Normal
1: Auto servo OFF
If “Auto servo OFF delay time” is set with a parameter of the RC
controller, this bit becomes 1 when the servo is turned OFF
automatically after the specified time has elapsed following the position
complete.
16 AEEP EEPROM accessed 0: Normal
1: EEPROM being accessed
This bit becomes 1 when the RC controller starts to access the
EEPROM while reading or writing the parameter position table, etc.
The bit becomes 0 when the access is completed or a timeout error
occurs.
15 to 5 --- Cannot be used
4 RMDS Operation mode status 0: AUTO mode
1: MANU mode
This bit becomes 1 when the RC controller is in the MANU mode.
Note that the controller is always in the MANU mode in cases of models
not equipped with an operation mode switch (ERC2, PCON-SE and
ACON-SE).
3 HEND Home return completion 0: Home return not yet complete
status 1: Home return completion
This bit will become 1 when home return is completed. In case the
absolute specification is set, the bit is set to 1 from the startup if absolute
reset has been completed.
If an absolute position command is issued while this bit is 0, an alarm will
generate.
2 SV Servo status 0: Servo OFF
1: Servo ON
This bit indicates the servo ON status. This bit will remain 0 until the
servo ON parameter is invoked after a servo ON command is received. If
the servo cannot be turned ON for some reason even after a servo ON
command is received, this bit will remain 0.
The RC controller does not accept any movement command while this
bit is 0.
1 SON Servo command status 0: Servo OFF
1: Servo ON
This bit indicates the servo ON/OFF command status.
This bit will turn 1 when the following conditions are met:
• The EMG status bit in device status register 1 is 0.
(5.3.6 or 6.4.6 Bit 15)
• The major failure status bit in device status register 1 is 0.
(5.3.6 or 6.4.6 Bit 10)
• The enable status bit in device status register 2 is 1.
(5.3.7 or 6.4.7 Bit 15)
• The auto servo OFF status in the system status register is 0.
(5.3.9 or 6.4.9 Bit 17)
0 MPOW Drive source ON 0: Drive source cut off
1: Normal
This bit will turn 0 when the motor drive-source cutoff terminal is
released.

25
(8) Data of special port monitor registers (9012H) (SIPM)

Bit Symbol Name Function


15 --- Cannot be used
14 NP Command pulse NP signal This bit indicates the status of the command pulse NP signal.
status
13 --- Cannot be used
12 PP Command pulse PP signal This bit indicates the status of the command pulse PP signal.
status
11 --- Cannot be used
10 --- Cannot be used
9 --- Cannot be used
8 MDSW Mode switch status 0: AUTO mode
1: MANU mode
This bit becomes 1 when the RC controller is in the MANU mode.
Note that the controller is always in the MANU mode in cases of models
not equipped with an operation mode switch (ERC2, PCON-SE, ACON-
SE).
7 --- Cannot be used
6 --- Cannot be used
5 --- Cannot be used
4 BLCT BLCT belt cut sensor 0: Belt cut 1: Normal
(SCON only)
3 HMCK Home-check sensor monitor 0: Sensor OFF
1: Sensor ON
On a model equipped with a home-check sensor function, this bit
indicates the status of sensor input.
It is always 0 on any other model.
2 OT Overtravel sensor 0: Sensor OFF
1: Sensor ON
This bit indicates the status of the overtravel sensor signal in the encoder
connector.
It is always 0 on a model not equipped with an overtravel sensor.
1 CREP Creep sensor 0: Sensor OFF
1: Sensor ON
This bit indicates the status of the creep sensor signal in the encoder
connector.
It is always 0 on a model not equipped with a creep sensor.
0 LS Limit sensor 0: Sensor OFF
1: Sensor ON
This bit indicates the status of the limit sensor signal in the encoder
connector.
It is always 0 on a model not equipped with a limit sensor.

26
(9) Data of zone status register (9013H) (ZONS)

Bit Symbol Name Function


15 --- Cannot be used
14 LS2 Limit sensor output monitor 2 0: Out of range
(PCON-C/CG, 1: In range
ACON-C/CG, The negative boundary of the positioning band is obtained by subtracting
SCON the positioning band size from target position No. 2 while the positive
PIO pattern 5) boundary of the positioning band is obtained by adding the positioning
band size to target position No. 2.
This bit will become 1 when the current position is within the band and 0
when it is outside the band.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.
13 LS1 Limit sensor output monitor 1 0: Out of range
(PCON-C/CG, 1: In range
ACON-C/CG, The negative boundary of the positioning band is obtained by subtracting
SCON the positioning band size from target position No. 1 while the positive
PIO pattern 5) boundary of the positioning band is obtained by adding the positioning
band size to target position No. 1. This bit remains 1 as long as the
current position is within these boundaries.
This bit will become 1 when the current position is within the band and 0
when it is outside the band.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.
12 LS0 Limit sensor output monitor 0 0: Out of range
(PCON-C/CG, 1: In range
ACON-C/CG, The negative boundary of the positioning band is obtained by subtracting
SCON the positioning band size from target position No. 0 while the positive
PIO pattern 5) boundary of the positioning band is obtained by adding the positioning
band size to target position No. 0. This bit remains 1 as long as the
current position is within these boundaries.
This bit will become 1 when the current position is within the band and 0
when it is outside the band.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.
11 --- Cannot be used
10 --- Cannot be used
9 --- Cannot be used
8 ZP Position zone output 0: Out of range
monitor 1: In range
This bit remains 1 while the current position is within the zone range
specified for each position and becomes 0 when it is outside the range.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.
7 --- Cannot be used
6 --- Cannot be used
5 --- Cannot be used
4 --- Cannot be used
3 --- Cannot be used
2 --- Cannot be used
1 Z2 Zone output monitor 2 0: Out of range
1: In range
This bit remains 1 while the current position is within the range where the
zone boundary 2 parameter is set and becomes 0 when it is outside the
range.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.
0 Z1 Zone output monitor 1 0: Out of range
1: In range
This bit remains 1 while the current position is within the range where the
zone boundary 1 parameter is set and becomes 0 when it is outside the
range.
This bit becomes effective upon home return completion. It remains
effective even while the servo is OFF.

27
(10) Data of position number status register (9014H) (POSS)

Bit Symbol Name Function


15 --- Cannot be used
14 --- Cannot be used
13 --- Cannot be used
12 --- Cannot be used
11 --- Cannot be used
10 --- Cannot be used
9 --- Cannot be used
8 PM256 Position complete number These bits indicate position numbers for which positioning has been
status bit 256 completed (valid in cases other than PIO patterns 4 and 5 (solenoid
7 PM128 Position complete number valve mode)). The position complete is read as binary code.
status bit 128 It becomes possible to read position complete numbers when the current
6 PM64 Position complete number position gets close to the target position (within the positioning band in
status bit 64 either the positive or negative directions). 0 is read in other cases.
5 PM32 Position complete number Although all the bits will change to 0 once the servo turns OFF, the
status bit 32 position complete becomes valid again if the current position is still
4 PM16 Position complete number inside the positioning band when the servo is turned ON subsequently.
status bit 16 In push-motion, the position complete numbers can be read at both the
3 PM8 Position complete number completion and miss of push-motion.
status bit 8
2 PM4 Position complete number
status bit 4
1 PM2 Position complete number
status bit 2
0 PM1 Position complete number
status bit 1

28
4.3.3 Structure of Status Registers
The layout of the status registers is shown below.

(Reserved for system)*

Device status register 1


[DSS1]

Device status register 2


[DSS2]

Expansion device status register


[DSSE]

Position number status register


[POSS]

Zone status register


[ZONS]

Input port monitor register


[DIPM]

Output port monitor register


[DOPM]

Special input port register


[SIPM]

(Reserved for system)*

Device control register 1


[DRG1]

Device control register 2


[DRG2]

Expansion device control register


[DRGE]

Position number specification register


[POSR]

(Reserved for system)*

* Areas reserved for the system cannot be used for communication.

29
4.3.4 Data of Status Registers

Address Area name Description Symbol Reference page


[hex] RTU ASCII
Reserved for
0000 to 0CFF
system
0100 Device status EMG status EMGS (56) 22 (154) 22
0101 register 1 Safety speed enabled status SFTY
(DSS1)
0102 Controller ready status PWR
0103 Servo ON status SV
0104 Missed work in push-motion operation PSFL
0105 Major failure status ALMH
0106 Minor failure status ALML
0107 Absolute error status ABER
0108 Brake forced-release status BKRL
0109 Cannot be used
010A Pause status STP 22 22
010B Home return status HEND
010C Position complete status PEND
010D to 010F Cannot be used
0110 Device status Cannot be used (58) (156)
0111 register 2 Cannot be used
(DSS2)
0112 Load output judgment status LOAD 23 23
0113 Torque level status TRQS
0114 Teaching mode status MODS
0115 Position-data load command status TEAC
0116 Jog+ status JOG+
0117 Jog- status JOG-
0118 Position complete 7 PE7
0119 Position complete 6 PE6
011A Position complete 5 PE5
011B Position complete 4 PE4
011C Position complete 3 PE3
011D Position complete 2 PE2
011E Position complete 1 PE1
011F Position complete 0 PE0
0120 Expansion Emergency stop status EMGP (60) 24 (158) 24
0121 device status Motor voltage low status MPUV
register
0122 Operation mode status RMDS
(DSSE)
0123 Cannot be used
0124 Home return status GHMS 24 24
0125 Push-motion operation in progress PUSH
0126 Excitation detection status PSNS
0127 PIO/Modbus switching status PMSS
0128 Cannot be used
0129 Cannot be used
012A Moving signal MOVE 24 24
012B to 012F Cannot be used

30
Address Area name Description Symbol Reference page
[hex] RTU ASCII
0130 to 0136 Position Cannot be used (76) (174)
0137 number status Position complete number status bit 256 PM256 28 28
register
0138 Position complete number status bit 128 PM128
(POSS)
0139 Position complete number status bit 64 PM64
013A Position complete number status bit 32 PM32
013B Position complete number status bit 16 PM16
013C Position complete number status bit 8 PM8
013D Position complete number status bit 4 PM4
013E Position complete number status bit 2 PM2
013F Position complete number status bit 1 PM1
0140 Zone status Cannot be used (74) (172)
0141 register Limit sensor output monitor 2 LS2 27 27
(ZONS)
0142 Limit sensor output monitor 1 LS1
0143 Limit sensor output monitor 0 LS0
0144 to 0146 Cannot be used
0147 Position zone output monitor ZP 27 27
0148 to 014D Cannot be used
014E Zone output monitor 2 Z2 27 27
014F Zone output monitor 1 Z1
Input port PIO connector pin numbers 20A (IN15) to 48 146
0150 to
monitor register
015F 5A (IN0)
(DIPM)
Output port PIO connector pin numbers 16B (OUT15) 52 150
0160 to
monitor register
016F to 1B (OUT0)
(DOPM)
0170 Special input Cannot be used (72) (170)
0171 port monitor Command pulse NP signal status NP 26 26
register
0172 Cannot be used
(SIPM)
0173 Command pulse PP signal status PP 26 26
0174 to 0175 Cannot be used
0176 Cannot be used
0177 Mode switch status MDSW 26 26
0178 Cannot be used
0179 to 017B Cannot be used
017C Home-check sensor monitor HMCK 26 26
017D Overtravel sensor OT
017E Creep sensor CREP
017F Limit sensor LS
Reserved for
0180 to 03FF
system

31
Address Area name Description Symbol Reference page
[hex] RTU ASCII
0400 Device control EMG operation specification EMG (109) 19 (207) 19
0401 register 1 Safety speed command SFTY
(DRG1)
0402 Cannot be used
0403 Servo ON command SON 19 19
0404 to 0406 Cannot be used
0407 Alarm reset command ALRS 19 19
0408 Brake forced-release command BKRL
0409 Cannot be used
040A Pause command STP 19 19
040B Home return command HOME
040C Positioning start command CSTR
040D to 040F Cannot be used
0410 Device control Cannot be used (109) (207)
0411 register 2 Jog/inch switching JISL 20 20
(DRG2)
0412 to 0413 Cannot be used
0414 Teaching mode command MOD 20 20
0415 Position data load command TEAC
0416 Jog+ command JOG+
0417 Jog command JOG-
0418 Start position 7 ST7
0419 Start position 6 ST6
041A Start position 5 ST5
041B Start position 4 ST4
041C Start position 3 ST3
041D Start position 2 ST2
041E Start position 1 ST1
041F Start position 0 ST0
0420 to 0426 Expansion Cannot be used
0427 device control PIO/Modbus switching specification PMSL 105 206
0428 to 042B register Cannot be used
(DRGE)
042C Deceleration stop STOP 107 205
042D to 042F Cannot be used
0430 to 0436 Position Cannot be used (109) (207)
0437 number Position command bit 256 PC256 21 21
specification
0438 Position command bit 128 PC128
register
0439 (POSR) Position command bit 64 PC64
043A Position command bit 32 PC32
043B Position command bit 16 PC16
043C Position command bit 8 PC8
043D Position command bit 4 PC4
043E Position command bit 2 PC2
043F Position command bit 1 PC1
Reserved for
0440 to FFFF
system

32
5 Modbus RTU

33
5.1 Message Frames (Query and Response)

Start Address Function code Data CRC Check End


Silent Silent
1 byte 1 byte n byte 2 byte
interval interval

(1) Start
This field contains a silent interval (non communication time) of 3.5 characters or longer.
(1 character = 10 bits)
Example: In case of 9600 bps, (10 x 3.5) bits x 1/9600 bps = 3.65 ms
* If the response timeout error occurs, change parameter No. 45, “Silent interval multiplier” or
No. 17, “Min. delay for activating local transmitter” using the IAI teaching tool as required.

(2) Address
This field specifies the addresses of connected RC controllers (01H to 10H).
Address = axis number + 1
Note: The address is not equal to the corresponding axis number: be careful when making settings.

(3) Function
The table below summarizes the function codes and functions that can be used with RC controllers.

Code
Name Function
(Hex)
01H Read Coil Status Read coils/DOs.
02H Read Input Status Read input statuses/DIs.
03H Read Holding Registers Read holding registers.
04H Read Input Registers Read input registers.
05H Force Single Coil Write one coil/DO.
06H Preset Single Register Write holding register.
07H Read Exception Status Read exception statuses.
0FH Force Multiple Coils Write multiple coils/DOs at once.
10H Preset Multiple Registers Write multiple holding registers at once.
11H Report Slave ID Query a slave’s ID.
17H Read / Write Registers Read/write registers.

* This manual uses mark function codes.


* The ROBONET gateway supports three types of function codes (03H, 06H and 10H).
(Please refer to the separate ROBONET Instruction Manual.)

34
(4) Data
Use this field to add data specified by a function code. It is also allowed to omit data if data
addition is not specified by a function code.

(5) CRC check


In the RTU mode, an error check field confirming to the CRC method is automatically (*)
included in order to check contents of all messages. Moreover, checking is carried out
regardless of the parity check method of individual characters in messages.
The CRC check consists of 16-bit binary values. The CRC value is calculated by the sender
that appends the CRC field to a message. The recipient recalculates the CRC value again while
receiving the message, and compares the calculation result against the actual value received in
the CRC field. If the two values do not match, an error will generate.
(*) When using a PC or a PLC not supporting Modbus are used as the host, it is necessary to
create a function for calculating CRC.
Programs written in C language are included in 10, “CRC Check Calculation.”
Generation polynomial equation: x 16 + x15 + x2 + 1 (CRC-16 method)

Reference: CRC calculation is automatically carried out with the FINS command supporting
Modbus RTU communication of the PLC CJ1 series made by Omron.

(6) End
This field contains a silent interval (non communication time) of 3.5 characters or longer.
* If the response timeout error occurs, change parameter No. 45, “Silent interval multiplier” or
No. 17, “Min. delay for activating local transmitter” using the IAI’s teaching tools as required.

(7) Broadcast
It is possible to send a query containing same data to all connected axes by specifying the address
00H. In this case, no response is returned from an RC controller.
Note, however, that the function codes etc. that can be used with this function are limited; care
should be taken when using the function. Please check the function codes that can be used in 5.2,
“List of RTU Mode Queries.”

PLC (master)

Address = 00H (command all axes)

RC controller RC controller RC controller


(slave) (slave) (slave)

Fig. 5.1

35
Caution
The sizes of send/receive buffers are set to 256 bytes for an RC controller, respectively. Make sure
to keep the messages small enough such that messages sent from the host side do not exceed the
receive buffer and data requests do not exceed send buffer.

36
5.2 List of RTU Mode Queries

The table below lists queries available in the RTU mode.

Combination Broad-
FC Function Symbol Function Summary with PIO Page
cast
Multiple FC03 This function can be used to successively {
03 None 41
register read read multiple registers that use function 03.
Current position This function reads the current actuator {
03 PNOW 44
monitor position in units of 0.01 mm.
Present alarm code This function reads alarm codes that are {
03 ALMC 46
query presently detected.
This function reads the ON/OFF statuses of {
03 Input port query DIPM 48
PIO input ports.
This function reads the ON/OFF statuses of {
03 Output port query DOPM 52
PIO output ports.
This function reads the following 12 statuses: {
[1] Emergency stop
[2] Safety speed enabled/disabled
[3] Controller ready
[4] Servo ON/OFF
Device status query 1 [5] Missed work in push-motion operation
03 (Operation preparation DSS1 [6] Major failure 56
status) [7] Minor failure
[8] Absolute error
[9] Brake
[10] Pause
[11] Home return completion
[12] Position complete
This function reads the following 15 statuses: {
[1] Enable
[2] Load output judgment (check-range
load current threshold)
[3] Torque level (load current threshold)
[4] Teaching mode (normal/teaching)
[5] Position data load (normal/complete)
Device status query 2 [6] Jog+ (normal/command active)
03 (Operation preparation 1 DSS2 [7] Jog- (normal/command active) 58
status) [8] Position complete 7
[9] Position complete 6
[10] Position complete 5
[11] Position complete 4
[12] Position complete 3
[13] Position complete 2
[14] Position complete 1
[15] Position complete 0

FC: Function code


PIO: Parallel I/O (input/output of an I/O connector)
The circle marks in the Combination use with PIO and Broadcast columns indicate queries that can be
combined with PIO and in broadcast communication, respectively.

37
Combination Broad-
FC Function Symbol Function Summary with PIO Page
cast
This function reads the following 9 statuses: {
[1] Emergency stop (emergency stop input
port)
[2] Motor voltage low
Expansion device [3] Operation mode (AUTO/MANU)
03 status query DSSE [4] Home return 60
(Operation preparation 2
status) [5] Push-motion operation in progress
[6] Excitation detection
[7] PIO/Modbus switching
[8] Position-data write completion status
[9] Moving
This function reads the following 7 statuses: {
[1] Automatic servo OFF
[2] EEPROM accessed
System status query [3] Operation mode (AUTO/MANU)
03 STAT 62
(Controller status) [4] Home return completion
[5] Servo ON/OFF
[6] Servo command
[7] Drive source ON (normal/cut off)
Current speed This function reads the current actuator {
03 VNOW 64
monitor speed in units of 0.01 mm/sec.
Current ampere This function reads the motor-torque current {
03 CNOW 66
monitor command value of the actuator in mA.
This function reads the deviation over a 1-ms {
03 Deviation monitor DEVI 68
period in pulses.
System timer This function reads the total time in msec {
03 STIM 70
monitor since the controller power was turned on.
This function reads the following 9 statuses: {
[1] Command pulse NP
[2] Command pulse PP
[3] Port switch
Special input port [4] Mode switch
03 query SIPM 72
[5] Enable switch
(Sensor input status)
[6] Home check sensor
[7] Overtravel sensor
[8] Creep sensor
[9] Limit sensor

38
Combination Broad-
FC Function Symbol Function Summary with PIO Page
cast
This function reads the following 6 statuses: {
[1] LS2 (PIO pattern solenoid valve mode
[3-point type]
[2] LS1 (PIO pattern solenoid valve mode
[3-point type]
03 Zone status query ZONS 74
[3] LS0 (PIO pattern solenoid valve mode
[3-point type]
[4] Position zone
[5] Zone 2
[6] Zone 1
This function reads the following 9 statuses: {
[1] Position complete number bit 256
[2] Position complete number bit 128
[3] Position complete number bit 64
Position complete [4] Position complete number bit 32
03 POSS 76
number query [5] Position complete number bit 16
[6] Position complete number bit 8
[7] Position complete number bit 4
[8] Position complete number bit 2
[9] Position complete number bit 1
Safety speed mode This function issues a command to {
05 SFTY 79
switching enable/disable the safety speed.
This function issues a command to turn the {
05 Servo ON/OFF SON 81
servo ON/OFF.
This function issues a command to reset {
05 Alarm reset ALRS 83
alarms/cancel the remaining travel.
This function issues a command to forcibly {
05 Brake release BKRL 85
release the brake.
05 Pause STP This function issues a pause command. { 87
This function issues a home return operation {
05 Home return HOME 89
command.
This function turns the start signal ON/OFF {
for movement by position number
05 Positioning start CSTR 91
specification.
(This function is not used in this manual.)
This function switches between the jogging {
05 Jog/inch switching JISL 93
mode and the inching mode
Teaching mode This function switches between the normal {
05 MOD 95
command mode and the teaching mode
This function issues a current position load {
05 Position data load TEAC 97
command in the teaching mode.
This function issues a jogging/inching {
05 Jog+ JOG+ 99
command in the direction opposite home.
This function issues a jogging/inching {
05 Jog- JOG- 101
command in the direction of home.

39
Combination Broad-
FC Function Symbol Function Summary with PIO Page
cast
This function specifies position numbers {
Position number ST0 to effective only in the solenoid valve mode.
05 103
specification 0 to 7 ST7 The actuator can be operated with this
command alone. *
This function issues a command to {
PIO/Modbus
05 PMSL enable/disable PIO external command 105
switching setting
signals.
This function can decelerate the actuator to {
05 Deceleration stop STOP 107
a stop.
Normal movement, relative movement and {
Movement by
push-motion operation can be performed by
06 position number POSR 109
position number specification using this
specification
command alone.
This function can be used to send the target {
position, positioning band, speed,
acceleration/deceleration, push, and control
Numerical
10 None setting in a single message to operate the 112
movement command
actuator. Normal movement, relative
movement and push-motion operation are
supported.
This function can be used to change all data {
Position data table
10 None of the specified position number for the 123
write
specified axis.
Indeter- This response will be returned when the
minable Exception response None 229
message contains invalid data.

* It is necessary to set positioning data in the position table in advance.


(1) Use the teaching tool.
(2) Use the position data table writing function.

40
5.3. Data and Status Reading (Queries Using Code 03)

5.3.1 Reading Consecutive Multiple Registers

(1) Function
These registers read the contents of registers in a slave.
This function is not supported in broadcast communication.

(2) Start address list


With RC Series controllers, the sizes of send/receive buffers are set to 256 bytes, respectively.
Accordingly, a maximum of 126 registers’ worth of data consisting of 252 bytes (one register uses
two bytes), except 4 bytes (slave address + function code + error check) of the above 256 bytes,
can be queried in the RTU mode. In other words, all of the data listed below (total 21 registers) can
be queried in a single communication.

Address (H) Symbol Name Sign Register size Byte


9000, 9001 PNOW Current position monitor { 2 4
9002 ALMC Present alarm code query 1 2
9003 DIPM Input port query 1 2
9004 DOPM Output port monitor query 1 2
9005 DSS1 Device status query 1 1 2
9006 DSS2 Device status query 2 1 2
9007 DSSE Expansion device status query 1 2
9008, 9009 STAT System status query 2 4
900A, 900B VNOW Current speed monitor { 2 4
900C, 900D CNOW Current ampere monitor { 2 4
900E, 900F DEVI Deviation monitor { 2 4
9010, 9011 STIM System timer query 2 4
9012 SIPM Special input port query 1 2
9013 ZONS Zone status query 1 2
9014 POSS Position complete number status query 1 2

41
(3) Query format
In a query message, specify the address of the register from which to start reading data, and
number of bytes in registers to be read.
1 register (1 address) = 2 bytes = 16-bit data

Field RTU mode Number of data items Remarks


8-bit data (number of bytes)
Start None Silent interval
Slave address (H) Arbitrary 1 Axis No. + 1 (01H to 10H)
Function code (H) 03 1 Register reading code
Start address (H) Arbitrary 2 Refer to 5.3.1 (2),
”Start address list”
Number of registers (H) Arbitrary 2 Refer to the start address
list.
Error check (H) CRC (16 bits) 2
End None Silent interval
Total number of bytes 8

(4) Response format

Field RTU mode Number of data items Remarks


8-bit data (number of bytes)
Start Silent interval
Slave address (H) Arbitrary 1 Axis No. + 1 (01H to 10H)
Function code (H) 03 1 Register reading code
Number of data bytes (H) 1 Total number of bytes of
registers specified in the
query
Data 1 (H) Number of bytes of
register specified in the
query
Data 2 (H) Number of bytes of
register specified in the
query
Data 3 (H) Number of bytes of
register specified in the
query
Data 4 (H) Number of bytes of
register specified in the
query
: :
: :
Error check (H) CRC (16 bits) 2 Silent interval
End
Total number of bytes 256 max.

42
(5) Query sample
„ A sample query that queries addresses 9000H to 9009H of a controller of axis No. 0 is shown below.
„ Query (silent intervals are inserted before and after the query)
01 03 90 00 00 0A E8 CD
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9000
Number of registers (H) 000A (10 registers)
Error check (H) E8CD (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


„ Response (silent intervals are inserted before and after the response)
01 03 14 00 00 00 00 00 00 00 00 6E 00 60 18 80 00 23 C7 00 00 00 19 18 A6
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 14 (20 bytes = 10 registers)
Data 1 (H) 00 00 00 00 (current position monitor)
Data 2 (H) 00 00 (present alarm code query)
Data 3 (H) 00 00 (input port query)
Data 4 (H) 6E 00 (output port query)
Data 5 (H) 60 18 (device status 1 query)
Data 6 (H) 80 00 (device status 2 query)
Data 7 (H) 23 C7 (expansion device status query)
Data 8 (H) 00 00 00 19 (system status query)
Error check (H) 18A6 (in accordance with CRC calculation)
End Silent interval
* The data of the response example is simply an example and will vary
depending on various conditions.

43
5.3.2 Current Position Reading <<PNOW>> (in 0.01 mm units)

(1) Function
This bit reads the current position in units of 0.01 mm. The sign is effective.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to
10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9000 Current position monitor
Number of registers (H) 2 0002 Reading addresses 9000H
to 9001H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1
(01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 04 Reading 2 registers = 4
bytes
Data 1 (H) 2 In accordance with the Current data (Hex) (most
current value significant digit)
Data 2 (H) 2 In accordance with the Current data (Hex) (least
current value significant digit)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

44
(4) Query sample
A sample query that reads the current position (addresses 9000H to 9001H) of a controller with axis
No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 00 00 02 E9 0B
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9000
Number of registers (H) 0002
Error check (H) E90B (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 00 0B FE 7C 83
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 00
Data 2 (H) 0B FE
Error check (H) 7C83 (in accordance with CRC calculation)
End Silent interval

The current position is “00000BFEH” → Converted to a decimal value → 3070 (x 0.01 mm)
The current position is 30.7 mm.
Example 2: If the current position is read “FFFFFFF5H” (negative position) →
FFFFFFFFH – FFFFFFF5H + 1 (make sure to add 1) →
Convert to a decimal value → 11 (x 0.01 mm)
The current position is -0.11 mm

* The data of the response example is simply an example and will vary
depending on various conditions.

45
5.3.3 Present Alarm Code Reading <<ALMC>>

(1) Function
This query reads the code indicating the normal status or alarm status of the controller.
In the normal status, 00H is stored.
For details on alarm codes, refer to the operation manual for each controller.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bits data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9002 Present alarm code
Number of registers (H) 2 0001 Reading address 9002H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bits data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data 1 (H) 2 Alarm code Alarm code (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

46
(4) Query sample
A sample query that reads the alarm code position (address 9002H) of a controller with axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 02 00 01 08 CA
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9002
Number of registers (H) 0001
Error check (H) 08CA (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 00 E8 B8 0A
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 00 E8
Error check (H) B80A (in accordance with CRC calculation)
End Silent interval

The most important alarm presently detected is “0E8”H, which is a phase A/B open alarm.
For details on alarm codes, refer to the operation manual that comes with each controller.

* The data of the response example is simply an example and will vary
depending on various conditions.

47
5.3.4 I/O Port Input Signal Status Reading <<DIPM>>

(1) Function
This query reads the port input value of the RC controller regardless of the PIO pattern.
The data indicates the status of the port recognized by the RC controller as the input.

(2) Query format


Number of data items RTU mode Remarks
Field
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9003 Input port monitor register
Number of registers (H) 2 0001 Address 9003H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per address.
Number of data items RTU mode
Field Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data 1 (H) 2 Port input value Port input value (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

48
(4) Query sample
A sample query that reads the current position (address 9003H) of a controller with axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 03 00 01 59 0A
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9003
Number of registers (H) 0001
Error check (H) 590A (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 90 00 D4 44
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 90 00
Error check (H) D444 (in accordance with CRC calculation)
End Silent interval

The input data area address is “9000”H, which is converted to binary value
“1001000000000000.”
↑ ↑
INT15 -------------------- INT 1

* The data of the response example is simply an example and will vary
depending on various conditions.

49
(5) Port assignment (For details, refer to the operation manual that comes with each RC controller.)
Write the port assignment of PIO patterns to each RC controller.
0 indicates that response data is always 0.

ERC2 (PIO type)


Port PIO PIO PIO PIO
pattern pattern pattern pattern
0 1 2 3

Port PIO PIO PIO PIO PIO PIO PIO PIO


pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 6 7

50
Port PIO PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

(Pulse train mode)


Port PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0

51
5.3.5 I/O Port Output Signal Status Reading<<DOPM>>

(1) Function
This query reads the port output value of the RC controller regardless of the PIO pattern.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9004 Output port monitor register
Number of registers (H) 2 0001 Reading addresses 9004H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data 1 (H) 2 D0 output value Port output value (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

52
(4) Query sample
A sample query that queries address 9004H of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 04 00 01 E8 CB
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9004
Number of registers (H) 0001
Error check (H) E8CB (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 68 00 97 84

Field RTU mode


8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 68 00
Error check (H) 9784 (in accordance with CRC calculation)
End Silent interval

The input data area address is “6800”H, which is converted to binary value
“0110100000000000.”
↑ ↑
INT15 -------------------- INT 1

* The data of the response example is simply an example and will vary
depending on various conditions.

53
(5) Port assignment (For details, refer to the operation manual that comes with each RC controller.)
Write the port assignment of PIO patterns to each RC controller.
0 indicates that response data is always 0.

ERC2 (PIO type)


Port PIO PIO PIO PIO
pattern pattern pattern pattern
0 1 2 3

Port PIO PIO PIO PIO PIO PIO PIO PIO


pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

54
Port PIO PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

(Pulse train mode)


PIO PIO PIO PIO PIO PIO PIO
Port pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0

55
5.3.6 Device Status Reading 1 <<DSS1>>

(1) Function
This query reads the internal status of the controller.
Refer to 4.3.2 (4), “Data of device status register 1.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9005 Device status register 1
Number of registers (H) 2 0001 Reading address 9005H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per address.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data (H) 2 Status 1 Status 1 (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

56
(4) Query sample
A sample query that reads the current position (address 9005H) of a controller with axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 05 00 01 B9 0B
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9005
Number of registers (H) 0001
Error check (H) B90B (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 70 98 9C 2E
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 70 98
Error check (H) 9C2E (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

57
5.3.7 Device Status Reading 2 <<DSS2>>

(1) Function
This query reads the internal status of the controller.
Refer to 4.3.2 (5), “Data of device status register 2.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9006 Device status register 2
Number of registers (H) 2 0001 Reading address 9006H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Internal status of controller
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data (H) 2 Status 2 Status 2 (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

58
(4) Query sample
A sample query that reads the current position (address 9006H) of a controller with axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 06 00 01 49 0B
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9006
Number of registers (H) 0001
Error check (H) 490B (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 80 00 D9 84
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 80 00
Error check (H) D984 (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

59
5.3.8 Device Status Reading 3 <<DSSE>>

(1) Function
This query reads internal status (expansion device) of the controller.
Refer to 4.3.2 (6), “Data of expansion device status register.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 9007 Expansion device status
2
register
Number of registers (H) 2 0001 Reading address 9007H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data (H) 2 Expansion status Expansion status (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

60
(4) Query sample
A sample query that reads the expansion device status (address 9007H) of a controller of axis No. 0
is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 07 00 01 18 CB
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9007
Number of registers (H) 0001
Error check (H) 18CB (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 33 C7 ED 26
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 33 C7
Error check (H) ED26 (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions

61
5.3.9 Device Status Reading4 <<STAT>>

(1) Function
This query reads the internal operation status of the controller.
Refer to 4.3.2 (7), “Data of system status register.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9008 System status register
Number of registers (H) 0002 Reading addresses 9008H to
4
9009H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Internal status of controller
Number of data bytes (H) 1 04 Reading 2 registers = 4 bytes
Data (H) 4 System status System status (Hex)
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

62
(4) Query sample
A sample query that reads the system status (from address 9008H) of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 08 00 02 68 C9
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9008
Number of registers (H) 0002
Error check (H) 68C9 (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 0C 00 17 7A 3E
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 0C 00 17
Error check (H) 7A3E (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

63
5.3.10 Current Speed Reading <<VNOW>>

(1) Function
This query reads the monitor data of the actual motor speed. The data becomes positive or negative
depending on the moving direction. The unit is 0.01 mm/sec.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 900A Current speed monitor
Number of registers (H) 0002 Reading addresses 900AH to
4
900BH
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 04 Reading 2 registers = 4 bytes
Data (H) 4 Current speed Current speed (Hex)
Indicated in units of 0.01
mm/sec.
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

64
(4) Query sample
A sample query that reads the current speed monitor (from address 900AH) of a controller of axis
No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 0A 00 02 C9 09
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 900A
Number of registers (H) 0002
Error check (H) C909 (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 00 03 E4 FA 88
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 00 03 E4
Error check (H) FA88 (in accordance with CRC calculation)
End Silent interval

The current speed is “000003E4” → Converted to a decimal value → 996 (x 0.01 mm/sec)
The current speed monitor is 9.96 mm/sec.

Example 2: When the current speed reading is “FFFFFF35” (moving in the direction opposite to the
example above) →
FFFFFFFFH – FFFFFF35H + 1 (make sure to add 1) →
Converted to a decimal value → 203 (x 0.01 mm/sec) →
The current speed monitor is 2.03 mm/sec.

* The data of the response example is simply an example and will vary
depending on various conditions.

65
5.3.11 Current Ampere Reading <<CNOW>>

(1) Function
This query reads the monitor data of the motor current (torque current command value), indicated in
units of mA.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 900C Current ampere monitor
Number of registers (H) 0002 Reading addresses 900CH to
4
900DH
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 04 Reading 2 register = 4 bytes
Data (H) 4 Motor current Motor current monitor (Hex)
monitor The unit is mA.
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

66
(4) Query sample
A sample query that read the current ampere monitor (from address 900CH) of a controller of axis
No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 0C 00 02 29 08
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 900C
Number of registers (H) 0002
Error check (H) 2908 (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 00 01 C8 FA 35
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 00 01 C8
Error check (H) FA35 (in accordance with CRC calculation)
End Silent interval

The current ampere value is “000001C8” → Converted to a decimal value → 456 (mA)
The current ampere monitor value is 456 mA.

* The data of the response example is simply an example and will vary
depending on various conditions.

67
5.3.12 Deviation Reading <<DEVI>>

(1) Function
This query reads the deviation over a 1-ms period between the position command value and the
feedback value (actual position). The unit is pulse. The number of pulses per one motor revolution in
mechanical angle varies depending on the encoder used.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 900E Deviation monitor
Number of registers (H) 4 0002 Reading addresses 900EH to
900FH
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 04 Reading 2 registers = 4 bytes
Data (H) 4 Deviation monitor Deviation monitor (Hex)
The unit is pulse.
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

68
(4) Query sample
A sample query that reads the deviation monitor (from address 900EH) of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 0E 00 02 88 C8
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 900E
Number of registers (H) 0002
Error check (H) 88C8 (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 00 00 0B BB F4
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 00 00 0B
Error check (H) BBF4 (in accordance with CRC calculation)
End Silent interval

The deviation monitor is “0000000B” → Converted to a decimal value → 11 (pulses)


The deviation over a 1-ms period between the position command value and the
feedback value (actual position) is 11 pulses.

* The data of the response example is simply an example and will vary
depending on various conditions.

69
5.3.13 Total Time after Power On Reading <<STIM>>

(1) Function
This query reads the total time since the controller power was turned on. The unit is msec.
The timer value is not cleared by software reset.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9010 System timer
Number of registers (H) 0002 Reading addresses 9010H to
4
9011H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 04 Reading 2 registers = 4 bytes
Data (H) 4 System timer System timer (Hex)
The unit is msec.
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 9

70
(4) Query sample
A sample query that reads the system timer value (from address 9010H) of a controller of axis No. 0
is shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 10 00 02 E8 CE
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9010
Number of registers (H) 0002
Error check (H) E8CE (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 04 00 02 7A 72 F8 B6
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 04 (4 bytes = 2 registers)
Data 1 (H) 00 02 7A 72
Error check (H) F8B6 (in accordance with CRC calculation)
End Silent interval

The system timer is “00027A72” → Converted to a decimal value → 162418 (msec)


The total time since the controller power was turned on is 162.418 sec.

* The data of the response example is simply an example and will vary
depending on various conditions.

71
5.3.14 Special Input Port Input Signal Status Reading<<SIPM>>

(1) Function
This query reads the status of input ports other than the normal input port.
Refer to 4.3.2 (8), “Data of special input port monitor registers” for the data input via the special
input port.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9012 Special input port monitor
Number of registers (H) 2 0001 Reading addresses 9012H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data (H) 2 Special port monitor Refer to 4.3.2 (8), “List table.”
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

72
(4) Query sample
A sample query that reads the special input port (address 9012H) of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 12 00 01 09 0F
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9012
Number of registers (H) 0001
Error check (H) 090F (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 43 00 89 74
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 43 00
Error check (H) 8974 (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

73
5.3.15 Zone Output Signal Status Reading<<ZONS>>

(1) Function
This query reads the status of zone output.
Refer to 4.3.2 (9), “Data of zone status registers.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9013 Zone status query
Number of registers (H) 2 0001 Reading address 9013H
Error check (H) 2 CRC (16 bits)
End Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Data (H) 2 Zone status Refer to 4.3.2 (9), “List table”
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

74
(4) Query sample
A sample query that reads the zone output status (address 9013H) of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 13 00 01 58 CF
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9013
Number of registers (H) 0001
Error check (H) 58CF (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 00 00 B8 44
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 00 00
Error check (H) B844 (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

75
5.3.16 Position Complete Number Reading<<POSS>>

(1) Function
This query reads the position complete number.
Refer to 4.3.2 (10), “Data of position number status register.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Start address (H) 2 9014 Position number status
Number of registers (H) 2 0001 Reading address 9014H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response format


A response message contains 16 bits of data per register.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 1 03 Register reading
Number of data bytes (H) 1 02 Reading 1 register = 2 bytes
Position number Refer to 4.3.2 (10), “List
Data (H) 2
status table.”
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 7

76
(4) Query sample
A sample query that reads the position complete (address 9014H) of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 03 90 14 00 01 E9 0E
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Start address (H) 9014
Number of registers (H) 0001
Error check (H) E90E (in accordance with
CRC calculation)
End Silent interval

The response to the query is as follows.


Response (silent intervals are inserted before and after the response)
01 03 02 00 00 B8 44
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 03
Number of data bytes (H) 02 (2 bytes = 1 register)
Data 1 (H) 00 00
Error check (H) B844 (in accordance with CRC calculation)
End Silent interval

* The data of the response example is simply an example and will vary
depending on various conditions.

77
5.4 Operation Commands and Data Rewrite (Query Using Code 05)

5.4.1 Writing to Coil

(1) Function
Change (write) the status of DO (Discrete Output) of a slave to either ON or OFF.
In case of broadcast transmission, the coils at the specified address of all slaves are rewritten.

(2) Start address list


Start address (H) Symbol Function
0401 SFTY Safety speed command
0403 SON Servo ON command
0407 ALRS Alarm reset command
0408 BKRL Brake forced-release command
040A STP Pause command
040B HOME Home return command
040C CSTR Positioning start command
0411 JISL Jog/inch switching
0414 MOD Teaching mode command
0415 TEAC Position data load command
0416 JOG+ Jog+ command
0417 JOG- Jog- command
0418 ST7 Start position 7 (solenoid valve mode)
0419 ST6 Start position 6 (solenoid valve mode)
041A ST5 Start position 5 (solenoid valve mode)
041B ST4 Start position 4 (solenoid valve mode)
041C ST3 Start position 3 (solenoid valve mode)
041D ST2 Start position 2 (solenoid valve mode)
041E ST1 Start position 1 (solenoid valve mode)
041F ST0 Start position 0 (solenoid valve mode)
0427 PMSL PIO/Modbus switching specification
042C STOP Deceleration stop

78
5.4.2 Safety Speed Enable/Disable Switching (SFTY)

(1) Function
This query enables/disables the speed specified by user parameter No. 35, “Safety speed.”
Enabling the safety speed in the MANU mode will limit the speeds of all movement commands.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0401 Safety speed command
Changed data (H) 2 Arbitrary Safety speed enabled: FF00H
Safety speed disabled: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

79
(4) Query sample
A sample query that enables the safety speed of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 01 FF 00 DC CA
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0401
Changed data (H) FF00
Error check (H) DCCA (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

80
5.4.3 Servo ON/OFF <<SON>>

(1) Function
Control ON/OFF of the servo.
When “Servo ON” is specified by the new data, the servo will turn ON after elapse of the
manufacturer parameter “Servo ON delay time.” However, the following conditions must be satisfied:
• The EMG status bit in device status register 1 is 0.
• The major failure status bit in device status register 1 is 0.
• The enable status bit in device status register 2 is 1.
• The auto servo OFF status in the system status register is 0.

(2) Query Format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0403 Servo ON/OFF command
Changed data (H) 2 Arbitrary Servo ON: FF00H
Servo OFF: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 17

* If a teaching pendant or PC software is connected before the control establishes communication


with the host, the servo is turned OFF, and then the teaching pendant/PC software is removed, the
servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the RC controller power, or make sure the SIO port connection is removed while
the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

81
(4) Query sample
A sample query that turns on the servo of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 03 FF 00 7D 0A
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0403
Changed data (H) FF00
Error check (H) 7D0A (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

82
5.4.4 Alarm Reset <<ALRS>>

(1) Function
When the alarm reset edge is turned on (the data is first set to FF00H and then changed to 0000H),
alarms will be reset.
If any alarm cause has not been removed, the same alarm will be generated again. If the alarm
reset edge is turned on while the actuator is paused, the remaining travel will be cancelled.
When alarms are reset, make sure to write changed data of 0000H to restore the normal status.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0407 Alarm reset command
Changed data (H) 2 Arbitrary Execute alarm reset: FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

83
(4) Query sample
A sample query that resets the alarms of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
First time 01 05 04 07 FF 00 3C CB --- Execute alarm reset
Second time 01 05 04 07 00 00 7D 3B --- Restore normal status
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0407
Changed data (H) First time: FF00
Second time: 0000
(Write 0000H after resetting alarms to
restore the normal status.)
Error check (H) First time: 3CCB
(in accordance with CRC calculation)
Second time: 7D3B
(in accordance with CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

84
5.4.5 Brake Forced Release <<BKRL>>

(1) Function
Brake control is linked to servo ON/OFF. The brake can be forcefully released even when the servo
is ON.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0408 Break forced release
command
Changed data (H) 2 Arbitrary Brake forced release: FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

* If a teaching pendant or PC software is connected before the control establishes communication


with the host, the servo is turned OFF, and then the teaching pendant/PC software is removed, the
servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the RC controller power, or make sure the SIO port connection is removed
while the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

85
(4) Query sample
A sample query that forcefully releases the break of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 08 FF 00 0C C8
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0408
Changed data (H) FF00
Error check (H) 0CC8 (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

86
5.4.6 Pause <<STP>>

(1) Function
If the pause command is transmitted during movement, the actuator decelerates and stops. If the
status is set back to normal again, the actuator resumes moving for the remaining distance.
As long as the pause command is being transmitted, all motor movement is inhibited.
If the alarm reset command bit is set while the actuator is paused, the remaining travel will be
cancelled.
If this bit is set during home return, the movement command will be held if the actuator has not yet
reversed after contacting the mechanical end. If the actuator has already reversed after contacting
the mechanical end, home return will be repeated from the beginning.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 040A Pause command
Changed data (H) 2 Arbitrary Pause command: FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

87
(4) Query sample
A sample query that pauses a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 0A FF 00 AD 08
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 040A
Changed data (H) FF00
Error check (H) AD08 (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

88
5.4.7 Home Return <<HOME>>

(1) Function
Home return operation will start if a rising edge in the home return command signal is detected (the
data is first set to 0000H and then changed to FF00H). Upon home return completion, the HEND bit
will become 1. This command can be input as many times as desired even after home return
completion.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 040B Home return command
Changed data (H) 2 Arbitrary Execute home return: FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

*The servo must be ON before a home return command is issued.


If a teaching pendant or PC software is connected before the control establishes communication
with the host, the servo is turned OFF, and then the teaching pendant/PC software is removed, the
servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the RC controller power, or make sure the SIO port connection is removed
while the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

89
(4) Query sample
A query example that executes home return operation of a controller of axis No. 0 is shown here.
Query (silent intervals are inserted before and after the query)
First time 01 05 04 0B 00 00 BD 38 --- Set normal status
Second time 01 05 04 0B FF 00 FC C8 --- Execute home return
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 040B
Changed data (H) First time: 0000
Second time: FF00
(Send data twice to set the rising edge.)
Error check (H) First time: 3CCB
(in accordance with CRC calculation)
Second time: 7D3B
(in accordance with CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

90
5.4.8 Positioning Start Command <<CSTR>>

(1) Function
If the rising edge of the positioning start command is detected (the data is first set to 0000H and then
changed to FF00H), the actuator will move to the position specified by the position number stored in
the position number specification register (POSR). If nothing is done after the position start
command (FF00H is read and no new data is written), a position complete will not be output even
when the actuator enters the positioning band (write 0000H and restore the normal status).
If this command is executed when home return has never been performed after the power was
turned on (when the HEND bit is 0), the actuator will perform home return and then start moving to
the target position.
* The target position, speed and all other operation parameters must be set in the position table
(nonvolatile memory) of the controller in advance.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 040C Positioning start command
Changed data (H) 2 Arbitrary Positioning start command:
FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

91
(4) Query sample
A sample query that moves the actuator of a controller of axis No. 0 to the position specified by the
position number stored in the position number specification register (POSR) is shown below.
Query (silent intervals are inserted before and after the query)
First time 01 05 04 0C FF 00 4D 09 --- Move to the specified position
Second time 01 05 04 0C 00 00 0C F9 --- Restore to the normal status
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 040C
Changed data (H) First time: FF00
Second time: 0000
(Restore to the normal status.)
Error check (H) First time: 4D09
(in accordance with CRC calculation)
Second time: 0CF9
(in accordance with CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

92
5.4.9 Jog/Inch Switching <<JISL>>

(1) Function
This bit switches between jogging and inching.
If this bit switches while the actuator is jogging, the actuator will decelerate to a stop.
If this bit switches while the actuator is inching, the inching movement will continue.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0411 Jog/inch switching
Changed data (H) 2 Arbitrary Inching operation status:
FF00H
Jogging operation status:
0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

93
(4) Query sample
A sample query that switches the operation of a controller of axis No. 0 to inching is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 11 FF 00 AD 08
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0411
Changed data (H) FF00
Error check (H) AD08 (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

94
5.4.10 Teaching Mode Command <<MOD>>

(1) Function
This bit switches between the normal operation mode and teaching mode.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Arbitrary Axis number + 1 (01H to 10H)
Slave address (H) 1 00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 0414 Switch between the normal
2
mode and the teaching mode.
Changed data (H) Arbitrary Teaching mode: FF00H
2
Normal operation mode: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

95
(4) Query sample
A sample query that switches the operation mode of a controller of axis No. 0 to teaching mode is
shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 14 FF 00 CD 0E
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0414
Changed data (H) FF00
Error check (H) CD0E (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

96
5.4.11 Position Data Load Command <<TEAC>>

(1) Function
The current position is acquired by writing this command (write FF00H) when the teaching mode
command (5.4.10) is FF00H (teaching command).
The current position data will be written in the position number specified by the position number
specification register when the aforementioned condition was detected.
If other position data fields are empty, the default parameter values will be written at the same time
in the empty fields other than the target position (positioning band INP, speed VCMD,
acceleration/deceleration speed ACMD, and control flag CTLF).
After sending this command (write FF00H), keep the status as is for 20 msec or longer.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0415 Position data load command
Changed data (H) 2 Arbitrary Position data load command:
FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

97
(4) Query sample
A sample query that acquires the current position when a controller of axis No. 0 is in the teaching
mode is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 15 FF 00 9C CE
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0415
Changed data (H) FF00
Error check (H) 9CCE (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

98
5.4.12 Jog+ Command <<JOG+>>

(1) Function
• The actuator performs either jog or inching operation.
If the jog+ command (changed data FF00H) is sent when the jog/inch switching command (5.4.9) is
set to 0000H (set to jog), the actuator will jog in the direction opposite home. The speed and
acceleration/deceleration speed conform to the PIO jog speed set by user parameter No. 26 and
rated acceleration/deceleration speed, respectively.
If the jog+ command (changed data 0000H) is sent or the jog- command (5.4.13, changed data
FF00H) is sent while the actuator is moving jog, the actuator will decelerate to a stop.
• If the jog+ command rising edge is set (the data is first set to 0000H and changed to FF00H) while
the jog/inch switching command (5.4.9) is FF00H (set to inching), the actuator will inch in the
direction opposite home. The speed, travel and acceleration/deceleration speed conform to user
parameter No. 26 (PIO jogging speed), user parameter No. 48 (PIO inching distance), and rated
acceleration/deceleration speed, respectively.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0416 Jog+ command
Changed data (H) 2 Arbitrary Jog+ command: FF00H
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

99
(4) Query sample
(1) A sample query that makes a controller of axis No. 0 jog is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 16 FF 00 6C CE
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0416
Changed data (H) FF00
Error check (H) 6CCE (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

(2) A sample query that makes a controller of axis No. 0 inch is shown below.
Query (silent intervals are inserted before and after the query)
First time 01 05 04 16 FF 00 6C CE --- Perform inching movement
Second time 01 05 04 16 00 00 2D 3E --- Restore the normal status
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0416
Changed data (H) First time: FF00
Second time: 0000
(Restore the normal status.)
Error check (H) First time: 6CCE
(in accordance with CRC calculation)
Second time: 2D3E
(in accordance with CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

100
5.4.13 Jog- Command <<JOG->>

(1) Function
• The actuator performs either jog or inching operation.
If the jog- command (changed data FF00H) is sent when the jog/inch switching command (5.4.9) is
set to 0000H (set to jog), the actuator will jog in the direction of home. The speed and
acceleration/deceleration speed conform to the PIO jog speed set by user parameter No. 26 and
rated acceleration/deceleration speed, respectively.
If the jog- command (changed data 0000H) is sent or the jog+ command (5.4.12, changed data
FF00H) is sent while the actuator is moving, the actuator will decelerate to a stop.
• If the jog- command rising edge is set while the jog/inch switching command (5.4.9) is FF00H (set
to inching), the actuator will inch in the direction of home. The speed, travel and
acceleration/deceleration speed conform to user parameter No. 26 (PIO jogging sped), user
parameter No. 48 (PIO inching distance), and rated acceleration/deceleration speed, respectively.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Arbitrary Axis number + 1 (01H to 10H)
Slave address (H) 1 00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0417 Jog- command
Changed data (H) Arbitrary Jog- command: FF00H
2
Normal: 0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

101
(4) Query sample
(1) A sample query that makes a controller of axis No. 0 jog is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 17 FF 00 3D 0E
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0417
Changed data (H) FF00
Error check (H) 3D0E (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

(2) A sample query that makes a controller of axis No. 0 inch is shown below.
Query (silent intervals are inserted before and after the query)
First time 01 05 04 17 FF 00 3D 0E --- Perform inching movement
Second time 01 05 04 17 00 00 7C FE --- Restore the normal status
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0417
Changed data (H) First time: FF00
Second time: 0000
(Restore the normal status)
Error check (H) First time: 3D0E
(in accordance with CRC calculation)
Second time: 7CFE
(in accordance with CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

102
5.4.14 Start Positions 0 to 7 <<ST0 to ST7>>
Movement Command (Limited to PIO Patterns 4 and 5)

(1) Function
The actuator moves to the specified position number position.
The movement command for start position 0 to 7 is effective only when PIO pattern 4 or 5 (solenoid
valve mode) is selected.
The movement command is sent by enabling either one of ST0 to ST7 in 5.4.14 (5), “Start address”
(write new value FF00H when 0000H is set).
If a position other than the valid start positions is selected, “085: Moving position number error” will
be generated.
Either level operation or edge operation can be selected using user parameter No. 27, “Movement
command type.”

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO
Start address (H) 2 Arbitrary Refer to 5.4.14 (5), “Start
address.”
Changed data (H) 2 Arbitrary *1 Operation command ON:
FF00H
Operation command OFF:
0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

*1 If user parameter No. 27, “Movement command type” is set to “level operation,” the actuator
decelerates to a stop by overwriting FF00H with 0000H.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

103
(4) Query sample
A sample query that moves a controller of axis No. 0 to start position 2 is shown below.
An example of start position setting.

Position Speed Acceleration Deceleration


[mm] [mm/s] [G] [G]

Fig. 5.2

Query (silent intervals are inserted before and after the query)
First time 01 05 04 1D 00 00 5C FC --- Write 0000H to set the edge
Second time 01 05 04 1D FF 00 1D 0C --- Movement command
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 041D
Changed data (H) First time: 0000
Second time: FF00
Error check (H) First time: 5CFC
(in accordance with CRC
calculation)
Second time: 1D0C
(in accordance with CRC
calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

(5) Start address


Address Symbol Name Function
0418 ST7 Start position 7 Move to position 7
0419 ST6 Start position 6 Move to position 6
041A ST5 Start position 5 Move to position 5
041B ST4 Start position 4 Move to position 4
041C ST3 Start position 3 Move to position 3
041D ST2 Start position 2 Move to position 2
041E ST1 Start position 1 Move to position 1
041F ST0 Start position 0 Move to position 0

104
5.4.15 PIO/Modbus Switching Setting <<PMSL>>

(1) Function
PIO external command signals can be enabled or disabled.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 0427 PIO/Modbus switching setting
Changed data (H) 2 Arbitrary *1 Enable Modus commands:
FF00H
Disable Modbus commands:
0000H
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

*1 • Enable Modbus commands (ON) (disable PIO command): FF00H


Operation via PIO signals is not possible.
• Disable Modbus commands (OFF) (enable PIO command): 0000H
Operation via external PIO signals is possible.
TIP If the Modbus command is enabled, the PIO status at change is maintained.
If the Modbus command is switched to disabled, the operation status changes according to
the current PIO status. Note that even if the status of signals that operate via edge
detection has been changed, edge detection is ignored.

(3) Precaution
„ On a model equipped with an operation mode switch, “Enable PIO commands” will be specified
when the switch is set to the AUTO mode, or “Disable PIO commands” will be specified when the
switch is set to the MANU mode.
„ On a non-PIO model, the default setting is “Disable PIO commands.”
„ If IAI’s tool (teaching pendant or PC software) is connected, “Teaching modes 1, 2” and “Monitor
modes 1, 2” are available as tool modes. The correspondence between these modes and PIO
enable/disable specifications are as follows:
“Monitor modes 1, 2” → “Enable PIO commands”
“Teaching modes 1, 2” → “Disable PIO commands”

105
(4) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

(5) Query sample


A sample query that enables the Modbus command of the operation of a controller of axis No. 0 is
shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 27 FF 00 3D 01
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0427
Changed data (H) FF00
Error check (H) 3D01 (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

106
5.4.16 Deceleration Stop <<STOP>>

(1) Function
The actuator will start decelerating to a stop when the deceleration stop command edge (write
FF00H) is turned on.

(2) Query format


Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 05 Write to a single coil DO.
Start address (H) 2 042C Deceleration stop setting
Changed data (H) 2 Arbitrary Deceleration stop command
(ON): FF00H
* The controller automatically
resets the value to 0000H.
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes 8

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

107
(4) Query sample
A sample query that decelerates to a stop of a controller of axis No. 0 is shown below.
Query (silent intervals are inserted before and after the query)
01 05 04 2C FF 00 4C C3
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 05
Start address (H) 0427
Changed data (H) FF00
Error check (H) 4CC3 (in accordance with
CRC calculation)
End Silent interval

If the change is successful, the response message will be the same as the query.

108
5.5 Direct Writing of Control Information (Queries Using Code 06)

5.5.1 Writing to Registers

(1) Function
These queries change (write) data in registers of a slave.
In case of broadcast, data of registers of the same address of all slaves is changed.
Refer to 4.3.2 (1), “Data of device control register 1.”
Alternatively please refer to 4.3.2 (2), “Data of device control register 2” or 4.3.2 (3), “Data of
position number specification register.”

(2) Start address list


Address Symbol Name Sign Byte
0D00 DRG1 Device control register 1 2
0D01 DRG2 Device control register 2 2
0D03 POSR Position number specification register 2

The registers above are control command registers. The bits of these registers are assigned to input
ports by PIO patterns when “PIO/Modbus Switch Status (PMSS) (refer to 5.3.8) is set to “disable
Modbus commands (enable PIO commands). These registers can be rewritten when the Modbus
commands are enabled (PIO commands are disabled).

109
(3) Query format
Specify the address and data of the register whose data is to be changed in the query message.
Data to be changed shall be specified as 16-bit data in the changed data area of the query.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 1 06 Writing to registers
Start address (H) 2 Arbitrary Refer to 5.5.1 (2), “Start
address list.”
Changed data (H) 2 Arbitrary 4.3.2 (1) to 4.3.2. (3)
Refer to List of changed data.
Error check (H) 2 In accordance with
the calculation
result
End None Silent interval
Total number of bytes 10

(4) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

110
(5) Query sample
A sample query that turns the servo of a controller of axis No. 0 on and then executes home return
operation is performed.
Query (silent intervals are inserted before and after the query)
First time 01 06 0D 00 10 00 86 A6 --- Servo ON
Second time 01 06 0D 00 10 10 87 6A --- Home return
Field RTU mode
8-bit data
Start Silent interval
Slave address (H) 01
Function code (H) 06
Start address (H) 0D00
Changed data (H) First time: 1000
Second time: 1010
(Keep the servo ON bit 1 in cases
other than when the servo is OFF.)
Error check (H) First time: 86A6
(in accordance with CRC calculation)
Second time: 876A
(in accordance with CRC calculation)
End Silent interval

* (1) Home return is not performed even if 1010H is sent to change the data while the servo is OFF
(refer to the timing chart at startup of each RC controller).
(2) To keep the previous status, send the previous status even if there is no change. As in the
example above, keep the servo ON bit as 1 at home return as well.

If the change is successful, the response message will be the same as the query.

111
5.6 Direct Writing of Positioning Data (Queries Using Code 10)

5.6.1 Numerical Value Movement Command

(1) Function
Specify the target position in PTP positioning operation using absolute coordinates. It is possible to
command the actuator to move via numerical values by writing directly to the group of registers at
addresses from 9900H to 9908H (can be set in one message).
Values of all registers, other than the control flag specification register (address: 9908H), will become
effective once the values are sent. If there is no need to change the target position, positioning
band, speed, acceleration/deceleration, push-current limiting value and control specification,
therefore, each subsequent numerical movement command can be issued simply by writing a
desired register that can effect an actual movement command based on changing of the applicable
register alone (refer to “Start address list”).

(2) Start address list


This group of registers is used to move the actuator by specifying the target position coordinates,
positioning band, speed acceleration/deceleration, push-operation current limit control specification
flags and so on as numerical values.
Data of start addresses in the list (6 registers in total) can be changed with one transmission.
Able to effect an actual
Address movement command by Register Byte
Symbol Name Sign changing the applicable Unit
(H) size size
register alone
Target position
9900 PCMD { { 2 4 0.01 mm
specification register
Positioning band
9902 INP x 2 4 0.01 mm
specification register
Speed specification
9904 VCMD { 2 4 0.01 mm/sec
register
Acceleration/deceleration
9906 ACMD { 1 2 0.01 G
specification register
Push-current limiting value
9907 PPOW { 1 2 %
specification register
x
Control flag specification
9908 CTLF Initialization after 1 2 ---
register
each movement

112
(3) Query format
1 register = 2 bytes = 16-bit data
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H if broadcast is specified
Function code (H) 1 10 Numerical value specification
Start address (H) 2 Arbitrary Refer to 5.6.1 (2), “Start
address list”
Number of registers (H) 2 Arbitrary Refer to 5.6.1 (2), “Start
address list”
Number of bytes (H) 1 In accordance with Enter the value twice as large
the number of as the number of registers
registers above specified above
Changed data 1 (H) 2 Refer to 5.6.1 (2), “Start
address list ”
Changed data 2 (H) 2 Refer to 5.6.1 (2), “Start
address list”
Changed data 3 (H) 2 Refer to 5.6.1 (2), “Start
address list”
: : :
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes Up to 256

(4) Response format


When normally changed, the response message responds with a copy of the query message
excluding the number of bytes and changed data.
Field Number of data items RTU mode Remarks
(number of bytes) 8-bit data
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H if broadcast is specified
Function code (H) 1 10 Numerical value specification
Start address (H) 2 Arbitrary Refer to 5.6.1 (2), “Start
address list”
Number of registers (H) 2 Arbitrary Refer to 5.6.1 (2), “Start
address list”
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes Up to 256 Up to 256

113
(5) Detailed explanation of registers

„ Target position specification register (PCMD)


This register specifies the target position in PTP positioning operation using absolute coordinates.
The value of this register is set in units of 0.01 mm in a range of –999999 to 999999. When a
position is specified using absolute coordinates and the specified value exceeds the soft limit set
by a parameter, an alarm will generate the moment a movement start command is issued. The
actuator will start moving when the lower word of this register (symbol: PCMD, address: 9900H) is
rewritten. In other words, a numerical movement command can be issued simply by writing
a target position in this register.

„ Positioning band register (INP)


This register is used in two different ways depending on the type of operation.
The first way is the normal positioning operation, where it specifies the allowable difference
between the target position and current position to be used in the detection of position complete.
The second way is the push-motion operation, where it specifies the push-motion band. The
value of this register is set in units of 0.01 mm in a range of 0 to 999999. Whether the normal
operation or push-motion operation is specified by the applicable bit in the control flag
specification register as explained later.
Changing this register alone will not start actuator movement.

„ Speed specification register (VCMD)


This register specifies the moving speed. The value of this register is set in units of 0.01 mm/sec
in a range of 0 to 999999. If the specified value exceeds the maximum speed set by a parameter,
an alarm will generate the moment a movement start command is issued.
The actuator will start moving when this lower word of this register is rewritten. In other
words, the speed can be changed while the actuator is moving, simply by rewriting this register.

114
„ Acceleration/deceleration specification register (ACMD)
This register specifies the acceleration or deceleration. The value of this register is set in units of
0.01 G in a range of 0 to 300. If the specified value exceeds the maximum acceleration or
deceleration set by a parameter, an alarm will generate the moment a movement start command
is issued.
The actuator will start moving when this register is rewritten. In other words, the
acceleration/deceleration can be changed while the actuator is moving, simply by rewriting this
register.

„ Push-current limiting value (PPOW)


Set the current limit during push-motion operation in PPOW. The current limiting value is set as
one of 256 levels, with FFH representing the maximum current. Due to the actuator limitations,
the push-current limiting value should be set in range of 20% to 70% * (33H to B3H). The
specific range varies depending on the actuator, so refer to the IAI catalog or operation
manual for your actuator.
The actuator will start moving when this register is rewritten. In other words, the current
limiting value can be changed during push-motion operation simply by rewriting this register.
Sample push-motion current setting
* When setting the current to 20%
256 x 0.2 = 51.2 → 33H (converted to a hexadecimal value)

115
„ Control Flag Specification Register (CTLF)
This parameter consists of the following bit pattern that sets the respective operations.
This register will be overwritten by the default parameter value once the actuator starts
moving.
Bit 0 = 0: Fixed
Bit 1 = 0: Normal operation
1: Push-motion operation
Bit 2 = 0: The direction of push-motion operation after completion of approach is defined as the
forward direction.
1: The direction of push-motion operation after completion of approach is defined as the
reverse direction.
This bit is used to calculate the direction of final stop position from PCMD. If this bit is set
incorrectly, therefore, the target position will deviate from the specified position by a
distance corresponding to “2 x INP,” as shown in Fig. 5.3 below.
If bit 1 is set to 0, the setting of this bit is invalid.
Speed

Start position

Fig. 5.3

Bit 3 = 0: Normal operation


1: Incremental operation

Setting this bit to 1 will enable the actuator to operate relative to the current position.
In this operation, the actuator behaves differently between normal operation and push-
motion operation (CTLF bit 1). While the travel is calculated with respect to the target
position (PCMD) in normal operation, it is calculated relative to the current position in
push-motion operation (when bit 1 = 1).
Here, since relative coordinate calculation involves adding up pulses in mm, followed by
conversion, unlike a calculation method involving addition after pulse conversion,
“repeated relative movements will not cause position deviation as a result of
cumulative errors corresponding to fraction pulses that are not divisible with
certain lead settings”.

116
(6) Input value (changed data)
Numerical value expressed in the specified unit (decimal) and bit data

Conversion to hexadecimal

Input value in a query format

(7) Sample register input flow

a) Flow of normal operation 1 (changing the target position data)


Conditions: The operation conditions conform to the default speed, default
acceleration/deceleration and default positioning band set by the controller’s user
parameters. Only the target position is changed to move the actuator.
Tip: Controller’s user parameters
• Default speed (parameter No. 8) → Maximum speed stated in the IAI’s catalog for each
actuator
• Default acceleration/deceleration (parameter No. 9) → Rated acceleration/deceleration stated
in the IAI’s catalog for each actuator
• Default positioning band (parameter No. 10) → Default value = 0.1 mm

Write the target position specification register (9900H)

Start normal operation

b) Flow of normal operation 2 (changing the positioning data)


Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved.

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

117
c) Flow of normal operation 3 (changing speed during movement)
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the actuator speed changed at a given timing during
movement.

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

Write the speed specification registers (9904H and 9905H)

The actuator continues with the normal operation at the new speed

d) Flow of incremental positioning operation 1 (incremental move) (changing pitch width)


Conditions: The operation conditions conform to the default speed, default
acceleration/deceleration and default positioning band set by the controller’s user
parameters. Only the pitch width is changed to move the actuator.
Method 1
Write the control flag specification register (9908H: Incremental setting)

Write the target position specification register (9900H)

Start normal operation

Method 2
Write the target position specification register (9900H) through
control flag specification register (9908H: Incremental setting)

Start normal operation

Tip: Addresses 9900H and 9908H alone cannot be changed in a single data transmission.
Since addresses must be continuous, you must send two messages to change
9900H and 9908H (method 1), or if you want to change them in a single message
transmission, all addresses from 9900H through 9908H must be written (method 2).
If method 2 is to be used, the speed, acceleration/deceleration and positioning band
will also be written, which means that the values of user parameter Nos. 8, 9 and 10
will become invalid.

118
e) Flow of relative positioning operation 2 (incremental move) (changing speed during incremental
movement)
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the actuator speed changed at a given timing during
movement.

Write the target position specification register (9900H) through


control flag specification register (9908H: Incremental setting)

Start relative positioning operation

Write the speed specification register (9904H) through control


flag specification register (9908H: Incremental setting)

The actuator continues with the relative positioning operation at the new speed

Tip: Once the actuator starts moving after the control flag specification register (9908H:
Incremental setting) has been changed, the register will be reset (the setting will
change to 0H: Normal movement). In other words, the control flag specification register
(9908H) must be set to the incremental setting and sent again, even if you only wish to
change the speed.

119
f) Flow of push-motion operation (changing pushing force during push-operation)
Conditions: Perform push-motion operation by changing the push force at a desired timing while
the actuator is pushing the work.

Write the target position specification register (9900H) through


control flag specification register (9908H: Push-motion setting)

Start push-motion operation

Write the push-current limit specification register (9907H) through


control flag specification register (9908H: Push-motion setting)

The actuator continues with the push-motion operation with the new push force

g) Note (changing positioning band during movement)


The positioning band cannot be changed while the actuator is moving.
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the positioning band changed at a given timing during
movement.
(Cannot be changed. If data is written, the data is reflected in the next positioning.)

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

Write the positioning band specification registers (9902H and 9903H)

The actuator continues with the normal operation at the original positioning band setting

Tip: Writing the positioning band specification registers alone cannot effect an actual
movement command.
Therefore, the data changed by writing the positioning band specification registers
(9902H and 9903H) will become effective when the next movement command is
executed.

120
(8) Sample query
(1) A sample query that moves a controller of axis number 0 normally is shown below.

Target position Positioning band Speed Acceleration/deceleration Push


Movement control
(mm) (mm) (mm/sec) (G) (%)
50 0.1 100 0.3 0 Normal movement

„ Query (silent intervals are inserted before and after the query)
01 10 99 00 00 09 12 00 00 13 88 00 00 00 0A 00 00 27 10 00 1E 00 00 00 00 9F 82

„ Response 01 10 99 00 00 09 2E 93
--- The response message responds with a copy of the query message excluding the
number of bytes and changed data.

„ Details of query message


RTU mode
Field Remarks
8-bit data
Start None Silent interval
Slave address 01H Axis No. 0 + 1
Function code 10H
The start address is the target position specification
Start address 9900H
register 9900H.
Specify 9900H through 9908H as the addresses to be
Number of registers 0009H
written.
Number of bytes 12H 9 (registers) x 2 = 18 (bytes) → 12H
Changed data 1, 2 0000H 32-bit data, where the upper bits are all 0
(target position)
Input unit (0.01 mm) 1388H 50 (mm) x 100 = 5000 → 1388H
Changed data 3, 4 0000H 32-bit data, where the upper bits are all 0
(positioning band)
Input unit (0.01 mm) 000AH 0.1 (mm) x 100 = 10 → 000AH
Changed data 5, 6 (speed) 0000H 32-bit data, where the upper bits are all 0
Input unit (0.01 mm/sec) 2710H 100 (mm/sec) x 100 = 10000 → 2710H
Changed data 7
(acceleration/deceleration) 001EH 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 8 (push)
0000H 0 (%) → 0H
Input unit (%)
Changed data 9 (control All bits are 0, because normal operation is specified.
0000H
flag) 0000b → 0000H
Error check 9F82H CRC check calculation result → 9F82H
End None Silent interval
Total number of bytes 27

121
(2) A sample query that pitch-feed a controller of axis No. 0 (relative position movement) is shown
below.

Target position Positioning band Speed Acceleration/deceleration Push


Movement control
(mm) (mm) (mm/sec) (G) (%)
10 0.1 100 0.3 0 Incremental

„ Query (silent intervals are inserted before and after the query)
01 10 99 00 00 09 12 00 00 03 E8 00 00 00 0A 00 00 27 10 00 1E 00 00 00 08 F3 A0

„ Response 01 10 99 00 00 09 2E 93
--- The response message responds with a copy of the query message excluding the
number of bytes and changed data.

„ Details of query message


RTU mode
Field Remarks
8-bit data
Start None Silent interval
Slave address 01H Axis No. 0 + 1
Function code 10H
The start address is the target position specification
Start address 9900H
register 9900H.
Specify 9900H through 9908H as the addresses to be
Number of registers 0009H
written.
Number of bytes 12H 9 (registers) x 2 = 18 (bytes) → 12H
Changed data 1, 2 0000H 32-bit data, where the upper bits are all 0
(target position)
Input unit (0.01 mm) 03E8H 10 (mm) x 100 = 1000 → 03E8H
Changed data 3, 4 0000H 32-bit data, where the upper bits are all 0
(positioning band)
Input unit (0.01 mm) 000AH 0.1 (mm) x 100 = 10 → 000AH
Changed data 5, 6 (speed) 0000H 32-bit data, where the upper bits are all 0
Input unit (0.01 mm/sec) 2710H 100 (mm/sec) x 100 = 10000 → 2710H
Changed data 7
(acceleration/deceleration) 001EH 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 8 (push)
0000H 0 (%) → 0H
Input unit (%)
Bit 3 is 1, because relative position movement is
Changed data 9 (control
0008H specified.
flag)
1000b → 0008H
Error check F3A0H CRC check calculation result → F3A0H
End None Silent interval
Total number of bytes 55

122
5.6.2 Writing Position Table Data

(1) Function
Position table data can be changed using this query.
Each time an address specified in “Start address list” (addresses +0000H through +000EH) is
accessed, the applicable data will be read from the EEPROM in units of position data. After having
been written, the data will be stored in the EEPROM again.

* The number of times allowed to write to EEPROM is limited to approximately 100,000 times due to
device restriction. If the position table data is updated frequently, the number of times allowed to
write to EEPROM may be exceeded, which may cause failures. Take caution not to cause
unexpected loops and similar in logic on the master side.

(2) Start address list


In a query input, each address is calculated using the formula below:
1000H + (16 x Position number) H + Address (Offset) H

Example Change the speed command register for position No. 200
1000H + (16 x 200 = 3200) H + 4H
= 1000H + C80H + 4H
= 1C84H
“1C84” becomes the input value for the start address field of this query.
* The maximum position number varies depending on the controller model and the PIO pattern
currently specified.

„ Position data change resisters


Register Byte Input
Address Symbol Name Sign
size size unit
+0000 PCMD Target position { 2 4 0.01 mm
+0002 INP Positioning band 2 4 0.01 mm
+0004 VCMD Speed command 2 4 0.01 mm/sec
+0006 ZNMP Individual zone boundary + { 2 4 0.01 mm
+0008 ZNLP Individual zone boundary - { 2 4 0.01 mm
+000A ACMD Acceleration command 1 2 0.01 G
+000B DCMD Deceleration command 1 2 0.01 G
+000C PPOW Push-current limiting value 1 2 %
+000D LPOW Load current threshold 1 2 %
+000E CTLF Control flag specification 1 2
* Addresses starting with “+” indicate offsets.

123
(3) Query format
1 register = 2 bytes = 16-bit data
Number of
data items RTU mode
Field Remarks
(Number of 8-bit data
bytes)
Start None Silent interval
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 1 10 Numerical value command
Start address (H) 2 Arbitrary Refer to 5.6.2 (2), “Start address list.”
Number of registers (H) 2 Arbitrary Refer to 5.6.2 (2), “Start address list.”
Number of bytes (H) 1 In accordance
A value corresponding to twice the number
with the above
of registers specified above is input.
registers
Changed data 1 (H) 2 Refer to “5.6.2 (2) Start address list.”
Changed data 2 (H) 2 Refer to “5.6.2 (2) Start address list.”
Changed data 3 (H) 2 Refer to “5.6.2 (2) Start address list.”
: : :
Error check (H) CRC (16 bits)
End None Silent interval
Total number of bytes Up to 256

(4) Response format


If the change is successful, a response message that is effectively a copy of the query message,
except for the byte count and new data, will be returned.
Number of
data items RTU mode
Field Remarks
(Number of 8-bit data
bytes)
Start None Silent mode
Slave address (H) 1 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 1 10 Numerical value command
Start address (H) 2 Arbitrary Refer to 5.6.2 (2), “Start address list.”
Number of registers (H) 2 Arbitrary Refer to 5.6.2 (2), “Start address list.”
Error check (H) 2 CRC (16 bits)
End None Silent interval
Total number of bytes Up to 256

124
(5) Detailed explanation of registers

„ Target Position (PCMD)


This register specifies the target position using absolute coordinates or by an relative distance.
The value of this register is set in units of 0.01 mm in a range of -999999 to 999999. When a
position is specified using absolute coordinates and the specified value exceeds the soft limit set
by a parameter, an alarm will generate the moment a movement start command is issued.
Specify whether to use absolute coordinates or relative distance using the applicable bit in the
control flag specification register as explained later.

„ Positioning band Specification Register (INP)


This register is used in two different ways depending on the type of operation. The first way is
the normal positioning operation, where it specifies the allowable difference between the target
position and current position to be used in the detection of position complete. The second way is
the push-motion operation, where it specifies the push-motion band. The value of this register is
set in units of 0.01 mm in a range of 0 to 999999.
Whether the normal operation or push-motion operation is specified by the applicable bit in the
control flag specification register as explained later.

„ Speed Specification Register (VCMD)


This register specifies the moving speed in positioning. The value of this register is set in units of
0.01 mm/sec in a range of 0 to 999999. If the specified value exceeds the maximum speed set
by a parameter, an alarm will generate the moment a movement start command is issued.

„ Individual Zone Boundaries ± (ZNMP, ZNLP)


These registers output zone signals that are effective only during positioning, separately from
the zone boundaries set by parameters.
Set in ZNMP the positive zone signal output boundary expressed using absolute coordinates,
and set the negative zone signal output boundary in ZNLP. The corresponding bit in the zone
register remains ON while the current position is within these positive and negative boundaries.
The value of this register is set in units of 0.01 mm, and in a range of -999999 to 999999 for both
registers. However, ZNMP must be greater than ZNLP.
Set the same value in both ZNMP and ZNLP to disable the individual zone output.

„ Acceleration Specification Register (ACMD)


This register specifies the acceleration during positioning. The value of this register is set in units
of 0.01 G in a range of 0 to 300. If the specified value exceeds the maximum acceleration set by
a parameter, an alarm will generate the moment a movement start command is issued.

125
„ Deceleration Specification Register (DCMD)
This register specifies the deceleration during positioning. The value of this register is set in units
of 0.01 G in a range of 0 to 300. If the specified value exceeds the maximum deceleration set by
a parameter, an alarm will generate the moment a movement start command is issued.

„ Push-current Limiting Value (PPOW)


Set the current limit in push-motion operation in PPOW. The current limiting value is set as one
of 256 levels, with FFH representing the maximum current. Due to the actuator limitations, the
push-current limiting value should be set in range of 20% to 70% (33H to B3H).

„ Load Output Current Threshold (LPOW)


To perform load output judgment, set the current threshold in LPOW. Set a desired value as one
of 256 levels, with FFH representing the maximum current. If load output judgment is not
performed, set 0.

„ Control Flag Specification Register (CTLF)


This parameter consists of the following bit pattern that sets the respective operations.

Bit 1 = 0: Normal operation


1: Push-motion operation
Bit 2 = 0: The direction of push-motion operation after completion of approach operation
represents the forward direction.
1: The direction of push-motion operation after completion of approach operation
represents the reverse direction.
Bit 3 = 0: Normal operation
1: Incremental operation

* All bits whose details are not explained are reserved.

(6) Input value (changed data)


Numerical value expressed in the specified unit (decimal) and bit data

Conversion to hexadecimal

Input value in a query format

126
(7) Sample query
A sample query that rewrites all data of position No. 12 of axis No. 0 is shown below.
Axis No. 0
Individual Individual
Target Positioning
Speed zone zone Acceleration Deceleration Push Movement
position band Threshold
(mm/sec) boundary+ boundary- (G) (G) (%) control
(mm) (mm)
(mm) (mm)
Normal
100 0.1 200 60 40 0.01 0.3 0 0 movement

„ Query (silent intervals are inserted before and after the query)
01 10 10 C0 00 0F 1E 00 00 27 10 00 00 00 0A 00 00 4E 20 00 00 17 70 00 00 0F A0 00 01
00 1E 00 00 00 00 00 00 70 1E

„ Received response 01 10 10 C0 00 0F 84 F1
--- The response message responds with a copy of the query message excluding
the number of bytes and changed data.

„ Details of query message


RTU mode
Field Remarks
8-bit data
Start None Silent interval
Slave address 01H Axis No. 0 + 1
Function code 10H
The start address is the target position specification
Start address 10C0H
register 10C0H for position No. 12. *1
Total 15 registers of register symbols PCMD to
Number of registers 000FH
CTLF are specified to be written.
Number of bytes 1EH 15 (registers) x 2 = 30 (bytes) → 1EH
Changed data 1, 2 0000H 32-bit data, where the upper bits are all 0
(target position)
Input unit (0.01 mm) 2710H 100 (mm) x 100 = 10000 → 2710H
Changed data 3, 4 0000H 32-bit data, where the upper bits are all 0
(positioning band)
Input unit (0.01 mm) 000AH 0.1 (mm) x 100 = 10 → 000AH
0000H 32-bit data, where the upper bits are all 0
Changed data 5, 6 (speed)
Input unit (0.01 mm/sec)
4E20H 200 (mm/sec) x 100 = 20000 → 4E20H
0FA0H 40 (mm) x 100 = 4000 → 0FA0H
Continue to the next page

127
Continued from the previous page
RTU mode
Field Remarks
8-bit data
Changed data 7, 8 0000H 32-bit data, where the upper bits are all 0
(individual zone boundary +)
Input unit (0.01 mm) 1770H 60 (mm) x 100 = 6000 → 1770H
Changed data 9, 10 0000H 32-bit data, where the upper bits are all 0
(individual zone boundary -)
Input unit (0.01 mm) 0FA0H 40 (mm) x 100 = 4000 → 0FA0H
Changed data 11
(acceleration) 0001H 0.01 (G) x 100 = 1 → 0001H
Input unit (0.01 G)
Changed data 12
(deceleration) 001EH 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 13 (push)
0000H 0 (%) → 0H
Input unit (%)
Changed data 14 (threshold)
0000H 0 (%) → 0H
Input unit (%)
Changed data 15 (control All bits are 0, because normal operation is specified.
0000H
flag) 0000b → 0000H
Error check 701EH CRC check calculation result → 701EH
End Silent interval
Total number of bytes 39

*1) Calculation of start address


In the example, all data of position No. 12 is changed. Accordingly, the target position address of
position No. 12 is set in the start address field of this query.
1000H + (16 x 12 =192) H + 0H
= 1000H + C0H + 0H
= 10C0H
“10C0” becomes the input value for the start address field of this query.

128
Shown below are the screens of IAI’s PC software for RC controllers, indicating how position data
changes before and after a query message is sent.

„ Before a query is sent

Fig. 5.4

„ After a query is sent

Fig. 5.5

* The overwritten data is not displayed until the button is pressed or the Edit Position Data window is
reopened.

129
6 Modbus ASCII

130
6.1 Message Frames (Query and Response)
Start Address Function code Data LRC Check End
1 character 2 characters 2 characters n characters 2 characters 2 characters
1 byte 2 bytes 2 bytes nx2 bytes 2 bytes 2 bytes
* 1 character is expressed with 1 byte (2 characters) in ASCII code (refer to 6.2 ASCII “Code
Table”).
(1) Start
The Start field is equivalent to the header field and “:” (colon) is used in the ASCII mode.
It is expressed as 3AH in ASCII code.

(2) Address
This field specifies the addresses of connected RC controllers (01H to 10H).
Set Address = axis number + 1 in ASCII code. Example) The axis number/is 30H32H.

Note: The address is not equal to the corresponding axis number: be careful when making settings.

(3) Function
The table below summarizes the function codes and functions that can be used with RC controllers.

Code
Name Function
(Hex) (ASCII)
01H 30H31H. Read Coil Status Read coils/DOs.
02H 30H32H. Read Input Status Read input statuses/DIs.
03H 30H33H. Read Holding Registers Read holding registers.
04H 30H34H. Read Input Registers Read input registers.
05H 30H35H. Force Single Coil Write one coil/DO.
06H 30H36H. Preset Single Register Write holding register.
07H 30H37H. Read Exception Status Read exception statuses.
0FH 30H46H. Force Multiple Coils Write multiple coils/DOs at once.
Write multiple holding registers at
10H 31H30H. Preset Multiple Registers
once.
11H 31H31H. Report Slave ID Query a slave’s ID.
17H 31H37H. Read / Write Registers Read/write registers.

* This manual uses mark function codes.


* The ROBONET gateway supports three types of function codes (03H, 06H and 10H).
(Refer to the separate ROBONET Instruction Manual.)
The ROBONET gateway does not support the ASCII mode.

131
(4) Data
Use this field to add data specified by a function code. It is also allowed to omit data if data
addition is not specified by function codes.

(5) LRC Check


In the ASCII mode, an error check field conforming to the LRC method is automatically (*)
included in order to check the message content excluding the first colon and CR/LF. Moreover,
checking is carried out regardless of the parity check method of individual characters in
messages.
The LRC field consists of two ASCII code characters. The LRC value is calculated by the
sender that appends the LRC field to the message. The recipient recalculates the LRC value
while receiving the message, and compares the calculation result against the actual value
received in the LRC field. If the two values do not match, an error will generate.
* The host side must create a function that calculates the LRC value.

z <LRC check calculation example> area is the target range of error check
In case the message query is as follows: [‘:’] [“01] [“05”] [“040B”] [“0000”] [LRC] [CR] [LF]
(1) First, add all numerical values in units of bytes.
Total value added = 01H + 05H + 04H + 0BH + 00H + 00H = 15H
(2) Next, an 8-bit-based 2’s complement of this value is computed, yielding the value
FFFFFFEBH. The LRC value is obtained by extracting the least significant byte. Thus the
LRC value is “EB.”

(6) End
This is equivalent to the trailer, and use “CR/LF” in the ASCII mode. In ASCII code, 00H and 0AH
are displayed.

(7) Broadcast
It is possible to send a query containing same data to all connected axes by specifying the address
00H. In this case, no response is returned from the RC controllers.
Note, however, that the function codes etc. that can be used with this function are limited; care
should be taken when using the function. Please check the function codes that can be used in 6.3,
“List of ASCII Mode Queries.”

PLC (master)

Address = 00H (command all axes)

RC controller RC controller RC controller


(slave) (slave) (slave)

Fig.6.1

132
Caution
• The sizes of send/receive buffers are set to 256 bytes for the RC controllers, respectively. Make
sure to keep the messages small enough such that messages sent from the host side do not
exceed the receive buffer and data requests do not exceed send buffer.

• If the number of data items results in an odd number of bytes, caution must be taken for the reasons
below.
The data is communicated on a byte-by-byte basis in Modbus communication.
In many cases, however, the data is treated in units of 2 bytes on the master side. If the number of
data items becomes odd, 00H (i.e., NULL) may be added automatically at the end of a packet in some
cases.
RC controllers are configured such that the Modbus RTU is basically used as the interface on the
master side. Since the controller normally stands by for reception in the RTU mode, and then makes
judgment whether the code is ASCII or not after the reception, it cannot manage header/delimiter
fields. For this reason, communication in the ASCII mode is disabled in such cases.
Example: In case of querying output ports of axis No. 0

1 byte NULL is added


Fig.6.2

1 word

133
6.2 ASCII Code Table

ASCII Code (numbers and characters enclosed with are converted and sent.)

Most significant

Least
significant

• NUL:
Null character • SOH: Start of header • STX:
Start of text
• ETX:
End of text • EOT: End of • ENQ:
Enquiry
• ACK:
Acknowledgment transmission • BS:Backspace
• HT:
Horizontal tab • BEL: Bell • VT:Vertical tab
• FF:
Form feed • LF: Line feed • SO:Shift out
• SI:
Shift in • CR: Carriage return • DC*:
Device control *
• NAC:
Negative • DLE: Data link escape • ETB:
End of
acknowledgment • SYN: Synchronized transmission block
• CAN: Cancel characters • DEL: Delete
• ESC: Escape • EM: End of media
• SP: Space

Example: “1” is 31H in ASCII code and “00110001” in binary number presentation.

134
6.3 List of ASCII Mode Queries
CombinationBroad-
FC Function Symbol Function with PIO Page
cast
Multiple FC03 This function can be used to successively {
03 None 139
register read read multiple registers that use function 03.
Current position This function reads the current actuator {
03 PNOW 142
monitor position in units of 0.01 mm.
Present alarm code This function reads alarm codes that are {
03 ALMC 144
query presently detected.
This function reads the ON/OFF statuses of {
03 Input port query DIPM 146
PIO input ports.
This function reads the ON/OFF statuses of {
03 Output port query DOPM 150
PIO output ports.
This function reads the following 12 statuses: {
[1] Emergency stop
[2] Safety speed enabled/disabled
[3] Controller ready
[4] Servo ON/OFF
Device status query 1 [5] Missed work in push-motion operation
03 (Operation preparation DSS1 [6] Major failure 154
status) [7] Minor failure
[8] Absolute error
[9] Brake
[10] Pause
[11] Home return completion
[12] Position complete
This function reads the following 15 statuses: {
[1] Enable
[2] Load output judgment (check-range
load current threshold)
[3] Torque level (load current threshold)
[4] Teaching mode (normal/teaching)
[5] Position data load (normal/complete)
Device status query 2 [6] Jog+ (normal/command active)
03 (Operation preparation 1 DSS2 [7] Jog- (normal/command active) 156
status) [8] Position complete 7
[9] Position complete 6
[10] Position complete 5
[11] Position complete 4
[12] Position complete 3
[13] Position complete 2
[14] Position complete 1
[15] Position complete 0

FC: Function code


PIO: Parallel I/O (input/output of an I/O connector)
The circle marks in the Simultaneous use with PIO and Broadcast columns indicate queries that can be
used simultaneously with PIO and in broadcast communication, respectively.

135
Combination Broad-
FC Function Symbol Function with PIO Page
cast
This function reads the following 9 statuses: {
[1] Emergency stop (emergency stop input
port)
[2] Motor voltage low
Expansion device [3] Operation mode (AUTO/MANU)
03 status query DSSE [4] Home return 158
(Operation information 2
status) [5] Push-motion operation in progress
[6] Excitation detection
[7] PIO/Modbus switching
[8] Position-data write completion status
[9] Moving
This function reads the following 7 statuses: {
[1] Automatic servo OFF
[2] EEPROM accessed
System status query [3] Operation mode (AUTO/MANU)
03 STAT 160
(Controller status) [4] Home return completion
[5] Servo ON/OFF
[6] Servo command
[7] Drive source ON (normal/cut off)
Current speed This function reads the current actuator {
03 VNOW 162
monitor speed in units of 0.01 mm/sec.
Current ampere This function reads the motor-torque current {
03 CNOW 164
monitor command value of the actuator in mA.
This function reads the deviation over a 1-ms {
03 Deviation monitor DEVI 166
period in pulses.
System timer This function reads the total time in msec {
03 STIM 168
monitor since the controller power was turned on.
This function reads the following 9 statuses: {
[1] Command pulse NP
[2] Command pulse PP
[3] Port switch
Special input port [4] Mode switch
03 query SIPM 170
[5] Enable switch
(Sensor input status)
[6] Home check sensor
[7] Overtravel sensor
[8] Creep sensor
[9] Limit sensor

136
Combination Broad-
FC Function Symbol Function with PIO Page
cast
This function reads the following 6 statuses: {
[1] LS2 (PIO pattern solenoid valve mode
[3-point type]
[2] LS1 (PIO pattern solenoid valve mode
[3-point type]
03 Zone status query ZONS 172
[3] LS0 (PIO pattern solenoid valve mode
[3-point type]
[4] Position zone
[5] Zone 2
[6] Zone 1
This function reads the following 9 statuses: {
[1] Position complete number bit 256
[2] Position complete number bit 128
[3] Position complete number bit 64
Position complete [4] Position complete number bit 32
03 POSS 174
number query [5] Position complete number bit 16
[6] Position complete number bit 8
[7] Position complete number bit 4
[8] Position complete number bit 2
[9] Position complete number bit 1
Safety speed mode This function issues a command to {
05 SFTY 177
switching enable/disable the safety speed.
This function issues a command to turn the {
05 Servo ON/OFF SON 179
servo ON/OFF.
This function issues a command to reset {
05 Alarm reset ALRS 181
alarms/cancel the remaining travel.
This function issues a command to forcibly {
05 Brake release BKRL 183
release the brake.
05 Pause STP This function issues a pause command. { 185
This function issues a home return operation {
05 Home return HOME 187
command.
This function turns the start signal ON/OFF {
for movement by position number
05 Positioning start CSTR 189
specification.
(This function is not used in this manual.)
This function switches between the jogging {
05 Jog/inch switching JISL 191
mode and the inching mode
Teaching mode This function switches between the normal {
05 MOD 193
command mode and the teaching mode
This function issues a current position load {
05 Position data load TEAC 195
command in the teaching mode.
This function issues a jogging/inching {
05 Jog+ JOG+ 197
command in the direction opposite home.
This function issues a jogging/inching {
05 Jog- JOG- 199
command in the direction of home.

137
Combination Broad-
FC Function Symbol Function with PIO Page
cast
This function specifies position numbers {
Position number ST0 to effective only in the solenoid valve mode.
05 201
specification 0 to 7 ST7 The actuator can be operated with this
command alone. *
This function issues a command to {
PIO/Modbus
05 PMSL enable/disable PIO external command 203
switching setting
signals.
This function can decelerate the actuator to {
05 Deceleration stop STOP 205
a stop.
Normal movement, relative movement and {
Movement by
push-motion operation can be performed by
06 position number POSR 207
position number specification using this
specification
command alone.
This function can be used to send the target {
position, positioning band, speed,
acceleration/deceleration, push, and control
Numerical
10 None setting in a single message to operate the 210
movement command
actuator. Normal movement, relative
movement and push-motion operation are
supported.
This function can be used to change all data {
Position data table
10 None of the specified position number for the 221
write
specified axis.
Indeter- This response will be returned when the
minable Exception response None 229
message contains invalid data.

* It is necessary to set positioning data in the position table in advance.


(1) Use the teaching tool.
(2) Use the position data table writing function.

138
6.4. Data and Status Reading (queries Using Code 03)

6.4.1 Reading Consecutive Multiple Registers


* Please refer to “6.2
ASCII Code Table.”
(1) Function
These registers read the contents of registers in a slave.
This function is not supported in broadcast communication.

(2) Start address list


With RC Series controllers, the sizes of send/receive buffers are set to 256 bytes, respectively.
Accordingly, a maximum of 123 registers’ worth of data consisting of 247 bytes (one register uses
two bytes), which is 9 bytes (header + slave address + function code + error check + trailer) of 256
bytes, can be queried in the ASCII mode. In other words, all of the data listed below (total 21
registers) can be queried in a single communication.

Address (H) Symbol Name Sign Register size Byte


9000 PNOW Current position monitor { 2 4
9002 ALMC Present alarm code query 1 2
9003 DIPM Input port query 1 2
9004 DOPM Output port monitor query 1 2
9005 DSS1 Device status query 1 1 2
9006 DSS2 Device status query 2 1 2
9007 DSSE Expansion device status query 1 2
9008 STAT System status query 2 4
900A VNOW Current speed monitor { 2 4
900C CNOW Current ampere monitor { 2 4
900E DEVI Deviation monitor { 2 4
9010 STIM System timer query 2 4
9012 SIPM Special input port query 1 2
9013 ZONS Zone status query 1 2
9014 POSS Position complete number status query 1 2

139
(3) Query format
In a query message, specify the address of the register from which to start reading data, and
number of bytes in registers to be read.
1 register = 2 bytes = 16-bit data
Field Number of characters ASCII mode Remarks
(Number of bytes) fixed character string
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Register reading code
Start address (H) Arbitrary Refer to 6.4.1 (2), “Start
4
address list.”
Number of registers (H) 4 Arbitrary Refer to “Start address list.”
Error check (H) LRC calculation
2
result
Trailer 2 CR/LF
Total number of bytes 17 17

(4) Response format


Field Number of characters ASCII mode Remarks
(Number of bytes) fixed character string
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) “Read Holding Registers”
2 ‘0’, ‘3’
code
Number of data bytes (H) Number of specified registers
2
in a query format x 2
Data 1 (H) 4
Data 2 (H) 4
Data 3 (H) 4
Data 4 (H) 4
: :
: :
Error check (H) LRC calculation
2
result
Trailer CR/LF
Total number of bytes

140
(5) Sample query
A sample query that reads addresses 9000H to 9009H in a RC controller of axis No. 0 is shown
below:
Query: 01039000000A62[CR][LF]
Field ASCII mode Converted ASCII code
fixed character string data (H)
Header ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘0’ 39303030
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘A’ 30303041
Error check (H) ‘6’, ‘2’ 3632
Trailer ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 010314000000000000B80162002000800031C7000800111C[CR][LF]
Field ASCII mode Converted ASCII code data (H)
fixed character string
Header ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘1’, ‘4’ (20 bytes = 10 registers) 3134
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’, ‘0’, ‘0’, ‘0’, ‘0’ 3030303030303030
Data 2 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Data 3 (H) ‘B’, ‘8’, ‘0’, ‘1’ 42383031
Data 4 (H) ‘6’, ‘2’, ‘0’, ‘0’ 36323030
Data 5 (H) ‘2’, ‘0’, ‘0’, ‘0’ 32303030
Data 6 (H) ‘8’, ‘0’, ‘0’, ‘0’ 38303030
Data 7 (H) ‘3’, ‘1’, ‘C’, ‘7’ 33314337
Data 8 (H) ‘0’, ‘0’, ‘0’, ‘8’, ‘0’, ‘0’, ‘1’, ‘1’ 3030303830303131
Error check (H) ‘1’, ‘C’ (in accordance with LRC
3143
calculation)
Trailer ‘CR’, ‘LF’ 0D0A
* The data of the response example is simply an example and will vary depending on
various conditions.

141
6.4.2 Current Position Reading (in 0.01 mm units) Monitor <<PNOW>>

(1) Function
This query reads the current in units of 0.01 mm. The sign is effective.
(2) Query format
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘0’ Current position monitor
Reading addresses 9000H to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
9001H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes)
In accordance with
Data 1 (H) 4 Current value data (Hex)
the current value
In accordance with
Data 2 (H) 4 Current value data (Hex)
the current value
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

142
(4) Sample query (Axis No. 0)
A sample query that reads address 9000H in a controller of axis No. 0 is shown below:
Query: 0103900000026A[CR][LF]
Field ASCII mode Converted ASCII code
fixed character string data (H)
Header ‘:’ 3A
Slave address ‘0’, ‘1’ 3031
Function code ‘0’, ‘3’ 3033
Start address ‘9’, ‘0’, ‘0’, ‘0’ 39303030
Number of registers ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check ‘6’, ‘A’ 3641
Trailer ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 010304000013885D[CR][LF]
Field ASCII mode Converted ASCII code
fixed character string data (H)
Header ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Data 2 (H) ‘1’, ‘3’, ‘8’, ‘8’ 31333838
Error check (H) ‘5’, ‘D’ (in accordance with
3544
LRC calculation)
Trailer ‘CR’, ‘LF’ 0D0A
* The data of the response example is simply an example and will vary depending on various
conditions

The current position is “00001388” → Converted to a decimal value → 5000 (x 0.01 mm)
The current position is 50 mm.

143
6.4.3 Present Alarm Code Query <<ALMC>>

(1) Function
Whether the controller is normal or any alarm presently detected is indicated by a code.
If no alarm is present, 00H is stored.
For details on alarm codes, refer to the operation manual that comes with each controller.
(2) Query format
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘2’ Present alarm codes
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9002H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes)
Data 1 (H) 4 Alarm code Alarm code (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

144
(4) Sample query (Axis No. 0)
A sample query that reads address 9002H in an RC controller of axis No. 0 is shown below:
Query: 01039002000169[CR][LF]
Field ASCII mode Converted ASCII code
fixed character string data (H)
Header ‘:’ 3A
Slave address ‘0’, ‘1’ 3031
Function code ‘0’, ‘3’ 3033
Start address ‘9’, ‘0’, ‘0’, ‘2’ 39303032
Number of registers ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check ‘6’, ‘9’ 3639
Trailer ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01030200E812[CR][LF]
Field ASCII mode Converted ASCII code
fixed character string data (H)
Header ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘0’, ‘0’, ‘E’, ‘8’ 30304538
Error check (H) ‘1’, ‘2’ (in accordance with
3132
LRC calculation)
Trailer ‘CR’, ‘LF’ 0D0A

The most important alarm presently detected is “0E8”H, which is a phase A/B open alarm.
For details on alarm codes, refer to the operation manual that comes with each controller.

* The data of the response example is simply an example and will vary depending on various
conditions.

145
6.4.4 I/O Port Input Signal Status Reading <<DIPM>>

(1) Function
Port input values of the RC controller are read directly regardless of the PIO pattern. Note that the
values are the states of ports recognized by the RC controller as inputs.
(2) Query format
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘3’ Input port monitor register
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9003H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per address.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Data 1 (H) 4 DI input value DI input value (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

146
(4) Sample query (Axis No. 0)
A sample query that reads input ports (address 9003H) in a controller of axis No. 0 is shown below.
Query: 01 03 90 03 00 01 68 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘3’ 39303033
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘6’, ‘8’ (In accordance with LRC calculation)’ 3638
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 B8 01 14 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘B’, ‘8’, ‘0’, ‘1’ 42383031
Error check (H) ‘1’, ‘4’ (in accordance with LRC calculation) 3134
End ‘CR’, ‘LF’ 0D0A

The input port data area is “B801”H → Converted to the binary value “1011100000000001”

* The data of the response example is simply an example and will vary depending on various
conditions.

147
(5) Port assignment (For details, refer to the operation manual that comes with each RC controller.)
Write the port assignment of PIO patterns to each RC controller.
0 indicates that response data is always 0.

ERC2 (PIO type)


Port PIO PIO PIO PIO
pattern pattern pattern pattern
0 1 2 3

Port PIO PIO PIO PIO PIO PIO PIO PIO


pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 6 7

148
Port PIO PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

(Pulse train mode)


Port PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0

149
6.4.5 I/O Port Output Signal Status Reading <<DOPM>>

(1) Function
Port output values of the RC controller are stored directly regardless of the PIO pattern.
(2) Query format
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘4’ Output port monitor register
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9004H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes)
Data 1 (H) 4 DO output value DI output value (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

150
(4) Sample query (Axis No. 0)
A sample query that reads input ports (address 9004H) in a controller of axis No. 0 is shown below.
Query: 01039004000167[CR][LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘4’ 39303034
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘6’, ‘7’ (in accordance with LRC calculation)’ 3637
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 010302740086[CR][LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘7’, ‘4’, ‘0’, ‘0’ 37343030
Error check (H) ‘8’, ‘6’ (in accordance with LRC calculation) 3836
End ‘CR’, ‘LF’ 0D0A

The output port data area is “7400”H → Converted to the binary value “0111010000000000”

* The data of the response example is simply an example and will vary depending on various
conditions

151
(5) Port assignment (For details, refer to the operation manual that comes with each RC controller.)
Write the port assignment of PIO patterns to each RC controller.
0 indicates that response data is always 0.

ERC2 (PIO type)


Port PIO PIO PIO PIO
pattern pattern pattern pattern
0 1 2 3

Port PIO PIO PIO PIO PIO PIO PIO PIO


pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

152
Port PIO PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0 1

(Pulse train mode)


Port PIO PIO PIO PIO PIO PIO PIO
pattern pattern pattern pattern pattern pattern pattern
0 1 2 3 4 5 0

153
6.4.6 Controller Status Signal Reading <<DSS1>>

(1) Function
This query reads the internal status of the controller.
Refer to 4.3.2 (4), “Data of device status register 1.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘5’ Device status register 1
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9005H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per address.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes)
Data (H) 4 Status 1 Status 1 (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

154
(4) Sample query
A sample query that reads the device status (address 9005H) in a controller of axis No. 0 is shown
below.
Query: 01 03 90 05 00 01 66 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘5’ 39303035
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘6’, ‘6’ (in accordance with LRC calculation) 3636
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 30 88 42 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘3’, ‘0’, ‘8’, ‘8’ 33303838
Error check (H) ‘4’, ‘2’ (in accordance with LRC calculation) 3432
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

155
6.4.7 Controller Status Reading 2 <<DSS2>>

(1) Function
This query reads the internal status2 of the controller.
Refer to 4.3.2 (5), “Data of device status register 2.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘6’ Device status register 2
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9006H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Internal controller status
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Data (H) 4 Status 2 Status 2 (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

156
(4) Sample query
A sample query that reads the device status (address 9006H) in a controller of axis No. 0 is shown
below.
Query: 01 03 90 06 00 01 65 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘6’ 39303036
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘6’, ‘5’ (In accordance with LRC calculation) 3635
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 80 00 7A [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘8’, ‘0’, ‘0’, ‘0’ 38303030
Error check (H) ‘7’, ‘A’ (In accordance with LRC calculation) 3741
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

157
6.4.8 Controller Status Reading 3 <<DSSE>>

(1) Function
Internal statuses (expansion device) of the controller are indicated.
Refer to 4.3.2 (6), “Data of expansion device status registers.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Expansion device status
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘7’
register
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9007H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Data (H) 4 Expansion status Expansion status (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

158
(4) Sample query
A sample query that reads the expansion device status (address 9007H) in a controller of axis No. 0
is shown below.
Query: 01 03 90 07 00 01 64 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘7’ 39303037
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘6’, ‘4’ (In accordance with LRC calculation) 3634
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 33 C7 00 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘3’, ‘3’, ‘C’, ‘7’ 33334337
Error check (H) ‘0’, ‘0’ (In accordance with LRC calculation) 3030
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

159
6.4.9 Controller Status Reading 4 <<STAT>>

(1) Function
This query reads the internal operation status of the controller.
Refer to “4.3.2 (7) Data of system status register.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘8’ System status register
Reading addresses 9008H to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
9009H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Internal controller status
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes).
Data (H) 8 System status System status (Hex)
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

160
(4) Sample query
A sample query that reads the system status (address 9008H) in a controller of axis No. 0 is shown
below.
Query: 01 03 90 08 00 02 62 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘8’ 39303038
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check (H) ‘6’, ‘2’ (In accordance with LRC calculation) 3632
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 04 00 0C 00 11 DB [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘C’ 30303043
Data 2 (H) ‘0’, ‘0’, ‘1’, ‘1’ 30303131
Error check (H) ‘D’, ‘B’ (In accordance with LRC calculation) 4442
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

161
6.4.10 Current Speed Query <<VNOW>>

(1) Function
The monitored data of actual motor speed is indicated. The value becomes positive or negative
depending on the operating direction of the motor. The unit is 0.01 mm/sec.

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘A’ Current speed monitor
Reading addresses 900AH to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
900BH
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes).
Current speed (Hex)
Data (H) 8 Current speed Indicated in units of 0.01
mm/sec.
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

162
(4) Sample query
A sample query that reads the speed (address 900AH) of a controller of axis No. 0 is shown below.
Query: 01 03 90 0A 00 02 60 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘A’ 39303041
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check (H) ‘6’, ‘0’ (In accordance with LRC calculation) 3630
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 04 00 00 26 FC D6 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Data 2 (H) ‘2’, ‘6’, ‘F’, ‘C’ 32364643
Error check (H) ‘D’, ‘6’ (In accordance with LRC calculation) 4436
End ‘CR’, ‘LF’ 0D0A

The current speed is “000026FC” → Converted to a decimal value → 9980 (x 0.01 mm/sec)
The current speed monitor is 99.8 mm/sec.

* The data of the response example is simply an example and will vary depending on
various conditions.

163
6.4.11 Current Ampere Reading <<CNOW>>

(1) Function
The monitored data of motor current is indicated in mA.
The torque current command value is stored.

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘C’ Current ampere monitor
Reading addresses 900CH to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
900DH
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes).
Motor current Motor current monitor (Hex)
Data (H) 8
monitor Indicated in mA.
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

164
(4) Sample query
A sample query that reads the current ampere value (address 900CH) of a controller of axis No. 0 is
shown below.
Query: 01 03 90 0C 00 02 5E [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘C’ 39303043
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check (H) ‘5’, ‘E’ (In accordance with LRC calculation) 3545
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 04 00 00 01 C8 2F [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Data 2 (H) ‘0’, ‘1’, ‘C’, ‘8’ 30314338
Error check (H) ‘2’, ‘F’ (In accordance with LRC calculation) 3246
End ‘CR’, ‘LF’ 0D0A

The current ampere value is “000001C8” → Converted to a decimal value → 456 (mA)
The current ampere monitor value is 456 mA.

* The data of the response example is simply an example and will vary depending on
various conditions.

165
6.4.12 Deviation Reading <<DEVI>>

(1) Function
This query reads the deviation over a 1-ms period between the position command value and the
feedback value (actual position). The unit is pulse. The number of pulses per one motor revolution in
mechanical angle varies depending on the encoder used.

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘0’, ‘E’ Deviation monitor
Reading addresses 900EH to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
900FH
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes)
Deviation monitor (Hex)
Data (H) 8 Deviation monitor
Indicated in pulses.
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

166
(4) Sample query
A sample query that reads the deviation (address 900EH) of a controller of axis No. 0 is shown
below.
Query: 01 03 90 0E 00 02 5C [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘0’, ‘E’ 39303045
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check (H) ‘5’, ‘C’ (In accordance with LRC calculation) 3543
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 04 00 00 00 83 75 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Data 2 (H) ‘0’, ‘0’, ‘8’, ‘3’ 30303833
Error check (H) ‘7’, ‘5’ (In accordance with LRC calculation) 3735
End ‘CR’, ‘LF’ 0D0A

The deviation monitor is “00000083” → Converted to a decimal value → 131 (pulse)


The deviation over a 1-ms period between the position command value and the feedback value (actual
position) is 131 pulses.

* The data of the response example is simply an example and will vary depending on
various conditions.

167
6.4.13 Total Time after Power On Reading <<STIM>>

(1) Function
This query reads the total time since the controller power was turned on. The unit is msec.
This value is not cleared by a software reset.

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘1’, ‘0’ System timer
Reading addresses 9010H to
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘2’
9011H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading two registers (4
Number of data bytes (H) 2 ‘0’, ‘4’
bytes).
System timer (Hex)
Data (H) 8 System timer
Indicated in msec.
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 19

168
(4) Sample query
A sample query that reads the startup time (address 9010H) of a controller of axis No. 0 is shown
below.
Query: 01 03 90 10 00 02 5A [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘1’, ‘0’ 39303130
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘2’ 30303032
Error check (H) ‘5’, ‘A’ (In accordance with LRC calculation) 3541
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 04 02 38 C0 94 6A [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘4’ (4 bytes = 2 registers) 3034
Data 1 (H) ‘0’, ‘2’, ‘3’, ‘8’ 30323338
Data 2 (H) ‘C’, ‘0’, ‘9’, ‘4’ 43303934
Error check (H) ‘6’, ‘A’ (In accordance with LRC calculation) 3641
End ‘CR’, ‘LF’ 0D0A

The system timer value is “0238C094” → Converted to a decimal value → 37273748 (msec)
The total time since the controller power is turned on is 10.3538 hours.

* The data of the response example is simply an example and will vary depending on
various conditions.

169
6.4.14 Special Input Port Input Signal Status Query <<SIPM>>

(1) Function
This query reads the status of input ports other than the normal input port.
Refer to 4.3.2 (8), “Data of special input port monitor registers” for the data input via the special
input port.

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘1’, ‘2’ Special input port monitor
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9012H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Data (H) 4 Special port monitor Refer to 4.3.2 (8), “List table.”
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

170
(4) Sample query
A sample query that reads the special input port (address 9012H) of a controller of axis No. 0 is
shown below.
Query: 01 03 90 12 00 01 59 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘1’, ‘2’ 39303132
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘5’, ‘9’ (in accordance with LRC calculation) 3539
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 03 00 F7
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘0’, ‘3’, ‘0’, ‘0’ 30333030
Error check (H) ‘F’, ‘7’ (in accordance with LRC calculation) 4637
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

171
6.4.15 Zone Output Signal Status Reading <<ZONS>>

(1) Function
This query reads the status of zone output.
Refer to 4.3.2 (9), “Data of zone status registers.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘1’, ‘3’ Zone status query
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9013H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Data (H) 4 Zone status Refer to 4.3.2 (9), “List table.”
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

172
(4) Sample query
A sample query that reads the zone status (address 9013H) of a controller of axis No. 0 is shown
below.
Query: 01 03 90 13 00 01 58 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘1’, ‘3’ 39303133
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘5’, ‘8’ (In accordance with LRC calculation) 3538
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 00 00 FA [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Error check (H) ‘F’, ‘A’ (In accordance with LRC calculation) 4641
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions.

173
6.4.16 Position Complete Number Query <<POSS>>

(1) Function
This query reads the position complete number.
Refer to “4.3.2 (10) Data of position number status register.”

(2) Query format


Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Start address (H) 4 ‘9’, ‘0’, ‘1’, ‘4’ Position number status
Number of registers (H) 4 ‘0’, ‘0’, ‘0’, ‘1’ Reading address 9014H
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response format


A response message contains 16 bits of data per register.
Field Number of characters ASCII mode Remarks
character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘3’ Reading registers
Reading one register (2
Number of data bytes (H) 2 ‘0’, ‘2’
bytes).
Position number Refer to 4.3.2 (10), “List
Data (H) 4
status table.”
LRC calculation
Error check (H) 2
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 15

174
(4) Sample query
A sample query that reads the position complete (address 9014H) of a controller of axis No. 0 is
shown below.
Query: 01 03 90 14 00 01 57 [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Start address (H) ‘9’, ‘0’, ‘1’, ‘4’ 39303134
Number of registers (H) ‘0’, ‘0’, ‘0’, ‘1’ 30303031
Error check (H) ‘5’, ‘7’ (in accordance with LRC calculation) 3537
End ‘CR’, ‘LF’ 0D0A

The response to the query is as follows.


Response: 01 03 02 00 00 FA [CR] [LF]
Field ASCII mode Converted ASCII
fixed character string code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘3’ 3033
Number of data bytes (H) ‘0’, ‘2’ (2 bytes = 1 register) 3032
Data 1 (H) ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Error check (H) ‘F’, ‘A’ (in accordance with LRC calculation) 4641
End ‘CR’, ‘LF’ 0D0A

* The data of the response example is simply an example and will vary depending on
various conditions

175
6.5 Operation Commands and Data Rewrite (Query Using Code 05)

6.5.1 Writing to Coil * Please refer to “6.2


ASCII Code Table.”
(1) Function
Change (write) the status of DO (Discrete Output) of a slave to either ON or OFF.
In case of broadcast transmission, the coils at the specified address of all slaves are rewritten.

(2) Start address list


Start address (H) Symbol Function
0401 SFTY Safety speed command
0403 SON Servo ON command
0407 ALRS Alarm reset command
0408 BKRL Brake forced-release command
040A STP Pause command
040B HOME Home return command
040C CSTR Positioning start command
0411 JISL Jog/inch switching
0414 MOD Teaching mode command
0415 TEAC Position data load command
0416 JOG+ Jog+ command
0417 JOG- Jog- command
0418 ST7 Start position 7 (solenoid valve mode)
0419 ST6 Start position 6 (solenoid valve mode)
041A ST5 Start position 5 (solenoid valve mode)
041B ST4 Start position 4 (solenoid valve mode)
041C ST3 Start position 3 (solenoid valve mode)
041D ST2 Start position 2 (solenoid valve mode)
041E ST1 Start position 1 (solenoid valve mode)
041F ST0 Start position 0 (solenoid valve mode)
0427 PMSL PIO/Modbus switching specification
042C STOP Deceleration stop

176
6.5.2 Safety Speed Enable/Disable Switching (SFTY)

(1) Function
This query enables/disables the speed specified by user parameter No. 35, “Safety speed.”
Enabling the safety speed in the MANU mode will limit the speeds of all movement commands.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘1’ Safety speed command
Changed data (H) 4 Arbitrary Safety speed enabled: ‘F’, ‘F’, ‘0’, ‘0’
Safety speed disabled: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

177
(4) Sample query
A sample query that enables the safety speed of a controller of axis No. 0 is shown below.
Query: 01 05 04 01 FF 00 DC CA
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘1’ 30343031
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘D’, ‘C’ (In accordance with LRC calculation) 4443
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

178
6.5.3 Servo ON/OFF <<SON>>

(1) Function
Control ON/OFF of the servo.
When “Servo ON” is specified by the new data, the servo will turn ON after elapse of the
manufacturer parameter “Servo ON delay time.” However, the following conditions must be satisfied:
• The EMG status bit in device status register 1 is 0.
• The major failure status bit in device status register 1 is 0.
• The enable status bit in device status register 2 is 1.
• The auto servo OFF status in the system status register is 0.

(2) Query Format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘3’ Servo ON/OFF command
Changed data (H) 4 Arbitrary Servo ON: ‘F’, ‘F’, ‘0’, ‘0’
Servo OFF: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

* If a teaching pendant or PC software is connected, the servo is turned OFF, and then the teaching
pendant/PC software is removed, all before the control establishes communication with the host,
the servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the controller power, or make sure the connected tool of the SIO port is
removed while the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

179
(4) Sample query
A sample query that turns the servo of a controller of axis No. 0 on is shown below.
Query: 01 05 04 03 FF 00 F4
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘3’ 30343033
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘F’, ‘4’ (In accordance with LRC calculation) 4634
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

180
6.5.4 Alarm Reset <<ALRS>>

(1) Function
When the alarm reset edge is turned on (the data is first set to FF00H and then changed to 0000H),
alarms will be reset.
If any alarm cause has not been removed, the same alarm will be generated again. If the alarm
reset edge is turned on while the actuator is paused, the remaining travel will be cancelled.
When alarms are reset, make sure to write changed data of 0000H to restore the normal status.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘7’ Alarm reset command
Changed data (H) 4 Arbitrary Execute alarm reset: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

181
(4) Query sample
A sample query that resets the alarms of a controller of axis No. 0 is shown below.
First time 01 05 04 07 FF 00 F0 --- Execute alarm reset
Second time 01 05 04 07 00 00 EF --- Restore normal status
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘7’ 30343037
Changed data (H) First time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Second time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
(Write 0000H after resetting alarms to restore
the normal status.)
Error check (H) First time: ‘F’, ‘0’ (in accordance with LRC 4630
calculation)
Second time: ‘E’, ‘F’ (in accordance with 4546
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

182
6.5.5 Brake Forced Release <<BKRL>>

(1) Function
Brake control is linked to servo ON/OFF. The brake can be forcefully released even when the servo
is ON.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘8’ Break forced-release command
Changed data (H) 4 Arbitrary Brake forced release: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

* If a teaching pendant or PC software is connected, the servo is turned OFF, and then the teaching
pendant/PC software is removed, all before the control establishes communication with the host,
the servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the controller power, or make sure the connected tool of the SIO port is
removed while the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

183
(4) Sample query
A sample query that forcefully releases the brake of a controller of axis No. 0 is shown below.
Query: 01 05 04 08 FF 00 F0
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘8’ 30343038
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘F’, ‘0’ (In accordance with LRC calculation) 4630
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

184
6.5.6 Pause <<STP>>

(1) Function
If the pause command is transmitted during movement, the actuator decelerates and stops. If the
status is set back to normal again, the actuator resumes moving for the remaining distance.
As long as the pause command is being transmitted, all motor movement is inhibited.
If the alarm reset command bit is set while the actuator is paused, the remaining travel will be
cancelled.
If this bit is set during home return, the movement command will be held if the actuator has not yet
reversed after contacting the mechanical end. If the actuator has already reversed after contacting
the mechanical end, home return will be repeated from the beginning.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘A’ Pause command
Changed data (H) 4 Arbitrary Pause command: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

185
(4) Sample query
A sample query that pauses a controller of axis No. 0 is shown below.
Query: 01 05 04 0A FF 00 ED
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘A’ 30343041
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘D’ (in accordance with LRC calculation) 4544
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

186
6.5.7 Home return <<HOME>>

(1) Function
Home return operation will start if a rising edge in the home return command signal is detected (the
data is first set to 0000H and then changed to FF00H). Once the home return is completed, the
HEND bit will become 1. This command can be input as many times as desired even after home
return has been completed once.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘B’ Home return command
Changed data (H) 4 Arbitrary Execute home return: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

* If a teaching pendant or PC software is connected, the servo is turned OFF, and then the teaching
pendant/PC software is removed, all before the control establishes communication with the host,
the servo cannot be turned ON/OFF via commands received from with the host.
In this case, restore the controller power, or make sure the connected tool of the SIO port is
removed while the servo is ON.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

187
(4) Sample query
A sample query that executes home return operation of a controller of axis No. 0 is shown below.
Query:
First time: 01 05 04 0B 00 00 EC --- Set normal status
Second time: 01 05 04 0B FF 00 EB --- Execute home return
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘B’ 30343042
Changed data (H) First time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Second time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
(Send data twice to set the edge.)
Error check (H) First time: ‘E’, ‘C’ (In accordance with LRC 4543
calculation)
Second time: ‘E’, ‘B’ (In accordance with 4542
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

188
6.5.8 Positioning Start Command <<CSTR>>

(1) Function
If the rising edge of the positioning start command is detected (the data is first set to FF00H and then
changed to 0000H), the actuator will move to the position specified by the position number stored in
the position number specification register (POSR). If nothing is done after the position start
command (FF00H is read and no new data is written), a position complete will not be output even
when the actuator enters the positioning band (write 0000H and restore the normal status).
If this command is executed when home return has never been performed after the power is turned
on (when the HEND bit is 0), the actuator will perform home return and then start moving to the
target position.
* The target position, speed and all other operation parameters must be set in the position table
(nonvolatile memory) of the controller in advance.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘0’, ‘C’ Positioning start command
Changed data (H) 4 Arbitrary Positioning start command: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

189
(4) Sample query
A sample query that moves the actuator of a controller of axis No. 0 to the position specified by the
position number stored in the position number specification register (POSR) is shown below.
Query:
First time: 01 05 04 0C FF 00 EB --- Movement command
Second time: 01 05 04 0C 00 00 EA --- Normal status
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘0’, ‘C’ 30343043
Changed data (H) First time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Second time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
(Restore the normal status.)
Error check (H) First time: ‘E’, ‘B’ (In accordance with LRC 4542
calculation)
Second time: ‘E’, ‘A’ (In accordance with 4541
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

190
6.5.9 Jog/Inch Switching <<JISL>>

(1) Function
This bit switches between jogging and inching.
If this bit switches while the actuator is jogging, the actuator will decelerate to a stop.
If this bit switches while the actuator is inching, the inching movement will continue.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘1’, ‘1’ Jog/Inch Switching
Changed data (H) 4 Arbitrary Inching operation status: ‘F’, ‘F’, ‘0’, ‘0’
Jogging operation status: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

191
(4) Sample query
A sample query that switches the operation of a controller of axis No. 0 to inching is shown below.
Query: 01 05 04 11 FF 00 E6
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘1’ 30343131
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘6’ (In accordance with LRC calculation) 4536
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

192
6.5.10 Teaching Mode Command <<MOD>>

(1) Function
This bit switches between the normal operation mode and teaching mode.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘1’, ‘4’ Switch between the normal mode and
the teaching mode.
Changed data (H) 4 Arbitrary Teaching mode: ‘F’, ‘F’, ‘0’, ‘0’
Normal operation mode: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

193
(4) Sample query
A sample query that switches the operation mode of a controller of axis No. 0 to teaching mode is
shown below.
Query: 01 05 04 14 FF 00 E3
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘4’ 30343134
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘3’ (In accordance with LRC calculation) 4533
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

194
6.5.11 Position Data Load Command <<TEAC>>

(1) Function
The current position is acquired by writing this command (write FF00H) when the teaching mode
command (6.5.10) is FF00H (teaching command).
The current position data will be written in the position number specified by the position number
specification register when the aforementioned condition was detected.
If other position data fields are empty, the default parameter values will be written at the same time
in the empty fields other than the target position (positioning band INP, speed VCMD,
acceleration/deceleration speed ACMD, and control flag CTLF).
After sending this command (write FF00H), keep the status as is for 20 msec or longer.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘1’, ‘5’ Position data load command
Changed data (H) 4 Arbitrary Position data load command: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

195
(4) Sample query
A sample query that acquires the current position when a controller of axis No. 0 is in the teaching
mode is shown below.
Query: 01 05 04 15 FF 00 E2
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘5’ 30343135
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘2’ (In accordance with LRC calculation) 4532
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

196
6.5.12 Jog+ Command <<JOG+>>

(1) Function
• The actuator performs either jog or inching operation.
If the jog+ command (changed data FF00H) is sent when the jog/inch switching command (6.5.9) is
set to 0000H (set to jog), the actuator will jog in the direction opposite home. The speed and
acceleration/deceleration speed conform to the PIO jog speed set by user parameter No. 26 and
rated acceleration/deceleration speed, respectively.
If the jog+ command (changed data 0000H) is sent or the jog- command (6.5.13, changed data
FF00H) is sent while the actuator is moving, the actuator will decelerate to a stop.
• If the jog+ command rising edge is set while the jog/inch switching command (6.5.9) is FF00H (set
to inching), the actuator will inch in the direction opposite home. The speed, travel and
acceleration/deceleration speed conform to user parameter No. 26 (PIO jogging speed), user
parameter No. 48 (PIO inching distance), and rated acceleration/deceleration speed, respectively.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘1’, ‘6’ Jog+ command
Changed data (H) 4 Arbitrary Jog+ command: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

197
(4) Sample query
(1) A sample query that makes a controller of axis No. 0 jog is shown below.
Query: 01 05 04 16 FF 00 E1
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘6’ 30343136
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘1’ (In accordance with LRC calculation) 4531
End ‘CR’, ‘LF’ 0D0A

If the change was successful, the response message will be the same as the query.

(2) A sample query that makes a controller of axis No. 0 inch is shown below.
Query:
First time: 01 05 04 16 FF 00 E1 --- Inching movement
Second time: 01 05 04 16 00 00 E0 --- Restore normal status
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘6’ 30343046
Changed data (H) First time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Second time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
(Restore the normal status.)
Error check (H) First time: ‘E’, ‘1’ (In accordance with LRC 4531
calculation)
Second time: ‘E’, ‘0’ (In accordance with 4530
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

198
6.5.13 Jog- Command <<JOG->>

(1) Function
• The actuator performs either jog or inching operation.
If the jog- command (changed data FF00H) is sent when the jog/inch switching command (6.5.9) is
set to 0000H (set to jog), the actuator will jog in the direction of home. The speed and
acceleration/deceleration speed conform to the PIO jog speed set by user parameter No. 26 and
rated acceleration/deceleration speed, respectively.
If the jog- command (changed data 0000H) is sent or the jog+ command (6.5.12, changed data
FF00H) is sent while the actuator is moving, the actuator will decelerate to a stop.
• If the jog- command rising edge is set while the jog/inch switching command (6.5.9) is FF00H (set
to inching), the actuator will inch in the direction of home. The speed, travel and
acceleration/deceleration speed conform to user parameter No. 26 (PIO jogging speed), user
parameter No. 48 (PIO inching distance), and rated acceleration/deceleration speed, respectively.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’ ‘1’, ‘7’ Jog- command
Changed data (H) 4 Arbitrary Jog- command: ‘F’, ‘F’, ‘0’, ‘0’
Normal: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

199
(4) Sample query
(1) A sample query that makes a controller of axis No. 0 jog is shown below.
Query: 01 05 04 17 EF 00 E0
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘7’ 30343137
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘E’, ‘0’ (in accordance with LRC calculation) 4530
End ‘CR’, ‘LF’ 0D0A

If the change was successful, the response message will be the same as the query.

(2) A sample query that makes a controller of axis No. 0 inch is shown below.
Query:
First time: 01 05 04 17 FF 00 E0 --- Inching movement
Second time: 01 05 04 17 00 00 DF --- Restore normal status
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘7’ 30343047
Changed data (H) First time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Second time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
(Restore the normal status.)
Error check (H) First time: ‘E’, ‘0’ (in accordance with LRC 4530
calculation)
Second time: ‘D’, ‘F’ (in accordance with 4446
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

200
6.5.14 Start Positions 0 to 7 <<ST0 to ST7>> (Limited to PIO Patterns 4 and 5)

(1) Function
The actuator moves to the specified position number position.
The movement command for start positions 0 to 7 is effective only when PIO pattern 4 or 5 (solenoid
valve mode) is selected.
The movement command is sent by enabling either one of ST0 to ST7 in “6.5.14 (5) Start address”
(write new value FF00H when 0000H is set).
If a position other than the valid start positions is selected, “085: Moving position number error” will
be generated.
Either level operation or edge operation can be selected using user parameter No. 27, “Movement
command type.”

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO
Start address (H) 4 Arbitrary Refer to 6.5.14 (5), “Start address.”
Changed data (H) 4 Arbitrary *1 Operation command: ‘F’, ‘F’, ‘0’, ‘0’
Operation command: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

*1 If user parameter No. 27 “Movement command type” is set to “level operation,” the actuator
decelerates to a stop by overwriting FF00H with 0000H.

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

201
(4) Query sample
A sample query that moves a controller of axis No. 0 to start position 2 is shown below.
Sample start position setting

Position Speed Acceleration Deceleration


[mm] [mm/s] [G] [G]

Fig.6.2
Query
First time 01 05 04 1D 00 00 D9 --- Write 0000H to set the edge
Second time 01 05 04 1D FF 00 DA --- Movement command
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘1’, ‘D’ 30343044
Changed data (H) First time: ‘0’, ‘0’, ‘0’, ‘0’ 30303030
Second time: ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) First time: ‘D’, ‘9’ (In accordance with LRC 4439
calculation)
Second time: ‘D’, ‘A’ (In accordance with 4441
LRC calculation)
End ‘CR’, ‘LF’ 0D0A
If the change is successful, the response message will be the same as the query.

(5) Start address


Address Symbol Name Function
0418 ST7 Start position 7 Move to position 7
0419 ST6 Start position 6 Move to position 6
041A ST5 Start position 5 Move to position 5
041B ST4 Start position 4 Move to position 4
041C ST3 Start position 3 Move to position 3
041D ST2 Start position 2 Move to position 2
041E ST1 Start position 1 Move to position 1
041F ST0 Start position 0 Move to position 0

202
6.5.15 PIO/Modbus Switching Setting <<PMSL>>

(1) Function
PIO external command signals can be enabled or disabled.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO.
Start address (H) 4 ‘0’, ‘4’, ‘2’, ‘7’ PIO/Modbus switching setting
Changed data (H) 4 Arbitrary *1 Enable Modbus commands: ‘F’, ‘F’, ‘0’, ‘0’
Disable Modbus commands: ‘0’, ‘0’, ‘0’, ‘0’
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

*1 • Enable Modbus commands (ON) (disable PIO command): FF00H


Operation via PIO signals is not possible.
• Disable Modbus commands (OFF) (enable PIO command): 0000H
Operation via external PIO signals is possible.
TIP If the Modbus command is enabled, the PIO status at change is maintained.
If the Modbus command is switched to disabled, the operation status changes according to
the current PIO status. Note that even if the status of signals that operate via edge
detection has been changed, edge detection is ignored.

(3) Precaution
„ On a model equipped with an operation mode switch, “Enable PIO commands” will be specified
when the switch is set to the AUTO mode, or “Disable PIO commands” will be specified when the
switch is set to the MANU mode.
„ On a non-PIO model, the default setting is “Disable PIO commands.”
„ If IAI’s tool (teaching pendant or PC software) is connected, “Teaching modes 1, 2” and “Monitor
modes 1, 2” are available as tool modes. The correspondence between these modes and PIO
enable/disable specifications are as follows:
“Monitor modes 1, 2” → “Enable PIO commands”
“Teaching modes 1, 2” → “Disable PIO commands”

203
(4) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

(5) Query sample


A sample query that enables the Modbus command of the operation of a controller of axis No. 0 is
shown below.
Query: 01 05 04 27 FF 00 D0
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘2’, ‘7’ 30343237
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘D’, ‘0’ (in accordance with LRC calculation) 4430
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

204
6.5.16 Deceleration Stop <<STOP>>

(1) Function
The actuator will start decelerating to a stop upon detection of the deceleration stop command (write
FF00H) rising edge.

(2) Query format


Field Number of ASCII mode Remarks
characters character string
(fixed)
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) 2 ‘0’, ‘5’ Write to a single coil DO
Start address (H) 4 ‘0’, ‘4’, ‘2’, ‘C’ Deceleration stop setting
Changed data (H) 4 Arbitrary Deceleration stop command (ON):
‘F’, ‘F’, ‘0’, ‘0’
* The controller automatically resets
the value to 0000H.
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(3) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

205
(4) Sample query
A sample query that sends the deceleration stop command to a controller of axis No. 0 is shown
below.
Query: 01 05 04 2C FF 00 CB
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘5’ 3035
Start address (H) ‘0’, ‘4’, ‘2’, ‘C’ 30343243
Changed data (H) ‘F’, ‘F’, ‘0’, ‘0’ 46463030
Error check (H) ‘C’, ‘B’ (In accordance with LRC calculation) 4342
End ‘CR’, ‘LF’ 0D0A

If the change is successful, the response message will be the same as the query.

206
6.6 Control Information Direct Writing (Queries Using Code 06)

6.6.1 Writing to Registers


* Please refer to “6.2
ASCII Code Table.”
(1) Function
These queries change (write) data in registers of a slave.
In case of broadcast, data of registers of the same address of all slaves is changed.
Refer to 4.3.2 (1), “Data of device control register 1.”
Alternatively please refer to 4.3.2 (2), “Data of device control register 2” or 4.3.2 (3), “Data of
position number specification register.”

(2) Start address list


Address Symbol Name Sign Byte
0D00 DRG1 Device control register 1 2
0D01 DRG2 Device control register 2 2
0D03 POSR Position number specification register 2

The registers above are control command registers. The bits of these registers are assigned to input
ports by PIO patterns when “PIO/Modbus Switch Status (PMSS) (refer to 6.4.8) is set to “disable
Modbus commands (enable PIO commands). These registers can be rewritten when the Modbus
commands are enabled (PIO commands are disabled).

207
(3) Query format
Specify the address and data of the register whose data is to be changed in the query message.
Data to be changed shall be specified as 16-bit data in the changed data area of the query.
Field Number of characters ASCII mode Remarks
(Number of bytes) fixed character
string
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H when broadcast is
specified
Function code (H) 2 ‘0’, ‘6’ Writing to registers
Start address (H) 4 Arbitrary Refer to 6.6.1 (2), “Start
address list.”
Changed data (H) 4 4.3.2 (1) to 4.3.2. (3),
Refer to “List of changed
data.”
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes 17

(4) Response
If the change is successful, the response message will be the same as the query.
If invalid data is sent, an exception response (refer to section 7) will be returned, or no response will
be returned.

208
(5) Query sample
A sample query that turns the servo of a controller of axis No. 0 ON and then executes home return
operation is performed.
Query
First time 01 06 0D 00 10 00 DC --- Servo ON
Second time 01 06 0D 00 10 10 CC --- Home return
Field ASCII mode 8-bit data Converted ASCII
code data (H)
Start ‘:’ 3A
Slave address (H) ‘0’, ‘1’ 3031
Function code (H) ‘0’, ‘6’ 3036
Start address (H) ‘0’, ‘D’, ‘0’, ‘0’ 30443030
Changed data (H) First time: ‘1’, ‘0’, ‘0’, ‘0’ 31303030
Second time: ‘1’, ‘0’, ‘1’, ‘0’ 31303130
Error check (H) First time: ‘D’, ‘C’ (In accordance with LRC 4443
calculation)
Second time: ‘D’, ‘C’ (In accordance with 4343
LRC calculation)
End ‘CR’, ‘LF’ 0D0A

* (1) Home return is not performed even if 1010H is sent to change the data while the servo is OFF
(refer to the timing chart at startup of each RC controller).
(2) To keep the previous status, send the previous status even if there is no change. As in the
example above, keep the servo ON bit as 1 at home return as well.

If the change is successful, the response message will be the same as the query.

209
6.7 Positioning Data Direct Writing (Queries Using Code 10)

6.7.1 Numerical Value Movement Command * Please refer to “6.2


ASCII Code Table.”
(1) Function
Specify the target position in PTP positioning operation using absolute coordinates. It is possible to
command the actuator to move via numerical values by writing directly to the group of registers at
addresses from 9900H to 9908H (can be set in one message).
Values of all registers, other than the control flag specification register (address: 9908H), will become
effective once the values are sent after the power is supplied. If there is no need to change the
target position, positioning band, speed, acceleration/deceleration, push-current limiting value and
control specification, therefore, each subsequent numerical movement command can be issued
simply by writing a desired register that can effect an actual movement command based on
changing of the applicable register alone (refer to “Start address list”).

(2) Start address list


This group of registers is used to move the actuator by specifying the target position coordinates,
positioning band, speed, push-current limiting value, control flag specification and so on as
numerical values.
Data of start addresses in the list (6 registers in total) can be changed with one transmission.
Able to effect an actual
Address movement command by Register Byte
Symbol Name Sign changing the applicable Unit
(H) size size
register alone
Target position
9900 PCMD { { 2 4 0.01 mm
specification register
Positioning band
9902 INP x 2 4 0.01 mm
specification register
Speed specification
9904 VCMD { 2 4 0.01 mm/sec
register
Acceleration/deceleration
9906 ACMD { 1 2 0.01 G
specification register
Push-current limiting value
9907 PPOW { 1 2 %
specification register
x
Control flag specification
9908 CTLF Initialization after 1 2 ---
register
each movement

210
(3) Query format
1 register = 2 bytes = 16-bit data
Field Number of characters ASCII mode Remarks
(number of bytes) fixed character
string
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H if broadcast is specified
Function code (H) 2 ‘1’, ‘0’ Numerical value specification
Start address (H) 4 Arbitrary Refer to 6.7.1. (2), “Start
address list”
Number of registers (H) 4 Arbitrary Refer to 6.7.1 (2), “Start
address list”
Number of bytes (H) 2 In accordance with Enter the value twice as large
the number of as the number of registers
registers above specified above
Changed data 1 (H) 4 Refer to 6.7.1 (2), “Start
address list”
Changed data 2 (H) 4 Refer to 6.7.1 (2), “Start
address list”
Changed data 3 (H) 4 Refer to 6.7.1 (2), “Start
address list”
: :
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes Up to 256

(4) Response format


When normally changed, the response message responds with a copy of the query message
excluding the number of bytes and changed data.
Field Number of characters ASCII mode Remarks
(number of bytes) fixed character
string
Header 1 ‘:’
Slave address (H) 2 Arbitrary Axis number + 1 (01H to 10H)
00H if broadcast is specified
Function code (H) 2 ‘1’, ‘0’ Numerical value specification
Start address (H) 4 Arbitrary Refer to 6.7.1 (2), “Start
address list”
Number of registers (H) 4 Arbitrary Refer to 6.7.1 (2), “Start
address list”
Error check (H) 2 LRC calculation
result
Trailer 2 ‘CR’, ‘LF’
Total number of bytes Up to 256

211
(5) Detailed explanation of registers

„ Target position specification register (PCMD)


This register specifies the target position in PTP positioning operation using absolute coordinates.
The value of this register is set in units of 0.01 mm in a range of –999999 to 999999. When a
position is specified using absolute coordinates and the specified value exceeds the soft limit set
by a parameter, an alarm will generate the moment a movement start command is issued. The
actuator will start moving when the lower word of this register (symbol: PCMD, address: 9900H)
is rewritten. In other words, a numerical movement command can be issued simply by
writing a target position in this register.

„ Positioning band register (INP)


This register is used in two different ways depending on the type of operation.
The first way is the normal positioning operation, where it specifies the allowable difference
between the target position and current position to be used in the detection of position complete.
The second way is the push-motion operation, where it specifies the push-motion band. The
value of this register is set in units of 0.01 mm in a range of 0 to 999999. Whether the normal
operation or push-motion operation is specified by the applicable bit in the control flag
specification register as explained later.
Changing this register alone will not start actuator movement.

„ Speed specification register (VCMD)


This register specifies the moving speed. The value of this register is set in units of 0.01 mm/sec
in a range of 0 to 999999. If the specified value exceeds the maximum speed set by a parameter,
an alarm will generate the moment a movement start command is issued.
The actuator will start moving when this lower word of this register is rewritten. In other
words, the speed can be changed while the actuator is moving, simply by rewriting this register.

212
„ Acceleration/deceleration specification register (ACMD)
This register specifies the acceleration or deceleration. The value of this register is set in units of
0.01 G in a range of 0 to 300. If the specified value exceeds the maximum acceleration or
deceleration set by a parameter, an alarm will generate the moment a movement start command
is issued.
The actuator will start moving when this register is rewritten. In other words, the
acceleration/deceleration can be changed while the actuator is moving, simply by rewriting this
register.

„ Push-current limiting value (PPOW)


Set the current limit during push-motion operation in PPOW. The current limiting value is set as
one of 256 levels, with FFH representing the maximum current. Due to the actuator limitations,
the push-current limiting value should be set in range of 20% to 70% * (33H to B3H). The
specific range varies depending on the actuator, so refer to the IAI catalog or operation
manual for your actuator.
The actuator will start moving when this register is rewritten. In other words, the current
limiting value can be changed during push-motion operation simply by rewriting this register.
Sample push-motion current setting
* When setting the current to 20%
256 x 0.2 = 51.2 → 33H (converted to a hexadecimal value)

213
„ Control Flag Specification Register (CTLF)
This parameter consists of the following bit pattern that sets the respective operations.
This register will be overwritten by the default parameter value once the actuator starts
moving.
Bit 0 = 0: Fixed
Bit 1 = 0: Normal operation
1: Push-motion operation
Bit 2 = 0: The direction of push-motion operation after completion of approach is defined as the
forward direction.
1: The direction of push-motion operation after completion of approach is defined as the
reverse direction.
This bit is used to calculate the direction of final stop position from PCMD. If this bit is set
incorrectly, therefore, the target position will deviate from the specified position by a
distance corresponding to “2 x INP,” as shown in Fig. 6.3 below.
If bit 1 is set to 0, the setting of this bit is invalid.
Speed

Start position

Fig. 6.3 Direction of push-motion operation

Bit 3 = 0: Normal operation


1: Incremental operation

Setting this bit to 1 will enable the actuator to operate relative to the current position.
In this operation, the actuator behaves differently between normal operation and push-
motion operation (CTLF bit 1). While the travel is calculated with respect to the target
position (PCMD) in normal operation, it is calculated relative to the current position in
push-motion operation (when bit 1 = 1).
Here, since relative coordinate calculation involves adding up pulses in mm, followed by
conversion, unlike a calculation method involving addition after pulse conversion,
“repeated relative movements will not cause position deviation as a result of
cumulative errors corresponding to fraction pulses that are not divisible with
certain lead settings”.

214
(6) Input value (changed data)
Numerical value expressed in the specified unit (decimal) and bit data

Conversion to hexadecimal

Input value in a query format

(7) Sample register input flow

a) Flow of normal operation 1 (changing the target position data)


Conditions: The operation conditions conform to the default speed, default
acceleration/deceleration and default positioning band set by the controller’s user
parameters. Only the target position is changed to move the actuator.
Tip: Controller’s user parameters
• Default speed (parameter No. 8) → Maximum speed stated in the IAI’s catalog for each
actuator
• Default acceleration/deceleration (parameter No. 9) → Rated acceleration/deceleration stated
in the IAI’s catalog for each actuator
• Default positioning band (parameter No. 10) → Default value = 0.1 mm

Write the target position specification register (9900H)

Start normal operation

b) Flow of normal operation 2 (Changing the position data)


Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved.

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

215
c) Flow of normal operation 3 (changing speed during movement)
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the actuator speed changed at a given timing during
movement.

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

Write the speed specification registers (9904H and 9905H)

The actuator continues with the normal operation at the new speed

d) Flow of relative positioning operation 1 (incremental move) (changing pitch width)


Conditions: The operation conditions conform to the default speed, default
acceleration/deceleration and default positioning band set by the controller’s user
parameters. Only the pitch width is changed to move the actuator.
Method 1
Write the control flag specification register (9908H: Incremental setting)

Write the target position specification register (9900H)

Start normal operation

Method 2
Write the target position specification register (9900H) through
control flag specification register (9908H: Incremental setting)

Start normal operation

Tip: Addresses 9900H and 9908H alone cannot be changed in a single data transmission.
Since addresses must be continuous, you must send two messages to change
9900H and 9908H (method 1), or if you want to change them in a single message
transmission, all addresses from 9900H through 9908H must be written (method 2).
If method 2 is to be used, the speed, acceleration/deceleration and positioning band
will also be written, which means that the values of user parameter Nos. 8, 9 and 10
will become invalid.

216
e) Flow of relative positioning operation 2 (incremental move) (changing speed during incremental
movement)
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the actuator speed changed at a given timing during
movement.

Write the target position specification register (9900H) through


control flag specification register (9908H: Incremental setting)

Start relative positioning operation

Write the speed specification register (9904H) through control


flag specification register (9908H: Incremental setting)

The actuator continues with the relative positioning operation at the new speed

Tip: Once the actuator starts moving after the control flag specification register (9908H:
Incremental setting) has been changed, the register will be reset (the setting will
change to 0H: Normal movement). In other words, the control flag specification register
(9908H) must be set to the incremental setting and sent again, even if you only wish to
change the speed.

217
f) Flow of push-motion operation (changing pushing force during push-motion operation)
Conditions: Perform push-motion operation by changing the push force at a desired timing while
the actuator is pushing the work.

Write the target position specification register (9900H) through


control flag specification register (9908H: Push-motion setting)

Start push-motion operation

Write the push-current limit specification register (9907H) through


control flag specification register (9908H: Push-motion setting)

The actuator continues with the push-motion operation with the new push force

g) Note (changing positioning band during movement)


The positioning band cannot be changed while the actuator is moving.
Conditions: Change the target position, speed and acceleration/deceleration each time the
actuator is moved, with the positioning band changed at a given timing during
movement.
(Cannot be changed. If data is written, the data is reflected in the next positioning.)

Write the target position specification register (9900H) through


acceleration/deceleration specification register (9906H)

Start normal operation

Write the positioning band specification registers (9902H and 9903H)

The actuator continues with the normal operation at the original positioning band setting

Tip: Changing the positioning band specification registers alone cannot effect an actual
movement command.
Therefore, the data changed by writing the positioning band specification registers
(9902H and 9903H) will become effective when the next movement command is
executed.

218
(8) Sample query
(1) A sample query that moves a controller of axis number 0 normally is shown below.

Target position Positioning band Speed Acceleration/deceleration Push


Movement control
(mm) (mm) (mm/sec) (G) (%)
50 0.1 100 0.3 0 Normal movement

„ Query: 01 10 9900 0009 12 0000 1388 0000 000A 0000 2710 001E 0000 0000 41 [CR] [LF]
„ Response: 01 10 9900 0009 4D [CR] [LF]
--- The response message responds with a copy of the query message excluding the
number of bytes and changed data.

„ Details of query message


ASCII mode
Converted ASCII
Field fixed character Remarks
code data (H)
string
Header ‘:’ 3A
Slave address ‘0’, ‘1’ 3031 Axis No. 0 + 1
Function code ‘1’, ‘0’ 3130
The start address is the target
Start address ‘9’, ‘9’, ‘0’, ‘0’ 39393030 position specification register
9900H.
Specify 9900H through 9908H as the
Number of registers ‘0’, ‘0’, ‘0’, ‘9’ 30303039
addresses to be written.
Number of bytes ‘1’, ‘2’ 3132 9 (registers) x 2 = 18 (bytes) → 12H
Changed data 1, 2 32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
(target position) are all 0
Input unit (0.01 mm) ‘1’, ‘3’, ‘8’, ‘8’ 31333838 50 (mm) x 100 = 5000 → 1388H
Changed data 3, 4 32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
(positioning band) are all 0
Input unit (0.01 mm) ‘0’, ‘0’, ‘0’, ‘A’ 30303041 0.1 (mm) x 100 = 10 → 000AH
32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
Changed data 5, 6 (speed) are all 0
Input unit (0.01 mm/sec) 100 (mm/sec) x 100 = 10000 →
‘2’, ‘7’, ‘1’, ‘0’ 32373130
2710H
Changed data 7
(acceleration/deceleration) ‘0’, ‘0’, ‘1’, ‘E’ 30303145 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 8 (push)
‘0’, ‘0’, ‘0’, ‘0’ 30303030 0 (%) → 0H
Input unit (%)
All bits are 0, because normal
Changed data 9 (control
‘0’, ‘0’, ‘0’, ‘0’ 30303030 operation is specified.
flag)
0000b → 0000H
Error check ‘4’, ‘1’ 3431 LRC check calculation result → 41H
Trailer ‘CR’, ‘LF’ 0D0A
Total number of bytes 55

219
(2) A sample query that pitches feed of a controller of axis No. 0 (relative position movement) is
shown below.

Target position Positioning band Speed Acceleration/deceleration Push


Movement control
(mm) (mm) (mm/sec) (G) (%)
10 0.1 100 0.3 0 Incremental

„ Query: 01 10 9900 0009 12 0000 03E8 0000 000A 0000 2710 001E 0000 0008 E9 [CR] [LF]

„ Response: 01 10 9900 0009 4D [CR] [LF]


--- The response message responds with a copy of the query message excluding the
number of bytes and changed data.

„ Details of query message


ASCII mode
Converted ASCII
Field fixed character Remarks
code data (H)
string
Header ‘:’ 3A
Slave address ‘0’, ‘1’ 3031 Axis No. 0 + 1
Function code ‘1’, ‘0’ 3130
The start address is the target
Start address ‘9’, ‘9’, ‘0’, ‘0’ 39393030 position specification register
9900H.
Specify 9900H through 9908H as the
Number of registers ‘0’, ‘0’, ‘0’, ‘9’ 30303039
addresses to be written.
Number of bytes ‘1’, ‘2’ 3132 9 (registers) x 2 = 18 (bytes) → 12H
Changed data 1, 2 32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
(target position) are all 0
Input unit (0.01 mm) ‘0’, ‘3’, ‘E’, ‘8’ 30334538 10 (mm) x 100 = 1000 → 03E8H
Changed data 3, 4 32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
(positioning band) are all 0
Input unit (0.01 mm) ‘0’, ‘0’, ‘0’, ‘A’ 30303041 0.1 (mm) x 100 = 10 → 000AH
32-bit data, where the upper bits
‘0’, ‘0’, ‘0’, ‘0’ 30303030
Changed data 5, 6 (speed) are all 0
Input unit (0.01 mm/sec) 100 (mm/sec) x 100 = 10000 →
‘2’, ‘7’, ‘1’, ‘0’ 32373130
2710H
Changed data 7
(acceleration/deceleration) ‘0’, ‘0’, ‘1’, ‘E’ 30303145 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 8 (push)
‘0’, ‘0’, ‘0’, ‘0’ 30303030 0 (%) → 0H
Input unit (%)
Changed data 9 (control (Incremental setting)
‘0’, ‘0’, ‘0’, ‘8’ 30303038
flag) 1000b → 0008H
Error check ‘E’, ‘9’ 4539 LRC check calculation result → E9H
Trailer ‘CR’, ‘LF’ 0D0A
Total number of bytes 55

220
6.7.2 Writing Position Table Data

(1) Function
Position table data can be changed using this query.
Each time an address specified in “Start address list” (addresses +0000H through +000EH) is
accessed, the applicable data will be read from the EEPROM in units of position data. After having
been written, the data will be stored in the EEPROM again.

* The number of times allowed to write to EEPROM is limited to approximately 100,000 times due to
device restriction. If the position table data is updated frequently, the number of times allowed to write
to EEPROM may be exceeded, which may cause failures. Take caution not to cause unexpected
loops and similar in logic on the master side.

(2) Start address list


In a query input, each address is calculated using the formula below:
1000H + (16 x Position number) H + Address (Offset) H

Example Change the speed command register for position No. 200
1000H + (16 x 200 = 3200) H + 4H
= 1000H + C80H + 4H
= 1C84H
“1C84” becomes the input value for the start address field of this query.
* The maximum position number varies depending on the controller model and the PIO pattern
currently specified.

„ Position data change resisters


Register Byte Input
Address Symbol Name Sign
size size unit
+0000 PCMD Target position { 2 4 0.01 mm
+0002 INP Positioning band 2 4 0.01 mm
+0004 VCMD Speed command 2 4 0.01 mm/sec
+0006 ZNMP Individual zone boundary + { 2 4 0.01 mm
+0008 ZNLP Individual zone boundary - { 2 4 0.01 mm
+000A ACMD Acceleration command 1 2 0.01 G
+000B DCMD Deceleration command 1 2 0.01 G
+000C PPOW Push-current limiting value 1 2 %
+000D LPOW Load current threshold 1 2 %
+000E CTLF Control flag specification 1 2
* Addresses starting with “+” indicate offsets.

221
(3) Query format
1 register = 2 bytes = 16-bit data
Number of
ASCII mode
characters
Field fixed character Remarks
(Number of
string
bytes)
Header ‘:’ 1
Slave address (H) Arbitrary 2 Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) ‘1’, ‘0’ 2
Start address (H) Arbitrary 4 Refer to 6.7.2 (2), “Start address list.”
Number of registers (H) Arbitrary 4 Refer to 6.7.2 (2), “Start address list.”
Number of bytes (H) In accordance 2 A value corresponding to twice the
with the above number of registers specified above is
registers input.
Changed data 1 (H) 4 Refer to 6.7.2 (2), “Start address list.”
Changed data 2 (H) 4 Refer to 6.7.2 (2), “Start address list.”
Changed data 3 (H) 4 Refer to 6.7.2 (2), “Start address list.”
: :
Error check (H) LRC calculation 2
result
Trailer ‘CR’, ‘LF’ 2
Total number of bytes Up to 256

(4) Response format


If the change is successful, a response message that is effectively a copy of the query message,
except for the byte count and new data, will be returned.
Number of
ASCII mode
characters
Field fixed character Remarks
(Number of
string
bytes)
Header ‘:’ 1
Slave address (H) Arbitrary 2 Axis number + 1 (01H to 10H)
00H when broadcast is specified
Function code (H) ‘1’, ‘0’ 2
Start address (H) Arbitrary 4 Refer to 6.7.2 (2), “Start address list.”
Number of registers (H) Arbitrary 4 Refer to 6.7.2 (2), “Start address list.”
Error check (H) LRC calculation 2
result
Trailer ‘CR’, ‘LF’ 2
Total number of bytes Up to 256

222
(5) Detailed explanation of registers

„ Target Position (PCMD)


This register specifies the target position during positioning using absolute coordinates or by an
incremental distance. The value of this register is set in units of 0.01 mm in a range of -999999
to 999999. When a position is specified using absolute coordinates and the specified value
exceeds the soft limit set by a parameter, an alarm will generate the moment a movement start
command is issued. Specify whether to use absolute coordinates or incremental distance using
the applicable bit in the control flag specification register as explained later.

„ Positioning band Specification Register (INP)


This register is used in two different ways depending on the type of operation. The first way is
the normal positioning operation, where it specifies the allowable difference between the target
position and current position to be used in the detection of position complete. The second way is
the push-motion operation, where it specifies the push-motion band. The value of this register is
set in units of 0.01 mm in a range of 0 to 999999.
Whether the normal operation or push-motion operation is specified by the applicable bit in the
control flag specification register as explained later.

„ Speed Specification Register (VCMD)


This register specifies the moving speed in positioning. The value of this register is set in units of
0.01 mm/sec in a range of 0 to 999999. If the specified value exceeds the maximum speed set
by a parameter, an alarm will generate the moment a movement start command is issued.

„ Individual Zone Boundaries ± (ZNMP, ZNLP)


These registers output zone signals that are effective only during positioning, separately from
the zone boundaries set by parameters.
Set in ZNMP the positive zone signal output boundary expressed using absolute coordinates,
and set the negative zone signal output boundary in ZNLP. The corresponding bit in the zone
register remains ON while the current position is within these positive and negative boundaries.
The value of this register is set in units of 0.01 mm, and in a range of -999999 to 999999 for both
registers. However, ZNMP must be greater than ZNLP.
Set the same value in both ZNMP and ZNLP to disable the individual zone output.

„ Acceleration Specification Register (ACMD)


This register specifies the acceleration during positioning. The value of this register is set in units
of 0.01 G in a range of 0 to 300. If the specified value exceeds the maximum acceleration set by
a parameter, an alarm will generate the moment a movement start command is issued.

223
„ Deceleration Specification Register (DCMD)
This register specifies the deceleration during positioning. The value of this register is set in units
of 0.01 G in a range of 0 to 300. If the specified value exceeds the maximum deceleration set by
a parameter, an alarm will generate the moment a movement start command is issued.

„ Push-current Limiting Value (PPOW)


Set the current limit in push-motion operation in PPOW. The current limiting value is set as one
of 256 levels, with FFH representing the maximum current. Due to the actuator limitations, the
push-current limiting value should be set in range of 20% to 70% (33H to B3H).

„ Load Output Current Threshold (LPOW)


To perform load output judgment, set the current threshold in LPOW. Set a desired value as one
of 256 levels, with FFH representing the maximum current. If load output judgment is not
performed, set 0.

„ Control Flag Specification Register (CTLF)


This parameter consists of the following bit pattern that sets the respective operations.

Bit 1 = 0: Normal operation


1: Push-motion operation
Bit 2 = 0: The direction of push-motion operation after completion of approach operation
represents the forward direction.
1: The direction of push-motion operation after completion of approach operation
represents the reverse direction.
Bit 3 = 0: Normal operation
1: Incremental operation

* All bits whose details are not explained are reserved.

(6) Input value (changed data)


Numerical value expressed in the specified unit (decimal) and bit data

Conversion to hexadecimal

Input value in a query format

The specifications of the registers above are explained in the following pages.

224
(7) Sample query
A sample query that rewrites all data of position No. 12 of axis No. 0 is shown below.
Axis No. 0
Individual Individual
Target Positioning
Speed zone zone Acceleration Deceleration Push Movement
position band Threshold
(mm/sec) boundary+ boundary- (G) (G) (%) control
(mm) (mm)
(mm) (mm)
Normal
100 0.1 200 60 40 0.01 0.3 0 0 movement

„ Query: 01 10 10C0 000F 1E 0000 2710 0000 000A 0000 4E20 0000 1770
0000 0FA0 0001 001E 0000 0000 0000 EE [CR] [LF]
„ Received response 01 10 10C0 000F 10 [CR] [LF]

„ Details of query message


ASCII mode Converted
Field fixed character ASCII code Remarks
string data (H)
Header ‘:’ 3A
Slave address ‘0’, ‘1’ 3031 Axis No. 0 + 1
Function code ‘1’, ‘0’ 3130
The start address is the target position
Start address ‘1’, ‘0’, ‘C’, ‘0’ 31304330 specification register 10C0H for position
No. 12. *1
Total 15 registers of register symbols
Number of registers ‘0’, ‘0’, ‘0’, ‘F’ 30303046
PCMD to CTLF are specified to be written.
Number of bytes ‘1’, ‘E’ 3145 15 (registers) x 2 = 30 (bytes) → 1EH
Changed data 1, 2 ‘0’, ‘0’, ‘0’, ‘0’ 30303030 32-bit data, where the upper bits are all 0
(target position)
Input unit (0.01 mm) ‘2’, ‘7’, ‘1’, ‘0’ 32373130 100 (mm) x 100 = 10000 → 2710H
Changed data 3, 4 ‘0’, ‘0’, ‘0’, ‘0’ 30303030 32-bit data, where the upper bits are all 0
(positioning band)
Input unit (0.01 mm) ‘0’, ‘0’, ‘0’, ‘A’ 30303041 0.1 (mm) x 100 = 10 → 000AH
Changed data 5, 6 ‘0’, ‘0’, ‘0’, ‘0’ 30303030 32-bit data, where the upper bits are all 0
(speed)
Input unit (0.01 mm/sec) ‘4’, ‘E’, ‘2’, ‘0’ 34453230 200 (mm/sec) x 100 = 20000 → 4E20H
‘0’, ‘0’, ‘0’, ‘0’ 30303030 32-bit data, where the upper bits are all 0
Changed data 7, 8
(individual zone boundary +) ‘1’, ‘7’, ‘7’, ‘0’ 31373730 60 (mm) x 100 = 6000 → 1770H
Input unit (0.01 mm)
‘0’, ‘F’, ‘A’, ‘0’ 30464130 40 (mm) x 100 = 4000 → 0FA0H
Continue to the next page

225
Continued from the previous page
ASCII mode Converted
Field fixed character ASCII code Remarks
string data (H)
Changed data 9, 10 ‘0’, ‘0’, ‘0’, ‘0’ 30303030 32-bit data, where the upper bits are all 0
(individual zone boundary -)
Input unit (0.01 mm) ‘0’, ‘F’, ‘A’, ‘0’ 30464130 40 (mm) x 100 = 4000 → 0FA0H
Changed data 11
(acceleration) ‘0’, ‘0’, ‘0’, ‘1’ 30303031 0.01 (G) x 100 = 1 → 0001H
Input unit (0.01 G)
Changed data 12
(deceleration) ‘0’, ‘0’, ‘1’, ‘E’ 30303145 0.3 (G) x 100 = 30 → 001EH
Input unit (0.01 G)
Changed data 13 (push)
‘0’, ‘0’, ‘0’, ‘0’ 30303030 0 (%) → 0H
Input unit (%)
Changed data 14
(threshold) ‘0’, ‘0’, ‘0’, ‘0’ 30303030 0 (%) → 0H
Input unit (%)
Changed data 15 (control All 0 due to normal operation
‘0’, ‘0’, ‘0’, ‘0’ 30303030
flag) 0000b → 0000H
Error check ‘E’, ‘E’ 4545 LRC check calculation result → EEH
Trailer ‘CR’, ‘LF’ 0D0A
Total number of bytes 79

*1) Calculation of start address


In the example, all data of position No. 12 is changed. Accordingly, the target position address of
position No. 12 is set in the start address field of this query.
1000H + (16 x 12 =192) H + 0H
= 1000H + C0H + 0H
= 10C0H
“10C0” becomes the input value for the start address field of this query.

226
Shown below are the screens of IAI’s PC software for RC controller, indicating how position data changes
before and after a query message is sent.

„ Before a query is sent

Fig. 6.4

„ After a query is sent

Fig. 6.5

* The overwritten data is not displayed until the button is pressed or the Edit Position Data window is
reopened.

227
7 Troubleshooting

228
7.1 Responses at Errors (Exception Responses)

In each query (command), except for a broadcast query message, the master issues a query by expecting
a “successful” response(response), and the applicable slave must return a response to the query. If the
query is processed successfully, the slave returns a “successful” response. If an error occurs, however,
the slave returns an exception response.

The slave responds to a query in one of the following four ways:

(1) The slave receives the query successfully, processes it successfully, and then returns a “successful”
response.
(2) The slave returns no response because the query could not be received due to a communication
error, etc. The master generates a timeout error.
(3) The slave also returns no response if the query is received but is found invalid because a LRC/CRC
error is detected. In this case, the master also generates a timeout error.
(4) If the query is received properly without generating errors but it cannot be processed for some reason
(such as when the applicable register does not exist), the slave returns an exception response that
contains an exception code indicating the content of exception.

229
Example of exception response generation
(Sample query message using Read Input Status)

Sample value ASCII mode RTU mode


Field
(Hex) character string 8 bits (Hex)
Header ‘:’ None
Slave address 03H ‘0,’ ‘3’ 03H
Function code 02H ‘0,’ ‘2’ 02H
Start address (H) 04H ‘0,’ ‘4’ 04H
Start address (L) A1H ‘A,’ ‘1’ A1H
Number of DIs (H) 00H ‘0,’ ‘0’ 00H
Number of DIs (L) 14H ‘1,’ ‘4’ 14H
Error check LRC (2 characters) CRC (16 bits)
Trailer CR/LF None
Total bytes 17 8

If input status 04A1H does not exist, the following exception response will be returned.

Sample exception response from a slave

Sample value ASCII mode RTU mode


Field
(Hex) character string 8 bits (Hex)
Header ‘:’ None
Slave address 03H ‘0,’ ‘3’ 03H
Function code 82H ‘8,’ ‘2’ 82H
Exception code 02H ‘0,’ ‘2’ 02H
Error check LRC (2 characters) CRC (16 bits)
Trailer CR/LF None
Total bytes 11 5

The exception response consists of the slave address field, function code field, and data field. In the slave
address field, the applicable slave address is set as in the slave address field of a “successful” response.
In the function code field, the function code in the query is set, and then the MSB (most significant bit of
the function code) of this field is set to 1. This allows the master to recognize that the message is not a
“successful” response, but an exception response. An exception code indicating the content of exception
is set in the data field.

230
Example) Query function code “02H” (00000010b)
→ Exception response function code “82H” (10000010b)

„ Exception codes

The table below lists the exception codes that may generate in RC Series controllers, as well as the
contents of respective codes.

Code
Exception code Function Remarks
(Hex)
01H Illegal Function Indicates that the function is invalid. The query cannot be executed
because a major error has
occurred on the slave side due to
function errors.
02H Illegal Data Address Indicates that the data address is Use of the data address value is
invalid. not permitted.
03H Illegal Data Value Indicates that the data is invalid. Use of the data value is not
permitted.
04H Slave Device Failure Indicates that the query cannot be The query cannot be executed
executed because an irremediable because a major error has
error occurred in the slave. occurred on the slave side.

231
7.2 Notes

• When referencing registers using Modbus functions, registers belonging to multiple categories cannot
be read simultaneously using a single message. To reference registers belonging to multiple
categories, read them using multiple messages by classifying the corresponding addresses by
category.
• The explanations in this specification apply commonly to RC controller Series models supporting
“Protocol M.” For the specifications and other items specific to each model, refer to the RC controller’s
operation manual that comes with the applicable controller.
• This specification is subject to change without notice for the purpose of improving product functions.

232
7.3 When Communication Fails

Select an applicable item and perform the processing enclosed with †.


The specific processing details are explained after the flowchart; check the details indicated by the *
symbol.
{ = Yes, X = No

Symptom: Cannot communicate normally!


Was communication possible until now?

Cannot communicate with all controllers?

Cannot communicate with any controllers. → (1) Host failure → Repair host
(2) Disconnection of communication cables
or poor contact due to vibration and
similar → Fix disconnection

Cannot communicate with specific controllers. → (1) Controller failure → Replace the controller
(2) Disconnection of communication cables between
controllers and junctions → Fix disconnection
(3) Dislocation of terminating resistor → Fix dislocation
(4) Wrong controller axis number setting (when
controllers are replaced, parameters are initialized,
the version is upgraded, etc.) → Check *4
(5) Wrong controller communication speed setting (when
controllers are replaced, parameters are initialized,
the version is upgraded, etc.) → Check *6
(6) Wrong transmitter activation time setting (when
controllers are replaced, parameters are initialized,
the version is upgraded, etc.)
→ Check parameter No. 17

Can any of the parts of the communication cables be moved?

There are movable parts → Disconnection of communication cables → Fix disconnection

Is the power supply voltage to each device normal? (each RC controller, SIO converter, etc.)

Power supply voltage error → Set normal power supply voltage

Did the failure occur after the surrounding environment was changed? (Peripheral devices, etc. have been changed.)

Occurred after change → Malfunction due to noise


→ (1) Decrease the communication speed→ Check *2
(2) Change communication cable wiring→ Check *7
(3) Check connection of FG of each RC controller *7
(4) Mount a clamp filter on the power lines
(5) Check grounding of the control board *7

Continue to the next page

233
Continued from the previous page

Did the problem occur after moving facilities?

Occurred after moving facilities → (1) Disconnection of communication cables → Fix disconnection
(2) Loosening of connectors for communication cables
→ Check connection
(3) Wrong control communication speed setting
→ Refer to "3.2. (1) Precautions → Check *6
Did the problem occur after adding controllers?

Occurred after adding controllers → (1) Wrong axis number settings for additional controllers → Check *4
(2) Wrong communication speed setting for additional controllers
→ Check *6
(3) Wrong transmitter activation time setting for additional controllers
→ Check parameter No. 17
(4) Wrong terminating resistor mounting position
→ Mount the terminating resistor on the junction furthest from the
master (host). (Refer to Section 3.)

Was a new device started up (including newly introduced devices with existing settings)?

Cannot communicate with any controllers?

Check connection using the PC software for RC. *1

Cannot communicate with any controllers → (1) Wrong wiring of communication cables between
the host and junction → Check wiring *3
(2) Device power supply error
→ Check power supply voltage → Check that
the 0 V line is used commonly for all devices
→ Use the 0 V line commonly for all devices.
(3) Overlapping setting of controller axis numbers
→ Check *4
(4) Inconsistent controller communication speed
setting → Check *6

Cannot communicate with specific controllers.→ (1) Wrong wiring of communication cables
between controllers and junction
→ Check wiring *3
(2) Device power supply error
→ Check power supply voltage
(3) Overlapping setting of controller axis numbers
→ Check *4
(4) Inconsistent controller communication speed
setting → Check *6

Can communicate. → [1] Inadequate host (1) Check programs again *5


programs (2) Check communication speed setting again *2
Continue to the next page

234
Continued from the previous page

Cannot communicate with specific controllers.

[1] Wrong wiring of communication cables between controllers and junction → Check wiring *3
[2] Device power supply error → Check power supply voltage → Check that the 0 V line is used
commonly for all devices → Use the 0 V line commonly for all devices.

Cannot communicate from time to time?

[1] Malfunction due to noise → (1) Decrease the communication speed Check *2
(2) Change communication cable wiring Check *7
(3) Check connection of FG of each RC controller *7
(4) Mount a clamp filter on the power lines
(5) Check grounding of the control board *7

[2] Inadequate host programs → Check programs again (occurrence of communication buffer overflow, etc.?)

235
*1 Connect a PC to the host following the procedure explained in sections 3.1, 3.2 and 3.3.
[1] Start the PC software.
[2] Select [Application Setting] from the [Setting] menu.
Check that the port is set to the port number of the PC used and that the last axis number is set to a
value larger than the number of connected axes in the Communication Setting window.
(If any settings are wrong, correct the settings and then restart the PC for RC.)

Select [Application Setting]


from the [Setting] menu.

Fig.9.1 Check that the port is set to


the port number of the PC
used (pay special attention if
an USB port is used).

Check that the last axis number


is set to a value larger than the
number of connected axes

Fig. 9.2

236
[3] Select [Edit/Teach] from the [Position] menu.
The Position Data Edit Axis Selection window appears, displaying the connected axes.
Axes for which connected axis numbers are displayed can communicate normally.

Select [Edit/Teach] from


the [Position] menu.

Fig.9.3
Check that all axis numbers
connected are displayed.
In this case, the first axis is
normal but others are abnormal.

Fig. 9.4

*2 Refer to section 3.6 to decrease the communication speed.


*3 Refer to sections 3.1, 3.2 and 3.3 to check wiring again.
*4 Refer to section 3.5 to check the axis number settings again (check that there are no overlapping
numbers).
*5 Check again that the procedure in section 3.4 is followed correctly.
[1] If queries other than those that use a function code 03 are used, check that the PIO/Modbus
switching in sections 5.4.15 (RTU) and 6.5.15 (ASCII) is set to the Modbus side.
[2] Unless the RC controller is restarted using the PC software for RC, the communication speed
setting selected when connecting the PC software for RC is maintained. In this case, restart the
RC controller.

237
*6 Refer to section 3.6 to check the communication speed setting again.
Set the same communication speed for all RC controllers as well as the host.
Check (2) in *5.
*7 Wire communication cables such that they do not run in parallel with power cables and cables
that send pulse signals.
Check that the communication cable is properly shielded (recommendation: 1-point ground).
Check that the setting environment and noise countermeasures live up to the specifications
given in the instruction manual of each RC controller.

If the problems are not solved after checking above step, please contact us.
In this case, please let us know about the phenomena occurring and the result of checking the
items in the flowchart as well.

Contact:
IAI Customer Center “Eight”
Free-dial 0800-888-0088
Fax (free) 0800-888-0099
Business hours: Monday to Friday: 8:00 to 20:00, Saturday: 9:00 to 17:00

238
8 Reference Materials

239
8.1 CRC Check Calculation

Sample C functions used for CRC calculation are shown below.


They are equivalent to the CRC calculation functions stated in the published Modbus Protocol
Specification (PI-MBUS-300 Rev. J).

240
241
8.2 Configuration of Systems that Use both SIO and PIO

It is possible to monitor the current position and other values via the SIO (communication) by running the
RC controller with PIO. All queries that use function code 03 for either RTU and ASCII can be monitored.
Set PIO/Modbus switching (section 5.4.15 or 6.5.15) to the PIO side and, in case of RC controllers
equipped with a mode switch, set the switch to AUTO. The following RC controller models can use both
PIO and SIO.
• PCON-C/CG/CF, PCON-CY, PCON-PL/PO
• ACON-C/CG, ACON-CY, ACON-PL/PO
• SCON
• ERC2

Example 1 of system configuration that uses both SIO and PIO


PC

Master/
host

RS232C cross-connected cable


(prepared by the customer)
• PCON-C/CG
Positioner I/O cable
(CB-PAC-PI0020)
2 m, comes with the controller
• PCON-PL/PO
Pulse train I/O cable
(CB-PACPU-PI0020)
Controller link cables (Female)
2 m, comes with the controller CB-RCB-CTL002
(Comes with one junction,
one e-CON connector and
one terminating resistor with
R = 220 Ω, 1/4 W)

SIO converter
Vertical: RCC-TU-SIO-A
Horizontal: RCC-TU-SIO-B
(RS232C ⇔ RS485)

Junction
(5-1473574-4 made by AMP)

e-CON connector
(4-1473562-4 made by AMP)
Recommended cables: Taiyo Electric
Wire & Cable
(HK-SB/20276xL (m) 2P x AWG22)
Fig. 11.1 Prepared by the customer

242
Example 2 of system configuration that uses both SIO and PIO

Serial unit connection cables


Note that the pin assignment differs for each
PLC: please refer to the instruction manual that
is supplied with the PLC in question (prepared
by the customers).

Master/
host

Connected to I/O units

• PCON-C/CG
Positioner I/O cable
(CB-PAC-PI0020)
2 m, comes with the controller
• PCON-PL/PO
Pulse train I/O cable Select either RS232C or
(CB-PACPU-PI0020) RS485 depending on the
2 m, comes with the controller serial unit to be used.

SIO converter
Vertical: RCC-TU-SIO-A
Horizontal: RCC-TU-SIO-B
(RS232C ⇔ RS485)

Controller link cables


CB-RCB-CTL002
(Comes with one junction,
one e-CON connector and
one terminating resistor with
R = 220 Ω, 1/4 W)
Recommended cables: Taiyo Electric Wire & Cable
(HK-SB/20276xL (m) 2P x AWG22)
Prepared by the customer

Junction
(5-1473574-4 made by AMP)

e-CON connector
(4-1473562-4 made by AMP)

Fig. 11.2

243
Catalog No.: MJ-0162-2A (July, 2007)

Head Office: 2690 W. 237th Street, Torrance, CA 90505


TEL (310) 891-6015 FAX (310) 891-0815
Chicago Office: 1261 Hamilton Parkway, Itasca, IL 60143
TEL (630) 467-9900 FAX (630) 467-9912
Atlanta Office: 1220 Kennestone Circle Suite E, Marietta, GA 30066
TEL (678) 354-9470 FAX (678) 354-9471

Website: http://www.intelligentactuator.com

Ober der Röth 4, D-65824 Schwalbach am Taunus, Germany


TEL 06196-88950 FAX 06196-889524

You might also like