12/09/2019 at 13:17 •
Finally it's here, I've made the CAD files for Dogbot publicly accessible!
You can access the CAD via the link: https://a360.co/2YuGwaC
There are some caveats with the design as it stands. Though the design will work with 3D printed planet gears, the forces are on the edge of what they can handle and they do break fairly easily. If the robot is to last any length of time they really need to be machined from something like 7075 aluminium. The bearings do tend to loosen up as well, ideally they would be replaced with something with hardened metal surfaces which would last a little longer.
I've not yet published all the design for the motor drivers, and control software. If there is interest I can publish these as well, though both need further work.
10/11/2019 at 15:50 •
So we've finally got the new version of the robot assembled, fixed many niggles and now it is ready to be tested. In the following video we've got the robot doing a slow walk with a 4kg load on its back. The new robot, which weights 20kg handles it with ease.
04/24/2019 at 13:46 •
We have our new motor controllers, gear box and leg working together for the first time. It still running on the power supply, so we can't push it too hard as it powered from a bench power supply. So far everything is looking good, plenty of torque and speed. Much smoother and quieter than previous version.
04/02/2019 at 10:54 •
It's been a while since I've posted anything but we've been busy here working on a new robot design. The main goals of the redesign are to make the robot more reliable and easier to build. The pushrod mechanism for the legs in the previous version put huge forces through a relatively small area causing the leg mounts to distort and giving the legs more give than is ideal. To fix this we've changed the design to use a belt drive and large carbon fibre tube for the main support. Following is picture of a prototype for the new leg design.
Another limitation of the old design was the minimum height it could walk at, this prevented the robot lowering its body to the ground which is useful for fall prevention as well as recovery. To give the legs more freedom they now are fixed on the side of the robot rather than under it as in the previous design. This design also simplifies the kinematics, and makes the design more efficient as there is now effectively one motor per joint.
07/11/2018 at 19:58 •
So after a bit of tinkering with the gait parameters I managed to come up with something that works much better. It is still a fixed gait animation without any feedback, but it is stable and robust against disturbances. Next is to add some feedback from an IMU and the torque from the motors.
07/09/2018 at 15:10 •
We've been trying some simple gaits animations to prove the robot can walk independently. These run through a fixed set of movements without any feedback, this is the first one that worked so there is a huge room for improvement. It falls over in the end of the video because of a problem with one of the motor controllers, it shouldn't take too long to track down and sort out.
07/06/2018 at 14:16 •
A brief update. I've just finished working on a new version of the motor control firmware to give more precise, faster control. Here is an example of the results:
The motor controllers are now estimating the desired velocity from successive positions, which keeps the position on target without increasing the latency in processing position commands. The controllers also now have the option for a feed forward term for the motor torque, but that isn't used here.
06/29/2018 at 10:54 •
With a new larger motors and a more rigid design, this video shows it standing up and squatting down under its own power. The legs are still a little springy, but it should be possible to compensate for this in software.
09/09/2017 at 16:59 •
So after quite a bit on work on the motor controller firmware, things are starting to come together. Though the motor position estimation isn't working quite as well as I would like, it is good enough to control the motor and drive it reasonably efficiently. There is also quite a bit more parameter tuning needed on the PID controllers, but I will wait until a full leg is assembled so I can tune it with a more realistic load.
In the following video I am using a slider on a GUI to control the position of the motor. Here I am using a single 14.8V battery. I plan to use two of these in series to provide a 30V supply to reduce the current in the supply wiring, as you can see from the following video speed doesn't look like it will be a problem!
07/22/2017 at 08:20 •
Well designing the robot is all very well, but can it walk? I decided to build a robot simulation using Gazebo, http://gazebosim.org/. It would have been good to do this earlier in the project as it may have helped with some of the design choices, but the simulation worked well once it was completed.
The gait generation was based on this paper: https://www.semanticscholar.org/paper/Locomotion-Control-for-Electrically-Powered-Quadru-Ko%C4%8Do/897e209277562b835b8e0e1e07023ac85d05ae12
Though the simulation is far from perfect this bodes well for performance of the physical robot. I need to clean up the code for the ROS controllers, but I will add the code to the repository soon.
The first tests were to check the actuators worked ok, it was just moving up and down vertically.
A slow walk, this only lifts one foot at a time whilst the other 3 are moving slowly back. It is looking good. This is very stable, you can stop the gate at any time and dobot doesn't fall over. It's speed is limited though.
Now a faster trot, this involves lifting two diagonal feet at the same time. You need to be moving faster for this to be stable, but it also has a higher top speed.