Axis Definition Registers

The Axis Definition registers contain axis assignment information. These registers are not intended to be accessed directly by the user. In general, do not read or write to these registers. To define the axes on the RMC, use RMCTools. For details, see the Defining Axes topic.

In rare, advanced cases, the user may wish to change the axis definitions as part of the machine operation. This topic describes these registers and how to write to these registers from a host controller to change the axis definitions. Notice that changing axis definitions requires restarting the RMC, and therefore cannot de done while motion is in progress.

The Registers

The axis definition registers contain two areas: the Current Axis Definitions and the Requested Axis Definitions.

 

RMC75 Address

RMC150 Address

RMC200

Address

Register Name

Data Type

%MD19.0-15

%MD43.0-63

%MD24.0-511

Current Axis Definitions
(Read-Only)

DWORD

%MD19.16-31

%MD43.64-127

%MD25.0-511

Requested

Axis Definitions

DWORD

 

The Current Axis Definitions and the Requested Axis Definitions will generally be the same except in two cases:

(1) The user has written to the requested block and intends to do a warm restart or burn to flash and do a cold restart, or

(2) The requested axis definitions found on startup are invalid for the current hardware configuration; in this case the Current Axis Definitions will be the default for the current hardware configuration.

Changing the Axis Definitions from a Host Controller

Delta recommends changing axis definitions only in RMCTools. However, if your application absolutely requires it, you can change the axis definitions from your host controller (such as a PLC) by writing to the axis definition registers. This section describes how to do so.

The axis definition registers are fairly complex. Therefore, Delta recommends that you do not try to figure them out and write to the ones you need. Instead, Delta recommends that you use RMCTools to define the axes as you desire, then read all of the Current Axis Definition registers and save the data. Then, to apply that axis definition later, write that data to the Requested Axis Definition registers, update Flash, and restart the controller. The procedure is given below:

 

  1. Obtain the Axis Definitions
    For each set of axis definitions that you will need, do the following:

    1. In RMCTools, set up the axis definitions as you desire, and apply them to the RMC.

    2. With your host controller, read the Current Axis Definitions registers, and store that data for later.

  2. Apply the Axis Definitions
    Each time you wish to change the axis definitions, write your stored Axis Definitions to the Requested Axis Definitions registers.

  3. Restart the RMC
    The RMC75, RMC150, and RMC200 can be restarted by writing to the Loader Command register. The following methods are available. See the Loader Command topic for details.

    1. Cold Restart with Flash Update
      This method first updates Flash, then does a cold restart of the RMC, which is the same as cycling power. Use this method if you want to automatically save the Axis Definitions to Flash and then restart.

    2. Cold Restart without Flash Update
      Does a cold restart of the RMC, which is the same as cycling power. You must manually save anything to Flash before using this method.

    3. Warm Restart
      This method does a warm restart, which retains all the data in the RMC, but doesn't save to Flash. Notice that the restart will apply the new axis definitions and will set all variables to initial values.

  4. Restart Communications
    If communicating over USB or serial, wait 4 seconds for the controller to be ready to communicate again. If communicating over Ethernet, wait 8 seconds. After waiting the specified time, re-open the connection to the controller and resume communication.

  5. If you changed axis definitions, some parameters may have changed and you may need to update them.

Axis Definition Registers Details

In each axis definition area (current and requested), there are four 32-bit DWORD registers per axis. Here is how these registers are defined:

n = axis number

Register

Bits

Description

Values

Register (n x 4)+0: Axis and Input Types

(n x 4)+0

0-7

Axis Type

0 - None

1 - Servo Position Control

3 - Servo Velocity Control

5 - Pressure Control

6 - Force (single-input) Control

7 - Force (dual-input, diff.) Control

8 - Position-Pressure Control

9 - Position-Force (single-input) Control

10 - Position-Force (dual-input, diff.) Control

11 - Velocity-Pressure Control

12 - Velocity-Force (single-input) Control

13 - Velocity-Force (dual-input, diff.) Control

14 - Position Reference

15 - Velocity Reference

16 - Pressure Reference

17 - Force (single-input) Reference

18 - Force (dual-input, diff.) Reference

19 - Virtual Axis

20 - Analog Output Only

22 - Position-Accel (single-input) Control

23 - Position-Accel (dual-input, diff.) Control

24 - Velocity-Accel (single-input) Control

25 - Velocity-Accel (dual-input, diff.) Control

26 - Accel (single-input) Reference

27 - Accel (dual-input, diff.) Reference

8-15

Reserved

 

16-23

Input 0 (Primary) Type

0 - None

1 - Position

2 - Velocity

3 - Pressure

4 - Force (single-input)

5 - Force (dual-input, diff.)

6 - Accel (single-input)

7 - Accel (dual-input, diff.)

24-31

Input 1 (Secondary) Type

Same as Input 0 (Primary) Type

Register (n x 4)+1: Input 0 Feedback

(n x 4)+1

0-3

Feedback 0.0 Type

0 - None

1 - SSI/MDT (RMC75 and RMC200 only)

2 - Quadrature

3 - Custom

6 - Analog

7 - MDT (RMC150 only)

8 - SSI (RMC150 only)

9 - Resolver (RMC150 only)

10 - Load Cell (RMC200 only)

 

4-7

Feedback 0.0 Module

RMC75 Module IDs:

0 - Axis Module - Axis 0 Connector

1 - Axis Module - Axis 1 Connector

2 - Expansion Slot #1

3 - Expansion Slot #2

4 - Expansion Slot #3

5 - Expansion Slot #4

 

RMC150 Module IDs:

0 - Comm Slot (not used... yet)

1 - CPU Slot (not used)

2 - Sensor Slot #1

3 - Sensor Slot #2

4 - Sensor Slot #3

5 - Sensor Slot #4

 

RMC200 Module IDs:

0 - Power Supply (invalid)

1 - CPU (invalid)

2 - Slot #2

...

14 - Slot #14

 

8-11

Feedback 0.0 Channel

0 - First Input on the module (notice that each connector on the 2-axis RMC75 Axis Modules starts over at 0)

1 - Second Input on the module

etc.

 

12-15

Reserved

 

 

16-19

Feedback 0.1 Type (only for differential input types)

see Feedback 0.0 Type

 

20-23

Feedback 0.1 Module

see Feedback 0.0 Module

 

24-27

Feedback 0.1 Channel

see Feedback 0.0 Type

 

28-31

Reserved

 

Register (n x 4)+2: Input 1 Feedback - see Input 0 Feedback

(n x 4)+2

see Input 0 Feedback

Register (n x 4)+3: Output Definition

(n x 4)+3

0-3

Output Type

0 - None

1 - Analog Output

3 - Virtual (Outer Loop)

4-7

Output Module

RMC75 Output Module IDs:

0 - Axis Module - Axis 0 Connector

1 - Axis Module - Axis 1 Connector

 

RMC150 Module IDs:

2 - Sensor Slot #1

3 - Sensor Slot #2

4 - Sensor Slot #3

5 - Sensor Slot #4

 

RMC200 Module IDs:

0 - Power Supply (invalid)

1 - CPU (invalid)

2 - Slot #2

...

14 - Slot #14

8-11

Output Channel

0 - First output on the module (notice that each connector on the 2-axis RMC75 Axis Modules starts over at 0)

1 - Second output on the module

etc.

12-31

Reserved

 

 

 

See Also

Loader Command


Send comments on this topic.

Copyright © 2024 Delta Computer Systems, Inc. dba Delta Motion