Ana İşlemci

Bu sayfa, B107AA R6 ana işlemcisinin (MCU) mimarisini, tasarım kararlarını ve alt dokümanlara bağlantıları tek bir “ana sayfa” altında toplar. Buradaki hedef, şematikte dağınık görünen detayların firmware + donanım perspektifinde okunabilir bir bütün hâline gelmesidir.
Genel Bakış
B107AA platformunda ana işlemci; saha girişlerini izler, enerji/ölçüm katmanından verileri toplar, zamanlama politikalarını (periyot, olay bazlı gönderim) uygular ve GSM üzerinden telemetri/komut kanalını yönetir.
R6 firmware yaklaşımı özetle:
- Sistem çoğu zaman idle/loop karakterindedir.
- İş akışı interrupt → flag → loop’ta işleme prensibiyle ilerler.
- Şebeke var iken GSM online; şebeke kaybında 30 dk “gidiş‑geliş” penceresi sonrası batarya moduna geçiş politikası uygulanır.
R5 → R6 Durumu ve Yol Haritası
- R6’da ana MCU olarak ATmega2560 mimarisi korunur (R5 ile uyumluluk).
- MCU değişimi (STM’e geçiş) R7 yol haritasına alınmıştır; sahada “yumuşak geçiş” ve pilot testlerle ilerlenir.
Bu kararın gerekçesi:
- R5 sahada çalışır durumda; R6’da riskli sistem değişiklikleri azaltılır.
- R6 odak: güç katmanı revizyonları, giriş algılama sağlamlaştırma, dokümantasyon ve üretim süreçlerini olgunlaştırma.
Alt Doküman Haritası
- İşlemci seçimi: neden ATmega2560, alternatifler, R7 (STM) planı
- Pinout: port bazlı pin haritası ve blok eşleşmeleri
- Interrupt mimarisi: R6 kesme kaynakları ve firmware akış prensipleri
- Haberleşme altyapısı: UART/I2C/SPI/RS‑485/LoRa (donanım + protokol + hata senaryosu)
- Hafıza kullanımı: SRAM/Flash/EEPROM stratejisi, JSON buffer yaklaşımı
- Reset/Watchdog: harici watchdog (MAX6369), reset davranışı
- Clock: 7.3728 MHz kristal seçimi, UART stabilitesi
Mimari Bileşenler
Aşağıdaki şema, MCU’nun sistem içindeki yerini “blok bazlı” gösterir.
Güç ve Çalışma Modu İlişkisi
MCU 3V3 ile çalışır. Bu seçim;
- kart üzerindeki I/O ve çoğu çevre birimiyle seviye uyumunu kolaylaştırır,
- güç bütçesini sadeleştirir,
- saha cihazında gereksiz 5V lojik taşımayı azaltır.
Çalışma politikası (özet):
- Şebeke var: GSM açık, periyodik telemetri aktif.
- Şebeke kaybı: anlık “power lost” olayı raporlanır; GSM hemen kapanmaz, 30 dk beklenir.
- 30 dk sonra hâlâ şebeke yok: GSM kapanır, periyodik RTC alarmları kapatılır; sistem düşük aktivitede loop’ta bekler.
- Şebeke tekrar gelirse: sistem yeniden başlar, GSM bağlanır ve durum raporlanır.
Not: Batarya modunda deep‑sleep hedeflenmez; bu ürünün politika tercihi “basit ve deterministik akış”tır.
Clock Seçimi (7.3728 MHz)
MCU harici kristal ile çalışır.
- Seçim: 7.3728 MHz
- Gerekçe: AVR tarafında UART baud bölücüleri için 7.3728 MHz gibi “telekom” frekansları, yaygın baud rate’lerde hatayı minimize eder.
Kristal yük kapasiteleri için genel ilişki:
Simetrik seçilimde (C1 = C2 = C):
Uygulamada
C_stray(PCB + pin) tipik birkaç pF’tir. Bu nedenle seçilen kapasiteler şematikteki kristal datasheet’i ile birlikte değerlendirilir.
Reset / Watchdog / Boot Davranışı
- Kullanıcı reset butonu kutu dışına alınmıştır; sahada manuel reset mümkündür.
- Sistem kitlenmelerine karşı harici watchdog (MAX6369) bulunur.
- Reset sonrası güvenli durum: röle çıkışları default OFF.
R6 prensibi:
- ISR içinde iş yapılmaz; yalnız flag set edilir.
- Watchdog feed mekanizması “ana akış sağlıklı” iken yapılır; modem gibi bloklayıcı durumlarda sistem kendini toparlar.
Interrupt Mimarisi (R6 Kaynaklar)
R6’da aktif interrupt kaynakları:
- 8ch sense (PORTK / PCINT): pano değişimleri
- RTC alarm: periyot tetikleme
- GSM RING/RI: modem komutu/uyarı
- RS‑485: yerel komut
- Enerji analizörü 2x alarm: limit/eşik olayları
R5’ten kaldırılanlar:
- T/H sensör interrupt
- battery gauge interrupt
- charger interrupt
Önceliklendirme ISR içinde değil, loop içi akışta yapılır.
Haberleşme Arayüzleri (Özet)
Bu kartta haberleşme, “UART ağırlıklı” tasarlanmıştır.
- UART/GSM: uplink
- UART/Enerji analizörü: ölçüm
- UART/RS‑485: servis/field
- UART/LoRa: yerel RF
- I2C: DS28C + RTC + sensörler
- SPI: SD
Detaylar için “İletişim Altyapısı” alt sayfasına bakınız.
Komponent Seçimi (MCU Bloğu)
Bu sayfa özelinde “MCU bloğu” aşağıdaki çekirdek bileşenleri kapsar:
- ATmega2560 (3V3) ana MCU
- 7.3728 MHz kristal + yük kapasitörleri
- Reset butonu + reset hattı pasifleri
- Harici watchdog: MAX6369 + set period elemanları
- ICSP programlama erişimi (pad/konnektör)
- Decoupling kapasitörleri (MCU besleme stabilitesi)
Seçilen bileşenler
| Kalem | Önerilen parça | Not |
|---|---|---|
| MCU | ATmega2560 (TQFP‑100) | R5 uyumluluğu, geniş çevre birimi |
| Kristal | 7.3728 MHz (SMD) | UART hata minimizasyonu |
| Watchdog | MAX6369KA‑T | harici WDT / reset üretimi |
| Reset butonu | SMD tactile | kutu dışı erişim |
Alternatifler
- Watchdog alternatifleri: Microchip/Silabs reset supervisor sınıfları (aynı işlev sınıfı, tedarike göre).
- Kristal: aynı frekansta farklı paket/tedarikçi.
Tahmini Maliyet Analizi (MCU Bloğu)
Aşağıdaki maliyetler tahmini BOM amaçlıdır; tedarik kanalı, adet ve kur farkına göre değişir.
Varsayım: düşük/orta adet (100–1000) bandı, standart distribütör fiyatları. Büyük adetlerde MCU fiyatı anlamlı düşer.
| Kalem | Adet | Birim (USD) | Tutar (USD) | Not |
|---|---|---|---|---|
| ATmega2560 (TQFP‑100) | 1 | 9.50 | 9.50 | ana maliyet kalemi |
| Kristal 7.3728 MHz | 1 | 0.18 | 0.18 | SMD |
| Kristal yük kapasitörü | 2 | 0.01 | 0.02 | NP0/C0G tercih |
| Decoupling kapasitörleri | 6 | 0.01 | 0.06 | 100nF (tipik) |
| Reset butonu (SMD) | 1 | 0.06 | 0.06 | kullanıcı reset |
| Reset hattı pasifleri | 2 | 0.01 | 0.02 | pull‑up/RC |
| MAX6369KA‑T watchdog | 1 | 1.20 | 1.20 | harici WDT |
| WDT set pasifleri | 2 | 0.01 | 0.02 | period seçimi |
| ICSP pad/konnektör | 1 | 0.20 | 0.20 | fixture/pogo |
| 11.26 | MCU bloğu tahmini toplam |
Not: Bu toplam, yalnız “MCU bloğu” içindir. GSM/enerji analizörü/giriş katmanı gibi diğer blokların maliyetleri ayrı sayfalarda toplanır.
Üretim ve Servis Notları
- Üretimde ana MCU ICSP üzerinden programlanır; programlama sırasında harici 3V3 besleme verilir.
- Çin üretim partneri için “factory test firmware” yaklaşımı uygulanır; LED pattern ile hızlı fonksiyon testi yapılır (plan netleşince bu bölüm güncellenecektir).
Sonuç
R6’da ana MCU bloğu; sahadaki riskleri azaltmak için R5 uyumluluğunu koruyarak ilerler. İyileştirmeler; interrupt mimarisi, haberleşme disiplinleri ve üretim/servis akışının olgunlaştırılması üzerine konumlandırılmıştır.
R7’de planlanan STM geçişiyle birlikte bu sayfa; aynı “blok bazlı” anlatımı koruyarak yeni MCU’ya taşınacaktır.