Skip to content
Merged
Show file tree
Hide file tree
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
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "libaria"]
path = libaria
url = https://github.com/CollaborativeRoboticsLab/libaria.git
54 changes: 34 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Omron AMR package

To view the original Readme.md [click here](./docs/original_readme.md)
To view the original Readme.md [click here](./docs/old/original_readme.md)

This package is a restructuring of [OmronAPAC/Omron_AMR_ROS2](https://github.com/OmronAPAC/Omron_AMR_ROS2)
This package is a restructuring of [OmronAPAC/Omron_AMR_ROS2](https://github.com/OmronAPAC/Omron_AMR_ROS2) with a libaria-backed `amr_core` hardware interface.

View [New Developer's Guide](https://github.com/CollaborativeRoboticsLab/omron_amr/blob/master/docs/old/DeveloperGuide_updated.adoc).
View [Old Developer's Guide](https://github.com/CollaborativeRoboticsLab/omron_amr/blob/master/docs/old/DeveloperGuide.adoc).
View [New Developer's Guide](./docs/old/DeveloperGuide_updated.adoc).
View [Old Developer's Guide](./docs/old/DeveloperGuide.adoc).

More information
- [amr_core parameters](./docs/parameters.md)
Expand All @@ -29,7 +29,7 @@ sudo apt install ros-humble-navigation2 ros-humble-nav2-bringup ros-humble-slam-
Clone the repositories into the `src` folder by

```sh
git clone https://github.com/CollaborativeRoboticsLab/omron_amr.git
git clone --recursive https://github.com/CollaborativeRoboticsLab/omron_amr.git
```

Build by
Expand All @@ -39,26 +39,47 @@ cd ..
colcon build
```

## Usage
## Usage

### Initialization

1. [Establish Remote connection to AMR Robot](https://github.com/CollaborativeRoboticsLab/omron_amr/blob/main/docs/DeveloperGuide.adoc#231-set-up-user-ethernet)
1. [Establish Remote connection to AMR Robot](./docs/old/DeveloperGuide.adoc)

2. [Configure AMR robot via Mobile Planner](https://github.com/CollaborativeRoboticsLab/omron_amr/blob/main/docs/DeveloperGuide_updated.adoc#332-set-up-arcl)
2. [Configure AMR robot via Mobile Planner](./docs/old/DeveloperGuide_updated.adoc)

### Start only the hardware interface

### Connect with the robot base
```sh
source install/setup.bash
ros2 launch amr_ros amr_core.launch.py
```

### Start the LD250 wrapper

Run the following command to connect to the robot.
This launches the LD250 hardware parameters and can optionally include Nav2 and RViz.

```sh
source install/setup.bash
ros2 launch amr_ros amr_core.launch.py
ros2 launch amr_ros ld250.launch.py
```
### Start visualization

Run the following command to visualize robot. Swap `ld250` with `ld90` or `amr_platform` for other robot models.
Example with Nav2 and RViz:

```sh
source install/setup.bash
ros2 launch amr_ros ld250.launch.py use_nav2:=true use_slam:=true rviz:=true
```

Digital twin overlay example:

```sh
source install/setup.bash
ros2 launch amr_ros ld250.launch.py extra_params_file:=/absolute/path/to/override.yaml
```

### Start visualization only

Run the following command to visualize the robot. Swap `ld250` with `ld90` or `amr_platform` for other robot models.

```sh
source install/setup.bash
Expand All @@ -72,10 +93,3 @@ source install/setup.bash
ros2 launch amr_teleop amr_joyop.launch.py
```

## To Do List

- [x] Replace AMR_Core with a cpp package with support for standard ros2 interface (/cmd_vel, /tf and /odom)
- [ ] Extend the interface with standard ros2 messages for battery and other optional data
- [x] Add support for NAV2
- [x] Create cascadeing launch files for AMR core and RVIz

15 changes: 6 additions & 9 deletions amr_core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,16 @@ find_package(control_msgs REQUIRED)
find_package(visualization_msgs REQUIRED)
find_package(ament_index_cpp REQUIRED)
find_package(tf2_ros REQUIRED)
find_package(libaria CONFIG REQUIRED)

set(AMR_CORE_ARIA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../libaria")

include_directories(
include
)

add_executable(${PROJECT_NAME} src/core_node.cpp)
target_compile_definitions(${PROJECT_NAME} PRIVATE AMR_CORE_ARIA_DIR="${AMR_CORE_ARIA_DIR}")
ament_target_dependencies(${PROJECT_NAME}
rclcpp
rclcpp_action
Expand All @@ -42,19 +46,12 @@ ament_target_dependencies(${PROJECT_NAME}
ament_index_cpp

)

add_executable(client src/client_node.cpp)
ament_target_dependencies(client
rclcpp
rclcpp_action
std_msgs
amr_msgs
geometry_msgs
target_link_libraries(${PROJECT_NAME}
libaria::ArNetworking
)

install(TARGETS
${PROJECT_NAME}
client
DESTINATION lib/${PROJECT_NAME}
)

Expand Down
150 changes: 0 additions & 150 deletions amr_core/include/amr_core/client_node.hpp

This file was deleted.

Loading
Loading