Close
0%
0%

Bipedal Robot

Journey to an autonomously walking robot using machine learning

Similar projects worth following

Objective: The idea is to build a compliant robot that, through machine learning, can stand whilst resisting forces and walk without any supporting structures. This project is outside of my knowledge sphere, so I hope to learn more about programming and machine learning through the challenge of this project.

This project is based on inspiration from two other projects linked below:

Gabrael Levine’s Blackbird Biped

Darren V Levine: Biped and Actuators

The legs (actuators, hips, upper legs, and lower legs) are of Darren Levine’s design, slightly modified to work with my GM3506 motors and AS5600 magnetic encoders. However all hardware, software, and upper body components are of a new design, though I did take a similar approach.

  • 12/20/24- Change of Approach

    Ethan12/20/2024 at 19:30 0 comments

    I changed how I plan to implement the physical design and electronic hardware.

    Hardware: To deal with the clock frequency issues and problems with hardware organization, I divided the micro controllers into a master/slave system. Each motor will have its own Micro controller, FOC board, and a magnetic encoder. These motor micro controllers are all slaves to a command micro controller, which receives inputs from various sensors while sending commands to the slave motor micro controllers.

    Physical Design: There were a few modifications to the CAD Design. The motor mounts are slightly longer, so that a magnetic encoder in a case fits with the motor. I will likely mount the motor micro controllers on the back of the motor case. I also built a rudimentary case around the robot. This is to hide various wires and components.

    Updates on hardware design coming soon!

  • 12/09/24- Custom PCB and Initial Issues

    Ethan12/10/2024 at 02:23 0 comments

    Recent progress has shown the one Arduino Mega clock is too slow to handle 4 simpleFOC drivers and various other tasks.

    I tried to remedy this with custom PCB, containing  an Arduino mega, two Arduino micros, 4 simple FOCs, and two multiplexers. In this design, the two micros would each control 2 motors and 1 multiplexer, with the Arduino mega handling the rest of the tasks. The custom PCB worked, but the bottom FOC drivers on both sides still had some jittering issues.

    I’m planning to change my approach to the problem. I'm going to change the design of, not only the circuit but the physical robot as well. Currently, I've been using a modified version of the “TipTap” robot, testing out his design. I've Identified some changes I would like to make.

    Software update coming soon!

    Information on my new approach will be posted at a later date.

  • 10/18/24- Basic functionality tests and beginning of assembly

    Ethan10/18/2024 at 07:43 0 comments

    Hardware: Independent components appear to be functioning properly. I tested basic movements of a leg assembly on my 2 axis rail set up. I attempted to get the leg assembly to lift itself up, but the motors ended up stalling or breaking the gear box. The motors should easily be able to lift the assembly, so it’s likely some negative mechanical advantage deriving from the sketchiness of my rail system. I decided to ignore this issue for now and went on to begin assembling the robot, but to prevent future gear box issues, I printed stressed components with PETG filament (a little bit better than PLA in strength).


    CAD: Everything other than the actuator assembly was modified or completely redesigned in Fusion 360. I used entirely new electronics (different motor, encoder, servos, and control electronics) so much of his design was incompatible.

    Design Uncertainty- All aspects of design aren’t fully figured out. For example, I’m still unsure exactly what input observations should be given to my AI model (I’m still researching the software side). Also, I’m not to sure what to do for the feet. I printed temporary nubs for stability, although improved ones are likely necessary in the future. One possibility is feeding in some sort of pressure information for each foot; I’m still uncertain of implementation.

    Software: Still in the early stages of research. I’ve pretty much settled on Gymnasium for simulation and training, just because of its ease of use and relative simplicity. The algorithm will be written in Python, trained, and then stored on my computer. The computer will send instructions to the Arduino (Yes, the initial version will have communication and power wires, so it’s not truly wireless)

View all 3 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates