Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

How to use Jerk input and Velocity ramp type in MC_MoveAbsolute

vmphuc
2018-07-05
2018-07-09
  • vmphuc - 2018-07-05

    Hi all,

    I need to control point to point a servo driver with MC_MoveAbsolute function block. When I use velocity ramp type is trapezoid, motor is vibrated in acceleration and deceleration phase (acceleration value is just 1000 mm/s2). In my opinion, in this case jerk value is infinitive (velocity is trapezoid type). However I put some jerk value, this result doesn't change.
    And, there are four velocity ramp type: trapezoid, sin2, quadratic, quadratic smooth. Is there anybody who can help me how to use these type with input parameters (position, velocity, acceleration, deceleration, jerk) in MC_MoveAbsolute?

    Thank you,
    Mr. Phuc

     
  • alwoso - 2018-07-06

    Dear Mr. Phuc,

    to me it looks more like a hardware problem than a software issue.
    Which type of fieldbus do you use? Does the bus support distributed clocks (like Ethercat), and if so, are the settings correct in the drive and in the fieldbus master?
    MC_MoveAbsolute creates a new position setpoint every cycle, so the drive must be able to follow these setpoints. Did you check the limits for torque, current in the drive? If the drive cannot follow, the following error should increase....

    I did not check the different settings of "eRampType" in the Axis_Ref_SM3, but it may be that you have to send a "ReInitDrive" command after changing the values.... You should see the behaviour of the different settings when you do a Trace of the value "fSetVelocity" of your axis.

    Good luck!

    Alfred

     
  • vmphuc - 2018-07-07

    Dear Mr. Alfred,

    I use EtherCAT slave drivers with Distributed clock capability. I tested these drivers with TwinCAT3, and it worked well. In my opinion, I should change velocity ramp type of axes to "quadratic type", however I don't know how to use the other types "sin2, quadratic smooth" . If velocity is quadratic then acceleration is linear, jerk is a constant value. Thus, these servo motors may be not vibrated in acceleration, deceleration phases. If velocity ramp type is "trapezoid type", jerk will be infinitive, making dangerous change for mechanical parts.

    Anyway, I cannot find any document about SoftMotion manual for setup and programming. Do you know where I can get it?

    Thank you very much!
    Mr. Phuc

     
  • josepmariarams - 2018-07-09

    Hi.

    With sin2, velocity has, accelerating, the form:

    Vel:=Vmax x sin2(w)
    w goes from 0 to 90Β°

    In this case acc and jerk are allways continuous.

    With smoothing ramp, te jerk has trapezoidal form. In this case, an displacement has 15 tracks, in 8 of them velocity has an qubic form.

    Sent from my Moto G (5S) Plus using Tapatalk

     
  • vmphuc - 2018-07-09

    Hi Mr. Josep,

    Thank you for your outstanding explanation. I understood these settings.

    Regards,
    Mr. Phuc

     

Log in to post a comment.