CM3+

7. Test Run and Settings

In this chapter, the flow to the test run is explained. The purpose is to set the appropriate parameters for each axis and make the motion sequence safe and executable by performing a trial run: [1] check network, [2] check I/O signal, [3] origin detection, [4] check movable range, [5] test run (check the torque while operating and adjust the gain). Check connections, wiring, and operating area before starting.

Test run procedure flowchart

7.1 Forming Daisy Chain Network

The CM3+ network uses the Daisy Chain network method in which devices are connected in a row. When forming a network, it is necessary to detect each CM3+ in the network by numbers, called motor IDs. The motor IDs are automatically assigned when power is supplied — lower ID closer to the host device. Therefore, when forming a network with multiple axes, the power must be supplied to all CM3+ at the same time.

Daisy chain network with automatically assigned motor IDs

The default communication specifications for CM3+ are shown below:

Item

Value

Baud rate

38400 bps

Data length

8 bit

Parity

None

Stop bit

1

Flow control

None

Set the communication on the host device as shown above and confirm network establishment using terminal software such as TeraTerm. When, for example, a 3-axis network is established, the ID numbers and version information will be sent to the host device.

Network establishment response example

If the network is not established, multi-axis control by CML is not possible. Be sure to check the establishment of the network. If all IDs are not displayed even though communication settings match, check: (1) Is the wiring correct? (2) Is the line feed (LF) deleted on the host device?

7.2 CML Used for Test Run

Once the network is established, you can start to check various things using CML execution commands, query commands and parameters. Commands are sent in the following format:

"CML Command" No.ID    (No is omitted if not required)
Example: O3.2    // Turn on output signal 3 of motor ID2

7.2.1 Execution Commands

CML

Name

No

Detail

^

Execution of Direct Motion Data


Start motion with data registered for direct execution

]

Stop


Stop

|

Start Origin Detection


Origin detection operation start (according to K22 to K30 set values)

|1

Move to coordinate 0


Move to coordinate 0

|2

Reset current position


Set the current position to coordinate 0

O

Turn on general output

1 - 3

Turn on the output specified by No

F

Turn off general output

1 - 3

Turn off the output specified by No

)

Servo off


Turn off the servo

(1

Alarm reset


Reset the alarm

(

Servo on


Turn on servo

$

Save Data


Saves all the data

7.2.2 Query Commands

CML

Name

Unit

Reply Contents

?

Direct Mode Motion Data

N/A

Displays the definition contents of S0, A0, P0. Example: ?.1 → S.1=500, A.1=2000, P.1=100000

?50

Output Status

N/A

Displays output status in hexadecimal, OUT.1 = hex value (0: Off / 1: On). B0: Output 1, B1: Output 2, B2: Output 3, B3: ALARM output

?70

Input Status

N/A

Displays input status in hexadecimal, IN.1 = hex value (0: Off / 1: On). B0-B3: Input 1-4, B6: STO Signal, B7: Over Current Signal

?71

Temperature in Driver Case

℃

Temp.1=Value

?72

Power Voltage

0.1V

CVSEN.1=Value

?79

Load Factor

%

PWR.1=Value — percentage of rated torque

?85

Version Information

N/A

Display version information

?90

List of Parameters

N/A

Display the list of all K parameters

?95

Position Deviation

Pulse

Pe.1=Value

?96

Current Position

Pulse

Px.1=Value

?97

Current Speed

Set by K2

Sx.1=Value

?98

Current Torque

%

Ix.1=Value — percentage of the max torque

?99

Motor Status

N/A

Displays motor status in decimal, Ux.1=decimal value. See Motor Status Bit Values below. Warning contents can be checked by ?199.

?999

All Data List

N/A


?1000

All Motion Bank

N/A


Motor Status Bit Values

The reply to ?99 is a decimal number, Ux.ID=Value. Each status bit has a fixed decimal value. Usually only one bit is on, so the reply matches one row directly. Example: Ux.1=512 means motor ID1 has a Low Voltage Alarm.

Bit

Decimal value

Meaning

Type

B0

1

Position Error Overflow

Alarm

B1

2

Overvoltage Alarm

Alarm

B2

4

Overload Alarm

Alarm

B3

8

In-position

Status

B4

16

Servo off

Status

B5

32

Push Motion

Status

B6

64

Over Current Alarm

Alarm

B7

128

Temperature Alarm

Alarm

B8

256

Operation Warning (details with ?199)

Warning

B9

512

Low Voltage Alarm

Alarm

B10

1024

STO Activated

Status

B11

2048

Status Warning (details with ?199)

Warning

B12

4096

ABS Alarm

Alarm

If more than one bit is on, the reply is the sum of their values. Example: Ux.1=528 = 512 + 16 = Low Voltage Alarm and Servo off. Subtract the largest value that fits, then repeat until the remainder is 0.

7.2.3 Warning Query Command

Warning information can be checked with the Warning Query Command (?199, reply WARN.1=Value). Since a warning is a state before the alarm, the motor will not be Servo off. Utilizing warnings helps preventive maintenance of CM3+.

Bit

Warning

Category

Cause

B0

Push Motion Warning

Operation

Reached the target position during Push Motion

B1

Software Limit Warning

Operation

Execution command sent to a target position over the software limit

B2

Limit Sensor Warning

Operation

Limit sensor is on

B3

Manual Mode

Operation

Execution command sent in Manual Mode

B4

N/A

N/A

N/A

B5

Execution Warning

Operation

An operation command is sent when operation cannot be performed

B6

Temperature Warning

Status

Temperature inside driver case exceeds the set value of K61

B7

Over Load Warning

Status

The load exceeds the set value of K62

Numbers for Parameter Setting

If B0 to B# is written in the Setting/Range column of the parameter list, the setting is made in bit units. The contents set to 1 are valid, and the contents set to 0 are invalid. When setting parameters, convert the binary number to a decimal number before setting. Example: binary 01001100b ⇒ decimal 76 ⇒ K##.1 = 76[CRLF]

7.3 Parameter Setting

Set parameters such as resolution, communication settings, and protection functions. Details of the various functions and usage examples are described in Chapter 10.

Setting format:       K Parameter Number = Value [CRLF]
Confirmation format:  K Parameter Number [CRLF]

Example — set 10000 pulses to the positive Software Limit and enable it:
K10=100[CRLF]    // The pulse unit of the Software Limit is 100 pulses
K7=1[CRLF]

Confirming example:
K7[CRLF]         // Send to CM3+
K7.1=1[CRLF]     // Sent from CM3+ to host

Change parameters while CM3+ is stopped. Unless the Data Save command ($) is executed, the previously saved value will remain when the power is turned on again. For safety reasons, some settings require a power off and on (Restart — marked ✓ in the tables below).

7.3.1 Motion Environmental Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

1

Resolution

0: 300 / 1: 600 / 2: 1000 / 3: 1200 / 4: 2000 / 5: 3000 / 6: 5000 / 7: 6000 / 8: 10000 / 9: 12000

ppr

✓

Set the pulse count per revolution. Ref: 10.1

2

Speed Unit

0: 100 / 1: 10 / 2: 1

pps

✓

Set the speed unit for S command

3

Servo ON/OFF Setting

0: Servo Off / 1: Servo On



Set whether CM3+ starts with Servo on or off when powered on

4

Coordinate Direction

0: Positive in CW / 1: Positive in CCW

-

✓

Set the coordinate direction. Ref: 10.2

5

In-position Range

1 - 500

Pulse


Set the range for In-position. Ref: 10.3

6

Speed Override

1 - 100

%


Limit the speed by the set proportion. Ref: 10.4

7

Software Limit Setting

0: Disabled / 1: Detect before moving / 2: Detect after moving

-


Enable/disable the software limit function and its operation. Ref: 10.5

8

Software Limit (+)

0 - depends on Resolution

Pulse (unit set by K10)


Set the operating limit boundary in the positive direction. Ref: 10.5

9

Software Limit (-)

Depends on Resolution - 0

Pulse (unit set by K10)


Set the operating limit boundary in the negative direction. Ref: 10.5

10

Unit of Software Limit

0: 100 / 1: 10 / 2: 1

Pulse

✓

Set the unit for Software Limit. Ref: 10.5

11

Push Motion Operation Mode

0: Continuous (One direction) / 1: Set time (One direction) / 2: Continuous (Both directions) / 3: Set time (Both directions)

-


Set the direction and time for Push Motion. One direction: torque limited only in operation direction; both directions: torque limited in both directions

12

Push Motion Torque

10 - 100

%


Set the torque during pressing operation by command Q or Z in % of the rated torque

13

Push Motion Holding Time

1 - 30000

msec


Set Push Motion holding time. Ref: 8.6.2

14

Open Loop Holding Angle

0: Disabled / 1 - 72

±0.1°


Set the angle difference between target and current position to switch back to closed loop from Open Loop Holding. Ref: 10.6

15

Switch Time for Open Loop Holding Mode

10 - 1000

msec


Set the time to switch to Open Loop Holding after positioning is completed. Ref: 10.6

16

Deceleration Ratio

1 - 500

%


Set the deceleration in % of the A command

17

Creeping Speed

0 - 1000

K2


Set the creeping speed. Ref: 10.7

7.3.2 Origin Detection Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

22

Origin Signal Source

0: Stopper Detection / 1: Stopper Detection (Auto) / 2: Origin Sensor / 3: Origin Sensor (Auto)

-

✓

Set the origin detection signal source and detection method. The origin sensor can only be assigned to input point 1. (Auto): automatic origin detection starts at power on. Ref: 11.1

23

Origin Detection Speed

1 - 32767

pps (set by K2)


Set the speed for Origin Detection

24

Origin Detection Acceleration

1 - 32767

kpps²


Set the acceleration for Origin Detection

25

Origin Detection Direction

0: CW / 1: CCW

-

✓

Set the direction for Origin Detection

26

Origin Offset Distance

±32767

pulse


Set offset amount from detected origin to coordinate origin

27

Unit of Origin Offset Distance

0: 100 / 1: 10 / 2: 1

pulse

✓

Set the unit when Offset is set

28

Stopper Detection Torque

10 - 150

%


Set the torque to detect a stopper for Origin Detection by percentage of rated torque. Ref: 11.1.1

29

Single Turn ABS Function

0: Disabled / 1: Enabled

-

✓

Enable/disable the Single Turn ABS function. Ref: 10.8

30

Origin Detection Completion

0: Disabled / 1: Enabled

-

✓

Function will not operate until origin detection is completed. Ref: 10.9

7.3.3 Gain Adjustment Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

31

Tuning

0: PPI / 1: Tuningless

-


Set CM3+ tuning method. Ref: 11.5

32

Servo Stiffness

10 - 200



Set servo stiffness when Tuningless is selected. Ref: 11.5.1

33

Position P Gain

1 - 5000



Set 3 types of gains when PPI is selected. Ref: 11.5.2

34

Speed P Gain

50 - 5000



Set 3 types of gains when PPI is selected. Ref: 11.5.2

35

Speed I Gain

0 - 5000



Set 3 types of gains when PPI is selected. Ref: 11.5.2

36

S-Curve Gain

0 - 1024



Set S-Curve gain for positioning operation. Ref: 11.5.3

7.3.4 I/O Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

42

Input Filter

1 - 50

msec

✓

Set the filtering time for input signals. Ref: 11.3.1

43

Input Logic

Digits 1-4 = IN1-IN4; 0: Active High, 1: Active Low


✓

Set the input logic. Ref: 5.1.2. Ex: IN1 and IN3 as Active Low → K43=0101

44 / 45 / 46 / 47

Input 1 / 2 / 3 / 4 Function

0: No Action / 1: Origin Sensor / 2: CCW Limit Sensor / 3: CW Limit Sensor / 4: Manual Mode / 5: Servo on-off / 6: Inching-Jog (CCW) / 7: Inching-Jog (CW)


✓

Select the function assigned to IN1 to IN4. Origin sensor can only be assigned to IN1. Inching/jog can only be assigned to IN3 and IN4. Ref: 11.3

50

Inching / Jog Speed

1 - 32767

pps (set by K2)


Set the speed for Inching and Jog operation. Ref: 11.3.2

51

Inching Distance

1 - 100

Pulse


Set the Inching distance. Ref: 11.3.2

52

Inching / Jog Shift Time

0: No Inching Motion / 1 - 3000

msec


Set the time to switch from Inching completion to Jog. Ref: 11.3.2

53

Output Logic

Digits 1-3 = OUT1-OUT3; 0: Active High, 1: Active Low


✓

Set the output logic. Ref: 5.2.2. Ex: OUT3 and OUT1 as Active Low → K53=101

55 / 56 / 57

Output 1 / 2 / 3 Function

0: General Output / 1: In-position Output / 2: Warning Output / 3: Individual ZONE Output / 4: ZONE Output / 5: MOVE Output / 6: BUSY Output / 7: END Output / 8: Servo On Output / 9: Push Motion Output / 10: Origin Set Completion Output



Assign functions to Output 1 to 3. Ref: 11.4.2

58

MOVE Output Threshold

0 - 2147483648

pps (set by K2)


Set the speed threshold to output the MOVE Output signal. Ref: 11.4.2

59

ZONE (-)

±2147483647

Pulse


Set boundary of ZONE Output in the negative direction. Ref: 11.4.2

60

ZONE (+)

±2147483647

Pulse


Set boundary of ZONE Output in the positive direction. Ref: 11.4.2

7.3.5 Status Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

61

Temperature Warning Threshold

0 - 100

℃


Set the threshold to output a temperature warning

62

Load Warning Threshold

0 - 100

%


Set a threshold to output a load warning as a percentage of the maximum torque

63

Position Error Overflow Threshold

1 - 32767

1000 pulse


Set Position Error Overflow Threshold between current and target position. Ref: 10.10

64

Overload Detection Time

100 - 10000

msec


Set the time to output Overload alarm. Ref: 10.11

65

Status LED

0: Enabled / 1: Disabled



Enable/disable the status LED. Ref: 11.8

66

Status Report

B0: In-position/Alarm (Ux.1) / B1: Input Status (IN.1) / B2: Output Status (OUT.1) / B3: No Local Echo / B4: Comment / B5: Warning (Ux.1)



Set the conditions to automatically report to a host controller. Ref: 10.12

7.3.6 Communication Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

71

Baud Rate for Host Communication

0: 38.4 / 1: 9.6 / 2: 19.2 / 3: 57.6 / 4: 115.2

kbps


Set the baud rate. Ref: 10.13

72

Parity

0: None / 1: Even / 2: Odd



Set the parity when transferring data

73

Delimiter

0: CR / 1: CRLF



Set the delimiter type at the end of replied data from CM3+

74

Baud Rate for Slave Communication

0: 38.4 / 1: 9.6 / 2: 19.2 / 3: 57.6 / 4: 115.2

kbps


Set the communication baud rate between slaves when multiple CM3+ are daisy-chained. Ref: 10.13

7.3.7 Logic Bank Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

81

Logic Bank No. to be executed at power on

0 - 30



Sets the Logic Bank number executed when power is turned on. If 0, no Logic Bank is executed. Ref: 9.2

82

Logic Bank Execution Cycle

1 - 30000

msec

✓

Sets the execution cycle of the Logic Bank; it will be executed cyclically at the set period. Ref: 9.2

7.3.8 Monitoring Parameters

K

Name

Setting/Range

Unit

Restart

Reference/Remarks

85 / 86 / 87 / 88

CH0 / CH1 / CH2 / CH3 Data

0: Disabled / 1: Target Position (pulse) / 2: Current Position (pulse) / 3: Target Speed (K2 value) / 4: Current Speed (K2 value) / 5: Target Torque (% of max) / 6: Current Torque (% of max) / 7: Load Factor (% of rated) / 8: Voltage (0.1V) / 9: Temperature (℃) / 10: Input Status / 11: Output Status

-


Output data can be set on up to 4 channels. Ref: 11.7

89

Streaming Interval

1 - 30000

msec


Set the time interval to output Streaming Data. Ref: 11.7

90

Streaming Setting

0: Disabled / 1: Streaming all the time / 2: Streaming while operating



Set the timing to stream data (cannot be saved). Ref: 11.7

7.4 Checking I/O Connection

The CM3+ has 4 inputs, 3 outputs and 1 STO input. Use CML to check the wiring, then check the electrical specifications with measuring devices. Refer to 4.5 Circuit Connection for connection examples.

  1. Turn off the servo. If the servo is on, send the servo off command ").ID". Send the motor status query "?99.ID" and confirm that Ux.ID = 16.

  2. Parameter setting. Assign "General Input" to IN1-IN4 (K44.ID=0, K45.ID=0, K46.ID=0, K47.ID=0) and "General Output" to OUT1-OUT3 (K55.ID=0, K56.ID=0, K57.ID=0).

  3. Check the input signal. Turn off all input signals (Input 1-4 and STO) then send "?70.ID" — expect IN.1=0000. Turn on all inputs and STO then send "?70.ID" — expect IN.1=004F. If you can see the change in input status, the connection is correct. (Depending on the connection, the status logic may be reversed.)

  4. Confirm electrical specifications of input signals. Measure the high and low level voltages with measuring devices and make sure the specifications in 13.2 Electrical Specifications are met — especially with long wiring. When using switches with mechanical contacts, check chattering and adjust the input filter (K42): measure the chattering period T and set K42 > T [msec].

  5. Check the output signal. Use the CML execution commands "O" and "F" to check responses from the connected devices (e.g. O2.3 turns on output 2 of motor ID3; F1.3 turns off output 1 of motor ID3). Connect not exceeding the maximum rated current.

7.5 Origin Setting

Since the position coordinates of CM3+ are incremental, it is necessary to set the origin (coordinate 0) every time CM3+ is turned on. There are two types of origin signal sources: Stopper and Origin Sensor (refer to 11.1 Origin Detection). When the origin signal source is not used, it is also possible to set the current position as the origin using the execution command from the host device. If you do not use the execution command, the position when the power is turned on is 0.

|.1     // CM3+ with ID1 starts the origin detection operation
|2.2    // Set the current position of ID2 as the origin

7.6 Checking Range of Motion

Check the coordinates of the target position for interference with the machine, other axes, and wiring routing. CM3+ sets the target position in pulse units. There are two ways to check: using motion data for direct execution, or using the jog function of the input function. Since the area is checked on the hardware side, check with the set speed slowed down as much as possible. The confirmation method using the jog function:

  1. Calculate the range of motion (related parameter K1: Resolution) from the machine specifications.

  2. Parameter setting: K44.ID=5 (Servo On to Input 1), K45.ID=4 (Manual Mode to Input 2), K46.ID=6 (Inching/Jog CCW to Input 3), K47.ID=7 (Inching/Jog CW to Input 4), K50.ID=10 (jog speed), K52.ID=0 (no inching motion). See 11.3.2 Manual Mode for Inching/Jog operation.

  3. Origin detection. When using an origin sensor as the origin signal source, set Origin Sensor to Input 1 by K44. Use the execution command to turn the servo on and off.

  4. Check the operating range by jog operation: confirm the current position at the maximum point matches the calculation (?96.ID returns Px.ID=****); check for interference with other axes; check the routing of wiring (bending radius, no load on the main connector).

After confirming the maximum operating area, you can carry out the test run more safely by using the Software Limit function (K8 and K9).

7.7 Operation Confirmation

From here, operate CM3+ by sending execution commands from the host device. First set position, speed and acceleration for direct execution, then start (^) and stop (]) the operation.

Points for checking operation: tuning (Gain Adjustment Parameters K31 to K36) and torque during task (Monitoring Parameters K85 to K90). Refer to 11.5 Tuning. Make sure the torque during the task is within the allowable range — torque may differ by installation conditions (see Chapter 3 Installation).

Position

A unit of angle for positioning is defined as 1 pulse. The number of pulses per rotation of the output shaft is called Resolution, unit ppr (pulses per revolution). The default Resolution is 1000 and it can be set from 300 to 12000 ppr by parameter.

Speed

The number of pulses moved per second is defined as 1 pps. The unit of speed is 100 pps by default and can be selected from 100, 10 or 1 pps by parameter (K2).

Example: K2=0 (100pps), S=100  ->  S.1 = 100 x 100pps = 10000 [pps]

Unit conversion to rpm:
Speed[rpm] = S Data x Speed Unit [pps] x 60 [sec/min] / Resolution [ppr]
Example: S=100, K2=0 (100pps), K1=2 (1000ppr)
Speed[rpm] = 100 x 100 x 60 / 1000 = 600 [rpm]

Acceleration

The rate of increase in velocity per second is defined as acceleration, unit pps². The unit of acceleration data "A" is kpps² (kilo-pulse/sec²) = 1000 pps².

Example: K2=0 (100pps), S=500, A=100
Acceleration Time [sec] = 500 x 100 [pps] / (100 x 1000 pps²) = 0.5 [sec]

After calculating the trajectory of motion, set the motion data (position, velocity, acceleration) in CM3+:

P2.1=10000   // Set 10000 pulses to Position of Motion Data 2
S2.1=50      // Set 5000 pps to Speed of Motion Data 2 (unit set by K2)
A2.1=10      // Set 10 kpps² to Acceleration of Motion Data 2

^.2          // CM3+ with ID2 starts operation according to the motion data
].2          // Stop the operation of CM3+ with ID2
Trapezoidal motion profile example

When CM3+ reaches the target position or is stopped by the stop command, the In-position status Ux.2=8 will be sent to the host device, the same as when positioning is completed.