humanoid-control
A humanoid bipedal walking control repo using NMPC and WBC, and simulation with mujoco. Contact: xuejl2001@mail.ustc.edu.cn
File Explorer
Download Latest Version (.zip)- joint_names_humanoid_legged.yaml
- display.launch
- gazebo.launch
- arm_l1_link.STL
- arm_l2_link.STL
- arm_l3_link.STL
- arm_l4_link.STL
- arm_l5_link.STL
- arm_l6_link.STL
- arm_r1_link.STL
- arm_r2_link.STL
- arm_r3_link.STL
- arm_r4_link.STL
- arm_r5_link.STL
- arm_r6_link.STL
- base_link.STL
- head_yaw_link.STL
- leg_l1_link.STL
- leg_l2_link.STL
- leg_l3_link.STL
- leg_l4_link.STL
- leg_l5_link.STL
- leg_l6_link.STL
- leg_r1_link.STL
- leg_r2_link.STL
- leg_r3_link.STL
- leg_r4_link.STL
- leg_r5_link.STL
- leg_r6_link.STL
- waist_yaw_link.STL
- humanoid_legged.urdf
- humanoid_legged.xml
- humanoid_legged_control.urdf
- humanoid_legged_origin.urdf
- .gitignore
- CMakeLists.txt
- export.log
- package.xml
- ContactSensorInterface.h
- HybridJointInterface.h
- output_color.h
- CMakeLists.txt
- package.xml
- controllers.yaml
- humanoidSelfCollisionVisualization.h
- humanoidController.h
- SafetyChecker.h
- TargetTrajectoriesPublisher.h
- load_cheat_controller.launch
- load_joy_controller.launch
- load_normal_controller.launch
- CheatControllerNode.cpp
- humanoidController.cpp
- JoyControllerNode.cpp
- NormalControllerNode.cpp
- TargetTrajectoriesPublisher.cpp
- CMakeLists.txt
- humanoid_controllers_plugins.xml
- package.xml
- GaitKeyboardPublisher.h
- GaitReceiver.h
- ModeSequenceTemplateRos.h
- HumanoidVisualizer.h
- legged_robot_sqp.launch
- multiplot.launch
- humanoid.rviz
- GaitKeyboardPublisher.cpp
- GaitReceiver.cpp
- HumanoidVisualizer.cpp
- HumanoidDdpMpcNode.cpp
- HumanoidDummyNode.cpp
- HumanoidGaitCommandNode.cpp
- HumanoidIpmMpcNode.cpp
- HumanoidPoseCommandNode.cpp
- HumanoidSqpMpcNode.cpp
- CMakeLists.txt
- package.xml
- FromTopiceEstimate.h
- LinearKalmanFilter.h
- StateEstimateBase.h
- FromTopicEstimate.cpp
- LinearKalmanFilter.cpp
- StateEstimateBase.cpp
- CMakeLists.txt
- package.xml
- .gitignore
- gait.info
- reference.info
- task.info
- friction_cone.xml
- zero_velocity.xml
- ModelSettings.h
- Types.h
- utils.h
- EndEffectorLinearConstraint.h
- FootRollConstraint.h
- FrictionConeConstraint.h
- LeggedSelfCollisionConstraint.h
- NormalVelocityConstraintCppAd.h
- ZeroForceConstraint.h
- ZeroVelocityConstraintCppAd.h
- HumanoidQuadraticTrackingCost.h
- HumanoidDynamicsAD.h
- CubicSpline.h
- SplineCpg.h
- SwingTrajectoryPlanner.h
- Gait.h
- GaitSchedule.h
- LegLogic.h
- ModeSequenceTemplate.h
- MotionPhaseDefinition.h
- HumanoidInitializer.h
- SwitchedModelReferenceManager.h
- HumanoidInterface.h
- HumanoidPreComputation.h
- package_path.h.in
- ModelSettings.cpp
- EndEffectorLinearConstraint.cpp
- FootRollContraint.cpp
- FrictionConeConstraint.cpp
- NormalVelocityConstraintCppAd.cpp
- ZeroForceConstraint.cpp
- ZeroVelocityConstraintCppAd.cpp
- HumanoidDynamicsAD.cpp
- CubicSpline.cpp
- SplineCpg.cpp
- SwingTrajectoryPlanner.cpp
- Gait.cpp
- GaitSchedule.cpp
- LegLogic.cpp
- ModeSequenceTemplate.cpp
- HumanoidInitializer.cpp
- SwitchedModelReferenceManager.cpp
- HumanoidInterface.cpp
- HumanoidPreComputation.cpp
- testEndEffectorLinearConstraint.cpp
- testFrictionConeConstraint.cpp
- testZeroForceConstraint.cpp
- AnymalFactoryFunctions.h
- AnymalFactoryFunctions.cpp
- CMakeLists.txt
- package.xml
- HierarchicalWbc.h
- HoQp.h
- Task.h
- WbcBase.h
- WeightedWbc.h
- HierarchicalWbc.cpp
- HoQp.cpp
- WbcBase.cpp
- WeightedWbc.cpp
- HoQp_test.cpp
- CMakeLists.txt
- package.xml
- draw_torque.py
- humanoid_sim.py
- joy.py
- mujoco_base.py
- teleop.py
- CMakeLists.txt
- package.xml
- CMakeLists.txt
- package.xml
- legged_robot.gif
- .gitignore
- LICENSE
- README.md
# Installation Guide
git clone https://github.com/pocketxjl/humanoid-control
Downloads the entire project code from GitHub to your computer.
cd humanoid-control
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- APT (Debian/Ubuntu ๊ณ์ด) Built into Debian/Ubuntu-based Linux distributions.
- Python 3 Python is required to use pip.
sudo apt install liburdfdom-dev liboctomap-dev libassimp-dev
Installs directly from the APT package repository (Debian/Ubuntu-based).
pip3 install mujoco
Installs the package published on PyPI directly โ no need to clone the source.
pip3 install pynput #for teleop.py
Installs the package published on PyPI directly โ no need to clone the source.
pip3 install scipy
Installs the package published on PyPI directly โ no need to clone the source.
Pulled directly from this repo's README.
3. CMake
Mediumcd humanoid-legged-description
This project's files live in a subfolder, so move into it first.
mkdir build && cd build
Creates a folder to hold the build output and moves into it.
cmake ..
Analyzes the source code and generates build configuration files (must be run inside the build folder).
make
Compiles the code based on the generated build configuration to produce an executable.
