HURCO KMB-1 Control Update
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 13:32 #330147
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
Spindle Speed Control.
Now I have the spindle encoder in place, I set up a PYVCP read out for actual spindle speed, which agrees precisely with a handheld rev counter. Even registers negative in reverse. so I believe the encoder is working ok in quadrature.
Problem is that I now see that the commanded speed and actual speed are way out, at s2000 I am seeing almost 3000rpm.
(The spindle speed override is at 100% in the GUI)
My motor has max speed of 3600 and the VFD outputs max spindle rpm of 3600 at 8 volts. Increased volts are ignored.
I've checked the relationship between rpm and volts between 0.24V(350rpm) and max speed, and it is linear.
I have tried changing the ini file [Spindle_0] OUTPUT_SCALE and this helps, but then the slower speeds are shifted.
So I think its clear the controller feedback isn't functioning, and I'm failing to see why.
I don't think I need super dooper speed accuracy, but I do want to be able to rigid tap.
Would an expert please cast their eyes over my attached config files and point out where I am being stupid
Thank you.
Now I have the spindle encoder in place, I set up a PYVCP read out for actual spindle speed, which agrees precisely with a handheld rev counter. Even registers negative in reverse. so I believe the encoder is working ok in quadrature.
Problem is that I now see that the commanded speed and actual speed are way out, at s2000 I am seeing almost 3000rpm.
(The spindle speed override is at 100% in the GUI)
My motor has max speed of 3600 and the VFD outputs max spindle rpm of 3600 at 8 volts. Increased volts are ignored.
I've checked the relationship between rpm and volts between 0.24V(350rpm) and max speed, and it is linear.
I have tried changing the ini file [Spindle_0] OUTPUT_SCALE and this helps, but then the slower speeds are shifted.
So I think its clear the controller feedback isn't functioning, and I'm failing to see why.
I don't think I need super dooper speed accuracy, but I do want to be able to rigid tap.
Would an expert please cast their eyes over my attached config files and point out where I am being stupid
Thank you.
Attachments:
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 18778
- Thank you received: 5188
11 Jun 2025 14:57 #330152
by PCW
Replied by PCW on topic HURCO KMB-1 Control Update
I would make a couple changes in the ini file
OUTPUT_SCALE = 4500
(4500 is 10V/8V * 3600)
And initially I would try open loop
which means P,I,D = 0 and FF0=1
(FF0 should always be 1 regardless
of other PID parameters in a velocity-in/velocity-out
PID control loop like this spindle control )
OUTPUT_SCALE = 4500
(4500 is 10V/8V * 3600)
And initially I would try open loop
which means P,I,D = 0 and FF0=1
(FF0 should always be 1 regardless
of other PID parameters in a velocity-in/velocity-out
PID control loop like this spindle control )
The following user(s) said Thank You: NT4Boy
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 15:52 #330158
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
Thanks Peter.
At high speed 3500 gets me 3400, but 300rpm ends up with 500
Also I have an 'oddness'
If I call for too big a jump in speed reduction, say from 3500 to 1000, an internal part of the vfd drops out the enable relay that is set by M3. If I drop the speed in smaller steps, this doesn't happen. (Probably one to sort out with a max rate of deceleration later. ) Acceleration from 0 to 3500 is ok.
I think for now I'd like to concentrate on getting the low speed more precise.
At high speed 3500 gets me 3400, but 300rpm ends up with 500
Also I have an 'oddness'
If I call for too big a jump in speed reduction, say from 3500 to 1000, an internal part of the vfd drops out the enable relay that is set by M3. If I drop the speed in smaller steps, this doesn't happen. (Probably one to sort out with a max rate of deceleration later. ) Acceleration from 0 to 3500 is ok.
I think for now I'd like to concentrate on getting the low speed more precise.
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 16:22 #330159
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
I have now looked at the pid.s values and see that there is no pid.s.feedback
in the hal this is fed from:-
net spindle-vel-cmd-rpm-abs which also has no value when the spindle runs.
So I have changed this to
net spindle-vel-cmd-rpm which is an active value of the current speed.
Nothing changes, so I guess have to set some of the PID values now?
in the hal this is fed from:-
net spindle-vel-cmd-rpm-abs which also has no value when the spindle runs.
So I have changed this to
net spindle-vel-cmd-rpm which is an active value of the current speed.
Nothing changes, so I guess have to set some of the PID values now?
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 16:43 #330161
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
P values from 1.5 up to 4 are now controlling, but with an increasing frequency of oscillation the higher the P.
Time to dig out Tommy and JT's tuning guides.
Time to dig out Tommy and JT's tuning guides.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 18778
- Thank you received: 5188
11 Jun 2025 16:56 #330164
by PCW
Replied by PCW on topic HURCO KMB-1 Control Update
The oddness is possibly due to a VFD overvoltage on rapid decceleration.
You may need to add a braking resistor to the VFD if you need faster decceleration.
Another possibility is to limit the spindle speed rate of change by passing
the commanded RPM through LinuxCNC's limit2 component.
You may need to add a braking resistor to the VFD if you need faster decceleration.
Another possibility is to limit the spindle speed rate of change by passing
the commanded RPM through LinuxCNC's limit2 component.
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 17:00 #330165
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
The vfd has a braking resistor. Now its being controlled, the issue has disappeared.
Think I just read that I should put P to zero and D to 1.
Think I just read that I should put P to zero and D to 1.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 18778
- Thank you received: 5188
11 Jun 2025 17:23 #330167
by PCW
Replied by PCW on topic HURCO KMB-1 Control Update
D typically makes no sense in a velocity--> velocity loop
Important ones are
FF0 == 1
P and I
Important ones are
FF0 == 1
P and I
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
11 Jun 2025 19:03 #330171
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
Yessir, my experiments concur.
In fact a P of 0.45 and an I of .0015 works quite well for this system.
The slowest speeds are quite a bit faster than commanded, but 1000rpm and above are fine.
This tripping of the relay is I think self inflicted, I don't believe hopping from a very high speed to a very slow one, is something you'd do in the real world without stopping the spindle to change a tool.
Next test is to see if I can orientate the spindle and even execute a tapping cycle.
Very exciting. Thanks for your guidance as ever.
In fact a P of 0.45 and an I of .0015 works quite well for this system.
The slowest speeds are quite a bit faster than commanded, but 1000rpm and above are fine.
This tripping of the relay is I think self inflicted, I don't believe hopping from a very high speed to a very slow one, is something you'd do in the real world without stopping the spindle to change a tool.
Next test is to see if I can orientate the spindle and even execute a tapping cycle.
Very exciting. Thanks for your guidance as ever.
Please Log in or Create an account to join the conversation.
- NT4Boy
- Offline
- Premium Member
-
Less
More
- Posts: 116
- Thank you received: 10
12 Jun 2025 17:52 #330220
by NT4Boy
Replied by NT4Boy on topic HURCO KMB-1 Control Update
I've been trying to understand why the system isn't pulling the revs down to 300, but seems ok above, so played with the ini file OUTPUT_SCALE
ini 5000 4500 3600
s.rpm Actual
300 450 480 490
500 600 630 700
1000 1000 1050 1200
2000 1800 1900 2300
3000 2700 2800 3300
To me the control isn't controlling. I think it looks like P needs to be bigger, but if I raise it enough to have an effect, I get significant oscillations.
My understanding was I should raise P until it just oscillates, and then back off a little to be safe, and lastly tune for overshoot with I. But with this method is not working for me. Is there another method please?
ini 5000 4500 3600
s.rpm Actual
300 450 480 490
500 600 630 700
1000 1000 1050 1200
2000 1800 1900 2300
3000 2700 2800 3300
To me the control isn't controlling. I think it looks like P needs to be bigger, but if I raise it enough to have an effect, I get significant oscillations.
My understanding was I should raise P until it just oscillates, and then back off a little to be safe, and lastly tune for overshoot with I. But with this method is not working for me. Is there another method please?
Please Log in or Create an account to join the conversation.
Moderators: piasdom
Time to create page: 0.167 seconds