Showing results for 
Search instead for 
Did you mean: 

Stragne motion with V2.04

Stragne motion with V2.04

New Contributor


what is changed with motion in V2.04?

After updating from v1.20 nohting is working right anymore.

Doing commissioning with CtrlX or Drive, everything seems to work. But when doing movements with PLC it's strange.

The drive should do a cycle with right/left turning. Speed right 1000 rpm for 3 turns, left 1000 rpm for 6 turns, acceleration/deccelaration 30 ms. This is via a PLC program.

With drive oszi it looks this:


green = speed

First, acceleration is as should wihtin 30ms to target speed 1000 rpm. But then, braking, going left, going right, going left, stop.... Normally it should look like a positive trapezium, then a negative one.

When doing jogging (via own PLC program) acceleration is not what it should be. It's imited in any way. But deccelartion is working right.

Code is that, using Jog-Mode:


Did another test with Vel-Mode:

Now acceleration is working right but not decceleration, code is that:


All limits in CtrlX are high enough that they don't bother:


And there are no limits in drive (except speed):


And no issues with any status reports from drive:


That's the way it worked with v1.20 and before.

What's different with v2.04?









New Contributor

Updated libraries covering the MotionInterface functionality were released recently.  Before investigating further, can you verify that you are using the latest libraries?


Hello alink

After checking the MotionInterface libs (like Carl mentioned) please check this futher points

  • set all jerks to 0 (axis limits, dynamic limits)
  • record following signals at the control (PLC trace, control osci)
    • ipo values (vel, acc)
    • act values (vel, acc)



Community Moderator
Community Moderator

I did some test. Please beware that using "MODE_AH" will change mode to "Moxe_AXS_STOP" and is using its deceleration settings:

ctrlX PLC Engineering 2.4 - Auto axis and trace - dec wrongctrlX PLC Engineering 2.4 - Auto axis and trace - dec wrong

When entering same deceleration it works like expected on my side:

ctrlX PLC Engineering 2.4 - Auto axis and trace - dec rightctrlX PLC Engineering 2.4 - Auto axis and trace - dec right

For jogging I could not find a problem, but if also "MODE_AH" is used there, same behaviour will occur:

ctrlX PLC Engineering 2.4 - Jog axis and tracectrlX PLC Engineering 2.4 - Jog axis and trace

Official release note of the CXA_MotionInterface are release as part of the motion runtime documentation. Wee will add a link in the library reference book to make it easier to find.

I updated Motion Interface to v2.4.0.1 (indeed, it was v2.4.0.0). Did everything as written in Releasenotes.

What happens: I get an exception --- license invalid! ---


Changing back to MotionInterface no license issue.


If MotionInterace is necessary, how to fix invalid license?



Community Moderator
Community Moderator

License problem sounds lika a known bug in ctrlX PLC Engineering 2.4. Please do a clean all and download again. This should do the trick.

After clean/all it works - no license invalid.

Now, with MotionInterface it's the same:


speed right 2400rpm with acc / dec in 100ms

speed left 2000 rpm with acc / dec 100ms

In PLC it looks this: for test, acc/dec limits are set to 0 for left rotation


Osci shows this:


Acc takes about 700ms, dec is as it should be within 100ms in both ways (right/left). Interessting fact, speed setpoints (S-0-0036) are congruent to speed-feedback (S-0-0040).

Taking a acc/dec of 300ms, dec is 300ms but acc keeps unchanged at 700ms


And another test: Acc to right is 1000ms, dec right 50ms, acc left 50ms, dec left 50ms


Acc right goes to 1000ms (as it should), dec is 50ms (as it should), acc to left is about 700ms (should be 50ms) and dec left is 50ms (as it should).

It looks like there is a (torque-) break right/left which limits acc. With other speeds the acc time differs, but dec time is as it should be.

Taking torque and acc value to the chart it looks this:


Limits in CtrlX Motion are high enough


and there shouldn't be a mismatch because of something set in commissionig


And no wrong limits in Drive:





Community Moderator
Community Moderator

I will check the behaviour again. And post as soon as I have new information. 

Did another test:

When jogging via ctrlxCore - commissioning - it looks that:


Speed setpoints are set to target speed and drive is following. Everything OK.

Doing the same via PLC and own Visu, it looks still that way:

Acc and Dec should be the same




Community Moderator
Community Moderator

I could reproduce the behaviour. We are checking this internally.

ctrlX PLC Engineering - Jerk differencectrlX PLC Engineering - Jerk difference

Thanks for feedback.

I did another test, this time starting a process of right/left rotating with some other actions.

Could you check if this is the same reason why the engine spins out instead of braking when swithing in _OpModeBits.Mode_AH := TRUE; ?

Because: in my process there is a time control. If time is exceeded, then error message occurs and the drive should stop. With this method it worked fine before v2.0.4

Now, from target speed, it takes >> 6000ms to reach standstill instead of a sudden stop.



Community Moderator
Community Moderator

Did you try my suggestions above? There I could reproduce and fix this. 

If not I would need some more information about your program to get to to know what could be wrong. You could send me an export or archive via private message.

Sorry, overseen.

Yes, now stopping works as expected (in case of time exceeding for example). Independent if using .MODE_AXS_STOP or .MODE_AB

But question? Why now (with V2.0.X) to set it in PLC/motion as well when the setting is in Drive? Having two possibilities is bad, which one is right, which one does the work, this is confusing.... or I am misunderstanding something and didn't know.


But no effect on this issue:


Acc takes 600ms instead of 50ms (like dec).



Community Moderator
Community Moderator

ctrlX MOTION is not using the drive based functions to be drive independent. This did not change from 1.20 to 2.x (as far as I know). Drive isn't even commanded to AH but simply gets decelarted to 0rpm and stays in AF. Useability of of drive mode AH will be implemented in version 2.6 of ctrlX MOTION and CXA_MotionInterface.

The acceleration/deceleration difference is, like mentioned above, reproduceable and we are investigating this. I will post new information about it here as soon as available.

mystify.. never used a .StopMode.xxxx to set anything

Now with setting it it works


In .StopMode.Deceleration the value before was 2 (rad/s²). If nothing was changed in function, maybe an initial value? Because before it allways was a real fast stop without setting any dec value in code.

So now, let's see what can be found out after investigation of acc/dec difference.


Good news this issue will be solved in the version 2.6 coming up end of march. Please test again with this version and come back if there are open topics.