4.1. Robot Kolu Simülasyonu
4.1.2. Gerçeklenen programın tanıtımı
Bu tez çalışmasında, altı eklemli bir robot kolu ve değişik şartlar altında kontrolü ile ilgili bir simülasyon programı tek bir paket program halinde Borland Delphi 7.0 programlama dili kullanılarak gerçekleştirilmiş ve kullanılmıştır. Paket program 6 ana kısımdan oluşmaktadır. Bu kısımlar; kontrol algoritmaları, robot kolu simülatörü, yörünge planlaması, dosyalama, grafiksel gösterim ve grafik ara yüzdür.
Kontrol algoritmaları GPC SISO, GPC MIMO, SGA-GPC SISO, SGA-GPC MIMO, NGPC SISO, NGPC MIMO, ENGPC SISO ve ENGPC MIMO olmak üzere toplam 8 tanedir. Bu kontrol algoritmalarının görevi, simülasyon boyunca robot kolu eklemlerini istenen yörüngeler doğrultusunda en az hata ile hareket ettirmektir. Eklem yörüngelerinin çıkartılması işini yörünge planlaması kısmı yapar. Dosyalama kısmı simülasyon sonuçlarının dosyalara kaydedilmesini, grafiksel gösterim kısmı ise bu sonuçların grafiksel olarak gösterilmesini sağlar. Bu sayede simülasyon sonuçlarının yorumlanması daha kolay yapılabilir. Simülasyon sonunda kullanıcı hangi grafiği görmek istiyorsa kolayca seçebilmekte, aynı zamanda istediği dosya ismiyle grafik formatında kaydedebilmektedir. Grafik ara yüz, yazılımın kullanımını kolaylaştırmak ve sonuçları sadece dosyalar halinde değil aynı zamanda grafiksel olarak görebilmek için tercih edilmiştir.
Geliştirilen paket program oldukça kullanışlı ve kullanımı gayet kolaydır. Her bir eklem için başlangıç ve bitiş pozisyonu rahatlıkla girilebilmektedir. İstenilen kontrol algoritması ve yörünge planlaması kolayca seçilebilmektedir. Minimum ve maksimum tork aralığı, toplam simülasyon zamanı, toplam kontrol adım sayısı ve her
bir kontrol adımı başına düşen Runge-Kutta adım sayısı kullanıcı tarafından kolayca belirlenebilmektedir. Sürtünme etkisi, bozucu ilavesi, yük taşıma ve taşınan yükün düşmesi gibi durumlar seçilip simülasyona dahil edilebilmektedir. Bozucu aralığı, yük miktarı ve yük düşme zamanı kullanıcı tarafından istenildiği gibi belirlenebilmektedir. Bütün bu değişiklikler başlangıç ayarları dosyasına kaydedilmekte (Şekil 4.9) ve program her yeniden çalıştırıldığında en son ayarlar korunmaktadır. Bu durum kullanıcıya kolaylık sağlamaktadır.
Şekil 4.9. Paket programın başlangıç ayarları dosyasının görünümü
Paket programın grafik ara yüzünden bazı görünümleri Şekil 4.10’dan Şekil 4.14’e kadar, elde edilen sonuçların dosyasal görünümleri Şekil 4.15’de, paket programın ve algoritmaların akış diyagramları Şekil 4.16’dan Şekil 4.20’ye kadar aşağıda verilmiştir.
Şekil 4.10. Paket programın grafik ara yüzünden bir kesit (1)
Şekil 4.12. Paket programın grafik ara yüzünden bir kesit (3)
Şekil 4.14. Paket programın grafik ara yüzünden bir kesit (5)
Başlat
En son ayarları dosyadan oku.
Ayarlar üzerinde değişiklik
yapılsın mı?
Simülasyonu başlat
Eklem başlangıç ve bitiş açılarını kullanarak seçilen yörünge planlamasına göre referans konum ve hız yörüngelerini oluştur. Seçilen öngörülü kontrol algoritması ile robot kolunun eklem esaslı yörünge kontrolü
Elde edilen sonuçları dosyalara kaydet
Sonuçları tablosal ve grafiksel olarak göster. İstenilen grafikleri kaydet
Yeni ayarları dosyaya kaydet Hayır Evet Yeni ayarlar tamam mı? 1. Robot kolu eklemlerinin
başlangıç ve bitiş açılarını belirle.
2. Kullanılacak yörünge planlamasını seç. 3. Kullanılacak öngörülü
kontrol algoritmasını seç. 4. Varsa sürtünmeyi, yük
miktarını, yük düşme zamanını ve bozucu miktarını belirle.
5. Tork sınırını, toplam kontrol süresini, toplam adım
sayısını ve adım başına düşen Runge-Kutta döngü sayısını belirle.
6. Sonuçların kaydedileceği dosya isimlerini belirle. Evet Hayır Evet Hayır Evet Hayır Programdan çık Hayır Bitir
Şekil 4.16. Ana programın akış diyagramı
Ana program son ayarların dosyadan okutulmasıyla başlar ve değişiklikler kullanıcıdan istenir. Kullanıcı ilgili değişiklikleri ve kontrol parametrelerini
belirledikten sonra seçilen kontrol altprogramına dallanılır. Altprogramın ürettiği kontrol verileri her kontrol adımında dinamik modele kontrol süresi boyunca uygulanır. Elde dilen tüm veriler tablosal ve grafiksel olarak gösterilir ve program sonlandırılır.
Şekil 4.17. GPC algoritmasının akış diyagramı
Şekil 4.18. SGA-GPC algoritmasının akış diyagramı
GPC ve SGA-GPC alt programları benzer yapıya sahiptirler. Aralarındaki tek fark kontrol giriş sinyalinin hesaplanma aşamasıdır. GPC kontrol sinyalini üretmek için maliyet fonksiyonunun girişe göre türevini alarak hesaplama yaparken, SGA-GPC bu işlem için genetik işlemleri kullanır. Her iki altprogram parametre kestirimi için en küçük kareler yöntemini kullanmaktadır.
Kontrol sabitlerini belirle.
Adım sayısı tamam mı?
Evet
Hayır
Kontrol parametrelerine başlangıç değerlerini ata.
YSA öngörülü sistem modelini kullanarak öngörüleri oluştur.
Adım sayısı = 0
Öngörülerin referans yörüngelerden sapma miktarlarını hesapla.
Öngörü sapmalarının bir fonksiyonu olan maliyet fonksiyonunu oluştur.
Maliyet fonksiyonunu Newton-Raphson güncelleme algoritması ile minimize ederek robot kolu eklemleri için uygun torkları hesapla
Hesaplanan torkları robot kolu eklemlerine uygula
Eklemlere uygulanan torkları, eklemlerden elde edilen konum ve hızları al.
Adım sayısını 1 artır.
Hesaplanan torkları, elde edilen eklem konum ve hızlarını dosyalara kaydet
YSA öngörülü sistem modeli için başlangıç ağırlık değerlerini ata.
YSA öngörülü sistem modelini eğit.
Bitir Başlat
Kontrol sabitlerini belirle.
Adım sayısı tamam mı?
Evet
Hayır
Kontrol parametrelerine başlangıç değerlerini ata.
YSA öngörülü sistem modelini kullanarak öngörüleri oluştur.
Adım sayısı = 0
Öngörülerin referans yörüngelerden sapma miktarlarını hesapla.
Öngörü sapmalarının bir fonksiyonu olan maliyet fonksiyonunu oluştur.
Maliyet fonksiyonunu Newton-Raphson güncelleme algoritması ile minimize ederek robot kolu eklemleri için uygun torkları hesapla
Hesaplanan torkları robot kolu eklemlerine uygula
Eklemlere uygulanan torkları, eklemlerden elde edilen konum ve hızları al.
Adım sayısını 1 artır.
Hesaplanan torkları, elde edilen eklem konum ve hızlarını dosyalara kaydet
YSA öngörülü sistem modeli için başlangıç ağırlık değerlerini ata.
YSA öngörülü sistem modelini eğit.
Bitir Başlat
NGPC ve ENGPC algoritmaları yapısal olarak aynı olup kullanılan YSA modeli yönünden farklıdırlar. Kontrol parametreleri atandıktan sonra YSA eğitilmeye başlar. Bu eğitim kontrol boyunca devam eder ve her kontrol adımında ağırlıklar geri yayılım ile güncellenir. Eğitilen ağ üzerinden öngörüler yapılarak maliyet fonksiyonuna yerleştirilir. Maliyet fonksiyonu minimizasyonu Newton-Raphson metodu ile gerçeklenir. Bu işlem sonrasında elde edilen kontrol sinyali robot kolu dinamik modeline uygulanır. Dinamik modelden elde alınan açı ve hız bilgileri hem YSA eğitimi hem de sonraki öngörüler için tekrardan kontrolöre iletilir. Bu işlemler kontrol bitene kadar tekrarlanır.