Differents PID´s for differents velocities
Maybe it is an stupid post, but im working with mechanich offsets a of 0.35 mm more or less. Im getting mad trying to adjust the PID for making the system stable, its very difficult to find a good PID configuration for all the posible velocities of machining.
I can make the system enough stable for single velocities of machining, but when i change the velocity of movement (jog for example) it gets unestable at all.
I dont know if there is any component able to change the PID values when changing the velocity of movement. Or something like this.
It would be great if for example i can do this:
For F from 0 to 100:
pid.0.Pgain 6
pid.0.Igain 0
pid.0.Dgain 0.5
For F from 100 to 200:
pid.0.Pgain 8
pid.0.Igain 0
pid.0.Dgain 1
.....
and so on
Thank you very much and regards.
Please Log in or Create an account to join the conversation.
No, it is not uncommon to vary the PID parameters according to other system variables. In my day job I look after a system where the P-term is derived by multiplying together the value of 2 3S maps, and the I term by multiplying 3 3D maps.Maybe it is an stupid post
In the Master branch there is a "lincurve" component intended specifically for this purpose:I dont know if there is any component able to change the PID values when changing the velocity of movement.
www.linuxcnc.org/docs/devel/html/man/man9/lincurve.9.html
If you don't want to run the development version you could add the component to your standard installation using "comp". Ask if you need help with that.
Please Log in or Create an account to join the conversation.
Im trying to install the component, but i cant.
I cant install it with sudo comp, i tried to install a component made by you in the past too and i couldnt, it was called wheel.comp, do u remember??
To install wheel.comp i compiled linuxcnc in another folder with this new component placed in build/src/hal/components/ and copied wheel.ko in the folder of the real linuxcnc. It worked fine.
Now im trying to compile it again with lincurve.comp in the same folder, but it doestn create the lincurve.ko file.
It says:
ValueError: need more than 1 value to unpack
Do you have any idea of what im doing wrong??
Thank you and regards!!
Please Log in or Create an account to join the conversation.
I cant install it with sudo comp, i tried to install a component made by you in the past too and i couldnt, it was called wheel.comp, do u remember??
Vaguely.
It is probably worth trying to get to the bottom of why you can't compile and install components. It's a very useful thing to be able to do.
If you go to System->Administration->Synaptic Package Manager and put "cnc" in the search box, do you see LinuxCNC and LinuxCNC-dev as installed packages?
Please Log in or Create an account to join the conversation.
I´ll check it tomorrow.
Thank you.
Please Log in or Create an account to join the conversation.
but linuxcnc-dev is not installed.
Can i install it without removing the linuxcnc i have installed now??
Thank you.
Please Log in or Create an account to join the conversation.
I see the linuxcnc installed,
but linuxcnc-dev is not installed.
Can i install it without removing the linuxcnc i have installed now??.
Yes, if it appears in the list (and it should) then you can just mark linuxcnc-dev for installation and press the "do it" button (whatever that is actually called)
Please Log in or Create an account to join the conversation.
I have insttal the dev-package. Now i can use "comp" but it continues giving the same error, i copy paste for you:
pablo@Pablo-cnc:~/carpetaNuestra/build/src/hal/components$ comp --compile lincurve.comp
Traceback (most recent call last):
File "/usr/bin/comp", line 1335, in <module>
main()
File "/usr/bin/comp", line 1304, in main
process(f, mode, outfile)
File "/usr/bin/comp", line 1178, in process
a, b = parse(filename)
File "/usr/bin/comp", line 411, in parse
a, b = f.split("\n;;\n", 1)
ValueError: need more than 1 value to unpack
pablo@Pablo-cnc:~/carpetaNuestra/build/src/hal/components$
Maybe the component is not compatible with my version of linuxcnc. Actually im using the 2.5.0 version
Thank you.
Please Log in or Create an account to join the conversation.
You probably want comp --install lincurve.comp, but that isn't the problem.pablo@Pablo-cnc:~/carpetaNuestra/build/src/hal/components$ comp --compile lincurve.comp
My best guess is that it isn't finding the file. Are you issuing the command from the same directory as lincurve.comp?File "/usr/bin/comp", line 1178, in process
a, b = parse(filename)
File "/usr/bin/comp", line 411, in parse
a, b = f.split("\n;;\n", 1)
ValueError: need more than 1 value to unpack
You either need to be in the same directory or give comp the full path.
Please Log in or Create an account to join the conversation.
I have been trying to put the full path, go to the real folder of the file and so.
I think the problem isn´t that it cant find the file, because i try to put for example:
sudo comp -- install lincurve2.comp
and it says No such file or directory : `lincurve2.comp`
instead of Need more than 1 value to unpack
Thank you.
Please Log in or Create an account to join the conversation.