Macademia'nın robotik ve mühendislik programı · ücretsiz seviye tespiti ve kişisel öğrenme yolu

3. ünite / 10

Güç: LiPo, PDB/BEC ve uçuş süresi

ParçaSimülasyonYazılım

Bu ünitenin sonunda

  • LiPo etiketini (S, mAh, C) okumak ve güvenli kullanım sınırlarını söylemek
  • Momentum teorisiyle askıda kalma gücünü hesaplamak
  • Batarya kütlesini hesaba katarak uçuş süresini tahmin etmek
  • PDB, BEC ve güç modülünün görevlerini ayırt etmek

Ders notları

Bir pervane havayı aşağı iterek itki üretir. Momentum teorisine göre ideal güç itkinin 1,5. kuvvetiyle büyür ve disk alanı büyüdükçe azalır:

Pideal = T1,5 / √(2 ρ A)    Pelektrik = n · Pideal / (FM · ηmotor+ESC)

Gerçek pervane idealin ancak %50–75'ini verir (başarım katsayısı FM); motor ve ESC'de de %10–30 kayıp vardır. Örnek: 1,0 kg, dört adet 5 inç pervane, FM 0,65, η 0,8 için askıda ≈ 168 W, 4S'te ≈ 11 A çekilir. 1500 mAh'lık paketin %80'i ≈ 6,4 dakika uçuş eder.

Kapasitenin tuzağı

Daha büyük batarya daha ağırdır; güç kütlenin 1,5. kuvvetiyle büyüdüğü için kapasiteyi ikiye katlamak uçuş süresini ikiye katlamaz. Simülasyondaki eğri bir noktadan sonra düzleşir: oradan sonra eklenen her gram, kendini taşımaya gider.

LiPo kuralları

  • Hücre 3,7 V anma, 4,2 V dolu, 3,8 V depolama; yük altında 3,3–3,5 V altına inme.
  • C × Ah kuramsal sürekli akımdır; üretici C değerine temkinle yaklaş.
  • Dengeli şarj, 1C, gözetim altında; şişmiş paketi kullanma.
  • PDB akımı dağıtır, BEC elektroniğe 5–12 V üretir, güç modülü gerilim ve akımı uçuş kontrolcüsüne ölçtürür.

Simülasyon

Uçuş süresi tahmini: motor, pervane, batarya

Momentum teorisiyle askıda kalma gücü: P = T^1,5 / √(2ρA), pervane başarım katsayısı ve motor × ESC verimiyle bölünür. Batarya büyüdükçe kütlesi de büyür; eğri, kapasiteyi artırmanın neden giderek daha az süre kazandırdığını gösterir.

Simülasyon görevi

Uçuş süresi simülasyonunda X500 benzeri drone'la kapasiteyi 3000'den 12 000 mAh'a çıkar: süre kaç kat arttı? Pervaneyi 10'dan 13 inçe büyüt (motor itkisi aynı): askıda güç ne oldu? Sonra 5" FPV gibi ayarla (0,5 kg, 6S, 1300 mAh, 5 inç) ve C oranını 30'a düşürünce uyarının çıktığını gör.

Kod

Python: momentum teorisiyle uçuş süresi
import math

RHO, G = 1.225, 9.81          # kg/m³, m/s²

def flight_time(dry_kg, cells, mah, prop_in, motors=4, fm=0.65, drive=0.8, avionics_a=0.6, usable=0.8, wh_per_kg=140):
    batt_kg = cells * 3.7 * mah / 1000 / wh_per_kg      # paket kütlesi
    m = dry_kg + batt_kg
    area = math.pi * (prop_in * 0.0254 / 2) ** 2         # disk alanı, m²
    t = m * G / motors                                    # motor başına itki, N
    p_ideal = t ** 1.5 / math.sqrt(2 * RHO * area)        # momentum teorisi, W
    p_elec = motors * p_ideal / (fm * drive)
    amps = p_elec / (cells * 3.7) + avionics_a
    return usable * mah / 1000 / amps * 60, m, amps

for mah in (3000, 5000, 8000, 12000):
    minutes, m, a = flight_time(1.1, 4, mah, 10)
    print(f"{mah:>6} mAh  {m:.2f} kg  {a:5.1f} A  {minutes:5.1f} dk")
# Kapasite 4 katına çıkar, süre 4 katına çıkmaz: paket de taşınır.
Python: gerilim sarkmasını düzelten batarya izleyici
# Yük altında gerilim iç direnç yüzünden düşer: V_dinlenme ≈ V + I·R_iç. PX4: BAT1_R_INTERNAL
CELLS, R_INT = 4, 0.012        # hücre başına iç direnç, Ω
EMPTY, FULL = 3.5, 4.2         # hücre başına V (dinlenme)
LOW, CRIT = 0.25, 0.10         # kalan oran eşikleri

def remaining(v_pack, amps):
    v_cell = v_pack / CELLS + amps * R_INT
    return min(1.0, max(0.0, (v_cell - EMPTY) / (FULL - EMPTY)))

def battery_state(v_pack, amps):
    r = remaining(v_pack, amps)
    if r < CRIT:
        return "CRITICAL", r   # hemen in
    if r < LOW:
        return "LOW", r        # eve dön
    return "OK", r

print(battery_state(14.4, 12.0))   # yük altında 3,6 V/hücre ama aslında yarı dolu

Sık yapılan hatalar

  • Kapasiteyi artırınca uçuş süresinin orantılı artacağını sanmak.
  • Yük altındaki gerilim düşüşünü (sag) batarya bitti sanmak ya da tersine, dinlenme gerilimine bakıp aşırı boşaltmak.
  • Uçuş kontrolcüsünde akım sensörü ölçeğini ayarlamamak: kalan kapasite yanlış hesaplanır, failsafe geç tetiklenir.
  • Dijital VTX'i 5 V BEC'ten beslemeye çalışmak; 9–12 V ister.

Yazılım mühendisliği bağlantısı

Uçuş süresi tahmini bir modeldir; modelin varsayımlarını yazılı tut ve gerçek veriyle doğrula.

  • Varsayımlar: FM, verim, özgül enerji, kullanılabilir kapasite. Her biri bir parametre, kodda sabit sayı değil.
  • SITL ya da gerçek uçuş kayıtlarından (PX4 ULog, battery_status) ölçülen akımla modeli karşılaştır, hatayı rapora yaz.

Kendini sına

  1. 6S 1300 mAh 100C bir paketin kuramsal sürekli akımı nedir?

  2. Askıda 12 A çeken bir drone 5000 mAh paketin %80'ini kullanırsa kaç dakika uçar?

  3. Kapasiteyi iki katına çıkarmak uçuş süresini neden iki katına çıkarmaz?

  4. LiPo hücresinin depolama gerilimi kaç volttur?

Bu üniteden sonra bitirme projesinde

  • Öneri ve gereksinimler: İki sayfa: G1–G6'yı kendi cümlelerinle test edilebilir yaz, parça listesi ve itki/ağırlık, uçuş süresi hesabı (simülasyonlardan), risk ve tehlike listesi. Depo açıldı, CI ilk testi çalıştırıyor.

Bu ünitenin parçaları

3B modelli gerçek Hyvex parçaları:

Esc
  • PanelAna sayfaSayfa
  • ModüllerTüm modüllerSayfa
  • ParçalarParça ansiklopedisiSayfa
  • Mühendislik yoluBüyükler için robotik: 128 parça, 7 seviyeSayfa
  • Robotik dersi (ESOF 323)Üniversite robotik dersi, 14 haftaSayfa
  • Drone dersiBüyükler için: parça, simülasyon, yazılım; 10 üniteSayfa
  • Blok atölyesiSerbest blok programlamaAraç
  • Devre laboratuvarıSanal Arduino ve devreAraç
  • Robot arenasıSanal robot sürüşüAraç
  • OyunlarBloklarla 8 öğretici oyunAraç
  • Mikro Kart atölyesiSanal LED kartı bloklarla programlaAraç
  • Robot atölyesiMikro Kart'ı robota tak, bloklarla görev yapAraç