Turtlebot 3 Fake Node Uygulaması

Turtlebot 3 Fake Node Uygulaması

Bu dokümandaki işlemleri uygulamaya başlamadan önce ROS Kinetic, Turtlebot3 ve catkin kurulum işlemlerinin sorunsuz bir şekilde tamamlanmış olması gerekmektedir.

Gerekli kurumları yapabilmek adına yardım alabileceğiniz doküman → https://yapbenzet.org.tr/ros-kurulumu-ve-catkin/ adresinde bulunmaktadır.

cd ~/catkin_ws/src/
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/catkin_ws && catkin_make

İlk aşamada yukarıdaki komutları terminalde sırasıyla girilerek 1. Resimde de görüldüğü gibi catkin klasörüne gidilerek, gerekli olan Turtlebot3 simulasyon paketi yüklendi ve derleme işlemi gerçekleşti.

1.png
roslaunch turtlebot3_fake turtlebot3_fake.launch

 

 

 

Bu adımda terminale yukarıdaki komut girilen ros launch komutu ile turtlebot3 simülasyonu Rviz üzerinde başlar. 2. ve 3. resimlerde de komutun başarılı bir şekilde başladığına ve Rviz üzerinde robotun geldiğine dair görüntüler bulunmaktadır.

2.png
3.png
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

Yeni bir terminal açılarak yukarıdaki komut girilir ve roslaunch turtlebot3 teleop çalıştırılırsa 4 ve 5. resimde de görüldüğü gibi simülasyon ekranı üzerindeki robot ok tuşlarıyla kontrol edilebilir.

4.png
5.png
roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

Yukarıdaki komut çalıştırılarak Gazebo üzerinde Turtlebot3 içeren boş bir dünya başlatılır. Gazebo ilk defa çalıştırılıyorsa bu işlem uzun sürebilir. 6 ve 7. resimlerde de görüldüğü gibi komut başarıyla çalışarak Gazebo Turtlebot3 ile boş bir dünya üzerinde gelir.

6.png
7.png
roslaunch turtlebot3_gazebo turtlebot3_world.launch

Daha sonra yukarıdaki komut çalıştırılarak Gazebo Turtlebot3 dünyası ile çalışır. 8 ve 9. resimlerde de bu uygulama görülmektedir.

8.png
9.png
roslaunch turtlebot3_gazebo turtlebot3_house.launch

Yukarıdaki komut ile Gazebo ile Turtlebot3 ev simülasyonunda başlatılır.

10.png
11.png

Simülasyonda Turtlebot3’ün hareket ettirilebilmesi için yeni bir terminal açılarak yukarıda verilen teleop komutu çalıştırılır. Resim 12 ve 13’de de görüldüğü gibi ev simülasyonu üzerinde Turtlebot3 ok tuşlarıyla kontrol edilebilir.

12.png
13.png
roslaunch turtlebot3_gazebo turtlebot3_world.launch

Yeni bir terminal üzerinde yukarıdaki komut girilerek mevcut ev simülasyonunda yeni bir Turtlebot3 başlatılır

14.png
roslaunch turtlebot3_gazebo turtlebot3_simulation.launch

Daha sonra yeni bir terminal daha açılır ve yukarıdaki komut ve resim 16’da görüldüğü gibi Turtlebot3 simülasyonu çalıştırılır.

15.png
16.png
roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch

Yeni bir terminal açarak yukarıdaki komut girilir ve Turtlebot3 Rviz üzerinde başlatılır. Resim 18’de de görüntülendiği gibi burada robotların laser taraması nasıl çarpışma denetimi yaptığı uygulama ile gösterilmeye çalışılır.

17.png
18.png

TurtleBot3’ler ile SLAM Uygulaması

roslaunch turtlebot3_gazebo multi_turtlebot3.launch roslaunch turtlebot3_gazebo multi_turtlebot3_slam.launch ns:=tb3_0
roslaunch turtlebot3_gazebo multi_turtlebot3_slam.launch ns:=tb3_1
roslaunch turtlebot3_gazebo multi_turtlebot3_slam.launch ns:=tb3_2

Yukarıdaki komutlar sırasıyla ayrı terminallerde çalıştırılarak 3 tane Turtlebot3 üzerinde SLAM çalıştırılır.

19.png
20.png
sudo apt-get install ros-kinetic-multirobot-map-merge

Yukarıdaki komut ile çoklu robotlar için çıkarılan haritayı birleştirmek için gerekli ros paketi yüklenir.

21.png
roslaunch turtlebot3_gazebo multi_map_merge.launch

Yukarıdaki komut girilir ve aşağıdaki resimlerde de görüldüğü gibi harita birleştirme işlemi başlar.

22.png
23.png
rosrun rviz rviz -d `rospack find turtlebot3_gazebo`/rviz/multi_turtlebot3_slam.rviz

Daha sonra yukarıdaki komut girilerek Rviz açılır.

24.png
25.png
rosrun map_server map_saver -f ~/map

Yukarıdaki komut çalıştırılarak çıkarılan harita kaydedilir.

26.png