Node-RED: IoT Projelerinizin Kolay Yönetimi
Node-RED: IoT ve Endüstriyel Otomasyon İçin Görsel Programlama Platformu
IoT dünyasında onlarca farklı cihazı, bulut hizmetini ve API’yi birbirine bağlamak ciddi bir mühendislik çabası gerektirir. Farklı protokoller, veri formatları ve iletişim katmanlarıyla uğraşmak, projelerin karmaşıklaşmasına ve geliştirme sürelerinin uzamasına neden olur. Node-RED, tam da bu soruna çözüm olarak tasarlanmış açık kaynaklı bir görsel programlama platformudur.
IBM’in Emerging Technology Services ekibi tarafından 2013 yılında geliştirilen Node-RED, bugün OpenJS Foundation çatısı altında yönetilmektedir. Node.js üzerine inşa edilen bu araç, tarayıcı tabanlı görsel editörü sayesinde donanım cihazlarını, API’leri ve çevrimiçi hizmetleri sürükle-bırak yöntemiyle birbirine bağlamanızı sağlar — derin kodlama bilgisi gerektirmeden.
Yalnızca hobi projeleriyle sınırlı kalmayan Node-RED; Hitachi, Siemens, Microsoft ve AWS gibi büyük teknoloji şirketleri tarafından benimsenmiş, fabrika sahalarından akıllı bina yönetimine, su arıtma tesislerinden enerji izleme sistemlerine kadar geniş bir yelpazede profesyonel olarak kullanılmaktadır.
Node-RED Nasıl Çalışır?
Node-RED’in çalışma mantığı son derece sezgiseldir. Tarayıcınızda açılan editör üç ana bölümden oluşur:
- Düğüm Paleti (sol panel): Kullanılabilir tüm düğümlerin kategorilere ayrılmış listesi. Buradan istediğiniz bileşeni seçip çalışma alanına sürüklersiniz.
- Akış Çalışma Alanı (orta panel): Düğümlerinizi yerleştirdiğiniz ve kablolarla birbirine bağladığınız ana tasarım alanıdır. Her sekme ayrı bir akışı temsil eder.
- Bilgi / Hata Ayıklama Paneli (sağ panel): Düğüm dokümantasyonu, hata ayıklama çıktıları ve yapılandırma seçeneklerini görüntüler.
Temel iş akışı şöyledir: paletten düğümleri çalışma alanına sürüklersiniz, düğümlerin giriş ve çıkış portlarını kablolarla birbirine bağlarsınız ve sağ üstteki “Deploy” butonuna basarak akışınızı çalıştırırsınız. Hepsi bu kadar.
Temel Kavramlar
Node-RED’i etkin kullanmak için dört temel kavramı anlamak yeterlidir:
Düğümler (Nodes): Her biri belirli bir işlev gerçekleştiren yapı taşlarıdır. Üç kategoriye ayrılır: giriş düğümleri (inject, MQTT in, HTTP in gibi) veri akışını başlatır; işlem düğümleri (function, switch, change, template gibi) veriyi dönüştürür; çıkış düğümleri (debug, MQTT out, HTTP response gibi) sonucu iletir.
Akışlar (Flows): Düğümlerin birbirine bağlanmasıyla oluşan veri işleme hatlarıdır. Her sekme bağımsız bir akışı temsil eder ve ayrı ayrı etkinleştirilebilir ya da devre dışı bırakılabilir. Bu sayede büyük projeleri mantıksal parçalara ayırabilirsiniz.
Mesajlar (msg): Düğümler arasında JSON formatında taşınan veri nesneleridir. En sık kullanılan alan msg.payload olup, her düğüm bu nesneyi alır, işler ve bir sonraki düğüme iletir. Mesaj nesnesi üzerine istediğiniz kadar özel alan ekleyebilirsiniz.
Alt Akışlar (Subflows): Sık tekrarlanan akış parçalarını tek bir düğüm halinde paketleyerek yeniden kullanılabilir hale getirir. Bir alt akışı bir kez tanımlarsınız, ardından her yerde bir düğüm gibi kullanabilirsiniz. Node-RED 4.0 ile birlikte alt akışlara ortam değişkeni desteği de eklenmiştir.
İleri düzey senaryolar için Function düğümü ile doğrudan JavaScript kodu yazabilir, harici npm modüllerini çağırabilir ve karmaşık veri dönüşümleri gerçekleştirebilirsiniz.
Kurulum: 3 Adımda Başlayın
Node-RED’i çalıştırmak oldukça kolaydır:
- Node.js 22.x LTS sürümünü yükleyin (nodejs.org adresinden veya paket yöneticiniz aracılığıyla).
- Terminalde şu komutu çalıştırın:
npm install -g --unsafe-perm node-red node-redkomutunu çalıştırın ve tarayıcınızdahttp://localhost:1880adresine gidin — editör karşınızda!
Desteklenen Platformlar
Node-RED, Node.js’in çalışabildiği hemen her ortamda çalışır:
- Raspberry Pi: Ev otomasyonu, eğitim projeleri ve hızlı prototipleme için ideal. Resmi kurulum betiği ile dakikalar içinde hazır.
- Docker:
nodered/node-redresmi imajı ile bulut ortamlarında, CI/CD hatlarında ve ölçeklenebilir dağıtımlarda kullanılır. - Linux / Windows / macOS: Geliştirme, test ve üretim sunucularında npm üzerinden doğrudan kurulum.
- Endüstriyel Gateway ve PLC’ler: WAGO, Siemens ve diğer üreticilerin cihazlarında önyüklü olarak gelmektedir. Saha veri toplama ve SCADA entegrasyonu için uygundur.
- Bulut Platformları: AWS, Azure ve GCP üzerinde container veya sanal makine olarak kurumsal IoT ve veri işleme hatları için konumlandırılabilir.
- Yerel IoT Hub’lar: Sonoff iHOST gibi yerel sunucular üzerinde de çalıştırılabilir.
Desteklenen Protokoller ve Entegrasyonlar
Node-RED’in en güçlü yanlarından biri, birbirinden farklı iletişim protokollerini tek bir ortamda buluşturabilmesidir. Aşağıdaki tablo temel desteklenen protokolleri özetlemektedir:
| Protokol | Açıklama | Kullanım Alanı |
|---|---|---|
| MQTT | Hafif, yayınla/abone ol modeliyle çalışan mesajlaşma protokolü | IoT sensör verileri, cihaz yönetimi |
| HTTP/HTTPS | REST API çağrıları ve webhook entegrasyonları | Bulut hizmetleri, üçüncü parti API bağlantıları |
| WebSocket | Çift yönlü, gerçek zamanlı iletişim kanalı | Canlı gösterge panelleri, anlık bildirimler |
| OPC UA | Endüstriyel otomasyon standardı (IEC 62541) | PLC bağlantısı, SCADA entegrasyonu |
| Modbus | RTU/TCP üzerinden endüstriyel cihaz iletişimi | Pompa, vana, PLC kontrolü |
| BACnet | Bina otomasyon ve kontrol ağı standardı | HVAC, aydınlatma, enerji yönetimi |
| LoRaWAN | Uzun menzilli, düşük güç kablosuz protokol | Akıllı tarım, çevre izleme |
| TCP/UDP | Düşük seviyeli ağ iletişimi | Özel protokoller, eski sistemlerle entegrasyon |
| CoAP | Kısıtlı cihazlar için hafif uygulama protokolü | Kaynak sınırlı IoT cihazları |
Bunlara ek olarak Node-RED; AWS IoT Core, Microsoft Azure IoT Hub, Google Cloud IoT Core ve Apache Kafka gibi bulut platformlarıyla entegre çalışabilmekte; MySQL, PostgreSQL, InfluxDB, TimescaleDB ve Redis gibi veritabanlarına doğrudan bağlanabilmektedir.
Üçüncü parti düğümler sayesinde Telegram, Slack, e-posta, SMS gibi bildirim kanallarını da akışlarınıza ekleyebilirsiniz. Flow Library’de binlerce topluluk katkılı düğüm mevcuttur.
Temel Özellikler ve Avantajlar
Görsel Düşük Kodlu Geliştirme
Geleneksel IoT geliştirme; çoklu programlama dili bilgisi, protokol ayrıştırma ve altyapı yönetimi gerektirir. Node-RED’in sürükle-bırak yaklaşımı, bu karmaşıklığı büyük ölçüde ortadan kaldırır ve proje dağıtım sürelerini önemli ölçüde kısaltır. Hitachi’nin eğitim bölümünden Kazuhito Yokoi’nin de belirttiği gibi, fabrika mühendisleri gibi IT becerisi olmayan kullanıcılar bile kodlama yapmadan veri görselleştirme ve bulut entegrasyonu akışları oluşturabilmektedir.
Geniş Ekosistem ve Düğüm Kütüphanesi
Node-RED Flow Library’de binlerce topluluk kaynaklı düğüm bulunmaktadır. Palette Manager aracılığıyla tek tıkla kurulabilen bu düğümler; e-posta gönderme, veritabanı sorgulama, yapay zeka API’lerine bağlanma, dosya işleme gibi yüzlerce işlevi kapsar. 4.1 sürümüyle birlikte Palette Manager’a kullanımdan kaldırılmış modül uyarısı, indirme sayısına göre sıralama ve düğüm dokümantasyon bağlantıları gibi faydalı güncellemeler gelmiştir.
Edge Computing Desteği
Node-RED’in hafif yapısı sayesinde, verileri buluta göndermeden önce uç cihazlarda (edge) yerel olarak işleyebilirsiniz. Bu yaklaşım gecikmeyi azaltır, bant genişliğinden tasarruf sağlar ve kritik kararların anlık alınmasına olanak tanır. Endüstriyel IoT gateway’lerde — su arıtma tesislerinden fabrika katına kadar — bu şekilde konumlandırılması giderek yaygınlaşmaktadır.
Gösterge Paneli (Dashboard)
Node-RED Dashboard eklentisi ile gerçek zamanlı veri görselleştirme panelleri oluşturabilirsiniz. Grafikler, göstergeler, düğmeler, kaydırıcılar ve formlar gibi kullanıcı arayüzü bileşenlerini herhangi bir frontend kodu yazmadan tasarlayabilirsiniz. Topluluk anketine göre Dashboard özelliği, hem hobi kullanıcıları hem de üretim ortamı kullanıcıları tarafından eşit düzeyde değer gören en popüler özelliklerden biridir.
Güvenlik ve Uzak Erişim
Node-RED, kullanıcı kimlik doğrulama, HTTPS yapılandırması ve editör erişim denetimi gibi güvenlik özellikleri sunar. Uzaktan yönetim için VPN veya ters proxy (Nginx, Traefik) ile güvenli bir şekilde yapılandırılabilir. Kurumsal kullanıcılar için FlowFuse gibi yönetim platformları; çok kullanıcılı iş akışları, sürüm kontrolü, dağıtım yönetimi ve denetim günlükleri gibi ek katmanlar sağlamaktadır.
Kullanım Alanları ve Örnek Senaryolar
Node-RED’in esnekliği sayesinde kullanım alanları oldukça geniştir:
Akıllı Ev Otomasyonu: Aydınlatma, termostat, güvenlik kamerası ve ses asistanlarını tek bir panelden yönetin. Zaman, olay veya sensör verisine dayalı otomasyon kuralları tanımlayın. Örneğin, hareket sensörü tetiklendiğinde ışıkları açıp Telegram’dan bildirim gönderen bir akışı dakikalar içinde kurabilirsiniz.
Endüstriyel IoT (IIoT): Fabrika sahasındaki PLC’lerden OPC UA veya Modbus üzerinden veri toplayın, gerçek zamanlı analiz yapın ve anomali tespiti gerçekleştirin. Toplanan verileri InfluxDB veya TimescaleDB’ye aktararak uzun vadeli trend analizi oluşturun.
Akıllı Bina Yönetimi: BACnet protokolü ile HVAC, aydınlatma ve erişim kontrol sistemlerini entegre ederek enerji verimliliğini artırın. Doluluk sensörleri ve gün ışığı algılama ile otomatik iklim ve aydınlatma kontrolü sağlayın.
Su ve Atık Yönetimi: Su arıtma tesislerinde pompa başlatma/durdurma, pH izleme, akış anomali alarmı ve seviye bazlı dozajlama gibi kontrol mantıklarını uç cihazlarda yerel olarak çalıştırın. PLC değişikliklerine gerek kalmadan esnekliği artırın.
Akıllı Tarım: LoRaWAN sensörleriyle toprak nemi, hava koşulları ve sulama sistemlerini izleyin. Eşik değerlere dayalı otomatik sulama akışları oluşturun; hava durumu tahmin API’leriyle entegre ederek sulama planlarını optimize edin.
Veri Entegrasyonu ve ETL: Farklı kaynaklardan gelen verileri toplayın, format dönüşümü yapın ve zaman serisi veritabanlarına aktarın. Farklı protokollerle konuşan cihazları standart bir veri modeline dönüştürerek birlikte çalışabilirlik sağlayın.
2025’te Node-RED: Güncel Durum ve 5.0 Yol Haritası
Node-RED 4.1 (Temmuz 2025) şu anda aktif olan kararlı sürümdür. Bu sürümle gelen öne çıkan yenilikler arasında güncelleme bildirimleri, düğüm dokümantasyon ikonu, akış bağımlılık yönetimi ve Palette Manager iyileştirmeleri yer almaktadır.
Ancak asıl heyecan verici gelişme, Node-RED 5.0 yol haritasıdır. Aralık 2025’teki Node-RED Con konferansında proje kurucusu Nick O’Leary tarafından açıklanan plana göre 5.0, yalnızca bir Node.js uyumluluk güncellemesi değil, kapsamlı bir kullanıcı deneyimi modernizasyonu olacaktır.
Topluluk anketinin sonuçlarına göre öne çıkan gelişim alanları şunlardır:
- Editör arayüzünün modernizasyonu: Uzun süredir değişmeyen editör tasarımının güncel UX ilkelerine uygun hale getirilmesi.
- Sürüm kontrolü: Üretim ortamı kullanıcılarının %40’ının en büyük engellerinden biri olarak belirtilen yerel versiyon kontrol desteğinin güçlendirilmesi.
- Üçüncü parti düğüm güvenliği: Topluluk düğümlerinin güvenilirlik ve güvenlik değerlendirmesinin iyileştirilmesi.
- Kurumsal özellikler: İzleme/yönetim araçları, kurumsal güvenlik ve uyumluluk/denetim desteği.
- Proje altyapısı: npm workspaces’e geçiş ve yeni geliştirici katkısını kolaylaştırmaya yönelik yapısal iyileştirmeler.
Anket sonuçlarında dikkat çeken bir diğer bulgu: hobi kullanıcılarının %28’i Node-RED’den memnuniyetlerini ifade ederken, üretim ortamı kullanıcılarında bu oran yalnızca %10’dur. Bu fark, 5.0 sürümünün kurumsal kullanıma yönelik iyileştirmelere odaklanmasının nedenini açıkça ortaya koymaktadır.
Sonuç
Node-RED, IoT ekosisteminde köprü görevi gören, hem yeni başlayanlar hem de deneyimli geliştiriciler için üretkenliği artıran güçlü bir platformdur. Görsel düşük kodlu yapısıyla prototiplemeden üretime geçişi hızlandırır; geniş protokol desteğiyle farklı dünyaları tek bir çatı altında buluşturur. Açık kaynak topluluğunun desteğiyle sürekli gelişen bu araç, 5.0 sürümüyle birlikte kurumsal kullanım için de daha olgun bir yapıya kavuşacaktır.
İster IoT’ye ilk adımınızı atıyor olun, ister endüstriyel bir projeyi ölçeklendirmek isteyin — Node-RED, fikirden üretime giden yolu kısaltan en etkili araçlardan biridir.