A Foxglove user interface for legged robots
Your user-friendly interface for controllling legged robots is here! foxglove-legged-robot creates a Foxglove panel for easily interacting with almost any legged robot compatible with open-source frameworks such as legged_control the signal.
This repo is a standard Foxglove extension, built according to the create-foxglove-extension standard.
-
- Required to communicate ROS2 and Foxglove. Install using apt:
sudo apt install ros-$ROS_DISTRO-foxglove-bridge- Run the bridge node whenever you want to connect Foxglove and the ROS2 network
ros2 run foxglove_bridge foxglove_bridge
As mentioned above, this is a standard Foxglove extension. Thus, you can install it using npm:
git clone https://github.com/leggedrobotics-usp/foxglove-legged-robot.git
cd foxglove-legged-robot
npm install
npm run local-installAfter installing the extension, add it to your Foxglove layout. It interacts with your legged robot framework using ROS topics, services and parameters. The latest version offers the following features:
- MPC mode scheduling (a.k.a. gait type)
- Publishes to the corresponding topic according to OCS2 MPC standars.
- COM height
- Sets the corresponding parameter
- Target displacement velocity
- Sets the corresponding parameter
- Target rotation velocity
- Sets the corresponding parameter
- Stand up (button)
- Calls the corresponding service (std_srvs/Trigger)
- Lay down (button)
- Calls the corresponding service (std_srvs/Trigger)
- Reset simulation (button)
- Calls the corresponding service (std_srvs/Trigger)
Want something more on the interface? Open an Enhancement issue describing it.
- Fork the repo
- Check out a new branch based and name it to what you intend to do:
-
git checkout -b BRANCH_NAME
-
- Commit your changes
- Please provide a git message that explains what you've done;
- Commit to the forked repository.
git commit -m "A short and relevant message"
- Push to the branch
-
git push origin BRANCH_NAME
-
- Make a pull request!
Victor T. N. 🤖
Made with ❤️ by @Vtn21
