|
1 | | -# AR4 |
| 1 | +# AR4 ROS 2 Software |
2 | 2 |
|
3 | | -The [Annin Robotics AR4](https://www.anninrobotics.com/) robot is a 6DOF desktop size industrial robot that is a free, open plan low cost robot. This repository contains the necessary ROS 2 packages to plan and execute motions in Gazebo sim. It provides the arm description, simulation controllers and Moveit configuration needed to command it. |
| 3 | +The [Annin Robotics AR4](https://www.anninrobotics.com/) robot is a 6DOF desktop size industrial robot that is a free, open plan low cost robot. This repository contains the necessary ROS 2 packages to plan and execute motions in Gazebo sim. |
| 4 | + |
| 5 | +It provides a ROS 2 set of packages to be able to control the AR4 robot both in real hardware and |
| 6 | +a number of different simulation environments. |
4 | 7 |
|
5 | 8 | <p align="center"> |
6 | 9 | <img src="docs/ar4.png" width=500 /> |
7 | 10 | </p> |
8 | 11 |
|
9 | 12 | ## Package Summary |
10 | 13 |
|
11 | | -- [`ar4_gazebo`](./ar4_gazebo): Gazebo simulation for the ar4 arm. |
12 | | -- [`ar4_description`](./ar4_description): Contains the URDF of the arm. |
13 | | -- [`ar4_hardware_interface`](./ar4_hardware_interface): Contains the software required to connect the computer with the real robot. |
14 | | -- [`ar4_moveit_config`](./ar4_moveit_config): Contains configuration and launch files to run and command the arm. |
| 14 | +These are the main packages providing launch files for the different use cases: |
15 | 15 |
|
16 | | -## Installation |
| 16 | +- [`ar4_description`](./ar4_description): Contains the platform-agnostic parts of the URDF robot description. |
| 17 | +- [`ar4_gazebo_bringup`](./ar4_gazebo): Launch a Gazebo Sim simulation of AR4. |
| 18 | +- [`ar4_isaac_bringup`](./ar4_gazebo): **Not yet available.** Launch an Isaac Sim simulation of AR4. |
| 19 | +- [`ar4_mujoco_bringup`](./ar4_gazebo): **Not yet available.** Launch a Mujoco-based simulation of AR4. |
| 20 | +- [`ar4_realbot_bringup`](./ar4_gazebo): Launch drivers and control software for the real AR4 robot. |
17 | 21 |
|
18 | | -### Prerequisites |
19 | 22 |
|
20 | | -It is a requirement to have `docker engine` with the `docker compose plugin` already installed in the host machine. |
| 23 | +```mermaid |
| 24 | +graph TD |
| 25 | + A[**ar4_moveit_config** <br> main.launch.py] |
| 26 | + B[**ar4_common** <br> main.launch.py] |
| 27 | + C[**ar4_description** <br> main.launch.py] |
| 28 | + D[**ar4_gazebo_sim** <br> main.launch.py] |
| 29 | + E[**ar4_gazebo_bringup** <br> main.launch.py] |
| 30 | + F[**ar4_hardware_interface** <br> main.launch.py] |
| 31 | + G[**ar4_realbot_bringup** <br> main.launch.py] |
21 | 32 |
|
22 | | -See: [Docker Installation Guide](https://docs.docker.com/engine/install/ubuntu/) |
| 33 | + A --> F |
| 34 | + C --> F |
23 | 35 |
|
24 | | -### Running the dev container |
| 36 | + H[**ar4_isaac_bringup** <br> main.launch.py <br> ...not yet available...] |
| 37 | + I[**...** <br> main.launch.py] |
25 | 38 |
|
26 | | -Build and run the container for the use case you are interested in |
| 39 | + B --> H |
| 40 | + I --> H |
27 | 41 |
|
28 | | -#### Gazebo |
29 | | -```bash |
30 | | -./docker/run.sh -s ar4_gazebo |
31 | | -``` |
| 42 | + J[**ar4_mujoco_bringup** <br> main.launch.py <br> ...not yet available...] |
| 43 | + K[**...** <br> main.launch.py] |
32 | 44 |
|
33 | | -#### Hardware |
| 45 | + B --> J |
| 46 | + K --> J |
34 | 47 |
|
35 | | -* [Hardware Interface Instructions](ar4_hardware_interface/README.md) |
36 | 48 |
|
37 | | -## Build the packages |
| 49 | + A --> B |
38 | 50 |
|
39 | | -Build the packages |
| 51 | + C --> D |
| 52 | + C --> A |
40 | 53 |
|
41 | | -``` |
42 | | -colcon build --symlink-install |
| 54 | + B --> E |
| 55 | + D --> E |
| 56 | +
|
| 57 | + B --> G |
| 58 | + F --> G |
43 | 59 | ``` |
44 | 60 |
|
45 | | -Source the built packages |
| 61 | +## Installation |
46 | 62 |
|
47 | | -``` |
48 | | -source install/setup.bash |
49 | | -``` |
| 63 | +### Prerequisites |
50 | 64 |
|
51 | | ---- |
| 65 | +It is a requirement to have `docker engine` with the `docker compose plugin` already installed in the host machine. |
52 | 66 |
|
53 | | -### Launch |
| 67 | +See: [Docker Installation Guide](https://docs.docker.com/engine/install/ubuntu/) |
54 | 68 |
|
55 | | -After building and sourcing the packages, run the specific launch file for your use case: |
| 69 | +### Running the dev container |
| 70 | + |
| 71 | +Build and run the container for the use case you are interested in |
56 | 72 |
|
57 | 73 | #### Gazebo |
58 | 74 |
|
| 75 | +Launch the docker container with the following command: |
| 76 | + |
59 | 77 | ```bash |
60 | | -ros2 launch ar4_gazebo_bringup main.launch.py |
| 78 | +./docker/run.sh -s ar4_gazebo |
| 79 | +``` |
| 80 | + |
| 81 | +Then build and launch Gazebo bringup launch file: |
| 82 | + |
| 83 | +```bash |
| 84 | +colcon build --symlink-install --packages-up-to ar4_gazebo_bringup \ |
| 85 | + && source install/setup.bash \ |
| 86 | + && ros2 launch ar4_gazebo_bringup main.launch.py |
61 | 87 | ``` |
62 | 88 |
|
63 | 89 |  |
64 | 90 |
|
65 | | ---- |
| 91 | + |
| 92 | +#### Hardware |
| 93 | + |
| 94 | +* [Hardware Interface Instructions](ar4_hardware_interface/README.md) |
| 95 | + |
66 | 96 |
|
67 | 97 | ### Controlling the AR4 with MoveIt |
68 | 98 |
|
|
0 commit comments