UOS 2008 / Teknik Eğitim Fakülteleri VII. Öğrenci Sempozyumu 1 Mini Sumo Robot Tasarımı ve Uygulaması: Canavar Tülay ÖZDEMĠR 1 Gökhan TURAN 2 tulayozdemir03@gmail.com gokhanturan@gokhanturan.com 1,2 Süleyman Demirel Üniversitesi, Teknik Eğitim Fakültesi, Elektronik Bilgisayar Eğitimi Bölümü, ISPARTA Özet Bu çalıģmada mini sumo robot yapılırken izlenmesi gereken süreçte mini sumo özellikleri, stratejileri, malzeme seçimi, devre tasarımı, kontrol yazılımı, noktaları üzerinde durulmuģtur. Ayrıca mekanik tasarımda yapılması gereken iģlemler sırasıyla, önemli noktalarına dikkat çekilerek ele alınmıģtır. Giriş Sumo robot turnuvaları 1980 li yılların sonunda ortaya çıktıktan sonra özellikle Amerika ve Kanada da büyük ilgi toplamıģ, 1990 lı yılların sonunda dünya çapında yarıģmaları düzenlenen büyük bir sektör haline gelmiģtir. Bunun göstergesi olarak da birçok kurum ve kuruluģ robot yarıģmaları düzenlemeye baģlamıģtır. Gün geçtikçe ülkemizde bu tür etkinliklere daha fazla önem verilmiģtir. Özellikle 2002 yılından baģlanılarak üniversitelerde, liselerde grup olarak sumo robotu tasarımı yapılmaya baģlanmıģtır. Mini Sumo Robot yapılırken izlenmesi gereken süreçte, mekanik tasarım, robotun hareketini sağlamak için elektronik devre tasarımı ve yapımı, kontrast sensörü ve algılama sensörü seçimi, programlanabilir kontrol devresinin tasarımı ve, taktik algoritmalar geliģtirilerek robotların dohyo üzerinde sumo güreģi yapmaları dikkat edilmesi gereken önemli noktalardandır. 1. Mini Sumo Robotları ve Tasarım Süreci Mini Sumo Robot tasarım çalıģmalarında üzerinde durulması gereken ilk süreç; tasarım doğru anlaģılması için gereken tanımlamalardır. Bu baģlık altında ele alınması gereken aģamalar; mini sumo robotların özellikleri, sumo robot güreģi standartları, dohyo, robotta yapılamayacaklar ve sumo robot stratejileri olacaktır. 1.1.Mini Sumo Robotların Özellikleri Robotlar tamamen otonom olmalıdır. Sumo robotun ağırlığı 500 gram olmalıdır. Ağırlıkta hata payı, %2 dir. 10 x 10 cm lik kareye sığacak boyutlarda olmalıdır. Maç baģladığında parçalara ayrılmamalıdır. Hakem iģaretinden sonra 5 saniye gecikmeli baģlamalıdır. Robotların içindeki mikrobilgisayarlar herhangi bir tür veya marka olabilir[2].. 1.2.Sumo Robot Güreşi Standartları Sumo robotları uluslararası birtakım kurallara uygun olarak tasarlanır ve sumo robot turnuvaları belirli kurallara göre düzenlenir. Dünya çapında, sumo robot turnuvaları birçok farklı organizasyonla gerçekleģtirilmekte ve bu organizasyonların birbirinden farklı olabilen kuralları bulunmaktadır. 1.3.Dohyo nun Özellikleri Dohyo, sumo robot turnuvalarının üzerinde yapıldığı, içi siyah renkte, dıģında 2,5 cm lik beyaz Ģerit bulunan halka Ģeklinde özel olarak hazırlanan ringin adıdır. Dohyo özellikleri aģağıdaki gibi olmalıdır: Dohyo, yerden 2,5 cm yükseklikte, daire seklinde, dıģtaki 2,5 cm kalınlığındaki beyaz çizgi dâhil olmak üzere 77cm çapında olacaktır. Robotların baģlama yerleri arası 10 cm dir. Bu yerler 1 cm kalınlığında kahverengi çizgilerle iģaretlenmiģtir. Dohyo nun
2 dıģındaki 50 cm lik mesafe boģ ve beyaz dıģında bir renk olmalıdır. Bu 50 cm lik mesafe kurallara aykırı olmamak Ģartıyla herhangi bir maddeden yapılmıģ veya herhangi bir Ģekilde olabilir[2]. Resim 1: Dohyo nun görünüģü 1.4.Robotta Yapılamayacaklar Robotlar insanlara, rakip robota ve sahaya kasıtlı bir Ģekilde zarar veremez. Rakibin elektronik devrelerini bozacak parçalar kullanılamaz. Dohyo ya zarar verecek herhangi bir parça kullanılamaz. Robotta sıvı, toz yada hava depolayıp rakibe atacak mekanizmalar kullanılamaz. Alev ve/veya duman çıkaramazlar. Yağ gibi maddeleri sızdıramazlar. Rakip robota herhangi bir Ģey atamazlar, püskürtemezler. Rakip robota zarar verecek Ģekilde elektromanyetik dalga yayamaz, ark, kıvılcım oluģturamazlar. YapıĢtırıcı veya emme kuvvetiyle robotu ringe sabitleyen teçhizat kullanılamazlar[2]. 1.5.Sumo Robot Stratejileri Ağırlık merkezi tabana yaklaģtırılmalıdır. Ağırlık merkezinin tabana yakın olması robotun daha iyi manevra yapmasını sağlayacaktır. Böylece robotun dohyodan düģme ihtimali azalacaktır. Bir diğer avantajı da robotun boyu kısa olacağından rakip robotun robotumuzu fark etmesi zorlaģacaktır. KarĢılaĢma baģladığında daha geniģ bir alan kaplanmalıdır. Sumo robotlar karģılaģmaya baģlamadan önce boyut testlerini geçmek zorundadırlar. Bu kural karģılaģma baģlayana kadar geçerlidir. KarĢılaĢma baģladıktan sonra robotun boyutları değiģebilir. Kontrast sensörü beyazı algıladığında motor açıyla döndürülebilir. Böylece robotun dohyoda taradığı alan artacak ve rakip robotu daha çabuk algılayarak dohyo dıģına atması kolaylaģacaktır. Tekerleklerin dohyoya tutunduğu yüzey artırıldığında sürtünmeden en yoğun Ģekilde yararlanılabilecek ve rakip robot ile karģı karģıya kalındığında dohyo içinde kalabilmek için büyük bir avantaj sağlanmıģ olunacaktır. Tekerlek-Motor ikilisi sumo robotların performansı açısından oldukça önemlidir. Bu fikir çerçevesinde motor ve teker seçimi uygun yapılmalıdır. Yüksek devirli motorun yüksek torkla çalıģmasını sağlamak için diģli kutusuyla devri düģürülür. Büyük boyutlu tekerlekler kullanıldığında da tork düģer. Yapılan bu çalıģma ister istemez güç kaybına yol açar. Yapılan robotta hız önemli değilse; gücü çok yüksek olmayan bir motor kullanmalı ve buna uygun torku düģürmeyecek minimum boyda tekerlekler kullanılmalıdır. Yapılan robotun rengi de önemlidir. Sumo robotların birçoğunda siyah renk kullanılır. Bunun nedeni IR ıģınlarını siyah rengin soğurması yani yansıtmamasıdır. 2.Gerçekleştirilen Proje Ve Detayları Robotun yapımında dört adet 4.5V 427 Rpm diģli DC motor, iki adet 3.7V 2A lik batarya, dört adet kontrast sensörü (QRD 1114), iki adet algılama sensörü (Sharp GP2DY0) kullanılmıģtır. Ayrıca dört adet DC motoru, dört adet kontrast sensörü ve iki adet algılama sensörünü uyum içinde çalıģmasını sağlayacak bir elektronik devre yapılmıģ ve Pic 16F84 mikro denetleyicisini kontrol etmek için C Programlama dilinde bir program yazılmıģtır. ÇalıĢmanın blok Ģeması, açık Ģeması, her bir kısmın görevi, birbirleri ile olan iliģkileri aģağıdaki bölümlerde ayrıntılı olarak anlatılmıģtır. 2.1.Mekanik Tasarım Mekanik tasarım daha önceki sumo robot turnuvalarında yarıģmıģ ve aynı zamanda derece almıģ robotlar göz önünde bulundurularak modellenmiģtir. GerçekleĢtirilen çalıģmada robotumuzu rakibin darbelerinden korumak için mekaniğin sağlam bir malzemeden yapılması planlanmıģtır. Bunun içinde dıģ cephe kaplamalarında kullanılan 1.2mm kalınlığındaki alüminyum seçilmiģtir. Bu malzemeye istediğimiz boyutlarda torna tezgâhlarında milimetrik ölçülerde kesim iģlemi yaptırılmıģtır. Mekanikte robotumuzun hareketini kolaylaģtıran tekerleklerin yumuģak bir yapısının olmasına
3 özellikle dikkat edilmiģtir. Böylelikle ise zemine daha çok tutunarak rakibin olası itme durumunda sürtünmeyi artırarak kendine avantaj sağlamıģtır. Bu tekerleklerden dört adet kullanılmıģtır. Yapılan projenin tamamlanmıģ mekanik Ģekli aģağıda yer almaktadır. ıģığı soğurma mantığıyla siyah rengin tamamını emer, beyazı yansıtır. Platformdan yansıyan ya da yansımayan ıģığı foto transistor beyz akımı olarak kabul ederek kolektör ile emiter arasında değiģen akımı oluģturmaktadır[11]. Projede kullanılan QRD 1114 sensör devresinin çalıģma prensibi aģağıdaki gibidir: Resim 3: Mini sumo mekanik görünümü 2.2.Sensörler Robotun dohyo üzerindeki siyah ve beyaz rengi ayırt etmesi ve dohyo içerisinde kalmasını sağlamak için robotun ön-alt ve arka alt köģelerine dört adet siyah beyaz algılayıcı kontrast sensör kullanılmıģtır. Robot mücadele esnasında rakip robot tarafından çizgi dıģına itilmek istendiğinde veya kendi algoritmasını uygularken dohyo üzerindeki beyaz Ģerit üzerine gelirse, bu sensörler bu Ģeridi algılayarak kontrol devresine lojik 0 bilgisini gönderir ve bu bilgi mikro denetleyiciye iletilir. Kontrast sensöründe kullanılan QRD 1114 ün çalıģma prensibi aģağıda anlatılmıģtır. ġekil1: QRD 1114 ün Kılıf ġekli ve Ġç Yapısı[3]. QRD 1114 ün çalıģma prensibi kısaca Ģu Ģekildedir. Ġçerisinde prensip olarak bir Infrared diyot ve foto transistor bulunmaktadır. ġekilde de gözlendiği gibi Infrared diyot gözle görülmeyen ıģınları yansıtıcı yüzeye gönderir. Yansıtıcı yüzey yani platformun rengine göre ġekil 2: Projede Kullanılan Sensör Devresi[1]. QRD 1114 ün çalıģma prensibine göre yansıtma yüzeyi yani o anda dohyodan algılanan kısım siyah olursa Infrared Led den gelen ıģık soğrulur yani yansıtılamaz ve böylece mikro denetleyicinin port ucuna 1 değeri gelir. Burada çıkıģ foto transistörün kolektör ucundan alındığı için çıkıģ lojik 1 olur. Yansıtıcı yüzey beyaz olunca ise Infrared Led den gelen ıģık yansıtılacak ve mikro denetleyicinin port ucuna lojik 0 değeri gelecektir. Bu sayede kontrol devresinde kullanılan Pic 16F84 e lojik 1 ve lojik 0 yani 5V ve 0V bilgileri gönderilmiģ olur. QRD 1114 ten hariç robotun dohyo üzerinde diğer rakibini algılayabilmesi için iki adet Sharp GP2Y0D02YK (algılama sensörü) kullanılmıģtır. Robotumuz mücadele esnasında rakip robotu algıladığında bu sensörler kontrol devresine lojik 0 bilgisini gönderir ve bu bilgi mikro denetleyiciye iletilir. Sharp GP2Y0D02YK da, QRD 1114 gibi ıģınların yüzeye gönderilip yüzeyin rengine göre yansıması prensibine göre çalıģmaktadır. Aralarında fark olarak sayılabilecek en belirgin özellik QRD 1114 ün infrared, Sharp GP2Y0D02YK nın ise gözle görülebilir ıģın göndermesidir. Sharp GP2Y0D02YK sensörü rakip robotu algılayamadığı sürece gönderdiği ıģın geriye yansımayacak ve sensör çıkıģında lojik 1 bilgisi oluģacaktır. Sensör rakip robotu algıladığında gönderdiği ıģın geri yansıyacak ve sensör çıkıģında lojik olarak 0 bilgisi oluģacaktır. Bu sayede kontrol devresinde
4 kullanılan PIC 16F84 e lojik 1 ve lojik 0 yani 5V ve 0V bilgileri gönderilmiģ olur. Projede kullanılan Sharp GP2Y0D02YK sensörünün Ģekli aģağıdaki gibidir: ÇalıĢan sistemde, mikro denetleyicide yüklü olan programın ilk satırından itibaren tekrar çalıģtırılabilmesi için reset butonu kullanılmıģtır. 2.5.Güç Kaynağı Yapılan çalıģmada 2 adet 3.7V, 2000mA lik lityum batarya seçimi uygun görülmüģtür.. Güç kaynağı motorların, kontrol kartının ve sensörlerin beslenmesinde kullanılmıģtır. Güç kaynaklarının her birinin 36Ģar gram ve ölçülerinin 5.8x54x54 mm gibi küçük boyutlarda olması, mekanik tasarım sürecinde büyük bir avantaj sağlamıģtır. Resim 4: Sharp GP2Y0D02YK[8] 2.3.Motorlar Yapılan çalıģmada dört adet 4.5V 427 Rpm lik Banebot marka DC motorlar kullanılmıģtır. Motor, sahip olduğu yüksek devir sayısı ve torkuyla motor seçiminde diğer micro motor çeģitlerine göre daha çok ön plana çıkmıģtır. Kullanılan motorun resmi ve özellikleri aģağıda belirtilmiģtir. Voltaj: 4.5vdc RPM: 427 Tork: 92oz.in (6.62 Kg-cm) Reduction: 30:1 Shaft uzunluğu: 48mm ġekil 3: Banebot Motor Özellikleri[7]. 2.4.Mikro Denetleyici Yapılan çalıģmada sensörlerden gelen bilgilerin iģlenmesi, gerekli kararların verilmesi ve uygulamaya konulması faaliyetlerinin gerçekleģtirilmesi için PIC 16F84 mikro denetleyicisi kullanılmıģtır. Tek bir mikro denetleyici kullanılarak motor sürücü entegreler yardımıyla 4 motorda kontrol edilmiģtir. Mikro denetleyici çevrede olan değiģiklikleri sensörler vasıtası ile algılar. Sensörlerin ürettiği değerlere göre mikro denetleyici, yüklenen programa göre gerekli kararları verir. Verilecek tepki doğrultusunda motorların hareketlerini, ilgili portları aktif hale getirerek gerçekleģtirir. Resim 5: Güç Kaynağı[7]. 2.6.Diğer Elektronik Malzemeler Projede sensörler, motorlar, mikro denetleyici ve güç kaynağı dıģında da elektronik malzemeler kullanılmıģtır. Bu malzemeler direnç, kondansatör, soket, 4 MHz kristal, 7805 entegresi ve TA7257P entegresidir. Dirençler sensörleri yüksek akımlardan korumak amacı ile kullanılması önerilen değerlerde kullanılmıģtır. Kondansatörler mikro denetleyicinin XTAL pinleri için kullanılmıģtır. 4 MHz lik kristal yine mikro denetleyicinin XTAL pinler için kullanılmıģtır. Soketi kullanılma amacı: Mikro denetleyiciyi kolayca yuvasından çıkarıp tekrar yerine kolaylıkla takılmasına yardımcı olması için kullanılmıģtır. Çünkü mikro denetleyici içersindeki yazılım kontrole tabi tutulacak ve olası hatalar durumunda yerinden çıkarılması gerekecekti. Pin sayısının fazla olmasından ve pinlerinin hassas oluģundan dolayı zift soket kullanılmıģtır. 7805 entegresi 12 V luk gerilimi 5 V a düģürmek için kullanılmıģtır. Mikro denetleyici ve QRD 1114 sensörlerimiz 5 V luk çalıģma
5 gerilimi istediklerinden devre beslemesi olan 12 V, 7805 entegresi ile 5 V a düģürülmüģtür. TA7257P entegresi motor sürücü entegresidir. Bu projede motor sürücü katı devrelerinin yaptığı görevi yapabilen TA7257P motor sürücü entegresi seçilmiģtir. bulunmaktadır. Altı giriģ, dört çıkıģ için yazılan programın algoritması ve yazılımı aģağıda yer almaktadır. BAŞLA 2.7.Elektronik Devre Tasarımı Projenin bu aģamasında seçilen elektronik malzemelerin uyum içersinde çalıģması için bir elektronik devre tasarımı yapılmıģtır. Yazılımda kolaylık olması açısından bazı biçimlendirmeler elektronik devre tasarımında yapılmıģtır. QRD 1114 ve mikro denetleyici besleme gerilimi 5 V olduğu için 7805 yardımıyla devre beslemesi 5 V a düģürülmüģtür 5 SN BEKLE İLK HAREKET RAKİP ARAMA 2.8.Kontrol Yazılımı ve Algoritması Mikro denetleyicinin sensörlerden gelen verilere göre motorları kontrol etmek üzere hazırlanmıģ yazılımı C programlama dili kullanılarak yapılmıģtır. Seri porta takılan programlama devresi yardımı ile yazılım (HEX dosyası) mikro denetleyiciye yüklenmiģtir. Kontrol yazılımını oluģturan temel kısım rakibi arama ve bulduğunda atağa geçme üzerine kurulu bir algoritmaya sahiptir. Arama algoritmamız robotun kendi ekseni etrafında dönmesinden oluģturulmuģtur. Bu hareket robota soldaki iki motoru geriye doğru sağdaki iki motor ise ileri yönde sürülerek yaptırılmıģtır. Robot arama algoritması içersinde iken algılama sensörü rakibi algılar ise program algılama yaptığı noktada kesilerek robot o yöne doğru yönlendirilmiģtir. Robotu sağ yöne yönlendirmek için sol motorlar ileri yönde sağ motorlar ise geri yönde sürülerek; sol yöne yönlendirmek için ise sol motorlar geri yönde sağ motorlar ileri yönde sürülerek bu yönlendirmeler yaptırılmıģtır. Dohyonun sınırlarındaki beyaz çizgiyi algılandığında robotun tüm motorları geri yönde sürülerek beyaz çizgiden kaçması sağlanmıģtır. 2.9.Kontrol Yazılımı Prosedürleri Yapılan çalıģmada sumo robotunun otonom çalıģabilmesi için kontrol devresinde PIC 16F84 mikro denetleyicisi kullanılmıģtır. Robotlarda sensörlerden gelen altı adet giriģ bilgisi ve dört adet motor için ileri, geri, sola dönüģ ve sağa dönüģ olmak üzere dört adet çıkıģ bilgisi RAKİP ÖNDE Mİ? RAKİP ARKADA MI? ÖN SAĞ QRD ÖN SAĞ QRD ġekil 3: Kontrol yazılımı algoritması TRISA=$00;A portu çıkıģ seçildi. TRISB=$FF;B portu giriģ seçildi. PORTA=$00;A portu sıfırlandı. PAUSE 4900 TEMP VAR BYTE PORTA=TEMP IF (PORTB.3==0) THEN PORTA=$09 TEMP=$09 GOTO D1 ELSE PORTA=$06 TEMP=$06 GOTO D1 BAS: ÖN SOL QRD ÖN SOL QRD
6 PORTA=TEMP IF (PORTB.6==0) THEN;öN SOL GÖRÜRSE PORTA=$01 PORTA=$05 TEMP=$01 IF (PORTB.7==0) THEN;ÖN SAĞ GÖRÜRSE PORTA=$04 PORTA=$05 TEMP=$04 IF (PORTB.5==0) THEN;ARKA SAG GÖRÜRSE PORTA=$01 PORTA=$0A TEMP=$01 IF (PORTB.4==0) THEN;ARKA SSOL GÖRÜRSE PORTA=$04 PORTA=$0A TEMP=$04 D1: IF (PORTB.0==1) THEN ;RAKĠP ÖNDE PORTA=$0A GOTO D1: D2: IF (PORTB.1==1) THEN ;RAKĠP GERĠ PORTA=$05 GOTO D2: END 3.Sonuç ve Öneriler Sumo Robotları, standartlara uyulduğu sürece, tasarımcının hayal gücüne ve mekatronik altyapısına bağlı olarak geliģtirilebilen, tasarımcıların gelecekteki robotik çalıģmalarında ihtiyaç duyacakları motor kontrolü, kontrol devreleri için yazılım geliģtirme, elektronik devrelerle tasarım ve uygulama konularında kendilerini geliģtirmeleri açısından eğlenceli bir baģlangıçtır. Yukarıdaki bölümlerde; blok diyagramı ve bu diyagramda bulunan tüm unsurları; devreleri, yazılımı, mekanik tasarımı ayrıntılı olarak anlatılan sumo robotunun, elektronik ve mekanik aksamı ile yazılımı tasarlanmıģ ve gerçekleģtirilmiģtir Yapılan çalıģmada; proje baģlangıcında hedeflediğimiz iģlemlerin hepsi tamamlanmıģtır. Projemiz eksiksiz ve sorunsuz bir Ģekilde çalıģmaktadır. Proje daha sonra geliģtirilmeye açık, eğitim amaçlı olarak kullanılmaya müsait bir projedir. Proje geliģtirilmek istenirse üzerine daha fazla sensör takılarak ve yazılımda farklı algoritmalar geliģtirilerek devam edilebilir. Daha fazla sensör eklenmesi hem sensörlerden hem de kontrol kartında yapılması gereken bazı değiģikliklerden dolayı robotun ağırlığını artıracaktır. ġu anda robotun ağırlığı turnuvaca belirlenen ağırlık kuralının maksimum sınırında olduğu için robotun ağırlığının düģürülmesi gerekmektedir. Bu da güç kaynağının yerine yüksek akımlı pillerin birleģtirilmesi sonucu oluģturulacak bir güçle sağlanabilir. 4.Kaynaklar [1] Özlem ALYÜZ, Mini Sumo Robot Yapımı, SDÜ TEF, Elt.Bilg.Öğrt,Lisans Tezi, 60s, 2007, ISPARTA. [2] ROBOT METU, http://www.robot.metu.edu.tr Mini Sumo Kuralları, 2008 [3] Gökhan Yüksel, Sumo Robot Yapımı, SDÜ TEF, Elt.Bilg.Öğrt., Lisans Tezi, 58s, 2006, ISPARTA [4] ATMEL, http://www.atmel.com, 8051 Nedir, 2008 [5] VIKIPEDI,http://tr.wikipedia.org/wiki/Sumo_robot,Sumo, Robot Nedir, 2008
7 [6] DONANIMTR, http://www.donanimtr.com/mikroislemcinedir,mikroiģlemci Nedir,2007 [7] ROBOTSHOP, http://www.robotshop.ca/home/products/robotparts/power-systems,banebot Motor,2008 [8] DORUKAN, http://www.dorukan.com/eletronik.aspx?pid=9,s harp Mesafe Ölçüm Sensörü,2008