Get Profile Commands

Format: 0AAA 0000 1010 NNNN

N Used for Command Index described below

A Used only by Communication Digital I/O; 0 for PROFIBUS-DP

 

These commands allow the programmer to retrieve the RMC’s stored motion profiles. Only one value in one profile can be read per axis each time the synchronization register is changed

The format of the Command Register for the Get Profile commands is given below:

Note: The Status Area Request area (bits 8-11) of the command and the command data are ignored.

 

     1111|11  |    |

BIT# 5432|1098|7654|3210

     -------------------

HEX      |    |CMND|INDX

VALUE-------------------

0XA0 0AAA|XXXX|1010|0000 GET PROFILE 0, 4, 8 or 12 MODE

0XA1 0AAA|XXXX|1010|0001 GET PROFILE 0, 4, 8 or 12 ACCEL

0XA2 0AAA|XXXX|1010|0010 GET PROFILE 0, 4, 8 or 12 DECEL

0XA3 0AAA|XXXX|1010|0011 GET PROFILE 0, 4, 8 or 12 SPEED

0XA4 0AAA|XXXX|1010|0100 GET PROFILE 1, 5, 9 or 13 MODE

0XA5 0AAA|XXXX|1010|0101 GET PROFILE 1, 5, 9 or 13 ACCEL

0XA6 0AAA|XXXX|1010|0110 GET PROFILE 1, 5, 9 or 13 DECEL

0XA7 0AAA|XXXX|1010|0111 GET PROFILE 1, 5, 9 or 13 SPEED

0XA8 0AAA|XXXX|1010|1000 GET PROFILE 2, 6, 10 or 14 MODE

0XA9 0AAA|XXXX|1010|1001 GET PROFILE 2, 6, 10 or 14 ACCEL

0XAA 0AAA|XXXX|1010|1010 GET PROFILE 2, 6, 10 or 14 DECEL

0XAB 0AAA|XXXX|1010|1011 GET PROFILE 2, 6, 10 or 14 SPEED

0XAC 0AAA|XXXX|1010|1100 GET PROFILE 3, 7, 11 or 15 MODE

0XAD 0AAA|XXXX|1010|1101 GET PROFILE 3, 7, 11 or 15 ACCEL

0XAE 0AAA|XXXX|1010|1110 GET PROFILE 3, 7, 11 or 15 DECEL

0XAF 0AAA|XXXX|1010|1111 GET PROFILE 3, 7, 11 or 15 SPEED

 

Notice that for each command, four different profile numbers are listed. The actual profile read is determined by the axis issuing the command. The following chart shows which profile is affected by a given command on a given axis. Notice that an RMC100-M1-PROFI can only get the first eight (8) profiles:

 

COMMAND

AXIS 0 

AXIS 1

AXIS 2

AXIS 3

0XA0-0XA3

0

4

8

12

0XA4-0XA7

1

5

9

13

0XA8-0XAB

2

6

10

14

0XAC-0XAF

3

7

11

15

 

The data returned where the Status Area Request data would be returned is the requested profile field.

 

Example for PROFIBUS-DP in Compact Mode with Sync:

We wish to get profiles 2 and 7 into the RMC. Looking at the chart above, we can see that we issue Get Profile commands to axis 0 to get profile 2 and we use axis 1 Get Profile commands to get profile 7. Therefore, we can do both at the same time. Suppose that the RMC had the following values for profiles 2 and 7:

 

PROFILE 2

PROFILE 7

MODE 

0x0001

0x0001

ACCEL 

100 

150

DECEL 

70

70

SPEED 

12000 

20000

 

This would take at least five scans because we can get one word of each profile on each axis per scan:

First scan:

 

O+1

00A8h

(Get profile 2 MODE)

 

O+2

XXXXh

(Unused)

 

O+3

00ACh

(Get profile 7 MODE)

 

O+4

XXXXh

(Value of profile 7 MODE)

 

Second scan:

After the Synchronization Output register is incremented, the RMC will process the commands and update the Synchronization Input register to match. At this time, the input registers would hold the following values:

 

I+1

XXXXh

(Axis 0 STATUS)

 

I+2

0001h

(Profile 2 MODE)

 

I+3

XXXXh

(Axis 1 STATUS)

 

I+4

0001h

(Profile 7 MODE)

 

We can now send the second set of requests:

 

O+1

00A9h

(Get profile 2 ACCEL)

 

O+2

XXXXh

(Unused)

 

O+3

00ADh

(Get profile 7 ACCEL)

 

O+4

XXXXh

(Unused)

 

Third scan:

After the Synchronization Output register is incremented, the RMC will process the commands and update the Synchronization Input register to match. At this time, the input registers would hold the following values:

 

I+1

XXXXh

(Axis 0 STATUS)

 

I+2

100h

(Profile 2 ACCEL)

 

I+3

XXXXh

(Axis 1 STATUS)

 

I+4

150h

(Profile 7 ACCEL)

 

We can now send the third set of requests:

 

O+1

00AAh

(Get profile 2 DECEL)

 

O+2

XXXXh

(Unused)

 

O+3

00AEh

(Get profile 7 DECEL)

 

O+4

XXXXh

(Unused)

 

Fourth scan:

After the Synchronization Output register is incremented, the RMC will process the commands and update the Synchronization Input register to match. At this time, the input registers would hold the following values:

 

I+1

XXXXh

(Axis 0 STATUS)

 

I+2

70h

(Profile 7 DECEL)

 

I+3

XXXXh

(Axis 1 STATUS)

 

I+4

70h

(Profile 7 DECEL)

 

We can now send the fourth set of requests:

 

O+1

00ABh

(Get profile 2 SPEED)

 

O+2

XXXXh

(Unused)

 

O+3

00AFh

(Get profile 7 SPEED)

 

O+4

XXXXh

(Unused)

 

Fifth scan:

After the Synchronization Output register is incremented, the RMC will process the commands and update the Synchronization Input register to match. At this time, the input registers would hold the following values:

 

I+1

XXXXh

(Axis 0 STATUS)

 

I+2

12000h

(Profile 7 SPEED)

 

I+3

XXXXh

(Axis 1 STATUS)

 

I+4

12000h

(Profile 7 SPEED)

 

Example for Digital I/O:

We wish to get profile 7 into the RMC. Looking at the chart above, we can see that we issue Get Profile commands to axis 1 to get profile 7. Suppose that the RMC had the following values for profile 7:

 

PROFILE 7

MODE 

0x0001

ACCEL 

100

DECEL 

70

SPEED 

12000

 

The following steps would be taken to read profile 7:

First Command:

Send on Command Strobe going high:

  0001|0000|1010|1000 (10A8) Get Profile 7 Mode

Receive after Acknowledge:

            0000|0001   (01) Low byte of Mode

Send on Command Strobe going high:

  XXXX|XXXX|XXXX|XXXX (XXXX) Unused

Receive after Acknowledge:

            0000|0000   (00) High byte of Mode

 

Second Command:

Send on Command Strobe going high:

  0001|0000|1010|1001 (10A9) Get Profile 7 Accel

Receive after Acknowledge:

            0110|0100   (64) Low byte of Accel

Send on Command Strobe going high:

  XXXX|XXXX|XXXX|XXXX (XXXX) Unused

Receive after Acknowledge:

            0000|0000   (00) High byte of Accel

 

Third Command:

Send on Command Strobe going high:

  0001|0000|1010|1010 (10AA) Get Profile 7 Decel

Receive after Acknowledge:

            0100|0110   (46) Low byte of Decel

Send on Command Strobe going high:

  XXXX|XXXX|XXXX|XXXX (XXXX) Unused

Receive after Acknowledge:

            0000|0000   (00) High byte of Decel

 

Fourth Command:

Send on Command Strobe going high:

  0001|0000|1010|1011 (10AB) Get Profile 7 Speed

Receive after Acknowledge:

            1110|0000   (E0) Low byte of Speed

Send on Command Strobe going high:

  XXXX|XXXX|XXXX|XXXX (XXXX) Unused

Receive after Acknowledge:

            0010|1110      (2E) High byte of Speed

 


Copyright (c) 1997-2015 by Delta Computer Systems, Inc.