gMapping, Adaptive Monte Carlo Lokalizasyonu ve Yol Planlama

Hazırlık

Önceden anlatıldığı gibi Ubuntu 14 with ROS Turtlebot imajını kurun. Aşağıdaki komutları bilgisayar kurulduktan sonra 1 kere çalıştırsanız yeterli olacaktır. Her seferinde tekrar tekrar çalıştırmayın.

Çalıştırmanız Gereken Komutlar
sudo cp -rf /opt/ros/indigo/share/turtlebot_navigation/launch/includes/amcl/amcl.launch.xml /opt/ros/indigo/share/turtlebot_navigation/launch/includes/
sudo cp -rf /opt/ros/indigo/share/turtlebot_navigation/launch/includes/gmapping/gmapping.launch.xml /opt/ros/indigo/share/turtlebot_navigation/launch/includes/

Bu kodlar ileride amcl_demo veya gmapping_demo adlı paketleri çalıştırdığınızda gelecek olan bulunamadı hatasının çözümüdür.

 

 

Çalıştırma
roslaunch turtlebot_gazebo turtlebot_world.launch

kodunu çalıştırıyoruz ardından gazebonun açılmasını bekleyin. Açıldıktan sonra

 roslaunch turtlebot_rviz_launchers view_navigation.launch

Buraya kadar anlatılan kısımdan sonra ya gMapping ya da AMCL algoritmasını çalıştırın. İkisini beraber çalıştırmayın. Her algoritma için bu adımları tekrarlayın.

GMAPPING Algoritması

Pencereler açıldıktan sonra gMapping algoritmasını çalıştırmak için

roslaunch turtlebot_gazebo gmapping_demo.launch

komutunu çalıştırdıktan sonra RViz üzerinde göreceğiniz üzere gelen girdi verilerine göre gMap algoritmasına göre harita oluşturmaya başlanılacak.

Buradan sonra algortimamız artık çalışır vaziyettedir. Keyboard Teleop kodunu başlatarak robotu haritada gezdrirerek haritalama işlemine başlayabiliriz. Bunun için

roslaunch turtlebot_teleop keyboard_teleop.launch

komutu ile teleop işlemimiz başlamıştır.

   u    i    o
   j    k    l
   m    ,    .
   q/z : yükselt/azalt maximum hızları %10
   w/x : yükselt/azalt sadece lineer hızı %10
   e/c : yükselt/azalt açısal hızı %10
   space tuşu, k : aniden dur
   diğer herşey : hafifçe dur

tuşlarını kullanarak robotu yönlendireceğiz.

Bu yönlendirmeler sırasında robotu ve Rviz uygulamasını takip edin gMap algoritmasının haritayı işlediğini göreceksiniz.

ADAPTIVE MONTE CARLO Algoritması

roslaunch turtlebot_gazebo amcl_demo.launch

komutunu çalıştırdıktan sonra RViz üzerinde göreceğiniz üzere gelen girdi verilerine göre AMCL algoritmasına göre harita üzerinde olasılık noktaları dağılacak.

Buradan sonra algortimamız artık çalışır vaziyettedir. Keyboard Teleop kodunu başlatarak robotun haritadaki konumunu bulabiliriz. Bunun için:

roslaunch turtlebot_teleop keyboard_teleop.launch

komutu ile teleop işlemimiz başlamıştır.

   u    i    o
   j    k    l
   m    ,    .
   q/z : yükselt/azalt maximum hızları %10
   w/x : yükselt/azalt sadece lineer hızı %10
   e/c : yükselt/azalt açısal hızı %10
   space tuşu, k : aniden dur
   diğer herşey : hafifçe dur

tuşlarını kullanarak robotu yönlendireceğiz.

Bu yönlendirmeler sırasında robotu ve Rviz uygulamasını takip edin AMCL algoritmasının robotun konumunu gezdikçe bulduğunu göreceksiniz.

PATH PLANNING

Bu dökümanda robotun verilen bir yere yol planlaması yapmasını ve gtimesini sağlayacağız. Robot önceden haritayı biliyor olmalı. Bunun için gerekli düzenlemeler ROS ekibi tarafından göstereceğimiz harita için yapılmıştır.

BAŞLANGIÇ

Aşağıda verilen adımları izleyin.

roslaunch turtlebot_gazebo turtlebot_world.launch

kodunu terminale yazın ve gazebo uygulamasının açılmasını bekleyin.

Tip
Eğer GAZEBO uygulaması hatalar verip kapanırsa kodu tekrar tekrar çalıştırın açılacaktır.

Gazebo uygulamasında turtlebot_world dünyası yükelnecektir.

   roslaunch turtlebot_rviz_launchers view_navigation.launch

kodunu çalıştırdığınızda da Rviz uygulaması açılacaktır. Rviz robota hedef vereceğimiz ve yol planlamasını yaptıracak, gösterecek uygulamamızdır.

Bu iki uygulama açıldıktan sonra AMCL algoritmasını çağırıp robota konumlama yaptırmamız gerekmekterdir.

  roslaunch turtlebot_gazebo amcl_demo.launch

komutu ile AMCL algoritmasını çağırın Rviz ekranında da göreceğiniz üzere AMCL uygulaması çalışmış olacaktır.

Ardından Rviz uyguamasında üst menüde bulunan 2D Nav Goal tuşuna tıklayın.

Rviz üzerinden haritada bir noktaya tıklayın ve robotun yolu planlamasını ve gitmesini izleyin.