Arduino Arduino ile YCopter, TCopter, TriCopter, HeliCopter Yapılabilir mi? By Konuk Yazar Posted on 1 Mart 2015 22 min read 9 1 12,881 Paylaş ! Facebook Paylaş ! Twitter Paylaş ! Google+ Paylaş ! Reddit Paylaş ! Pinterest Paylaş ! Linkedin Paylaş ! Tumblr (Resim alıntı olup, temsili olarak konulmuştur.) Merhaba arkadaşlar, son zamanlarda çok fazla ilgi odağı haline gelen ve pek çok üniv. öğrencisin de bitirme projesi olarak seçtiği çok rotorlu hava araçlarından YCopter, TCopter, TriCopter yada HeliCopter olarak adlandırdığımız hava aracından bahsedeceğim. İsimlerinden de anlaşılacağı üzere bu hava aracı toplam 3 adet brushless motor ve 1 adet servo motordan oluşmaktadır. Hava aracı yapı itibari ile tasarımı farklı şekillerde yapılabilir, “Y, T” vs. gibi. Aşağıdaki resimde de gördüğünü üzere bir kaç farklı frame tasarımı görülmektedir. Kullanılması Planlanan Malzemeler Arduino UNO R3 Brushless Motor x3 ESC(Electronic Speed Controller) x3 Lipo Pil + Şarj Aleti Güç Dağıtım Kartı (opsiyonel-kendinizde yapabilirsiniz) IMU Pervane Farklı özellikler eklemek için çeşitli sensorler, mesafe sensorü, iniş takımı için ekstra 3 adet servo motor, gps konum belirleme vs. gibi. Malzemeleri Kısaca Tanıyalım Brushless-Fırçasız Motorlar Hava araçları kullanımı için elverişli motor türüdür. Birimi “kv” olarak geçer. Buda volt başına dönüş sayısını temsil eder. Yani diğer motorlardan bildiğimiz rpm değeridir. kv=rpm/volt’tur. Atıyorum 1100 kv’lik bir motorumuz varsa 1100 kv= 1100 Rpm/Volt diyebiliriz. Fırçasız motorun 3 adet bağlantı kablosu olup, belli bir thrust itme değerleri vardır ve motor seçimi yaparken bu değerler göz önüne alınır. ESC(Electronic Speed Controller) ESC’ler fırçasız motorlar için geliştirilmiş motor sürücü devreleri dir ve hava araçları projelerinde fırçasız motorları sürmek, kontrol etmek için ESC’lere ihtiyaç vardır. Bir nevi şöyle düşünebilirsiniz. Örneğin servo motor içerisinde ne vardır. Bir adet dc motor ve sürücü devresi. Yani aynı şekilde fırçasız motor + esc = servo gibi düşünebiliriz ve nitekim fırçasız motorları kontrol etme mantığı servo kontrol ile aynıdır. ESC’ler üzerinde motora giden 3 kablo, 3’lü pin kablosu, Artı- Eksi besleme kablosu vardır. Motora giden kablolar motorun bağlantı kabloları ile gelişigüzel bağlanır. Aşağıdaki resimde görüldüğü üzere esc’nin sağ tarafında dış kısımdaki bağlantı kablosu lipo pile giden kablolar, ortadaki 3’lü pin kablolar ise Arduino’a giden kablolar, bu pinler +5V,GND ve Sinyal kablosu dur. Bu +5V, GND ile Arduino beslenecektir ve sinyal kablosu da yine Arduino’a iden kablodur. Yani sonuç olarak özetlersek. ESC lipo pilden beslenecek olup Motor ve Arduino ESC üzerinden beslenecektir. Motor yönünü ayarlamak için ilk önce motor ve esc kabloları gelişigüzel bağlanır ve eğer motor istediğimiz yönün tersinde dönüyor ise motor ve esc arasında ki bu üç kablodan herhangi ikisi yer değiştirilir. Li-Po Pil: Hava araçlarında yüksek performanslı kullanabileceğimiz pil türüdür, güzel bir li-po pil seçimi ve sarj aleti ile daha elverişli ve uzun uçuşlar elde edebileceğimiz gibi pilimiz bittiğinde sarj ederek sürekli kullanabiliriz. Lipo piller birden fazla hücreden oluşmaktadır. Bu hücreler “s” ile ifade edilmektedir. Örneğin elimizde 3s 2200 mA.h 11.1 V lipo pilimiz olsun. “3s” lipo’nun 3 hücreli olduğu belirtir ve her güce nominal 3.7 V’tur. Yani 3×3.7 = 11.1 V olur. ama aslında 3.7 değil 4.2 volt’tur, bunu lipo pil full dolu olduğunda ölçü aleti ile ölçerek görebilirsiniz. Piyasada 3.7 V olarak geçer. Güç Dağıtım Kartı; 3 motorumuzu tek bir li-po pil ile beslemek için gerekli kart, kendinizde yapabilirsiniz. IMU(Inertial Measurement Unit); Hava aracımızın daha sağlıklı uçması için gerekli olan birim. Ruzgar vs. den etkilenmemesi ve daha dengeli uçması içindir. Önemli Noktalar; Fırçasız Motor Seçimi Hava aracımızın için seçilen 3 adet brushless motorun toplam thrust değeri, hava aracımızın toplam ağırlığının en az iki katı olmalıdır. Örneğin almış olduğumuz brushless motorumuzun bir tanesini thrust değeri 1500 gr olsun. Üç motorun toplam thrust değeri 4500 gr yapar, bu durumda hava aracımızın her şey üzerinde iken toplam ağırlığı max. 2250 gr olabilir. Bu yüzden hava aracının ağırlık miktarını belirlerken üzerinde konulacak tüm malzemelerin ağırlığı göz önünde bulundurularak hesap yapılmalıdır. Hava aracının ağırlık merkezini iyi ayarlayıp ağırlıkları eşit olarak dağıtmak gerekir, aksi takdirde hava aracı bir tarafa çekme yapar. Hava aracımızın ağırlığını belirledikten sonra motorlar bu şartlarda seçilir, yada önceden motorlarınızı seçtiyseniz hava aracınızın ağırlığını belirlerken bu şekilde seçmiş olduğunuz üç motorun toplam thrust değerinin yarısı kadar olmasına dikkat etmelisiniz. Motor seçerken hangi pervane ile ne kadar thrust ürettiği de dikkate alınmalıdır. Li-PO Seçimi Li-PO batarya seçerken diğer dikkat etmemiz gereken özelliklerden biride Constant Discharge değeridir. Şimdi sistemimiz için uygun pili seçelim; Kullanacağımız brushless motorlarımızın her birinin anlık max. çekeceği akım 20 amper olsun, Üç motor da bu ne yapar 3×20 = 60 Amper yapar, Yaklaşık 1-2 amper de kart vs. harcadığını düşünürsek toplamda = 62 amper diyelim. Örneğin 3000 mAh 30 C olan bir pil seçtiğimizi düşünürsek; 3000mAhx 30C = 90 000mA = 90 Amper yani anlık olarak max. verebileceği amper değeridir, Bu durumda sistem için yeterli diyebiliriz. Eğer 62 amperden daha düşük olsa idi yetersiz olacaktı. Yaklaşık toplam uçuş süresini de hesaplamak için şöyle bir yol izleyebiliriz, Li-Po pillerin birimi “mA.h” olarak geçiyor yani mili amper saat Örneğin elimizde yine 3000 mA.h ‘lik bir pil olsun, mili amper saat olan birim mili amper dakikaya çevirelim, bunu için “h” yerine “60m” yani 60 dakika yazıyoruz. Sonuç olarak Li-PO pilin mili amper saat olan birimi mili amper dakika ya çevirmiş oluyoruz. 3000 mAh= 3000mAx (60m) =180 000 mA.m = 180 A.m(180 amper dakika) Uçuş Süresi = 180/(3 motorun ortalama çektiği akım değeri) Bir motorun çektiği max. amper 20 ise ortalama 9 amper diyelim) Uçuş süresi = 180 A.m/(3*9) =6,6 dakika Yaklaşık 6.5-7 dakika arası bu hesaplama türü yaklaşık olarak bir değer bulmak içindir, kullanmış olduğumuz motorların kalitesi, frame’in ağırlığı, ESC türleri bu süreyi etkileyen faktörlerdir. Pervane Seçimi Kullanılacak olan pervane türü önemlidir, Carbon pervaneler daha dayanıklı olmasıyla birlikte iyi performans vermektedir. Plastik pervanelerde çalışabilir tabi, ama performans ta ona göre olacaktır. CW – CCW motor yönlerine göre pervane yapısı da değişmektedir CW yani saat yönü olan pervanelerin üzerilerinde “R” yazar yani ( RIGT ) saat yönünü belli etmek için CCW de ise L ( LEFT ) yada hiç bir şey de yazmayabilir, birinde “R” yazmasıyla diğerinin de L olduğunu anlamanız gerekmektedir. Pervane satın alırken CW ve CCW yönlerine dikkat ederek alınız, bazı sitelerde sadece CW yada CCW olarak satılmaktadır. Hava Aracı Uçuş Prensibi (roboturka facebook hesabından alıntıdır) Resimlerden de gördüğünüz üzere hava aracı üzerinde 3 adet kol olup kollar arasındaki açılar eşittir yani 360/3 = 120 derece, kollar arasındaki açı. 1 ve 2 nolu motorların olduğu taraf hava aracımızın ön tarafı, diğer 3 ve 4 nolu motorların olduğu kısım ise arka tarafıdır yani kuyruk kısmı. Kuyruk kısmındaki fırçasız motor ayrı bir servo motor ile kontrol edilmektedir, sebebi hava aracındaki yaw hareketini elde etmek içindir. Örneğin bildiğimiz helikopteri göz önüne alalım. Helikopterler iki veya daha fazla kanatlı olabilir, kanatlara hafif bir açı verilip ana motor çalıştırıldığında helikopteri kaldırmaya çalışır ve havada iken helikopterin gövdesi pervanenin dönüş yönünün tersine dönmeye başlar. İşte bu noktada helikopteri dengelemek için ek bir güce ihtiyaç vardır, bu gücü sağlamak içinde helikopter gövdesinin dönüş yönüne dik bir motorun yer alması gerekmektedir. İşte bu şekilde helikopterin kuyruk kısmındaki pervane helikopter gövdesinin dönmesini engeller yani dengede durmasını sağlar. Bizde aynı mantıkla kullanacağız sadece kuyruk motorunu her iki yönde de kullanabilmek için servo motor ile kontrol ediyoruz. 1, 2 ve 3 nolu motorların dönüş yönü CW yada CCW olabilir ama en sağlıklı ve elverişli dönüş yönü ön kısımda yer alan motorlarının birbirine zıt olarak dönüyor olması olup, kuyruk motorunun dönüş yönü önemli değildir CW,CCW olabilir. Üç motora da aynı pwm değerinin verdiğinizde hava aracı yükselmeye başlayacaktır. Peki sağa, sola, ileri, geri hareketinin nasıl yapacak? İleri Hareketi;Hava aracının ileri gitmesini sağlamak için 3 nolu motor hızı arttırılırken diğer 1 ve 2 nolu motor hızları biraz düşürülür, bu şekilde hava aracı düz iken öne doğru belli açıda duracaktır bu onun ileri gitmesini sağlar, Geri Hareketi; Hava Aracının geri gitmesi için aynı şekilde ön taraftaki motor hızları biraz arttırılırken arka taraftaki 3 nolu motor hızı azaltılır. Sağa Gitmesi; Saat yönünde dönen motor hızı arttırılıp saat yönünün tersine dönen motor hızı azaltılır. Yani 1 nolu motor hızı arttırılırken 2 nolu motor hızı biraz düşürülür. Sola Gitmesi; Aynı şekilde saat yönünün tersine dönen motor hızı arttırılırken saat yönünde dönen motor hızı biraz azaltılır. Yani 2 nolu motor hızı arttırılırken 1 nolu motor hızı azaltılır. Hava aracının kendi ekseni etrafında dönmesi ise kuyruk kısmındaki servo motor ile sağlanacaktır. Hava aracı saat yönünde kendi ekseni etrafında dönmesi isteniyorsa 3 nolu motor servo ile 0-90 derece arasında sola hareket etmesi, tam tersine yönde kendi ekseni etrafına hareket etmesi içinde servo tersi yönde 0-90 derece hareket edecektir. Motorlar Arduino’nun digital pwm pinine bağlanacak olup 0-180 yada 0-255 olarak kontrol edilecektir ve bir takım set pointler deneme yanılma yöntemi ile belirlenmelidir. Örneğin hava aracının havada asılı kalmasını sağlamak için hava aracı ağırlığına denk gelen pwm değeri belirlenip ona göre havada asılı kalması sağlanabilir. Bunun içinde pwm değerini en alttan başlatıp yavaş yavaş arttırılarak hava aracının hangi pwm değerinden sonra yükselmeye başladığı gözlemlen melidir. Sonrasından altına yerleştireceğiniz bir mesafe sensorü ile belli bir mesafe yükseldiğinde o pwm değeri gönderilerek havada kalması sağlanabilir. Aynı şekilde altına yerleştireceğiniz servo kontrollü ayaklar hava aracı belli bir mesafeye yükseldiğinde otomatik ayakları içine çek yada yere yaklaştığında çıkart diyebilirsiniz. Kontrol kısmı kumanda ile, ufak joystick yada pc üzerinden yapılabilir. Pc üzerinde Visual Studio C#.Net ortamında GUI yazarak kontrolü sağlayabilirsiniz, tabi bunun için Arduino ve C#.Net haberleştirme kısmına iyi derecede hakim olmanız gerekir. Hava aracının rüzgar, darbe yada herhangi bir dış etkene karşı dayanıklı olması ve stabil bir şekilde uçması imu ile sağlanacaktır. Bu proje basit bir proje olmayıp her şeyi burada anlatmak zor, o yüzden en kısa ve öz şekilde anlatmaya çalıştım. İyi çalımalar.