Gerçek lövye ile model uçurmak

Gerçek lövye ile model uçurmak

Mehmet'ciğim ekran zaten çok küçük. Bunları oraya sığdırmak mümkün olsa da okuyabilmek güç olur. Ama fikir mükemmel. Akşam yazılımın son halini test edip kusursuz çalıştığından emin olduktan sonraki planım daha büyük bir gösterge paneli eklemek. O zaman bu dediğini zevkle eklerim sisteme. Notumu aldım. Sağol.
 
Gerçek lövye ile model uçurmak

Sümer Yamaner' Alıntı:
Orhanlı ekibinden sevgili Bülent Tunçay abimin oğlu Aykut modelcilikle biraz ilgilense de daha çok elektronik, elektromekanik gibi işlerde yetenekli. Bir B737 kokpiti tasarlamakla meşgul. O arada 3D yazıcılarla da haşır neşir. Bu kolu yapıp getirmiş. Gaz kolu da olur flap kolu da.
Aykut kardeşimizin eline sağlık, bence şahane bir flap kolu olmuş. :thumbup: Bu kol birde kademelendirilirse tadından yenmez bence. :halay:
 
Gerçek lövye ile model uçurmak

Türker Akgün' Alıntı:
Aykut kardeşimizin eline sağlık, bence şahane bir flap kolu olmuş. :thumbup: Bu kol birde kademelendirilirse tadından yenmez bence. :halay:

B737 için kademelisini planladı bile. :) Muhtemelen rotary switch kullanacak.
 
Gerçek lövye ile model uçurmak

Evet arkadaşlar. Hiç bilgisayar kullanmadan aileron, elevatör ve rudder için endpoint, expo ve reverse, throttle için çift endpoint ve reverse, kanal 5 ve 6 için reverse ayarlarının yapılabildiği ve kart hafızasında saklanabildiği aşamaya geldik. Tüm testler yapıldı. Birkaç ekran görüntüsü de paylaşayım...
Şu anki tek eksiğimiz model adının değiştirilmesi. O da yarın akşama inşallah...

[attachimg=1]

[attachimg=2]

[attachimg=3]

[attachimg=4]
 

Ekli dosyalar

  • pic0001.jpg
    pic0001.jpg
    74.3 KB · Görülme: 157
  • pic0002.jpg
    pic0002.jpg
    76.8 KB · Görülme: 157
  • pic0003.jpg
    pic0003.jpg
    74.7 KB · Görülme: 156
  • pic0004.jpg
    pic0004.jpg
    76.2 KB · Görülme: 156
Gerçek lövye ile model uçurmak

Ellerine saglık abi :halay:


Sent from my iPhone using Tapatalk
 
Gerçek lövye ile model uçurmak

Tam planlandığı gibi takvim günü bitmeden iş bitti! :)
Artık model adını da tıklaya tıklaya değiştirebiliyoruz. Yani model adı, epa, expo ve reverse ayarlarını bilgisayar bağlantısına gerek olmadan yapmak mümkün hale geldi. Yani neredeyse Futaba 6E falan gibi bir kumandamız oldu. :D
Ancak...
Tıklamalar özellikle model adı ayarlarkan can sıkıyor. Becerebilirsem yazılıma butona bir süre bastıktan sonra hızlı geçiş özelliği kazandırmayı planlıyorum. Ama daha şık çözüm, Arduino Nano'nun boşta kalan üç bacağından ikisini kullanıp bir rotary encoder eklemek.

Şaka maka 1436 satır kod yazmışım! Atmega328 işlemcinin hafıza kapasitesinin % 80'ini kullanıyorum. :thumbup:
 
Gerçek lövye ile model uçurmak

Yakında o atmega işlemci , Sümer abinin bu durdurulamaz performansına dayanamayıp , dumanı tüterse şaşırmayın arkadaşlar... :laugh: 1436 satır :eek: Söylerken bile insan yoruluyor , valla helal olsun Sümer abi , maşallah diyorum , başka da söylenecek tek kelime bulamadım... :saygilar:
 
Gerçek lövye ile model uçurmak

Abi Tebrikler harika işler yapıyorsun, ilerde hiç bir kumanda da olmayan bluetooth klavye eklersen hiç şaşırmam hani tabletler için olanlardan minicik bişey :)

SM-G900F cihazımdan gönderildi
 
Gerçek lövye ile model uçurmak

Valla dayanamadım. Buton kontrol bölümüne bir ek yaptım. Rudder trim butonları ile yapılan ayarda butonu basılı tutunca değer saniyede iki olacak şekilde değişiyor. Ayarı inanılmaz kolaylaştırdı. Rotary encodere şimdilik gerek kalmadı.
 
Gerçek lövye ile model uçurmak

Bakalım işlemcimiz ne zaman %100 ulaşacak :D


Sent from my iPhone using Tapatalk
 
Mustafa Çoban.' Alıntı:
Abi Tebrikler harika işler yapıyorsun, ilerde hiç bir kumanda da olmayan bluetooth klavye eklersen hiç şaşırmam hani tabletler için olanlardan minicik bişey :)

SM-G900F cihazımdan gönderildi

Eşeğin aklına karpuz kabuğu düşürmek nedir bilir misin? :D
 
Mehmet Kucuksari' Alıntı:
Bakalım işlemcimiz ne zaman %100 ulaşacak :D


Sent from my iPhone using Tapatalk

Bugünkü ufak tefek düzeltmelerle 1464 satıra ulaştık.

Sketch uses 23,704 bytes (77%) of program storage space. Maximum is 30,720 bytes.
Global variables use 1,653 bytes (80%) of dynamic memory, leaving 395 bytes for local variables. Maximum is 2,048 bytes.
Low memory available, stability problems may occur.


Model seçimi ya da programlama modlarına girildiğinde PPM çıkışı son kaldığı konumda devam ediyordu. Onu düzelttim. Artık lövye programlama modunda da çalışmaya devam ediyor. Programlarken uçacak değiliz tabii ama özellikle reverse ve endpoint ayarı yaparken ayarın etkisini real time görmek işi kolaylaştırıyor.

Bu arada, GitHub olayını kavrayamadığım için günlük yazılım örneklerini günün tarihini ekleyerek kaydediyorum. Versiyon sıkıntısı olmuyor. :D
 
Gerçek lövye ile model uçurmak

Yedekleme ıcın ben de gunün tarihini ve hatta gerekli haller de saatini de kullanıyorum abi :)


Sent from my iPhone using Tapatalk
 
Gerçek lövye ile model uçurmak

Projenin ilk büyük aşaması test uçuşu idi. Ondan sonraki büyük aşama tamamıyla programlanabilir bir sistemin oluşması idi. Şu anda bu aşamaya gelmiş bulunuyoruz.
Son sıkıntım, programlama ve ayar esnasında kanalları istediğim kalitede okuyamamak idi. Kanalların okunması ve gerekli endpoint, reverse ve expoların uygulanması için bir altprogram var. void readall(). Ben aklıma geldikçe bu altprogramı çağırıp değerleri okutuyordum. PPM çıkışı ise zaten timer interruptlar ile otomatiğe bağlı halde. Normal koşullarda sorunsuz çalışan bu sistem, programlama moduna girildiğinde readall() işlevinin düzensiz çağrılması sonucu istediğim kalitede çıkış üretemiyordu. Daha da kötüsü Aurora'nın trainer bağlantısının bir özelliği olarak, arada kısa süreli sinyal kesikliği bile olsa kumanda trainer bağlantısı kesildi düşüncesiyle artık normal moda geçiyor. Kumandayı açıp kapatmak gerekiyor.
Sonra düşünürken, interrupt servis rutininde son kanal sinyali de verildikten sonra readall() işlevinin çağrılmasının çok daha düzenli bir okuma sağlayacağını farkettim. Böylece koddan tüm readall() komutlarını kaldırdım. Sadece interrupt servis rutini içinden çağrılıyor. Bu da her 22.5 mS'de bir düzenli olarak çağrılması anlamına geliyor. Bu şekilde programın ana loop'unda sadece butonların okunması işlevi kaldı.
Son durumda;
- PPM sinyali interrupt ile üretildiği için kesintisiz ve sorunsuz devam ediyor.
- Kesintisiz ve sorunsuz PPM sinyali nedeniyle ana kumandada trainer modu konusunda sorun yaşanmıyor.
- Kanal değerlerinin okunması da interrupt üzerinden kesintisiz yapıldığı için stick ve buton değerleri sürekli güncel kalıyor ve çıkışa aktarılıyor.
- Sistemi programlarken hatta model adını edit ederken bile sitck ve butonlar aktif kalıyor hatta OLED ekrandaki kanal verileri de güncelleniyor.
- İstenirse sistemin çıkışına herhangi bir 2.4 GHz verici modülü takılarak uçağın doğrudan kontrolü de mümkün.

Bu arada sistemi 8 kanal PPM sinyali üretir hale getirdim. Yedinci ve sekizinci kanallar şimdilik 1500 mikrosaniyede sabitlenmiş durumda. İleride onları da devreye alabilirim diye hazırlık yapmış oldum.
Artık yazılımı uzunca bir süre ellememeyi düşünüyorum. Bundan sonra yoğunlaşacağım nokta, sistemin mekanik altyapısının iyileştirilmesi olacak. Artık bu konuda kafa patlatacağım. Bakalım nasıl olacak...