Serial Communication Protocol [Modbus Version] Operation Manual v2
Serial Communication Protocol [Modbus Version] Operation Manual v2
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
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.
Fig. 2.1
3
3 Preparation for Communication
3.1 In Case the Host Uses RS232C Interface
(1) System configuration
PC
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)
(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.
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
e-CON connector
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
Orange Yellow
Orange
Blue Blue Orange
Brown Blue
Green
Green
Nth slave (N = maximum 16 slaves)
Orange
Blue
Brown
Green
In case of standard ERC2 products (the wiring processing is different from ERC2-SE)
Connected to junction
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)
PORT switch
~ PORT switch
• ON: Use teaching pendant
• OFF: Do not use teaching pendant
7
3.2 In Case the Host Uses RS485 Interface
(1) System configuration
PC
SIO converter
Vertical specification:
RCB-TU-SIO-A
Horizontal specification:
RCB-TU-SIO-B
(RS232C ⇔ RS485)
Recommended cables
(Taiyo Electric Wire & Cable HK-SB/20276xL (m) 2P x AWG22)
Prepared by the customer Adjust to the master (host).
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-
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)
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+
10
3.4 Various Setting before Starting Communication
Completion of wiring
* 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
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).
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
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.
(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.
Fig. 3.11
13
[2] Select the axis number of the controller to be changed.
Fig. 3.12
Fig. 3.13
14
4 Communication
4.1 Message Transmission Timing
Query Query
(message frame)
Master (PLC, etc.)
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.
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.
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
The layout of the status registers is shown below.
29
4.3.4 Data of Status Registers
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)
(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.
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.
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)
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
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
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.
40
5.3. Data and Status Reading (Queries Using Code 03)
(1) Function
These registers read the contents of registers in a slave.
This function is not supported in broadcast communication.
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
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
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.
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 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.
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 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.
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 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.
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
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.
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 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.
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
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.”
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 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.”
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 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.”
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 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.”
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 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.
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 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.
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 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.
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 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.
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 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.
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 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.”
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 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.”
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 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)
(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.
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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.
(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.”
*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.
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.
104
5.4.15 PIO/Modbus Switching Setting <<PMSL>>
(1) Function
PIO external command signals can be enabled or disabled.
(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.
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.
(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)
(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.”
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)
(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”).
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
113
(5) Detailed explanation of registers
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.
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
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
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.
The actuator continues with the normal operation at the new speed
Method 2
Write the target position specification register (9900H) through
control flag specification register (9908H: Incremental setting)
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.
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.
The actuator continues with the push-motion operation with the new push force
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.
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.
121
(2) A sample query that pitch-feed a controller of axis No. 0 (relative position movement) is shown
below.
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.
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.
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.
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
124
(5) Detailed explanation of registers
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.
Conversion to hexadecimal
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.
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
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.
Fig. 5.4
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.
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.
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)
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 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
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.
138
6.4. Data and Status Reading (queries Using Code 03)
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
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
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
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 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
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 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
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 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.
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
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
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 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.
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
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.”
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 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.”
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 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.”
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 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.”
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 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.
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 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.
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 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.
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 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.
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 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.
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 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.”
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 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.”
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 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)
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.
(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.
* 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.
(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.
* 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.
(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.
* 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.
(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.
(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.
(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.
(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.
(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.
(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.”
*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
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.
202
6.5.15 PIO/Modbus Switching Setting <<PMSL>>
(1) Function
PIO external command signals can be enabled or disabled.
(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.
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.
(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)
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)
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
211
(5) Detailed explanation of registers
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.
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
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
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.
The actuator continues with the normal operation at the new speed
Method 2
Write the target position specification register (9900H) through
control flag specification register (9908H: Incremental setting)
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.
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.
The actuator continues with the push-motion operation with the new push force
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.
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.
219
(2) A sample query that pitches feed of a controller of axis No. 0 (relative position movement) is
shown below.
Query: 01 10 9900 0009 12 0000 03E8 0000 000A 0000 2710 001E 0000 0008 E9 [CR] [LF]
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.
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.
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
222
(5) Detailed explanation of registers
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.
Conversion to hexadecimal
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]
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
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.
Fig. 6.4
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.
(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)
If input status 04A1H does not exist, the following exception response will be returned.
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
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
Is the power supply voltage to each device normal? (each RC controller, SIO converter, etc.)
Did the failure occur after the surrounding environment was changed? (Peripheral devices, etc. have been changed.)
233
Continued from the previous page
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 → (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
234
Continued from the previous page
[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.
[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.)
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.
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
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
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
Master/
host
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
Master/
host
• 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)
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)
Website: http://www.intelligentactuator.com