Skip to content
This repository has been archived by the owner on Oct 9, 2019. It is now read-only.

update README.md design #66

Merged
merged 6 commits into from
May 6, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 93 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
# MARA

<a href="http://www.acutronicrobotics.com"><img src="https://acutronicrobotics.com/assets/images/AcutronicRobotics_logo.jpg" align="left" hspace="8" vspace="2" width="200"></a>

This is the official repository of [MARA](https://acutronicrobotics.com/products/mara/) modular robot, world's first modular cobot. MARA is the first robot which runs ROS 2.0 on each joint empowering new possibilities and applications in the professional and industrial landscapes of robotics. Built out of individual modules that natively run ROS 2.0, the modular robot arm can be physically extended in a seamless manner. MARA delivers industrial-grade features such as time synchronization or deterministic communication latencies.

<a href="http://www.acutronicrobotics.com"><img src="https://acutronicrobotics.com/products/mara/images/xv2_MARA2-11.jpg.pagespeed.ic.QRaRP5N01r.webp" align="left" hspace="8" vspace="2" width="270"></a>
<br/>
<br/>
<div style="text-align: justify">
<p>
This is the official repository of <a href="https://acutronicrobotics.com/products/mara/">MARA</a> modular robot, world's first modular cobot. MARA is the first robot which runs ROS 2.0 on each joint empowering new possibilities and applications in the professional and industrial landscapes of robotics. Built out of individual modules that natively run ROS 2.0, the modular robot arm can be physically extended in a seamless manner. MARA delivers industrial-grade features such as time synchronization or deterministic communication latencies.
</p>
<p>
Among other things, you will find in this repository instructions on how to simulate and control MARA in Gazebo Simulator or on the real robot.

## Features

<a href="http://www.acutronicrobotics.com"><img src="https://acutronicrobotics.com/products/mara/images/xv2_MARA2-11.jpg.pagespeed.ic.QRaRP5N01r.webp" align="right" hspace="8" vspace="2" width="200"></a>
</p>
</div>
<br/>
<a href="http://www.acutronicrobotics.com"><img src="https://acutronicrobotics.com/assets/images/AcutronicRobotics_logo_no_border.png" align="left" hspace="8" vspace="2" width="200"></a>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>

### Features

- **Powered by ROS 2.0**: a fully distributed software and hardware robotic architecture.

Expand All @@ -24,14 +36,20 @@ Among other things, you will find in this repository instructions on how to simu

- **Controllable from any ROS 2.0 enabled computer**: [ORC](https://acutronicrobotics.com/products/orc/) is the ideal complement for MARA, but not mandatory. Choose yourself how you steer MARA.

<br/>

## Table of Contents

* [Specifications](#specifications)
* [Packages](#packages)
* [Install](#install)
* [ROS 2.0](#ros-20)
* [Dependendent tools](#dependent-tools)
* [Create a ROS 2.0 workspace](#create-a-ros-20-workspace)
* [Compile the ROS 2.0 workspace](#compile-the-ros-20-workspace)
* [MoveIt! in ROS (Optional)](#moveit-in-ROS-optional)
* [Gazebo](#gazebo)
* [RViz](#rviz)
* [MoveIt!](#moveit)
* [MoveIt! with MARA - Simulation](#moveit-with-mara---simulation)
* [Terminal 1 (ROS 2.0):](#terminal-1-ros-20)
Expand All @@ -44,41 +62,46 @@ Among other things, you will find in this repository instructions on how to simu
* [Examples](#examples)
* [Help](#help)

## Specifications
<br/>

![](https://acutronicrobotics.com/products/mara/images/xMARA_evolution_end.jpg.pagespeed.ic.dVNwzZ6-4i.webp)
## Specifications

![](https://acutronicrobotics.com/images/ACUTRONIC_modular_robot.png)

| Spec | Value |
|------|-------|
| Degrees of freedom | 6 DoF, extensible |
| Maximum speed | 90º/s |
| Repeatability | ±0.1 mm |
| Rated torque | 9.4/30 Nm |
| Rated torque | 9.4/30/49 Nm |
| Payload | 3 Kg |
| Weight | 21 Kg |
| Height | 871 mm |
| Reach | 656 mm |
| Footprint | 204 mm |
| Robotics framework | ROS 2.0 Crystal Clemmys |
| Communication interfaces | 1 Gbps Ethernet, Compliant with TSN standards |
| Information model | Hardware Robot Information Model (HRIM®), version Anboto |
| Security | Encrypted and secure computing environment, Secure data exchange capabilities |
| Information model | Hardware Robot Information Model (HRIM®), version Coliza |
| Security | Encrypted and secure computing environment, Secure data exchange capabilities &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; |
| Automatic updates | Over-the-Air (OTA) |
| Datasheet | [Download datasheet](https://acutronicrobotics.com/products/mara/files/MARA_datasheet_v1.1.pdf) |

<br/>

## Packages

<a href="http://www.acutronicrobotics.com"><img src="https://acutronicrobotics.com/products/mara/images/v2_MARA6_1-11.png" align="right" hspace="8" vspace="2" width="200"></a>
In this section we will install all the necessary dependencies in order to be able to launch MARA.

- `hros_cognition_mara_components`: Transformations between JointTrajectory messages and module specific HRIM messages.
- `individual_trajectories_bridge`: Bridge to connect ROS and ROS 2.0.
- `mara_bringup`: roslaunch scripts for starting the MARA.
- `mara_contact_publisher`: ROS 2.0 publisher to know if a collision takes place.
- `mara_description`: 3D models of the MARA for simulation and visualization.
- `mara_gazebo`: Gazebo simulation package for the MARA.
- `mara_gazebo_plugins`: MARA Gazebo plugins for sensors and motors.
- `mara_utils_scripts`: Some scripts to move the MARA or spawn the model.
- `hros_cognition_mara_components`: Transformations between JointTrajectory messages and module specific HRIM messages.
- `individual_trajectories_bridge`: Bridge to connect ROS and ROS 2.0.
- `mara_bringup`: roslaunch scripts for starting the MARA.
- `mara_contact_publisher`: ROS 2.0 publisher to know if a collision takes place.
- `mara_description`: 3D models of the MARA for simulation and visualization.
- `mara_gazebo`: Gazebo simulation package for the MARA.
- `mara_gazebo_plugins`: MARA Gazebo plugins for sensors and motors.
- `mara_utils_scripts`: Some scripts to move the MARA or spawn the model.

<br/>

## Install

Expand Down Expand Up @@ -143,7 +166,8 @@ cd ~/ros2_mara_ws && colcon build --merge-install --packages-skip individual_tra
**Installation completed!** Now make sure you check the **[Examples](#examples)** section! Or follow the MoveIt! installation.

### MoveIt! in ROS (Optional)
While MoveIt2! is not released (we are activelly developing), we provide the option to use ROS MoveIt! through bridges.
MoveIt! is well known motion planning framework in the robotics community. MoveIt! allows to leverage different motion planners as well evaluate concepts such as manipulation, 3D perceptions, kinematics control and navigation in easy, user friendly way.
While MoveIt2! is not released (we are actively developing and contributing towards that effort), we provide the option to use ROS MoveIt! through bridges.

Continue the following steps to complete the MoveIt! installation.

Expand Down Expand Up @@ -175,6 +199,47 @@ git clone https://github.com/AcutronicRobotics/MARA_ROS1
cd ~/catkin_mara_ws/
catkin_make_isolated --install
```

<br/>

## Gazebo
Complimentary information is available in our [documentation's simulation section](https://acutronicrobotics.com/docs/technology/h-ros/api/level1/simulation).

Launch MARA!

```sh
source ~/ros2_mara_ws/install/setup.bash
ros2 launch mara_gazebo mara.launch.py
```

**Optionally**, you can launch one of these launch files, which correspond to different grippers.

```sh
ros2 launch mara_gazebo mara_gripper_140.launch.py
ros2 launch mara_gazebo mara_gripper_85.launch.py
ros2 launch mara_gazebo mara_gripper_hande.launch.py
```

## RViz
### Launching MARA's Simulation
Complimentary information is available in our [documentation's simulation section](https://acutronicrobotics.com/docs/technology/h-ros/api/level1/visualization).

Skip this step if you are working with the real MARA.

You can choose one of the available launch files. Let's launch MARA with the Robotiq's S140 Gripper for instance:

```bash
ros2 launch mara_gazebo mara_gripper_140.launch.py
```

### Visualizing MARA in RViz2

3D model visualization via robot_description topic will be supported in the upcoming ROS2 Dashing debian packages ([Rviz2 Issue](https://github.com/ros2/rviz/issues/395)). It is possible to [compile RViz from sources](https://github.com/ros2/rviz#building-rviz-in-a-separate-workspace) or load the 3D model via URDF file.

```bash
rviz2 -d `ros2 pkg prefix mara_description`/share/mara_description/rviz/visualization.rviz
```

## MoveIt!
Motion planning, manipulation, 3D perception, kinematics, control and navigation through brigdes.

Expand All @@ -183,6 +248,7 @@ Plan trajectories in a virtual environment with Gazebo and MoveIt!.

#### Terminal 1 (ROS 2.0)

Launch MARA:
```sh
source ~/ros2_mara_ws/install/setup.bash
ros2 launch mara_gazebo mara.launch.py
Expand Down Expand Up @@ -272,11 +338,15 @@ export ROS_DOMAIN_ID=22

ros2 run individual_trajectories_bridge individual_trajectories_bridge_actions -motors ~/ros2_mara_ws/src/mara/individual_trajectories_bridge/config/motors_actions.yaml &
```
<br/>

## Examples

- [Documentation and tutorials](https://acutronicrobotics.com/docs/products/robots/mara)
- [mara_examples](https://github.com/AcutronicRobotics/mara_examples.git)

<br/>

## Help

If you need help with MARA's real robot or its simulation, feel free to raise an issue [here](https://github.com/AcutronicRobotics/MARA/issues).