JA13 scarakins wrong trajectory
22 Jun 2016 15:28 #76442
by PCW
Replied by PCW on topic JA13 scarakins wrong trajectory
Can you post your complete hal and ini files?
P should be 1/servo period (1000 at 1 KHz servo thread)
If this does not work you likely have something else wrong in your other settings
P should be 1/servo period (1000 at 1 KHz servo thread)
If this does not work you likely have something else wrong in your other settings
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
22 Jun 2016 15:59 - 22 Jun 2016 15:59 #76443
by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
for sure sir and thanks in advance ...
For precision ... some parameter is too hight, because I would use the max performance of drivers+motor in these kinematics ... any how I recalculated the parameters of the joint motors 1 and 0 ... I saw that the joint 0 was to mount a 6600 rpm engine because I installed too big gearbox ( I = 100 , and instead had to be I = 50 ) so I reduced the working speed of 25 % so as to use only real 3500rpm of motor . In this way , and after yet adjusted the parameters of the drive I got a decent result ..... for sure I have to replace the gearbox .... but can I have made mistakes also on ini files ... so if there from an eye it makes me happy.
regards
Giorgio
For precision ... some parameter is too hight, because I would use the max performance of drivers+motor in these kinematics ... any how I recalculated the parameters of the joint motors 1 and 0 ... I saw that the joint 0 was to mount a 6600 rpm engine because I installed too big gearbox ( I = 100 , and instead had to be I = 50 ) so I reduced the working speed of 25 % so as to use only real 3500rpm of motor . In this way , and after yet adjusted the parameters of the drive I got a decent result ..... for sure I have to replace the gearbox .... but can I have made mistakes also on ini files ... so if there from an eye it makes me happy.
regards
Giorgio
Last edit: 22 Jun 2016 15:59 by bkt.
Please Log in or Create an account to join the conversation.
22 Jun 2016 16:12 - 22 Jun 2016 16:13 #76445
by PCW
Replied by PCW on topic JA13 scarakins wrong trajectory
I would change these PID parameters and try again
all P=1000
all I=0
all MAX_OUTPUT to 0
I would also set all STEPGEN_MAXACCEL to MAX_ACCEL *1.25
TRAJ_PERIOD = 1000000 and Ferrors to a small number(say .1 mm) so you can check for
following errors and fix that before proceeding
all P=1000
all I=0
all MAX_OUTPUT to 0
I would also set all STEPGEN_MAXACCEL to MAX_ACCEL *1.25
TRAJ_PERIOD = 1000000 and Ferrors to a small number(say .1 mm) so you can check for
following errors and fix that before proceeding
Last edit: 22 Jun 2016 16:13 by PCW.
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
22 Jun 2016 17:09 #76450
by bkt
Ok .. but if I set P=1000 my joint has terrible oscillation when I go to x1030 y0 (zero point of my scara) ... Why P = 1000?? there are some particular reasons?
regards
Giorgio
Replied by bkt on topic JA13 scarakins wrong trajectory
I would change these PID parameters and try again
all P=1000
all I=0
all MAX_OUTPUT to 0
Ok .. but if I set P=1000 my joint has terrible oscillation when I go to x1030 y0 (zero point of my scara) ... Why P = 1000?? there are some particular reasons?
regards
Giorgio
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5007
- Thank you received: 1441
22 Jun 2016 17:20 #76452
by Todd Zuercher
Replied by Todd Zuercher on topic JA13 scarakins wrong trajectory
Did you try it with MAX_OUTPUT = 0 (instead of 500) and P = 1000?
Having the Max output to something other than 0 might be causing the oscillation when P is set correctly.
By limiting output, causing windup and overshoot in the PID loop. When you under tune the P you don't get the wind up and overshoot, but you don't get proper response, hence the following error and undershooting.
Having the Max output to something other than 0 might be causing the oscillation when P is set correctly.
By limiting output, causing windup and overshoot in the PID loop. When you under tune the P you don't get the wind up and overshoot, but you don't get proper response, hence the following error and undershooting.
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
22 Jun 2016 17:53 #76455
by PCW
Replied by PCW on topic JA13 scarakins wrong trajectory
The MAX_OUTPUT of 500 will definitely cause problems since its lower than your maximum velocity
it should either be set to 0 (no limit) or 25% larger than MAX_VELOCITY
P=1000 at 1 KHz means that stepgen errors are fixed in the next servo cycle (same as the built in position mode stepgen )
If you get major oscillations at some point it usually means that you have exceeded the velocity or acceleration limits
which may be a KINs error or INI setup error
it should either be set to 0 (no limit) or 25% larger than MAX_VELOCITY
P=1000 at 1 KHz means that stepgen errors are fixed in the next servo cycle (same as the built in position mode stepgen )
If you get major oscillations at some point it usually means that you have exceeded the velocity or acceleration limits
which may be a KINs error or INI setup error
Please Log in or Create an account to join the conversation.
23 Jun 2016 14:00 #76496
by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
I do not understand very well what you are saying ... I remember very well a discussion in which PCW stated that the hal ini file and all part PID could be removed in case of command step / dir without encoder feedback .... I have not the encodel connected to LCNC but is connected only to the motor drive that has an internal control to closed loop. The motor drive is obviously at its pid adjustment or rather in this case only PI as the derivative is not covered as often happens in this type of motor drive .
in each case I enclose the kinematic (which seems to me correct ) the ini file and hal with correzzioni you suggested .
minferror 0.1 is too low for a robot generally believe ..... I agree , however, that 10 is too high .... but with the gearboxes on board that I can not do better than what you see in your files anyway ... I lowered all ferror except joint1 riding a reducer that " eats " too much torque ...
What if you could have a better explanation of what used P in my case ..... thanks in advance
in the IP parameters of the motor drive / servo drives I have already put a very high P .... P = 2000 (maximum value 4000 ) if I have to put sun P = 1000 on LCNC I have to lower the P on the servo drive would otherwise have too many oscillations only when I move along the semi-circle of maximum extension .... check the design for this
in each case I enclose the kinematic (which seems to me correct ) the ini file and hal with correzzioni you suggested .
minferror 0.1 is too low for a robot generally believe ..... I agree , however, that 10 is too high .... but with the gearboxes on board that I can not do better than what you see in your files anyway ... I lowered all ferror except joint1 riding a reducer that " eats " too much torque ...
What if you could have a better explanation of what used P in my case ..... thanks in advance
in the IP parameters of the motor drive / servo drives I have already put a very high P .... P = 2000 (maximum value 4000 ) if I have to put sun P = 1000 on LCNC I have to lower the P on the servo drive would otherwise have too many oscillations only when I move along the semi-circle of maximum extension .... check the design for this
Please Log in or Create an account to join the conversation.
23 Jun 2016 14:05 #76497
by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
anyway now if I make a straight line at 70 m / min to 250 x500 x500 y y - 750 the gap was reduced to 20mm ... there is only the J3 that moves too much and does not follow the correct angle during the trajectory ... mistaken 5/8 ° .... I realize why it took me a 400mm bar to mark the 0 ° of its movement attacked with a pen that draws the trajectory which stands along .
regards
Giorgio
regards
Giorgio
Please Log in or Create an account to join the conversation.
23 Jun 2016 14:17 #76498
by PCW
Replied by PCW on topic JA13 scarakins wrong trajectory
i'm using a FERROR in the .005 mm range in my PID steggen setup without issue
Note that the ferror limit has nothing to do with you mechanics since you are not sensing the external positions
it only has to do with the quality of step generation.
If you get errors with a 0.1mm FERROR setting, it means you still have setup errors
Looking at your ini file, you will see that in joint 2 you have the stepgen maxvel set to less than the joint maxvel
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 8.5
MIN_FERROR = 6.5
MAX_VELOCITY = 2000.0
MAX_ACCELERATION = 2000.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 550.00
STEPGEN_MAXACCEL = 9000.00
This will cause bad stepgen behaviour
Note that the ferror limit has nothing to do with you mechanics since you are not sensing the external positions
it only has to do with the quality of step generation.
If you get errors with a 0.1mm FERROR setting, it means you still have setup errors
Looking at your ini file, you will see that in joint 2 you have the stepgen maxvel set to less than the joint maxvel
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 8.5
MIN_FERROR = 6.5
MAX_VELOCITY = 2000.0
MAX_ACCELERATION = 2000.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 550.00
STEPGEN_MAXACCEL = 9000.00
This will cause bad stepgen behaviour
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
24 Jun 2016 10:45 #76541
by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
I try to correct joint2 ...
But I set P=20 why these is not a good idea??
regards
Giorgio
But I set P=20 why these is not a good idea??
regards
Giorgio
Please Log in or Create an account to join the conversation.
Time to create page: 0.109 seconds