ADBSCAN on AAEON Robot Kit

This tutorial describes how to run the ADBSCAN algorithm on the real robot UP Xtreme i11 AAEON Robot Kit using the Intel® RealSense™ camera input. During the execution of the program the ADBSCAN algorithm detects objects, and draws them in rviz. Then, the FastMapping algorithm uses data from the ADBSCAN to generate a 2D Map of the environment around. User can use the default setup to move robot via gamepad or keyboard, so the 3D-camera on the robot can scan surroundings around.

Prerequisites:

  • Assemble your robotic kit following the instructions provided by AAEON.

  • Ensure the system is setup correctly.

  • To control the robot remotely, you may need a Logitech* F710 gamepad (to be purchased separately).

Run the ADBSCAN Algorithm Using the AAEON Robot Kit

  1. To download and install the tutorial run the command below:

    sudo apt-get install ros-humble-aaeon-adbscan-tutorial-common
    sudo apt-get install ros-humble-aaeon-adbscan-tutorial
    
    Copy to clipboard
  2. Please perform IMU calibration of the robot, launch script below:

    source /opt/ros/humble/setup.bash
    /opt/ros/humble/share/ros2_amr_interface/scripts/calibration.sh
    
    Copy to clipboard
  3. Place the robot in front of an object and use one of the two methods described below to control the robot:

    ../../../../_images/adbscan_aaeon_object_s.png

Gamepad Robot Control Method

  1. Launch the ADBSCAN AAEON Robot gamepad control program:

    sudo chmod a+rw /dev/input/js0
    sudo chmod a+rw /dev/input/event*
    
    Copy to clipboard
    source /opt/ros/humble/setup.bash
    /opt/ros/humble/share/aaeon_adbscan/tutorial-aaeon-adbscan/aaeon_robot_with_adbscan_realsense_gamepad.sh
    
    Copy to clipboard
  2. Move the robot around using the gamepad:

    ../../../../_images/gamepad_Logitech_F710_v2.png
    • Hold the RB button, then press the Mode button on the joystick.

    • The green LED near this button should illuminate.

    • Use the D-pad to control the robot’s movement.

    ../../../../_images/adbscan_aaeon_gamepad_control.gif

Keyboard Robot Control Method

  1. Launch the ADBSCAN AAEON Robot keyboard control program:

    source /opt/ros/humble/setup.bash
    /opt/ros/humble/share/aaeon_adbscan/tutorial-aaeon-adbscan/aaeon_robot_with_adbscan_realsense_keyboard.sh
    
    Copy to clipboard
  2. In a separate Terminal window launch keyboard control handler:

    source /opt/ros/humble/setup.bash
    ros2 run teleop_twist_keyboard teleop_twist_keyboard
    
    Copy to clipboard

    The robot responds to your keyboard commands in these ways:

    • i: Move forward

    • k: Stop

    • ,: Move backward

    • j: Turn right

    • l: Turn left

    • q/z: Increase/decrease max speeds by 10%

    • w/x: Increase/decrease only linear speed by 10%

    • e/c: Increase/decrease only angular speed by 10%

    • L or J (only for omnidirectional robots): Strafe (move sideways)

    • anything else: Stop

    • Ctrl-c: Quit

  3. Move the robot around using the keyboard buttons:

    ../../../../_images/adbscan_aaeon_keyboard_control.gif

    Note

    To keep keyboard controls working keep second terminal window above other windows.

    ../../../../_images/adbscan_aaeon_pic4.png

Expected Results

  1. On the server rviz, you will see how ADBSCAN interprets the Intel® RealSense™ data based on real objects around the robot:

    • Green blocks indicate objects around.
      ../../../../_images/adbscan_aaeon_pic1.png
    • Turn off MarkerArray in rviz to see a 2D Map generated by FastMapping.
      ../../../../_images/adbscan_aaeon_pic2.png
  2. Default ADBSCAN view in the rviz window:

    ../../../../_images/adbscan_aaeon_3d_map.gif
  3. Enable FastMapping 2D map view by turning off MakerArray check-box:

    ../../../../_images/adbscan_aaeon_2d_map.gif

Troubleshooting

For general robot issues, go to: Troubleshooting for Robotics SDK Tutorials .