Skip to main content
Skip table of contents

Profile position mode

In profile position mode, EMCL closes the control loop with a magnitude proportional to the current position. The following diagram depicts how this mode works internally:

Profile Position Mode Diagram

Target position obtained from the command source is processed immediately on reception (system limits, etc.), and is delivered to the profiler afterwards. According to the predetermined parameters, the profiler generates and provides the control unit with the instantaneous target torque to be achieved. Upon reaching the target, a statusword is issued as a notification to other nodes.

Notice that, even though the system closes a position loop, the actuator is controlled through torque demand. This is due to the update rate of the torque measurements supported being one order of magnitude higher than the update rate of the position and velocity measurements, therefore being able to perform a finer grain control of the motion. In addition, this allows the system to take into account the maximum motor current and torque into the control loop.

Profile velocity mode is not supported for AC induction motors.

When using network command source, the validation process for a new target point is the following:

  • The requested target position is sent to the motion controller.
  • After the new target position has been delivered to the drive, the motion controller expects a controlword with a rising edge of the "New set point" bit.
  • Upon reception of the controlword with the rising edge of the "New set point" bit, the motion controller issues a statusword with a "Set point acknowledge" bit rising edge.
  • To signal its ability to accept new set points, the motion controller issues a statusword with the "Set point acknowledge" bit cleared.

If the system was not processing any position, the new position is processed and the motion starts. Nevertheless, if there was a previous set point being processed. the behavior of the system depends on the "Change set immediately" bit in the controlword:

  • If the "Change set immediately" bit of the controlword is 1, the target point is the new set point, and motion is started to reach this new set point.
  • If the "Change set immediately" bit of the controlword is 0, the new set point is added to a buffer of set points, and the motion to the previous set being processed is not altered.

Single set-point

Whenever the motion to reach a set point is in progress and a new set point is validated through the reception of a controlword with a "New set point" bit rising edge and the "Change set immediately" bit set, the new set point shall be processed immediately. The handshaking procedure is depicted in the following figure:

Single set-point with Change Set Immediately Active

Set of set-points

Whenever the motion to reach a set point is in progress and a new set point is validated through the reception of a controlword with a "New set point" bit rising edge and the "Change set immediately" bit cleared, the new set point is buffered in the set point register, the ongoing motion is not modified, and the motion to reach the new set point is not started until all of the previous set points present in the set point register have been processed. In addition, the motion controller can not issue a statusword with the "Target reached" bit set until all set points have been processed, this is, until the set point buffer is empty.

The handshaking procedure is depicted in the following figure:

Set of set-points

New set points can be buffered as long as free set point slots are available in the drive memory. EMCL allocates a buffer with space for 16 set points for this feature. If there are no free slots in the set point buffer, the controller signals this situation through not sending the statusword with the "Set point acknowledge" bit cleared after acknowledging the set point that filled the latest available slot. Instead, this statusword with the "Set point acknowledge" bit cleared is sent upon a slot in the buffer becoming available.

Upon reception of a controlword with a "New set point" bit rising edge and the "Change set immediately" bit set, the new set point is processed, and all data in the buffer is discarded. Therefore, there is no mechanism to pass a "priority point" to the set point queue without having to re-write the queue all over again.

Buffer of set of set-points full

Controlword in profile position mode

The profile position mode uses some bits of the controlword and the statusword for mode specific purposes. The binary representation of the controlword is as follows:

Bit number:

15

9

8

7

6

5

4

3

0

 

-

Halt

-

Abs / rel

Change set immediately

New set-point

-


If no positioning is in progress, the rising edge of bit 4 will start the positioning of the axis. In case a positioning is in progress, the definitions given in the following table shall be used.

Change set immediately

New set-point

Description

0

0 → 1

Actual positioning will be completed (target reached) before the next one gets started (Set of set-points mode)

1

0 → 1

Next positioning shall be started immediately interrupting the actual one.


Next table defines the values for bit 6 and 8 of the controlword.

Name

Value

Description

Abs / rel

 

0

Target position is an absolute value.

1

Target position is a relative value.

Relative option is configured by 0x60F2 - Positioning option code.

Halt

 

0

Execute positioning.

1

Stop axis with profile deceleration


Statusword in profile position mode

The binary representation of the register value and its corresponding meaning is as follows:

Bit number:

15

14

13

12

11

10

9

0

 

-

Following error

Set-point ack.

-

Target reached

-


The meaning of each bit is described below, depending on its value:

Name

Value

Description

Target reached

 

0

Halt = 0: Target position not reached
Halt = 1: Axis decelerates

1

Halt = 0: Target position reached
Halt = 1: Axis has velocity 0

Set-point acknowledge

 

0

Trajectory generator has not assumed the positioning values

1

Trajectory generator has assumed the positioning values

Following error

 

0

No following error

1

Following error


Related objects

0x607A - Target position

0x6083 - Profile acceleration

0x6084 - Profile deceleration

0x6081 - Profile velocity

0x6064 - Position actual value

0x6062 - Position demand value

0x60F2 - Positioning option code

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.