Feedback loop following error
- bobi4ko23
- Offline
- Junior Member
Less
More
- Posts: 20
- Thank you received: 0
28 Nov 2021 21:36 #227847
by bobi4ko23
Feedback loop following error was created by bobi4ko23
Hello, I have a MESA 7i96 card connected with 7i85 extension. I got the pins working all right, and the x and y axis working to my satisfaction (they use open loop steppers and i close the loop using linear encoder scales). However, i have a different motor mounted on the z-axis (the motor is a closed loop stepper, i think the proper term is hybrid stepper, i.e it sends the number of steps it made back to the driver). It was working fine but after connecting the Z-axis linear encoder scale i got following error. I have been tinkering with the PID parameters for 2 hours but nothing solves the issue.
The problems im facing:
1.I order the axis to move 5 mm and it moves 5.005 and i get following error.
2. I order the axis to move 20 mm and it moves around 11 (not exact same number each time) and i get following error.
The PID parameters i used are:
Ferror = 40.0 (Ferror and min_ferror i just set so that it doesn't show the error but to no prevail)
Min_ferror = 10.0
P = 5.0
I = 0
D = 0.02
FF0 = 0
FF1 = 0.95
FF2 = 0
BIAS = 0
DEADBAND = 0
MAX_OUTPUT = 0
Any advice in the right direction is very appreciated.
The problems im facing:
1.I order the axis to move 5 mm and it moves 5.005 and i get following error.
2. I order the axis to move 20 mm and it moves around 11 (not exact same number each time) and i get following error.
The PID parameters i used are:
Ferror = 40.0 (Ferror and min_ferror i just set so that it doesn't show the error but to no prevail)
Min_ferror = 10.0
P = 5.0
I = 0
D = 0.02
FF0 = 0
FF1 = 0.95
FF2 = 0
BIAS = 0
DEADBAND = 0
MAX_OUTPUT = 0
Any advice in the right direction is very appreciated.
Please Log in or Create an account to join the conversation.
- andypugh
- Away
- Moderator
Less
More
- Posts: 23559
- Thank you received: 4858
30 Nov 2021 14:05 #228013
by andypugh
Replied by andypugh on topic Feedback loop following error
How does the position feedback connect in to the PID loop?
Please Log in or Create an account to join the conversation.
- bobi4ko23
- Offline
- Junior Member
Less
More
- Posts: 20
- Thank you received: 0
01 Dec 2021 13:48 #228124
by bobi4ko23
Replied by bobi4ko23 on topic Feedback loop following error
The position feedback of the motor is connected directly to the drive, and the position feedback from the linear scales connects directly to the 7i85 MESA board
Please Log in or Create an account to join the conversation.
- chris@cnc
- Offline
- Platinum Member
Less
More
- Posts: 529
- Thank you received: 139
01 Dec 2021 21:45 - 01 Dec 2021 21:48 #228154
by chris@cnc
Replied by chris@cnc on topic Feedback loop following error
1. I would to set FF1 = 1. I had no success with any other value.
2. Check that all your parameter set right. Sometime happen type errors or double setup.
Easy way type in terminal
"halcmd show pin *error"
All error pin will be list, and you could compare the right value.
3. Switch back to stepgen feedback and compare in halshow stepgen feedback and encoder feedback.
Maybe, there is some calculation error between ENCODER_SCALE and STEP_SCALE.
Good luck
2. Check that all your parameter set right. Sometime happen type errors or double setup.
Easy way type in terminal
"halcmd show pin *error"
All error pin will be list, and you could compare the right value.
3. Switch back to stepgen feedback and compare in halshow stepgen feedback and encoder feedback.
Maybe, there is some calculation error between ENCODER_SCALE and STEP_SCALE.
Good luck
Last edit: 01 Dec 2021 21:48 by chris@cnc.
Please Log in or Create an account to join the conversation.
- bobi4ko23
- Offline
- Junior Member
Less
More
- Posts: 20
- Thank you received: 0
02 Dec 2021 22:30 #228232
by bobi4ko23
Replied by bobi4ko23 on topic Feedback loop following error
I set FF=1. The "halcmd show pin *error" command shows not apparent problems in syntax. I measured the difference between the stepgen-fb and encoder-fb and the difference is in nanometers (so i don't think that's the issue). I don't know what to do at this point? HELP!
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
Less
More
- Posts: 17904
- Thank you received: 4774
02 Dec 2021 23:43 #228238
by PCW
Replied by PCW on topic Feedback loop following error
Set the following error limits wider (So you don't get a following error)
and plot the error with halscope
and plot the error with halscope
Please Log in or Create an account to join the conversation.
- andypugh
- Away
- Moderator
Less
More
- Posts: 23559
- Thank you received: 4858
03 Dec 2021 11:10 #228275
by andypugh
Replied by andypugh on topic Feedback loop following error
I was asking about the connections inside HAL.The position feedback of the motor is connected directly to the drive, and the position feedback from the linear scales connects directly to the 7i85 MESA board
Please Log in or Create an account to join the conversation.
- bobi4ko23
- Offline
- Junior Member
Less
More
- Posts: 20
- Thank you received: 0
03 Dec 2021 12:29 #228278
by bobi4ko23
Replied by bobi4ko23 on topic Feedback loop following error
Here are my are HAL and INI files. I set the margins of the following error to way too big for the jogging i do. I move it 5 mm and i still get error, if the min_error is 10mm it shouldn't trigger right?
Any glaring mistakes in the files?
Any glaring mistakes in the files?
Please Log in or Create an account to join the conversation.
- bobi4ko23
- Offline
- Junior Member
Less
More
- Posts: 20
- Thank you received: 0
03 Dec 2021 14:17 #228284
by bobi4ko23
Replied by bobi4ko23 on topic Feedback loop following error
Is it also possible that the backlash in the system does something?
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
Less
More
- Posts: 17904
- Thank you received: 4774
03 Dec 2021 14:52 #228286
by PCW
Replied by PCW on topic Feedback loop following error
For initial tuning, I would set the following error limits very large
(both at 25 mm or so) so they never trip unless you get a runaway
and then set all pid maxerrors to 0
setp pid.x.maxerror 0
setp pid.y.maxerror 0
setp pid.z.maxerror 0
(both at 25 mm or so) so they never trip unless you get a runaway
and then set all pid maxerrors to 0
setp pid.x.maxerror 0
setp pid.y.maxerror 0
setp pid.z.maxerror 0
Please Log in or Create an account to join the conversation.
Time to create page: 0.080 seconds