Difference between revisions of "Getting Started with Humanoid Robots"

From Humanoid Robots Wiki
Jump to: navigation, search
(VSim)
Line 100: Line 100:
 
Claims to be 10x faster than other simulators.
 
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.
+
====== ManiSkill/Sapien ======  
 +
Provides tactile simulation and visual-based policy training that is up to 100x faster than Isaac Sim.
  
 
=====  Best Practices for Virtual Testing =====  
 
=====  Best Practices for Virtual Testing =====  

Revision as of 20:13, 4 May 2024

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.


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.

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](https://github.com/atopile/spin-servo-drive) 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.