Quick Start Guide InsperBot - Insper/insperbot GitHub Wiki

📌

Login ID: ubuntu

PASSWORD:turtlebot

NOTE: This instruction was tested on Linux with Ubuntu 20.04 and ROS1 Noetic.

InsperBot

InsperBot was built by the technical team of Insper's Computer Engineering laboratory, using as base the Turtlebot3 Burger, the Insper bot is a low cost ROS standard platform robot.

Features:

  • Ubuntu 20.04
  • ROS Noetic
  • Opencv4
  • Camera
  • Gripper
  • Bumper
  • PCB Shield for Raspberry pi 4

Software Setup

Requeriments:

  • Raspberry pi 4+
  • Micro SD Card 16GB +
  • Micro HDMI Adapter
  • Mouse and Keyboard USB
  • Power Supply 5VDC 2A+

NOTE: This process may take long time. Please do not use battery while following this section.

Flashing the SD Card

Download and flash this image below made by ROBOTIS with ROS Noetic correctly installed in Ubuntu 20.04 server

You can use various image burning tools, we recommend Raspberry Pi Imager, Choose your preferred tool to burn the image to microSD

Link Raspberry Pi Imager where

Configure the WiFi Network Setting

User the command below in your Ubuntu PC to edit the netplan file with a superuser permission.

cd /media/$USER/writable/etc/netplan/
sudo gedit 50-cloud-init.yaml

When the editor is opened, replace the WIFI_SSID and WIFI_PASSWORD with your wifi SSID and password.

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
     dhcp4: yes
     dhcp6: yes
     optional: true
  wifis:
    wlan0:
      dhcp4: yes
      dhcp6: yes
      access-points:
        **WIFI_SSID**:
          password: **WIFI_PASSWORD**       

Save the file with Ctrl + S and exit

Eject the MicroSD card

If “No such file or directory” is returned, make sure the microSD is mounted to the system.

Boot up the Raspberry Pi 4

  • Connect the HDMI cable of the monitor to the HDMI port of Raspberry Pi.
  • Connect the keyboard and mouse USB in to Raspberry Pi.
  • Insert the microSD card.
  • Connect the power to turn on the Raspberry Pi.
  • Login with ID ubuntu and PASSWORD turtlebot

ROS1 Network Configuration

Edit the .bashrc file.

nano ~/.bashrc

Find the ROS_MASTER_URI and ROS_HOSTNAME

export ROS_HOSTNAME=hostname -I | awk '{print $1}'
export ROS_MASTER_URI="http://"$ROS_HOSTNAME":11311" 

export OPENCR_PORT=/dev/ttyACM0
export OPENCR_MODEL=burger_noetic

Save the file with Ctrl + S and exit the nano editor with Ctrl + X.

Apply changes with the command below.

source ~/.bashrc

OpenCR Setup

Connect the OpenCR to the Rasbperry Pi using the micro USB cable.

  1. Connect the OpenCR to the Rasbperry Pi using the micro USB cable.
  2. Install required packages on the Raspberry Pi to upload the OpenCR firmware.
 sudo dpkg --add-architecture armhf
 sudo apt-get update
 sudo apt-get install libc6:armhf
  1. Download the firmware and loader, then extract the file.
cd ~
rm -rf ./opencr_update.tar.bz2
wget https://github.com/ROBOTIS-GIT/OpenCR-Binaries/blob/master/turtlebot3/ROS1/latest/opencr_update.tar.bz2?raw=true
tar -xvf opencr_update.tar.bz2
  1. Upload firmware to the OpenCR.
cd ./opencr_update
./update.sh $OPENCR_PORT $OPENCR_MODEL.opencr

A successful firmware upload for TurtleBot3 Burger will look like below.

Update Repositories and Packages

Start by updating the repositories and package lists:

sudo apt update && sudo apt upgrade

Press Y and hit Enter when asked if you want to continue, when the process was finished, install Ubuntu Desktop:

sudo apt install ubuntu-desktop

Install support for GPIO, i2c-tools and stuffs like that

sudo apt-get install python3-pip python3-dev
sudo apt-get install -y i2c-tools.
sudo apt-get install -y libi2c-dev
sudo pip3 install RPi.GPIO
sudo echo "deb http://archive.raspberrypi.org/debian/ buster main" >> /etc/apt/sources.list
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7FA3303E
sudo apt-get update
sudo apt-get install raspi-config

Reboot the system

sudo reboot

Reference

GitHub - Insper/turtlebot3: Documentação das atualizações realizadas pelo time do laboratório de informática do Insper para robô TurtleBot3.

ROBOTIS e-Manual

⚠️ **GitHub.com Fallback** ⚠️