24.11.2013 Aufrufe

1. Schritte - SysMik GmbH

1. Schritte - SysMik GmbH

1. Schritte - SysMik GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Erste <strong>Schritte</strong> mit<br />

Sedona <strong>1.</strong>2<br />

Softwarebeschreibung<br />

Revision 1


Haftungsausschluss / Impressum<br />

Diese Beschreibung unterstützt Sie beim Einsatz des Gerätes. Das Dokument wurde<br />

anhand der beschriebenen Hard- und Software sorgfältig geprüft, eventuelle Abweichungen<br />

sind jedoch nicht auszuschließen. Für mögliche Fehler in dieser Beschreibung oder in der<br />

Software selbst wird keine Haftung übernommen. Änderungen der Geräte sowie der<br />

zugehörigen Dokumente bleiben vorbehalten. Alle Angaben im Dokument werden einer<br />

regelmäßigen Prüfung unterzogen und notwendige Korrekturen in die nachfolgenden<br />

Auflagen eingearbeitet.<br />

Für Kritik und Anregungen sind wir Ihnen dankbar. Nähere Informationen, wie<br />

weiterführende Beschreibungen, Ausschreibungstexte zu Geräten und über verfügbare<br />

Software, finden Sie im Internet unter www.sysmik.de. Auf Wunsch senden wir Ihnen diese<br />

gern zu.<br />

Die Garantie für das Gerät erlischt bei unsachgemäßer Handhabung, bei Gerätedemontage<br />

sowie bei Verwendung von nicht durch <strong>SysMik</strong> für dieses Gerät freigegebener Software.<br />

Inbetriebsetzung und der Betrieb des Gerätes darf nur unter Beachtung der gültigen<br />

Sicherheitsbestimmungen und durch qualifiziertes Personal vorgenommen werden.<br />

<strong>SysMik</strong> ® und das <strong>SysMik</strong>-Logo sind eingetragene Warenzeichen der <strong>SysMik</strong> <strong>GmbH</strong> Dresden. IPOCS<br />

ist ein Warenzeichen der <strong>SysMik</strong> <strong>GmbH</strong> Dresden. "Networking Together!" © unterliegt dem Copyright<br />

der <strong>SysMik</strong> <strong>GmbH</strong> Dresden.<br />

Tridium ® , JACE ® , Niagara Framework ® , Niagara AX® und Sedona ® sind eingetragene Marken;<br />

WorkPlace AX und Supervisor AX sind Marken von Tridium Inc. – registriert in den USA und weiteren<br />

Ländern.<br />

Alle anderen in dieser Anleitung gebrauchten Warenzeichen sind eingetragener Besitz der jeweiligen<br />

Eigentümer. Diese und weitere Warenzeichen sind im Text verwendet, werden jedoch im Interesse der<br />

Lesbarkeit im Weiteren nicht eigens gekennzeichnet.<br />

Die Vervielfältigung, Weitergabe dieses Dokumentes, sowie die Verwertung und Mitteilung des Inhaltes<br />

ist nur mit Einverständnis der <strong>SysMik</strong> <strong>GmbH</strong> Dresden gestattet.<br />

Copyright © 2013 by <strong>SysMik</strong> <strong>GmbH</strong> Dresden<br />

<strong>SysMik</strong> <strong>GmbH</strong> Dresden Tel + 49 (0) 351 - 4 33 58 - 0<br />

Bertolt-Brecht-Allee 24 Fax + 49 (0) 351 - 4 33 58 - 29<br />

01309 Dresden E-Mail (Verkauf) sales@sysmik.de<br />

E-Mail (Support) service@sysmik.de<br />

Germany Homepage http://www.sysmik.de<br />

2 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Inhalt<br />

Inhalt<br />

1 Sedona Framework 5<br />

<strong>1.</strong>1 Motivation 5<br />

<strong>1.</strong><strong>1.</strong>1 Ausgangspunkt 5<br />

<strong>1.</strong><strong>1.</strong>2 Die Herausforderung 5<br />

<strong>1.</strong><strong>1.</strong>3 Die Antwort 6<br />

<strong>1.</strong>2 Bestandteile 7<br />

<strong>1.</strong>3 Installation 7<br />

<strong>1.</strong>4 Lizenzierung 9<br />

2 Sedona-Engineering mit WorkPlace AX 10<br />

2.1 Sedona Manifeste 10<br />

2.2 Verbindung zum Sedona-Controller 10<br />

2.2.1 Direktverbindung 10<br />

2.2.2 Sox Gateway 11<br />

2.3 Sedona-Tools 11<br />

2.3.1 Backup/Restore Tool 11<br />

2.3.2 Application Manager 12<br />

2.3.3 Kit Manager 13<br />

2.4 Programmierumgebung 13<br />

2.4.1 App 13<br />

2.4.2 Sedona Palette 15<br />

2.4.3 Views 16<br />

2.5 Programmierung 17<br />

2.5.1 Komponenten zur Applikation hinzufügen 17<br />

2.5.2 Komponenten parametrieren 18<br />

2.5.3 Komponenten verbinden 19<br />

2.6 Optimierung 20<br />

2.6.1 Abarbeitungsreihenfolge 20<br />

2.6.2 Zykluszeit 21<br />

2.7 Sicherheit 21<br />

2.7.1 Konfiguration 21<br />

2.7.2 Ratschläge 23<br />

3 Integration von Sedona-Controllern in Niagara AX 24<br />

3.1 Sedona Network 24<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 3


Inhalt<br />

3.2 Sedona-Gerät 26<br />

3.3 Sedona Points 27<br />

3.4 Zentralmanagement 29<br />

3.4.1 Zentrales Nutzermanagement 29<br />

3.4.2 Zentrale Zeitsynchronisierung 29<br />

4 Offline Engineering 30<br />

4.1 Offline Applikationsprogrammierung 30<br />

4.<strong>1.</strong>1 Applikationsdatei erzeugen 30<br />

4.<strong>1.</strong>2 SVM auf dem Engineering-PC starten 31<br />

4.<strong>1.</strong>3 Verbindungsaufnahme zur SVM 33<br />

4.<strong>1.</strong>4 Applikationsprogrammierung 33<br />

4.<strong>1.</strong>5 Applikationsdatei speichern 34<br />

4.2 Offline Integration 34<br />

5 Textuelle Sedona Programmierung 35<br />

5.1 Toolbase 35<br />

5.2 Sedona-Kit 39<br />

5.3 Sedona-Komponente 39<br />

5.4 Provisioning 40<br />

6 Weiterführende Hilfe 43<br />

7 Anhang A: IO-Ansteuerung im ICS-500 44<br />

7.1 LocalIo 44<br />

7.2 Klemmen 45<br />

7.3 Fehlererkennung 45<br />

8 Anhang B: Kommunikation 46<br />

8.1 Modbus 46<br />

8.2 intesaNet 46<br />

4 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona Framework<br />

1 Sedona Framework<br />

<strong>1.</strong>1 Motivation<br />

<strong>1.</strong><strong>1.</strong>1 Ausgangspunkt<br />

Niagara Framework (engl. Baukasten) ist eine hoch modulare beliebig erweiterbare<br />

Software zur Realisierung Internetbasierter Automationslösungen. Die JAVAbasierte<br />

Software läuft auf verschiedenen Plattformen von embedded Controllern<br />

(INTES) bis zu leistungsfähigen Windows-Servern (Supervisor AX ). Durch<br />

Hardwareressourcen (Prozessortakt, verfügbarer Speicher) sowie Lizenzmodelle<br />

(nutzbarer Speicher, Runntime-Units) ergibt sich eine feingranulare<br />

Leistungsabstufung. Darüber hinaus lassen sich alle diese Steuerungskomponenten<br />

zu frei definierbaren Hierarchien verbinden, so dass eine hohe Skalierbarkeit mit<br />

mehreren Freiheitsgraden gegeben ist. So findet sich für jede Aufgabe – von der<br />

Stand-Alone-Anlagensteuerung bis zu weltweit vernetzten Filialketten - die<br />

passende Lösung.<br />

Die modulare Software des Niagara Framework umfasst u.a.<br />

• Eine homogene Entwicklungsumgebung WorkPlaceAX für die gesamte<br />

Automationslösung<br />

• zahlreiche Kommunikationstreiber zur Anbindung bestehender Systeme der<br />

Feldebene<br />

• die Anbindung der Enterprise-Ebene über Kommunikations- bzw.<br />

Datenbanktreiber<br />

• eine integrierte frei programmierbare Steuerung<br />

• frei gestaltbare Webseiten für Visualisierung, Parametrierung<br />

• Systemfunktionen wie Trendlog, Zeitschaltung, Alarme, Reports, Email,<br />

Backup/Restore<br />

• Internet-Sicherheitsprotokolle<br />

<strong>1.</strong><strong>1.</strong>2 Die Herausforderung<br />

Die angesprochene Modularität und Erweiterbarkeit der Niagara Software wie auch<br />

deren Plattformunabhängigkeit wird durch die JAVA-Technologie (virtuelle<br />

Maschine) gewährleistet. Zusammen mit dem erwähnten Funktionsumfang<br />

entstehen erhebliche Anforderungen an die Hardware. Die verfügbaren embedded<br />

Steuerungen INTES verfügen über keine eigenen IO; IO muss also immer über ein<br />

Kommunikationsprotokoll angebunden werden. Gängige Echtzeitanforderungen<br />

können auf Grund der entstehenden Verzögerungen nicht eingehalten werden.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 5


Sedona Framework<br />

Echtzeitfähige Steueralgorithmen konnten bisher nur unterhalb des Niagara<br />

Frameworks, z.B. in programmierbaren LonMark-Feld-Controllern realisiert werden.<br />

Das bedeutete jedoch:<br />

• Ein weiteres Programmiertool neben dem WorkPlace AX<br />

• Verlust von Engineering-Informationen bei der Integration in Niagara<br />

• Keine Einbindung in übergeordnete Backup-Strategien<br />

• Fernzugriff nur über einen extra Zugang.<br />

<strong>1.</strong><strong>1.</strong>3 Die Antwort<br />

Sedona heißt die Antwort auf diese Herausforderung. Sedona ist wie ein kleiner<br />

Bruder des Niagara Frameworks. Es bettet sich nahtlos in die Niagara-Welt ein und<br />

erweitert dabei den Einflussbereich des Niagara Frameworks nach unten auf die<br />

Feldebene. Das Engineering erfolgt mit der gleichen Entwicklungsumgebung<br />

WorkPlace AX und umfasst die grafische Programmierung sowie die Integration von<br />

Sedona-Controllern in Niagara AX . Eingeschlossen darin sind unter anderem auch<br />

Backups, zentrale Nutzerverwaltung und Zeitsynchronisierung. Dabei ist Sedona<br />

speziell für kleine embedded IO-Controller mit wenig Speicher zugeschnitten. Das<br />

Sedona-Laufzeitsystem steht vollständig als open source zur Verfügung, so dass<br />

Gerätehersteller Sedona auf ihre Hardware portieren können. Die<br />

Programmiersprache C garantiert dabei bestmögliche Portabilität.<br />

Ressourcenhungrige Softwarekomponenten wurden durch schlanke, angepasste<br />

Lösungen ersetzt. So ist die Sedona Virtual Machine wesentlich kompakter als die<br />

JAVA VM. Im Gegenzug realisiert Sedona eine echtzeitfähige<br />

Applikationsausführung mit fester Zykluszeit.<br />

Das Sox Gateway als Bestandteil von Niagara AX garantiert vollumfänglichen Zugriff<br />

auf den Sedona-Controller über das Niagara Network hinweg. Das bedeutet, in<br />

verteilten Lösungen dient eine Niagara Station mit Internet-Verbindung als<br />

Programmierzugang zu Sedona-Controllern. Auf diese Weise kann der Sedona-<br />

Controller auch mit der webbasierte Entwicklungsumgebung, die Bestandteil der<br />

Niagara Station ist, über einen Webbrowser programmiert werden.<br />

Für den Stand-Alone-Einsatz der Sedona-Controller notwendige Erweiterungen wie<br />

Visualisierung, Trend, Alarm, Zeitschaltung befinden Sich in Entwicklung.<br />

6 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona Framework<br />

<strong>1.</strong>2 Bestandteile<br />

Im praktischen Umgang mit Sedona wird man mit zwei Softwarepaketen<br />

konfrontiert.<br />

<strong>1.</strong> Sedona Framework ist ein Open-Source-Projekt und enthält die Sedona Virtual<br />

Machine, die wir als Gerätehersteller auf unsere Controller portiert haben. Dazu<br />

kommt die Sedona Programmiersprache incl. Compiler und umfangreicher<br />

Dokumentation, die Sie für die textuelle Sedona-Programmierung zur Erstellung<br />

eigener Komponenten und Kits verwenden.<br />

2. Sedona Framework TXS (Tridium eXtended Services) ist ein Paket von<br />

Softwarekomponenten, die<br />

• das Engineering der Sedona-Controller mit WorkPlace AX ermöglichen sowie<br />

• die Integration von Sedona-Controllern in Niagara AX realisieren.<br />

Ebenfalls enthalten sind Manifeste, die Fähigkeiten und Funktionen der Sedona-<br />

Controller beschreiben.<br />

<strong>1.</strong>3 Installation<br />

<strong>SysMik</strong> vertreibt Produkte auf Basis Niagara Framework und Sedona Framework<br />

unter dem Namen intesa (INTEgrated Server Architecture):<br />

• Supervisor AX und Treiber<br />

• Verschiedene embedded Controller INTES (INTEgration Server) - <strong>SysMik</strong>s<br />

Markenname für JACE (Java Application Control Engine) - mit Zubehör<br />

• Modulare Sedona-Controller ICS-500 mit zahlreichen IO-Klemmen für<br />

analoge und digitale Ein- und Ausgabe, DALI, MBus, Pulszählung<br />

• Kompakte Sedona-Controller SCC410, SCC510, SCC520<br />

Für die Installation von Sedona-Software auf Windows-PCs stellt <strong>SysMik</strong> zwei<br />

Setups bereit:<br />

• Das schlanke intesa Sedona Add-Ons for WorkPlace AX Setup installiert<br />

das Modul sysmikSedona auf einem PC mit bereits vorhandener<br />

Supervisor AX Software. Das Setup umfasst<br />

• Sedona Framework<br />

• Sedona Framework TXS<br />

• gerätespezifische Manifeste unserer Controller<br />

• Hilfe/Dokumentation zu Controllern und Komponenten von <strong>SysMik</strong>.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 7


Sedona Framework<br />

• Das wesentlich umfangreichere intesa Supervisor AX SAX Setup installiert je<br />

nach Auswahl und Betriebssystem des Rechners<br />

• intesa Supervisor AX incl. WorkPlace AX für Windows 32 bit oder<br />

• intesa Supervisor AX incl. WorkPlace AX für Windows 64 bit<br />

• das Modul sysmikSedona (intesa Sedona Add-Ons für WorkPlace AX )<br />

• das Modul sysmikNiLS (Niagara Lighting Solution auf Basis DALI)<br />

Die Installation von Sedona <strong>1.</strong>2 setzt eine vorhandene Installation des Niagara<br />

Framework Version ab 3.7 voraus.<br />

Ist noch kein Niagara Framework ab Version 3.7 installiert, starten Sie bitte das<br />

intesa Supervosor AX SAX Setup. Dieses Setup installiert die aktuelle Version des<br />

Niagara Frameworks sowie sysmikSedona und kopiert das Sedona-TXS-Paket auf<br />

Ihren Rechner. Nach Abschluss des Setup ist das Sedona-TXS-Paket über das<br />

Menü „Tools > Sedona Installer“ zu installieren.<br />

Bei diesem Vorgang wird WorkPlace AX um Sedona-spezifische Menüeinträge<br />

erweitert.<br />

Sollte Niagara Framework bereits auf Ihrem Rechner installiert sein, starten Sie bitte<br />

das Setup intesa Sedona Add-Ons for WorkPlace AX , welches sysmikSedona<br />

installiert und das Sedona-TXS-Paket auf Ihren Rechner kopiert. Nach Abschluss<br />

des Setup ist das Sedona-TXS-Paket über das Menü Tools > Sedona Installer zu<br />

installieren.<br />

Die Hilfe „Doc Sedona Installer“ beschreibt den Vorgang des Installierens eines<br />

Sedona TXS-Bundles im Detail.<br />

8 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona Framework<br />

<strong>1.</strong>4 Lizenzierung<br />

Die INTES-Controller enthalten bereits die Lizenz zur Integration von Sedona-<br />

Controllern über das Sedona Network. Bitte beachten Sie, dass das Sedona<br />

Network – wie jedes andere Netzwerk in Niagara AX – Runtime-Units beansprucht.<br />

Für Supervisor AX ist eine spezielle Treiberlizenz DSXSED nötig, um Sedona-<br />

Controller über das Sedona Network direkt zu integrieren.<br />

Für das Engineering von Sedona-Controllern mit WorkPlace AX ist über die normale<br />

WorkPlace AX -Lizenz hinaus keine weitere Lizenzierung erforderlich.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 9


Sedona-Engineering mit WorkPlaceAX<br />

2 Sedona-Engineering mit WorkPlace AX<br />

2.1 Sedona Manifeste<br />

Bei der Entwicklung des Sedona Framework wurde besonderen Wert auf geringe<br />

Codegröße gelegt. Daher ist auch die Selbstdokumentation der Sedona-Controller<br />

sehr eingeschränkt. Um mit einem Sedona-Controller kommunizieren und die Daten<br />

korrekt interpretieren zu können, benötigen die Gegenstellen (Supervisor AX bzw.<br />

INTES) passende Manifest-Dateien, in denen die Eigenschaften der Komponenten<br />

in den Kits genau beschrieben sind.<br />

Supervisor AX besitzt eine Manifest-Datenbank (sedona\manifests). Auf<br />

www.sedonadev.org existiert eine globale Datenbank von Manifesten. Der „Sedona<br />

Manifest Manager“ (Menü „Tools > Sedona Manifest Manager“) ermöglicht die<br />

Pflege der lokalen Manifest-Datenbank durch das Nachladen von Manifesten aus<br />

der globalen Manifest-Datenbank. Da die lokale Manifest-Datenbank durch die<br />

intesa- bzw. <strong>SysMik</strong>Sedona-Installation gefüllt wird, wird dieser Manager<br />

typischerweise nicht benötigt.<br />

2.2 Verbindung zum Sedona-Controller<br />

Um einen Sedona-Controller mit WorkPlace AX engineeren zu können, muss eine<br />

Verbindung zum Sedona-Controller aufgebaut werden.<br />

2.2.1 Direktverbindung<br />

Über das Menü „File > Open > Open Device“ erreicht man einen Dialog, in dem man<br />

die IP-Adresse des Sedona-Controllers sowie Nutzernamen / Passwort einträgt. Im<br />

Auslieferungszustand haben unsere Sedona-Controller nur einen Nutzer mit Namen<br />

„admin“ und ohne Passwort. Die Kommunikation erfolgt über das SOX-Protokoll mit<br />

Standardport 1876.<br />

Mit der Bestätigung über „OK“ wird die Verbindung aufgebaut und im<br />

Navigationsbaum von WorkPlace AX entsteht ein neuer Top-Level-Eintrag mit der IP-<br />

Adresse des Sedona-Controllers.<br />

10 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


2.2.2 Sox Gateway<br />

Sedona-Engineering mit WorkPlaceAX<br />

Später wird der Sedona-Controller in Niagara AX integriert, d.h. das Gerät wird<br />

Bestandteil des Sedona Network einer Niagara Station. Dann eröffnet sich ein<br />

weiterer Engineering-Zugang über das Sox Gateway in der Niagara Station. Der<br />

Komponentenbaum des Sedona-Controllers wird in den Komponentenbaum der<br />

Niagara Station eingefügt. Das erhöht die Übersicht im Navigationsbaum von<br />

WorkPlace AX .<br />

Die Kommunikation von WorkPlace AX zur Niagara Station erfolgt über FOX bzw.<br />

FOXS und erst von dort zum Sedona-Controller über SOX. Das ist<br />

sicherheitstechnisch vorteilhaft.<br />

Alternativ zur WorkPlace AX enthalten Niagara Stations eine eingebettete<br />

webbasierte Entwicklungsplatform, die über Webbrowser bedient werden kann.<br />

Über das Sox Gateway können auf diesem Weg auch Sedona-Controller<br />

programmiert werden.<br />

2.3 Sedona-Tools<br />

Im Navigationsbaum kann man den Baum des Sedona-Controllers expandieren.<br />

Unterhalb der SOX-Verbindung finden sich die „Sedona Tools“. Mit Doppelklick auf<br />

die Baum-Einträge werden die Tools gestartet. Eine ausführliche Anleitung zur<br />

Nutzung der Tools erhalten Sie in der Online-Hilfe unter „Doc Sedona Tools“.<br />

2.3.1 Backup/Restore Tool<br />

Mit dem „Backup/Restore Tool“ kann man Backups der Software des Sedona-<br />

Controllers (Applikation, Scode, SVM) auf dem Engineering-PC anlegen und im<br />

Bedarfsfall zurück in den Controller laden. Dieses Tool kommt insbesondere beim<br />

Gerätetausch zum Einsatz.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 11


Sedona-Engineering mit WorkPlaceAX<br />

2.3.2 Application Manager<br />

Der „Application Manager“ kann die Applikation des Sedona-Controllers auf dem<br />

Engineering-PC speichern („Get“) und gespeicherte Applikationen in den Sedona-<br />

Controller laden („Put“). Diese Funktion wird vor allem verwendet, um Applikationen<br />

extern bzw. offline zu modifizieren und zu testen, bevor sie wieder in den Sedona-<br />

Controller geladen werden.<br />

12 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

2.3.3 Kit Manager<br />

Der „Kit Manager“ erlaubt die Auswahl bzw. Versionsupdates von Kits, die im Scode<br />

enthalten sein sollen. In die Applikation können nur Komponenten aus Kits eingefügt<br />

werden, die im Scode enthalten sind. Wenn Sie eigene Kits programmieren, müssen<br />

sie diese mit dem „Kit Manager“ dem Scode hinzufügen, um die enthaltenen<br />

Komponenten in der Applikation nutzen zu können.<br />

2.4 Programmierumgebung<br />

2.4.1 App<br />

Im Navigationsbaum kann man den Baum des Sedona-Controllers expandieren.<br />

Unterhalb der SOX-Verbindung finden sich die „App“. Das ist die Sedona-<br />

Applikation. Wann immer die Applikation modifiziert wird, erinnert das App-Symbol<br />

im Baum daran, dass die Applikation gespeichert werden muss. Dazu gibt es im<br />

lokalen Menü die Aktion „Save“. Weitere wichtige Aktionen sind „Restart“ der<br />

Applikation und „Reboot“ des Sedona-Controllers.<br />

„App“ besitzt zudem das Property „Scan Period“, mit dem die Zykluszeit der<br />

Applikationsausführung eingestellt werden kann.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 13


Sedona-Engineering mit WorkPlaceAX<br />

Unterhalb von „App“ befindet sich ein Ordner „service“, in dem wichtige Service-<br />

Funktionen enthalten sind. Der Platform Service „plat“ ermöglicht den Zugriff auf<br />

plattformspezifische Einstellungen des Sedona-Controllers wie die IP-Adressdaten.<br />

Der Service „sox“ stellt das Kommunikationsprotokoll SOX für Engineering und<br />

Integration bereit. Für jegliche Kommunikation über SOX ist eine Anmeldung<br />

erforderlich. Unter dem Nutzerservice „users“ ist der Administrator-Zugang „admin“<br />

enthalten. Mit einem Doppelklick auf „users“ öffnen Sie den User Manager. Hier<br />

können Sie Nutzer anlegen oder löschen, Rechte vergeben und Passwörter ändern.<br />

14 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

2.4.2 Sedona Palette<br />

Um Komponenten einer Applikation hinzufügen zu können, muss die „Sedona<br />

Palette“ über das Menü „Window > Side Bars > Sedona Palette“ aktiviert werden.<br />

Die Sedona-Palette enthält eine Auswahlbox mit allen im Scode enthaltenen Kits.<br />

Nach Auswahl des gewünschten Kits werden alle Komponenten des Kits in der<br />

darunterliegenden Liste angezeigt. Die „Sedona Palette“ ist nur gefüllt, wenn eine<br />

View einer Sedona-Komponente angezeigt wird.<br />

Alle Kits mit führendem „<strong>SysMik</strong>“ im Namen stammen von <strong>SysMik</strong>:<br />

• Kits, mit Gebäudeautomations-Funktionen entsprechend VDI 3813 Teil 2<br />

<strong>SysMik</strong>BaSensor<br />

<strong>SysMik</strong>BaActuator<br />

<strong>SysMik</strong>BaOperator<br />

<strong>SysMik</strong>BaAppGeneral<br />

<strong>SysMik</strong>BaAppLighting<br />

<strong>SysMik</strong>BaAppShading<br />

<strong>SysMik</strong>BaAppHvac<br />

• Kits zur Kommunikation<br />

<strong>SysMik</strong>ModbusServer<br />

<strong>SysMik</strong>ModbusClient<br />

<strong>SysMik</strong>IntesaNet<br />

Sensorfunktionen<br />

Aktorfunktionen<br />

Bedien- und Anzeigefunktionen<br />

Allgemeine Anwendungsfunktionen<br />

Anwendungsfunktionen zur Beleuchtungssteuerung<br />

Anwendungsfunktionen zur<br />

Verschattungssteuerung<br />

Anwendungsfunktionen zur Klimasteuerung<br />

Zugriff auf die je 10.000 lokalen Coils, Discrete<br />

Inputs, Holding Register und Input Register des<br />

Modbus TCP-Servers des Controllers<br />

Zugriff auf Modbus-Datenpunkte fremder Modbus-<br />

Geräte über Modbus TCP bzw. Modbus RTU<br />

Netzwerk – Geräte – Punkte auf Basis Modbus<br />

insbesondere zur Kommunikation zwischen<br />

Sedona-Controllern aus der intesa-Produktpalette<br />

• Kits zum Zugriff auf die IO-Klemmen und Bedien- und Anzeigeelemente des<br />

modularen Controllers ICS-500(M)<br />

<strong>SysMik</strong>LocalIo<br />

<strong>SysMik</strong>IcsManualCtrl<br />

LocalIo Netzwerk mit den modularen IO-Klemmen<br />

Ansteuerung von Bedientasten und Display<br />

• Platform-Kits mit plattformspezifischen Funktionen für jeden Controller-Typ<br />

<strong>SysMik</strong>Plat…<br />

NV-RAM-Speicherzugriff<br />

IO der Kompakt-Controller<br />

Alle Komponenten von <strong>SysMik</strong> werden in der Hilfe „Doc Sysmik Sedona“ detailliert<br />

beschrieben. Alle Komponenten der <strong>SysMik</strong>-Kits haben eine View „<strong>SysMik</strong> Sedona<br />

Help“, die die Hilfe zur Komponente anzeigt.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 15


Sedona-Engineering mit WorkPlaceAX<br />

Kits ohne führenden Firmennamen entstammen dem Sedona Framework von<br />

Tridium; z.B.<br />

sys<br />

func<br />

hvac<br />

logic<br />

math<br />

pricomp<br />

sox<br />

timing<br />

types<br />

unsichtbare Systemfunktionen, Folder zur<br />

Strukturierung<br />

Signalfunktionen / Signalgeneratoren<br />

Klimasteuerungsfunktionen<br />

Logische Funktionen/Gatter<br />

Arithmetische Funktionen<br />

Vorrangsteuerung mit 16 Prioritäten<br />

SOX Kommunikationsprotokoll<br />

Zeitfunktionen<br />

Typkonvertierungen, Konstanten<br />

Eine detaillierte Beschreibung der Sedona Framework Kits ist im Ordner<br />

„sedona\doc“ der Niagara AX -Installation über „index.html“ erreichbar.<br />

2.4.3 Views<br />

Alle Komponenten verfügen über mehrere Views, die über das lokale Menü der<br />

Komponente ausgewählt werden können. Die Standard-View ist zudem per<br />

Doppelklick auf die Komponente aktivierbar.<br />

Das „Sedona Property Sheet“ zeigt alle Slots mit Werten. Sie wird insbesondere<br />

zur Parametrierung verwendet.<br />

Das „Wire Sheet“ stellt die untergeordneten Komponenten mit ihren Verbindungen<br />

grafisch dar und dient der grafischen Programmierung.<br />

Das „Link Sheet“ zeigt tabellarisch die Verbindungen der Komponente an.<br />

Das „Slot Sheet“ zeigt alle Slots der Komponente mit ihren Eigenschaften/Facetten<br />

an.<br />

Darüber hinaus kann es weitere komponentenspezifische Views geben wie z.B. den<br />

„User Manager“, die Standardview des „users“ Service.<br />

Alle Komponenten der <strong>SysMik</strong>-Kits haben eine View „<strong>SysMik</strong> Sedona Help“, die die<br />

Hilfe zur Komponente anzeigt.<br />

16 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

2.5 Programmierung<br />

Die grafische Sedona-Programmierung besteht aus dem<br />

• Hinzufügen von Komponenten in die Applikation, dem<br />

• Konfigurieren der Komponenten und dem<br />

• Erstellen von Verbindungen zwischen den Komponenten.<br />

Eine minimale Applikation soll die grundlegenden <strong>Schritte</strong> verdeutlichen: Ein<br />

Signalgenerator soll ein stetiges Stellsignal erzeugen, aus dem eine Aktorfunktion<br />

drei Steuersignale für einen dreistufigen Lüfter generiert.<br />

2.5.1 Komponenten zur Applikation hinzufügen<br />

Per Drag aus der „Sedona Palette“ & Drop auf eine Komponente im<br />

Navigationsbaum können Komponenten aus der „Sedona Palette“ in die Applikation<br />

eingefügt werden. Jeder Komponenten können weitere Komponenten zugeordnet<br />

bzw. untergeordnet werden.<br />

Bitte fügen Sie eine „Folder“ Komponente aus dem Kit „sys“ in ihre „App“ ein. Diese<br />

Komponente wird ausschließlich zur Strukturierung der Applikation verwendet.<br />

Geben Sie als Namen „Demo“ ein.<br />

Mit einem Doppelklick auf „Demo“ öffnen Sie die Standard-View von „Demo“: „Wire<br />

Sheet“. Fügen Sie nun eine Komponente „Ramp“ aus dem Kit „func“ per Drag aus<br />

der „Sedona Palette“ & Drop in das „Wire Sheet“ von „Demo“ ein. Der Name „Ramp“<br />

kann übernommen werden – die Komponente generiert ein Rampensignal. Nun<br />

fügen Sie noch eine Komponente „CtrlDriveFan“ aus dem Kit „<strong>SysMik</strong>BaActuator“<br />

hinzu und vergeben den Namen „Fan“.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 17


Sedona-Engineering mit WorkPlaceAX<br />

2.5.2 Komponenten parametrieren<br />

Mit einem Doppelklick auf „Ramp“ öffnen Sie die Standard-View von „Ramp“:<br />

„Property Sheet“. Ändern Sie den Minimalwert „Min“ auf -20.00, damit der Lüfter in<br />

jeder Periode einige Zeit ausgeschaltet bleibt, die Periodendauer „Period“ auf 120 s<br />

und den „Ramp Type“ auf „sawtooth“. Geänderte Properties werden rot markiert.<br />

Übernehmen Sie die Änderungen mit oder der Schaltfläche „Save“.<br />

18 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

Mit einem Doppelklick auf „Fan“ öffnen Sie die Standard-View von „Fan“: „Property<br />

Sheet“. Ändern Sie die Mindestverweildauer in einer Lüfterstufe „ParCalMinTime“<br />

auf 2 s und den „ParCalFanType“ auf „Hierarchy“ – d.h. in Lüfterstufe drei sind alle<br />

drei binären Ausgangssignale aktiv. Übernehmen Sie die Änderungen mit <br />

oder der Schaltfläche „Save“.<br />

2.5.3 Komponenten verbinden<br />

Mit einem Doppelklick auf „Demo“ öffnen Sie die Standard-View von „Demo“: „Wire<br />

Sheet“. Verbinden Sie nun Ramp und Fan über eine der folgenden Techniken<br />

miteinander:<br />

<strong>1.</strong> Fahren Sie mit der Maus über den rechten Randbereich (Signalquelle) des<br />

Property „Out“ von „Ramp“. Der Mauszeiger wird zum Pfeil . Klicken Sie<br />

nun und halten Sie die Maustaste gedrückt, während Sie mit der Maus auf<br />

den linken Randbereich (Signalziel) der Signaleinganges „V Set“ von „Fan“<br />

fahren. Der Mauszeiger wird wiederum zum Pfeil . Lassen Sie die<br />

Maustaste los und die Verbindung ist erzeugt.<br />

2. Fahren Sie mit der Maus über den rechten Randbereich (Signalquelle) der<br />

untersten weißen Zeile von „Ramp“. Der Mauszeiger wird zum Pfeil .<br />

Klicken Sie nun und halten Sie die Maustaste gedrückt, während Sie mit der<br />

Maus auf den linken Randbereich (Signalziel) der untersten weißen Zeile<br />

von „Fan“ fahren. Der Mauszeiger wird wiederum zum Pfeil . Lassen Sie<br />

die Maustaste los und ein Dialog zur Definition von Quell- und Zielsignal<br />

erscheint. Wählen Sie „Out“ von „Ramp“. Alle Slots von „Fan“, die<br />

hinsichtlich Typ bzw. Schreibbarkeit als Zielsignal nicht in Frage kommen,<br />

werden grau gefärbt. Wählen Sie „V Set“ von „Fan“.<br />

Mit „OK“ wird die Verbindung erzeugt. Es sind sämtliche Mischformen aus 1)<br />

und 2) erlaubt.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 19


Sedona-Engineering mit WorkPlaceAX<br />

3. Wählen Sie „Link Mark“ im lokalen Menü von „Ramp“. Wählen Sie „Link<br />

From „Ramp“ im lokalen Menü von „Fan“. Dialog zur Definition von Quellund<br />

Zielsignal erscheint. Diese Methode eignet sich vor allem dann, wenn<br />

Verbindungen zwischen Komponenten erzeugt werden sollen, die in der<br />

Applikationsstruktur verteilt sind und daher nicht gleichzeitig in einem „Wire<br />

Sheet“ angezeigt werden können.<br />

Beobachten Sie den Signalverlauf des Stellwertes „V Set“ sowie die drei Lüfter-<br />

Ausgangssignale. Speichern Sie die Applikation über „Save“ im lokalen Menü von<br />

„App“.<br />

2.6 Optimierung<br />

2.6.1 Abarbeitungsreihenfolge<br />

Bei der Ausführung (execute) einer Komponente werden immer zuerst die der<br />

Komponente untergeordneten Komponenten (Children) entsprechend ihrer<br />

Anordnung im Navigationsbaum von oben nach unten ausgeführt. Im Sinne einer<br />

schnellen Signalverarbeitung sollte man darauf achten, dass die<br />

Abarbeitungsreihenfolge, die durch den Navigationsbaum definiert wird, dem<br />

Signallauf in der Applikation entspricht. Die Anordnung der Komponenten im<br />

Navigationsbaum wird durch die Reihenfolge der Erzeugung der Komponenten<br />

initiiert und ist typischerweise suboptimal. Die Applikation benötigt dann mehrere<br />

Ausführungszyklen, um Ausgänge in Abhängigkeit von Eingangssignalen zu<br />

steuern. Über den lokalen Menüpunkt „Reorder“ jeder Komponente kann die<br />

Anordnung der untergeordneten Komponenten an den Signalverlauf – von den<br />

Eingängen zu den Ausgängen angepasst werden.<br />

20 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

2.6.2 Zykluszeit<br />

Die Sedona-Applikation wird zyklisch ausgeführt, wobei die Zykluszeit über den Slot<br />

„ScanPeriod“ der „App“-Komponente definiert wird. Es gibt Fälle, in denen für<br />

verschiedene Applikationsteile auch unterschiedliche Zykluszeiten erforderlich sind.<br />

Das gilt z.B. bei Applikationen zur Einzelraumregelung: Während die<br />

Temperaturregelung mit Zykluszeiten von einigen Sekunden zurechtkommt, verlangt<br />

die manuelle Lamellenverstellung von Jalousien Zykluszeiten von z.B. 100 ms. Eine<br />

zyklische Ausführung der gesamten Applikation im 100 ms-Takt aber je nach<br />

Umfang der Applikation zu einer erhöhten Prozessorlast. Mit dem „RateFolder“ aus<br />

dem Kit „sys“ kann die Zykluszeit von Applikationsteilen innerhalb des „RateFolder“<br />

erhöht werden. Dazu wird im Slot „AppCyclesToSkip“ eine Anzahl von<br />

Applikationszyklen eingegeben, die abgewartet werden, bevor der Inhalt des<br />

„RateFolder“ ausgeführt wird. Bei einer Applikationszykluszeit von 100 ms und 9<br />

„AppCyclesToSkip“ ergibt sich z.B. eine Zykluszeit von einer Sekunde für den Inhalt<br />

des „RateFolder“.<br />

2.7 Sicherheit<br />

Die Sedona-Controller besitzen ein Nutzermanagement, welches über den Service<br />

„users“ konfiguriert werden kann. Jede Applikation benötigt einen Administrator-<br />

Zugang mit Vollzugriff auf alle Komponenten der Applikation. Der Standard-<br />

Administrator-Zugang erfolgt über den Nutzernamen „admin“; das Passwort von<br />

„admin“ ist leer.<br />

2.7.1 Konfiguration<br />

Komponenten können 4 verschiedenen Gruppen angehören, für die ein Nutzer<br />

jeweils unterschiedliche Zugriffsrechte erhalten kann. Beim Einfügen neuer<br />

Komponenten in die Applikation werden die Komponenten der „Group 1“<br />

zugeordnet. Im „Property Sheet“ der Komponente öffnet ein Klick auf „>>“ hinter<br />

dem Slot „Meta“ den Dialog zur Modifikation der Gruppenzugehörigkeit.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 21


Sedona-Engineering mit WorkPlaceAX<br />

Im „User Manager“, der Standard-View des Services „users“, kann per Doppelklick<br />

auf einen Eintrag der Nutzer-Zugang modifiziert werden.<br />

Ein neues Passwort muss doppelt eingegeben werden. Ein Klick auf „>>“ hinter<br />

„Permissions“ öffnet einen Dialog zur Vergabe der Nutzerrechte in jeder der 4<br />

Gruppen.<br />

Properties und Actions werden mit der Facette „@operator“ zu Operator-Properties<br />

bzw. Operator-Actions. Ohne diese Facette sind es Admin-Properties bzw. Admin-<br />

Actions. Im „Slot Sheet“ einer Komponente kann man die Facetten einsehen.<br />

Die Nutzerrechte lassen folgende Aktionen zu:<br />

Operator Read<br />

Operator Write<br />

Operator Invoke<br />

Admin Read<br />

Admin Write<br />

Admin Invoke<br />

Admin User<br />

Komponenten lesen<br />

Werte von Operator-Properties lesen<br />

Werte von Operator-Properties ändern<br />

Operator-Actions auslösen<br />

Werte von Admin-Properties lesen<br />

Verbindungen lesen<br />

Verbindung von der Komponente erzeugen<br />

Werte von Admin-Properties ändern<br />

Komponenten hinzufügen<br />

Untergeordnete Komponenten sortieren<br />

Komponente umbenennen<br />

Komponente löschen<br />

Verbindungen zu der Komponente erzeugen<br />

Verbindung zu der Komponente löschen<br />

Admin-Actions der Komponente auslösen<br />

Nutzermanagement - nur für „user“-Komponenten:<br />

„user“ lesen, schreiben, ändern, löschen<br />

22 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Sedona-Engineering mit WorkPlaceAX<br />

Ein Klick auf „>>“ hinter „Provisioning Permissions“ öffnet einen Dialog zur Definition<br />

von Aktionen, die vom Nutzer mit den Sedona-Tools ausgeführt werden dürfen.<br />

Auf http://sedonadev.org/doc/security.html finden Sie eine detaillierte Beschreibung<br />

der Sicherheitsmechanismen des Sedona Framework.<br />

2.7.2 Ratschläge<br />

Im Sinne des Zugriffsschutzes sollten folgende Ratschläge beachtet werden:<br />

<strong>1.</strong> Legen Sie neue Nutzer mit zugeschnittenen Rechten und „starken“ Passwörtern<br />

an. Jeder Bearbeiter sollte seinen eigenen Nutzerzugang haben.<br />

2. Definieren Sie einen Administrator-Zugang mit allen Rechten und einem<br />

„starken“ geheimen Passwort. Nutzen Sie den Administrator-Zugang nur in<br />

Ausnahmefällen.<br />

3. Löschen Sie den Administrator-Zugang „admin“.<br />

4. Legen Sie einen Nutzer mit zugeschnittenen Rechten für die Integration in<br />

Niagara AX an. Ausnahme: Wenn Sie das zentrale Sedona-Nutzermanagement<br />

von Niagara AX (siehe Abschnitt 3.4.1) aktivieren, muss die Kommunikation über<br />

einen Administrator-Zugang erfolgen.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 23


Integration von Sedona-Controllern in NiagaraAX<br />

3 Integration von Sedona-Controllern in Niagara AX<br />

Sedona-Controller können als programmierbarer Stanalone-IO-Controller betrieben<br />

werden.<br />

Sedona-Controller können über IntesaNet (siehe Abschnitt 8.2) miteinander<br />

kommunizieren und auf diese Weise in flachen Mehrcontroller-Lösungen zum<br />

Einsatz kommen.<br />

Durch die Integration in Niagara AX werden die Sedona-Controller Teil eines<br />

hochgradig skalierbaren Steuerungssystems und erweitern dieses um eine<br />

programmierbare IO-Ebene. Wir wollen den Sedona-Controller in einen INTES<br />

integrieren.<br />

Eine detaillierte Beschreibung zur Integration von Sedona-Controllern in Niagara AX<br />

finden Sie in der Hilfe „Doc Sedona Networks“.<br />

3.1 Sedona Network<br />

Für die Integration von Sedona-Controllern benötigt der INTES spezielle Software-<br />

Module. Öffnen Sie eine Platformverbindung zum INTES und installieren Sie im<br />

Platform-Tool „Software Manager“ das Modul „sedonanet“. Dabei werden einige<br />

weitere Module, zu denen Abhängigkeiten bestehen mit installiert.<br />

Im INTES muss ein Sedona-Netzwerk angelegt werden. Öffnen Sie eine<br />

Stationsverbindung (FOX) und öffnen Sie mit Doppelklick auf „Drivers“ den „Driver<br />

Manager“.<br />

Mit „New“ wird ein Dialog zur Treiberauswahl angezeigt.<br />

24 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Integration von Sedona-Controllern in NiagaraAX<br />

Wählen Sie „Sedona Network“ und bestätigen Sie mit „OK“.<br />

bestätigen Sie mit „OK“.<br />

Damit der INTES mit dem Sedona-Controller kommunizieren kann, benötigt er die<br />

passenden Manifeste. Die View „Manifest Manager“ des „SedonaNetwork“<br />

ermöglicht den Abgleich der lokalen Manifest-Datenank des Engineering-PC mit der<br />

Manifest-Datenbank des INTES. Das Platform-Tool „Sedona Environment Manager“<br />

geht noch einen Schritt weiter: hier können neben den Kit-Manifesten auch<br />

Platform-Manifeste und Kits abgeglichen werden.<br />

Ab Sedona <strong>1.</strong>2 können die Sedona-Controller ihre Manifeste mit sich führen.<br />

Dadurch ist die manuelle Pflege der Manifest-Datenbank nicht mehr erforderlich.<br />

Der INTES lädt sich die ggf. fehlenden Manifeste bei der ersten Kontaktaufnahme<br />

vom Sedona-Controller.<br />

Per Doppelklick auf das „SedonaNetwork“ öffnen Sie die Gerätedatenbank. Mit<br />

„Discover“ kann nach Sedona-Geräten im Netzwerk gesucht werden.<br />

Bestätigen Sie mit OK.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 25


Integration von Sedona-Controllern in NiagaraAX<br />

3.2 Sedona-Gerät<br />

Mit einem Doppelklick auf den zu integrierenden Sedona-Controller wird dieser in<br />

das „SedonaNetwork“ aufgenommen.<br />

Vergeben Sie den Gerätenamen „Demo“, geben Sie das und bestätigen Sie mit<br />

„OK“.<br />

26 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Integration von Sedona-Controllern in NiagaraAX<br />

Expandieren Sie den Baum des Gerätes „Demo“ im „SedonaNetwork“. Unter<br />

„Sedona Tools“ stehen die bekannten Sedona-Tools zur Verfügung und „Sox<br />

Gateway“ bietet einen vollwertigen Programmierzugang zum Sedona-Controller. Auf<br />

diese Weise kann das Engineering des Sedona-Controllers über den INTES hinweg<br />

erfolgen. Die Kommunikation bis zum INTES erfolgt dabei über FOX und von INTES<br />

zu Sedona-Controller über SOX. Das kann sicherheitstechnisch interessant sein: für<br />

FOX gibt es auch eine sichere Variante FOXS, mit der man über unsichere<br />

Netzwerke kommunizieren kann. So könnte ein zentraler Supervisor AX mit vielen<br />

entfernten INTES über das Internet sicher kommunizieren; hinter den INTES können<br />

Sedona-Controller in einem ein lokalen/sicheren vor-Ort-Netzwert angebunden sein.<br />

3.3 Sedona Points<br />

Per Doppelklick auf „Points“ erscheint die Datenpunktdatenbank. Betätigen Sie<br />

„Discover“<br />

und wählen Sie als „Discovery Type“ „Online“ aus.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 27


Integration von Sedona-Controllern in NiagaraAX<br />

Der Baum der Sedona-Applikation mit allen Komponenten und Slots wird angezeigt.<br />

Wählen Sie von „Fan“ die Slots „ioActuator1“, „ioActuator2“, „ioActuator3“ und „vSet“<br />

aus ( + Klick) und Betätigen Sie die Schaltfläche „Add“. Damit werden die<br />

Punkte in Niagara AX integriert und können hier wie jeder andere Punkt behandelt<br />

werden.<br />

Achtung! Die Kommunikation erfolgt über die „Point Address“, eine<br />

Zusammenstellung aus der ID der Komponente und der ID des Slots. Nachträgliche<br />

Änderungen an der Applikation oder an Komponenten können dazu führen, dass<br />

sich die Adressinformationen ändern. In diesem Fall muss die „Point Address“<br />

angepasst werden.<br />

Das kann für viele Points sehr effektiv manuell erfolgen: Markieren Sie im „Sedona<br />

Point Manager“ eine Gruppe von betroffenen Punkten. Per Doppelklick öffnen Sie<br />

das Bearbeitungsfenster.<br />

Klicken Sie auf das Symbol hinter „Address“.<br />

28 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Integration von Sedona-Controllern in NiagaraAX<br />

Im Dialog „Batch Search and Replace“ können nun einzelne Adressbestandteile für<br />

viele Punkte in einem Vorgang ersetzt werden.<br />

Für einzelne Punkte kann die „Match“-Funktion verwendet werden: Lesen Sie die<br />

Punkte erneut mit „Discover“ ein, wählen Sie einen betroffenen Slot sowie den<br />

zugehörigen Punkt und betätigen Sie die Schaltfläche „Match“, um die<br />

Adressinformation des Slots dem Punkt zuzuweisen.<br />

3.4 Zentralmanagement<br />

3.4.1 Zentrales Nutzermanagement<br />

Man kann Nutzer mehrerer Sedona-Geräte zentral im INTES verwalten. Dazu muss<br />

die Komponente „SedonaUserManager“ aus der Palette „sedonanet“ in den<br />

„Service“-Ordner des INTES kopiert werden. Diese Komponente enthält „User<br />

Service“, in dessen Standard-View Nutzer mit Namen und Passwort definiert<br />

werden können, sowie „Role Service“, in dessen Standard-View Zugriffsrechte zu<br />

Nutzerrollen zusammengefasst werden können.<br />

Mit dem „Sedona Device User Manager“, einer View des „SedonaNetwork“, können<br />

nun für jedes Sedona-Gerät im „SedonaNetwork“ eine Auswahl der zuvor definierten<br />

Nutzer zugewiesen werden; jeweils mit einer zugewiesenen Nutzerrolle.<br />

3.4.2 Zentrale Zeitsynchronisierung<br />

Sedona-Geräte können Zeitfunktionen enthalten, um Steuerungen z. B. abhängig<br />

von der Tageszeit oder vom Wochentag zu beeinflussen. In der Sedona-Applikation<br />

ist dazu ein neuer Service „DateTimeServiceStd“ aus dem Kit „datetimeStd“ nötig.<br />

Über die Standard-View dieses Services kann die Uhrzeit gestellt werden und es<br />

gibt Slots, die von Sekunde bis Jahr und Wochentag die Zeitinformationen<br />

bereitstellen.<br />

Die Synchronisierung der Uhrzeit von Sedona-Geräten kann vom INTES zentral<br />

übernommen werden. Dazu muss der Wert des Property „TimeSyncEnabled“ des<br />

Sedona-Gerätes im „SedonaNetwork“ auf true gestellt werden. Nun wird noch mit<br />

dem „Time Sync Trigger“ des „Sedona Network“ festgelegt, in welchem Rhythmus<br />

die Zeitsynchronisierung erfolgen soll.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 29


Offline Engineering<br />

4 Offline Engineering<br />

In Fällen, in denen keine Verbindung zu einem Sedona-Controller besteht, kann das<br />

Engineering auch offline ausgeführt werden. Eine detaillierte Beschreibung zum<br />

Offline-Engineering finden Sie in der Hilfe „Doc Sedona Offline Eng“.<br />

4.1 Offline Applikationsprogrammierung<br />

Die Offline-Programmierung erfolgt in folgenden <strong>Schritte</strong>n:<br />

• Passend zum Sedona-Controller (platform) wird eine Applikationsdatei erzeugt<br />

• Auf dem Engineering-PC wird eine SVM (Sedona Virtual Machine) auf Basis der<br />

Applikationsdatei gestartet<br />

• Es wird eine SOX-Verbindung zwischen WorkPlace AX und SVM aufgebaut<br />

• Die Applikationsprogrammierung erfolgt identisch zur online-Programmierung<br />

• Die Applikationsdatei wird gespeichert und kann später mit dem Sedona-Tool<br />

„Application Manager“ in ein Sedona-Controller geladen zu werden.<br />

4.<strong>1.</strong>1 Applikationsdatei erzeugen<br />

Über das Menü „Tools > Sedona New App“ wird der „New App Manager“ gestartet.<br />

Geben Sie als Name „offline“ ein und bestätigen Sie mit „Next“.<br />

Im folgenden Dialog kann das Administrator-Kennwort sowie der SOX-Port definiert<br />

werden. Vergeben Sie ein Passwort, behalten Sie den Standard-Port bei und<br />

bestätigen Sie mit „Next“.<br />

30 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Offline Engineering<br />

Wählen Sie im nächsten Dialog den „Platform Service Type“<br />

„<strong>SysMik</strong>PlatIcs::IcsPlatformService“ aus und geben den „App Device Name“ „Demo“<br />

ein. Bestätigen Sie mit Finish.<br />

Die Applikationsdatei „offline.sax“ wird erzeugt und der Inhalt der Datei – also „App“<br />

angezeigt.<br />

4.<strong>1.</strong>2 SVM auf dem Engineering-PC starten<br />

Über das Menü „Tools > Sedona Device Simulator“ wird der „Device Simulator“<br />

gestartet.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 31


Offline Engineering<br />

Mit einem Klick auf das Verzeichnissymbol neben „Simulator App File“ starten Sie<br />

den File Browser im Sedona-verzeichnis. Wählen Sie „offline.sax“ aus dem Pfad<br />

„store/apps“. Über die Schaltfläche „Run“ starten Sie die SVM. Die startet zunächst<br />

mit Standard-Scode und Standard-Applikation. Automatisch wird der Scode<br />

passend zu „offline.sax“ erzeugt, die Applikation wird übersetzt und schließlich alles<br />

in die SVM geladen und diese dann neu gestartet.<br />

Die SVM läuft nun mit der neu erzeugten, fast leeren Applikation auf dem PC. Alle<br />

nativen Funktionen wie IO oder Modbus sind allerdings ohne Funktion.<br />

32 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Offline Engineering<br />

4.<strong>1.</strong>3 Verbindungsaufnahme zur SVM<br />

Das oberste Element im Navigationsbaum ist der Engineering-PC selbst. Wählen<br />

Sie im lokalen Menü dieses Elementes „Open Device“.<br />

Bestätigen Sie mit „OK“ und die Verbindung zur lokalen SVM ist erzeugt.<br />

4.<strong>1.</strong>4 Applikationsprogrammierung<br />

Expandieren Sie den Baum der lokalen SOX-Verbindung: er ist identisch zum Baum<br />

einer SOX-Verbindung eines Sedona-Controllers. Die Programmierung erfolgt<br />

absolut identisch. Erstellen Sie die Demo-Applikation noch einmal offline. Sie<br />

können natürlich auch den „Folder“ „Demo“ einfach über die Zwischenablage oder<br />

Drag & Drop aus der online erstellten Applikation kopieren.<br />

Speichern Sie die Applikation in der SVM über die Aktion „Save“ von „App“.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 33


Offline Engineering<br />

4.<strong>1.</strong>5 Applikationsdatei speichern<br />

Öffnen Sie den „Device Simulator“ über das Menü „Tools > Sedona Device<br />

Simulator“. Über die Schaltfläche „Stop“ wird die SVM gestoppt und die Applikation<br />

der SVM gespeichert.<br />

Wählen Sie als Dateinamen „offline.sax“ und Speichern Sie mit „Save“.<br />

Bestätigen Sie die Sicherheitsabfrage mit „Yes“.<br />

4.2 Offline Integration<br />

Auch die Integration eines Sedona-Controllers kann offline, d.h. ohne Verbindung zu<br />

dem Sedona-Controller erfolgen. Dazu kann man den laufenden „Device Simulator“<br />

wie einen Sedona-Controller einlesen und integrieren.<br />

Über das „Sedona Tool“ „Application Manager“ des Gerätes im „SedonaNetwork“<br />

kann man die Applikation im Dateisystem der Station speichern „Get“. Dabei wird<br />

die gespeicherte Datei dem Gerät im Slot „App File“ zugewiesen. Der Vorteil ist,<br />

dass ab diesem Zeitpunkt das Einlesen der Punkte mit „Discover“ im „Sedona Point<br />

Manager“ auch ohne Verbindung zum „Device Simulator“ oder zum Sedona-<br />

Controller über die Option „From App“ erfolgen kann.<br />

Um später in den Online-Betrieb zu wechseln, wird nur noch ein Sedona-Controller<br />

anschlossen, adressiert und über das „Sedona Tool“ „Application Manager“ die<br />

Applikation geladen. Im „SedonaNetwork“ muss die IP-Adresse des Gerätes an den<br />

Sedona-Controller angepasst werden.<br />

34 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Textuelle Sedona Programmierung<br />

5 Textuelle Sedona Programmierung<br />

Grafische Programmierung ist sehr einfach, stößt aber auch schnell an Grenzen.<br />

Einerseits werden grafische Umsetzungen komplexer Applikationen schnell<br />

unübersichtlich, andererseits ist die zyklische Abarbeitung großer Applikationen<br />

nicht sehr effektiv. Textuelle Sprachen sind dagegen komplexer, bieten aber<br />

Sprachmittel, um komplexe Algorithmen übersichtlich und effektiv umzusetzen.<br />

5.1 Toolbase<br />

Sedona Framework enthält eine Sprache „Sedona“ sowie einen Compiler „sedonac“<br />

für Sedona-Quellcode. Dadurch ist es möglich, eigene Kits mit<br />

anwendungsspezifischen Komponenten zu programmieren, die nachfolgend in<br />

Sedona-Applikationen eingefügt werden können. Die im Sedona Framework<br />

enthaltene Hilfe (sedona\doc\index.html) beschreibt alle Aspekte der Kitentwicklung<br />

sowie die Sedona Programmiersprache und den Umgang mit dem Compiler.<br />

Um komfortabel textuell programmieren zu können, empfiehlt sich der Einsatz eines<br />

Programmiereditors. Wir wollen dafür Eclipse, ein weit verbreitetes freies<br />

Programmierwerkzeug der Eclipse Foundation, verwenden.<br />

Da Eclipse auf Java basiert, muss das „Java Runtime Environment“ (JRE) auf dem<br />

PC installiert sein. Dieses erhalten Sie z.B. von www.java.com/de/download.<br />

Die aktuelle Version von Eclipse kann über www.eclipse.org/downloads geladen<br />

werden. Eclipse besitzt kein Setup; stattdessen wird das Archiv einfach in ein<br />

beliebiges Verzeichnis, z.B. „C:\“ ausgepackt.<br />

Der Start von Eclipse erfolgt über „C:\eclipse\eclipse.exe“.<br />

Es muss zunächst ein „Workspace“ ausgewählt werden. Ein Workspace dient der<br />

Gruppierung mehrerer Eclipse-Projekte und ist hier vorerst nicht relevant.<br />

Übernehmen Sie den vorgeschlagenen Pfad, markieren Sie „Use this as default and<br />

do not ask again“, um die Abfrage bei nachfolgenden Starts von Eclipse zu<br />

umgehen und bestätigen Sie mit „OK“.<br />

Öffnen Sie den „New Project Wizard“ über das Menü „File > New > Project“.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 35


Textuelle Sedona Programmierung<br />

Wählen Sie als Projekttyp „General > Project“ und bestätigen Sie mit „Next“.<br />

Geben Sie den Projektnamen „Sedona“ ein und wählen Sie das Sedona-Home-<br />

Verzeichis „sedona“ Ihrer Supervisor AX -Installation als Projektpfad aus. Mit „Finish“<br />

wird das Projekt erzeugt. Schließen Sie die „Welcome“-Seite.<br />

Eclipse kennt die Sedona-Programmiersprache nicht. Sedona ist aber der<br />

Programmiersprache Java sehr ähnlich. Legen Sie den Java-Editor als Editor für<br />

Sedona Quelltext fest. Wählen Sie im Menü „Windows > Preferences“ und im<br />

„Preferences“ Dialog „General > Editors > File Associations“.<br />

36 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Textuelle Sedona Programmierung<br />

Fügen Sie oben mit „Add“ den „File type“ „*.sedona“ hinzu und markieren den neuen<br />

„File type“ in der Liste. Fügen Sie nun unten mit „Add“ den „Java Editor“ als Editor<br />

für Sedona-Quelltext-Dateien hinzu. Bestätigen Sie mit „OK“.<br />

Nun soll noch der Compileraufruf konfiguriert werden, um die Übersetzung des<br />

Quelltextes aus Eclipse heraus mit Mausklick starten zu können. Dazu wird<br />

zunächst ein Kit-Quellverzeichnis angelegt, in welchem alle Sedona-Quelltexte des<br />

zu entwickelnden Kits zusammengefasst werden. Der Verzeichnisname soll dem<br />

Kit-Namen entsprechen. Der Kit-Name wiederum soll mit dem Firmennamen des<br />

Herausgebers des Kits beginnen, um Konflikten bei der Nutzung von Kits<br />

verschiedener Hersteller aus dem Wege zu gehen. Legen Sie im Sedona-Home-<br />

Verzeichnis „C:\Intesa\Supervisor…\sedona“ ein Verzeichnis „src“ und darin ein<br />

Verzeichnis „firmaDemo“ an. Wählen Sie im lokalen Menü des Projektes „Sedona“<br />

den Menüeintrag „Properties“. Wählen Sie „Builders“ und betätigen Sie die<br />

Schaltfläche „New“.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 37


Textuelle Sedona Programmierung<br />

Wählen Sie „Program“ und bestätigen Sie mit „OK“.<br />

Vergeben Sie den Namen „Sedonac firmaDemo“ und wählen Sie als „Location“ mit<br />

„Browse File System“ den Pfad zum Sedona-Compiler „sedonac.exe“ im<br />

Verzeichnis „sedona/bin“. Sedonac erwartet einen Parameter, über den das<br />

Quelltext-Verzeichnis des zu erzeugenden Kits angegeben wird. Wählen Sie als<br />

„Working Directory“ mit „Browse File System“ den soeben erstellten Ordner<br />

„firmaDemo“, schneiden den Inhalt von „Working Directory“ aus und fügen ihn als<br />

„Argument“ wieder ein. Schließen Sie alle offenen Dialoge mit „OK“.<br />

Über des Menü „Project > Build All“ kann der Compiler aufgerufen werden. Da das<br />

Quelltextverzeichnis noch leer ist, generiert der Compiler eine Fehlermeldung.<br />

38 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Textuelle Sedona Programmierung<br />

Im Sedona-Home-Verzeichnis existiert ein Archiv „src.zip“ mit allen Open-Source-<br />

Quelltexten des Sedona Framework. Entpacken Sie das Archiv in das erstellte „src“-<br />

Verzeichnis. Die Quelltexte der Kits stellen gute Codebeispiele dar.<br />

5.2 Sedona-Kit<br />

Die Quellen eines Sedona-Kits bestehen aus der Datei „kit.xml“, einer<br />

Konfigurationsdatei, in der Name, Beschreibung, Version und Abhängigkeiten des<br />

Kits definiert werden, sowie beliebig viele *.sedona-Dateien, die den Quelltext der<br />

Sedona-Komponenten enthalten.<br />

Erstellen Sie die Konfigurationsdatei „kit.xml“ unter „firmaDemo“ mit dem lokalen<br />

Menü „New > File“. Geben Sie folgenden Text ein:<br />

<br />

<br />

<br />

<br />

Danach kann das Kit mit „Project > Build All“ fehlerfrei übersetzt werden. Die<br />

Ergebnisse finden Sie unter „sedona\manifests\firmaDemo“ (Manifest) bzw. unter<br />

„sedona\kits\firmaDemo“ (Kit).<br />

5.3 Sedona-Komponente<br />

Wir wollen einen einfachen P-Regler zru Temperaturregelung programmieren. Eine<br />

Komponente wird eine Klasse dadurch, dass sie von „Component“ abgeleitet wird.<br />

Sie besitzt Properties mit verschiedenen Facetten (@). Die Funktion „execute“ von<br />

„Component“ wird zyklisch aufgerufen – sie wird überschrieben und nimmt den P-<br />

Regel-Algorithmus auf.<br />

Erstellen Sie eine Sedona-Quelltextdatei „TempCtrl.sedona“ und geben Sie<br />

folgenden Quelltext ein:<br />

class TempCtrl extends Component<br />

{<br />

@min=<strong>1.</strong>0 @max=100.0 @unit=Units.kelvin_degrees<br />

@config property float proportional = 3.0<br />

@min=5.0 @max=28.0 @unit=Units.celsius<br />

property float tempSetPoint = 22.0<br />

@min=-20.0 @max=50.0 @unit=Units.celsius<br />

property float roomTemp<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 39


Textuelle Sedona Programmierung<br />

}<br />

@unit=Units.percent<br />

@readonly property float out<br />

virtual override void execute ()<br />

{<br />

float tempDiff<br />

float actuate<br />

tempDiff = tempSetPoint - roomTemp<br />

actuate = tempDiff / proportional<br />

if (actuate > <strong>1.</strong>0)<br />

actuate = <strong>1.</strong>0<br />

if (actuate < 0.0)<br />

actuate = 0.0<br />

out := actuate * 100.0<br />

}<br />

Wieder wird das Kit mit „Project > Build All“ übersetzt.<br />

5.4 Provisioning<br />

Nun soll das neue Kit in der Sedona-Applikation verwendet werden. Dazu muss das<br />

Kit zunächst über das „Sedona Tool“ „Kit Manager“ des Sedona-Controllers<br />

bereitgestellt (provision), also installiert werden.<br />

40 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Textuelle Sedona Programmierung<br />

Markieren Sie das Kit „firmaDemo“, bestätigen Sie mit „Next“ und starten Sie den<br />

Installationsvorgang mit „Finish“.<br />

Wenn der Vorgang abgeschlossen ist, starten Sie die SVM des Sedona-Controllers<br />

mit „Restart Device“ neu. Dabei wird die SOX-Verbindung abgebrochen und Sie<br />

müssen diese erneut öffnen.<br />

Legen Sie unter „App“ einen „Folder“ „Room1“ an. Legen Sie in diesem Ordner eine<br />

Komponente „TempCtrl“ aus dem Kit „firmaDemo“ mit Namen „TCtrl“ an. Wechseln<br />

Sie in die View „Property Sheet“ von „TCtrl“.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 41


Textuelle Sedona Programmierung<br />

Beobachten Sie die Auswirkungen der Property-Facetten (@min, @max, @unit)<br />

und testen Sie den Regler-Algorithmus durch Variation der Raumtemperatur.<br />

42 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Weiterführende Hilfe<br />

6 Weiterführende Hilfe<br />

Die englischsprachige Online-Hilfe des WorkPlace AX enthält Dokumente, die das<br />

Engineering von Sedona-Controllern sowie deren Integration in Niagara AX<br />

beschreiben. Über das Menü „Help“ kann die Hilfe in einem eigenen Fester geöffnet<br />

werden. „Help > OnSite“ öffnet das zur aktiven View passende Hilfethema. Das ist<br />

nützlich, um schnell zur Hilfe von Tools zu gelangen.<br />

Über Das Menü „Window > Side Bars > Help“ wird die Hilfe integraler Bestandteil<br />

des Anwendungsfensters von WorkPlace AX . Hilfethemen werden als View<br />

angezeigt. Folgende Dokumente behandeln Sedona-Themen:<br />

Doc Sedona Installer<br />

Doc Sedona Tools<br />

Doc Sedona Networks<br />

Doc Sedona Offline Eng<br />

Doc Sedona Eng Notes<br />

Doc <strong>SysMik</strong> Sedona<br />

Installation von TXS-Paketen<br />

Sedona Tools<br />

Integration in Niagara AX<br />

Offline Engineering<br />

Manifest Manager<br />

Beschreibung aller Komponenten der <strong>SysMik</strong>-Kits.<br />

Die Komponenten haben eine View „<strong>SysMik</strong><br />

Sedona Help“, die die Hilfe zur Komponente<br />

anzeigt.<br />

Das Sedona-Home-Verzeichnis „sedona“ enthält einen Ordner „doc“. Hier finden Sie<br />

mit „index.html“ den Einstieg in die Hilfe des Open Source Sedona Frameworks.<br />

Diese gibt einen guten Überblick über das Sedona Framework, beschreibt die<br />

Sedona-Programmiersprache, den Sedona Compiler „sedonac“ sowie alle Klassen<br />

der Open-Source-Kits.<br />

Auf www.sedonadev.org findet man neben der aktuellsten Release des Open-<br />

Source Sedona Frameworks inkl. Dokumentation auch den Einstieg in<br />

Diskussionsforen um das Open-Source Sedona Framework.<br />

Fragen um das Engineering von Sedona-Controllern mit WorkPlace AX und die<br />

Integration von Sedona-Controllern in Niagara AX werden auf www.niagaracentral.com<br />

diskutiert.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 43


Anhang A: IO-Ansteuerung im ICS-500<br />

7 Anhang A: IO-Ansteuerung im ICS-500<br />

7.1 LocalIo<br />

Das ICS-500 ist ein modularer Sedona-Controller. Der Controller kann passend zur<br />

jeweiligen Aufgabenstellung mit IO-Klemmen zu einer Station erweitert werden. Es<br />

sind Klemmen mit analogen oder digitalen Eingängen bzw. Ausgängen mit<br />

unterschiedlicher Kanalzahl sowie Funktionsklemmen (DALI, S0-Zähler) verfügbar.<br />

Der Zugriff auf die IO in der Sedona-Applikation erfolgt über die Komponenten des<br />

Kit „<strong>SysMik</strong>LocalIo“. Eine detaillierte Beschreibung aller Komponenten finden Sie in<br />

der Hilfe „Doc <strong>SysMik</strong> Sedona“.<br />

Für den Zugriff muss eine Komponente „LocalIo“ wird in die Applikation eingefügt<br />

werden. Sie dient als Container für alle Klemmen-Komponenten, die hier in der<br />

Reihenfolge eingefügt werden, die der Klemmenreihenfolge der Station entspricht.<br />

Bei Bedarf kann die Reihenfolge der Komponenten über das lokale Menü von<br />

„LocolIo“ „Reorder“ dem tatsächlichen Aufbau der Station angepasst werden.<br />

„LocalIo“ berechnet die Länge der Station sowie die Stromaufnahme und adressiert<br />

alle untergeordneten Klemmenkomponenten. Über die Action „ReconfigIo“ werden<br />

Einstellungen der Klemmenkomponenten dem IO-Treiber des Controllers<br />

übergeben und die Station entsprechend konfiguriert.<br />

44 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Anhang A: IO-Ansteuerung im ICS-500<br />

7.2 Klemmen<br />

Für jede verfügbare Klemme existiert eine Komponente. Die Klemmen-<br />

Komponenten besitzen je Kanal ein Property, über welche die Eingangssignal<br />

gelesen bzw. Ausgangssignale geschrieben werden können.<br />

Einige Klemmen lassen zusätzlich kanalspezifische Konfigurationen zu; z.B. die<br />

Messbereichseinstellung der analogen Eingangskellen „AI…“.<br />

Eine zusätzliche View “Ics500 Clamp Manual“ zeigt Datenblatt der Klemme an.<br />

DALI-Klemmen geben Zugang zu DALI-Netzwerken. Zum Zugriff auf die DALI-<br />

Teilnehmer existieren Dali-Komponenten, die den DALI-Klemmen-Komponenten<br />

untergeordnet werden.<br />

Die Dali-Slave-Komponenten „DaliSCommand“, „DaliSLuxLevel“ und<br />

„DaliSPresence“ sind nur unterhalb der DALI-Multimaster-Klemme „DALIM__...“<br />

nutzbar, um Daten von DALI-Sensoren zugängig zu machen.<br />

7.3 Fehlererkennung<br />

Bei der Konfiguration der Station über die Action „ReconfigIo“ der „LocalIo“-<br />

Komponente werden die Daten der Applikation mit dem erkannten tatsächlichen<br />

Aufbau der Station verglichen: das Resultat der Prüfung steht am Property „Cfg<br />

Error“ von „LocalIo“ zur Auswertung bereit; das Property „Cfg Error Terminal“ gibt<br />

die Klemmennummer, auf die sich der Fehler bezieht, an. Wird ein Fehler erkannt,<br />

wird die IO-LED des ICS-500 gelb; ohne Fehler wird sie grün.<br />

Für den Betrieb der Station gibt es zwei Fehlererkennungs-Komponenten, die<br />

Fehler wie Kabelbruch, Messbereichsverletzungen, Gerätedefekte, DALI-Fehler<br />

usw. erkennen können. „IoErrorLocal“ kann „LocalIo“ direkt untergeordnet werden<br />

und gibt den ersten erkannten Fehler in der Station sowie die betroffene Klemmenund<br />

Kanalnummer aus.<br />

„IoErrorTerminal“ kann einer Klemmen-Komponente untergeordnet werden. Hier<br />

kann sogar ein einzelner Kanal der Klemme konfiguriert werden, für den die<br />

Fehlererkennung durchgeführt werden soll.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 45


Anhang B: Kommunikation<br />

8 Anhang B: Kommunikation<br />

8.1 Modbus<br />

Die Sedona-Controller können als Modbus TCP Server, Modbus TCP Client und als<br />

Modbus RTU Master betrieben werden. Jeder Controller hostet 10.000 Coils, 10.000<br />

Discrete Inputs, 10.000 Holding Register und 10.000 Input Register, die die Sedona-<br />

Applikation mit Komponenten des Kit „<strong>SysMik</strong>ModbusServer“ lesen und<br />

beschreiben kann. Es gibt Lese-Komponenten „Get“ und Schreib-Komponenten<br />

„Set“ für die verschiedenen Datenpunktarten. Es stehen auch Komponenten zur<br />

Verfügung, die Float bzw. Long-Daten in jeweils zwei benachbarten Registern<br />

abbilden können. Für alle Komponenten muss die Datenpunktadresse konfiguriert<br />

werden.<br />

Mit den Komponenten des Kit „SysmikModbusClient“ wiederum erhält die Sedona-<br />

Applikation Zugriff auf die Modbus-Datenpunkte anderer Modbus-Geräte. Die<br />

Kommunikation erfolgt dabei über das Modbus-Protokoll. Es gibt für alle Modbus-<br />

Datenpunkttypen „Get“-Komponenten und für Coils und Holding Register auch<br />

„Set“-Komponenten. Es stehen auch Komponenten zur Verfügung, die Float bzw.<br />

Long-Daten in jeweils zwei benachbarten Registern abbilden können. Für alle<br />

Komponenten muss eine IP-Adresse des Modbus-Servers, die Portnummer, die<br />

Unit-Id, die Datenpunktadresse sowie eine Zykluszeit konfiguriert werden. Ist die IP-<br />

Adresse „0.0.0.0“, dann erfolgt die Kommunikation serielle über Modbus RTU. Die<br />

Zykluszeit definiert das Polling-Intervall (Get) bzw. die Update-Zykluszeit (Set) an.<br />

Die Set-Komponenten lösen das Schreiben zusätzlich bei Werteänderungen – also<br />

ereignisgesteuert aus.<br />

8.2 intesaNet<br />

Sedona-Controller der intesa-Produktfamilie können über intesaNet miteinander<br />

kommunizieren. Die Komponenten des Kit „<strong>SysMik</strong>IntesaNet“ realisieren eine<br />

Treiber – Gerät – Punkt-Struktur zur Kommunikation über Modbus TCP.<br />

Die Komponente „IntesaNet“ ist Container für alle an der Kommunikation beteiligten<br />

Geräte bzw. Kommunikationspartner. Dies sind „LocalDev“ – das lokale/eigene<br />

Gerät und mehrere „RemoteDev“. Für die „RemoteDev“-Komponenten muss die IP-<br />

Adresse des Kommunikationspartners, die Portnummer, die Unit-Id sowie eine<br />

Zykluszeit konfiguriert werden.<br />

Nun können in „LocalDev“ und in den „RemoteDev“-Komponenten Datenpunkte<br />

angelegt werden. In „LocalDev“ werden die Datenpunktadressen automatisch<br />

beginnend bei 0 fortlaufend vergeben; manuelle Anpassungen sind jederzeit<br />

möglich. In „RemoteDev“-Komponenten muss die Datenpunktadresse manuell<br />

konfiguriert werden – passend zu den Datenpunkten in „LocalDev“ des entfernten<br />

Gerätes.<br />

46 Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2


Anhang B: Kommunikation<br />

Beispiel: Der Sedona-Controller mit der IP-Adresse 10.0.7.10 enthält eine<br />

Applikation mit einem Heizungsregler, der über IO ein Heizventil ansteuert und die<br />

Raumtemperatur misst. Der Sedona-Controller mit der IP-Adresse 10.0.7.11 gibt<br />

den Sollwert für die Heizungsregelung vor und überwacht die Raumtemperatur. Der<br />

Sollwert wird also von 10.0.7.11 nach 10.0.7.10 übertragen und die<br />

Raumtemperatur von 10.0.7.10 nach 10.0.7.1<strong>1.</strong><br />

Um kleine Reaktionszeiten bei geringem Kommunikationsaufkommen zu erreichen,<br />

ist es also empfehlenswert, ereignisorientiert zu schreiben und nicht zu pollen. Also<br />

legt man idealerweise ausgehende Daten (zu einem entfernten Gerät) in das<br />

„RemoteDev“ und Eingangsdaten (von einem anderen Gerät) in „LocalDev“.<br />

Der Sollwert wird<br />

• in 10.0.7.10 als „Float“ (nur lesen) im „LocalDev“ mit Datenpunktadresse 0<br />

angelegt; wird hier also gehostet<br />

• in 10.0.7.11 als „FloatWr“ (schreibbar) mit Datenpunktadresse 0 (passend zum<br />

Empfänger) im „RemoteDev“ mit der IP-Adresse 10.0.7.10 angelegt.<br />

Die Raumtemperatur wird<br />

• in 10.0.7.11 als „Float“ (nur lesen) im „LocalDev“ mit Datenpunktadresse 12<br />

angelegt; wird hier also gehostet<br />

• in 10.0.7.10 als „FloatWr“ (schreibbar) mit Datenpunktadresse 12 (passend zum<br />

Empfänger) im „RemoteDev“ mit der IP-Adresse 10.0.7.11 angelegt.<br />

Erste <strong>Schritte</strong> mit Sedona <strong>1.</strong>2 47

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!