Merhaba arkadaşlar, Bugünkü yazımda geçen senelerde üzerinde uzun zaman harcadığım fakat tamamlayamadığım bir konu olan otopilot yapmak üzerine edindiğim tecrübeleri anlatmak istiyorum. Yazıya başlamadan önce bu çalışmaların tamamını beraber yaptığım Bahadır Gökçeaslan teşekkür etmeyi bir borç bilirim.
Etiket: Hava Araçları
Herkese Merhabalar, Uzun bir aradan sonra tekrar bir yazı hazırladım. Aslında bu yazıya çok önceden başlamıştım fakat devamını getirmemiştim şimdi tamamlayabildim ancak :). Evet bu yazımda Pixhawk isimli otopilottan bahsetmek istiyorum. Pixhawk açık kaynak kodlu Stm32 tabanlı yazılım tabanı olarak da ArduPilota dayanan bir otopilot modülü. Burada bir yorumda bulunmam gerekirse, açık kaynaklı otopilotlar arasında en başarılısı bana göre. Bu teorimi kanıtlamak için de hemen özelliklerine geçmek istiyorum.
Herkese Merhabalar, Yapacağım bir proje için fırçalı bir motorun Arduino ile hızını kontrol etmem gerekiyordu. Bunun için elimdeki fırçalı motor için elektronik hız kontrolü yani ESC (Electronic Speed Control) yapmaya karar verdim. Öncellikle kendi motorumun ve devrelerimin besleme gerilimi yazayım. Çünkü devre bu özelliklere göre dizayn edilecektir. Siz de kendi malzemelerinize ve voltajlarınıza göre kendi devrenizi dizayn edebilirsiniz. Benim elimdeki motoru besleme voltajım 7.4 volt ve motorun çektiği maximum akım 2 amperdir. Hız kontrolü için göndereceğim PWM sinyalinin genliği de (Arduinonun çalışma voltajı) 5 volttur. Bu şartlar altında devremi bir power mosfet ile tasarlamaya karar verdim. Mosfette var olması gereken özellikler 5 volt anahtarlamaya uygun rds ve Vgs özelliklerine sahip olması, üzerinden 2 amper akım rahatça geçebilmesidir. Bu nedenlerden dolayı ben IRL540N mosfetini seçtim. Kendisi bir logic mosfet bu sayede 5 volt gibi düşük bir Vgs voltajı ile devreyi anahtarlayabiliyor. Ayıca üzerinden 28 amper sıkıntısız geçebiliyor. Bu özellikleriyle projemiz için oldukça uygun. Datasheetine buradan ulaşabilirsiniz.
Herkese Merhabalar, Bu yazımda PID kontrol algoritmalarından bahsetmek istiyorum. Bu yazıyı yazmamın 2 sebebi var. PID algoritmaları hakkında bir çok yazı okudum fakat coğu akademik ve karmaşık yazılar. Benim amacım anlaşılırlığı ve ayrıntıyı dengeli bir şekilde maximum değerlerinde kullanmak. İkincisi ise bu algoritmanın özel olarak multikopterlerde kullanımını basit bir şekilde açıklayan bir yazıya rastlamadım. Bu yüzden bu yazıyı yazmaya karar verdim. Bir otopilotun en temel 2 bileşeni hava aracının yönelimini tespit eden IMU sensörü ve PID algoritmasıdır. IMU sensörü içinde bir kaç sensör barındırır ve amacı hava aracının 3 boyutlu uzaydaki yönelimini bulmaktır. IMU konusundan bu yazımda bahsetmiştim. PID algoritmasının görevi ise temel olarak şöyledir: Yönelimi (3 eksendeki yere göre açılar) sensörler üzerinden alır, istenen açıları da kullanıcıdan alır. Bu ikisi arasındaki farkı en düşük seviyeye düşürmeyi amaçlar. İşte PID algoritmasının görevi bu farkı minimuma indirmek için gerekli motor hız değerlerini hesaplamaktır. Multikopterler için her 3 için ayrı ayrı PID kontrol algoritmaları uygulanır. İstenilen değer ile şu anki değerin farkı alınarak hata elde edilir. PID algoritması bu hata değerlerine uygulandıktan sonra motorların çıkış değerleri hesaplanır. Sonra bu verilen çıkış hata değişkenini bulmak üzere tekrar girişe yönlendirilir. Böylece döngü tamamlanmış olur. PID, Proportional, Integral ve Derivative olmak üzere 3 farklı algoritmanın uygulanmasıyla elde edilir. Örnekle açıklamak gerekirse: Multikopterimizin pitch açısı için kullnılan PID kontrol algoritmasını ele alalım. P algoritmasından gelen değer, multikopterimizin şu anki pitch açısı ile
Herkese Merhabalar, Daha önce kolay bulunabilecek malzemelerden nasıl gimbal yapılabileceğinden bahsetmiştim (O yazıya buradan ulaşabiliriniz). Kontrol kartını sonra anlatacağım demiştim. Veee bu yazımda arduino ve MPU6050 sensörü kullanarak nasıl bir gimbal kontrol kartı yapabileceğimizden bahsedeceğim. Bu kart sayesinde gimbalin yere göre açısını kontrol edebileceğiz. Yere göre açısının sabit kalmasını da kontrol kartı üzerindeki IMU sensörü ile sağlayacağız(Ayrıntılı bilgi için tıklayınız). Kontrol kartı saniyede 100 değer okuyup servo PWM değerlerini ona göre güncelliyor. Bu sayede oldukça yüksek çözünürlüklü her türlü seviyede kullanılabilecek bir kontrol kartı yapmış oluyoruz. Ayrıca başa koyduğum ayar parametreleri sayesinde her boyutta ve çeşitte servo gimbale kolayca uyumlu hale getirilebilir. Kontrol kartının tanıtım videosu aşağıdadır.
Merhabalar! Bugünkü yazımda SDR ile uçaklardan veri alıp onları haritada takip etmeyi anlatacağım. Bunun için gerekli olan yazılımlar ADSBsharp ve ADSBScope yazılımlarıdır. Ben donanım olarak 10 $ Çin’den aldığım SDR’yi kullandım. Anten olarak ise 5 TL’lik TV anteni kullandık. Bu anten tabi ki bu iş için uygun anten değil. Çalışacağımız frekans 1090 Mhz benim antenimle sadece yakın çevredeki uçaklardan veri almak mümkün. En kısa zamanda antenlerle ilgili bir yazı yayınlayacağım o zamana kadar şurayı inceleyebilirsiniz. Yapacağımız iş temel olarak söyle: Uçaklar uçarken koordinantları,
Herkese Merhabalar!Bu yazımda size hava araçlarının en temel elektronik ekipmanı olan IMU modullerinden bahsetmek istiyorum. IMU modullerinin hayati önem taşımasının sebebi, modüllerin yönelim açılarını hesaplamak için kullanılmasıdır. En büyük yolcu uçağından, roketten en küçük bir quadrokoptere kadar tüm hava araçları stabil ve sağlıklı bir uçuş için bu modullerden birine sahip olmalıdırlar.
Herkese Merhabalar!Bugün size bilgisayardan gimbal kontrolü projemden bahsedeceğim. Bu projedeki amacım C# ile yazdığım bir arayüzde gimbali kontrol etmek. Gimbal ve bilgisayar arasında haberleşmeyi sağlaması ve servoları kontrol etmesi için bir arduino yerleştirdim. C# arayüzünün görevi, tıkladığım butonlara göre arduinoya “serial port” üzerinden gönderilecek karakteri değiştirmesidir.
Herkese Merhabalar! Bu projemin amacı MPU6050 ile hesaplanan pitch ve roll açıları ile 2 eksenli bir gimbalı kontrol etmek. MPU6050 açılarını hesaplamak için FreeIMU kütüphanesini kullandım. Buradan indirebilirsiniz. Aldığım açılar belli bir değerden büyükse servoların açılarını kademeli olarak azalttım veya artırdım.
Herkese Merhabalar! Yaptığım projeleri arşivleyebilmek ve bunlardan herkesin yararlanabilmesi için blog açmaya karar verdim. Blogumda size C# üzerinden arayüz yapımı, bilgisayar mikroişlemci iletişimi, arduino uygulamaları, pic uygulamaları ve basit sensörlü elektronik alanında projeleri fotoğraflarıyla ve işin teorisini de anlatarak paylaşmayı planlıyorum. Aynı zamanda az da olsa Android programlamadan(robotik uygulamalar için gerekli olan kısımdan) ve hobi olarak yaptığım oyunları da buradan sizinle paylaşmayı planlıyorum. Elektroniğe merak salmış arkadaşlarımın elimden geldiğince(ben de yolun çok başındayım) en iyi şekilde bilgilendirmek dileğim :). Daha önce üniversitemde uzun mesafe takip sistemleri üzerine çalışmalar yaptım. Gps, IMU, ve daha bir sürü sensörden aldığımız verileri, yer istasyonuna iletmek ve arayüz programıyla bunların görsellenmesiydi görevim. Şimdi ise insansız hava araçları ve görüntü işleme üzerine çalışmaktayım. Aynı zamanda hobi olarak pic ve arduino devreleri, çeşitli devreler üretmeye, yapmaya devam ediyorum. Tekrar görüşmek üzere…