JA13 scarakins wrong trajectory

More
22 Jun 2016 11:26 #76412 by bkt
.. Scarakins is ok ... mapped axis is ok ... pulse/rev is ok ... joint lenght is ok ... Joint0 has more than 100 pulse/degrees and j1 little more than 203 (203,00024 I think but machine is in another room) ... but the real trajectory have too much gap from desired trajectory ... see the draw:




Ok J0 reducer has 7' degrees (not 7° degrees) of bachslash but J1 reducer has less than 1' degrees (not 1° degrees) ... so not think is reducer correlated problem ...
If I run to 110000mm/min whit 80mm gap (see my bad draw), but if I run only to 8000mm/min I have 8/10mm of gap ... too much

I use brushless motor + drive + mesa 7i76 (ubuntu 10.04 + Ja13) ... I not think is JA correlated problem .... I think is correlated to ACC PARAM of joint but I'm not able to understand how to correct these ... In the next post I attach my ini file...

Regards
Giorgio
Attachments:

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 11:34 #76413 by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
Here my ini file ...

I try to realize my scara printer ... so I need a little more precision of these.
Attachments:

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 13:08 - 22 Jun 2016 16:30 #76422 by Todd Zuercher
Why do you have P=1800 and I=1?
My understanding is that I should =0 and P should = 1000 (or servo thread speed in microseconds)

Peter corrected me P should be 1/servo period (1000000ns=0.001s)
Last edit: 22 Jun 2016 16:30 by Todd Zuercher.
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:02 - 22 Jun 2016 14:11 #76425 by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
You are in right ... but not understand how LCNC pid work in step-dir control ....

My understanding is that I should =0 and P should = 1000 (or servo thread speed in microseconds)

why these? Why I can control P & I in step dir (not have the encoder for close loop...).

Really I have not write in P and I parameter ... I modify an old config ... now I have write:

P = 20.0
I = 0.0

In these way seems only the drive control the close loop .... but in these case P how really do? set the timing of single joint servo thread???

Any how the problem is not solved ... and not undersand if is LCNC related or drive parameter setting related ... or LCNC & drive at the same moment ....

regards
Giorgio
Last edit: 22 Jun 2016 14:11 by bkt.

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:11 #76429 by andypugh
It looks like your joint lengths are not exactly correct in the kinematics. Where did you get the values from?
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:16 #76430 by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
Yes it seems ... but the joint comes from 2 pieces of alluminium cnc milling worked .... I try to control it ... but I think is not the problem ... working around P&I in the drive parameter the situation has improved, but we still have a 50mm gap to 110mt / min ...

In any how in Lcnc now P= 20 & I = 0

Regards
Giorgio

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:20 #76431 by Todd Zuercher
Sorry, I saw references to stepgens in the snibit of your ini you posted and assumed you were using an open loop stepper, (such as with a 7i76), and the velocity dependent error seemed to suggest a tuning/configuration problem with such a setup.

What Mesa hardware are you using?

Tuning still may be your problem, What are your following errors like during the above movements? The MIN_FERROR and FERROR seems a little large at 10.5. (Would that be 10.5° or some other unit?)
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:25 #76432 by andypugh

It looks like your joint lengths are not exactly correct in the kinematics. Where did you get the values from?


Actually, I missed the speed dependency.
Does it do a straight line with low feed rates?

It is actually possible that this is the SCARA version of corner-rounding to keep up speed. You could try experimenting with G61 / G64
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 14:46 - 22 Jun 2016 14:48 #76435 by bkt
Replied by bkt on topic JA13 scarakins wrong trajectory
1) I use 5i25 + 7i76 LCNC --> Drive: open loop only line driver Pulse + Direction signal
2) I use Drive --> brushless motor : close loop wit 2500 ppr encoder

Really P parameter how it work in these sytuation? I experiment it and it work if P is hight much vibration in positioning,ex. P = 1000 or 1800, ... P = 20 no vibration ... if put a little value of I ex. I=0.3 the positioning precision become a little better if put I=3 I have a large oscillation around final position. I set firs time these year my PID LCNC close loop control ..... but with mesa 7i77 ... But in Step/dir open loop control (in these case with 7i76) why can control PI(D)?? and how it works? set somethings? Thanks in advance for explanation or some link to explaine the situation to me ... (I'm asking this seriously and do not want to offend anyone).

@AndyPugh ... the measure of lenght of arm is right +/- 0.02mm .... at low feed rate, ex. 5000 I can make a Line with 3/4mm of gap ... if I use G61 the gap become 140mm in 110mt/min .... if use G64 the same ... if use G1 the gap is more little .. around 40mm....

regards
Giorgio
Last edit: 22 Jun 2016 14:48 by bkt.

Please Log in or Create an account to join the conversation.

More
22 Jun 2016 15:25 - 22 Jun 2016 15:29 #76440 by Todd Zuercher
Even though you are using closed loop servos, a step/dir setup like this is still considered open loop as far as Linuxcnc is concerned, unless you add position feed back into Linuxcnc.

What is your Servo Thread speed? (I didn't see it in the part of your ini you posted)

If it is the normal 1Khz (1000000ns) then you should have P = 1000.

The I and D should both be 0 and the FF1 should be 1 (It is possible this might not be right if scaling isn't right)

Are you sure you have the drives properly tuned?
Last edit: 22 Jun 2016 15:29 by Todd Zuercher.
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

Time to create page: 0.107 seconds
Powered by Kunena Forum