This repo has been replaced by: https://github.com/stanfordroboticsclub/stanfordquadruped
This repository contains Python code to run Pupper, a Raspberry Pi-based quadruped robot. In addition to the robot code, this repository also contains a wrapper to simulate the robot in MuJoCo or PyBullet using the same code that runs on the robot.
Video of the robot following a QR code: https://www.youtube.com/watch?v=iyuJq_Pn7TM
uname -r
sudo apt-get install python3-distutils
sudo bash install_packages_robot.sh
ssh pi@10.0.0.xx
where xx is the local address you chose for the Pi
rw
cd PupperPythonSim
sudo pigpiod
python3 run_robot.py
If you already have the pigpio daemon running, you can ignore when sudo pigpiod
says it can't initialize pigpiod.
sudo pkill pigpiod
The PyBullet simulator is free for academic use and requires no license whatsoever, but in my experience PyBullet is much slower than MuJoCo and is less clear about how to tune the contact parameters.
git clone https://github.com/Nate711/PupperSimulation.git
pip install pybullet
python3 simulate_pybullet.py
MuJoCo has been faster than PyBullet in my experience, but requires that you request and activate a license. The process to acquire a license can take several days.
Clone this repository
git clone https://github.com/Nate711/PupperSimulation.git
Acquire a license for MuJoCo at http://mujoco.org/. You can get a free trial of the professional license for a month, or with a student account, a free year.
Follow the instructions at https://github.com/openai/mujoco-py to correctly install MuJoCo.
If you have trouble installing MuJoCo on macOS because gcc can't find certain header files, like "limits.h" or "stdio.h", then try completing the installation wizard that pops up when you run:
sudo open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
And also do:
brew update
brew install gcc@8
brew link --overwrite gcc
sudo bash install_packages_sim.sh
(Sorry, the MuJoCo sim has not been updated in a while so does not currently work. You're welcome to update it to work with our other code though!)
python3 simulate.py