This is the best PID explanation I've seen, and I've watched at least 15 other videos on the topic. The manually worked example brought it all together for me and I now feel like I can actually implement a PID controller in code myself.
@@CodingCoach No worries. BTW, do you have a GitHub repo with your pseudo code in it? I know there's not much to it, but it would be nice to have the template to start from.
@@JasonLearmouth I set up access through a sponsorship model using GitHub sponsors. You can learn more here if you are interested: codingcoach.net/sponsor
You are a very talented teacher. I found your lessons extremely valuable, my only disappointment is that you did not continue. I hope that you will revisit your channel, because I'm certain that you could build a large following in time.
great videos, got really excited when i saw what else you were planning on doing (including potential field), been a while since there have been any new videos though, is there anything in the pipeline?
i'm sorry, i want to ask you a question i want to make an open loop for my robot humanoid, but i confused about how to make the algorith can you teach me to make it?
Yes, sorry one of them was off.. I have not figured out how to "post live" add text to the video other then sub-titles which are not often used. Have to take another crack at figuring it out.
What would someone have to be doing, and how much knowledge do you need to have accumulated to come up with such a simple yet robust algorithm? Hat's off to the one who came up with it. Best explanation of the algorithm I have ever seen. My search for this explanation officially ends here. Thanks man!
I love how you explained everything about PID controllers. This is the best PID video I've seen so far. I've been looking for an explanation on how to adjust the COG of the robot when you add weight or if it runs on an incline surface. Can you advise how to code that?
I appreciate u a lot for making this video. Literally watched over 50 videos to understand the concept behind PID, finally after watching this video, i can practically implement this in my robot. Thanks a lot buddy
How do you come up with your K values? Like say I am tuning those values, how would I know which one's to increase and decrease? I have a robot following a wall on its right using a Sharp GP2Y0A41SK0F Analog Distance Sensor.
It varies for every problem you're solving but a good rule of thumb is to take the plant output you are trying to affect and divide it by the range of your sensor input and the result is the multiplier to the output for Kp.. so for example if my motors have a range of zero to 400 with 400 being full speed. and my sensor gives values of 0 cm to 100 cm. I would have a 4 for my starting Kp.. It may not be good it's just a rule of thumb to get started. then I tune KP usually first. and move on to KI and KD one at a time making small changes
@@CodingCoach Another thing I am wondering is that if we want the robot to be going full speed when it is at the right distance from the wall, could we still use the max speed as our base speed? I do not know how it would work when adding the PID error to the base speed that is already max to the left motor (and of course it will work subtracting it from the right motor).