How to configure a linear actuator

How to configure a linear actuator

Problem

I have a linear actuator (combination of rotatory brushed DC + gearbox that transforms into linear movement) with a certain type of feedback device but I don't know how to properly configure it and tune it. What is the right process that I need to follow?

Clarifications and checkings

  • This article describes (step by step) the manual process of configuring a rotatory brushed DC motor with a certain feedback device with very optimal performance. A more automatic way of doing this configuration could be by using the Configuration Wizard with all the implications that this might have.
  • This step by step process assumes that your motor does not have a
    brake
    . If you do have one, ensure that you have
    configure
    it correctly like it is shown in the following article before proceeding with any configuration: How to configure the brake of your motor.
  • This step by step process assumes that neither the motor or the power stage of the drive is damaged. Please, if you are not sure of this, follow the instructions in the How to know if the motor phases or the power stage of the drive are damaged article in order to verify it.
  • This step by step process assumes that your feedback device is working properly and no noise is coupled to the signal lines. Please ensure that you have checked this by following the step process described in How to know if the feedback device is working properly.
  • This step by step process assumes that there is no digital input mapped to the "Motor Enable" functionality of the drive. If that is the case, ensure to have the digital input ON (if active high, otherwise OFF) in all the steps that involve movement during the configuration or otherwise those steps will fail.

Steps

The steps that are needed to configure a linear actuator depend on where the feedback device is placed. Here we have two possible cases:
  • Feedback placed on the shaft of the brushed DC motor (an incremental encoder would be a normal example)
  • Feedback placed in the linear stage of the actuator (an analog signal along the stroke would be a normal example)

Configuration with the feedback on the motor shaft (digital encoder case)

  • Once you have connected to the drive, go to the Actuator window and set the right parameters for the Motor Type, Position sensor and Velocity sensor. Your window should look like the following:

  • Then, you need to go to the Motor window in order to input all the motor data from its datasheet (it should all be in there). The parameters that you need to input mandatory are torque constant, continuous current, peak current (if known) and max permissible speed. The inductance and the resistance can be obtained in later steps with the system identification included in the torque tuning stage and the rated torque can be determined by the product of torque constant and continuous current. An example of motor parameters could be the following:

  • The next step is to configure the encoder feedback in the Digital Encoder window. At first, this includes setting the Encoder type, the Sensor resolution and the Noise filter. The first 2 you can get directly by taking a look at the datasheet of the encoder and the third on you can determine it through the checking procedure that is explained in the article How to know if the feedback device is working properly. Finally, the Polarity can be determined either with the Auto identify tool or through the manual procedure explained in the article How to calibrate the polarity of your feedback device manually. An example of how to do it with the Auto identify tool is shown in the following pictures:
 
  • After having properly configured the encoder feedback, it is important to identify the motion range of this encoder from the negative to the positive limit of the stroke. Proceed to move the motor to both limits (Open-loop mode with a target voltage in the 5-15% range might be the best option to do so) and write down the values that you read in the limit:
 
  • Once the 2 position limits have been identified, you can proceed to the Limits window. In this window, proceed to introduce your position, velocity and torque limits according to your system. Make sure that the position range within the limits matches the stroke of your linear actuator (the minimum and maximum limits don't matter if you have a homing procedure associated with it) and that the minimum and maximum torque limits match the peak torque:

  • After having set the Limits correctly, make sure that the Protections parameters are set up correctly as well. Adjust the voltage range to your application's and make sure that the maximum system current is equal to or higher than the peak current.

Configuration with the feedback on the linear stage (analog signal case)

  • Once you have connected to the drive, go to the Actuator window and set the right parameters for the Motor Type, Position sensor and Velocity sensor. Your window should like the following:

  • The next step is to configure the analog feedback. In order to do that, go to the Analog Signal window and select the right option for Analog input used. Try to move the motor and read the Actual position changing. Don't worry if the values don't relate to the reality, we will configure that later.

  • Still
    in the
    Analog input window, change the position units to counts like it is shown in the following picture:

  • Once the position units have been changed, move the brushed motor to both ends of its stroke and read the Actual position in each case. Write the values down, you will need them when setting the Motor parameters. Since there is a gearbox in the system, using the Open-loop mode with a target voltage in the 5-15% range might be the best option for moving the motor along its stroke.
 
  • Now go to the Motor window and introduce all the parameters from the datasheet besides the stroke. In order to properly set the stroke, you need to understand that the value that MotionLab interprets is the stroke that the brushed motor would have if you were to read the full range of the analog signal feedback. This full range is 4096 counts, and as you can see in our example, this is not our case so some scaling needs to be done. In this case, the total real stroke is 25 mm so in MotionLab you should input the following value:
MotionLab stroke = 25 mm * 4096 counts / (3559-404) counts = 32.52 mm


  • After having set the right parameters in the Motor window including the stroke, it is time to move to the Limits window. In that window, make sure that your position, velocity and torque limits are properly set accordingly to your system. Make sure that the position limits match your stroke, that the velocity/acceleration limits are correct and that the minimum and maximum force limits match the peak force value. An example could be the following:

  • After having set the Limits correctly, make sure that the Protections parameters are set up correctly as well. Adjust the voltage range to your application's and make sure that the maximum system current is equal to or higher than the current @ force peak.


    • Related Articles

    • How to configure a linear voice coil motor with analog signal feedback

      Problem I have a linear voice coil motor with an analog signal as feedback properly wired to my drive but I don't know how to properly configure and tune it. What is the right process that I need to follow? Steps Once you have connected to the drive, ...
    • How to configure a shunt resistor

      Problem I have a shunt resistor in my application and I don't know how to configure its triggering (in order to absorb regenerative energy) from the software point of view according to my requirements. What steps do I need to follow? Steps Before ...
    • How to configure a brushed DC motor

      Problem I have a rotatory brushed DC motor with a certain feedback device but I don't know how to properly configure it and tune it. What is the right process that I need to follow? Clarifications and checkings This article describes (step by step) ...
    • How to configure a dual-loop application

      Problem I have quite a complex system that I can't figure out how to configure. I have a rotatory brushless motor with a certain feedback device for commutation, a gearbox in the motor shaft and an absolute encoder on the output shaft of the system. ...
    • How to configure the brake of your motor

      Problem I have a brake in my application and I don't know how to configure its enabling/disabling from the software point of view according to my requirements. What steps do I need to follow? Steps The first step that needs to be done is to assign a ...