RC sinyali pulse süresi göstergesi
Sümer Abim eline sağlık. Tam olarak son bir iki haftadır üzerinde düşündüğüm (ve teorik olarka çalıştığım) şeye el atmışsın.
Pulse süresini hangi yöntemi kullanarak okuduğunu merak ettim ama paylaşırsan sevinirim.
Ben ne diye bunun üzerine kafa yoruyordum diye sorarsan; malum benim Hurricane modelimde motor ses efektleri için ses sistemi kullanıyorum. Ses sisteminde motor çalıştırma ve ve durdurma için ayrı ayrı sesler de tanımlı ve bu sesler gerçek uçağın sesinden doğrudan kayıt edilmiş sesler. Doğal olarak hem motor çalışma hem de durma sekansları nispeten uzun süreli gerçekleşiyor, bu süreler bizim model ölçeğindeki motor-pervane sistemlerinin düşük eylemsizlikleri nedeniyle kolaylıkla benzeştirilemiyor. Eğer hiçbir ayar yapmadan direk ses devresi ve motor birbirine bağlanırsa, motor çalışınca doğal olarak anında pervane dönmeye başlıyor, ama arka plandaki ses önce motor starterinin devir alması, sonra pervanenin hafif hafif dönmeye başlaması, motorun öksürüp canlanması vs derken bihayli geriden geliyor. Keza motorun durdurulmasında da benzer şekilde pervanenin dönüşü ile ses arasında bir senkronsuzluk oluyor. Sen beni gayet iyi tanıyorsun ama tanımayanlar için söyleyeyim, modeli bu şekilde kullanmaktansa yakarım daha iyi
O yüzden üreticinin tavsiyesi dışına çıkıp ses devresi ile ESC'yi alıcıda ayrı kanallara bağlayıp radyomda programlama yapıp hem iki giriş çıkışlara gecikme atadım hem de uygun miktarlarda yavaşlatma tanımladım. Sonuç şu videoda:
Bu VIDEOYU görmek için izniniz yok. Giriş yap veya üye ol
Sonuç çok kötü değil (hatta bu videodan sonra birazcık daha iyi senkron da sağlayabildim), ama mükemmel de değil. O yüzden bunu daha da iyi yapmak için kafa yormaktaydım. Aslında tam olarak istediğim şey, özellikle ilk çalışma sırasında gerçek motorun fasılalı ateşlemesini benzeştirecek şekilde pervanenin darbeli bir şekilde dönmeye başlayıp ses sistemindeki ses kaydı kararlı rölanti devrine ulaştığında pervanenin de kararlı bir devirle dönmesini sağlayabilmek. Tabiki böyle bir şeyi radyo miksleri ile başarmak, en azından elimdeki mevcut radyo ile, imkansız.
Planıma geçmeden önce şu anki çalışma sistemimi açıklayayım:
Motor çalıştırma ve stop için kumandamda bir anahtar atadım. Bu anahtar "motor çalıştır" konumuna gelince ESC'ye ve ses devresine rölanti devrinin sinyali gidiyor, ses devresi çalıştırma sekansını başlatıyor motor dönmeye başlıyor (tanımladığım yavaşlatma ve gecikmelerle ses ile hemen hemen aynı anda motor dönmeye başlıyor). Uçuş boyunca bu anahtar aynı konumda kalacak, yani gaz kolunu sonuna kadar geri çeksem bile motor durmuyor, rölantide dönmeye devam ediyor ve ses devresi de "motor kapatma" sekansına geçmiyor. İniş sonrası taksi ve parka ulaşınca aynı anahtar "motor kapalı" konumuna getiriliyor ve ses devresi motor durdurma efektini oynatmaya başlarken motor da olabildiğince uyumlu bir şekilde yavaş yavaş duruyor.
Yapmayı istediğim şey ise şu:
Alıcı ile ses sistemi ve ESC arasında bir mikroişlemcili devre koymak. Bu devre aynı zamanda uçağın ışık sistemlerini de kontrol edecek amao ayrı hikaye
. Bu devre ile motor çalıştırma sırasında yukarıda da yazdığım gibi modelin motoruna gaz sinyallerini darbeli olarak yollayıp pervanenin sese uyumlu olarak hareket etmesini sağlamak motor çalıştırma sekansı tamamlanınca (zaman tanımlaması yapılabilir zira çalıştırma süresi net ve sabit) alıcıdan gelen sinyali doğrudan ESC ve ses devresine iletmek. kısacası uçuş boyunca bu devre hiçbirşeye karışmayıp sadece alıcıdan gelen sinyali aynen aktaracak (güvenlik gerekçesi). Uçuş sonlandırılıp uçak park edilip motor kapatma komutu geldiği andan itibaren de devre tekrar devreye girip ESC ye motorun sesle uyumlu bir şekilde yavaşlayıp durması için gereken sinyalleri gönderecek.
Gelelim olayın teknik kısmına;
Yukarıda yazdıklarımı yapabilmek için devrenin her şeyden önce alıcıdan gelen sinyali okuyup anlayabilmesi gerekli, tercümesi, sinyal pulse süresini ölçmesi gerekiyor
bu kısım için gerekli kodları ve kütüphaneleri buldum, bulduğum kütüphane 0.5 microsaniye hassasiyetinde süre ölçümü yapabiliyor (bu kütüphaneyi yazan da bizim gibi kafadan arızalı bir modelci)
İkinci ana nokta, mikroişlemcinin ESC ye önceden programlanmış sinyalleri göndererek motorun istediğimiz şekilde davranmasını sağlayabilmesi lazım.
Son olarak da çalıştırma sekansı bitince (zamanlama kontrollü) ve/veya kumandadaki anahtarın "motor çalışıyor" sinyalini aldığı sürece (giriş sinyali eşik değer tanımlanarak) alıcıdan gelen sinyali aynen ESC ve ses devresine aktarması gerekli. Bu kısımda bir nevi "fail safe" oluşturulup sinyalin aslında devreden bağımsız olarak "by-pass" yapılarak aktarılması mümkün olursa sanırım en güvenli seçenek olur.
İlgini çekebildim mi acaba
Ben her şekilde bunun üzerinde uğraşmaya devam ediyorum (tuvalet mesaileri), ama ilgini çekerse sen de bir el at istersen, Türkiyeye geldiğimde karşılıklı oturup fikir tokuşturabiliriz...