Potansiyel Alan Metodu İle Engelli Bir Alanda Hedefine Ulaşabilecek Bir Mobil Robot İçin Yazılan Simülasyon Programı

Benzer belgeler
GEREĞİNDEN ÇOK SERBESTLİK DERECELİ ROBOT KOLLARININ YÖRÜNGE PLANLAMASI İÇİN GELİŞTİRİLMİŞ BİR YAZILIM

KİRİŞLERDE PLASTİK MAFSALIN PLASTİKLEŞME BÖLGESİNİ VEREN BİLGİSAYAR YAZILIMI

SIMMAG Kullanım Kılavuzu. Adem Ayhan Karmış. Ana Ekran

ITEC186. Bilgi Teknolojilerine Giriş AUTODESK AUTOCAD 2014-I

HARMONİK DENKLEM. Burada göz önüne alınacak problem Dirichlet problemidir; yani fonksiyonun sınırda kendisinin verilmesi halidir. 2 2 (15.

FORMÜLLER VE FONKSİYONLAR

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

GANTT ÇİZELGESİ PERT DİYAGRAMI

UFRS ANALİZ DOKÜMANI

PARÇA MODELLEMEYE GİRİŞ

Başlarken. AutoCAD Arayüzü. AutoCAD Arabirimleri. AutoCAD Arabirimleri. Şablon (Template) Seçimi. Yeni çizim dosyası açmak. Ekran Formatı B Ö L Ü M 1

POSITION DETERMINATION BY USING IMAGE PROCESSING METHOD IN INVERTED PENDULUM

Metin Tabanlı İçerik Oluşturma Araçları

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak.

5.bölümde ise dosya göz atıcı ve dosya menüsü yer almaktadır. Dosya göz atıcıyı incelemek için klasör simgesine tıklayınız.

SİNYAL TEMELLERİ İÇİN BİR YAZILIMSAL EĞİTİM ARACI TASARIMI A SOFTWARE EDUCATIONAL MATERIAL ON SIGNAL FUNDAMENTALS

SONLU FARKLAR GENEL DENKLEMLER

SAYISAL ÇÖZÜMLEME. Sayısal Çözümleme

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

1. BELGE İŞLEMLERİ. Şekil 1.2: Open Office ilk açıldığında gelen ekran

WEB SİTESİ YÖNETİM PANELİ KULLANMA YÖNERGESİ

BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ AKADEMİK ÖZGEÇMİŞ FORMU

ALGORİTMA VEYA PROGRAMLAMA DAİR KAVRAMLAR

AutoCad 2010 Programının Çalıştırılması

ÖZGEÇMİŞ. Yüksek Lisans Tezi : Analysis and Control of Bipedal Human Locomotion Tez Danışmanı: Prof.Dr.Erol UYAR, Ağustos 2003

Ekle sekmesindeki Tablolar grubundaki Tablo seçeneği ile tablo oluşturulur.

İnönü Üniversitesi Makine Mühendisliği Bölümü

BİLGİSAYAR DESTEKLİ TASARIM (TEKNİK RESİM-II) Yrd.Doç.Dr. Muhammed Arslan OMAR

Bulanık Mantık Tabanlı Uçak Modeli Tespiti

BİLGİSAYAR DESTEKLİ TASARIM HAFTA 3-SOLIDWORKS İLE SKETCH

8.Sayfa ve 9.Yazım 10.Belge Görünüm 11.Ekran Yakınlaştırma Sözcük Sayısı Denetimi Düğmeleri ve Uzaklaştırma

Aplikasyon Klavuzu (V )

2011 Third International Conference on Intelligent Human-Machine Systems and Cybernetics

Adres sorgu ekranında harita üzerindeki katmanların listelendiği Katman Listesi ve bu katmanlara yakınlaşmak için Git düğmesi bulunmaktadır.

7. HAFTA ENM 108 BİLGİSAYAR DESTEKLİ TEKNİK RESİM. Yrd.Doç.Dr. İnan KESKİN.

QUANTUM CBS YE İLİŞKİN LAB TAKİP NOTLARI

BLEND YÖNTEMİ İLE KATI MODEL OLUŞTURMA

Skecher (Çizim) Komutları

Ege Üniversitesi Elektrik Elektronik Mühendisliği Bölümü Kontrol Sistemleri II Dersi

ISSN: El-Cezerî Fen ve Mühendislik Dergisi Cilt: 3, No: 2, 2016 ( )

AKILLI GRİD. [X] Netsis Enterprise. [X] Netsis Standart. [X] Netsis Entegre 7.0.2

Kablosuz Sensör Ağlar ve Eniyileme. Tahir Emre KALAYCI. 21 Mart 2008

SOLIDWORKS SIMULATION EĞİTİMİ

BİLGİSAYAR DESTEKLİ TASARIM HAFTA 6 COSMOSWORKS İLE ANALİZ


İzostatik Sistemlerin Hareketli Yüklere Göre Hesabı

BİLGİSAYAR MÜHENDİSLİĞİ DOKTORA DERS PROGRAMI (Lisanstan gelenler için)

BÖLÜM FORMÜLLER ve OTOMATİK TOPLAM Formüller

TRANSPORT SİSTEMLERİNDE BİLGİSAYAR UYGULAMALARI

E5_C Serisi Hızlı Başlangıç Kılavuzu

İçerik. TBT 1003 Temel Bilgi Teknolojileri

MAK 210 SAYISAL ANALİZ

BÖLÜM KATMAN OLUŞTURMA (LAYER) Command line: Layer (veya transparent komutu için 'Layer kullanın)

İÇİNDEKİLER VII İÇİNDEKİLER

BİLGİSAYAR VE ENFORMASYON BİLİMLERİ YÜKSEK LİSANS DERS PROGRAMI (Tezli Program)

Seri Takibi Yenilikleri

Primal Pictures Kullanım Kılavuzu.

Makine Öğrenmesi 2. hafta

PAMUKKALE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

Part-Helical Sweep/ Yrd. Doç. Dr. Mehmet FIRAT- Yrd. Doç. Dr. Murat ÖZSOY

BİLGİSAYAR PROGRAMLAMA. Yrd. Doç. Dr. Beytullah EREN

Bilgisayar Destekli Haritacılık 2017/ D ve Veri Değişimi. Netcad 7.6

NACA PROFİL AİLE GEOMETRİSİ HESAP PROGRAMI KULLANMA KILAVUZU

Pro/E. Sketch ( Taslak Çizim) Ortamı

BÖLÜM ÜÇ BOYUTLU NESNELERİ KAPLAMA VE GÖLGELENDİRME

BİL 810 İnşaat Mühendisliğinde Bilgisayar Uygulamaları

Ekran Arayüzü ve Obje Seçimi (V )

SOLİDWORKS SOLİDWORKS E GİRİŞ 01 İSMAİL KELEN

ITEC186 Bilgi Teknolojilerine Giriş AUTODESK AUTOCAD 2014-III

döşeme hesap aksı kütleleri deprem hesaplarında kullanılmaz. Dikdörtgen döşeme

ARAZİ ÖLÇMELERİ. Temel Ödev I: Koordinatları belirli iki nokta arasında ki yatay mesafenin

1. HAFTA. Statik, uzayda kuvvetler etkisi altındaki cisimlerin denge koşullarını inceler.

BÖLÜM 1 GİRİŞ 1.1 GİRİŞ

DY-45 OSĐLOSKOP KĐTĐ. Kullanma Kılavuzu

Mühendislikte Sayısal Çözüm Yöntemleri NÜMERİK ANALİZ. Prof. Dr. İbrahim UZUN

BÖLÜM 5 5. TABLO OLUŞTURMAK

Çizim komutlarının bulunduğu Create menüsü

Grafik Hazırlama Aracı

DY-45 OSİLOSKOP V2.0 KİTİ

SAYISAL KONTROL 2 PROJESİ

Kayıt İzleme (Playback)

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi

SKETCHUP MAKE II

ÖNDER BİLGİSAYAR KURSU. Microsoft Office Kursu Eğitim İçeriği

FAN SELECTOR FAN SELECTOR FAN SEÇİM YAZILIMI.

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

İki Boyutlu Eliptik Tipi Diferansiyel Sınır Değer Problemleri İçin MathCAD Kullanılımı

Bulanık Mantık Hız Kontrolü Destekli Distance Transform Yol Planlama

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Giriş.

Akdeniz Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölüm Tanıtımı

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR

Tek Değişkenli Optimizasyon OPTİMİZASYON. Gradient Tabanlı Yöntemler. Bisection (İkiye Bölme) Yöntemi

MÜHENDİSLİ ÇİZİMLERİ LABORATUVAR UYGULAMASI

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

SOLID EDGE PROGRAMINDA SKETCH MENÜSÜ Çizim Alanı Temel Çizimleri Çizgileri İlişkilendirme Çizgi Referansı Yakalama Ölçülendirme 3 Ersin Toptaş Mekatro

BİTİRME ÖDEVİ KONU BİLDİRİM FORMU

GÜZ DÖNEMİ ARASINAV SORULARI. 1. Sayısal çözümleme ve fonksiyonu tanımlayarak kullanıldığı alanları kısaca açıklayınız?

Matlab da 2-boyutlu Grafik Çizimi. Arş. Gör. Mehmet Ali ÜSTÜNER

Transkript:

Potansiyel Alan Metodu İle Engelli Bir Alanda Hedefine Ulaşabilecek Bir Mobil Robot İçin Yazılan Simülasyon Programı Erdem Yıldız 1, E. Şahin Çonkur 2 1 Elmalı Meslek Yüksekokulu Akdeniz Üniversitesi, Antalya erdemyildiz@akdeniz.edu.tr 2 Makina Mühendisliği Bölümü Pamukkale Üniversitesi, Denizli sconkur@pau.edu.tr Özetçe Mobil robotik konusu günümüzde popüler olan bilimsel çalışma konularındandır. Mobil robotik, farklı disiplinleri içeren çok sayıda alt konuya sahiptir. Bu konular engelden kaçınma, yol planlama, görüntü işleme, mobil robot tasarımı ve motor kontrolü vb. şeklindedir. Bu çalışmada mobil robotların yol planlaması konusu üzerine çalışılmıştır. Yazılan programda mobil robot başlangıç ve hedef konumu belli bir ortamda yine konumları belli hareketli veya hareketsiz engeller arasından hedefe ulaşabilmektedir. Mobil robotun yol planlamasında potansiyel alan metodu kullanılmıştır. Engellerin çizimi dikdörtgen, elips, çizgi veya üçgen şeklinde olabilmektedir. Engellerin çizimi ve daha sonra şekillerinin değiştirilmesi 2 boyutlu çizim programlarındaki gibi kolayca yapılabilmektedir. Yazılım Visual C#.NET programı ile sınıflar kullanılarak modüler olarak yazılmıştır dolayısıyla hem fonksiyonelliği artmıştır hem de geliştirilmesi kolaylaşmıştır. 1. Giriş Mobil robotların otonom bir şekilde çalışabilmeleri için yol planlama algoritmalarının geliştirilmesi gerekmektedir. Yol planlama algoritmaları, mobil robotların hedeflerini engeller arasından engellere çarpmadan otomatik olarak bulmasını hedeflemektedir. Ayrıca yol planlama algoritmaları mobil robot araştırmalarında önemli bir yere sahiptir. Yol planlama algoritmalarını 3 ana gruba ayırabiliriz: 1) Yol haritalaması: Alanın engelsiz kısımlarında bir takım yollar oluşturur. a) Görünürlük Grafiği b) Voronoi Diyagramı 2) Hücre ayrıştırması: Alanı parçalara böler. 3) Potansiyel alan: Alan üzerine matematiksel bir fonksiyon uygulanır. Görünürlük grafiğinde başlangıç noktası, hedef noktası ve engellerin köşe noktaları arasında düz yollar çizilmektedir. Çizilen yolların üstünde engel bulunmamalıdır (Şekil 1). Başlangıç noktasından hedef noktasına ulaştıran yollar arasında en kısa olanı en uygun yoldur. Voronoi diyagramında engellerden eşit uzaklıkta olacak şekilde yollar çizilmektedir ve bu yolların en kısa olanı en uygun yoldur (Şekil 2). Hücre ayrıştırmasında Şekil 3 teki gibi alan hücrelere ayrıştırılır ve mobil robot komşu hücreler üzerinden giderek hedefe ulaşmaktadır. Burada mobil robotun hücrenin neresinden geçeceği önemli değildir. Şekil 1: Görünürlük grafiği (Siegwart ve Nourbaksh, 2004) Şekil 2: Voronoi diyagramı (Siegwart ve Nourbaksh, 2004) İlk olarak Khatib (1986) tarafından ortaya konulan potansiyel alan metodunda hedef mobil robot üzerinde çekme etkisi yaratırken engeller itme etkisi yaratmaktadır. Bu iki etkinin sonucu olarak robot engellerden kaçınırken hedefe yönlenmektedir (Şekil 4). Yaptığımız çalışmada bir mobil robot için konumları önceden bilinen hareketli veya hareketsiz engellerin olduğu bir ortamda hedefine ulaşabileceği bir program geliştirilmiştir. Geliştirilmiş olan program potansiyel alan metodunu temel almaktadır fakat modüler yapıda olduğundan başka metotlar da kolayca entegre edilebilmektedir. Örneğin Işın Analizi

Yöntemi ve Yol Yumuşatma Algoritmaları programa entegre edilip denenmiştir. Özellikle engelli bir alanın oluşturulması detaylı bir şekilde yapılabildiğinden dolayı başka yol bulma algoritmaları için de uygun bir platform sağlanmıştır. Şekil 3: Hücre ayrıştırması (Siegwart ve Nourbaksh, 2004) Şekil 4: Potansiyel alanda mobil robotun hedefini bulması (Siegwart ve Nourbaksh, 2004) 2. Potansiyel Alan Metodu Kullanılmış Çalışmalar Mobil robotlarla ilgili literatür çalışmaları incelenirken konunun popülerliği bir kez daha görülmüştür. Kitaplar, yurtiçi ve yurtdışındaki yüksek lisans ve doktora tezleri, makaleler ve sunumlar olmak üzere potansiyel alan anahtar kelimeli belgeler toplanmıştır. Bu belgelerin bir kısmından bahsedilecektir. 2.1. Hareketsiz engellerin olduğu ortamlardaki çalışmalar Çonkur (1997) tarafından gereğinden çok serbestlik dereceli robot kolları için yörünge planlaması üzerine çalışılmıştır. Yörünge planlamasında potansiyel alan metodundan yararlanılmıştır. Bu çalışmada esas olarak robot kolları üzerine çalışılmıştır. Ancak link sayısı bire düşürüldüğünde aynı zamanda mobil robot kontrolü de yapılabilmiştir. Velagic vd (2006) tarafından 3 seviyeli mobil robot navigasyon sistemi üzerine çalışılmıştır. Alt seviyede mobil robotun lineer ve açısal hızlarıyla ilgilenilmiştir. Orta seviyede mobil robotun pozisyon kontrolüyle ilgilenilmiştir. Üst seviyede ise sensör verilerinin yorumlanması, harita oluşturma ve yol planlaması ile ilgilenilmiştir. Bulanık mantık ve Dempster-Shafer delil teorisi ve işgal gridleri yöntemleri harita oluşturmada kullanılmıştır. Ayrıca yol planlamasında modifiye edilmiş bir potansiyel alan metodu kullanılmıştır. Yusufoğlu (2002) tarafından nesne sıralama oyununda mobil robot davranışlarının birleştirilmesi üzerine çalışılmıştır. Mobil robotun cisme yaklaşması ve cismi alıp taşıması için gerekli olan ayrı ayrı potansiyel fonksiyonları bu çalışmada tek bir yapay potansiyel fonksiyonu ile gerçekleştirilmiştir. Simülasyonlar Sun Sparc Station 5 programında yapılmıştır ve potansiyel alan grafiklerinin çiziminde MATLAB programından yararlanılmıştır. 2.2. Hareketli engellerin olduğu ortamlardaki çalışmalar Shi vd (2006) tarafından mobil robotlara yol planlamasında uygulanabilecek kaotik potansiyel alan metodu olarak adlandırılan yeni bir optimizasyon metodu geliştirilmiştir. Geleneksel olarak bilinen potansiyel alan metodundan farklı olarak hareketli engellerden yerel olarak kaçınmada daha uygun yol bulduğu söylenmiştir. Ayrıca bu yöntemin robot futbolu simülasyon programında da denendiği belirtilmiştir. Yannier (2002) tarafından bir veya birden çok mobil robotun engellerden sakınarak hedefe ulaşması üzerine çalışılmıştır. Bu çalışmada potansiyel alan metodundan yararlanılmıştır. Engellerin oluşturduğu itici kuvvet ile hedefin oluşturduğu çekici kuvvetin ayrı ayrı işlendiği belirtilmiştir. Zheng ve Zhao (2006) tarafından yeni bir yapay potansiyel alan metodu tabanlı bir metot geliştirildiği belirtilmiştir. Birden fazla mobil robot karşılaşınca öncelik sırasına göre geçiş yapılmıştır. Önceliği fazla olandan az olana göre bir geçiş sırası takip edilmiştir. Eğer aynı öncelik durumu oluşursa rastgele bir öncelik sırası oluşturularak geçiş yapılmıştır. Öncelik durumunda görev önceliği, hız ve boyut rol oynamıştır. 3. Mobil Robot Yazılımı Mobil robot yazılımında potansiyel alan metodu ile engellerden kaçınma ve hedefi bulma sağlanmıştır. Yıldız ın (2009) çalışmasında Sonlu Fark Yöntemlerinin geometrik yorumu, kısmi türev tanımından ileri fark, geri fark ve merkezi fark yöntemlerinin çıkarılışları, Taylor Serisi Yaklaşımıyla Sonlu Fark Yöntemlerinin çıkarılışı ve elde edilen Sonlu Fark Yöntemlerinden Potansiyel Alan Denkleminin (1) çıkarılışı detaylı bir şekilde anlatılmıştır. ui ui j 1 j 1 u i, j (1) 4 3.1. Potansiyel alanın çalışma mantığı ve hesaplanması Potansiyel alan denklemi tüm çalışma alanına uygulanmaktadır. Bu uygulama sonucunda hedef çukurda kalmaktadır, engeller tepe etkisi yaratmaktadır ve alanda hedefe doğru bir eğim oluşmaktadır (Şekil 5).

(-8,66E+36) büyüktür. Bu da alanda bir eğimin olduğunu göstermektedir. Tablo 1: 6x6 lık bir alandaki grid noktalarının sayısal değerleri 0 0 0 0 0 0 0-1,9E+36-4,5E+36-7,36E+36-3,7E+36 0 0-3,3E+36-8,7E+36-2,13E+37-7,4E+36 0 0-2,5E+36-5,6E+36-8,66E+36-4,5E+36 0 0-1,3E+36-2,5E+36-3,29E+36-1,9E+36 0 0 0 0 0 0 0 Şekil 5: Potansiyel alanın üç boyutlu görüntüsü (Siegwart ve Nourbaksh, 2004) Çalışma alanını çevreleyen grid noktalarına ve engelleri temsil eden grid noktalarına sıfır değeri, hedef noktasına ise - 2 124 değeri verilmektedir. En dıştaki grid noktaları, engellere ait grid noktaları ve hedefe ait grid noktası dışındaki grid noktaları potansiyel alan denklemi ile hesaplanmaktadır. Bir iterasyon yapıldığında bu bahsedilen grid noktaları bir defa hesaplanmaktadır. İterasyon sayısı kadar grid noktaları hesaplanmaktadır. 3.2. Programların Ara yüzleri ve Menüleri Simülasyon için 2 adet program yazılmıştır. İlk programa Program1, ikinci programa Program2 diyerekten açıklamamıza devam edelim. Program2, Program1 in gelişmiş bir versiyonudur. Program2 kod kısmında da daha düzenli ve profesyonelce yazılmıştır. Program2 de engellerin çizim kısmına yeni şekiller eklenmiştir. 3.2.2 kısmında Program2 nin Program1 e göre farklılıklarından bahsedilecektir. Program1 in arayüzü Şekil 7 de, Program2 nin arayüzü de Şekil 8 de verilmiştir. m 1 1 m m m m ui, j ( ui ui j 1 j 1) (2) 4 Denklem (2) deki m iterasyon sayısını göstermektedir. Hesaplama yönü alanda yukarıdan aşağıya, soldan sağa veya sağdan sola şeklinde de seçilebilir. Eğer alanın indis değerleri (0,0) dan başlıyorsa (i,j) indisi (1,1) den başlamaktadır. Benzer şekilde alanın en büyük indis değerleri (n,n) ise (n-1,n- 1) indisli grid noktasına kadar hesaplama yapılmaktadır. Şekil 7: İlk programın ara yüzü (Program 1) Şekil 6: Çalışma alanının hesabı Şekil 6 da aşağıdan yukarıya doğru hesaplama gösterilmiştir. Hesaplama yönü yukarıdan aşağıya, soldan sağa veya sağdan sola şeklinde de seçilebilir. Örnek olarak 6x6 lık bir çalışma alanında (3,2) indisli nokta hedef olarak seçilmiştir. Alanın sayısal değerleri Tablo 1 deki gibi ortaya çıkmaktadır. Tablo 1 de sol üst köşe (0,0) indisli nokta olarak kabul edilmiştir. x indislerinin sola doğru ve y indislerinin aşağıya doğru arttığı varsayılmıştır. Hedefin - 2,13E+37 şeklinde çıkmıştır. Bu değer yaklaşık olarak -2 124 değerine eşittir. Tablo 1 den de görüldüğü gibi (1,4) indisli noktanın değeri (-1,3E+36), (3,3) indisli noktanın değerinden Şekil 8: İkinci programın ara yüzü (Program 2) 3.2.1. Program1 Program1 in ana menüleri şu şekildedir; File, Change Positions, Obstacles, GO ve Options Dialog tur. File

menüsünün altında Open ve Save alt menüleri bulunmaktadır. Save menüsü mobil robotun başlangıç konumunu, hedefin konumunu ve engellerin konumlarını mobilrob uzantılı dosyalara kaydetmeye yaramaktadır. Open menüsü ile de kaydedilmiş dosyalar açılabilmektedir. Change Positions menüsünün altında Start position, Goal position ve Default alt menüleri bulunmaktadır. Start Position menüsü ile mobil robotun başlangıç konumu değiştirilebilir. Goal Position menüsü ile hedefin konumu değiştirilebilir. Default menüsü ile mobil robotun geçtiği yol silinmektedir ve hareketli engeller ilk konumlarına geri dönmektedir. Obstacles menüsünün altında Draw Rectangle, Clear Obstacles, Clear Last Obstacle, Moving Obstacles, Rectangles Starting Positions, Obstacles Directions, Draw Ellipse ve Ellipses Starting Positions alt menüleri bulunmaktadır. Draw Rectangle menüsü ile dikdörtgen engeller çizilebilmektedir. Clear Obstacles menüsü ile hem tüm engeller hem de mobil robotun geçtiği yol silinebilmektedir. Clear Last Obstacle menüsü ile son çizilen engel silinmektedir. Moving Obstacles menüsü ile engellerin hareketli olup olmayacağı belirlenmektedir. Rectangles Starting Positions menüsü ile dikdörtgen şeklindeki engellerin başlangıç konumlarının gözüküp gözükmeyeceği belirlenmektedir. Obstacles Directions menüsü ile Obstacle Directions grubunun gözüküp gözükmeyeceği ayarlanmaktadır. Draw Ellipse menüsü ile elips şeklinde engeller çizilebilmektedir. Ellipses Starting Positions menüsü ile elips şeklindeki engellerin başlangıç konumlarının gözüküp gözükmeyeceği belirlenmektedir. Go menüsü ile mobil robotun hareketi başlamaktadır. Aynı zamanda eğer hareketli engeller varsa onlar da hareket etmektedirler. Options Dialog menüsüne tıklayınca optiondialog isimli form açılmaktadır. Bu form ile alanı sınırlayan çizgilerin, hedef noktasının, mobil robotun ortasındaki dairenin, mobil robotun yolunun, engellerin başlangıçtaki konumlarını gösteren çizgilerin, engellerin ve mobil robotun başlangıç noktasının rengi ayarlanabilmektedir. Ayrıca Field Color ın altındaki kısım ile alanın rengi mavi, yeşil, pembe veya turuncu yapılabilmektedir. Custom Color ın altındaki kaydırma çubukları ile alanın rengi ara renklerden yapılabilmektedir. Alanı rengi yeşil olarak seçildiğinde Şekil 9 daki gibi bir görüntü de olmaktadır. Şekil 9 a bakıldığında alanın görüntüsünde sanki izohips çizgileri gibi çizgilerin çıktığı fark edilecektir. İzohipsler eş yükseltiler için kullanılmaktadır. Burada da benzer şekilde aynı çizgi üzerindeki noktaların eşit değerlere sahip olduğunu söyleyebiliriz. Çukur yani hedef en açık renkte çıkmaktadır ve tepeler yani engeller en koyu renkte çıkmaktadır. Diğer alan kısımları ise ara tonlarda çıkmaktadır. Options Dialog menüsünün hemen yanında Geri, İleri ve Select and Pan düğmeleri bulunmaktadır. Geri ve İleri butonları engellerin çizimiyle alakalıdır. Örneğin üç adet engel çizilirse 3 kere geri alabilme imkanı vardır. Geri alındığı kadar ileri de alınabilmektedir. Örneğin 3 defa geri alındığı durumda 3 defa da ileri alınabilmektedir. Engel çizildiği sürece ileri butonu aktif olmamaktadır. Geri butonu da geri alınabilecek bir durum olmadığında aktif olmamaktadır. Tüm engeller silindiğinde hem geri butonu hem de ileri butonu aktif olmamaktadır. Hem geri hem de ileri butonları aktif iken yeni engel çizilirse ileri butonu inaktif olmaktadır yani ileriye almak için kayıtlı engeller hafızadan atılmaktadır. Select and Pan butonu aktif iken engeller üzerlerine fare ile gelinerek taşıma yapılabilmektedir. 3.2.2. Program2 Program2 de Program1 dekilere ek olarak Üçgen, Daire, Çizgi şeklinde engeller de çizilebilmektedir. Ayrıca engellerin çizildikten sonra şekillerinin değiştirilebilmesi, engellerin 1 lik açılarla istenilen yönde hareketinin kontrolü, alanın sayısal değerlerinin excel e alınması, engeller için Autocad, SolidWorks gibi çizim programlarından bildiğimiz snap özelliği ayarlanmıştır. Alana daha ayrıntılı bakabilmemize yardımcı olan Zoom ve Pan özellikleri eklenmiştir. Hangi gridlerin engel davranışı hangi gridlerin serbest alan davranışı sergilediğini Program2 ile görebilmekteyiz (Şekil 10). Şekil 10: Gridlerin durumu Şekil 9: Alanın yeşil renkteki görüntüsü Mobil robot için belirlenen başlangıç noktası ve hedef noktası gridlere bağımlı veya gridlerden bağımsız olarak seçilebilmektedir. Benzer şekilde engeller de istenilen

seçeneğe göre gridlere bağımlı veya gridlerden bağımsız olarak çizilebilmektedir. Engellerin hareket yönü ve hızları ayrı ayrı ayarlanabilmektedir. Mobil robotun başlangıç konumu ile harekete geçtikten sonraki anlık konumu arasındaki yolu veya mobil robotun harekete geçtikten sonraki anlık konumu ile hedef konumu arasındaki yol çizdirilebilmektedir. Şekil 11 de hareketli bir engelin olduğu durum sırasında başlangıç anı gösterilmektedir. Engelin hızı 30 pixel/sn ve mobil robotun hızı 60 pixel/sn olarak seçilmiştir. Şekil 12(a) dan da görüldüğü gibi ilk önce mobil robot engelin sağından geçmeyi planlamaktadır. Daha sonra engelin hareketinden dolayı Şekil 12(b) de görüldüğü gibi engelin solundan geçmektedir. aralıkla ilerleme yapılır. İlerlenerek bulunan her noktada en yakın gride bakılır. Eğer bu grid engelin içindeyse ışının ilerlemesi durdurulur. Şekilden bağımsız bir işlem olduğundan bu yöntem tüm engel şekillerine kolayca uygulanabilmiştir. Hedef Engelin hareket yönü Şekil 13: Işın Analizi Yöntemi Başlangıç konumu Şekil 11: Hareketli engelin olduğu durum (başlangıç konumu) Işın üzerinde ilerleme adımı kısa tutulursa hesaplama süresi uzayacaktır. Eğer ilerleme adımı uzun tutulursa bu sefer de engelin içinde durabilir veya çizgi şeklinde engel ise engeli atlayıp ışın devam edebilir. Bu yüzden grid aralığı ile uygun bir ilerleme adımı seçilmelidir. Işın Analizi Yöntemi uygulandıktan sonra engele çarpan ışınlardan en kısa olanı buldurulmuştur. En kısa ışınların buldurulup gösterilebilmesi için her engel için yolun tüm noktalarından çıkan ışınlar bir kez kontrol edilmektedir. Kontrol edilen engele çarpan ışınlar bu sırada tespit edilmektedir ve bu ışınlar arasındaki en kısa olanı çizdirilmektedir. (a) t=1 (b) t=3 Şekil 12: Hareketli bir engelin olduğu durumda mobil robotun hareketi Işın Analizi Yöntemi ve Yol Yumuşatma Algoritmaları da Program2 ye eklenmiştir. Bu iki yöntemi daha ayrıntılı inceleyelim. 3.3. Işın Analizi Yönteminin Uygulanması Program2 de Çonkur vd ye (2005) ait Işın Analizi Yöntemi (Beam Analysis Algorithm) de kullanılmıştır. Işın Analizi Yönteminde yola ait noktalardan yolun o noktadaki açısına dik ışınlar atılmaktadır. Işının boyu istenildiği gibi ayarlanabilmektedir. Bu yollanan ışınlar engelle karşılaştığında veya alan çerçevesi ile karşılaştığında daha ileriye gidememektedir. Tüm engel çeşitlerine bu yöntemin uygulanabildiğini belirtmek gerekir (Şekil 13). Işın Analizi Yönteminde ışının atılacağı yön bulunduktan sonra ışın yönünde belirlenen bir 3.4. Hareketli Ortalama Filtresinin Uygulanması Yolu yumuşatmada Hareketli Ortalama Filtresi (Moving Average Filter) olarak bilinen bir yöntem kullanılmıştır (WEB_1 2002). Bu yöntemde belirlenen bir nokta sayısı kadar, bir noktanın arkasındaki ve önündeki noktalara ait değerlerin ortalaması alınıp, noktanın yeni değeri belirlenmektedir. Örneğin iki taraftan da ortalamaya girecek nokta sayısı 2 olduğu ve 20. noktanın yeni değerinin bulunması durumunu inceleyelim. Burada 18. noktadan 22. noktaya kadar olan noktaların ortalaması alınıp 20. noktanın yeni değeri belirlenmektedir. Bir taraftan ortalamaya girecek nokta sayısı, hesaplanacak noktanın sırasından büyük ise hesaplanacak noktaya kadarki eleman kadar noktanın ilerisinden eleman hesaba katılmaktadır. Örneğin belirlenen nokta sayısı 10 olsun ve hesaplanan noktanın sırası 4 olsun. Bu durumda 4. sıradaki noktanın gerisinde sadece 3 nokta olduğundan dolayı ortalamaya bir tarafından 10 nokta alınamamaktadır. Bu noktanın gerisinden 3 nokta ve ilerisinden 3 nokta alınarak ortalama hesaplanmaktadır. Şekil 14 te yumuşatma uygulanmış bir örnek gösterilmiştir. Yumuşatılmış yol orijinal yola göre daha düzgündür. Şekil 14 teki durumda 36 noktalı yumuşatma yapılmıştır yani noktanın bir tarafından 18 nokta alınarak yumuşatma yapılmıştır. Yumuşatmayı eğer fazla yaparsak yol

engelin üzerine gelebilmektedir (Şekil 15). Bu da istenmeyen bir durumdur. denemeler de ise 50 denemenin 45 inde başarılı olunmuştur. Bu sayısal değerler yaptığınız denemedeki engel sayısına, engellerin hızına, mobil robotun hızına ve hedefin konumuna göre değişmektedir. Engel sayısı azaltılıp, engellerin hızı yavaşlatılarak 50 denemenin 50 sinde de hedefe ulaşma sağlanabilmektedir. Bu çalışmanın bir sonraki aşaması olarak gerçek bir mobil robota yazılımın uygulanması ve hareketli engellerdeki mobil robotun davranışının geliştirilmesi planlanmaktadır. Teşekkür Bu çalışma Pamukkale Üniversitesi Bilimsel Araştırma Projeleri Koordinasyonu Birimi tarafından desteklenmiştir (PAUBAP Proje No: 2007FBE011). Şekil 14: Yumuşatılmış yol ve orijinal yol 10 kez yumuşatılmış yol Orijinal yol Şekil 15: 10 kez yumuşatılmış yol ve orijinal yol 4. Sonuçlar Bu çalışmada potansiyel alan metodu ile hareketli ve hareketsiz engellerin olduğu bir alanda mobil robot yol planlaması yapılmıştır. Mobil robotun, engellerin ve hedefin konumları alan hesaplamasına başlamadan önce bilinmesi gerekmektedir. Işın Analizi Yöntemi ve Hareketli Ortalama Filtresi de yazılan program sayesinde uygulanabilmektedir. Engellerin çizimi 2 boyutlu bir çizim programındaki gibi kullanışlı yapılmaya çalışılmıştır. Yazılım sınıflara ayrılarak yazıldığından programın geliştirilebilirliği arttırılmıştır. Simülasyon denemelerinde tamamen hareketsiz engellerin olduğu durumlarda mobil robot sorunsuz bir şekilde hedefe ulaşılabilmektedir. Hareketli engellerin olduğu bazı durumlarda ise mobil robotun optimal olmayan yollar ürettiği görülmüştür. Bazen de engelin yerinin sürekli değişmesinden dolayı mobil robot da sürekli gideceği yolu değiştirmektedir. Bu da mobil robotun hedefine ulaşamamasına sebep olmaktadır. Bu durum potansiyel alan metodunun olumsuz bir yönüdür. Çoğunlukla hareketli engelli ortamda hedefe ulaşılabilmesine rağmen yukarıda belirtildiği gibi bazı durumlarda hedefe ulaşılamamaktadır. Sayısal değer verilecek olursa hareketsiz engellerin olduğu durumlarda 50 denemenin 50 sinde de mobil robot hedefine ulaşmıştır. Hareketli engelli Kaynakça [1] R. Siegwart ve I. R. Nourbaksh, Introduction to Autonomous Mobile Robots, The MIT Press, 2004. [2] O. Katib, Real-time obstacle avoidance for manipulators and mobile robots, The International Journal of Robotics Research, Cilt:5, No:10, s:90-98, 1986. [3] E. Ş. Çonkur, Real Time Path Planning And Obstacle Avoidance Algorithms For Redundant Manipulators, Doctor of Philosophy Thesis, University of Bristol- Faculty of Engineering, 1997. [4] J. Velagic B. Lacevic ve B. Perunicic, A 3-level Autonomous Mobile Robot Navigation System Designed by Using Reasoning/Search Approaches, Robotics and Autonomous Systems, No:54, s:989-1004, 2006. [5] M. Yusufoğlu, Combination of Behaviours in Autonomous Robot Assembly Game in 2D, Master of Science Thesis, The Institute for Graduate Studies in Sciences and Engineering of The Boğaziçi University, İstanbul, 2002. [6] H. Shi, C. Sun, X. Sun, ve T. Feng, Chaotic Potential Field Method and Application in Robot Soccer Game, The 6th World Congress on Intelligent Control and Automation, s:9297-9301, 2006. [7] S. Yannier, Realization of Reactive Control for Multi Purpose Mobile Agents, Master of Science Thesis, The Graduate School of Engineering and Natural Sciences of The Sabanci University, İstanbul, 2002. [8] T. Zheng ve X. Zhao, A Novel Approach for Multiple Mobile Robot Path Planning in Dynamic Unknown Environment, 2006 IEEE Conference on Robotics, Automation and Mechatronics, s:1-5, 2006. [9] E. Yıldız, Engelli Bir Alan İçinde Otomatik Olarak Hedefini Bulabilen Bir Mobil Robotun Tasarımı, İmalatı ve Hareket Algoritmalarının Geliştirilmesi, Yüksek Lisans Tezi, Pamukkale Üniversitesi, Denizli, 2009. [10] E. Ş. Çonkur, R. Buckingham ve A. Harrison, The beam analysis algorithm for path planning for redundant manipulators, Mechatronics, No:15, s:67-94, 2005. [11] WEB_1. Laurea Specialistica in Ingegneria Meccatronica. http://www.ladispe.polito.it/meccatronica/01cfi/2004-05/slides/labrobactivity.ppt 2005.