— 2025—2026 · Araştırma bursiyeri — TÜBİTAK STAR
Lab Instruments GUI
Yüksek hassasiyetli ölçüm cihazları için SCPI + MQTT tabanlı bir Python arayüzü.
Problem
İTÜ Güç Elektroniği Laboratuvarı, Elektrikli Araç Batarya Sistemleri Ar-Ge projesi kapsamında 15.000 $‘dan fazla değerde Prodigit ve Keithley marka ölçüm cihazı kullanıyor — ama her biri kendi üretici yazılımı (~1.000 $ toplam maliyet), kendi USB/GPIB protokolü ve farklı komut setiyle çalışıyordu.
Hedef: Aynı arayüzden tüm cihazları kontrol etmek, batarya performans metriklerini (voltaj, akım, sıcaklık) tek bir veri akışında kayıt altına almak ve EV saha testlerinde toplanan OBD-II ile GPS verilerini uzaktan izleyebilmek.
Yaklaşım
SCPI birleştirmesi. Her cihaz tipi için aynı Python taban sınıfını genişleten bir sürücü yazdım.
Tkinter masaüstü arayüzü. Neden Tkinter? Çünkü kalıcı bir Python kurulumu zaten laboratuvar makinelerinde var.
Raspberry Pi + MQTT boru hattı. EV saha testlerinde Pi, OBD-II tanı verilerini ve GPS metriklerini (hız, koordinat, irtifa, RPM, motor yükü) MQTT broker’a yayınlıyor. Grafana + InfluxDB ile zaman serileri kayıt altına alınıyor.
Bu projeden çıkardıklarım
- Yukarı-çeken bir soyutlama katmanı her zaman görünenden daha fazla değer sağlar.
- SCPI belgelendirme çoğu zaman netçe anlatılmıyor; hex paketler ve el yazısı notlarla çalışmak gerekiyor.
- MQTT hafiflik efsanesi: QoS, retained message ve client ID çakışmaları üretimde tuzak haline geliyor.