Compliant Quadruped Legs Using Servos

Walking robots that move smoothly are tricky to build and usually involve some sort of compliant leg mechanism — a robot limb that can rebound like natural physiology for much better movement than what a stiff machine can accomplish. In his everlasting quest to build a real working robot dog, [James Bruton] is working on an affordable and accessible Mini Robot Dog, starting with the compliant leg mechanism.

The 3D printed leg mechanism has two joints (hip and knee), with an RC servo to drive each. To make the joints compliant, both are spring-loaded to absorb external forces, and the deflection is sensed by a hall effect sensor with moving magnets on each side. Using the inputs from the hall effect sensor, the servo can follow the deflection and return to its original position smoothly after the force dissipates. This is a simple technique but it shows a lot of promise. See the video after the break.

A project can sometimes develop a life of its own, or in the case of [James]’s OpenDog, spawn experimentally evolving offspring. This is number four, and it’s designed¬† to be a platform for learning how to make a quadruped walk properly, and to be simple and cheap enough for others to build. We’re looking forward to seeing how it turns out.

If you missed it, also check out this robot’s weird sibling, self-balancing Sonic.

Continue reading “Compliant Quadruped Legs Using Servos”

OpenDog: Adding Force Sensitive Feet

[James Bruton] OpenDog remains one of the most impressive home-built robotics projects we’ve seen here on Hackaday, and it’s a gift that just keeps on giving. This time he’s working on adding force sensing capabilities to OpenDog’s legs to allow for more dynamic movement control.

The actuators in the legs are three-phase outrunner motors that drive ball-screws via a belt. This configuration is non-backdrivable, meaning the legs cannot be moved when an external force is, which could lead to mechanical failures. He as tested other backdrivable leg configurations with other robots, but did not want to rebuild OpenDog completely. The solution [James] went with is a redesigned foot with an inbuilt switch, to confirm that the foot is touching the ground, and a load cell attached in the middle of the bottom leg segment. The load cell is bolted rigidly onto the leg segment, which allows it to sense when the leg is carrying load, without damaging the load cell itself.

Unfortunately all the serial ports on OpenDog’s main Teensy 3.6 controller are already used, so he converted the signal from the load cell to PWM, to allow it to be read by a normal GPIO pin. This works well in isolation, but when [James] switches on the motors, the PWM signal from the load sensor gets flooded by interference, making it unreadable. To solve this problem, he wants to implement a CAN bus, which will allow for more inputs and outputs and hopefully solve the interference problem. However, [James] has no experience with the CAN protocol, so learning to use it is going to be a project on its own.

OpenDog is turning into a very lengthy, time-consuming project, [James] says that the lessons learned from it have been invaluable for a number of other projects. This is something to keep in mind with everything we tackle. Choose projects were the experience gained and/or relationships developed are worth it on their own, even when the project fails in a conventional sense. This way you can never really lose.