Robot Programlamaya Nereden Başlamalı?

Bir robot programını harika yapan nedir? Bu yazıda neden bir robotun sınırlarını doğru bir şekilde kavramanın neden zor olduğunu ve bu becerinin robotun programlama sırasındaki kabiliyetlerini arttırmak için neden gerekli olduğunu soruyoruz. İnsanların “robotun gözüyle” dünyayı hayal etmekte harika olmadıklarını anlıyoruz ve kabiliyetlerini anlama becerilerini geliştirmek için kullanabilecekleri basit bir teknik veriyoruz.

Seni harika bir robot programcısı yapan tek şeyi biliyor musun? İleri matematikteki yetenekleriniz değil; ultra verimli algoritmaları kodlama yeteneğiniz değil; ve programlama dillerine aşina bile değilsiniz. (açıkçası bunların hepsi oldukça yardımcı olabilir) Fiziksel robotları programlarken, bir şey genellikle çok daha önemlidir.

Büyük robot programcıları, robotun dünyayı nasıl algıladığını kavrayabilir ve robotun sınırları dahilinde etkin bir şekilde programlayabilirler.

Dünyayı Nasıl Algılıyoruz?

Bu makine basit olduğu sürece, insanlar sınırlı sayıda sensöre sahip bir makineyi anlama konusunda oldukça beceriklidirler. Küçük bir çocuğun, mobil bir robotun birine bastığında buton veya anahtarların döneceğini öğrenmesi çok hızlıdır. Bununla birlikte, sensörler ve robotlar daha karmaşık hale geldiğinde, dünyayı zihinsel olarak robotun perspektifinden hayal etmek zor olabilir.

Zorluklar gelmeye başlıyor, çünkü biz insanlar kendimizi, dünyayı nasıl algıladığımızı bilmiyoruz. Beyinimiz tüm hesaplamaları otomatik olarak yapar, böylece “sensör verilerimizi” nasıl işlediğimiz veya eklemlerimizi nasıl koordine edeceğimiz konusunda endişelenmemize gerek yoktur. Hem insanlarda hem de robotlarda algı ve eylem yolu, bu (çok basitleştirilmiş) temsillerde de görebileceğiniz gibi benzerdir:

İnsanlar: Dünya -> Duyular -> Bilinçsiz Beyin (Anlam bilgisi -> Dünyanın zihinsel modeli -> Karar -> Eylem talimatları) -> Kaslar -> Dünya

Robotlar: Dünya -> Sensörler -> Bilgisayar (Sensör verileri -> Dünyanın sanal modeli -> Görev kodlama -> Düşük seviye elektronik kodu) -> İşleticiler -> Dünya

Hem insan beyni hem de bilgisayar, duyu veya sensörlerden gelen verileri dünyanın sanal bir modeline dahil ediyor. Robotlarda, bu sanal model, bir 3 boyutlu model olarak temsil edilebilecek robotun kodu olacak. İnsanlarda, algı verilerimizin sanal kopyası algı olarak adlandırılır. Bu algıların bile var olduğunun bilincinde değiliz. Bunun yerine, doğrudan dünyayı algılayıp hareket ettiğimizi hissediyoruz.

Bir robotu etkin bir şekilde programlamak, aklınızı konfor alanından çıkarmak anlamına gelir. Bu, genellikle bilinçsizce yaptığınız bazı işler hakkında bilinçli olarak düşünmeye başlamak anlamına gelir – yani dünyadaki duyularınızın ve hareketlerin sınırlarını fark etmek. Ayrıca, bazı duyularınızı kaybetmenin nasıl bir şey olduğunu ve yeni duyular kazanmanın nasıl bir şey olduğunu hayal etmek demektir.

Dünyayı Robot Olarak Görmek

Çoğu robot dünyayı çok sınırlı bir şekilde algılar. Örneğin, bir robotun parmak ucundaki entegre kuvvet sensörleri çok hassas olsa da, parmak muhtemelen parmak ucunuzdan kat kat daha az hassas olacaktır. Bunun nedeni insan parmak ucunun beyindeki etkileyici ön işlemlerden geçmesidir. Birçok robot sensörü, insan duyularından daha doğrudur (aslında oldukça kısıtlıdır), ancak eksik olan, beynimizin gerçekleştirdiği gelişmiş sensör birleşimidir.

Robot ayrıca, insan duyularının tespit edemediği sinyalleri de algılayabilir. Örneğin, LIDAR sensörleri robotların ortamın 3 Boyutlu nokta bulutlarını tespit etmesine izin verir. Bu, hayal etmekte zorlanacağımız bir duygudur, robot görselleştiricisi gibi onları renk olarak göstermemize izin veren yararlı araçlar için değildir.

Robotun bağlantıları ve işleticileri, genel olarak, insanlardan daha az esnek ve uyarlanabilir. Ancak, aynı zamanda insan kaslarından ve eklemlerinden çok daha hassastır. Yine, robotları dünyayı algılama ve hareket etme becerilerimizle eşleştiremeyen temel programlamadır.

Bir robotu programlarken, bu sınırlamaları ve geliştirmeleri dikkate almak önemlidir. Hiçbirimiz robotların insan el becerisine uyacak kadar gelişmiş olduğuna -şimdilik- inanmıyoruz. Buradaki zorluk robotun yeteneklerini ve sınırlamalarını doğru bir şekilde kavramaktır. Yeteneklerini küçümseme, yoksa teknoloji düzeyini en üst düzeye çıkaramazsın. Benzer şekilde, bunları fazla abartmayın, aksi takdirde robotun gerçekleştirmesini istediğiniz tüm görevleri yerine getirememesi sizi hayal kırıklığına uğratır.

Robotunuzla Göze Göz Nasıl Gelinir?

Son zamanlarda robot programlamasında birçok gelişme gördük. Üreticiler ve araştırmacılar, programlamayı kolaylaştırmak için sürekli yeni yollar geliştiriyorlar. Quipt gibi projeler, güvenilir sensörlerin endüstriyel robotlara nasıl entegre edileceğine bakıyorlar, böylece jestle programlanabilirler ve elbette bazı endüstriyel robotlar elle yönlendirmeyle öğretilebilir.

Bunun gibi kolay programlama teknikleriyle bile, “kendinizi robotun seviyesine indirgemek” önemlidir. Mevcut bir robota yeni teknolojiler eklerseniz, robotu ilk kullanışımızmış gibi algılandığınızı düşünmek önemlidir. Bu şekilde, yeni yeteneklerini yanlış değerlendirmeyeceksiniz. Geçenlerde 13 yaşında birinin UR robotunu nasıl programlayabildiğini Youtube üzerinden izledik. Bu şaşırtıcı değil çünkü o yaştaki bir kişi robot programlama arayüzü hakkında herhangi bir ön görüşe sahip olmayacaktır; robotun yeteneklerini ve programını robotu sınırlamaları dahilinde öğreneceklerdir.

Robotunuzla “göz göze” olmak için aşağıdaki teknikler çok basit ve hızlıdır ayrıca etkilidir:

  1. Programlamaya başlamadan önce … bekleyin. Öğretmen kimliğinizi veya klavyenizi bırakın.
  2. Fiziksel (ve zihinsel olarak) görev boyunca ilerlemek için birkaç dakikanızı ayırın. Görevin robot tarafından, hem algılayıcıları (eğer robotunuzda varsa) nasıl algılandığını ya da görevin kinematik zinciri boyunca nasıl açılacağını hayal ederek düşünün.
  3. Robotun sensörleri varsa, çalışma alanına sensörlerin göz atması için biraz zaman ayırın. Bir kameranız varsa, yalnızca ekrandaki kamera görüntüsüne bakarken görevi elle gerçekleştirmeyi deneyin.
  4. Robotunuzun yeteneklerini sınırlarını aktif olarak bulmaya çalışın ve bunları programlama yoluyla nasıl en üst düzeye çıkaracağınızı not edin.

Bir robotu programlamadan önce bunu zaten yaparsanız, o zaman harika. Harika bir robot programcısı olmak için gerekli malzemelere zaten sahipsiniz. Bu adımları henüz gerçekleştirmediyseniz, şimdi başlamanın tam zamanı. Sadece robotun yeteneklerini kullanımınızı en üst düzeye çıkarmanıza izin vermekle kalmaz, aynı zamanda robotunuz için en iyi görevleri seçmenize yardımcı olur.

CEVAP VER

Please enter your comment!
Please enter your name here