I looked everywhere I could but didn't find a useful answer, so let me explain here:
My controller is giving a position goal, and while this position is not achieved, the linear actuator is controlled to move at a constant speed through a PID. When the position is reached, the speed is 0.
More precisely:
Inputs: position_desired, velocity_desired
basic_PWM = velocity_desired/max_actuator_velocity * 255 #Compute proportionally some feedforward basic PWM to reach approximately the desired speed
While position_desired not reached:
Compute PID output based on velocity error (velocity_desired - velocity_measured) => PID_output
Command = basic_pwm + PID_output
Send PWM command to motor
Command = 0 #when position is reached, stop motor
Send PWM command to motor
The closest name I could find is "velocity controller with position condition", but that doesn't sound very clean to me, is there a conventional name for this type of controller?
Thank you!