Added brief description of all modules launched by start.bash and modified start.bash to match.

This commit is contained in:
fa-se 2023-08-01 17:02:17 +02:00
parent ef45a0d522
commit cefe2d0f61
Signed by untrusted user who does not match committer: f.seuring
GPG Key ID: 999EE8423AECD17D
2 changed files with 24 additions and 5 deletions

View File

@ -1,6 +1,25 @@
# DCAITI_WS
# (At least) teach the robot to drive remotely
## Jetson IP Adresses
Onboard switch: 192.168.1.253
## Start Script
The whole system (modules for robot control, remote control, lidar drivers and ROS interface, as well as SLAM & navigation) can be launched by executing `start.bash`, which is located at the root of the project directory.
TIB switch: 192.168.13.142
`start.bash` creates a tmux session with a separate window for each module, plus an additional window running `htop` for monitoring performance. In each window, the appropriate launch file for the respective module is executed.
The benefits of this modular setup lie in separation of the outputs of the different modules, enabling easier troubleshooting. Additionally, this allows terminating or restarting modules independently. For example, if the controller loses connection, this would be evident in the remote control window and the responsible module could be restarted without bringing the entire system down.
## Robot Control
The robot control is implemented in the `dcaiti_control` package and can be launched with \
`ros2 launch dcaiti_control launch_robot.py`.\
This launch file brings up the `ros2_control`-based nodes that serve as the interface between the physical robot and the ROS2 software stack.
## Remote Control
The launch file `ros2 launch src/dcaitirobot/launch/remote_control_launch.py` launches the nodes required to interface the PS3 controller and publish its commands as `Twist` messages in ROS.
## Lidar
`ros2 launch velodyne velodyne-all-nodes-VLP16-launch.py` is provided by the `velodyne` package and brings up the velodyne driver as well as nodes required to publish ROS2 messages of type `PointCloud2` and `LaserScan`.
**Note**\
In order to bring the lidar to the same subnet as the Jetson within the provided router, we modified the lidar's IP from `192.168.4.200` to `192.168.1.200`.
## SLAM and Nav2
`ros2 launch src/dcaiti_navigation/launch/start_nav2.py` will start `slam_toolbox` (plus several nodes/transforms required for `slam_toolbox` to work with our lidar output), multiple `Nav2` packages as well `explore_lite` which provides autonomous exploration support for `Nav2`.

View File

@ -5,7 +5,7 @@ DCAITI_PATH=.
# Define your windows, working dirs, and commands
declare -a windows=(
"performance"
"base"
"robot_control"
"remote_control"
"lidar"
# "slam"