Difference between revisions of "Getting Started with Humanoid Robots"

From Humanoid Robots Wiki
Jump to: navigation, search
Line 25: Line 25:
 
RMD X10: The most powerful actuator used, designed for high torque applications with excellent control features.
 
RMD X10: The most powerful actuator used, designed for high torque applications with excellent control features.
  
Here is a [https://jakeread.pages.cba.mit.edu/actuators/ scatter plot] of actuators hosted at MIT
+
 
  
 
==== Series Elastic and Quasi-Direct Drive Actuators ====
 
==== Series Elastic and Quasi-Direct Drive Actuators ====
Line 46: Line 46:
 
==== Comprehensive Actuator Comparisons ====
 
==== Comprehensive Actuator Comparisons ====
 
The humanoid robotics 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.
 
The humanoid robotics 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.
 +
 +
Here is a [https://jakeread.pages.cba.mit.edu/actuators/ scatter plot] of actuators hosted at MIT
  
 
==== Custom Actuator Developments ====
 
==== Custom Actuator Developments ====

Revision as of 06:18, 6 May 2024

This is a build guide for getting started experimenting with your own humanoid robot.

This is incomplete and a work in progress; you can help by expanding it!


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.

MyActuator (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. Its designed to pack a lot of power into a lightweight, compact system. It offers excellent torque and control without being bulky, making it perfect for mobile robots that need to be quick on their feet. Also, it's energy-efficient and provides a high torque-to-weight ratio, so robots can move fast and precisely, which is essential for those tricky, agile movements.

One of the coolest things about this actuator is how it manages to minimize backlash, giving you smooth, accurate control over the robot's motion. Its integrated design also means the motor and controller work together seamlessly, which keeps the system streamlined. Plus, the advanced control algorithms make it easy for the actuator to handle dynamic motions, whether it's fast acceleration or sharp turns. If you're building a robot that needs to move like a sprinter while staying super nimble, the MIT Cheetah actuator is an awesome choice.

Here is the MIT research paper if you are interested in a deeper dive.

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 humanoid robotics 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.

Here is a scatter plot of actuators hosted at MIT

Custom Actuator Developments

Iris Dynamics electric linear actuators 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. ROS serves as a valuable abstraction for comprehending the diverse components within a robotics system. However, its substantial nature may occasionally present challenges for modification for some users. The learning curve could be steep, and due to its emphasis on leveraging third-party packages, addressing issues can require additional effort and expertise.

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. The MuJoCo_MPC repository, created by Google DeepMind, is a toolset that combines Model Predictive Control (MPC) with the MuJoCo physics engine to create real-time behavior synthesis. With the advanced MJX extension, which uses GPU acceleration, it can simulate multiple environments in parallel. One approach is to try to replicate the techniques detailed in the AMP (Adversarial Motion Priors) paper to achieve agile humanoid behavior. For example, implementing a humanoid get-up sequence, which matches what was described in the AMP research.

There’s been collaboration between different projects, like Stompy, to get humanoid simulations up and running. You could try converting Gymnasium to handle the URDF (Universal Robot Description Format) file format. Although converting to MJCF (MuJoCo's XML-based format) may present some challenges, we can still get it to work and refine the motor and actuator setup.

Although MuJoCo can be slower in single-environment simulations, the MJX extension and its parallel processing potential make it a solid competitor. Compared to enviroments, like NVIDIA's Isaac Gym, MuJoCo might stand out for its extensibility and rapid development. One goal could be to try recreate the walking, running, and getting-up behaviors described in the AMP paper and use them as a foundation for training robust humanoid movements in simulation.

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.