BBLAB Facebook - Ba roBotics Lab
Master Class 20261 , Autonomous mobile Robot ,
Class website: https://sites.google.com/view/bblab/teaching/master-me4512_autonomousrobot
Team code: o4v1tjx
Class sheet:
https://docs.google.com/spreadsheets/d/13oYYeaAnrTVY9SE9rM6xzfMSP4AOmTVK-w9pVFYRYag/edit?usp=sharing
Link lecture materials:https://sites.google.com/view/bblab/teaching/me4512_rbth-autonomousrobot
Google drive document:
https://drive.google.com/drive/folders/1NZaiy-0S4KbtwfU9n9dsiQTA5Hlh65i9?usp=sharing
Introduction to Autonomous Mobile Robots, 2004. Roland Siegwart and Illah R. Nourbakhsh
English lecture materials:
https://asl.ethz.ch/education/lectures/autonomous_mobile_robots/spring-2020.html
HW 1: Setting up UBUNTU and ROS 2
Please take a screenshot of your computer running Ubuntu and ROS version and submit it to assignment on team
Install the latest Stable version of Ubuntu
Recommnet install directly on a machine running both Windows and Ubuntu simultaneously. Create partion of approximately 30Gb ~
https://ubuntuhandbook.org/index.php/2022/04/install-ubuntu-2204-step-by-step/
Select step 5: Manually create system partition to để tạo partition cài Ubuntu song song với window, hay ubuntu bản cũ hơn
Select Step 5: Manually create system partion for installing Ubuntu alongside window, or older version of ubuntu
Create a bootable USB drive for installing Ubuntu:
https://linux.how2shout.com/how-to-create-ubuntu-22-04-bootable-usb-drive-on-windows/
2. Installing the ROS2 operation System:
https://docs.ros.org/en/lyrical/
Create workspace for ROS projects:
http://wiki.ros.org/catkin/Tutorials/create_a_workspace
Check Ubuntu version
~$lsb_release -a
ROS: ~$ rosversion -d
Take a screenshot of the rosversion screen and upload it to assignment on the team. Check Turn In button -> Finish
HW 2: Self-study the beginer level lessions in ROS2 tutorial
Examples: CLI tools , Beginner: Client libraries
https://docs.ros.org/en/jazzy/Tutorials.html
Please take screenshot at least three tutorial and submit them to team
HW 3: Installing and running Turtle bot simulation Cài đặt và chạy Turtle bot simulation
Please take a screenshot of running program and submit them to the Ms Team:
Reference link : https://emanual.robotis.com/docs/en/platform/turtlebot3/simulation/#gazebo-simulation
Steps:
Create a catkin space:
http://wiki.ros.org/catkin/Tutorials/create_a_workspace
$ mkdir -p ~/tenmuondat_ws/src
$ cd ~/catkin_ws/src
Go to src (source) directory to download needed package you need to run , for example turtle bot3 simulation
~/catkin_ws/src$ git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
~/catkin_ws/src$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
After downloading, go to work space folder :
$ cd ~/catkin_ws/
And install:
~/catkin_ws/$ catkin_make (Compile turtble bot to make build and devel folder )
~/catkin_ws/$ source devel/setup.bash ( Register new installed package to ros)
If there are error, use AI Chat, if lack package , run this command to instal lacked package
Bạn nào báo lỗi thiếu package thì chạy lệnh sau để tự động cài package còn thiếu:
rosdep install --from-paths src --ignore-src -r -y
Muốn hệ thống tự khai báo gói turtle bot các bạn chạy lệnh:
Use this command to auto register package to ros everytime you open command
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc (Add source line to file bashrc)
Or edit file and paste "source ~/catkin_ws/devel/setup.bash" to last line : gedit ~/.bashrc
Test run:
Open 2 command Terminal and run
Terminal 1,2 :
$ export TURTLEBOT3_MODEL=burger ( There are several turtle bot, we chose TURTLEBOT3_MODEL is burger )
Terminal 1:
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
Terminal 2:
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
Then in terminal 2, control simulated turtle bot 3 by keyboard
Sau đó điều khiển turtble trên gazebo bằng bàn phím w,s,a,d,x ...
Take a screenshot of result Rviz and gazebo and post to team assignment.
Chụp ảnh chạy Rviz và Gazebo robot đang tự di chuyển và xây dựng bản đồ
Program the robot's control interface GUI in python:
https://drive.google.com/drive/folders/1htjZcBOgl_FhC8FPWRVxY11PIwfaXsAx?usp=sharing
Step 1:
$ export TURTLEBOT3_MODEL=burger
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
Step 2:
$ export TURTLEBOT3_MODEL=burger
$ roslaunch turtlebot3_navigation turtlebot3_navigation.launch
If get error dwa_local_planner, install it
$sudo apt-get install ros-noetic-dwa-local-planner
Step 3:
~/PycharmProjects/send_goal_GUI$ python send_goal_GUI.py
Reference: Keyword: tkiter python gui, Sending Goals to the Navigation Stack - Python
https://realpython.com/python-gui-tkinter/
https://hotblackrobotics.github.io/en/blog/2018/01/29/action-client-py/
3WD Omni Wheel Arduino Robot Car C008
2. 3WD Triangular 100mm omni wheel mobile robotics car C003
3. 4WD Omni Wheel Arduino Robot Car C008
4. 3WD Omni Wheel Arduino Robot Car C008
1. Autonomous mobile platform with vacuum cleaning
2. Autonomous mobile platform with vacuum cleaning