This project is designed to run frontier-based exploration on the Qualcomm® Robotics RB5 Development Kit, which is an artificial intelligence (AI) board for makers, learners, and developers. It is based on the Qualcomm® QRB5165 SoC, which is the new generation premium-tier processor for robotics applications. It is designed with the 7 nm process for superior performance and power efficiency.
In this project, when the ROS node is running, the robot will explore its environment until no frontiers could be found. Applications like these can be designed to automatically build a navigation map.
ObjectiveThe main objective for this project is to get familiar with Qualcomm Robotics RB5 development kit, ROS and navigation packages. The project is designed to help developers jumpstart creating their smart autonomous robots, which starts by mapping their environment.
Materials Required / Parts List / ToolsSource Code / Source ExamplesAdditional ResourcesBuild / Assembly InstructionsThis project uses the Qualcomm Robotics RB5 development kit, which is mounted on the Turtlebot3 and drives the motors through the OpenCR board. The steps below walk you through the setup process for various components used in the project.
1. Assemble the HardwareThe following steps will help you assemble the Turtlebot, OpenCR board and the Qualcomm Robotics RB5 development kit.
Parts used
How to make Power Cable
Power Connection
USB Connection
Assembly
First Layer Assembly
Second Layer Assembly
Third Layer Assembly
Overall Assembly
The Turtlebot3 is controlled by the OpenCR board. Here is the link of the detailed steps to download and upgrade firmware for ROS1.
http://emanual.robotis.com/docs/en/platform/turtlebot3/opencr_setup/
For short, see below steps.
root@qrb5165-rb5:/# export OPENCR_PORT=/dev/ttyACM0
root@qrb5165-rb5:/# export OPENCR_MODEL=waffle_pi
root@qrb5165-rb5:/# rm -rf ./opencr_update.tar.bz2
root@qrb5165-rb5:/# wget https://github.com/ROBOTIS-GIT/OpenCR-Binaries/raw/master/turtlebot3/ROS1/latest/opencr_update.tar.bz2 && tar -xvf opencr_update.tar.bz2 && cd ./opencr_update && ./update.sh $OPENCR_PORT OPENCR_MODEL.opencr && cd.
3.1 Enable Wi-Fi on Qualcomm Robotics RB5 development kit
change this file with your local wifi's name and password:
# Only WPA-PSK is used. Any valid cipher combination is accepted.
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="SSID_NAME"
#proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP CCMP
group=TKIP CCMP
psk="PASSWD"
}
3.2 Install ROS1.0 core packages on Qualcomm Robotics RB5 development kit
3.2.1 Set location
root@qrb5165-rb5:/# apt update
root@qrb5165-rb5:/# apt-get -y install locales iperf
root@qrb5165-rb5:/# export LANGUAGE=en_US.UTF-8
root@qrb5165-rb5:/# export LANG=en_US.UTF-8
root@qrb5165-rb5:/# locale-gen en_US en_US.UTF-8
root@qrb5165-rb5:/# update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
3.2.2 Install ROS Melodic
More details can refer http://wiki.ros.org/melodic/Installation/Ubuntu
root@qrb5165-rb5:/# sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
root@qrb5165-rb5:/# apt update
root@qrb5165-rb5:/# sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
root@qrb5165-rb5:/# sudo apt update
root@qrb5165-rb5:/# sudo apt install ros-melodic-desktop
3.2.3 Install ROS1.0 turtlebot3 and navigation packages
Download ROS1 packages and compile on device
a) turtlebot3 packages
root@qrb5165-rb5:/# mkdir /home/rb5/ros_ws/src -p
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git
root@qrb5165-rb5:/# cd hls_lfcd_lds_driver
root@qrb5165-rb5:/# git branch melodic-devel remotes/origin/melodic-devel
root@qrb5165-rb5:/# git checkout melodic-devel
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
root@qrb5165-rb5:/# cd turtlebot3_msgs
root@qrb5165-rb5:/# git branch melodic-devel remotes/origin/melodic-devel
root@qrb5165-rb5:/# git checkout melodic-devel
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
root@qrb5165-rb5:/# cd turtlebot3
root@qrb5165-rb5:/# git branch melodic-devel remotes/origin/melodic-devel
root@qrb5165-rb5:/# git checkout melodic-devel
b) rosserial
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ros-drivers/rosserial.git
root@qrb5165-rb5:/# cd rosserial
root@qrb5165-rb5:/# git branch melodic-devel remotes/origin/melodic-devel
root@qrb5165-rb5:/# git checkout melodic-devel
c) navigation
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ros-planning/navigation.git
root@qrb5165-rb5:/# git clone https://github.com/ros-planning/navigation_msgs.git
d) gmapping
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/ros-perception/slam_gmapping.git
root@qrb5165-rb5:/# git clone https://github.com/ros-perception/openslam_gmapping.git
e) build all the packages
root@qrb5165-rb5:/# apt-get install ros-melodic-tf2-geometry-msgs ros-melodic-tf2-sensor-msgs
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/
root@qrb5165-rb5:/# source /opt/ros/melodic/setup.bash
root@qrb5165-rb5:/# catkin_make
Install ROS on Ubuntu 18.04 PC for visualization with Melodic version. For more details, please see: http://wiki.ros.org/melodic/Installation/Ubuntu
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
apt update
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt update
sudo apt install ros-melodic-desktop
sudo apt-get install ros-melodic-turtlebot3-*
root@qrb5165-rb5:/# cd /home/rb5/ros_ws/src
root@qrb5165-rb5:/# git clone https://github.com/hrnr/m-explore.git
root@qrb5165-rb5:/# cd m-explore
root@qrb5165-rb5:/# git branch melodic-devel remotes/origin/melodic-devel
a) On Qualcomm Robotics RB5 Development kit, Open a terminal and restart sshd
root@qrb5165-rb5:/# /etc/init.d/sshd restart
b) open a new terminal to ssh login
ssh root@ip (example: ssh root@192.168.1.101)
c) in ssh terminal
root@qrb5165-rb5:/# export ROS_MASTER_URI=http://192.168.1.xxx:11311
root@qrb5165-rb5:/# export ROS_IP=192.168.1.xxx
root@qrb5165-rb5:/# export ROS_HOSTNAME=192.168.1.xxx
root@qrb5165-rb5:/# source /home/rb5/ros_ws/devel/setup.bash
root@qrb5165-rb5:/# export TURTLEBOT3_MODEL=waffle_pi
root@qrb5165-rb5:/# roslaunch turtlebot3_bringup turtlebot3_robot.launch
root@qrb5165-rb5:/# roslaunch turtlebot3_navigation turtlebot3_navigation.launch
root@qrb5165-rb5:/# roslaunch /home/rbt/ros_ws/src/m-explore/explore/launch/explore.launch
d) On the host PC, open a new terminal and launch Rviz
source /opt/ros/melodic/setup.bash
export ROS_MASTER_URI=http://192.168.1.xxx:11311
export ROS_IP=192.168.1.xxx
export ROS_HOSTNAME=192.168.1.xxx
rviz -d /opt/ros/melodic/share/turtlebot3_navigation/rviz/turtlebot3_navigation.rviz
Qualcomm Robotics RB5 and Qualcomm QRB5165 are products of Qualcomm Technologies, Inc. and/or its subsidiaries








Comments