
ŞEK. 01
KAYIT KÜNYESİ
Kategori
Mekanik
TARİH
Sahada bu iki şikâyet neredeyse her zaman birlikte gelir. Birincisi: araç Loiter'da pozisyonunu koruyor ama irtifası yavaş yavaş yukarı kayıyor ve yer istasyonunda "Vibration compensation ON" mesajı beliriyor. İkincisi: aynı uçuşun videosunda dikey çizgiler, görüntü jöleye dönüşmüş gibi dalgalanıyor.
Bunlar iki ayrı arıza değil. İkisi de aynı kök nedenin, gövdedeki mekanik titreşimin, iki farklı sensörde kendini göstermesi. Uçuş kontrolcüsü üzerindeki IMU (atalet ölçüm birimi: ivmeölçer + jiroskop) titreşimi gerçek hareket sanıyor ve konum kestirimi bozuluyor. Kameranın CMOS sensörü ise titreşimi doğrudan görüntünün içine kaydediyor.
Bu yazıda titreşimi nasıl ölçtüğümüzü, frekansını nasıl bulduğumuzu ve yazılım çözümünü (notch filtre) mekanik çözümlerin (balans, izolasyon, gimbal) karşısında hangi sıraya koyduğumuzu anlatıyoruz. Sıra önemli: önce ölç, sonra mekanik olarak azalt, en son filtrele.
Titreşimin iki kurbanı var
IMU tarafı. ArduPilot'un EKF'i (Genişletilmiş Kalman Filtresi) ivmeölçer verisini barometre ve GPS ile birleştirerek hız ve konum kestirimi üretir. İvmeölçere binen yüksek frekanslı gürültü bu kestirimi bozar; en tipik sonuç da irtifa kontrolünün dağılmasıdır. ArduPilot tam bu durum için varsayılan olarak açık gelen bir titreşim failsafe'i (güvenli-mod) barındırır (FS_VIBE_ENABLE). EKF'in dikey hız ve dikey konum innovation değerleri pozitifken hız varyansı 1 ve üzerine çıkarsa ve bu durum 1 saniye sürerse, uçuş modu değişmeden irtifa kontrolü titreşime daha dayanıklı (ama daha az hassas) bir algoritmaya geçer. Yer istasyonunda "Vibration compensation ON" mesajını görürsünüz; EKF normale döndükten 15 saniye sonra araç bu durumdan çıkar.
Burada yaygın bir yanılgıyı düzeltelim: Loiter'da giderek genişleyen spiral, yani "toilet bowl" etkisi, ArduPilot dokümantasyonunda her şeyden önce pusula problemine bağlanır (genellikle FC'nin altından geçirilen güç kablolarının manyetik girişimi). Titreşimin imzası farklıdır: irtifa kayması, konum gezinmesi ve logdaki yüksek VIBE değerleri.
Kamera tarafı. CMOS sensörlü kameralar kareyi satır satır okur (rolling shutter). Bu okuma sürerken sensör sallanıyorsa üst satırlarla alt satırlar sahneyi farklı anlarda görür ve düz direkler eğrilip oynamaya başlar. Jello etkisi budur. ArduPilot dokümantasyonu jello'yu doğrudan dengesiz pervane ve motorlara bağlar. Yüksek frekanslı bileşen ayrıca pozlama süresi boyunca hareket bulanıklığı üretir; bu da YOLO tabanlı tespit hattımızın girdisini kaynağında bozar.
Kaynaklar ve ele veren belirtileri
Kaynak | Tipik belirti | İlk bakılacak yer |
|---|---|---|
Pervane dengesizliği | X ve Y birlikte yüksek | Pervane balansı, çatlak ve çentikler |
Motor balansı / rulman aşınması | X ve Y birlikte yüksek | Motoru elle çevirin, boşluk veya pürüz var mı hissedin |
FC montajı (fazla rijit veya fazla gevşek) | Yalnızca X veya yalnızca Y yüksek | Sönümleme malzemesi ve kablo gerginliği |
Pervane tracking hatası, eğri mil | Z ekseni yüksek | Adaptör merkezlemesi, motor milindeki boşluk |
Kol/gövde rezonansı | Belirli bir gaz bandında ani sıçrama | Kol rijitliği, gevşek vidalar |
Bu eksen bazlı ayrıştırma ArduPilot'un titreşim ölçümü sayfasından geliyor ve arıza bulma süresini ciddi biçimde kısaltıyor.
Güvenlik. Pervane balansı ve motor kontrolleri, pervaneler motorlardan sökülü ve batarya ayrılmış haldeyken yapılır. Çatlak, çentikli veya onarılmış bir pervaneyi asla kullanmayın: dengesizlik onun en küçük sorunudur, çünkü dönerken parçalanabilir. Bataryayı ancak pervaneler takıldıktan ve araç sabitlendikten sonra bağlayın.
Ölçüm: VIBE mesajı ve eşikleri
ArduPilot her uçuşta bir VIBE mesajı loglar. VibeX/VibeY/VibeZ değerleri, birincil ivmeölçer çıktısının standart sapmasıdır ve m/s/s cinsinden verilir. Clip0/Clip1/Clip2 sayaçları ise bir ivmeölçer ölçüm sınırına (16G) her ulaştığında artar.
Ölçüm | Değer | Anlamı |
|---|---|---|
VibeX/Y/Z | < 30 m/s/s | Normalde kabul edilebilir |
VibeX/Y/Z | 30–60 m/s/s | Konum/irtifa problemleri olası |
VibeX/Y/Z | > 60 m/s/s | Neredeyse her zaman problem |
Clip sayaçları | 0 | Hedef |
Clip sayaçları | < 100 (sert iniş vb.) | Kabul edilebilir |
Clip sayaçları | Log boyunca sürekli artıyor | Ciddi titreşim problemi |
İlk adım, logu Mission Planner'da açıp VIBE grafiğini çizmek. Uçuşa bütün olarak bakmayın; hover ve ileri uçuş bölümlerine ayrı ayrı bakın, çünkü bazı rezonanslar yalnızca belirli bir gaz bandında ortaya çıkar.
Frekansı bulmak: batch örnekleme ve FFT
Genlik "problem var mı?" sorusunu, frekans ise "nereden geliyor?" sorusunu yanıtlar. ArduPilot ham IMU örneklerini loga yazabilir:
Kısa bir hover uçuşundan sonra Mission Planner'ın FFT aracı dört spektrum çizer: ACC0/ACC1 (filtre öncesi/sonrası ivmeölçer) ve GYR0/GYR1 (jiroskop). Dokümantasyondaki örneklerde motor kaynaklı tepe, küçük bir araçta ~200 Hz, büyük bir Copter/QuadPlane'de ~100 Hz civarında oturuyor; 5 inçlik bir quadda hover'da 180 Hz'te belirgin bir tepe görülmüş.
Beklediğiniz frekansı önceden hesaplayabilirsiniz:
f_motor= RPM / 60 (Hz), dengesizliğin temel frekansı
f_blade= (RPM xblade_count) / 60 (Hz), pala geçiş frekansı
Örnek hesap: ESC telemetrisi hover'da 4800 RPM bildiriyor ve pervane 2 palalı:
f_motor= 4800 / 60 = 80 Hzf_blade= (4800 x 2) / 60 = 160 Hz
Spektrumda 80 Hz'te bir tepe görünüyorsa kaynak pervane/motor dengesizliğidir. Ölçtüğünüz tepenin gerçekten motorlardan mı yoksa bir gövde rezonansından mı geldiğini ayırt etmenizi sağlayan şey bu hesaptır.
Notch filtre: gürültüyü tam yerinden kesmek
Toptan alçak geçiren filtreler (INS_GYRO_FILTER, INS_ACCEL_FILTER) bütün yüksek frekansları birlikte bastırır ve kontrol döngüsüne gecikme ekler. Harmonik notch filtre ise yalnızca motor frekansını ve harmoniklerini keser. Motor RPM'i gazla değiştiği için notch'un merkez frekansının onu takip etmesi gerekir; bunu da INS_HNTCH_MODE belirler:
Mod | Kaynak | Ne zaman kullanılır |
|---|---|---|
0 | Sabit frekans | Sabit RPM'li sistemler, hızlı denemeler |
1 | Gaz tabanlı (varsayılan) | ESC telemetrisi yokken (en yaygın tercih) |
2 / 5 | Harici RPM sensörü | Sensör takılıysa |
3 | ESC telemetrisi | ESC'ler RPM bildiriyorsa en doğrudan yöntem |
4 | Uçuş içi FFT | Başka hiçbir şey yokken; dokümantasyon, FFT hesabının gecikmesinin bunu iyi kurulmuş bir gaz tabanlı notch'tan daha kötü hale getirebileceğini belirtiyor |
Gaz tabanlı bir kurulum için dokümantasyon şu ilişkileri veriyor:
Parametre | Değer | Not |
|---|---|---|
| 1 | |
|
| FFT'den okunan hover tepe frekansı |
|
| |
|
|
|
Geniş bir gaz aralığında daha iyi takip için bunun yerine şu referansı kullanın:
INS_HNTCH_REF=hover_thrustx (min_freq/hover_freq)^2
Örnek hesap: hover_freq = 80 Hz, hover_thrust = 0.35 ve logda görülen en düşük frekans min_freq = 60 Hz:
INS_HNTCH_FREQ= 80INS_HNTCH_BW= 80 / 2 = 40INS_HNTCH_REF= 0.35 x (60/80)^2 = 0.35 x 0.5625 = 0.197 -> ~0.20
FFT modunu kullanacaksanız FFT_ENABLE = 1 yapın (yeniden başlatma gerekir), INS_HNTCH_MODE = 4 ve INS_HNTCH_REF = 1 olarak ayarlayın (ölçekleme yok). INS_HNTCH_HMNCS ile temel frekansın katlarındaki harmonikleri de filtreleyebilirsiniz.
Filtre çözüm değil, üstünü örtmedir. Önce mekaniği düzeltin.
Mekanik çözüm: balans ve izolasyon
ArduPilot'un titreşim sönümleme sayfasının özü şu: pervaneler iyi bir manuel balans aletiyle dengelenmeli, motor rulmanlarında aşınma olmamalı, pervane adaptörü merkezli ve salgısız olmalı. Dokümantasyonun deyişiyle, özellikle ucuz motorlarda motor balansı büyük fark yaratabiliyor. Kollar yapabildiğiniz kadar rijit olmalı: alüminyum veya karbon fiber kollar daha az eğilip burkulur, dolayısıyla daha az titreşim aktarır.
Uçuş kontrolcüsünü izole ederken amaç, yüksek ve orta frekanslı titreşimi zayıflatırken kartın gerçek düşük frekanslı hareketini geçirmeye devam etmektir. Kullanılan yöntemler: köpük (çift taraflı yapışkanlı, dört köşeye 1–2 cm'lik kareler halinde), jel bant, 3D baskı damper yatakları, O-ring askı ve kulak tıkaç montajı.
Kritik nokta, damper sertliğinin izole edilen kütleyle eşleşmesidir. Dokümantasyon bu konuda açıkça uyarıyor: piyasadaki hazır çözümlerin neredeyse tamamı, ortalama bir otopilottan en az 5–10 kat ağır bir kütle için tasarlanmış. Yani kötü seçilmiş bir damping ball, hiç damper olmamasından daha kötü olabilir. Fazlası da azı kadar zararlı.
Sık gözden kaçan bir başka ayrıntı: kablolama. FC'ye giden kablolar sert ve gergin çekilmişse titreşim izolasyonu tamamen atlar. Dokümantasyonun önerisi, her kabloda esnek tel ve gerilim azaltıcı (strain relief) kullanmak.
Gimbal: 2 eksen mi, 3 eksen mi?
Gimbal, gövde yönelimindeki düşük frekanslı değişimleri (roll, pitch) telafi eden aktif bir sistemdir. Yüksek frekanslı titreşimi çözmez; onu kameranın kendi yatağındaki yumuşak ara katman halleder.
2 eksen (pitch + roll) | 3 eksen (pitch + roll + yaw) | |
|---|---|---|
Neyi telafi eder | Pitch ve roll | Pitch, roll ve yaw |
Ağırlık / güç | Daha düşük | Daha yüksek |
Ne zaman kullanılır | Ağırlıklı olarak nadir (dik aşağı) görüşle geçen görevler; dar ağırlık bütçesi | Sabit bir hedefe kilitli kalması gereken görevler, yatay veya eğik görüşler |
SUAS 2026 aracımızda SIYI A8 mini kullanıyoruz (3 eksen, 1080p RTSP, 81° yatay FOV). ArduPilot tarafındaki kurulum:
Nadir görüş (pitch = -90) görüntü işleme açısından önemli: kamera dik aşağı bakarken görüntü düzlemi yere paralel olur, ölçek kare boyunca yaklaşık sabit kalır ve piksel-metre dönüşümü tek bir irtifa değerinden yapılabilir. Eğik görüşte aynı nesne karenin üstünde farklı, altında farklı piksel boyutuna sahiptir; bu da ölçek varsayımına dayanan yöntemleri, örneğin SAHI dilimli çıkarımını, zorlaştırır. Açıyı sabit tutmak, kareden kareye kayan bir perspektif yerine tutarlı bir görüntü akışı verir; bu açıyı görev boyunca korumak için de companion computer'dan gimbal komutlarını MAVLink üzerinden gönderiyoruz.

Sık yapılan hatalar
FC'yi doğrudan gövdeye vidalamak. Rijit bir montaj, gövdedeki bütün yüksek frekanslı enerjiyi ivmeölçere aktarır. Tersi de hata: fazla yumuşak bir montaj kartı kendi düşük frekansında salınmaya başlatır ve EKF bunu aracın hareketi sanır.
Yanlış sertlikte damping ball kullanmak. Otopilotun kütlesine göre fazla sert bir damper hiçbir şey sönümlemez; fazla yumuşak olanı ise rezonansa girer. Damperin izole ettiği toplam kütleyi hesaba katın (FC ve üzerine bağlı her şey).
Kabloları gergin çekmek. Titreşim damperden değil kablodan geçer. Her kabloda pay bırakın.
Hasarlı bir pervaneyi "idare eder" diye uçurmak. Çentikli veya onarılmış pervane hem dengesizdir hem de güvenlik riskidir.
Mekanik bir problemi notch filtreyle örtmek. Clip sayacı artıyorsa ivmeölçer zaten doyuma gidiyordur ve doymuş bir sensörü hiçbir filtre kurtaramaz.
Kamerayı gimbal'a rijit bağlamak. Gimbal düşük frekansları çözer; jello ise kameranın altındaki yumuşak kauçuk, silikon veya köpük katmanla çözülür.
Titreşimi yer testinde aramak. Titreşim imzası hover'da ve gaz değişimlerinde ortaya çıkar; motorları tezgâhta döndürmek geçerli veri vermez.
Pratik özet
Önce ölçün. Her uçuştan sonra
VIBEgrafiğine ve clip sayaçlarına bakın. Hedef: üç eksende de 30 m/s/s altı, clip sayaçları düz.Sonra frekansı bulun.
INS_LOG_BAT_MASK=1veINS_LOG_BAT_OPT=4ile kısa bir hover uçuşu yapın, Mission Planner'ın FFT'sinden tepe frekansını okuyun veRPM/60ile beklediğinizle karşılaştırın.Mekaniği düzeltin. Pervane balansı, motor rulmanları, adaptör merkezlemesi, kol rijitliği, vida torku. Bu adımı atlarsanız sonrasındaki her şey palyatif kalır.
İzolasyonu kütleye göre boyutlandırın. Damper sertliğini FC'nin kütlesine göre seçin, kablolarda pay bırakın ve gimbal yatağını gövdeden ayrı bir problem olarak ele alın.
En son filtreleyin. Harmonik notch'u ölçtüğünüz hover frekansına göre kurun (
FREQ = hover_freq,BW = hover_freq/2,REF = hover_thrust) ve değişikliği yeni bir logla doğrulayın.
Bu sırayı bozmamak, SUAS 2026 hazırlığımızda bize en çok zaman kazandıran alışkanlıklardan biri oldu. Titreşim, uçuş kontrolüyle görüntü işlemeyi aynı anda vuran o birkaç ortak değişkenden biri; onu doğru dürüst ölçmeye başladığınızda iki tarafta birden kazanıyorsunuz.
