BACnet težav praviloma ne rešimo tako, da naključno spreminjamo nastavitve, dokler nekaj ne začne delovati. Najhitrejši servisni inženirji delajo po plasteh: fizična povezava, IP ali RS-485 transport, BACnet routanje, discovery, aplikacijski servisi in šele nato konkretna točka ali funkcija.
Vodnik je namenjen commissioning inženirjem, sistemskim integratorjem in serviserjem, ki na objektu potrebujejo praktičen odgovor. Obravnava BACnet/IP, BACnet MS/TP, BBMD, Foreign Device Registration, Device ID, BACnet routerje, APDU/segmentacijo, ReadPropertyMultiple, COV, prioritete zapisov, Wireshark in BACnet Secure Connect (BACnet/SC).
Terensko pravilo: najprej dokaži najnižjo plast, pri kateri še nisi prepričan. Če ne veš, ali paket sploh pride do naprave, je spreminjanje COV ali urnika prezgodaj.
10-minutna BACnet diagnostika
- Napajanje in link: je krmilnik napajan, Ethernet link prisoten, RS-485 ožičenje celo?
- Naslavljanje: pravilen IP/maska/gateway ali pravilen MS/TP MAC/baud?
- Pravi vmesnik: uporablja laptop/aplikacija pravi Ethernet, Wi-Fi ali VPN adapter?
- BACnet data link: pravilen BACnet/IP UDP port oziroma MS/TP parametri?
- Discovery: vidiš Who-Is na izhodu in I-Am na povratku?
- Routanje: če je vmes drug subnet/network, so BBMD/FDR in BACnet network numbers pravilni?
- Usmerjeni servisni test: lahko prebereš Object_Name ali Vendor_Identifier Device objekta?
- Aplikacijsko obnašanje: ReadProperty dela? RPM ne? Je problem segmentacija?
- Obnašanje točke: Priority_Array, Reliability, Out_Of_Service, COV ali urnik?
- Dokaz s paketom: če še vedno ni jasno, naredi packet capture in nehaj ugibati.
Najprej razumi plasti
| Plast | Tipične tehnologije | Tipična napaka |
|---|---|---|
| Fizična | Ethernet, RS-485 | kabel, polariteta, terminacija, šum |
| IP / serial transport | IPv4, UDP, MS/TP token | subnet, VLAN, firewall, baud, MAC |
| BACnet network | NPDU, routerji, network numbers | napačen DNET, podvojen network number |
| BACnet virtual link | BVLL, BBMD, FDR | broadcast ne prečka subneta |
| BACnet application | Who-Is/I-Am, ReadProperty, RPM, COV | nepodprt servis, timeout, segmentacija |
| Objektna logika | Priority_Array, Reliability, urniki | override, zastarela vrednost, slaba kakovost |
| Secure transport | BACnet/SC, WebSockets, TLS | hub, certifikat, čas, trust |
Uspešen ping dokazuje samo, da del neke IP komunikacije deluje. Ne dokazuje, da delujejo BACnet UDP, BBMD forwarding, BACnet routanje ali aplikacijski servisi.
43 konkretnih BACnet težav in rešitve
1. Ne odkrijemo nobene BACnet naprave
Simptom: Who-Is ne vrne ničesar.
Kaj preveriti: Najprej loči IP težavo od BACnet težave. Preveri pravi omrežni vmesnik, IP naslov, masko in VLAN. Če poznaš naslov naprave, poskusi usmerjeni ReadProperty in se ne zanašaj samo na broadcast discovery. Neuspešen ping še ne pomeni, da BACnet ne deluje, saj je ICMP lahko blokiran, UDP za BACnet pa dovoljen.
Ukrep: Če usmerjena lokalna BACnet komunikacija deluje, discovery pa ne, takoj preveri broadcast, BBMD/FDR in požarni zid.
2. Naprava odgovarja na ping, BACnet pa ne
Simptom: IP povezava obstaja, BACnet klient pa ne dobi I-Am ali odgovora na lastnost.
Kaj preveriti: Preveri BACnet/IP UDP port. Privzeti port je 47808 (0xBAC0), vendar je lahko nastavljen drug. Preveri požarni zid na servisnem računalniku in na poti do naprave. Če ima računalnik Ethernet, Wi-Fi, VPN in virtualne adapterje, preveri tudi, na kateri NIC je BACnet klient vezan.
Ukrep: Uskladi BACnet UDP port na obeh straneh in dovoli potreben dvosmerni UDP promet.
3. Naprava je vidna v lokalnem subnetu, čez router pa izgine
Simptom: Discovery lokalno deluje, iz drugega IP subneta pa ne.
Kaj preveriti: Who-Is je praviloma broadcast. Klasični IP routerji broadcastov med subneti ne posredujejo. Zato BACnet/IP za discovery čez subnete potrebuje pravilno BBMD/BDT zasnovo ali Foreign Device Registration.
Ukrep: Preveri BBMD na potrebnih subnetih oziroma servisni računalnik registriraj kot Foreign Device na ustreznem BBMD.
4. Foreign Device Registration čez čas preneha delovati
Simptom: Oddaljeni discovery nekaj časa deluje, nato izgine.
Kaj preveriti: FDR ima življenjsko dobo. Foreign Device se mora ponovno registrirati, preden naročnina poteče, BBMD pa mora registracijo dovoliti. Če naprava omogoča, preberi Foreign Device Table.
Ukrep: Preveri rezultat registracije, lifetime, periodično obnovo in FDT. FDR ni enkratna trajna registracija.
5. Preko BBMD delujejo samo nekateri subneti
Simptom: Discovery čez subnete je nepopoln ali deluje samo v eno smer.
Kaj preveriti: Preveri Broadcast Distribution Table. Manjkajoči partnerji, napačni naslovi, napačne maske ali enosmerna pot povzročijo delno vidljivost. Preveri tudi NAT in firewall.
Ukrep: BDT naj bo načrtovan in konsistenten. Odstrani stare vnose in preveri dvosmerno dosegljivost med BBMD-ji.
6. Who-Is povzroči poplavo I-Am odgovorov
Simptom: Takoj po discoveryju se omrežje močno obremeni.
Kaj preveriti: Neomejen Who-Is na velikem internetworku lahko sproži veliko sočasnih I-Am odgovorov. To je še bolj občutno na počasnih routanih ali MS/TP segmentih.
Ukrep: Uporabi omejitev Device ID območja, discovery izvajaj po skupinah in ne ponavljaj nepotrebnih globalnih skenov.
7. Dve napravi se kažeta kot ena ali se odpre napačen krmilnik
Simptom: Rezultati discoveryja se spreminjajo ali binding skače med fizičnimi napravami.
Kaj preveriti: Preveri Device Object identifier. Device instance mora biti unikaten v BACnet internetworku. Podvojen Device ID lahko povzroči zelo zmedeno dinamično vezavo, četudi imata napravi različna IP naslova.
Ukrep: Vsaki napravi dodeli unikaten Device ID in po čiščenju cache/bindingov ponovi discovery.
8. Naprava je dobila nov IP, klient pa še vedno uporablja starega
Simptom: Naprava obstaja, nadzorni sistem pa še vedno timeouta.
Kaj preveriti: Veliko klientov hrani device bindinge. Dinamična vezava bi morala najti nov naslov, vendar lahko ostanejo statične ali stare cache povezave.
Ukrep: Osveži ali izbriši binding, sproži nov Who-Is/I-Am ter v packet capturu preveri aktualni izvorni naslov.
9. BACnet preko VPN ne dela
Simptom: Oddaljeni računalnik ima ping, RDP ali HTTPS, BACnet discovery pa ne.
Kaj preveriti: VPN pogosto routa unicast, ne pa lokalnih IP broadcastov. Zato je lahko običajna IP povezava popolna, BACnet discovery pa še vedno ne deluje.
Ukrep: Uporabi FDR, BBMD-prijazno oddaljeno zasnovo, BACnet/SC ali lokalno BACnet orodje znotraj oddaljenega omrežja.
10. En računalnik naprave vidi, drugi na istem mestu pa ne
Simptom: Krmilniki in omrežje so enaki, discovery pa je odvisen od laptopa.
Kaj preveriti: Primerjaj izbrani NIC, masko, Windows firewall, endpoint zaščito, VPN adapterje in lokalni BACnet port. Več omrežnih adapterjev je pogost vzrok napačne izhodne poti.
Ukrep: Za test onemogoči nepotrebne adapterje, BACnet klient veži na pravi vmesnik in primerjaj packet capture.
11. ReadProperty po znanem naslovu deluje, discovery pa ne
Simptom: Znane naprave lahko bereš, Who-Is pa ne vrne odgovorov.
Kaj preveriti: To je močan znak, da osnovna BACnet aplikacijska komunikacija deluje, težava pa je v broadcast poti, BVLL, BBMD/FDR ali napačnem broadcast naslovu klienta.
Ukrep: Ne spreminjaj nastavitev objektov. Sledi Who-Is paketu in ugotovi, kje se broadcast ustavi.
12. Naprave uporabljajo različne BACnet/IP UDP porte
Simptom: Nekatere naprave so vidne, druge na istem Ethernetu pa ne.
Kaj preveriti: Najpogostejši BACnet/IP port je 47808, dovoljeni pa so tudi drugi. Naprave na različnih portih so lahko praktično ločene skupine, če klient/router tega ne obravnava.
Ukrep: Popiši porte vseh skupin in uskladi klient ter router. Ne predpostavljaj 47808 brez preverjanja.
13. Firewall prepušča BACnet samo v eno smer
Simptom: Zahteva pride do naprave, odgovor pa ne do klienta, ali obratno.
Kaj preveriti: Stateful firewall, ACL ali NAT lahko dovoljujejo le del poti. Pri BBMD prometu se lahko pojavijo naslovi, ki jih IT pravilo ni predvidelo.
Ukrep: Če je možno, zajemi promet na obeh straneh firewall-a. Primerjaj source/destination IP in UDP port ter odpri najmanjši potreben dvosmerni promet.
14. Router je dosegljiv, naprav za njim pa ni
Simptom: BACnet router odgovarja, downstream omrežje pa manjka.
Kaj preveriti: Preveri BACnet network numbers in routing oglase. Vsako routano BACnet omrežje mora biti pravilno identificirano. Podvojene ali konfliktne številke omrežij povzročijo dvoumno routanje.
Ukrep: Popravi načrt network number, preveri status downstream porta in nato dosegljivost ciljnega DNET.
15. Dva BACnet routerja povzročata čudne ali občasne poti
Simptom: Naprave enkrat delujejo, drugič izginejo.
Kaj preveriti: Išči podvojene network numbers, nenamerne paralelne poti ali router, ki oglašuje omrežje, ki obstaja drugje.
Ukrep: Dokumentiraj internetwork. Vsak routani segment naj ima namerno številko in jasno pot.
16. MS/TP trunk je povsem tih
Simptom: Za BACnet routerjem ni nobene naprave.
Kaj preveriti: Preveri napajanje, RS-485 ožičenje, skupni/reference vodnik kjer je zahtevan, način porta in baud rate. LED utripanje samo po sebi ni dokaz veljavnih MS/TP okvirjev.
Ukrep: Začni pri routerju in prvi napravi, potrdi ožičenje in nastavitve ter šele nato širi segment. Če je možno, preveri token/frame števce ali zajemi MS/TP promet.
17. MS/TP polariteta je obrnjena
Simptom: Trunk je nestabilen ali komunikacije ni.
Kaj preveriti: Oznake A/B oziroma +/− med proizvajalci niso vedno dosledne. Preveri dejanski pomen sponk v navodilih naprave.
Ukrep: Diferencialni par poveži enako po celotnem trunku in v omari dokumentiraj morebitne različne oznake proizvajalcev.
18. MS/TP baud rate se ne ujema
Simptom: Nekatere naprave nikoli ne pridejo v token ring ali se pojavijo šele po restartu.
Kaj preveriti: Vse naprave na istem MS/TP segmentu morajo komunicirati z istim baud rate, razen če ima naprava zanesljiv auto-baud.
Ukrep: Med diagnostiko nastavi en znan baud rate na routerju in vseh napravah. Na nestabilnem trunku se ne zanašaj na auto-baud.
19. Podvojen MS/TP MAC
Simptom: Komunikacija je občasna, token passing je čuden ali se napravi izmenjujeta.
Kaj preveriti: Vsak master MAC na istem MS/TP segmentu mora biti unikaten.
Ukrep: Popiši MAC naslove od routerja naprej in najprej odpravi podvojene naslove.
20. Max_Master je nižji od MAC nove naprave
Simptom: Nov krmilnik ne sodeluje, čeprav sta ožičenje in baud pravilna.
Kaj preveriti: Master z MAC naslovom nad Max_Master lahko izpade iz pravilnega token vzdrževanja. Max_Master mora pokriti najmanj najvišji master MAC na segmentu.
Ukrep: Max_Master nastavi najmanj na najvišji master MAC. Za hitrost uporabljaj smiseln, čim bolj zgoščen naslovni načrt.
21. MS/TP deluje, vendar zelo počasi
Simptom: Vrednosti se osvežijo šele po dolgem času.
Kaj preveriti: Preveri število naprav, velike vrzeli MAC naslovov, previsok Max_Master, pretirano polling frekvenco, nizek baud, retryje ali eno problematično napravo.
Ukrep: Najprej meri. Zmanjšaj nepotreben polling, optimiziraj naslove, razdeli preobremenjene trunke in popravi fizične napake.
22. Napačen ali podvojen BACnet network number na MS/TP
Simptom: Naprave za routerji manjkajo ali se pojavijo na napačni poti.
Kaj preveriti: Vsak routani MS/TP segment potrebuje pravilen BACnet network number, ki se ne sme konfliktno ponoviti v istem internetworku.
Ukrep: Vzpostavi register network number za cel objekt in odpravi podvojitve pred zagonom nadzornega sistema.
23. Terminacija manjka ali je na napačnih mestih
Simptom: Trunk pri majhnem prometu deluje, ob večji obremenitvi pa postane nestabilen.
Kaj preveriti: RS-485 vodilo praviloma potrebuje terminacijo na fizičnih koncih vodila, usklajeno s karakteristično impedanco kabla. Pri BACnet napravah je zelo pogost 120-ohmski kabel/terminacija, vendar upoštevaj dokumentacijo opreme.
Ukrep: Terminacijo uporabi samo tam, kjer jo zahteva topologija; ne dodajaj uporov na vsako napravo.
24. Preveč terminatorjev ali naključno dodani bias upori
Simptom: Po 'popravilu' se komunikacija še poslabša.
Kaj preveriti: RS-485 je občutljiv na električno obremenitev. Več aktivnih bias vezij in preveč terminacij lahko zmanjšajo diferencialni signal.
Ukrep: Vrni se na dokumentirano RS-485 topologijo ter bias/termination shemo proizvajalca routerja oziroma krmilnikov.
25. Dolgi odcepi in zvezdasta vezava MS/TP
Simptom: Komunikacija je nestabilna, predvsem pri višjem baud rate.
Kaj preveriti: MS/TP je običajno načrtovan kot linearen trunk/daisy-chain. Dolgi odcepi povzročajo refleksije in večjo občutljivost na dolžino kabla.
Ukrep: Skrajšaj odcepe, kjer je mogoče povrni linearno topologijo in terminacijo postavi na dejanska konca.
26. Ena slaba MS/TP naprava upočasni cel segment
Simptom: Vse naprave postanejo počasne, ko je priklopljen določen krmilnik.
Kaj preveriti: MS/TP je skupno token-passing vodilo, zato lahko slab transceiver, timing ali šum ene naprave vpliva na vse.
Ukrep: Segment razdeli in sistematično odklapljaj dele, dokler se token passing in napake ne normalizirajo.
27. MS/TP deluje samo, ko je priklopljen servisni adapter
Simptom: Ko odklopiš začasno orodje, omrežje postane nestabilno.
Kaj preveriti: To pogosto pomeni, da servisni adapter nehote spremeni bias, terminacijo ali referenco vodila.
Ukrep: Adapterja ne sprejmi kot rešitev. Popravi stalno električno zasnovo trunka.
28. Router vidi MS/TP okvirje, objektov pa ne moremo brati
Simptom: Layer 2 je živ, aplikacijski BACnet pa odpoveduje.
Kaj preveriti: Token aktivnost še ne zagotavlja pravilnih Device ID, routanja, APDU nastavitev ali podpore servisov.
Ukrep: Sledi enemu ReadProperty od začetka do konca in ugotovi konkretni BACnet error, reject, abort ali timeout.
29. ReadProperty deluje, ReadPropertyMultiple pa ne
Simptom: Posamezne točke lahko bereš, skupinski read pa odpove.
Kaj preveriti: Podpora RPM in kakovost implementacije se med napravami razlikujeta. Velik RPM lahko preseže tudi APDU ali segmentation omejitve.
Ukrep: Preveri PICS/BTL podatke, zmanjšaj paket RPM in v diagnostičnem klientu imej fallback na ReadProperty.
30. Majhni readi delujejo, veliki odgovori timeoutajo
Simptom: Present_Value se bere, Object_List ali trend pa ne.
Kaj preveriti: Preveri Max_APDU_Length_Accepted, segmentation, APDU timeout, segment timeout in retries na obeh straneh.
Ukrep: Najprej zmanjšaj velikost zahteve. Če je potrebna segmentacija, preveri podporo segmentiranih request/response na obeh napravah.
31. Klient neprestano ponavlja zahteve
Simptom: Packet capture kaže enake confirmed requeste brez napredka.
Kaj preveriti: Ne zvišuj samo timeouta. Ugotovi, ali odgovor izgine, zamuja, je rejected/aborted, napačno routan ali sploh ni generiran.
Ukrep: Poveži invoke ID in časovne oznake v zajemu ter odpravi dejanski vzrok. Timeout/retry nastavi šele nato.
32. Write uspe, vrednost pa se takoj vrne nazaj
Simptom: UI javi uspeh, Present_Value pa ponovno postane star.
Kaj preveriti: Commandable BACnet objekti uporabljajo 16-stopenjski Priority_Array. Program, urnik ali ukaz višje prioritete lahko isto točko prepisuje.
Ukrep: Preberi Priority_Array, Relinquish_Default in status. Piši na namenski prioriteti in pravilno relinquishaj, namesto da stalno forsiraš vrednost.
33. Vrednost je smiselna, status pa kaže napako
Simptom: Present_Value izgleda pravilen, sistem pa javlja fault ali out-of-service.
Kaj preveriti: BACnet kakovost ni samo Present_Value. Preveri Reliability, Status_Flags, Out_Of_Service in sorodne lastnosti, kjer so podprte.
Ukrep: V servisnem orodju prikazuj vrednost in quality/status ločeno, da pravilna številka ne skrije okvare senzorja ali override-a.
34. COV čez čas ne osvežuje več
Simptom: Live update na začetku dela, potem pa klient ostane na stari vrednosti.
Kaj preveriti: COV subscription lahko poteče, se izbriše po restartu naprave ali odpove po prekinitvi omrežja.
Ukrep: Spremljaj lifetime, pravočasno obnovi subscription in po reconnect/rebootu ponovno vzpostavi COV naročnine.
35. Polling je na eni napravi hiter, na drugi zelo počasen
Simptom: Obe napravi sta BACnet, hitrost browse-a pa je zelo različna.
Kaj preveriti: Interoperabilnost ne pomeni enake zmogljivosti. Pomembni so CPU, APDU, segmentacija, RPM, položaj na MS/TP in obremenitev routerja.
Ukrep: Strategijo klienta prilagodi napravi: manjše RPM skupine, fallback na RP, omejena sočasnost in razumni timeouti.
36. Object List zamrzne servisno orodje
Simptom: Naprava z veliko objekti povzroči zelo dolg wait.
Kaj preveriti: Celoten Object_List je lahko velik in zahteva segmentacijo. Nekatere naprave se bolje obnesejo pri branju po elementih ali manjših kosih.
Ukrep: Najprej preberi število objektov, kjer je mogoče, nato paginiraj/chunkaj, cache-aj stabilne metapodatke in ne blokiraj UI.
37. Prenos Trend Log je nezanesljiv
Simptom: Trend objekt je viden, Log_Buffer pa timeouta ali se bere zelo dolgo.
Kaj preveriti: Trend buffer je lahko velik in lahko zahteva segmentacijo oziroma delno branje.
Ukrep: Zahtevaj manjše časovne/indeksne obsege, preveri podporo lastnosti in loči live polling od večjega zgodovinskega prenosa.
38. Urniki in časovne oznake so napačni
Simptom: Urnik se izvede ob napačni uri ali trendi časovno driftajo.
Kaj preveriti: Preveri Local_Date, Local_Time, UTC_Offset, Daylight_Savings_Status in strategijo sinhronizacije časa. Po izpadu napajanja lahko ura odplava.
Ukrep: Določi en vir časa in preveri, ali objekt uporablja BACnet TimeSynchronization, UTCTimeSynchronization, NTP na gatewayu ali proizvajalčevo rešitev.
39. BACnet/SC node se ne poveže na hub
Simptom: IP povezljivost obstaja, secure BACnet povezava pa se ne vzpostavi.
Kaj preveriti: BACnet/SC uporablja secure WebSockets prek TLS, zato preverjamo DNS/IP, TCP pot, WebSocket/TLS, certifikate in hub konfiguracijo – ne BBMD/UDP broadcast pravil.
Ukrep: Preveri primary hub URI/naslov, omrežno pot, certificate chain in credentials še preden diagnosticiraš BACnet aplikacijske servise.
40. BACnet/SC certifikat izgleda pravilen, povezava pa je zavrnjena
Simptom: TLS handshake odpove kljub navidezno pravemu certifikatu.
Kaj preveriti: Preveri trust anchorje, namen/profil certifikata, ujemanje private key, identiteto/hostname ter ali je bil certifikat zamenjan ali preklican.
Ukrep: Primerjaj device certificate in CA konfiguracijo na obeh straneh ter uporabi diagnostične loge BACnet/SC.
41. BACnet/SC po spremembi časa nenadoma ne deluje
Simptom: Secure povezave odpovejo po izgubi baterije ali napačni nastavitvi ure.
Kaj preveriti: Veljavnost certifikata je časovno odvisna. Naprava z napačno uro lahko veljaven certifikat razume kot še neveljaven ali že potekel.
Ukrep: Najprej popravi čas in šele nato ponovi secure povezavo.
42. Primary BACnet/SC hub odpove, failover pa ne prevzame
Simptom: Node-i izgubijo komunikacijo, ko glavni hub ni dosegljiv.
Kaj preveriti: BACnet/SC predvideva primary/failover hub, vendar morajo biti naslovi, credentials in konfiguracija dejansko pravilno nastavljeni.
Ukrep: Failover preizkusi med commissioningom. Ne predpostavljaj, da redundanca dela samo zato, ker obstaja drugi hub.
43. BACnet/SC in BACnet/IP sta pomešana brez jasne routing zasnove
Simptom: Secure naprave delujejo, legacy naprave pa so izolirane ali routanje ni razumljivo.
Kaj preveriti: BACnet/SC dopolnjuje druge BACnet data linke. Obstoječi BACnet/IP in MS/TP običajno potrebujejo namensko routing arhitekturo proti BACnet/SC.
Ukrep: Nariši meje data-linkov in routing točke. Jasno dokumentiraj varnostne cone ter legacy BACnet/IP broadcast zahteve.
Wireshark: iz ugibanja naredi dokaz
Ko grafični program pokaže samo Timeout, packet capture pogosto pokaže, na kateri strani se je pogovor ustavil.
Uporaben Wireshark display filter:
bacnet || bvlc || bacapp
Capture filter za privzeti BACnet/IP port:
udp port 47808
Novejše verzije Wiresharka vsebujejo tudi BACnet Secure Connect dissector (bscvlc), kadar je promet na tej plasti mogoče analizirati.
Kaj iskati
Who-Is brez I-Am
- Ali Who-Is sploh zapusti računalnik?
- Ali gre na pravi local broadcast oziroma BBMD pot?
- Ali I-Am pride na drug NIC, ki ga aplikacija ne uporablja?
ReadProperty brez odgovora
- Pravilen destination IP in UDP port?
- Pravilen BACnet DNET/DADR za routerjem?
- Ali naprava vrne Reject, Abort ali Error namesto timeouta?
Ponavljajoči confirmed requesti
- Primerjaj invoke ID in čas.
- Ugotovi, ali retry povzroča izguba, počasen odgovor, segmentacija ali nepodprt servis.
BBMD/FDR
- Poišči BVLL sporočila in rezultat registracije.
- Preveri, ali se forwarded broadcast pojavi na pravem subnetu.
Dva sočasna zajema – eden pri klientu, drugi pri krmilniku/routerju – hitro pokažeta: zahteva je prečkala firewall, odgovor pa ne.
BACnet/IP device passport
Pred odhodom z objekta zapiši:
- BACnet Device ID
- Device Object Name
- IP, masko in gateway
- BACnet UDP port
- BACnet/IP network number, kjer je relevanten
- BBMD način in BDT
- Foreign Device nastavitve
- router in downstream BACnet network numbers
- firmware/verzijo
- PICS ali BTL referenco, če obstaja
- rezultat usmerjenega ReadProperty
- rezultat discoveryja iz dejanskega nadzornega omrežja
- ime packet capture datoteke pri odprti težavi
BACnet MS/TP device passport
Zapiši:
- router/krmilnik
- MS/TP network number
- MAC vsake master naprave
- najvišji master MAC
- Max_Master
- Max_Info_Frames, kjer je nastavljiv
- baud rate
- tip in približno dolžino kabla
- lokacije terminacij
- shield/common/reference način
- znane odcepe
- router error/token counters
- Device ID vsake BACnet naprave
Pri nestabilnem trunku spreminjaj po eno stvar in ohrani dokaz.
Napake pri diagnostiki, ki jemljejo največ časa
- Spreminjanje objektov, preden dokažemo komunikacijo.
- Ping kot BACnet test.
- Predpostavka, da vse naprave enako obvladajo RPM in segmentacijo.
- Zviševanje timeouta, dokler se pravi problem ne skrije.
- Ponavljanje neomejenega discoveryja na velikem internetworku.
- Ignoriranje podvojenih Device ID.
- Obravnava RS-485 kot navadne dvožilne povezave.
BACnet/SC spremeni način diagnostike
BACnet Secure Connect ni samo BACnet/IP z vključeno enkripcijo. BACnet/SC uporablja secure WebSockets in TLS, node-i pa komunicirajo prek hub arhitekture z možnostjo direktnih povezav. Dopolnjuje BACnet/IP in MS/TP.
Zato je lahko težava v IP/DNS dosegljivosti, TCP poti, hub konfiguraciji, TLS negotiation, certificate trust, identiteti naprave, napačnem času, failover konfiguraciji ali routanju do legacy BACnet omrežij.
Pri BACnet/IP pogosto vprašamo: Kje se je ustavil broadcast? Pri BACnet/SC je boljše prvo vprašanje: Ali je node vzpostavil secure povezavo s hubom in če ne, zakaj?
Terenski workflow z NODVIA Field
NODVIA Field by PICALLW sledi istemu praktičnemu zaporedju:
Connect → Diagnose → Commission
Namen ni trditi, da terensko orodje nadomesti proizvajalčev engineering program. Namen je hitreje priti do prvega zanesljivega odgovora: odkriti naprave, pregledati BACnet kontekst, brati objekte in lastnosti, primerjati naslove ter ohraniti projektne podatke.
Terensko orodje ima največjo vrednost, ko pomaga dokazati katera plast je napačna, preden začnemo spreminjati sistem.
Hitra odločitvena pot
NAPRAVA NE DELUJE
|
+-- Ni IP/serial linka?
| -> napajanje / kabel / NIC / RS-485
|
+-- Link je, BACnet odgovora ni?
| -> UDP port / baud / MAC / firewall / interface
|
+-- Usmerjen read dela, discovery ne?
| -> broadcast / BBMD / FDR
|
+-- Router je viden, downstream naprave ni?
| -> network number / routanje / MS/TP
|
+-- Enostavna lastnost dela, večji read ne?
| -> RPM / APDU / segmentacija / timeout
|
+-- Vrednost se bere, obnašanje pa je napačno?
| -> Priority_Array / Reliability / COV / schedule
|
+-- BACnet/SC secure povezava ne dela?
-> hub / TLS / certifikat / ura / trust
Viri in nadaljnje branje
ASHRAE Standard 135 Resource Files — BACnet standard.
https://data.ashrae.org/bacnet/BACnet International Glossary — aktualna terminologija, vključno z ANSI/ASHRAE 135-2024.
https://bacnetinternational.org/bacnet-glossary/BACnet International Journal — komunikacija čez subnete — BBMD in Foreign Device.
https://bacnetinternational.org/wp-content/uploads/sites/2/2022/07/journal_issue_15.pdfBACnet International Journal — MS/TP tuning — Max_Master in zmogljivost segmenta.
https://bacnetinternational.org/wp-content/uploads/sites/2/2022/07/BACnet-Intl-Journal_20.pdfBACnet International — BACnet Secure Connect.
https://bacnetinternational.org/bacnetsc/Wireshark BACnet dokumentacija.
https://wiki.wireshark.org/Protocols/bacnetContemporary Controls BASrouter dokumentacija — praktične MS/TP nastavitve.
https://www.ccontrols.com/pdf/um/UM-BASRTB00.pdf
Končno terensko pravilo
BACnet ne diagnosticiraj samo po občutku. Sestavi verigo dokazov.
Če lahko pokažeš, da je zahteva zapustila klient, prišla na pravi data link, bila routana v pravo BACnet omrežje, dosegla napravo in povzročila odgovor, napaka postane majhna in konkretna. To je razlika med poskušanjem nastavitev in inženirsko diagnostiko.
