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

Torque Control

  • ajbecker

    ajbecker - 2022-04-28


    I am trying to dynamically ramp the torque output to an etherCAT servo drive i.e. I need the torque to be 1Nm at t=1s and 2Nm at t=2s with a linear ramp between and then 5Nm at T=3s with a 3rd order polynomial transition. This is really easy to do with position but not torque and I see that according to the PLCOpen documentation Codesys doesn't support the MC_TorqueControl function block, only SMC_SetTorque which doesn't even allow for a linear ramp value.

    Can anyone advise if there is a library available that can do this?

    Alternatively I am willing to write a FB to continuously update SMC_SetTorque but I don't know how this could be synchronised with the other SMC movements I am using.



  • imdatatas

    imdatatas - 2022-05-05

    For linear torq ramp, I think it can be try with CST (Cyclic Synchronous Torque Mode) by using 0x6087 object. But, Sure this is not for the positioning just for Torque control mode.
    See attachment for the related servo device object if its supported by your used brand.

  • ajbecker

    ajbecker - 2022-05-18

    Hi imdatatas,

    Thanks, that is useful but won't give me the functionality that I need. It looks like I am going to have to manually update the torque command every cycle.

  • surikan

    surikan - 2022-09-16

    Hi ajbecker,

    Did you ever find a solution to this?

  • ajbecker

    ajbecker - 2022-09-16

    Hi Surikan

    I ended up writing a function that used a timer to calculate the torque every 4ms and then used SDOWrite to directly set the target torque.


Log in to post a comment.