Guide: Motion Comissioning for Beginners

  1. Introduction

  2. Preparation

  3. Single Axis
    3.1. Visual inspection
    3.2. EMC
    3.3. Checking the parameterization
    3.3.1. Timing settings
    3.3.2. Logical axis parameters
    3.3.3. Parameters of the drive actuator
    3.3.4. Motor parameters
    3.4. Initial commissioning of the hardware
    3.4.1. Checking the communication to the drive plate / detecting a firmware upgrade
    3.4.2. Testing any existing reference/limit switches
    3.4.3. Testing any existing safety/additional brakes
    3.4.4. Testing the STO release by the safety technology
    3.4.5. Testing the brake control for small axes
    3.4.6. For small axes, test the position feedback by manual movement
    3.5. Commutationoffset (servo)
    3.6. Rough tuning of the axes and first power on (servo)
    3.6.1. Tuning Speed
    3.6.2. Tuning Position
    3.6.3. PowerOn
    3.7. Testing the direction of rotation and position feedback
    3.7.1. Setting markings on the mechanics and test referencing
    3.7.2. Test movement
    3.7.3. Check the result of the movement
    3.8. Setting the referencing / checking the referencing
    3.9. Evaluation and optimization of the control parameters
    3.9.1. Servo
    3.9.2. Stepper
    3.10. Compensation for dead times on axis couplings
    3.10.1. Diagnosis of dead times in the mappCockpit
    3.10.2. Delay of the leading axis in Automation Studio
    3.10.3. Delay-free coupling within an ACOPOS multi-channel device

1. Introduction
This Article contains assistance on commissioning a drive component or axis group in
the mappMotion system.

2. Preparation
Before starting commissioning, you should get a good overview of the conditions at the system.

  • Who is working in the area on that day and are these workers informed about the commissioning activity?
  • Where are the entrances to the machine’s danger areas and have barriers been put in
    place there?
  • Where are the safety devices and are they functional? (e.g.
    emergency shutdown of compressed air, protective gas supply, …)
  • Where are first aid facilities in case of an emergency?

image

Danger !
Before a dangerous movement is triggered on the drive, a rudimentary safety
circuit with emergency stop functionality must be in place. It is strongly
recommended to provide a mobile emergency stop or dead man’s switch as a
safety device for commissioning. Compliance with safety regulations during
commissioning is the responsibility of the user! The danger area must be clearly
marked off and secured against unintentional entry.

3. Single Axis
3.1. Visual inspection
At the start of commissioning, the work of the other trades should be visually checked for
completeness and correctness.

  • Inverter connection points
    • Network connection cable
    • Connection and pin assignment (wire colors) of the motor cable / temperature sensor / brake
    • Encoder connection
    • DC link connection
  • Inverter node number
  • Connection points on the engine
  • possibly existing gearboxes
  • Possibly existing reference/limit switches
  • Possibly existing safety/additional brakes
  • Check the working area through which the mechanics pass through for possible interference contours
  • Moving mechanics on loose or incorrectly assembled parts and abandoned tools

3.2. EMC
It is very important that an EMC-compliant installation is in place. EMC interference can lead to a
wide variety of mostly sporadic error messages.

Examples:

  • Disturbance of the encoder signals
  • Errors in the evaluation of the analog temperature sensors (error 9013)

image

Electromagnetic compatibility (EMC)!
The instructions in the user manuals of the respective drive must be observed.

3.3. Checking the parameterization
The drive train information obtained through the visual inspection must be compared with the
parameterization, circuit diagrams and data sheets. The Chapter contains the following Sub-Topics

  • Timing settings
    • Fieldbus
    • CPU timer
    • TC#1 Task class and OutputDelay

  • Logical axis parameters
    • Position resolution
    • Movement limits

  • Parameters of the drive actuator
    • Axis reference
    • Mechanical translation
    • Positioner
    • Referencing
    • Movement stop limit
    • Jerk filter
    • IO data points

  • Motor parameters
    • Gear protection

3.3.1. Timing Settings
For servo motors (ACOPOS), the Powerlink cycle time must be a multiple of 400 ÎĽs. Furthermore,
the CPU timer should be synchronized with the fieldbus and the TC#1 should have a tolerance of 0 and correspond to the clock rate of the fieldbus.

For stepper motors, the cycle time of all fieldbuses involved in communication between the
stepper motor module and the PLC must be identical. Furthermore, the CPU timer must be
synchronized with the fieldbus and the TC#1 must have a tolerance of 0 and correspond to the
clock rate of the fieldbus. The output delay of TC#1 must be set to “EndofCycle”.

Figure 1: Powerlink cycle time
image

Figure 2: Cycle time X2X
image

Figure 3: Timing CPU and TC#1

3.3.2. Logical axis parameters
Figure 4: mapp Axis configuration - logical axis limits

3.3.2.1. Position resolution
Since the position data points are mapped on the ACOPOS as integer DINT values, it is important
to familiarize yourself with the set resolution in order to be able to interpret the diagnostic values
correctly later. Furthermore, the target position resolution should not be set finer than the real
encoder resolution.

3.3.2.2 Movement Limits
The movement limits result from the limit values of the motor and the subsequent mechanics.
The minimum value from both limit values must be selected.

  • Mechanics
    For purchased parts, the limit values can be found in the manual. In the case of
    in-house designs, the designer should be able to make a statement.

  • Motor
    For motors, the source of information is the data sheet and the characteristic curve
    field. The information sources listed below are available for B&R motors

Automation Studio – Help
The help contains all current documentation on B&R hardware under the Hardware
section.

Figure 5: AS help - B&R motors

Automation Studio – Hardware view
If both the drive actuator and the motor are configured in the hardware tree, the motor
characteristic field can be opened with a right click via the context menu.

Figure 6: Automation Studio - Hardware tree - context menu
image

Figure 7: Automation Studio - characteristic curve field of a motor
image

B&R website
The characteristics are displayed under the Basic Information section. Alternatively, the
user manual for the respective motor series can be downloaded from the website under
the Downloads section.

Figure 8: B&R website - characteristic curve field of a motor

3.3.2.2.1 Speed limit
The speed (speed) that can be achieved on the motor depends on the intermediate circuit voltage and the type of winding. Exact values can be found in the motor’s characteristic curve field.

Rule of thumb

Example
Gearbox 1:1
360°/revolution
Motor 3000 rpm

image

Dual use regulation
The maximum output frequency of the ACOPOS must be observed. Due to the Dual-Use
Regulation (Regulation (EC) No. 428/2009 from the council of the European Union from 5th of
May 2009), the output frequency of standard devices is limited to 598 Hz. If you want to use
higher output frequencies, you should use a specially approved device.

Number of pole pairs Achievable synchronous speed at 598 Hz
2 17,940 rpm
4 8,970 rpm
6 5,980 rpm

image

DS402-MappMotion integration (as of 5.14)
When using the DS402Ax library, please note that there is a speed limit when reading back the
position. This depends on the Powerlink and task class cycle time.
It is therefore important that the gear ratio is carried out on the B&R side and not on the drive
actuator. The units on the drive actuator should be selected so that the encoder increments
are passed on per revolution of the motor.

For the calculation it is assumed that Powerlink and task class #1 run synchronously.

Example:
Powerlink 2 [ms]
image

3.3.2.2.2 Acceleration/Deceleration Limit
The acceleration limit depends on the achievable torque of the motor, the inertia of the mechanics, the losses due to friction, gravity, etc. and the current of the drive plate. In order to be able to specify an exact value, a detailed design must be carried out. Programs such as ServoSoft can be of good help here.

ServoSoft
There is an installation file for ServoSoft in the Automation Studio installation package. This is used to install a cooperation version and the user can then request a license for ServoSoft from
ControlEng as a B&R customer. (as of 4/2021)

Figure 9: Automation Studio installation - ServoSoft tool selection
image

Rule of thumb:
Acceleration time to maximum speed with constant acceleration
image

Example:
Time to accelerate to maximum speed 0.1s

Typical values:

Dynamics of the axis Acceleration time Speed * Factor
Low 10s 0.1
Normal 0.1 – 1 s 10 - 1
High 0.05s 20

3.3.2.2.3 Jerk limit
The jerk limit limits the change in acceleration and thus prevents sudden changes in the load on
the mechanics. Furthermore, excitation of resonances in the mechanics can also be reduced by a
jerk-limited movement.

Rule of thumb:
Rise time of acceleration to maximum value with constant jerk
image

Example:
Time for acceleration to rise to maximum value 0.1s

Typical values:

Dynamics of the axis Rise time Acceleration * Factor
Low 10s 0.1
Normal 0.1 – 1 s 10 - 1
High 0.01s 100

3.3.2.2.4 Force or torque limit
This limitation is currently only supported by axis groups with active model-based feedforward
control. The path planner uses the model to calculate the expected forces/torques. If these would exceed the limits, the movement will be limited accordingly. However, higher torques can still be generated on the drive by the control interventions of the control cascade (e.g. higher payload than known in the model, collision, etc.). Therefore it is not possible to protect the mechanics. For the topic of gearbox protection, see Chapter 3.3.4.1

Figure 10: Planning limit vs. actual value on the axis

3.3.3 Parameters of the drive actuator
Checking the parameters on the drive actuator is described in more detail below.

Figure 11: Automation Studio configuration - ACOPOS

3.3.3.1 Channel parameters
3.3.3.1.1 Axis reference
The axis reference connects the drive actuator parameters with the information of the logical axis.

3.3.3.1.2 Mechanical translation
The settings for the mechanical translations must correspond to the real mechanics, otherwise the axis will perform an incorrect movement.

image

AS Help Guid: e6bc9c67-fbbc-43ba-9146-9761577ee9bc
Figure 12: AS Help - Unit parameterization

3.3.3.1.3 Position Encoder
Here you have to check whether the correct encoder connection has been selected on the device.

3.3.3.1.4 Referencing
Regarding the referencing method, its applicability to the existing mechanics should be checked.
See also chapter 3.8

image

AS Help Guid: 7243f2f9-aa53-4bbc-8ac8-c16e08384a77
AS-Help: Decision-making aid - Homing

HomeOffset / HomeOffset + Correction
Is the measuring range of the multiturn encoder large enough to represent the required engine
revolutions over the travel range?

Figure 13: Extract from the manual - encoder options
image

Reference switch
Does the signal level of the switch match the set referencing method?

image

AS Help Guid: 07dec4a0-a81d-4b82-8160-25b979c89690
AS-Help: Homing

3.3.3.1.5 LagError limit / Movement termination limit
Is the setting large/small enough so that initial commissioning can be carried out safely? If the
values are too small, unnecessary error messages appear during the tests; if the values are too
large, there is an increased risk of unwanted movements. It is important that a final validation of
this value is carried out after the controller cascade has been commissioned.

3.3.3.1.6 Jerk filter
For individual axes, the jerk filter can be used to adapt the movement curve. By reducing the jerk
involved, the mechanics are protected. The maximum value is 0.4s for ACOPOS P3 and 0.2s for ACOPOSmulti/ACOPOSmicro.

Further information applies to axes that are positioned using cyclic position setpoints (e.g.
PathGen - axis groups).

3.3.3.1.7 IO data points
Are all required data points connected?

3.3.4 Engine parameters
Checking the parameters on the motor is described in more detail below.

Figure 15: Automation Studio configuration - motor parameters

3.3.4.1 Gear protection
The transmission is usually the component with the lowest load capacity in the drive train. The
peak moments of the electric. Drives can generate are very large in relation to the nominal
torques. In order to protect the gearbox from damage, it is often necessary to limit the torque.

Engine parameters
The specification of the parameters in the motor data record affects the torque limiter on the drive actuator and can thus ensure effective protection of the transmission.

Figure 16: Automation Studio configuration – gearbox parameters

PLCopen function block “MC_BR_LimitLoad_AcpAx”
With modular machine concepts, the limitation on ACOPOS can be specified during runtime via the application.

image

AS Help Guid: 07dec4a0-a81d-4b82-8160-25b979c89690
Figure 17: AS Help – MC_BR_LimitLoad_AcpAx

3.4 Initial commissioning of the hardware
After switching on the power supply for the first time, the basic function of the drive must be ensured

  • Checking the existing communication to the drive actuator
  • Waiting for typically required firmware upgrade
  • Testing of any existing reference/limit switches
  • Testing of any existing safety/additional brakes
  • Testing the STO release by the safety technology

image

Danger!
For small axes, additional manual testing can be performed by hand. This is
only possible if opening the brake and manual intervention does not pose any
danger to the person commissioning the system.

  • For small axes, test the brake control
  • For small axes, test the position feedback by moving manually

3.4.1 Checking the communication to the drive plate / detecting a firmware upgrade
The drive actuators cannot be seen via the hardware comparison like normal IO modules, so
alternative methods for checking the connection status are required.

mappCockpit – drive operation watch
Figure 18: mappCockpit - drive operation Watch – Communication Ready
image

PLCopen/mapp function blocks
Figure 19: Automation Studio Watch - MappAxisBasic - CommunicationState

LED status on the hardware
Figure 20: Automation Studio Help - ACOPOS P3 LED startup behavior
image

Troubleshooting

  • Node number setting
  • Bus connection lines
  • Broken device
  • Missing libraries e.g. McAcpAx (servo), McStpAx (for steppers), ….
  • With DS402, module monitoring can lead to problems during startup. In this case, module
    monitoring must be deactivated and a project-specific solution created using the IO ModulOK
    or the axis status “CommunicationReady”.

3.4.2 Test any reference/limit switches that may be present
The drive actuators cannot be seen via the IO mapping like normal IO modules, so alternative
methods for checking the IO status are required.

mappCockpit – drive operation watch
Figure 21: mappCockpit - drive operation Watch – IO signals
image

PLCopen/mapp function blocks
Figure 22: Automation Studio Watch - MappAxisBasic - DigitalInputsStatus
image

3.4.3 Testing any existing safety/additional brakes
This is usually a standard IO check, so it will not be discussed in further detail here.

3.4.4 Testing the STO release by the safety technology
The IO data point DriveEnable indicates the state of the STO level for both wired and integrated
safety technology. If the safety circuit is acknowledged and closed, a TRUE level is present here.
Only then can the axis carry out a movement.
See also chapter 3.4.2.

image

Danger of wear!
Most servo motors are only equipped with holding brakes and are therefore not
suitable for braking a moving load.
By taking appropriate measures, such as a time delay for the STO signals on the
safety technology, the functional control should still be given the opportunity to
stop the axis. This shutdown can be monitored safety-wise by ramp monitoring
in order to keep the reaction time short in the event of an error.

3.4.5 For small axes, test the brake control
By testing the brake control, the function of the brake can be tested. Furthermore, the motor cable cannot be mixed up with another motor.

  • It should be noted that the brake can only be opened manually when the position
    controller is inactive and the safety circuit is closed.
  • If the drive is switched on and then switched off, the brake is closed again.
  • If a negative edge occurs at the STO input, the brake is closed.

image

Danger!
This is only possible if opening the brake and manual intervention does not pose any
danger to the person commissioning the system.

mappCockpit – drive operation commands
Figure 23: mappCockpit - Drive Operation Commands – Brake Operation
image

PLCopen/mapp function blocks
Figure 24: Automation Studio Watch - MappAxisBasic - BrakeRelease

Troubleshooting

  • Checking the wiring of the motor cable. The polarity is relevant for the brake.
    Figure 25: Automation Studio Help - Extract from the motor cable cable plan
    image

  • Some drive actuators require an external supply voltage or cable bridge to supply the
    brake control. The manual must be checked.

  • Broken device

3.4.6 For small axes, test the position feedback by moving manually
The function of the position feedback can be tested by testing using manual actuated movement. Furthermore, the sensor cable cannot be mixed up with another motor.

image

Danger!
This is only possible if opening the brake and manual intervention does not pose any
danger to the person commissioning the system.

When position control is inactive, the actual value is displayed at the position output.

mappCockpit – drive operation watch
Figure 26: mappCockpit - drive operation Watch – IO signals
image

PLCopen/mapp function blocks
Figure 27: Automation Studio Watch - MappAxisBasic - BrakeRelease
image

Troubleshooting

  • Checking the cabling of the encoder cable
    Figure 28: Automation Studio Help - Extract from the hybrid cable cable plan
    image

  • Broken device

2 Likes

3.5 Commutationoffset (servo)
Single phasing is used to find the commutation angle, which is necessary for the electrical. Commutation of the servo motor is required.

Cases in which this step can be skipped:

  • For B&R motors with single/multi-turn Endat encoder. With these, the angle has already
    been measured during production and in the electrical. Type plate deposited.
  • B&R motor with resolver encoder. With these, the motor shaft is aligned by production
    so that the angle is 0.

For all other motors with absolute encoders, a commutation determination must be carried out
once using the cockpit or the PLCopen function block “MC_BR_AutoTuneMotorPhasing_AcpAx”.

For motors without an absolute encoder or with a changing relationship between the encoder
position and the motor shaft, commutation must be carried out before each “PowerOn”. This can be specified via the motor parameters and carried out by ACOPOS.

Figure 29: Automation Studio configuration - motor parameter commutation determination

image

AS-Hilfe Guid: f84bf37e-a9ac-44d8-9be6-37c0f5e7d34b
Figure 30: Automation Studio Help - MC_BR_AutoTuneMotorPhasing_AcpAx (mapp 5.15)

image

If the connection between the encoder and motor shaft has been loosened, this
step must be repeated, even if this motor was previously affected by the exceptions
described above! Is an electric If the nameplate is present, the newly determined
values can be burned into the encoder memory.

3.6 Rough tuning of the axes and first power on (servo)
Before position control is activated on a servo axis (PowerOn), the parameters of the controller
cascade should be autotuned. You start with the innermost control loop and work your way
outwards. The current controller is set by the ACPOS based on the motor parameters and
therefore typically does not need to be adjusted.

  • For safety reasons, large hanging axes should be lowered as close as possible to the lower end
    position using aids such as cranes, etc., so that in the event of an error, only the lowest
    possible kinetic energy is generated until the end stop is reached.
  • Tuning speed (Check parameters for plausibility)
  • Tuning position (Check parameters for plausibility)
  • Power On (hearing test, feel test, possibly trace following error)

3.6.1 Tuning Speed
In order to be able to carry out autotuning with the mappCockpit, you can typically leave the
default settings for now, with the exception that a valid value (e.g. 2 mm) must be set for “Max
position error”.
Typical values for proportional gain are: 0.1 – 20

Figure 31: mappCockpit - autotuning speed controller

image

AS Help Guid: 47329e4a-9dd6-42de-b7d9-94733fa83f4c
Figure 32: Automation Studio Help – Autotuning chapter (from ACP10 Legacy but still valid for MappMotion)

3.6.2 Tuning position
In order to be able to carry out autotuning with the mappCockpit, you can typically leave the
default settings for now, with the exception that a valid value (e.g. 2 mm) must be set for “Max
position error”.
Typical values for proportional gain are: 25 – 600

Figure 33: mappCockpit - Autotuning position controller

image

AS Help Guid: 47329e4a-9dd6-42de-b7d9-94733fa83f4c
Figure 32: Automation Studio Help – Autotuning chapter (from ACP10 Legacy but still valid for MappMotion)

3.6.3 PowerOn
After the controller cascade has been initially roughly set, the position control (“PowerOn”) can be activated for the first time. Now you can use the hearing test and the optional feel test to roughly estimate whether the control parameters lead to a stable system.

If the motor is loud and noisy, the control loop is not stable. See chapters 3.9 - 3.9.2

3.7 Direction of rotation and position feedback test
After the controller cascade has been commissioned for the first time, the first movement can now be triggered. This is used to determine the correct direction of rotation setting and to check the position feedback and should be carried out with very low speed and acceleration.

image

Danger!
During these tests it is necessary to take measurements of the mechanics. The
safety of workers must be guaranteed at all times, even if additional time is
required due to the axis being switched off and the safety circuit being
interrupted. Safety is more important than speed!

  • PowerOff, STO before entering the system!!
  • Mark position on mechanics and set test referencing
  • Carry out movement with very low speed and acceleration
  • Use a measuring device to check the movement carried out on the mechanics.

3.7.1 Set marking on the mechanics and test referencing
So that a small movement is sufficient to determine the direction of movement and the correct
distance, it is important to look for appropriate references on the mechanics for the measurement. If none are available, a mark can be created with an adhesive strip and a pen.

A HomeDirect should be used so that the position display in the cockpit has a defined value
(typically 0 units) when starting and a movement can be triggered.

Figure 35: Measuring the position with a measuring device
image

Figure 36: mappCockpit - executing the “Direct” referencing

3.7.2 Test movement
A small but still easily measurable distance is typically 10 mm. If the movement should last approx. ~7 seconds, the speed is 2 mm/s and the acceleration is 2 mm/s².

After starting the movement, you can see that the position changes in the watch, and the
movement is also visible in the Trend column.

Figure 37: mappCockpit - MoveAbsolut
image

3.7.3 Check the result of the movement
The position display in the mappCockpit must now be compared with the movement of the
mechanics.

Figure 38: mappCockpit - target position after movement
image

Figure 39: Measuring the position with a measuring device
image

Troubleshooting:
See chapter 3.3.3.1.2

3.8 Setting the referencing / checking the referencing
To ensure that there is a correct position reference for further tests on the axis, the axis reference should now be finally set.

See also chapter 3.3.3.1.4

image

Danger!
The software end positions are always related to the currently set referencing. If the
referencing is incorrect, mechanical damage can occur.

Absolute encoder
It is advisable to also use the addition “Correction” in the “HomeAbsolute” mode.

  • Procedure for determining the reference offset:
  1. Display the raw value on the position output without offset.
    Perform a HomeAbsolute with offset 0

  2. Calculating the offset


    Example:
    Raw value on the display: 595643 [mm]
    Desired position after referencing: 1000 [mm]
    Offset: - 594643 [Units]
    image

  3. Save the offset
    The calculated offset must be saved in a non-volatile manner for later position restoration

  4. Final referencing
    Performing a HomeAbsolute + correction with Calculated Offset

  • Procedure to restore referencing:
  1. Loading the saved reference offset

  2. Final referencing
    Performing a HomeAbsolute + correction with offset loaded

Setting the bridging range when using the R-impulse
When using the R-pulse, the reference pulse blocking distance should be set correctly. This
functionality is intended to prevent different R pulses from being found due to the jitter/switching hysteresis of the reference switch. The PLCopen function block MC_ReadParameter can be used to access the required diagnostic values.

Figure 40: Illustration of R pulse and reference pulse blocking distance
image

Figure 41: Automaton Studio help - excerpt MC_ReadParameter

Figure 42: Possible calculation of a recommended value

image

AS Help Guid: ca1f957a-a5a5-48c1-843b-f25a48dbd9af
Figure 43: Automation Studio Help - MC_ReadParameter
image

image

A search for the R-Impuls can also be started with a HomeDirect. The axis
moves to the R pulse and then stops.

1 Like

3.9 Evaluation and optimization of the control parameters
3.9.1 Servos
This chapter provides information on using the position controller with ACOPOS servo motors
(McAcpAx library).

  • Trace for controller cascade assessment
  • Optimizing the control loop
  • Further options for ACOPOS servo motors

3.9.1.1 Trace for controller cascade assessment
A typical trace configuration for diagnosing the controller cascade is listed below. The ACOPOS
sample time was set so that we can record ~1.2 seconds on the ACOPOS. If the test movement is
shorter, the sample time should be set smaller again. For certain analyses, individual ParIDs can
also be removed in order to achieve a lower sample time.

Figure 44: mappCockpit - Trace configuration - ACOPOS controller cascade

3.9.1.2 Optimizing the control loop
The main criterion for good position control is the stability of the control loop and the smallest
possible tracking error (LAG_ERROR). Since the following error will never disappear, it is important to set a clear goal for the maximum permitted following error before optimization. To do this, the requirements of the process must be evaluated in order to derive the accuracy requirement for the axis.

To evaluate the position control, a trace recording is started and a test movement is carried out.
The test movement is gradually increased towards the maximum values of the axis. First slowly
over the entire distance to set up and check the software end positions. Then with an appropriate safety distance to the end positions to the maximum dynamic. It is important to ensure that the axis can move beyond the target position by the following error value.

image

Danger!
During these tests, high speeds and forces are deliberately applied to the
mechanics. Loose or incorrectly assembled parts can become detached from the
system or even fly around. Therefore, special attention must be paid to safety!

The software end positions are always related to the currently set referencing. If the
referencing is incorrect, mechanical damage can occur.

Evaluation of the trace diagrams:
The examples shown below were created on an ETAL410 system. The traces are intended to show
the fundamentally relevant information for setting the control loop. Since every mechanical system behaves slightly differently, they are only examples and cannot represent all possible cases.

Figure 45: ETAL410.1033-1
image

Example 1 - Effect of position resolution on the position controller
The selected position resolution of the axis has no influence on the set control parameters. Only
the resolution of the target position and thus the final position reached is changed.
The ParIDs (position, speed) recorded in the trace are in ACOPOS units and are therefore scaled by the value set in the resolution.

Figure 46: Position controller following error for identical movement, control with different resolution

Example 2 – Cogging torques (cogging)
The LVA13.R0030D000-0 has a number of pole pairs of 4. If you compare the oscillations of the
following error with the position, you can clearly see that they are always related to the position of the rotor. At slow speeds you can see a period every 45° and at fast speeds you can see a period every 90°. It can be assumed that this oscillation is caused by the characteristics of the rotor’s magnetic field. The deviation of 2.88° to 362.88° in the measurement is due to the resolution of the trace.

Figure 47: Evaluation of the superimposed vibration
image

Example 3 – Speed Control - Proportional Gain (Kv)
The proportional gain factor of the speed controller should be chosen as large as possible without the controller becoming unstable. The autotuning values are usually quite good here; if necessary, you can optimize them manually.

Figure 48: Automation Studio configuration - Acopos Micro control parameters – SCtrl Kv
image

In the left case with SCtrl Kv 0.2 you can see that the speed tracking error runs very evenly, while in the right case with SCtrl Kv 0.5 the course has a better relationship to the driven contour. On the position tracking error you can also see a difference in the remaining control deviation; with a stronger speed controller, the end position is reached better.

Figure 49: PCtrl Kv 350 ;SCtrl Kv 0.2
image

Figure 50: PCtrl Kv 350 ;SCtrl Kv 0.5
image

Example 4 – Position Control - Proportional Gain (Kp)
The proportional gain factor of the position controller should be chosen as large as possible without the controller becoming unstable. The autotuning values are usually quite good here, but if necessary you can optimize them manually.

Figure 51: Automation Studio configuration - Acopos Micro control parameters – PCtrl Kv
image

In the left case with PCtrl Kv 200 you can see that the position tracking error is significantly larger (worse), here we reach ~1000 units, while in the PCtrl 350 case only a maximum of ~550 units is achieved.

Figure 52:PCtrl Kp 200;SCtrl Kv 0.5
image

Figure 53:PCtrl Kp 350;SCtrl Kv 0.5
image

Example 5 – Speed Control – Integration Time (Tn)
If there is a permanent control deviation (position tracking error) at the end of a movement, an
integration component on the controller can lead to the deviation being corrected. Reasons for a
permanent deviation could be friction, gravity, process forces, etc. The smaller the time unit for the integration component, the stronger it is, 0.5 “weak” → 0.005 “strong” applies.

Figure 54: Automation Studio configuration - Acopos Micro control parameters – SCtrl Tn
image

In the left case with Tn 0.1 you can clearly see that it takes much longer to settle. In the right case with Tn 0.01, the integration component is significantly more effective and the target position is adjusted more quickly.

Figure 55: PCtrl Kp 350 ; SCtrl Kv 0.5 Tn 0.1
image

Figure 56: PCtrl Kp 350 ; SCtrl Kv 0.5 Tn 0.01
image

Example 6 – Integration Time (Tn) Speed controller vs. position controller
An integration component should only ever be used on one controller. If the I component is used in the speed controller, both the speed tracking error and the position tracking error are influenced. If the I component is used on the position controller, only the position controller is influenced.

Figure 57: PCtrl Kp 350 ; SCtrl Kv 0.5 Tn 0.01
image

Figure 58: PCtrl Kp 350 Tn 0.01;SCtrl Kv 0.5
image

Example 7 – FeedForward (Simple model-based feedforward)
The FeedForward function makes it possible to store a single-mass model of the load in the drive
controller. Based on the movement profile and the set parameters, an additive current
(FFCTRL_ISQ) is then calculated and applied directly to the motor. This relieves the load on the
position control, especially in the area of the acceleration phase.

Figure 59: Automation Studio configuration - Acopos Micro control parameter FeedForward
image

In the left case you can see the progression without FeedForward, here large position tracking
errors ~ 500 units can be seen, especially at the points where the acceleration changes. In the right case, the FeedForward function has been activated, which generates a current that matches the acceleration. We see that the position tracking error is now only ~ 200 units in size.

Figure 60: PCtrl Kv 350 ; SCtrl Kv 0.5 Tn 0.01 without FF
image

Figure 61: PCtrl Kv 350; SCtrl Kv 0.5 Tn 0.01 with FF
image

image

AS Help Guid: 24bedca2-0f94-4a43-a85a-ea47f386b4ea
Figure 62: Automation Studio help – FeedForward setting aid

“Standard” mode:
The tuning movement takes place on both sides of the starting position. For
short distances it may be that no valid result can be determined.
image

Passive mode:
In this mode, only the “Command” and “Direction” parameters are relevant. Only the
values “Positive” and “Negative” are permitted for the “Direction” parameter.
So that you can see the result values in the cockpit, you should first change the
controller mode.

Figure 63: mappCockpit - axis operation - configuration
image

The tuning is then started using “Mode: Passive” and “Command: Start”. The
active tuning is displayed in the Watch window.

Figure 64: mappCockpit - axis operation - watch
image

The movement is then carried out in the selected direction. Now the
tuning can be done using “Mode: Passive” and “Command: Finish”. The parameters are activated on the controller and displayed in the configuration window under Feed Forward.

It makes sense to carry out several runs of the tuning and to view the results from different directions “positive” and Summarize “negatives” and choose an average value for the parameters.

image

AS Help Guid: a3ac93e2-83c8-4828-9e94-4cffef4e0ca2
Figure 65: Automation Studio help - Manual setting of the FeedForward parameters

Figure 66: Automation Studio help – FeedForward setting aid excerpt

The setting values should be increased from small to large. Values that are
too large can cause heavy strain on the mechanics due to rapidly jumping and
excessive current values. During tests, it should also be checked beforehand
for a reasonable following error termination limit.

Example 8 – Servo Loop Optimizer (Frequency Response Analysis)
The procedure for using the Servo Loop Optimizer in connection with mappMotion is described in the guide mappCockpit.

A normal course can be seen for our test axis. There are no filters to set.

Figure 67: Servo Loop Optimizer - Speed Controller view
image

Figure 68: Servo Loop Optimizer - Position Controller view
image

image

Servo loop optimizer
The help contains several case studies in the subchapter “Using the Servo
Loop Optimizer”. Therefore, no further case studies are discussed in this
guide.

AS Help Guid: 3dcfff9e-341e-48cc-b7a3-0fcc56da82f5
Figure 69: Automation Studio Help – Servo Loop Optimizer

in this Post there are also hints about the usage of SLO
Guide: Work with mapp Cockpit

3.9.1.3 Further options for ACOPOS servo motors
The ACOPOS is a very comprehensive system that is continually being improved and expanded.
The following list is intended to provide assistance in selecting additional features. Detailed
information about how it works can then be found in the Automation Studio help.

  • ServoLoopOptimizer (frequency response analysis, filter parameterization)
  • Model-based control (extended model-based control)
  • Suppression of periodic disturbances
  • Controller cascade cycle times
  • Setting current controller mode
  • PWM switching frequency
  • Field weakening
  • Sensorless operation
  • Speed controller speed dead zone(ParID 1706 since 5.18.1)

3.9.2 Steppers
Stepper motors are usually operated in pure control value operation. In some applications,
however, the use of a position controller is necessary to improve positioning. This chapter provides information on using the position controller with stepper motors (McStpAx library).

  • Background to position control in stepper motors
  • Trace for controller cascade assessment
  • Standstill current when control is activated
  • Optimizing the control loop
  • Notes on control behavior due to externally applied load

3.9.2.1 Background on position control for stepper motors
When the stepper motor is controlled, a magnetic field is impressed into the motor. This causes
the rotor to align itself based on this magnetic field, which fixes the position. However, the
magnetic forces have a certain spring effect, and external forces result in a deviation between the impressed microstep position and the actual rotor position.

This means that a stepper motor without control behaves in a slightly springy manner within a full step. Only when there is a deviation greater than one full step is it considered a step loss.
By activating the position control, the controller has the opportunity to shift the impressed
magnetic field in such a way that the spring effects due to different loads are compensated for and the rotor is tracked to the target position. The impressed magnetic field position then no longer corresponds to the target position, but is shifted so that the rotor is guided to the correct position.

3.9.2.2 Trace for controller cascade assessment
A typical trace configuration for diagnosing the controller cascade is listed below. Since all data is recorded on the PLC, the PLC sample time is the relevant setting and should be adapted to the
cycle time of TK#1 (0s → automatic definition). Since there is a sufficiently large memory available on the PLC, you can set sufficiently large values for the recording time.

Figure 70: mappCockpit - Trace configuration - controller cascade stepper

3.9.2.3 Standstill current with activated control
It should be noted that the position controller is active even in the PLCopen standstill state and that there are therefore compensating movements on the motor shaft. These movements must be able to be carried out by the motor with the standstill current, so it must be set to a correspondingly high level.

Example:
The motor is at a standstill and something is then pressing against the axle.

3.9.2.4 Optimizing the control loop
The main criterion for good position control is the stability of the control loop and the smallest
possible tracking error (LAG_ERROR). Since the following error will never disappear, it is important to set a clear goal for the maximum permitted following error before optimization. To do this, the requirements of the process must be evaluated in order to derive the accuracy requirement for the axis.

To evaluate the position control, a trace recording is started and a test movement is carried out.
The test movement is gradually increased towards the maximum values of the axis. First slowly
over the entire distance to set up and check the software end positions. Then with an appropriate safety distance to the end positions to the maximum dynamic. It is important to ensure that the axis can move beyond the target position by the following error value.

Setting of “Prediction time” to correctly display the lag error
Depending on the hardware structure, the data requires different runtimes via the fieldbus. Therefore, the time comparison between the target and actual position is carried out using the “Prediction time” value so that the following error is calculated correctly.

If the following error curve is identical to the orange line, the “Prediction time” is too small. If
the following error curve is identical to the blue line, the “prediction time” is too large.
If the following error curve is identical to the green line, the “prediction time” is correct.
The greater the acceleration, the better you can see the effect.

Figure 71: Effect of “Prediction time” on the following error (no-load case)
image

If there is a load, the curve may deviate from the figure above. In this case, the setting is correct if the lag error has the smallest course in terms of magnitude.

image

Stepper motors with active position control via the McStpAx library should
always be operated as directly as possible on the CPU to minimize dead times.
For X20 CPUs this would be the X2X link on the CPU itself. For APCs on an X2X
fieldbus interface which is provided by an interface card in a slot.

image

Compared to other SM modules, the X20SM1446-1 has an additional
module-specific component and therefore the delay is slightly larger.

image

AS Help Guid: 8936ca04-3e15-4ff7-934e-8d9cb18cfb1d
Figure 72: Automation Studio Help - McStpAx position control

image

“Minimal Latency” setting on the fieldbus
With this mode, the overall running time of the data can be reduced, which
has a positive effect on the “prediction time”. However, it should be noted
that the input delay setting reduces the usable computing time for task
class #1 to half. This means with a 2ms cycle time you only have 1ms
processing time in TK#1.

Figure 73: Automation Studio configuration - CPU properties

Figure 74: Automation Studio configuration - Powerlink properties
image

Figure 75: Automation Studio configuration - bus coupler properties
image

AS Help Guid: 50b99665-c6a2-4d37-95f2-e18af0c9e462
Figure 76: Automation Studio Help – Best possible response time

Control parameter optimization
Example 1 - Proportional Gain
The system is stable but very sluggish, the load always lags - the selected Kp value should be increased between 15-25%.

Figure 77: Stepper – Trace Example 1.1
image

System is stable - the selected Kp value shows rapid control behavior.
Figure 78: Stepper – Trace Example 1.2
image

System is unstable – the selected Kp value should be reduced between 15-50%.
Figure 79: Stepper – Trace Example 1.3
image

The system is very unstable, the smallest excitations lead to an oscillation - the selected Kp value
should be significantly reduced between 50-90%.
Figure 80: Stepper – Trace Example 1.4
image

Example 2 – Directional Dependent Error or Friction
Here you can see that a different actual position is reached, depending on which direction the
target position is approached from. An I component can help here in order to regulate the
remaining control deviation.
Figure 81: Stepper – Trace Example 2
image

3.9.2.5 Notes on control behavior due to externally applied load
For example, if an external force is applied to the motor shaft through manual intervention, the
control loop begins with a corresponding counter reaction and shifts the magnetic field by
applying a corresponding manipulated variable (orange phase in the picture). As soon as the
external force is removed, the shaft jumps uncontrollably and with high dynamics to the position
of the magnetic field and is then returned to the target position by the controller. (Red phase in
the picture)

Figure 82: Response of the position controller of a stepper motor controlled using McStpAx
image

If the positional deviation is maintained for a long time by a large force, the magnetic field exceeds one full step and a step loss occurs. This can then be interpreted as a rattling noise. The motor then jumps by up to two full steps. Such behavior is a concrete sign of a current setting that is too low or that the motor is generally overloaded.

3.9.2.6 Notes on the resonance behavior of stepper motors
Depending on the mechanics, stepper motors can tend to excite resonances in a certain speed
range. These speeds should then be avoided for the process.

What influences behavior

  • Motor current
  • Microstep / full step operation
  • Mechanics (e.g. belt tension)

Position control cannot improve this behavior; operation in the resonance range should also be
avoided for position-controlled axes.

Figure 83: Behavior of a stepper motor at different speeds (Near the resonance area)

3.10 Compensation for dead times on axis couplings
If we use the coupling functions (MC_GearIn, MC_CamIn,…) there may be dead times and therefore a speed-dependent position error due to the transfer time of the data from one axis to another.

3.10.1 Diagnosis of dead times in mappCockpit
In order for the motors to perform an identical movement, it is important that the position controllers get the same positions at the same time. It is therefore important to compare the data from PCTRL_S_SET, the axes involved, with each other.

Figure 84: Trace of a 1:1 coupling at 1440° with a speed of 5000°/s Delay 0.002s

image

From the trace you can determine the time offset of 0.002s. You can also clearly see that there is
no offset when standing still. If there is an offset when stationary, this must be taken into account when calculating the difference!

Figure 85: Trace of a 1:1 coupling at 1440° at a speed of 5000°/s without delay

3.10.2 Delay of the leading axis in Automation Studio
The leading axis (master) must be delayed using the “Total Delay time” parameter.

Figure 86: Automation Studio configuration – ACOPOS position controller

Figure 87: Relationship between position generator and position controller Position-ParID

image

Further information on the subject of signal delays in couplings can be found in
the TM417 training module and the Automation Studio help.
Guid: 4e7c1002-8e5c-4759-a61b-8162a52c1d4c
Figure 88: Automation Studio Help – Signal delays in couplings

3.10.3 Delay-free coupling within an ACOPOS multi-channel device
In order to be able to create an instantaneous coupling with, for example, a Gear_In on a multichannel device, you must use the axis cross connection. If you don’t do this, data will also be transmitted within a device via the Powerlink stack and there will be delays.

Cross-communication on the slave axis can be activated via a ParID table.

Then an “Alternative Value” feature is required so that the ParID of the cross connection can be
referenced when coupling.

During GearIn, the slave axis’ own axis reference is then specified as the master and the
“Alternative Value” is selected as the source.

Figure 89: Delay-free coupling on a multi-channel device
image

image

Further information on the topic of axes cross-connection can be found in the
Automation Studio help.
Guid: 0287a9ee-ff61-4405-b3f5-7925e34ca829
Figure 90: Automation Studio help – Axis cross connection
image

4 Likes
  1. axes group
    4.1. Checking basic settings in the project
    4.1.1. Broadcast channel on the PLK
    4.1.2. Setting and checking the fieldbus cycle time
    4.1.3. Synchronization of the system clock to the fieldbus
    4.1.4. Setting the cycle time and tolerance for the Motion Manager task class
    4.2. Checking the correspondence between the real axes and the mechanical system of the axis group
    4.2.1. Directions of rotation in the axis coordinate system (ACS)
    4.2.2. Linear dependencies in the joint coordinate system (JACS)
    4.2.3. Cartesian movement in the machine coordinate system (MCS)
    4.3. Path limits
    4.3.1. Limit ratio and limit check resolution
    4.3.2. Axis group feature path definition
    4.4. Torque precontrol of the axis group
    4.4.1. Measuring the model parameters with the Ident tool
    4.5. Geometry parameters
    4.6. Evaluation of process accuracy
    4.6.1. Determination of the Cartesian following error in the PCS
    4.6.2. Recording typical trace data of an axis group

4. Axes group

image

The definition of the coordinate systems used in this chapter (ACS, JACS, MCS, …) can be found in the AS help.

AS Help Guid: 60babe03-24a3-460d-b015-b0c0426d3d46
Figure 91: Automation Studio Help - Excerpt from coordinate systems

4.1 Checking basic settings in the project
The position generation of the axis group takes place centrally on the PLC. Therefore, a few basic settings in the project need to be checked.

  • Broadcast channel on PLK
  • Set and check fieldbus cycle time (suitable for setpoint specification)
  • Synchronization of the system clock on the fieldbus
  • Cycle time and tolerance for TK#1 (Motion Manager task class)

4.1.1 Broadcast channel on the PLK
For a cyclic setpoint specification from the PLC to the ACOPOS axis, a broadcast channel definition
is required on the Powerlink. Details can be found in the AS help.

Figure 92: Automation Studio configuration - Powerlink Interface Broadcast
image

image

AS Help Guid: a1af3386-cf01-4c15-b251-9f8bd0b3da47
Figure 93: AS help – broadcast on the Powerlink

4.1.2 Set and check fieldbus cycle time
The position generation of the axis group takes place centrally on the PLC. The positions that are
calculated by the path generator are transferred to the axes with the cycle time set in the Powerlink interface. This cycle time should correspond to the requirements of the setpoint specification.

Powerlink (servo)
Figure 94: Automation Studio configuration - Powerlink Interface cycle time
image

X2X (stepper)
Figure 95: Automation Studio configuration – X2X interface cycle time
image

image

If the X2X modules are installed behind a Powerlink bus coupler, the
Powerlink cycle time must also be set accordingly! The entire fieldbus data
transport to the module must be set synchronously.
The maximum cycle time supported by McStpAx is 20 ms (as of
mapp 5.14)

4.1.3 Synchronization of the system clock on the fieldbus
It is recommended to synchronize the system timer with the fieldbus.

Figure 96: Automation Studio configuration - CPU setting system timer
image

4.1.4 Set cycle time and tolerance for the Motion Manager task class
The cycle time should be set synchronously with the system clock.
The tolerance must be set to 0 ÎĽs.

(stepper only)
The I/O output delay must be set to “Delay to end of Cycle”.

Figure 97: Automation Studio configuration - CPU setting task class #1

4.2 Checking the correspondence between the real axes and the mechanical system of the
axis group

  • Directions of rotation in the axis coordinate system (ACS)
  • Linear dependencies in the joint coordinate system (JACS)
  • Cartesian movement in the machine coordinate system (MCS)

mappCockpit
Figure 98: mappCockpit - drive operation - commands
image

PLCopen / mapp function blocks
Figure 99: Automation Studio Watch - MpCncFlex

image

AS-Hilfe Guid: 5b5f470e-14e5-423c-a5b1-b6f1a414823d
Figure 100: AS help – description of the mechanical systems

4.2.1 Directions of rotation in the axis coordinate system (ACS)
First, all individual axes of the kinematics should be moved using the group functions in the ACS to check that they have the correct direction of rotation. The direction of rotation specified by the respective kinematic model can be looked up in the Automation Studio help.

Figure 101: Automation Studio help - directions of rotation on the mechanical system Robot 6Ax (A)
image

Troubleshooting
The direction of rotation of the individual axis should preferably be adapted to the specifications of the model.

Figure 102: Automation Studio configuration - logical axis

With some mechanical systems, the direction of rotation of the axis can also be adjusted in the
model. This setting should be used secondary so that axis group movements and individual axis
movements remain in the same direction of rotation.

Figure 103: Automation Studio configuration – mechanical model counting directions

4.2.2 Linear dependencies in the joint coordinate system (JACS)
If the real mechanics have linear dependencies, it is now important to test the parameterization
and the resulting compensation. This can be achieved by executing movements in the JACS
coordinate system. The movement image should now appear as if the mechanics had no couplings and the degrees of freedom should be independently controllable.

Troubleshooting
If the compensation is not carried out correctly, it is important to re-determine the values
configured in Automation Studio using test movements in the ACS. Movements in JACS are only
suitable for testing the correctness as a whole, but not for determining the values.

Figure 104: Automation Studio configuration – mechanical model linear couplings

4.2.3 Cartesian movement in the machine coordinate system (MCS)
The Cartesian movement can be checked with movement specifications in the MCS coordinate system. The direction of movement intended by the model is documented in the Automation Studio help.

Figure 105: Automation Studio help - directions of rotation on the mechanical system Robot 6Ax (A)
image

Troubleshooting

  • Checking the individual axis rotation directions see 4.2.1

4.3 Path Limits

  • Limit ratio and limit check resolution
  • Axis group feature path definition

4.3.1 Limit Ratio and Limit Check Resolution
The limit ratio describes the relationship between acceleration, jerk and maximum achievable
speed in relation to the maximum length of the stop trajectory.

The maximum stop trajectory is largely determined by the limit check resolution.

Limit check resolution Resource consumption dynamics Max. stop trajectory
0.005 high large short(0.8s)
0.01 (default)
0.02 low small long(3.2s)

The Limit Check Resolution results in an indirect jerk limitation, so if high jerk values (rapid
changes in acceleration) are to be achieved, a short time must also be set for the Limit Check
Resolution.

Figure 106: Automation Studio configuration - axis group limit check resolution

image

AS Help Guid: be41987e-7c39-48c8-b3e2-420ef5674c22
Figure 107: AS help – description of limit value ratio

The warning -2140987188 in the logbook indicates an unfavorable limit value
ratio. The settings should be checked.

Figure 108: Automation Studio Logbook - Limit Ratio Warning

image

If the limit check resolution is halved, the computing time quadruples.

The smallest limit check resolution provides the best path speed curve, so a small
value should be aimed for. This rule is contradicted by the computing time, which
means that a sensible middle ground must be found with regard to the paths to
be traveled.

4.3.2 Axis group feature path definition
In order to understand how the feed (F-word) works, you have to deal with the topic of path
definition. There are several G-codes to affect the active path definitions and change the behavior of the F-word.

If no path definition is configured, the default is a Cartesian path in the case of an axis group with a mechanical system used. In the case of a Axis group without mechanical system becomes a physical path used.

Cartesian path
image

Physical axes path
image

image

The path definitions are ignored by rapid interpolations! Rapid
traverse interpolations are only limited by the axis limits.

image

AS Help Guid: 705c8750-c6d2-4f68-99cf-47ef575c7797
Figure 109: AS help – description path definitions

image

AS Help Guid: f75099b7-6a96-431e-81cd-e2e2f950c96e
Figure 110: AS help – description SET_FEED_PATH^

image

G-codes that make a percentage adjustment of the path dynamics
necessarily require a path definition with set limits. Undefined limits are
internally assumed to be undefined/infinite and cannot be adjusted by
percentage.

e.g. G108 / G109 / G110 and ACC

AS Help Guid: d0255d8c-c44a-4604-95aa-ddc48fbd850f
Figure 111: AS help – description of G-code limit value functions

4.4 Torque precontrol of the axis group
For certain kinematics, a model of the mechanics can be stored so that the path generation can
also calculate the forces and moments that occur. In addition to the target position, a target
torque can also be transmitted to the drive.

  • A model must be set up in the kinematics description

4.5 Geometry parameters
These parameters can be used to avoid standstills at non-tangential transitions by installing
appropriate automatic roundings at corners and straight-circle transitions.

Figure 112: Automation Studio configuration - axis group geometry parameters

image

The use of roundings (geometry parameters, G126, …) only works with the
mechanical system. (as of Mapp 5.14)

image

AS Help Guid: 28e3b4fc-a1b5-4ad1-bead-2a03937f961f
Figure 113: AS help – description of geometry planning, path smoothing

image

The Parameters of the configuration File can be overwritten during runtime of a Motion Program by the following Commands

  • Max Corner Deviation: G127 “value”
  • Max Tangential Transition Deviation: G128 “value”

4.6 Evaluation of process accuracy

  • Determination of the Cartesian following error in the PCS
  • Recording typical trace data of an axis group

4.6.1 Determination of the Cartesian following error in the PCS
Typically, a system is optimized for the minimum individual axis following error. But sometimes the question arises as to how this individual axis tracking error affects the Cartesian position of the kinematic system. So that you don’t have to do the calculations yourself, you can read out the
actual position of the axis group and offset it against the target position.

  VAR
	FbGroupReadCyclicPositionPCS_SET : MC_BR_GroupReadCyclicPosition_15;
	FbGroupReadCyclicPositionPCS_ACT : MC_BR_GroupReadCyclicPosition_15;
	LagErrorPCS : ARRAY[0..14] OF LREAL;
    i: USINT;
  END_VAR

  PROGRAM _CYCLIC 

	FbGroupReadCyclicPositionPCS_ACT.AxesGroup	:= ADR(gAxGrp_1);
	FbGroupReadCyclicPositionPCS_ACT.CoordSystem	:= mcPCS; 
	FbGroupReadCyclicPositionPCS_ACT.ValueSource	:= mcVALUE_ACTUAL; 
	FbGroupReadCyclicPositionPCS_ACT.Enable		:= 1; 
	
	FbGroupReadCyclicPositionPCS_SET.AxesGroup		:= ADR(gAxGrp_1);
	FbGroupReadCyclicPositionPCS_SET.CoordSystem	:= mcPCS; 
	FbGroupReadCyclicPositionPCS_SET.ValueSource	:= mcVALUE_SET; 
	FbGroupReadCyclicPositionPCS_SET.Enable		:= 1; 
	
	FbGroupReadCyclicPositionPCS_ACT();
	FbGroupReadCyclicPositionPCS_SET();
	
	FOR i:=0 TO 14 DO
		LagErrorPCS[i] := FbGroupReadCyclicPositionPCS_SET.CyclicPosition[i] – 
                          FbGroupReadCyclicPositionPCS_ACT.CyclicPosition[i]; 
	END_FOR
	
  END_PROGRAM

4.6.2 Recording typical trace data of an axis group
In order to be able to make a good statement about the dynamics of a system, the parameters
shown below should always be included in a trace. The acceleration and jerk can then be derived
from the speed in order to understand possible limitations.

Figure 114: mappCockpit - example trace configuration axis group

14 Likes

This is awesome, thank you for sharing, @michael.bertsch!

3 Likes

Thanks for sharing. What is recommended when using temperature sensors with B&R motors?

  • Use the internal thermal resistor
  • Use the temperature model based on current measurements

Hello Peter,

We normaly use the Motor Temperature Sensor in parallel to our Temperature Model. If one of both limits is violated the ACOPOS will go to error State.

  • The Sensor is good for the real Temperature but is a little bit slow in reaction time
  • The Temperature Modell can protect the Motor even for fast Temperature rises, as the model is calculated with a fast cycletime and is based on the actual current (which causes the heating).

Your question seems very general, thats why i only have this general answer. If you have a more konkret question, we should change to the Ask Questions - Section of the Forum, so there will be much more people reading it. If needed you can reference to this post, to give others an understanding about an background. In this way this thread keeps its more informative charakter.

Greetings Michael

1 Like

Great informative guide!

is there any possibility monitor Master delay effectivity? i have 9 motors sync application and have defined master delay according this documentation, but can’t proof value functionality.

Hello @c513334

you can make a multi-axis trace in mappMotion with some simple movements where you can compare the set values. The set values should match / be as expected at all corresponding times.

Another possibility to make wrong settings visible is, if you have “unmounted” motors you can simply put something on the shafts with some visual mark and let the motors move (1:1 gear e.g.). If you change speeds etc. the marks should always stay synchronous. That’s a more “non-theoretical” approach :slight_smile:

Best regards,

1 Like