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

SMC_GroupJog2 unexpected behaviours and bugs(?)

alejho
2020-07-02
2020-07-03
  • alejho

    alejho - 2020-07-02

    Hi all,
    Using Softmotion 4.6.2.0 I'm trying to jog an axis group with a Scara kinematics in MCS using the FB SMC_GroupJog2.

    It's quite a nightmare first of all because it doesn't avoid in any way singularities (so you have somehow to disable the jog when your are "close").
    Then the axis group generate an error (SMC_AXIS_INVERSE_TRAFO_EXCEEDING_POSLIMITS) jogging in a cartesian direction until a given position (let's say from the position in the first picture to the position in the second picture) then moving backward on the very same trajectory!(in a very unpredictable way)


    Please note that the positions in the pictures are far from any singularity.

    The curious thing is that a MC_MoveLinearAbsolute between the same two positions works correctly (so the movement itself is possible)

    Another strange behaviour is the jog of the tool orientation (the fourth element of backward/forward input arrays)...it only works for 81 degrees,then you have to give another rising edge on the relative input

    Then I tried to use SoftMotion 4.7.0 (I saw some fix at SMC_GropJog2 in the release notes) but it's even worse...the same basic project that triggers a simple jog movement in X direction works in 4.6.2.0 but give an error in 4.7

    What I most likely expect from this FB (in MCS) is to jog until axis limits are reached or when we are "too close" to a singularity...without the needs to manually calculate the feasibility of a movement!

    Does anyone have some experience to share about the usage of this FB?

     

    Last edit: alejho 2020-07-02
  • alejho

    alejho - 2020-07-03

    I want to share some things I find out "by experiments".
    If you're using SMC_GroupJog2 in MCS (cartesian jog) with a Scara3_Z kinematics:

    • Input Orientation mode "Axis" seems not supported for this kinematics
    • Set MaxLinearDistance and MaxAngularDistance the smallest possible for your needs...it reduce unpredictable errors like the one described in the previous post.
    • Basing on the current position (and why not trying to predict "where are you going") eventually disable the jog input when you're too close to axis limits or singularity(I did it with a "wrapper" FB that forward or not the jog digital input for a given direction)

    ...still not perfect but now I can jog the arm with some limitations but at least without getting group axis errors.

    Hope this helps.

     

    Last edit: alejho 2020-07-03

Log in to post a comment.