chip updates: making the puppy walk again [updates]
Yes we're back. So here are the problems we are having (in a list so we don't forget them).
(1) I think the PID tuning on the motors is wrong. We're hearing a lot of jittering and creaking and that isn't helping make the motors happy. After a while the system just shuts off and it isn't good for the motors. If we increase Kp we might get the platform to a more STABLE spot.
(2) The CoG node isn't an accurate measure of how to take the weight off the robot's feet. We need a better walking method than the one we currently have.
(3) We should get rid of the speed limiting we've implemented and use the sparkmax's in-built speed limiting to get things done.
The first thing we're going to do is try fixing this PID thing. If we can fix this PID controller on the RIO itself we might be able to get a stronger response from the platform, more torque out of the motors. They're too soft right now and it isn't helping us try to balance the robot. If we increase Kp way up, we should be able to solve the whole jittering and softness problem. Hopefully we don't break the gearboxes.
The whole system is too soft right now and until we fix the softness it'll be really hard to get this thing to walk. All we're going to do right now, is increase the kp and such so we can get a more firm response. We'll keep set point manager and etc as it is and lower the speed to 0.5. We're going to increase the Kp to 0.2 and see what happens. We're going to leave KI and KD at 0 for now.
Currently we're running with the set point manager/speed limiter with a Kp of 0.2 (which is twice what it was before) and a max speed of 0.7. The legs seem more stable now let's make it stand and sit on its own.
We're going to add a KI of 0.005 and KD of 0.01 just for kicks.
The set point manager code we made is kind of bad for what we're trying to do. The code is very jittery and we need to do some smoothing for it to work better. For some reason the more primitive code version worked a lot better we might look into re-implementing that.
What I'm basically going to due is tune the PID gains until I hear no more complaining from the motors.
So with Kp = 0.2 Kd = 0.01 and KI = 0 on all of the motors we have much better responses. There is no buzzing or weird noises during the setting. We're going to try these constants and up the speed to 1.0. We're going to keep increasing until we can't. We're at 1.3 right now. And that's the MAX.
It seems less stable but its more robust. So let's keep it at 1.3! and KP = 0.2 It'll help us get better foot positions and more stable responses. Stronger legs and etc.
I also feel like the sparkmaxs are slightly over hearting maybe?
And it might be, even after all this tuning, to go back to the original of 0.5 speed and Kp=0.1, KI = 0.0005, and Kd = 0.01 until we can get a better way to make this work.
Yea let's do that. This is about finding the right combination of KP and speed such that the platform isn't shaky. So it's probably work trying all of this 0.5 speed with a KP of 0.2! Because yes, the legs are squishy and jittery with a Kp of less than 0.2! So? Kp = 0.2 Kd = 0.01 and KI = 0.0!
Okay that's not working let's just go back. Kp=0.1, KI = 0.0005, and Kd = 0.01, we can also go to speed is 0.7 just for kicks.
Now after this we'll delete all of walking and re-make that nonsense.