-
Die
Erfindung betrifft ein Verfahren zur automatisierten Prüfung von
Gebäudeautomationseinrichtungen
auf Konformität
zum BACnet-Standard, ein Verfahren zur automatisierten Prüfung von
Gebäudeautomationseinrichtungen
nach dem BACnet-Standard auf Interoperabilität sowie ein Verfahren zur automatisierten
Prüfung
von Gebäudeautomationseinrichtungen
in einem Netzwerk nach dem BACnet-Standard auf Performance.
-
Die
erfindungsgemäßen Verfahren
sind in den anhängenden
Patentansprüchen
angegeben und werden nachfolgend näher beschrieben.
-
1. Einleitung
-
1.1. Zielsetzung
-
In
der Gebäudeautomation
(GA) großer
Liegenschaften wie Großflughäfen kann
der Einsatz des international genormten Kommunikationsprotokolls BACnet
(ANSI/ASHRAE 135–2004
bzw. DIN EN ISO 16484-5) – nachfolgend
kurz „BACnet" genannt – als Kommunikationsstandard
zu mehr Wettbewerb unter den Anbietern von GA-Einrichtungen führen. Zur
Beurteilung der BACnet-Tauglichkeit ist ein umfangreiches Lastenheft
zu entwickeln, welches alle optionalen Möglichkeiten des Kommunikationsprotokolls vollumfänglich betrachtet
und die hohen Anforderungen z.B. eines Großflughafens berücksichtigt.
Das Lastenheft trägt
weiterhin zur vollen Verwirklichung der vorgegebenen Spezifikationen
mit den zu testenden GA Herstellerfirmen bei und treibt die Weiterentwicklung
von teilweise auf der Geräteebene
technisch noch nicht umgesetzter BACnet Funktionen voran.
-
Zurzeit
sind Tests auf Konformität
zum BACnet-Standard, Interoperabilitätstests sowie Performanceuntersuchungen
lediglich in manueller und funktional begrenzter Form möglich.
-
Der
Aufwand für
die Durchführung
von manuellen Tests ist aufgrund der Vielzahl von möglichen BACnet-Funktionalitäten extrem
zeit- und kostenintensiv. Dies steht einer wirkungsvolleren Marktdurchdringung
von BACnet zurzeit im Wege.
-
Aufgrund
der hohen Anforderungen an die Funktionalität in der Liegenschaft und der
zurzeit begrenzten Testmöglichkeiten,
ist Wettbewerb über BACnet
zwischen mehreren GA-Fabrikaten
auf hohem funktionalen Niveau momentan kaum möglich, da die geforderten Funktionalitäten nicht
vollständig und
mit angemessenem Aufwand prüfbar
sind.
-
Um
diesen Aufwand zu reduzieren und die Durchführung von BACnet-Testreihen
zu rationalisieren, wurden die erfindungsgemäßen Verfahren entwickelt. Diese
Verfahren ermöglichen
in Zukunft jedem Betreiber die Prüfung und Zulassung von BACnet-Geräten für seine
jeweiligen Liegenschaften und projektspezifischen Anforderungen.
Durch die Automation der Tests wird die Überprüfung von Geräten verschiedener
Hersteller in angemessenem Zeitrahmen mit überschaubaren Kosten ermöglicht.
-
Erst
dadurch wird auch eine effiziente Methode zur umfänglichen
Zertifizierung von BACnet-Komponenten geschaffen.
-
Weiterhin
erlaubt die Flexibilität
und Parametrierbarkeit der Testverfahren die Anwendung auf Projekte
beliebiger Größe und unterschiedlicher funktionaler
Anforderung.
-
Erst
mit diesen Testverfahren wird somit ein offener Wettbewerb zugeschnitten
auf die jeweiligen anwenderspezifischen Anforderungen mit einer
beliebigen Anzahl von Herstellern ermöglicht.
-
Die
Verfahren für
die durchzuführenden
Testreihen unterteilen sich in die Bereiche:
-
1.1.1. Einlesen der Geräteeigenschaften
-
Im
Zuge der Verfahren wird die rationelle Erstellung des PICS (Protocol
Implementation Conformance Statement)-Dokumentes in elektronischer Form
(EPICS, electronic PICS) zur Vorbereitung der Testpläne ermöglicht.
Hierbei werden automatisiert die Eigenschaften der zu testenden
Geräte
online aus diesen gelesen und dienen fortan als Basis für die Testdatenbank.
-
Das
EPICS erfüllt
somit nach Norm ISO 9646 die Funktion der Dokumente PICS und PIXIT
in elektronischer Form.
-
1.1.2. Konformitätstests
-
Bei
den Konformitätsprüfungen erfolgt
die Überprüfung, ob
sich ein Gerät
konform zum Standard verhält.
In diesem Fall sind als Standard sowohl die BACnet-Normen sowie
zusätzliche
anwenderspezifische Richtlinien zu verstehen.
-
Bei
der Prüfung
auf Konformität
zum BACnet-Standard wird der Nachweis erbracht, dass sich ein BACnet-Gerät exakt
an die im BACnet-Standard spezifizierte Kommunikation sowie das
spezifizierte Geräteverhalten
(z.B. bei Empfang ungültiger
Telegramme, usw.) hält.
-
1.1.3. Interoperabilitätstests
-
Bei
den Interoperabilitätsprüfungen wird
das korrekte Zusammenspiel auf Basis der BACnet-Normen sowie der
anwenderspezifischen Richtlinien von unterschiedlichen Komponenten
unterschiedlicher Hersteller geprüft.
-
Die
Durchführung
von Interoperabilitätsprüfungen setzt
die vorherige erfolgreiche Prüfung
auf Konformität
voraus.
-
1.1.4. Performancetests
-
Bei
den Performanceprüfungen
werden die angebotenen BACnet Komponenten in Bezug auf Datendurchsatz,
Reaktionszeiten sowie verwendete Netzwerkbandbreite gemessen zwischen
deren späteren
Einbauort über
die verwendete Netzwerkstrecke bis hin zu den spezifizierten Kommunikationspartnern
geprüft
und dokumentiert.
-
Die
Durchführung
der Performanceprüfungen
setzt die erfolgreiche Prüfung
auf Interoperabilität
voraus.
-
2. Normen
und Prüfvorschriften
-
Die
folgenden Normen und Prüfvorschriften sind
Grundlage zur Durchführung
der Prüfungen:
- • DIN
EN ISO 16484-5
- • ANSI/ASHRAE
135-2004
- • ANSI/ASHRAE
135.1 + Addendum-A
(zukünftige
Norm DIN EN ISO 16484-6 Testing Conformance to BACnet)
- • ISO
9646 Teil 1–7
(Testverfahren
und Methoden zur Konformitätsprüfung, ohne
Betrachtung von Performance oder Fehlerverhalten und dient als Grundlage
für 135.1 sowie
die durchzuführenden
Testreihen.)
- • ANSI/IEEE
829
(Dokumentformat für
die Darstellung von Testergebnissen)
- • BTL-specified
tests
(In diesem Dokument werden zusätzliche von der BMA spezifizierte
Tests beschrieben.)
- • Anwenderspezifische
Richtlinien
- • Anwenderspezifische
Netzwerkspezifikationen
-
3. Aktuelle Situation,
Stand der Technik
-
Automatisierte
Tests (d.h. Verfahren unter zu Hilfenahme von softwarebasierten
Tools) auf Konformität,
Interoperabilität
und Performance in Bezug auf BACnet sind nach dem Stand der Technik
nicht möglich.
-
3.1. Konformitätstests
-
Die
amerikanische Vereinigung BMA (BACnet Manufacturers Association,
www.bacnetassociation.org) betreibt ein Testlabor mit dem Namen
BTL (BACnet Testing Laboratories) zurzeit mit Sitz in Boston. In
diesem Testlabor wurden bereits manuelle BACnet-Testreihen durchgeführt. Die
BMA erstellt seit einigen Jahren Testpläne, welche auf Basis der Norm
(ANSI/ASHRAE 135-2004/BACnet bzw. der DIN EN ISO 16484-5) die Durchführung von
Tests erlauben. Jedoch werden diese Tests zurzeit nur in manueller
Form durchgeführt.
-
Die
erfindungsgemäßen Verfahren
erlauben die automatisierte Prüfung
auf Konformität
zu den Device-Profilen der Norm und zusätzlich zu den anwenderspezifischen
Anforderungen.
-
3.2. Interoperabilitätstests
-
Prüfungen auf
Interoperabilität
verschiedener Geräte
unterschiedlicher Hersteller werden in den USA und in Europa in
Form sogenannter „Plugfests" („Steckerfeste") veranstaltet. Dabei
werden Funktionen der Norm, die von Herstellern neu in Geräte implementiert
wurden, gegen bereits existierende Implementierungen geprüft.
-
Die
Untersuchung auf Interoperabilität
erfolgt vor allem unter Berücksichtigung
der anwenderspezifischen Anforderungen in Bezug auf das Mengengerüst der unterstützten Objektarten,
Telegramme etc. sowie spezielle BACnet-Funktionalität in Europa
oder in den USA.
-
3.3. Performancetests
-
Die
erfindungsgemäßen Verfahren
erlauben die Messung der verwendeten Netzwerkbandbreite, der Reaktionszeiten
sowie des erreichbaren Datendurchsatzes der Testeinheiten.
-
4. Beschreibung
der Verfahren
-
Die
erfindungsgemäßen Verfahren
zur Durchführung
von BACnet-Testreihen teilen sich in nachfolgend beschriebene Teilbereiche
auf.
-
4.1. Spezifikation der
Testvorbereitungen
-
Gerätehersteller
stellen zur Prüfung
Testeinheiten bereit. Die Spezifikationen zur Testvorbereitung – nachfolgend
kurz „Test-Lastenheft" genannt – beinhalten
die anwenderspezifischen Anforderungen als auch die Festlegung der
zu verwendenden Einstellungen der Testeinheiten.
-
Als
Testeinheit wird ein einzelnes oder ein Verbund mehrerer BACnet-Geräte verstanden,
welche eine geforderte gebäudetechnische
Funktion erfüllen
soll und auf Konformität
in der Implementierung des BACnet-Standards getestet werden soll.
-
Ein
Test-Lastenheft („GA-Lastenheft") zur Vorbereitung
der Testeinheiten seitens des Herstellers wird vom Betreiber der
Liegenschaft bereitgestellt.
-
Die
für die
Konformitätsprüfung relevanten Normen
und Grundlagen werden den Herstellern bekannt gegeben. Das GA-Lastenheft
in der jeweils aktuellen Version wird den Herstellern ebenfalls
zur Verfügung
gestellt.
-
Der
Hersteller bereitet seine Testeinheit entsprechend den Anforderungen
vor (Programmierung/Parametrierung) und übergibt diese an den Betreiber
der Liegenschaft.
-
Zusammen
mit der Testeinheit übergibt
der Hersteller eine Dokumentation der Bedienschritte sowie eine
Gerätebeschreibung
im genormten Format „EPICS" (elektronisches
PICS vgl. ISO 9646).
-
Anhand
der in diesem Dokument beschriebenen BACnet-Funktionen erfolgt die
Prüfung
auf Konformität.
Der Hersteller gibt also mit diesem Dokument den Grad seiner BACnet-Implementierung bekannt.
-
4.2. Spezifikation der
Prüfabläufe
-
Anhand
der Norm ANSI/ASHRAE 135.1 werden die durchzuführenden Testreihen festgelegt.
-
Die
Norm beschreibt bereits die für
die Prüfung
auf Konformität
erforderlichen BACnet-Funktionen.
-
Die
für die
Prüfung
auf Konformität
erforderlichen BACnet-Funktionen werden anhand der Device-Profile
der BACnet-Norm sowie der anwenderspezifischen Richtlinien festgelegt.
-
4.3. Erarbeitung einer
Testsoftware
-
Für die Durchführung der
Tests sowie zur Sicherstellung der Reproduzierbarkeit von Testergebnissen
wird eine automatisierte Testsoftware zur Prüfung auf Konformität erstellt.
Diese Testsoftware erlaubt die automatisierte Prüfung und Dokumentation der
Testergebnisse anhand der o.g. Spezifikationen, Normen und Prüfvorschriften.
-
4.4. Aufbau eines Testlabors
-
Im
Rahmen der durchzuführenden
Testreihen werden die Ausstattung sowie die benötigten Soft- und Hardwarewerkzeuge
zum Aufbau eines Testlabors ermittelt und dokumentiert.
-
Für die Durchführung von
Konformitätstests wird
jede Testeinheit einzeln mit der Testsoftware verbunden.
-
Für die Durchführung von
Interoperabilitätstests
werden alle Testeinheiten gemeinsam in einem beliebigen Netzwerkverbund
zusammen geschaltet.
-
Planung
und Aufbau dieses Testnetzwerkes, welches die anwenderspezifischen
Netzwerkrichtlinien berücksichtigt,
sind ebenfalls Bestandteil der Testverfahren.
-
Hierzu
zählen
insbesondere die Planung der benötigten
Geräte
und Testwerkzeuge sowie die Festlegung von IP-Adressen der Geräte, Festlegung von
Gerätenamen
und Geräteadressen.
-
4.5. Planung von Konformitätstests
-
Zur
Prüfung
auf Konformität
wird ein Testplan erstellt, aus dem die zu prüfenden BACnet-Services und
BACnet-Objekte inklusive der anwenderspezifisch geforderten optionalen
Properties sowie dem anwendungsspezifisch geforderten Schreib-/Lesezugriff
hervorgehen.
-
Diese
werden innerhalb einer Eingabemaske vorgegeben und in die Testdatenbank
als Vorgabe eingetragen.
-
Die
für die
Konformitätsprüfung relevanten Testschritte
basieren auf der ISO 9646, welche allgemein die Verfahren zur Konformitätsprüfung beschreibt.
-
Im
Standard 135.1 sind die für
die BACnet-Prüfungen
spezifizierten Testschritte in Positiv- sowie Negativ-Tests beschrieben.
-
Zusätzlich zu
diesen Normen ist noch das GA-Lastenheft BACnet in der jeweils aktuellen
Version Grundlage einer Freigabe.
-
4.6. Konsistenzprüfung
-
Die
EPICS-Datei des Herstellers wird automatisiert inhaltlich auf Konsistenz
geprüft.
Dabei werden fehlende Angaben oder durch die Software erkennbare
Fehleinträge
in einer Fehlerliste ausgegeben und die Übernahme des EPICS in die Datenbank verweigert.
-
4.7. Durchführung von
Konformitätstests
-
Anhand
der Testpläne
werden mit Hilfe des automatisierten Verfahrens die Testeinheiten
der Hersteller einzeln auf Konformität zur BACnet-Norm und der anwenderspezifischen
Richtlinien geprüft.
-
Die
Software ist in der Lage, die Testpläne in einer Datenbank zu speichern,
anhand der Testpläne und
dem jeweiligen EPICS des Gerätes
die Tests automatisiert durchzuführen
als auch die Testergebnisse elektronisch zu dokumentieren.
-
Weiterhin
werden alle Testschritte elektronisch dokumentiert, so dass diese
für eine
Reproduzierbarkeit jederzeit wieder aufgerufen und nachvollzogen
werden können.
-
4.7.1. Zielsetzung
-
Nach
Abschluss des Konformitätstests
soll es pro Gerät
eine zentrale Liste (voraussichtlich in einem Tabellenkalkulations-Format)
geben mit einer Übersicht über alle
sowohl manuell als auch automatisiert geprüften Eigenschaften.
-
4.7.2. EPICS-Prüfung
-
Im
ersten Testschritt werden die Herstellerangaben im EPICS-Dokument
automatisch mit den in der Testdatenbank festgelegten anwenderspezifischen
Anforderungen verglichen.
-
Nicht
unterstützte
Funktionen, Objekte und Properties der Testeinheit werden als negatives
Prüfungsergebnis
gewertet und in der Datenbank automatisiert hinterlegt.
-
Im
zweiten Testschritt wird ein so genannter EPICS-Konsitenztest nach
135.1 durchgeführt.
Die Prüfungsschritte
zur EPICS-Konsistenzprüfung
sind in 135.1 festgelegt und schreiben u.a. vor, dass eine Prüfung derart
erfolgen muss, dass alle im EPICS beschriebenen Funktionalitäten auch
tatsächlich
in der Testeinheit vorhanden sind.
-
Gibt
ein Hersteller z.B. in seinem EPICS an, das BIBB (Interoperabilitätsbaustein)
DM-DOB-A zu unterstützen
und ist dies nicht in der Testeinheit zu finden (Kriterium: Auslesen
der Eigenschaft Protocol Services Supported aus dem Device-Object),
so liegt eine Inkonsistenz zwischen EPICS-Dokument und Geräteimplementierung
(oder Geräteprojektierung) vor.
-
Diese
Inkonsistenzen werden in der Prüfliste dokumentiert
und als negative Testergebnisse gewertet.
-
Dieser
Testschritt wird automatisiert durchgeführt. Die vom Hersteller bereitgestellte EPICS-Datei
wird durch die Prüfsoftware
als Vorlage eingelesen, zusätzlich
erfolgt ein Auslesen aus der Testeinheit und ein anschließender softwaretechnischer
Vergleich auf Soll- und Ist-Zustand der Funktionen. Inkonsistenzen
zwischen EPICS und Testeinheit werden dokumentiert.
-
4.7.3. Konformitätstest
-
Im
dritten Testschritt erfolgt auf Basis der in der Testeinheit implementierten
BACnet-Funktionen eine automatische Generierung des Testplans in
der Testsoftware.
-
Hierzu
dienen die in den Normen zur Prüfung beschriebenen
einzelnen Testschritte.
-
Nicht
unterstützte
Funktionen, Objekte und Properties der Testeinheit werden als negatives
Prüfungsergebnis
gewertet und in der Datenbank automatisiert hinterlegt.
-
Mit
Hilfe der Testsoftware werden die positiven und negativen Testergebnisse
der einzelnen Testschritte automatisiert geprüft und dokumentiert.
-
Die
Prüfergebnisse
werden in einer Datenbank gespeichert und können zur Auswertung in Office-Anwendungen
exportiert werden.
-
4.8. Bewertung der Konformitätsprüfung
-
Die
Ergebnisse aller Prüfungen
werden in einem zusammenhängenden
Bericht zusammengestellt. Abweichungen gegenüber den zugrunde liegenden
Normen und Richtlinien werden in diesem Bericht dokumentiert. In
einer Bauherrenbesprechung werden diese Ergebnisse in Form einer
Präsentation
zusammengefasst und präsentiert.
-
4.9. Planung von Interoperabilitätstests
-
Für die Bewertung
der Interoperabilität
werden Testfälle
erarbeitet, mit denen die Bewertung erfolgen kann, ob und in welchem
Umfang mehrere BACnet-Geräte
korrekt zusammen arbeiten.
-
4.10. Durchführung von
Interoperabilitätstests
-
Anhand
der Testfälle
werden alle Geräte bzw.
Testeinheiten im Netzwerkverbund auf korrektes Zusammenspiel geprüft.
-
Die
Testschritte werden anhand von Testwerkzeugen (Netzwerkanalyzer,
usw.) beobachtet und bewertet.
-
Die
während
der Durchführung
der Tests mit Hilfe der Testwerkzeuge aufgezeichneten Logdateien werden
durch das Testpersonal archiviert und falls notwendig dokumentiert.
-
Diese
Logdateien ermöglichen
eine spätere Beurteilung
von möglichen
Problemfällen
und dienen als Nachweis der Prüfung.
-
4.11. Planung von Performancetests
-
Die
Untersuchungen auf Performance erfolgen sowohl im Testlabor als
auch im anwenderspezifischen IT-Netzwerk.
-
Dazu
werden Testfälle
erarbeitet, die einen Rückschluss
auf die zu erwartende Performance der Geräte in Bezug auf Netzwerkbandbreite,
Reaktionszeiten als auch Gesamtdurchsatz erlauben.
-
4.12. Durchführung von
Performancetests
-
Die
Performancetests werden zunächst
unabhängig
vom anwenderspezifischen IT-Netzwerk
im Testlabor durchgeführt.
-
Dabei
wird jedes einzelne Gerät
einer Untersuchung auf Reaktionszeiten zunächst ohne Betrachtung des gesamten
Netzwerkverbundes unterzogen.
-
In
einem weiteren Testschritt wird die Netzwerkreaktionszeit zwischen
dem geplanten Einbauort des Gerätes
und dem Standort der Kommunikationspartner ermittelt.
-
Im
darauffolgenden Testschritt werden die Testeinheiten netzwerkseitig
am Einbauort über
die verwendete Netzwerkstrecke bis hin zu den spezifizierten Kommunikationspartnern
verbunden und die Performance gemessen.
-
Alle
Testschritte werden zur späteren
Verwendung und Beurteilung dokumentiert und archiviert.
-
4.13. Dokumentation und
Bewertung der Testergebnisse
-
Die
manuell und automatisiert aufgezeichneten Testschritte werden für Zwecke
der Reproduzierbarkeit archiviert und dokumentiert.
-
Die
Testergebnisse werden in Form von Präsentationen zusammengefasst
und können
als Beurteilungsgrundlage präsentiert
werden.
-
5. Fallbeispiel
einer Konformitätsprüfung
-
Im
nachfolgenden Fallbeispiel zur Konformitätsprüfung wird der Begriff „Hersteller" im Singular verwendet.
Dieses steht stellvertretend für
Firmen, welche BACnet-Komponenten
anbieten.
-
Der
Hersteller reicht eine Testeinheit ein, die laut Angabe im EPICS
die BACnet Funktion DM-BR-B (DeviceManagement Backup/Restore als Bereitsteller)
unterstützt.
-
Dies
bedeutet, dass die Testeinheit über
mindestens ein BACnet Fileobject verfügen muss.
-
Der
erste Testschritt (Prüfung
auf GA-Richtline) wäre
somit für
diese Einzelfunktion erfüllt.
-
Wird
im zweiten Testschritt festgestellt, dass entgegen der Angabe im
EPICS kein BACnet-Fileobject vorhanden ist, so ist der Test zu diesem
Zeitpunkt negativ beendet. Ebenfalls der Testschritt eins ist somit
als negativ zu bewerten.
-
Im
dritten Schritt werden nun alle in 135.1 bzw. den begleitenden Normen
festgelegten Prüfungen
automatisch durchgeführt.
-
Dabei
ist das Geräteverhalten
bei Positiv- wie auch Negativtests eindeutig festgelegt.
-
Eine
Einzelfunktion (Prüfung
der einzelnen BACnet BIBBs) kann nur dann als bestanden gewertet
werden, wenn alle einzelnen Prüfschritte
anhand 135.1 erfolgreich absolviert wurden.
-
Im
Idealfall erfüllt
eine Testeinheit eines Herstellers alle Anforderungen des GA-Lastenheftes, der Normen
135.1 und 16484-5 sowie der begleitenden Erweiterungen vollständig.
-
5.1. Darstellung des automatisierten
Prüfablaufs
anhand ANSI/ASHRAE 135.1
-
Im
Standard 135.1 sind für
jedes zu testende BIBB (BACnet Interoperability Building Block,
Interoperabilitätsbaustein)
verschiedene Einzelschritte hinterlegt, die gesamthaft durchgeführt werden
müssen, um
die Konformität
für dieses
BIBB zu überprüfen.
-
Die
Prüfschritte
beinhalten sowohl Positivtests, d.h. die Prüfsoftware sendet ein gültiges Telegramm
mit korrektem Dateninhalt und erwartet vom Prüfling ein gültiges Ergebnis, welches entweder
automatisiert über
das BACnet-Protokoll z.B. durch eine Liste gültiger Returnwerte oder durch
z.B. Ablesen eines Wertes z.B. an einem Bediendisplay (aktuelle
Raumtemperatur, usw.) durch den Bediener der Prüfsoftware verifiziert wird.
-
In
den Negativtests werden syntaktisch zwar korrekte Datentelegramme
allerdings mit einem ungültigen
Dateninhalt an den Prüfling
gesendet. Anschließend
wird verifiziert, ob sich der Prüfling
entsprechend den Vorgaben des Standards korrekt verhält, z.B.
einen korrekten Fehlercode zurückliefert.
-
Als
Fallbeispiel sollen hierbei die Prüfschritte zur Prüfung der
ReadPropertyServiceExecutionTests aus dem Bereich der Application
Execution Tests dienen. Diese Testschritte prüfen die Einhaltung der Konformität im Bereich
des BIBB DS-RP-B und dient hier exemplarisch stellvertretend für alle BACnet-BIBBs.
-
5.1.1. Positivtests ReadPropertyExecution
-
In
diesem Bereich sind zwei Einzeltests spezifiziert:
-
Reading the Size of an
Array
-
Hier
wird geprüft,
ob die Größe eines
Arrays richtig verarbeitet wird.
-
Reading a Single Element
of an Array
-
Hier
wird geprüft,
ob das Auslesen eines einzelnen Elementes des Arrays richtig verarbeitet
wird.
-
5.1.2. Negativtests ReadPropertyExecution
-
In
diesem Bereich sind vier Einzeltests spezifiziert:
-
Reading Non-Array Properties
with an Array Index
-
Hier
wird geprüft,
ob der Prüfling
einen gültigen
Fehlercode liefert beim Versuch, aus einem Element (Property) mit
Angabe eines Arrayindex zu lesen, wobei es sich bei dem referenzierten
Property nicht um ein Array handelt.
-
Reading Array Properties
with an Array Index that is Out of Range
-
Hier
wird geprüft,
ob der Prüfling
einen gültigen
Fehlercode liefert beim Versuch, aus einem Array mit der Angabe
eines Arrayindex außerhalb
des Bereichs des Arrays zu lesen.
-
Reading an Unknown Object
-
Hier
wird geprüft,
ob der Prüfling
einen gültigen
Fehlercode liefert beim Versuch, ein im Prüfling nicht vorhandenes Objekt
zu lesen.
-
Reading an Unknown Property
-
Hier
wird geprüft,
ob der Prüfling
einen gültigen
Fehlercode liefert beim Versuch, eine nicht im Objekt vorhandene
Eigenschaft (Property) auszulesen.
-
Die
in 135.1 spezifizierten Testfälle
sowie sämtliche
Prüfabläufe und
Ergebnisdokumentationen erfolgen innerhalb des Verfahrens weitestgehend
automatisch.
-
Darüber hinaus
werden im Laufe der Tests ebenfalls manuelle Testschritte durchgeführt. Die manuellen
Tests beziehen sich z.B. auf die Bewertung gelesener (vom Bediener
abgelesener) Werte an einem Display, überwiegend im Bereich der BACnet-Clientfunktionalität. Diese
sind in 135.1 auch so gekennzeichnet.
-
5.1.3. Ergebnisbewertung
-
Anhand
der in 135.1 spezifizierten Fehlercodes bzw. zu erwartenden Ergebnisse
wird die Bewertung vorgenommen, ob ein Prüfling den entsprechend spezifizierten
Einzeltest erfolgreich bestanden hat.
-
Ein
Einzelschritt kann nur dann als erfolgreich gewertet werden, wenn
die Ergebnismenge im Bereich der 135.1 spezifizierten Ergebnisse
liegt, bei manuellen Ablesungen ggf. in einem spezifizierten Wertebereich.
-
6. Fallbeispiel
Interoperabilitätstest
-
In
den Interoperabilitätstest
werden ausschließlich
bereits auf Konformität
geprüfte
Geräte verwendet.
-
6.1. Zielsetzung
-
Da
bereits in den Konformitätstests
die Überprüfung auf
korrektes Handling von Datentelegrammen und Verhalten im Fehlerfall überprüft wurden, liegt
der Fokus bei der Interoperabilitätsprüfung in der Untersuchung auf
Timingverhalten der Geräte
sowie zu einander passenden Applikationsimplementierungen der einzelnen
Geräte
im Praxistest.
-
Unterstützen beide
Geräte
zueinander passende BIBBs, z.B. das eine Gerät DS-RP-A und das andere Gerät DS-RP-B, so sagt diese Angabe
noch nichts über
das unterstütze
Mengengerüst,
also die gemeinsame Schnittmenge beider Geräte aus. Die festgestellte Interoperabilität ist der
Datendurchsatz, der von beiden Geräten unterstützt wird.
-
Z.B.
könnte
ein Client auf PC-Basis eine Automationsstation (DDC-Gerät) unter
Umständen
im Extremfall mit Anfragen derart überlasten, dass die Kommunikation
aufgrund von Telegrammwiederholungen extrem langsam werden kann
bis hin zum vollständigen
Ausfall der Kommunikation.
-
Die
Interoperabilitätstests überprüfen und dokumentieren
daher die Abstimmungen zwischen verschiedenen Geräten, um
eine optimale Kommunikation zu erreichen.
-
Weiterhin
beschreibt der BACnet-Standard lediglich die Kommunikation in den
ISO/OSI Modellschichten 1 bis 7, nicht jedoch die Implementierung der
jeweiligen BACnet-Applikation. Hier erfolgt z.B. eine Überprüfung auf
eine unterschiedliche Verarbeitung der Werte in Geräten verschiedener
Hersteller, z.B. die Verarbeitung von Nachkommastellen, usw.
-
6.2. Vorbereitungen der
Interoperabilitätsprüfung
-
Zur
Vorbereitung der Interoperabilitätsprüfung müssen zunächst alle
zu untersuchenden Geräte
in einen gemeinsamen Netzwerkverbund integriert werden, d.h. von
jedem Gerät
zu jedem anderen Gerät
ist eine physikalische und kommunikative Verbindung vorhanden.
-
Untersucht
wird jeweils die Kombination der Applikationsimplementierungen zweier
Geräte
in diesem Verbund.
-
Festlegung des Testumfangs:
-
Getestet
werden können
nur zu einander passende BACnet-Funktionen, die von beiden Geräten unterstützt werden
(gemeinsame Schnittmenge).
-
Hierzu
wird im BACnet-Standard bei der Angabe der BIBBs in A- und B-Funktionen
unterschieden
- A
- = Anforderer (Client)
- B
- = Bereitsteller (Server)
-
Stellt
nun ein Gerät
eine B-Funktion bereit (z.B. ReadProperty-B), so muss das Gerät zu dem die
Interoperabilität
geprüft
wird, über
die entsprechende Clientfunktion ReadProperty-A verfügen.
-
Ist
in diesem Interoperabilitätsbereich
(IOB) keine Übereinstimmung
vorhanden, kann dieser Bereich nicht auf Interoperabilität geprüft werden.
-
Anhand
der gesamten Liste der von beiden Geräten unterstützten Funktionen erfolgt die
Prüfung auf
Interoperabilität.
-
6.3. Durchführung der
Interoperabilitätsprüfung
-
Jede
einzelne von beiden Geräten
unterstützte
Funktion ist ein einzelner Testschritt der Interoperabilitätsprüfung.
-
Auf
Anwendungsebene wird nun der bereitgestellte Wert bzw. die bereitgestellte
BACnet-Funktion (z.B. Datensicherung) aus dem Bereitsteller ausgelesen
und dokumentiert.
-
Der
Anforderer liest diesen Wert bzw. führt die bereitgestellte Funktion
beim Bereitsteller aus.
-
6.4. Bewertung der Interoperabilitätsprüfung
-
Entspricht
der ausgelesene Wert dem zuvor ermittelten Ergebnis bzw. wurde die
Funktion von beiden Seiten erfolgreich abgeschlossen, gilt dieser
Einzelschritt als erfolgreich erfüllt.
-
Ist
in der Gesamtliste der IOB für
einen bestimmten Bereich keine Übereinstimmung
beider Geräte
vorhanden oder wurde die Prüfung
des jeweiligen Einzelschrittes nicht erfolgreich beendet, so ist dieser
Einzelschritt als nicht erfolgreich zu bewerten.
-
Handelt
es sich bei den Geräten
um unterschiedliche Hersteller, so ist zu prüfen und festzulegen, welche
Anpassungen in der Implementierung vorzunehmen sind, um eine Interoperabilität zu erreichen.
-
Als
Beispiel könnte
einer der beiden Hersteller Timing- oder Resourcenparameter vergrößern, um
sich auf die Eigenschaften des anderen Kommunikationspartners anzupassen.
-
Die
Testreihe Interoperabilitätstests
erfüllt damit
die Funktion der Ermittlung einer Entscheidungsgrundlage möglicher
zu treffender Erweiterungen der Geräteapplikationen.
-
7. Fallbeispiel
Performanceuntersuchung
-
Das
Ziel der Performanceuntersuchungen liegt in der Prüfung und
Dokumentation von Netzwerkeigenschaften der IT-Infrastruktur sowie
der Prüfung auf
möglichen
Einfluss auf die Kommunikation eines BACnet-Netzwerkes.
-
Wie
der Name bereits aussagt, handelt es sich ausschließlich um
Untersuchungen auf Resourcen und Timingverhalten in Verbindung mit
der bauseits bereitgestellten Netzwerkinfrastruktur.
-
7.1. Vorbereitungen der
Performanceuntersuchungen
-
Für die Performanceuntersuchungen
müssen
zunächst
geeignete Hilfsmittel zur Messung des Zeitverhaltens zusammengestellt
werden. Hierzu dienen handelsübliche
Werkzeuge wie Netzwerkmonitore und -analyzer sowie zusätzlich noch
zu entwickelnde BACnet-spezifische Werkzeuge, wie u.a. „BACnet-ping".
-
Das
zu verwendende Programm „BACnet-ping" arbeitet analog
zu dem in der IT-Umgebung üblichen
Werkzeug „ping" mit dem Unterschied,
dass dieses speziell auf die für
BACnet erforderlichen, protokollspezifischen Eigenschaften (UDP-Protokoll, verwendete
Portnummern, usw.) angepasst und erweitert ist.
-
Dieses
Tool erlaubt die Zeitmessung eines BACnet-Telegramms mit einem definierten
Dateninhalt über
einen definierten Abschnitt des BACnet-Netzwerkes.
-
7.2. Durchführung der
Performanceuntersuchungen
-
Sämtliche
für die
Prüfung
der Performance festzulegenden Definitionen werden anhand des zu erwartenden
Datenaufkommens zwischen zwei Stationen (Mindestanforderung an den
Netzwerktraffic) zuzüglich
eines Sicherheitsaufschlages in einer gesamten Prüfliste vorgegeben.
Weiterhin enthält
die Prüfliste
die Vorgabe einer gewünschten
Mindestanforderung an die maximal zulässige Zeitdauer jedes Einzelschrittes.
-
In
unterschiedlichen Testschritten werden jeweils unterschiedliche
Mengen sowie unterschiedliche Zugangspunkte und Abschnitte des Netzwerkes zur
anschießenden
Prüfung
festgelegt.
-
Während der
Prüfung
wird die in dem jeweiligen Testschritt definierte Menge an BACnet-Telegrammen
mit einem definierten Dateninhalt von einem definierten Punkt des
Netzwerkes zu einem weiteren definierten Punkt des Netzwerkes über einen definierten
Abschnitt des Netzwerkes gesendet.
-
Die
zum Transport dieser Datenmenge erforderliche Zeitdauer wird dabei
an beiden Zugriffspunkten zum Netzwerk protokolliert und in der
Prüfliste
dokumentiert.
-
7.3. Bewertung der Performanceuntersuchungen
-
Entspricht
das zeitliche Verhalten den gewünschten
zeitlichen Mindestanforderungen, gilt dieser Testschritt als erfolgreich
geprüft.
-
Wird
für die Übertragung
einer definierten Datenmenge über
eine definierte Strecke des Netzwerkes mehr Zeit als erwartet benötigt, so
wird dieser Testschritt als nicht erfolgreich bewertet.
-
Die
Schnittstelle für
die Performanceuntersuchungen beginnen ab dem BACnet-Telegramm, welches
vom Gerät
gesendet wird bis zum Eintreffen des Telegramms beim Empfänger über den
gesamten Weg der Netzwerkstrecke.
-
Im
Rahmen der Performanceuntersuchungen wird mit unterschiedlichen „Telegrammbelastungen" (verschiedene Paketgrößen und
Paketvolumen) des Netzwerkes gearbeitet, um auf mögliche Auswirkungen
auf die Performance und die Gesamtperformance des Systems schließen zu können.
-
Aufgrund
der Ergebnisse der Performanceuntersuchungen können projektspezifische zu
treffende Maßnahmen
wie z.B. Beseitigung von Latenzen im Netzwerk, Auswahl anderer Zugangspunkte, usw.
definiert werden.
-
Die
Performanceuntersuchungen dienen also als Entscheidungsgrundlage
zur Auswahl und zur Vorgabendefinition an einzusetzende BACnet-Geräte und zur
Festlegung der Netzwerkanforderungen.