Search
Your task will be to implement first part of a reactive_controller node (located in student-packages/aro_reactive_control) that collects and processes 2D laser scanner data. As part of this task, you will implement ROS 2 subscriber and publisher to access the data and provide the results. You can find a more detailed description of the individual sub-tasks below.
Responsible lecturer: Vít Krátký (kratkvit@fel.cvut.cz)
ros2 launch aro_reactive_control hw01_sim.launch.xml
ros2 interface show <msg_type>
reactive_controller.py
# TODO HW 01
/reactive_control/sector_dists
distance_right
distance_front
distance_left
Keyboard teleoperation
The launch file hw01_sim.launch.xml starts the keyboard_teleop node that allows you to control the forward and angular velocity of the robot using keyboard keys (w / x increases/decreases forward velocity, a / d increases/decreases angular velocity and s sets both angular and forward velocity to zero). You can use this way of robot control to test the functionality of your node.
hw01_sim.launch.xml
keyboard_teleop
ros2 launch aro_reactive_control hw01_sim.launch.xml run_controller:=false
ros2 run aro_reactive_control reactive_controller
RViz visualization
The launch file hw01_sim.launch.xml starts also a preconfigured RViz window that shows the map of the environment, visualizes data from the scanner and the robot itself. The data published on topic /reactive_control/sector_dists are visualized in a form of linear gauge in the upper part of the RViz window. Initially, these indicators will show zero values. Once you correctly implement the publishers, you will see the published values.
Local evaluation
Local evaluation of your solution can be run using
ros2 launch aro_reactive_control hw01_eval.launch.xml
Run script aro_exploration/homeworks/create_hw01_package.sh to create an archive containing your implementation (reactive_controller.py) and upload it to Brute. The script reactive_controller.py must be “runnable” from the provided launch file hw01_eval.launch.xml. 5 points will be awarded for a valid submission fulfilling all requirements in Assignment section.
aro_exploration/homeworks/create_hw01_package.sh
hw01_eval.launch.xml