603,323 active members*
3,144 visitors online*
Register for free
Login
IndustryArena Forum > Machine Controllers Software and Solutions > Dynomotion/Kflop/Kanalog > KmotionCNC warning controller configuration takes longer to stop than 75%
Results 1 to 6 of 6

Hybrid View

  1. #1
    Join Date
    Jun 2025
    Posts
    3

    KmotionCNC warning controller configuration takes longer to stop than 75%

    hello,
    inside homing machine routine, and when done zero(Z,X,Y) i'm trying to reset the toolchange position by sending MDI command as follow

    printf("Homing X,Y,Z is Done, Press OK to Reset ToolChanger\r\n");
    MsgBox("Homing X,Y,Z is Done, Press OK to Reset ToolChanger",MB_OK|MB_ICONEXCLAMATION);
    //MOVE Z UP 85mm for toolchange positioning
    MDI("G01 Z85 F3000"); //Z85=85MM
    during the execution and when i reach the MDI("G01 Z85 F3000"); //Z85=85mm
    i'm receiving a warning : controller configuration takes longer to stop than 75% of trajectory planner look ahead time.Feed Rate will be limited
    Limiting axis:Z
    Time to stop 8.18 sec
    lookahead 3.00sec
    i increased lookahead time to 10 and same result, check attached picture and codes

  2. #2
    Join Date
    May 2006
    Posts
    4087

    Re: KmotionCNC warning controller configuration takes longer to stop than 75%

    The warning has to do with the manner that the Z axis Velocity, Acceleration, and Jerk parameters are configured which I don't being provided to us.

    A common mistake is to set an impossibly high velocity but not realize the velocity is unachievable, because a long enough move is never attempted to test it.

    This is like a having a car that you claim can go 1000mph with an acceleration of 10mph/second. This would take 100 seconds to accelerate to 1000mph, or 100 seconds to stop from 1000mph, but then you only ever drive in a parking lot.

    A similar situation can exist with Jerk.

    KFLOP/Kogna expects to have more than enough buffered motion to stop from a worst case situation without limiting any speeds. So it gives a warning.

    You would have to set the buffer time to 11 seconds (> 8.18/0.75) to avoid the warning. But you should not do this. Check your motion parameters instead. Most systems are capable of stopping in 1 second or less.

    HTH
    TK
    http://dynomotion.com

  3. #3
    Join Date
    Jun 2025
    Posts
    3

    Re: KmotionCNC warning controller configuration takes longer to stop than 75%

    Thank you Dear Tom, the machine away now to try some changes, but this is the initializations of the old fanuc servos

    void Servo_Initialize()
    {
    ch0->InputMode=ENCODER_MODE;
    ch0->OutputMode=DAC_SERVO_MODE;
    ch0->Vel=400000;
    ch0->Accel=100000;
    ch0->Jerk=1e+08;
    ch0->P=0.35;
    ch0->I=0;
    ch0->D=0;
    ch0->FFAccel=0;
    ch0->FFVel=0;
    ch0->MaxI=4000;
    ch0->MaxErr=4000;
    ch0->MaxOutput=4000;
    ch0->DeadBandGain=1;
    ch0->DeadBandRange=0;
    ch0->InputChan0=0;
    ch0->InputChan1=0;
    ch0->OutputChan0=0;
    ch0->OutputChan1=0;
    ch0->MasterAxis=-1;
    ch0->LimitSwitchOptions=0x120;
    ch0->LimitSwitchNegBit=1028;
    ch0->LimitSwitchPosBit=1027;
    ch0->SoftLimitPos=1e+09;
    ch0->SoftLimitNeg=-1e+09;
    ch0->InputGain0=1;
    ch0->InputGain1=1;
    ch0->InputOffset0=0;
    ch0->InputOffset1=0;
    ch0->OutputGain=1;
    ch0->OutputOffset=0;
    ch0->SlaveGain=1;
    ch0->BacklashMode=BACKLASH_LINEAR;
    ch0->BacklashAmount=0;
    ch0->BacklashRate=0;
    ch0->invDistPerCycle=1;
    ch0->Lead=0;
    ch0->MaxFollowingError=1000000000;
    ch0->StepperAmplitude=20;

    ch0->iir[0].B0=1;
    ch0->iir[0].B1=0;
    ch0->iir[0].B2=0;
    ch0->iir[0].A1=0;
    ch0->iir[0].A2=0;

    ch0->iir[1].B0=1;
    ch0->iir[1].B1=0;
    ch0->iir[1].B2=0;
    ch0->iir[1].A1=0;
    ch0->iir[1].A2=0;

    ch0->iir[2].B0=1;
    ch0->iir[2].B1=0;
    ch0->iir[2].B2=0;
    ch0->iir[2].A1=0;
    ch0->iir[2].A2=0;

    ch1->InputMode=ENCODER_MODE;
    ch1->OutputMode=DAC_SERVO_MODE;
    ch1->Vel=400000;
    ch1->Accel=100000;
    ch1->Jerk=1e+08;
    ch1->P=0.35;
    ch1->I=0;
    ch1->D=0;
    ch1->FFAccel=0;
    ch1->FFVel=0;
    ch1->MaxI=4000;
    ch1->MaxErr=4000;
    ch1->MaxOutput=4000;
    ch1->DeadBandGain=1;
    ch1->DeadBandRange=0;
    ch1->InputChan0=1;
    ch1->InputChan1=0;
    ch1->OutputChan0=1;
    ch1->OutputChan1=0;
    ch1->MasterAxis=-1;
    ch1->LimitSwitchOptions=0x120;
    ch1->LimitSwitchNegBit=1030;
    ch1->LimitSwitchPosBit=1029;
    ch1->SoftLimitPos=1e+09;
    ch1->SoftLimitNeg=-1e+09;
    ch1->InputGain0=-1;
    ch1->InputGain1=1;
    ch1->InputOffset0=0;
    ch1->InputOffset1=0;
    ch1->OutputGain=-1;
    ch1->OutputOffset=0;
    ch1->SlaveGain=1;
    ch1->BacklashMode=BACKLASH_LINEAR;
    ch1->BacklashAmount=0;
    ch1->BacklashRate=0;
    ch1->invDistPerCycle=1;
    ch1->Lead=0;
    ch1->MaxFollowingError=1000000000;
    ch1->StepperAmplitude=20;

    ch1->iir[0].B0=1;
    ch1->iir[0].B1=0;
    ch1->iir[0].B2=0;
    ch1->iir[0].A1=0;
    ch1->iir[0].A2=0;

    ch1->iir[1].B0=1;
    ch1->iir[1].B1=0;
    ch1->iir[1].B2=0;
    ch1->iir[1].A1=0;
    ch1->iir[1].A2=0;

    ch1->iir[2].B0=0.000769;
    ch1->iir[2].B1=0.001538;
    ch1->iir[2].B2=0.000769;
    ch1->iir[2].A1=1.92076;
    ch1->iir[2].A2=-0.923833;

    ch2->InputMode=ENCODER_MODE;
    ch2->OutputMode=DAC_SERVO_MODE;
    ch2->Vel=400000;
    ch2->Accel=50000;
    ch2->Jerk=1e+08;
    ch2->P=0.35;
    ch2->I=0;
    ch2->D=0;
    ch2->FFAccel=0;
    ch2->FFVel=0;
    ch2->MaxI=4000;
    ch2->MaxErr=4000;
    ch2->MaxOutput=4000;
    ch2->DeadBandGain=1;
    ch2->DeadBandRange=0;
    ch2->InputChan0=2;
    ch2->InputChan1=0;
    ch2->OutputChan0=2;
    ch2->OutputChan1=0;
    ch2->MasterAxis=-1;
    ch2->LimitSwitchOptions=0x120;
    ch2->LimitSwitchNegBit=1031;
    ch2->LimitSwitchPosBit=1032;
    ch2->SoftLimitPos=1e+09;
    ch2->SoftLimitNeg=-1e+09;
    ch2->InputGain0=-1;
    ch2->InputGain1=1;
    ch2->InputOffset0=0;
    ch2->InputOffset1=0;
    ch2->OutputGain=-1;
    ch2->OutputOffset=0;
    ch2->SlaveGain=1;
    ch2->BacklashMode=BACKLASH_LINEAR;
    ch2->BacklashAmount=0;
    ch2->BacklashRate=0;
    ch2->invDistPerCycle=1;
    ch2->Lead=0;
    ch2->MaxFollowingError=1000000000;
    ch2->StepperAmplitude=20;

    ch2->iir[0].B0=1;
    ch2->iir[0].B1=0;
    ch2->iir[0].B2=0;
    ch2->iir[0].A1=0;
    ch2->iir[0].A2=0;

    ch2->iir[1].B0=1;
    ch2->iir[1].B1=0;
    ch2->iir[1].B2=0;
    ch2->iir[1].A1=0;
    ch2->iir[1].A2=0;

    ch2->iir[2].B0=0.000769;
    ch2->iir[2].B1=0.001538;
    ch2->iir[2].B2=0.000769;
    ch2->iir[2].A1=1.92076;
    ch2->iir[2].A2=-0.923833;


    ch3->InputMode=ENCODER_MODE;
    ch3->OutputMode=DAC_SERVO_MODE;
    ch3->Vel=400000;
    ch3->Accel=50000;
    ch3->Jerk=1e+08;
    ch3->P=0.35;
    ch3->I=0;
    ch3->D=0;
    ch3->FFAccel=0;
    ch3->FFVel=0;
    ch3->MaxI=4000;
    ch3->MaxErr=4000;
    ch3->MaxOutput=4000;
    ch3->DeadBandGain=1;
    ch3->DeadBandRange=0;
    ch3->InputChan0=3;
    ch3->InputChan1=0;
    ch3->OutputChan0=3;
    ch3->OutputChan1=0;
    ch3->MasterAxis=-1;
    ch3->LimitSwitchOptions=0x100;
    ch3->LimitSwitchNegBit=0;
    ch3->LimitSwitchPosBit=0;
    ch3->SoftLimitPos=1e+30;
    ch3->SoftLimitNeg=-1e+30;
    ch3->InputGain0=-1;
    ch3->InputGain1=1;
    ch3->InputOffset0=0;
    ch3->InputOffset1=0;
    ch3->OutputGain=-1;
    ch3->OutputOffset=0;
    ch3->SlaveGain=1;
    ch3->BacklashMode=BACKLASH_LINEAR;
    ch3->BacklashAmount=0;
    ch3->BacklashRate=0;
    ch3->invDistPerCycle=1;
    ch3->Lead=0;
    ch3->MaxFollowingError=1000000000;
    ch3->StepperAmplitude=20;

    ch3->iir[0].B0=1;
    ch3->iir[0].B1=0;
    ch3->iir[0].B2=0;
    ch3->iir[0].A1=0;
    ch3->iir[0].A2=0;

    ch3->iir[1].B0=1;
    ch3->iir[1].B1=0;
    ch3->iir[1].B2=0;
    ch3->iir[1].A1=0;
    ch3->iir[1].A2=0;

    ch3->iir[2].B0=0.000769;
    ch3->iir[2].B1=0.001538;
    ch3->iir[2].B2=0.000769;
    ch3->iir[2].A1=1.92076;
    ch3->iir[2].A2=-0.923833;




    EnableAxis(0);
    EnableAxis(1);
    EnableAxis(2);
    //EnableAxis(3);
    DefineCoordSystem(0,1,2,3);
    }

  4. #4
    Join Date
    May 2006
    Posts
    4087

    Re: KmotionCNC warning controller configuration takes longer to stop than 75%

    ch2->Vel=400000;
    ch2->Accel=50000;
    ch2->Jerk=1e+08;
    Here it would take 8 seconds to ramp up to a velocity of 400,000 count/sec at an acceleration of only 50,000 counts/sec? Can your system really go that fast? If so, does it really need to accelerate so slowly?
    TK
    http://dynomotion.com

  5. #5
    Join Date
    Jun 2025
    Posts
    3

    Re: KmotionCNC warning controller configuration takes longer to stop than 75%

    Thank you TOM,
    my question is,
    MDI("G01 Z85 F3000");
    even if i limit the Feed rate to 3000, this will not help, and i'm using the DefaultKeepOffsetsMM.set units file in the KMOTIONCNC->toolsetup
    the KFLOP command execution following the KMOTIONCNC or no, so the unit F3000 is in inch? so i have to make it smaller or relatively so i divided by 1524 so F should be= 2, please clarify
    thanks
    Peter

  6. #6
    Join Date
    May 2006
    Posts
    4087

    Re: KmotionCNC warning controller configuration takes longer to stop than 75%

    Hi Peter,

    The GCode or Feed rate doesn't matter. When the GCode starts executing it checks the worst case to stop from a rapid and that you are requesting sufficient buffering to handle that.

    Please answer the questions from my last post.
    TK
    http://dynomotion.com

Similar Threads

  1. Mitsubishi controller configuration
    By IgnacioQuijas in forum SERVICE FOR CNC-MACHINES
    Replies: 0
    Last Post: 03-24-2022, 03:05 PM
  2. Replies: 1
    Last Post: 06-30-2021, 09:39 PM
  3. Set up problems with Mach3 E-stop warning, Limit warnings etc.
    By skware in forum Australia, New Zealand Club House
    Replies: 5
    Last Post: 12-10-2014, 01:28 AM
  4. RS-232C Fanuc Controller to iLogic DNC configuration?
    By RC-CNC in forum DNC Problems and Solutions
    Replies: 6
    Last Post: 05-18-2009, 09:08 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •