Getting Started with Humanoid Robots
This is a build guide for getting started experimenting with your own humanoid robot.
This is incomplete; you can help by expanding it!
update:work in progress - starting with a template, plan to expand on sections :)
This guide is crafted for enthusiasts who are not just looking to study humanoid robotics but to actually build and experiment with their own robots.
Contents
Building Your Humanoid Robot
In humanoid robotics, choosing the right components, for example, actuators and gearboxes is crucial. Folks can use planetary and cycloidal gear actuators for their precision and strength, along with Series Elastic and Quasi-Direct Drive actuators for smoother, more natural movements. Advanced designs like the MIT Cheetah actuator push the boundaries with fast, agile movements. Projects like the SPIN initiative are also key, as they make high-quality actuator technology more accessible, helping the field evolve and improve.
Actuators and Gearboxes
Actuator Types and Design Inspirations
Planetary and Cycloidal Gear Actuators
These actuators remain popular in the robotics community due to their high torque output and compact form factors. Planetary gears are favored for their efficiency and ability to handle high power densities, crucial for humanoid robotics. Cycloidal gears offer superior load-bearing capabilities and minimal backlash, ideal for precise motion control. M
yActuator (just one option) offers a variety of planetary actuators. These actuators, while still relatively pricey, offer robust performance and are integral to the efficient functioning of the builds. Some models are:
RMD X4: A lightweight and compact actuator that provides precise control and high efficiency. RMD X6: Offers a good balance of torque and speed, suitable for medium-sized applications. RMD X8: Features a more powerful motor and higher torque capacity, making it ideal for more demanding tasks. RMD X10: The most powerful actuator used, designed for high torque applications with excellent control features.
Series Elastic and Quasi-Direct Drive Actuators
Series Elastic Actuators (SEAs) are used in applications requiring safe and compliant human-robot interaction. They incorporate elastic elements, allowing for energy absorption and safer interactions. Quasi-Direct Drive Actuators provide a balance between the control fidelity of direct drives and the mechanical simplicity of geared systems, promoting natural and responsive movements.
MIT Cheetah Actuator
The MIT Cheetah actuator design is a notable example that several community members are considering emulating. Its design optimizes for rapid, dynamic movements and could potentially set a standard for agile robotic locomotion.
Open-Source Development and Collaboration
SPIN: A Revolutionary Servo Project
The SPIN Project by Atopile is developing an open-source hardware project aimed at making it easier and more cost-effective to use BLDC servo motors. This project is particularly notable for its potential to democratize high-quality actuator technology, making it accessible for a broader range of developers and hobbyists.
Community Insights and Future Directions
Comprehensive Actuator Comparisons
The community actively discusses the need for a universal platform to compare and contrast the cost and performance of commercially available actuators. This could involve developing a comprehensive database or chart detailing each actuator's cost per Newton-meter, control schemes, and RPM, providing a valuable resource for both newcomers and experienced developers.
Custom Actuator Developments
There are discussions about custom actuator developments tailored for specific applications. For example, discussions from [Iris Dynamics on electric linear actuators](https://irisdynamics.com/products/orca-series) suggest they can match the capabilities of human muscles, making them particularly interesting for humanoid applications.
Assembly Tips
Community Forums
Leverage discussions from platforms like RobotForum to avoid common pitfalls. Whether it's selecting the right planetary gearbox or figuring out the optimal motor for each joint, community insights can be invaluable.
Programming and Control
ROS (Robot Operating System)
Start with ROS for an extensive suite of tools for programming and control, suitable for managing complex robotic functions.
Custom Software Solutions
Explore custom algorithms for adaptive control or reactive behaviors. Integrate advanced sensor feedback loops for real-time adjustments.
Experimenting with Your Humanoid Robot
Testing and Iteration
Virtual Testing Before Physical Implementation in Humanoid Robotics
NVIDIA's Isaac Sim and Isaac Gym, alongside other simulators, form a crucial foundation for designing and testing humanoid robots virtually. Insights and suggestions from experts working with these tools are captured below.
Isaac-Based Simulators and Frameworks
Isaac Sim
IDE Experience: Provides a comprehensive, if complex, simulation environment.
PhysX Engine: Utilizes the PhysX engine to handle both contact and joint constraints, though Isaac Sim currently does not fully expose closed-loop constraint capabilities.
Joint Constraints: Supports maximal coordinate systems, which include joint constraints that are common in articulated robots.
Virtual Sensors: Allows the simulation of perception with virtual cameras and LiDARs, providing policy training inputs rendered with NVIDIA RTX.
Isaac Gym
Reinforcement Learning Training: Enables parallel environments for fast policy training.
PHC Approach: Integrates AMP for real-time pose control, making it easier to teach new skills.
Gait Optimization Issues: While 17-DOF walking tasks work well, gait reward optimization needs refinement for more complex tasks.
Closed-Loop Articulation: Belt-driven mechanisms provide a viable alternative for certain closed-loop designs.
Orbit Framework
Unified Training Framework: Integrates Isaac Sim and Isaac Gym for modular and consistent policy validation.
OmniIsaacGymEnvs: Offers predefined tasks like walking and standing.
Omniverse Isaac Gym
Shift in Development: NVIDIA is consolidating Isaac Gym into Isaac Sim through Omniverse, providing the best of both worlds.
Challenges: Demands powerful NVIDIA GPUs, potentially limiting some development workflows.
External Tools and Comparative Platforms
Legged Gym
A repository showcasing the state-of-the-art in legged robot training.
MuJoCo (MJX)
Offers a lightweight open-source alternative, supporting maximal coordinate constraints and easier to work with.
VSim
Claims to be 10x faster than other simulators.
ManiSkill/Sapien
Provides tactile simulation and visual-based policy training that is up to 100x faster than Isaac Sim.
Best Practices for Virtual Testing
- Incremental Complexity: Start simple and build up to more complex environments and tasks.
- Cross-Simulator Validation: Validate robot models across simulators (e.g., Isaac and MuJoCo) to ensure robustness.
- Incorporate Real-World Fidelity: Include sensor noise and imperfections for better policy generalization.
- Optimize Resources:
Use Azure's A100 GPUs for Isaac training.
Capture real-world data to refine virtual training.
By understanding the nuances and strengths of each simulator, developers can refine their humanoid robots effectively. Using Isaac Sim, Isaac Gym, and complementary tools, a robust simulation approach ensures smooth virtual-to-physical transferability while reducing development time and costs.
Real-World Testing
Gradually transition to physical testing, beginning with simple tasks and moving to more complex interactions.
Data Collection and Analysis
Camera Systems
Consider integrating advanced camera systems like those from e-con Systems or Arducam for visual feedback and navigation. Discuss camera choices, considering factors like latency, resolution, and integration ease with your main control system.
Advanced Customization and Community Engagement
Open Source Projects
Contribute to or start your own open-source project. For instance, platforms like GitHub host numerous projects where you can collaborate with others such as K-Scale https://github.com/kscalelabs
Modular Design
Engage in modular robot design to easily swap components or aesthetics. This approach allows for extensive customization and upgrades over time.
Safety and Continuous Learning
Safety Protocols
Always implement robust safety measures when testing and demonstrating your robot.