Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: PID Autotuning #13

Open
minid33 opened this issue Oct 30, 2016 · 2 comments
Open

Feature request: PID Autotuning #13

minid33 opened this issue Oct 30, 2016 · 2 comments

Comments

@minid33
Copy link

minid33 commented Oct 30, 2016

I'm just about to kick off a print for the first time and I can't help but feel like my PIDs are going to be innacurate, maybe even hugely inacurate.

PID autotuning is an obvious answer to this problem to get into the ballpark of a good tune. I'd love this to be implemented in future releases.

@minid33
Copy link
Author

minid33 commented Nov 26, 2016

Discussed further here, https://groups.google.com/forum/#!topic/mechaduino/29lYo7xKL8Q
Has been implemented in a fork

@Kaiwol1990
Copy link

Hi minid33,

it's not a real fork anymore. I've changed quiet a bit in my firmware version, maybe give it a try and send me some feedback.
You can also use the PID setting you get with my firmware but have to recalculate them for this firmwareversion. To do that you have to considere the different frequencys. Here's how you can calculate them from my firmware to the this one.

Kp = Kp_my_version
Ki = Ki_my_version * (FPID / FPID_my_version)
Kd = Kd_my_version* (FPID_my_version / FPID)

if you take a look at my firmware you can also use the dev branch. I've implemented filtering, feedforward, friction compensation and inertia copensation. But there's no autotune for those variables.
If your familiar with such things give it a try.

  • Kai

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants