Paxton Net2 Kontrola dostępu do KNX: OEM SDK i automatyzacja zdarzeń drzwiowych
Paxton Net2 to jeden z najczęściej instalowanych systemów kontroli dostępu w brytyjskich budynkach komercyjnych, hotelach i szkołach. Połączenie zdarzeń drzwiowych Net2 z KNX umożliwia sterowanie HVAC w zależności od zajętości, automatyczne reakcje oświetlenia na zdarzenia dostępu oraz integrację z kartą energetyczną w pokoju hotelowym – przy użyciu OEM SDK Net2, wyjścia szeregowego RS232 lub protokołu czytnika OSDP v2.
Przegląd Paxton Net2 i opcje integracji
Oprogramowanie Paxton Net2 Pro i Net2 Access Control działa na komputerze z systemem Windows pełniącym rolę serwera kontroli dostępu. Jednostki sterujące Net2 ACU łączą się z serwerem za pośrednictwem dedykowanej sieci RS485 lub Ethernetu, zarządzając czytnikami, zworami drzwiowymi oraz punktami wejścia/wyjścia w całym budynku. Istnieją trzy ścieżki integracji z KNX:
| Metoda | Wymagania | Opóźnienie | Najlepsze dla |
|---|---|---|---|
| OEM SDK (COM API) | Net2 Pro, usługa Windows w C#, biblioteka knxdotnet | 1-2 sekundy | Pełny dostęp do zdarzeń, wiele drzwi |
| Wyjście szeregowe RS232 | Port RS232 w Net2 ACU, węzeł szeregowy Node-RED | 1–3 sekundy | Proste konfiguracje jednodrzwiowe |
| OSDP v2 + Beckhoff | ACU z obsługą OSDP, TwinCAT + EL6700 RS485 | Poniżej 500 ms | Enterprise, bez potrzeby serwera PC |
Net2 OEM SDK to oparty na COM interfejs API dostępny w portalu deweloperskim Paxton – wymagane są NDA i rejestracja. SDK jest używane głównie przez integratorów systemów budujących niestandardowe oprogramowanie do zarządzania. Do integracji z KNX najwydajniejszym podejściem jest lekka usługa Windows w C# korzystająca z SDK, zapewniająca dostęp do wszystkich typów zdarzeń Net2 i poleceń sterowania drzwiami.
Usługa integracyjna Net2 OEM SDK C#
Usługa Windows w C# subskrybuje zdarzenia COM Net2 i przekazuje odpowiednie zdarzenia do KNX przez interfejs KNX IP. Biblioteka knxdotnet (dostępna w NuGet) zapewnia natywne dla .NET wysyłanie telegramów grupowych KNX. Mapowanie identyfikatora drzwi na adres grupowy KNX jest przechowywane w pliku konfiguracyjnym XML lub JSON, co ułatwia aktualizację bez ponownej kompilacji.
Subskrypcja zdarzeń Net2 SDK w C# (uproszczona)
// Install: Paxton.Net2.OemClientLibrary (COM reference)
// Install: KNXLib (NuGet) — knxdotnet KNX IP Interface
var net2 = new Paxton.Net2.OemClient();
net2.Connect("localhost", Net2Port);
net2.OnEventReceived += OnNet2Event;
void OnNet2Event(Net2Event evt) {
switch (evt.EventType) {
case EventType.AccessGranted:
var mapping = config.GetKnxMapping(evt.DoorId);
if (mapping != null) {
knx.Action(mapping.GroupAddress, true); // DPT 1.001
knx.Action(mapping.HvacGroupAddress, true); // HVAC occupied
}
break;
case EventType.AccessDenied:
// optional: write to security alert GA
break;
case EventType.AlarmActivated:
knx.Action("8/0/1", true); // alarm relay
break;
}
}
// config.json mapping example:
// { "doorId": 101, "ga": "3/0/1", "hvacGa": "4/0/1" }
// { "doorId": 102, "ga": "3/1/1", "hvacGa": "4/1/1" }Alternatywa wyjścia szeregowego RS232
W prostszych instalacjach, gdzie pełne SDK nie jest wymagane, port szeregowy RS232 Net2 ACU wysyła ciągi zdarzeń ASCII przy każdym zdarzeniu dostępu. To podejście nie wymaga licencji SDK i może być przetwarzane przez Node-RED z węzłem szeregowym – przydatne, gdy instalacja już używa Node-RED do innych funkcji automatyki budynkowej.
Format zdarzeń szeregowych RS232 i parsowanie w Node-RED
Net2 ACU RS232 output (9600 baud, 8N1):
ASCII string per event: "DOOR:101,EVENT:ACCESS_GRANTED,USER:Smith
"
Node-RED serial in node:
Port: /dev/ttyUSB0 (or COM3 on Windows)
Baud: 9600, 8N1
Split: on newline character
Function node — parse and route:
const parts = msg.payload.split(",");
const doorId = parts[0].split(":")[1];
const event = parts[1].split(":")[1];
if (event === "ACCESS_GRANTED" && doorId === "101") {
msg.knxGA = "3/0/1";
msg.knxValue = true;
}
return msg;
KNX write node → IP Interface → KNX bus
Limitation: RS232 event format is not officially documented
by Paxton — verify exact format with your ACU firmware version
before building production automation on this approachPraktyczny scenariusz dla brytyjskiego biurowca
Typowy brytyjski biurowiec z Net2 przy głównym wejściu i wyjściu ewakuacyjnym wykorzystuje usługę SDK do sterowania automatyzacją KNX opartą na obecności. Wzorzec last-user-out eliminuje potrzebę harmonogramów czasowych i reaguje na rzeczywiste użytkowanie budynku.
Brytyjskie biuro – zdarzenie dostępu do sterowania budynkiem KNX
Morning arrival (first AccessGranted at main entrance): → KNX GA 3/0/0 = true (lobby lights ON) → KNX GA 4/0/0 = true (HVAC building occupied mode) → KNX GA 5/0/0 = false (disable night setback) End of day — last user leaves after 18:00: C# service tracks occupancy count per door zone When count reaches zero after 18:00: → KNX GA 4/0/0 = false (HVAC setback mode) → KNX GA 3/0/0 = false (lights off — after 60s delay) → KNX GA 5/0/0 = true (night setback active) Fire alarm integration (Net2 AlarmActivated event): → KNX GA 8/0/1 = true (fire alarm relay to KNX PA system) → KNX GA 3/0/1 = 255 (emergency lighting full brightness) Net2 also releases all doors to fail-safe unlocked state KNX door strike outputs (if any) also release via KNX GA
Integracja OSDP v2 z Beckhoff TwinCAT
Net2 ACU obsługują OSDP v2 na RS485 do podłączenia czytników kart zgodnych z OSDP. W projektach KNX z sterownikiem Beckhoff TwinCAT PLC w szafie, terminal EL6700 RS485 EtherCAT w połączeniu z biblioteką OSDP pozwala pojedynczemu kontrolerowi obsługiwać zarówno dane z czytnika OSDP, jak i magistralę KNX TP – eliminując konieczność serwera z systemem Windows.
Okablowanie Beckhoff TwinCAT OSDP + KNX
Hardware:
Beckhoff CX9020 controller
EL6700 RS485 EtherCAT terminal → OSDP v2 reader (RS485 bus)
EL6900 KNX EtherCAT terminal → KNX TP bus
TwinCAT configuration:
Install OSDP library (Beckhoff TE6730 or third-party)
Configure EL6700 as OSDP master, reader as slave ID 1
Map card number data → TwinCAT PLC variable CardNumber
TwinCAT PLC logic (Structured Text):
IF CardNumber <> 0 AND CardNumber = ValidCard1 THEN
KNX_WriteGA(GA := '3/0/1', Value := TRUE); // lobby lights
KNX_WriteGA(GA := '4/0/1', Value := TRUE); // HVAC occupied
END_IF
Advantage: no Windows PC server required
DIN-rail controller fits inside LV panel
KNX EL6900 certified for KNX TP communication
Single controller, single point of maintenanceIntegracja karty hotelowej z przełącznikiem energetycznym KNX
Paxton Net2 jest często używany w hotelach do wejścia do pokoju z czytnikami kart. Zdarzenie włożenia karty wyzwala scenę powitalną pokoju przez KNX, a wyjęcie karty uruchamia czasową sekwencję obniżenia, aby zmniejszyć zużycie energii, gdy pokój jest nie zajęty.
Karta pokoju hotelowego do sceny powitalnej KNX
Card inserted into room holder (Net2 AccessGranted):
→ KNX GA 6/R/0 = true (Gira card switch 24V trigger activated)
→ KNX Scene "Room Welcome" fires:
GA 3/R/0 = 80 (room lights 80% DPT 5.001)
GA 4/R/0 = true (HVAC room comfort mode)
GA 9/R/0 = 21 (room thermostat setpoint 21°C)
Card removed from holder (Net2 AccessGranted — out):
→ KNX GA 6/R/0 = false (Gira card switch deactivated)
→ KNX 60-second delay timer starts
→ After 60s:
GA 3/R/0 = 0 (room lights off)
GA 4/R/0 = false (HVAC setback mode)
GA 9/R/0 = 18 (setback setpoint 18°C)
Net2 room door reader also logs entry/exit times
— useful for housekeeping scheduling and BREEAM evidence
Note: R = room number (1-100) in the GA scheme
Each room has its own GA sub-group for independent controlFuzja danych obłożenia Net2 i liczników energii KNX
Raporty Net2 eksportują dzienniki obłożenia – użytkownicy obecni na piętro na godzinę – w formacie CSV. W połączeniu z danymi z liczników energii KNX z liczników podłączonych przez Modbus (SOCOMEC Countis, ABB B24) umożliwia to korelację obłożenia z zużyciem energii. Ta fuzja danych dostarcza dowodów do oceny dobrostanu użytkowników BREEAM Hea 04.
Przepływ pracy korelacji danych obłożenia i energii
1. Net2 scheduled report: export occupancy_floor_hourly.csv Columns: date, hour, floor, user_count Automation: Net2 Task Scheduler exports nightly at 01:00 2. KNX energy meter data (SOCOMEC Countis E14): Modbus TCP → LOYTEC LROC gateway → KNX GA 6/E/1 (kWh) Logged to building energy management system (BEMS) database or InfluxDB via Node-RED 3. Python script merges datasets: energy_per_hour = InfluxDB query (kWh by floor, by hour) occupancy_per_hour = CSV import (users by floor, by hour) energy_per_person = energy_per_hour / occupancy_per_hour Output: energy_intensity.csv for BREEAM assessor 4. BREEAM Hea 04 evidence: Demonstrates energy reduction during low occupancy periods Confirms KNX setback automation is effective Shows energy-per-person improvement over 12-month period
Dostęp dla programistów Paxton: Net2 OEM SDK wymaga rejestracji w portalu deweloperskim Paxton pod adresem developer.paxton.co.uk. Przed udostępnieniem dokumentacji SDK i bibliotek należy podpisać umowę NDA. Zatwierdzenie dostępu do portalu trwa 2-5 dni roboczych. SDK jest bezpłatne – nie obowiązują opłaty licencyjne.
Potrzebujesz szafy KNX z integracją Paxton Net2 wykonanej na zamówienie?
Projektujemy i budujemy szafy niskonapięciowe z usługą Windows Net2 SDK, konfiguracją interfejsu KNX IP, integracją OSDP v2 Beckhoff TwinCAT oraz pełną dokumentacją uruchomieniową dostarczaną z testami na miejscu.
Poproś o wycenę →