From 8f78f06ac60b81cac07c20439917b91ed8d6f85e Mon Sep 17 00:00:00 2001 From: Pedro Soares Date: Mon, 17 Jun 2024 16:49:34 +0200 Subject: [PATCH] docs(unitree): add instructions for unitree go1 --- docs/Robots/unitree.md | 68 +++++++++++++++++++++++++ docs/assets/unitree_control_system.png | Bin 0 -> 39303 bytes 2 files changed, 68 insertions(+) create mode 100644 docs/assets/unitree_control_system.png diff --git a/docs/Robots/unitree.md b/docs/Robots/unitree.md index 5e6d381..1e376ad 100644 --- a/docs/Robots/unitree.md +++ b/docs/Robots/unitree.md @@ -1 +1,69 @@ # Unitree Go1 + +Unitree Go1 is one of our legged robots. In this page, we provide the instructions +that one needs to know to either teleoperate as well as controlling it using ROS. + +## Teleoperation with Remote + +1. Place battery in robot +1. **Power on robot**: _Short press_ and then _long press_ the battery power button +1. **Power remote**: _short press_ and then _long press_ power button +1. Wait for robot to stand +1. Follow instructions on remote +1. **Sit**: 2x L2+A -> L2+B +1. **Stand**: 2x L2+A -> SELECT +1. **Power off robot**: Sit robot first and then repeat step 2. + +## Control using ROS + +A ROS package is available to control the robot using ROS velocity commands as well as receive data from robot. You can install it using the following command: + +```sh +sudo apt install ros--unitree-ros +``` + +!!! note + + Only humble and iron are supported. For the foxy devel, please consult [package repo](https://github.com/snt-arg/unitree_ros?tab=readme-ov-file#%EF%B8%8F-installation-) + + + +Then, to control the robot, first connect to it's hotspot. The `SSID` should be the one containing **GO1** on it. For the password, refer to [here](). Once connected, run the following command: + +```sh +ros2 launch unitree_ros unitree_driver_launch.py wifi:=true +``` + +In case you are connected to the robot via cable, no need to connect to WiFi. Simply run `ros2 launch unitree_ros unitree_driver_launch.py` + +!!! tip "More on the ROS package" + + In case you desire to know more about what the package offers, please refer to it's [documentation](https://github.com/snt-arg/unitree_ros). + +## System Architecture + +The following picture illustrates well each component available inside the robot. + +![unitree control system](../../assets/unitree_control_system.png){ align=center } + +- Has 4 computers +- Has 5 Depth cameras + + - Front + - Left & Right + - Bottom front + - Bottom back + +- Has 3 ultrasonic sensors + +### Computer IPs + +- **Main control board**: MCU (`192.168.123.10`) +- **Motion Control Board**: Raspberry Pi 4B (`192.168.123.161`) +- **Sensing motherboard**: Nano (head, `192.168.123.13`) +- **Nano** (body, `192.168.123.14`) +- **Nano** (body, `192.168.123.15`) + +## Resources + +For more information on the unitree SDK, you can find the docs [here](https://unitree-docs.readthedocs.io/en/latest/get_started/Go1_Edu.html){target="\_blank"} diff --git a/docs/assets/unitree_control_system.png b/docs/assets/unitree_control_system.png new file mode 100644 index 0000000000000000000000000000000000000000..036d33ae3be6b32d5030700113a3b624a5a4ddcd GIT binary patch literal 39303 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%0DtH(LlhmtMc%4|TlL19r77vR{ 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 F{|65@QYioc literal 0 HcmV?d00001