Ana içeriğe geç

BACnet/IP

BACnet/IP sürücüsü bina otomasyonu denetleyicilerinin nesnelerini okur ve yazar: klima santralleri, soğutma grupları, oda denetleyicileri ve sayaçlar. Tüm sürücülerin ortak yanları için bkz. Sürücüler nasıl çalışır.

Protokol ve rol​

Rolİstemci. YTCC BACnet cihazlarının özelliklerini okur ve yazar; kendisi bir BACnet cihazı değildir.
TaşımaUDP üzerinden BACnet/IP. MS/TP'deki cihazlara BACnet yönlendiricileri üzerinden ulaşılır.
Varsayılan port47808 (UDP)
Sürücü başına cihazBir sürücü, sınırsız cihazlı bir BACnet ağıdır (yerel adres ve port).
Sürücü tipiBACnet (bacnet)

Sürücü parametreleri (ağ)​

Bunları Drivers → devices görünümünde sürücü üzerinde ayarlayın.

ParametreVarsayılanAnlamı
Local IP (Yerel IP)0.0.0.0Yerel ağ arayüzü; 0.0.0.0 hepsini kullanır.
Local port (Yerel port)47808Yerel UDP portu. Başka bir portla cihazların yayın cevapları alınmaz: cihaz başına sabit Host ya da bir BBMD kullanın.
Broadcast (Yayın adresi)255.255.255.255Who-Is adresi. Windows'ta ağın yönlendirilmiş yayın adresini kullanın, örneğin 192.168.1.255.
BbmdboşYabancı cihaz kaydı, JSON olarak: {"host": "…", "port": 47808, "ttl_s": 600}. Who-Is o zaman BBMD üzerinden gider.
Max requests per s (Saniyede en çok istek)200Ağdaki saniyede en çok onaylı istek.
Router requests per s50Bir yönlendiricinin arkasındaki cihazlara saniyede en çok istek.
Cov lifetime (s) (COV ömrü)600COV aboneliklerinin ömrü (60–86400).
Cov confirmed (Onaylı COV)kapalıOnaylı COV bildirimleri ister.
Cov verify (s) (COV doğrulama)300Bir bildirim kaybolmuş olabilir diye COV sinyallerini bu aralıkla ayrıca okur.
Apdu timeout (ms), Apdu retries3000, 3Onaylı bir istek için bekleme ve yineleme; cihaz bunları ezebilir.
Who is chunk100Taramada bir Who-Is'in kapsadığı cihaz örneği sayısı.

Bir ağ parametresinin değişmesi UDP soketini yeniden açar; cihazlar kısa süre sonra yeniden bağlanır.

Cihaz parametreleri​

Device key, Name, Description, Apdu retries, Apdu timeout (ms), Dadr, Device instance 1001, Dnet, Host, Max apdu ve Max in flight ile bir BACnet cihazının New device formu.

ParametreVarsayılanAnlamı
Device instance (Cihaz örneği)— (zorunlu)Cihaz nesnesinin örneği, 0–4194302. Sürücüde tekil.
Host, Portboş, 47808Cihazın sabit adresi. Boş: adres Who-Is / I-Am ile bulunur. Yönlendiricinin arkasındaki cihaz için: yönlendiricinin adresi.
Dnet, DadrboşYönlendiricinin arkasındaki ağ numarası ve MAC adresi (örneğin MS/TP MAC 0A); ikisi birlikte, Host ile.
Max apdu, SegmentationI-Am'denCihazın bildirdiğini ezer.
Max in flight (Aynı anda istek)2Aynı anda okuma isteği; MS/TP yönlendiricisinin arkasında 1 kullanın.
Apdu timeout (ms), Apdu retriesağdanBu cihaz için ezme.
Poll (ms) (Tarama)1000Kendi tarama sınıfı olmayan sinyallerin okuma periyodu.

Her parametrenin yanındaki yardım işareti kısa bir açıklama gösterir.

Sinyal adresi​

Adresi sinyalin Value source (Değer kaynağı) sekmesinde, Address — BACnet altında ayarlayın:

AlanAnlamı
Object type (Nesne tipi)Analog-input, Analog-output, Analog-value, Binary-input, Binary-output, Binary-value, Multi-state-input, Multi-state-output ya da Multi-state-value
Instance (Örnek)Nesne örneği, 0–4194302
Property (Özellik)Present-value (85)
Array index (Dizi dizini)Dizi özellikleri için; yoksa boş

Address — BACnet altında Object type, Instance, Property ve Array index ile AHU1.SupplyTemp sinyalinin Value source sekmesi.

İçe aktarma dosyalarında sayısal nesne tipini ve örneği iki noktayla ayırarak yazın, örneğin 0:1 (analog giriş 1) ya da 5:12 (ikili değer 12). Diğer nesne tipleri (örneğin integer-value 45, large-analog-value 46) ve diğer özellikler Advanced: raw params (JSON) içinde ayarlanabilir ya da bir cihaz taramasından gelir.

Değerler​

BACnet değeriYTCC'deki değer
Real, DoubleFloat32, Float64
Boolean; ikili nesnenin Enumerated'iAçık ya da kapalı
Enumerated (diğer), UnsignedUInt32
SignedInt32
CharacterString, tarih, saatMetin

Okuma​

Sinyaller varsayılan olarak taranır: Present_Value, Status_Flags ve Reliability ReadPropertyMultiple ile birlikte okunur (cihaz desteklemiyorsa ReadProperty), çok büyük istekler bölünür.

COV (değer değişimi), dizi dizini olmayan Present_Value için kullanılabilir: Advanced: raw params (JSON) içine "receive": "cov" ekleyin ya da taramadan sinyal oluştururken COV'u seçin. Sürücü Cov lifetime (s) ile abone olur, ömrün %60'ında yeniler ve değeri her Cov verify (s)'de yeniden okur. Aboneliği reddeden bir cihaz onun yerine taranır.

Yazma​

Bir BACnet sinyali bir öncelikte (varsayılan 8, 1–16) WriteProperty ile yazılır. Boş değer yazmak (bırakma, relinquish) önceliği yeniden serbest bırakır; YTCC gönderdiği son komutun önceliğinde bırakır.

uyarı

Bir BACnet sinyali yönü out ya da inout iken yazılır; yönü in olan sinyal her komutu reddeder. Advanced: raw params (JSON) içine "direction": "inout" (gerekirse "write_priority": 8) ekleyin ya da sinyalleri bir cihaz taramasından Read + write ile oluşturun.

  • Analog nesneler REAL, ikili nesneler ENUMERATED (0 ya da 1), çok durumlu nesneler UNSIGNED olarak yazılır.
  • Başarılı yazmadan sonra değer hemen geri okunur.
  • Cihazın reddi hatasıyla gösterilir, örneğin property/write-access-denied. Cevap vermeyen cihaz bir okumayla denetlenir; ancak o da başarısız olursa bağlı değil olarak işaretlenir.

Operatörlerin komutu nasıl gönderip onayladığı için bkz. Komut gönderme.

Kalite​

Cihaz durumuYTCC'deki kalite
Status_Flags'te FAULT ya da Reliability "no fault detected" değilBad
OUT_OF_SERVICEUncertain
OVERRIDDENGood · Substituted
IN_ALARMGood (cihazın alarmı arıza değildir)
hiçbiriGood

Bir cihaz cevap vermeyince tüm sinyalleri Bad · Not connected olur ve son değerlerini korur; diğer cihazlar etkilenmez. Bir değerin zamanı okunduğu andır.

Yeniden bağlanma​

Apdu timeout (ms) × Apdu retries sonra cevap vermeyen cihaz bağlı değil olarak işaretlenir ve 1 saniye sonra, bekleyişi 60 saniyeye kadar ikiye katlayarak yeniden denenir.

Cihaz taraması ve EDE içe aktarma​

Drivers → devices görünümünde BACnet sürücüsünü seçip Scan / EDE'ye (Tara / EDE) tıklayın:

  • Scan (Tara) bir cihaz örneği aralığı (ya da bir cihaz listesi) için Who-Is gönderir, cevap veren her cihazın nesne listesini ve nesnelerinin adlarını, açıklamalarını ve birimlerini okur. 0 – 0 aralığı her cihaza sorar.
  • Upload EDE (EDE yükle) bunun yerine bir EDE dosyası (EDE 2.x, noktalı virgülle ayrılmış, en çok 64 MB) okur.
  • Sonuç her nesneyi New (Yeni), In system (Sistemde var) ya da Missing on device (Cihazda yok) olarak gösterir. Satırları seçip Create signals from selection'a (Seçilenleri sinyal yap) tıklayın; sinyal tipini, alanı, alma kipini (Periodic ya da COV) ve yönü (Read only ya da Read + write) seçin. Kuru çalıştırma değişiklikleri uygulanmadan önce gösterir.

Sürücü başına aynı anda bir tarama ya da yükleme çalışır; tarama 30 dakika sonra durur.

Tanılama​

Value source sekmesindeki Read now adres için bir ReadProperty gönderir ve değeri ve tipini ya da hatayı class/code, reject: … ya da abort: … olarak gösterir.

Cihazın Communication diagnostics (Haberleşme tanısı) paneli (bkz. Bir cihazın haberleşmesini denetleme) Timeouts / retries (Zaman aşımı / yeniden gönderim) altında Apdu timeout (ms) içinde cevap almayan her onaylı isteği ve her yinelemesini sayar. Cihaz taramasının istekleri sayılmaz.

BelirtiOlası neden
Hiçbir cihaz cevap vermiyorUDP 47808 portunu başka bir program kullanıyor; Windows'ta 255.255.255.255 yayını tek arayüzden çıkıyor
Başka alt ağdaki cihazlar bulunmuyorBir BBMD (Bbmd) ya da sabit Host adresleri kullanın
MS/TP yönlendiricisinin arkasındaki cihazlar zaman aşımına uğruyorDnet, Dadr ve Max in flight 1 ayarlayın
Sinyal UncertainNesne servis dışı
Komut Signal is not writable ile reddediliyorYön in; Yazma altında anlatıldığı gibi out ya da inout yapın

Desteklenen BIBB'ler​

BIBBDestek
DS-RP-A ReadPropertyEvet
DS-RPM-A ReadPropertyMultipleEvet
DS-WP-A WriteProperty (öncelik, bırakma)Evet
DS-COV-A SubscribeCOVEvet
DM-DDB-A dinamik cihaz bağlama (Who-Is / I-Am)Evet