Dijital İkiz

Enerji Optimizasyonu İçin HVAC Dijital İkizi: MQTT ile Klima Santralleri ve Soğutma Grupları

BACnet-MQTT ağ geçitleri, bir bulut MQTT broker ve enerji optimizasyonu için basit Python analizleri kullanarak klima santrallerini ve soğutma gruplarını gerçek zamanlı yansıtan bir HVAC dijital ikizi nasıl kurulur.

Canlı enerji verileriyle bir klima santralini ve soğutma grubu tesisini gösteren HVAC dijital ikizi panosu
Bunu kendi MQTT broker’ınızda çalıştırınFree planla özel, yönetilen bir MQTT broker alın ve hazır kod örnekleriyle başlayın.
Ücretsiz deneyin Kod örnekleri Kart gerekmez

HVAC dijital ikizi, klima santrallerinizin (AHU), soğutma gruplarınızın (chiller) ve pompalarınızın gerçek sensör verileriyle beslenen canlı bir yazılım modelidir; böylece tesisin nasıl davrandığını ve enerjiyi nerede boşa harcadığını görebilirsiniz. Bu makalede uçtan uca bir ikiz tasarlayacaksınız: BACnet kontrolörlerinden noktaları çekmek, bunları MQTT üzerinden yayınlamak, topic ağacını yapılandırmak ve eş zamanlı ısıtma ve soğutmayı, düşük soğutma grubu delta-T değerini ve kayan ayar noktalarını bulan analizleri çalıştırmak. Her şey açık araçlar ve standart bir MQTT broker kullanır.

HVAC Neden Dijital İkiz İçin Doğal Bir Adaydır

Isıtma, havalandırma ve iklimlendirme genellikle ticari binalardaki en büyük enerji tüketicilerinden biridir ve israfın büyük kısmı görünmezdir. Kaçıran bir vana, kapalı konumda takılı kalmış bir ekonomizör damperi veya düşük sıcaklık farkıyla çalışan bir soğutma grubu, bina yönetim sisteminde (BMS) nadiren alarm tetikler. Bina konforlu kalırken enerji sayacı sessizce yükselir.

Dijital ikiz bu sorunları üç şeyi birleştirerek görünür kılar:

  1. İlgili her noktadan gelen canlı veriler: sıcaklıklar, basınçlar, vana ve damper konumları, fan hızları ve güç.
  2. Her varlığın nasıl davranması gerektiğine dair bir model: tasarım delta-T değeri, belirli bir hızda beklenen fan gücü, işletme sırası.
  3. Beklenen ve gerçek davranış arasındaki farkı işaretleyen karşılaştırma mantığı.

İkiz BMS'in yerini almaz. BMS tesisi kontrol etmeye devam eder; ikiz gözlemler, analiz eder ve önerilerde bulunur. Kavrama yeniyseniz dijital ikiz teknolojisi üzerine kapsamlı rehberimizle başlayın.

Referans Mimari

BACnet/IP controllers (AHU, chiller, VAV, meters)
        |
        |  BACnet ReadProperty / COV
        v
BACnet-to-MQTT gateway (edge PC, industrial gateway or Node-RED)
        |
        |  MQTT over TLS, port 8883
        v
Cloud MQTT broker (ConnectMQ)
        |
        +--> Python analytics service (subscriber) -> publishes KPIs and faults
        +--> Dashboards and 3D views (WebSocket, port 8084)
        +--> Time-series database via Telegraf or a custom subscriber

BACnet konuşan tek bileşen ağ geçididir. Onun üzerindeki her şey MQTT konuşur; bu da analizleri, panoları ve depolamayı bina ağından ayırır. Birçok ticari ağ geçidi ve açık kaynak seçenek BACnet nesnelerini sorgulayıp MQTT mesajları olarak yayınlayabilir; pilotlar için BACnet katkı node'una sahip Node-RED popüler bir tercihtir.

Ağ geçidini başlangıçta salt okunur tutun. Ayar noktalarını BMS'e geri yazmak mümkündür, ancak bu daha sonra, ikizin önerileri güven kazandıktan sonra ve uygun değişiklik kontrolüyle yapılmalıdır.

Toplanacak Noktalar

BMS'teki her noktaya ihtiyacınız yoktur. Enerjiyi ve konforu belirleyen noktalarla başlayın:

Varlık Temel noktalar Ortaya çıkardıkları
Klima santrali Üfleme havası sıcaklığı, dönüş havası sıcaklığı, karışım havası sıcaklığı, dış hava sıcaklığı Ekonomizör performansı, eş zamanlı ısıtma ve soğutma
Klima santrali Soğutma ve ısıtma vanası konumları, taze hava damperi konumu Kaçıran vanalar, takılı damperler
Klima santrali Üfleme fanı hızı ve gücü, kanal statik basıncı, filtre fark basıncı Fan enerjisi, statik basınç sıfırlama fırsatları, filtre kirlenmesi
Soğutma grubu Soğuk su gidiş ve dönüş sıcaklığı, kondenser suyu sıcaklıkları, güç (kW), durum Verimlilik (ton başına kW), düşük delta-T sendromu
Pompalar Hız, güç, fark basıncı Aşırı pompalama, vanaların birbirine karşı çalışması
Bölgeler ve VAV'ler Bölge sıcaklığı, ayar noktası, hava debisi, damper konumu Tüm sistemi zorlayan sorunlu bölgeler

Bu noktaların çoğu için pratik bir sorgulama aralığı bir dakikadır. Fan gücü gibi hızla değişen değerler, ağ geçidinin broker'ı mesaja boğmaması için bir ölü bantla birlikte, BACnet tarafında değer değişikliği (COV) aboneliklerini kullanabilir.

HVAC Dijital İkizi İçin Topic Tasarımı

Tutarlı bir topic hiyerarşisi, ikizin, panoların ve analizlerin nokta bazında yapılandırma gerektirmeden verileri bulmasını sağlar. ISA-95 tarzı bir yapı binalar için de iyi çalışır: işletme, saha, alan, varlık.

acme/hq-building/plant/chiller-1/telemetry
acme/hq-building/plant/chwp-1/telemetry
acme/hq-building/floor-3/ahu-3/telemetry
acme/hq-building/floor-3/ahu-3/faults
acme/hq-building/floor-3/ahu-3/kpi

Bir varlığa ait ilgili noktaları, sorgulama aralığında yayınlanan tek bir JSON mesajında gruplayın:

{
  "ts": "2026-10-16T09:42:00Z",
  "sat": 13.1,
  "rat": 23.4,
  "mat": 17.9,
  "oat": 9.6,
  "clg_valve": 42,
  "htg_valve": 18,
  "oa_damper": 20,
  "fan_speed": 78,
  "fan_kw": 11.2,
  "filter_dp": 185
}

Soğutma grupları da aynı kalıbı izler; aşağıdaki analizlerin dayandığı chws ve chwr (soğuk su gidiş ve dönüş sıcaklığı), flow_lps (saniyede litre cinsinden debi), kw ve status gibi alanları içerir.

Nokta başına bir mesaj yerine varlık başına bir mesaj kullanmak zaman damgalarını hizalı tutar; bu da kurallarınız aynı andaki birden fazla değeri karşılaştırdığında önemlidir. ConnectMQ, ISA-95 tarzı topic hiyerarşilerini tanır; böylece portalın cihazlar görünümü varlıkları seviyeye göre gruplar. ISA-95 dijital ikizleri hakkındaki makalemiz adlandırma modelini derinlemesine açıklıyor.

Enerji İsrafını Bulan Analizler

İkizin değeri basit ve açıklanabilir kurallardan gelir. Aşağıdaki Python servisi binadaki her klima santraline ve soğutma grubuna abone olur, üç klasik kontrolü uygular ve sonuçları panoların ve uyarı kurallarının alabileceği şekilde MQTT'ye geri yayınlar.

import json
import time
import paho.mqtt.client as mqtt

BROKER = "broker.connectmq.com"
PORT = 8883
SITE = "acme/hq-building"

DESIGN_CHW_DELTA_T = 5.5      # degrees C, from the chiller design data
VALVE_OVERLAP_PCT = 10        # both valves open more than this = waste
ECON_OAT_MAX = 15.0           # free cooling expected below this outdoor temp


def check_ahu(asset, d):
    faults = []
    if d["clg_valve"] > VALVE_OVERLAP_PCT and d["htg_valve"] > VALVE_OVERLAP_PCT:
        faults.append("simultaneous_heating_cooling")
    if d["oat"] < ECON_OAT_MAX and d["clg_valve"] > 20 and d["oa_damper"] < 30:
        faults.append("economizer_not_used")
    if d["filter_dp"] > 250:
        faults.append("filter_loaded")
    return {"faults": faults, "fan_kw": d["fan_kw"]}


def check_chiller(asset, d):
    delta_t = d["chwr"] - d["chws"]
    tons = d["flow_lps"] * 4.19 * delta_t / 3.517     # kW thermal to refrigeration tons
    kw_per_ton = d["kw"] / tons if tons > 1 else None
    faults = []
    if d["status"] == "on" and delta_t < 0.6 * DESIGN_CHW_DELTA_T:
        faults.append("low_delta_t")
    return {"delta_t": round(delta_t, 2),
            "kw_per_ton": round(kw_per_ton, 3) if kw_per_ton else None,
            "faults": faults}


def on_connect(client, userdata, flags, reason_code, properties):
    print("Connected:", reason_code)
    client.subscribe(f"{SITE}/+/+/telemetry", qos=1)


def on_message(client, userdata, msg):
    parts = msg.topic.split("/")
    area, asset = parts[2], parts[3]
    data = json.loads(msg.payload)

    if asset.startswith("ahu"):
        result = check_ahu(asset, data)
    elif asset.startswith("chiller"):
        result = check_chiller(asset, data)
    else:
        return

    base = f"{SITE}/{area}/{asset}"
    client.publish(f"{base}/kpi", json.dumps(result), qos=1, retain=True)
    if result["faults"]:
        client.publish(f"{base}/faults", json.dumps({"ts": time.time(), "faults": result["faults"]}), qos=1)


client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="YOUR_CLIENT_ID")
client.username_pw_set("YOUR_USERNAME", "YOUR_PASSWORD")
client.tls_set()   # system CA store trusts the broker's Let's Encrypt certificate
client.on_connect = on_connect
client.on_message = on_message
client.connect(BROKER, PORT, keepalive=60)
client.loop_forever()

Bu üç kontrol, iyi bilinen HVAC enerji sorunlarını hedefler:

  1. Eş zamanlı ısıtma ve soğutma. Bir klima santralindeki her iki vana da açık olduğunda ünite kendisiyle savaşıyordur. Nedenler kaçıran bir vanadan kötü ayarlanmış bir kontrol döngüsüne kadar uzanır.
  2. Kullanılmayan ekonomizör. Dışarısı serinken ünite taze hava damperi minimuma yakın konumdayken hâlâ mekanik soğutma yapıyorsa, ücretsiz soğutma fırsatı kaçırılıyordur.
  3. Düşük soğuk su delta-T. Tasarım sıcaklık farkının çok altında çalışan bir soğuk su devresi daha fazla pompalamaya zorlar ve çoğu zaman ek soğutma gruplarının devreye girmesine yol açar. Bu, en yaygın ve en maliyetli tesis verimsizliklerinden biridir.

Buradaki her eşik bir başlangıç noktasıdır. Bunları tasarım belgelerini ve birkaç haftalık gözlem verisini kullanarak her varlık için ayarlayın. Enerji dijital ikizi makalesi referans değerlere ve tasarrufların ölçülmesine daha ayrıntılı değiniyor.

Uyarılar ve Görselleştirme

Sonuçlar düz MQTT mesajları olduğu için herhangi bir abone onları tüketebilir. ConnectMQ portalında sayısal değerler üzerinde, örneğin kw_per_ton veya bir üfleme havası sıcaklığı için eşik tabanlı uyarı kuralları oluşturabilir ve tetiklenen uyarıları uyarı günlüğünde inceleyebilirsiniz. Arıza mesajlarının kendisi ise en iyi kendi araçlarınızla yönlendirilir: Node-RED bunları e-postalara veya kayıtlara (ticket) dönüştürebilir, zaman serisi veritabanıyla desteklenen bir Grafana panosu da eğilimleri gösterebilir.

Görselleştirme için bir tarayıcı 8084 portunda (yol /mqtt) Secure WebSocket üzerinden bağlanır ve kpi ile telemetry topic'lerine abone olur. Renklendirilmiş klima santralleri içeren 2D bir kat planı, tesis ekipleri için çoğu zaman fotogerçekçi bir modelden daha kullanışlıdır. Canlı bir 3D ikizin nasıl göründüğünü görmek isterseniz, ConnectMQ'nun dijital ikiz web demosu WSS üzerinden güncellenen makineler, tanklar, pompalar ve konveyörlerle bir fabrikayı canlandırır; aynı kalıp bir mekanik tesis odası için de geçerlidir.

Devreye Alma Kontrol Listesi

  1. Envanter: BMS nokta listesini dışa aktarın ve bir klima santrali ile bir soğutma grubu için yukarıdaki tablodaki noktaları seçin.
  2. Ağ geçidi: bina ağına salt okunur çalışan ve TLS üzerinden yayın yapan bir BACnet-MQTT ağ geçidi kurun.
  3. Topic'ler: ikinci varlığı bağlamadan önce hiyerarşi ve JSON alan adları üzerinde uzlaşın.
  4. Broker: her ağ geçidi ve her analiz servisi için ayrı kimlik bilgileriyle özel bir broker oluşturun.
  5. Doğrulama: ikiz değerlerini bir gün boyunca BMS arayüzüyle karşılaştırın; ölçekleme ve birim hatalarını düzeltin.
  6. Kurallar: üç kontrolü etkinleştirin, bulguları tesis ekibiyle haftalık olarak gözden geçirin ve eşikleri ayarlayın.
  7. Ölçekleme: kalan klima santrallerini, pompaları ve bölgeleri ekleyin; ardından filtre ve rulman aşınması gibi kestirimci kullanım senaryolarını değerlendirin.

Bakım tarafı için dijital ikiz ile kestirimci bakım yazısına, binanın genel resmi için ise bina dijital ikizi rehberine bakın.

Güvenlik Hususları

Bina ağları çoğu zaman eski, düz ve yetersiz bölümlenmiştir; bu nedenle ağ geçidi hassas bir noktadır. Onu kendi ağ segmentine yerleştirin, yalnızca 8883 portunda broker'a giden bağlantılara izin verin, BACnet'i asla internete açmayın ve her ağ geçidine kendi kimlik bilgilerini verin. Barındırılan bir MQTT broker, tüm bağlantılar sahadan dışarı doğru kurulduğu için bina ağında gelen port açma ihtiyacını tamamen ortadan kaldırır. Gerçek bina verilerini asla herkese açık bir test broker'ında yayınlamayın; prototip aşamasında onu yalnızca sentetik değerlerle kullanın.

HVAC Dijital İkizinizi ConnectMQ Üzerinde Kurun

ConnectMQ, HVAC ikizinizin dayandığı canlı verileri taşıyan bir bulut MQTT broker hizmetidir: MQTT 3.1.1 ve 5.0, TLS, panolar için WebSocket, ISA-95 farkındalıklı cihaz görünümleri ve portalda eşik tabanlı uyarılar. Ağ geçitleriniz, analizleriniz ve panolarınız standart MQTT istemcileri olarak bağlanır. app.connectmq.com adresinde kredi kartı gerektirmeden ücretsiz bir Serverless broker oluşturun ve ilk klima santralinizin verilerini bugün aktarın.

Sık Sorulan Sorular

HVAC dijital ikizi nedir?

Klima santralleri ve soğutma grupları gibi HVAC ekipmanlarının, gerçek sensör verileriyle sürekli güncellenen ve arızaları ve enerji israfını bulmak için beklenen davranışla karşılaştırılan canlı bir modelidir.

HVAC dijital ikizi kurmak için BMS'imi değiştirmem gerekir mi?

Hayır. İkiz, mevcut BMS'teki verileri bir BACnet-MQTT ağ geçidi aracılığıyla okur ve kontrolü BMS'e bırakır. Yeni bir kontrol sistemi değil, analiz ekler.

Neden BACnet'i doğrudan okumak yerine MQTT kullanmalı?

BACnet yerel bina ağları için tasarlanmıştır. MQTT ise verileri giden bağlantılar üzerinden güvenli bir şekilde buluta taşır ve analiz, panolar ve depolama gibi birçok tüketicinin aynı akışı paylaşmasını sağlar.

Bir HVAC dijital ikizi ne kadar sürede sonuç gösterebilir?

Eş zamanlı ısıtma ve soğutma veya düşük soğutma grubu delta-T gibi basit kurallar, verilerin ilk haftalarında sorunları ortaya çıkarabilir; ancak tasarruflar binaya ve bulgulara göre harekete geçilmesine bağlıdır.

İlgili yazılar

Tüm yazılar →

Özel MQTT broker’ınız birkaç tık uzağınızda

Hesabınızı oluşturun, broker kimlik bilgilerinizi alın ve ilk cihazınızı bağlayın — kurulacak, yamalanacak ya da ölçeklendirilecek sunucu yok.