chip updates: how does a puppy walk research [updates]
So of course we're going to get into the 3D inverse kinematics of the Chip V2.0 system soon. But in the meantime, because I don't want to play with matrices right now, we're looking into the gates of animals and how dogs and other animals walk. We started with this video: https://www.youtube.com/watch?v=PVvZKcKBTtg&feature=youtu.be which is just a really interesting demo of puppies walking to see how animals progress in their gates through speed.
So we found this paper too: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=19&ved=2ahUKEwjcrLbKh-nnAhVEmuAKHWLrBEkQFjASegQIAxAB&url=https%3A%2F%2Fjeb.biologists.org%2Fcontent%2F207%2F20%2F3545&usg=AOvVaw2EVMQwhOTBmyhjjuAbuj1k and supposedly it's about "Leg Trajectory Planning for Quadruped Robot with High Speed Trot Gaits." This seems to be the category that Chip is under because of the fact that Chip's leg structure its similar to that of a regular animal dog and that allows it to have a fast trot gate.
So the legs in the above paper (from skimming) are a much different design that Chip's however we can learn about the trajectory the feet need to take and the order that needs to happen from this paper. It appears the legs need to take some sort of a circular trajectory.
The other place we want to look to get the robot walking is Jame's Burton's Open Dog Project: https://www.youtube.com/watch?v=TmY8CwuATiU&list=PLpwJoq86vov_PkA0bla0eiUTsCAPi_mZf&index=13 this video is apparently about how he got the dog to take its first steps.
This is also a really good diagram of how a dog walks - let's break it down. All the legs basically have a circular pattern but its the order that matters and where in the pattern they start. I have a basic intuition that if we just generate four ovular trajectories and we run them in the order FL, BR, FR, BL in that order. There isn't so much as a delay between all of these legs but there's a specific part of the trajectory where you start. So in a sense it's not so much a delay as it is a time-shift in the trajectory. So it appears the FL leg starts at picking up the leg, the BR leg starts at a little before this point (it's a backward motion first). FR starts at a rearwards motion point and the BL leg starts basically just after the foot gets put down if the trajectory was a complete one.
We're going to have to start looking into the math for all of these - create an actual stream of points to send to the legs. This is separate to the inverse kinematics problem and the PID tuning that will be required to get the system to follow the points on the trajectory.
We need to be very careful with the balance between the response time of the system and how fast we stream points. If we stream points faster than the system (leg) can travel to those points, we will not be able to follow the full leg trajectory. It'll do some path that we don't want it to. Anyways, things to figure out as we are coding the system.