WatchBox - antrax.de
antrax Datentechnik GmbH
[email protected] - www.antrax.de
WatchBox
 serielle Schnittstelle (COM)
 USB-Schnittstelle
Beschreibung
14.11.2012
-1Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Inhaltsverzeichnis
 Allgemeines
 Anwendung der WatchBox
 Sicherheits- und Vorsichtsmaßnahmen
 Lieferumfang
 Hardware
 Software
 Systemvoraussetzungen
 Technische Merkmale
 allgemein
 Lastkreis
 Steuerkreis
 CE-Kennzeichnung
 Arbeitsweise
 allgemein
 WatchBox
 Highlights
 Installation
 Hardware
 Software
 Funktionsreferenz
 Modi
 Triggerung
 Schaltvorgänge + Sequenzen
 Verschiedenes
 Stati lesen
 Programmierung
 allgemein
 Ansprechen der WatchBox
 Programmfehler-Erkennung
 Beispiele
 Bedienung
 LED
 Taster
 Serielle und USB-Schnittstelle
 Unterschied zwischen Modus 1 und Modus 3
 Unterschied zwischen Modus 1 und Modus 4
 WatchBox als Textdrucker ansprechen
 Verwendete Ausdrücke
-2Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Allgemeines
Die WatchBox ermöglicht das direkte oder zeitgesteuerte Ein- und Ausschalten eines
230V-Elektrogerätes über die serielle Schnittstelle eines PC. Timergesteuerte
Schaltvorgänge über die serielle bzw. die USB-Schnittstelle sind mit dem auf der
antrax-Homepage kostenlos erhältlichen Serviceprogramm "ASS" (Antrax-ServiceSoftware) möglich.
Bitte lesen Sie diese Beschreibung bzw. die Help-Datei (über die Homepage zu
beziehen) vor der ersten Inbetriebnahme komplett und sorgfältig. Sie beschreibt den
bestimmungsgemäßen
Gebrauch
und
enthält
wichtige
Hinweise
zur
Installation/Inbetriebnahme
der
WatchBox.
Für
die
Folgen
nicht
bestimmungsgemäßen Gebrauchs übernimmt der Hersteller keine Haftung. Sämtliche
Garantieansprüche entfallen.
Anwendung der WatchBox
Die WatchBox ist für das Schalten von
 ohmschen Lasten
(230V / 8.7A) oder
 induktiven Lasten
(230V / 8.7A)
wie
wie
Glühlampen
Motoren,
oder
Heizlüfter
Transformatoren
in
trockenen,
geschlossenen
Wohnund
Betriebsanleitungen
der
angeschlossenen
Sicherheitsbestimmungen sind zu beachten.
bis
bis
Büroräumen
Elektrogeräte
max.
max.
2000W
2000VA
bestimmt.
Die
und
deren
-3Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Sicherheits- und Vorsichtsmaßnahmen










Öffnen Sie die WatchBox nicht. Sie enthält keine durch Sie zu wartenden Teile.
Betreiben Sie die WatchBox nur in Innenräumen und vermeiden Sie den Einfluss
von Feuchtigkeit.
Betreiben Sie die WatchBox nur in ordnungsgemäß installierten 230VWechselstromsteckdosen oder -leisten.
Reinigen Sie die WatchBox mit einem trockenen Tuch nur nach Entfernen aus
der Steckdose und Trennen des Schnittstellenkabels.
Belasten Sie die WatchBox nur bis zur angegebenen Leistungsgrenze. Eine
Überlastung kann zur Zerstörung der WatchBox führen.
Die WatchBox darf nicht im Zugriffsbereich von Kindern betrieben werden.
Die WatchBox darf nicht an einen bereits eingeschalteten PC/Rechner
angeschlossen werden. Das Anschließen an einen eingeschalteten PC/Rechner
kann zur Zerstörung von Rechnerkomponenten führen.
Nehmen Sie die WatchBox nicht in Betrieb, wenn ein oder mehrere Teile
(Gehäuse, Kabel, Stecker) beschädigt sind oder Beschädigungen zu vermuten
sind (z. B. nach dem Herunterfallen).
Reparaturen an der WatchBox dürfen nur von autorisierten Fachkräften
durchgeführt werden.
Schließen Sie nur Elektrogeräte an, die keine eingeschränkte Einschaltdauer
haben (d. h. alle angeschlossenen Elektrogeräte müssen im Fehlerfall eine
Dauereinschaltung verkraften, ohne Schäden anzurichten).
Achtung:




Der Lastkreis wird über einen 1-poligen elektrischen Schalter geschaltet, d. h.
auch bei ausgeschalteter WatchBox kann an einer der beiden Steckdosenbuchsen
der WatchBox die Netzspannung liegen!
Je nach Betriebszustand kann die WatchBox den angeschlossenen Verbraucher
nach einem Stromausfall einschalten.
Die verwendete COM- bzw. USB-Schnittstelle muss für die WatchBox reserviert
bleiben und darf nicht von anderen Programmen angesprochen werden.
Mit der WatchBox können sehr schnelle EIN/AUS-Schaltfolgen erzeugt werden.
Die Dauer der Schaltzyklen ist an das zu schaltende Elektrogerät anzupassen.
Nicht alle Elektrogeräte vertragen schnelle Schaltfolgen.
-4Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Lieferumfang
Hardware
Alles komplett? Die Einzellieferung einer WatchBox beinhaltet:
 die WatchBox (incl. Anschlusskabel für die serielle bzw. USB-Schnittstelle eines
PC)
 eine Beschreibung / Bedienungsanleitung
Software
 nur bei der WatchBox-USB: die erforderlichen USB-Treiber (USBDrivers.FTDI_antrax UniBox.zip, ca. 360KB) finden Sie auf unserer Homepage
unter http://www.antrax.de
 Kostenlose Software für die Ansteuerung der WatchBox (Serviceprogramm
"ASS" (Antrax-Service-Software) finden Sie ebenfalls auf unserer Homepage
unter http://www.antrax.de
Systemvoraussetzungen
Allgemein
 serielle Schnittstelle (9600-8-N-1)
 USB-Schnittstelle (USB 1.1)
Technische Merkmale
Allgemein
Schutzklasse: IP20, nur für trockene Räume
Steckersystem: SCHUKO
der momentane Schaltzustand wird durch eine grüne LED signalisiert
Last- und Steuerkreis besitzen eine sichere galvanische Trennung über Optotriac
und Transformator
 Umgebungstemperatur: -10 ... +50°C
 Lagertemperatur: -10 ... +70°C




-5Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Lastkreis
 Betriebsspannung: 230/240V~ 50/60Hz
 einpoliger Last-Schalter (Relais)
 maximale Schaltleistung:
ohmsche Lasten wie Glühlampen oder Heizlüfter bis zu 2000W (230V / 8.7A)
induktive Lasten wie Motoren, Transformatoren bis zu 2000VA (230V / 8.7A)
Steuerkreis
 über serielle Schnittstelle (9600, 8, N, 1) oder über USB-Schnittstelle
 max. Anschlusskabellänge: 1,5 m
CE-Kennzeichnung
Entsprechend der Niederspannungsrichtlinie und der EMV-Richtlinie.
-6Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Arbeitsweise
Allgemein
Mit Hilfe eines Watchdogs kann erkannt werden, ob ein Programm auf einem
Rechner korrekt läuft oder ob es durch eine interne (z. B. durch einen
Programmfehler) oder externe (z. B. durch Störimpulse aus der Stromversorgung)
Fehlerquelle unterbrochen bzw. gestört wurde. Voraussetzung dafür ist allerdings,
dass sich das zu überwachende Programm zyklisch bei seinem Watchdog meldet
(Triggerung). Bleibt diese Triggerung aus (weil das Programm z. B. „hängt“), so
leitet der Watchdog eine Problemlösung ein. In der Regel ist das ein HardwareReset des Rechners bzw. das Aus- und Wiedereinschalten der Stromversorgung.
WatchBox
Die WatchBox wird über das Anschlusskabel an eine serielle bzw. USBSchnittstelle des PCs angeschlossen, der mit der Watchdog-Funktionalität
ausgestattet werden soll.
ACHTUNG: In beiden Fällen (Anschluss über serielle Schnittstelle oder USB) wird
die WatchBox von der Software wie eine COM-Schnittstelle angesprochen! Die
verwendeten USB-Treiber stellen der Ansteuersoftware einen virtuellen COM-Port
zur Verfügung - d. h. die WatchBox kann daher genauso einfach wie ein serielles
Gerät angesprochen werden.
Die Rechnersoftware stellt über die serielle bzw. die USB-Schnittstelle an der
WatchBox
 die Zeit TR (innerhalb welcher Zeit muss nachgetriggert werden),
 die Zeit TA (wie lange soll die WatchBox beim Auftreten eines 'WatchdogEreignisses' ausgeschaltet bleiben) und
 die Zeit TF (in welcher Zeit nach dem Watchdog-Ereignis muss spätestens die
Triggerung wieder anlaufen) ein
und triggert die WatchBox danach regelmäßig innerhalb der eingestellten
Zeitspanne.
Die WatchBox wird aktiviert, wenn sich der zu überwachende Rechner innerhalb
der vorgegebenen Zeit (TR) nicht mehr meldet. In einem solchen Fall unterbricht
die WatchBox die Stromversorgung des Rechners, wartet die eingestellte Zeit (TA)
und schaltet danach den Rechner wieder ein. Der Rechner bootet und die Software
wird erneut gestartet (sollte sich im AUTOSTART-Ordner befinden).
-7Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Alternativ zu einem Rechner-Neustart nach einem Fehler kann mit Hilfe der
WatchBox auch ein externes Gerät direkt ein- und ausgeschaltet werden (z. B.
Modem, Lampen, Drucker, Messeinrichtungen etc.). Alle WatchBox-Schaltzeiten
sind in weiten Grenzen variierbar.
Die WatchBox unterscheidet folgende Anfangszustände:
 Fehler-Neustart - die WatchBox hat einen Neustart ausgelöst und wartet auf die
Initialisierung durch die auf dem Rechner gestartete Software (die sich z. B. im
AUTOSTART-Ordner befindet)
 Neustart - der Rechner ist eingeschaltet worden. Die WatchBox hat keinen
Fehler-Neustart gespeichert, da sich der Rechner vor dem letzten Ausschalten
ordnungsgemäß abgemeldet hat (über den Befehl "{+} Deaktiv ")
Die WatchBox kann sogar erkennen, ob eine Triggerung in einer (ungewollten)
Endlosschleife erfolgt: Dem Triggerbefehl kann eine Statusvariable mitgegeben
werden! Wenn sich diese Statusvariable bei zwei aufeinander folgende Triggerungen
nicht verändert, wird der zweite Triggerbefehl ignoriert. Im Fehlerfall kann die
zuletzt eingestellte Statusvariable wieder ausgelesen und zur Basis der Fehlersuche
gemacht werden.
Außerdem erkennt die WatchBox auch das Problem „Rechner oder Betriebssystem
bootet nicht“ (Bootfehler): Nach einem Fehler-Neustart oder einem Power-ON (auch
nach kurzen Spannungseinbrüchen) muss die Triggerung durch die WatchBox in
einer vorher eingestellten Zeit (TF) erfolgen. Passiert dies nicht, löst die WatchBox
einen weiteren Fehler-Neustart aus usw.
-8Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Highlights
 Anschluss über eine COM- bzw. USB-Schnittstelle, daher einfachste Installation
und Ansteuerung:
o einfache (Klar-)Textausgabe über die COM- bzw. USB-Schnittstelle durch die
Software
o mit
jedem
Terminalprogramm
wie
Hyperterminal,
TELIX
o. ä.
(Befehlsübermittlung ähnlich wie bei einem Modem über AT-Befehle).
o die Ansteuerung kann sogar als Textausgabe auf einen "Drucker" erfolgen
(die WatchBox ist dabei ein über eine serielle Schnittstelle
angeschlossener Plain-Text – Drucker)
 Die WatchBox arbeitet betriebssystemunabhängig.
 Die WatchBox hat einen eigenen Mikroprozessor.
 Sie erkennt auch Endlosschleifen-Triggerungen:
o Mehrfache, identische Triggerungen werden ignoriert.
o Der letzte Triggerstatus des Hauptprogramms vor einem Fehler-Neustart
wird auf der WatchBox gespeichert und kann nach dem Booten zurück
gelesen werden (damit lassen sich Rückschlüsse auf die Störungsursachen
ziehen, die zum 'Hängenbleiben' des Systems geführt haben).
 Sie erkennt nicht bootende Rechner ("Windows läuft nicht hoch") durch
Zeitüberwachung nach einem Fehler-Neustart
 Die Retrigger- und Schalt-Zeiten der WatchBox sind in weiten Grenzen
einstellbar (bis zu 214748364 Sekunden = ca. 2485 Tage).
 Einsatz als 230V-Schaltbox ohne Watchdog-Funktionalität für externe Geräte
möglich
o zeitgesteuertes Ein-/Ausschalten
o Verzögertes Einschalten nach Power-ON
 Die benötigte Ansteuersoftware steht kostenlos zur Verfügung unter
http://www.antrax.de
-9Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Installation
Hardware







Rechner ausschalten
serielle bzw. USB-Verbindung zwischen WatchBox und Rechner herstellen
Netzstecker des Rechners in die Steckdose der WatchBox einstecken
WatchBox in eine 230V-Netzsteckdose einstecken
Rechner einschalten
nur bei der WatchBox-USB: nach dem Booten erkennt der PC die neue USBHardware und möchte den Pfad zu dem entsprechenden USB-Treiber genannt
bekommen. Die USB-Treiber finden Sie auf unserer Homepage (USBDrivers.FTDI_antrax UniBox.zip, ca. 360KB). Bitte entpacken Sie die Datei in ein
neues Verzeichnis und geben Sie dieses bei der Installation an (siehe unten).
 Die WatchBox kann über einen mindestens 3 Sekunden langen Druck auf den
Taster (neben dem Anschlusskabel) ein- und ausgeschaltet werden.
USB-Installation
Ist die WatchBox per USB an den Rechner angeschlossen, startet nun der
Hardware-Installations-Assistent, der die passenden Treiber (USB als virtueller COMPort) installiert.
Die USB-Treiber stehen unter http://www.antrax.de zum Download zur Verfügung.
Laden Sie das ZIP-File herunter und entpacken es in ein Verzeichnis auf der lokalen
Festplatte.
Folgendes Beispiel zeigt die Treiberinstallation unter Windows XP:
Nach dem Anschließen an den USB-Port startet der Hardware-InstallationsAssistent:
- 10 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Wählen Sie hier den Punkt: "Nein, diesmal nicht" aus und klicken Sie auf "weiter".
Das folgende Fenster erscheint:
Wählen Sie hier den Punkt: "Software von einer Liste oder bestimmten Quelle
installieren" und klicken Sie auf "weiter".
- 11 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Das folgende Fenster erscheint:
Wählen Sie den Punkt "Durchsuchen" aus und geben Sie das Verzeichnis auf der lokalen
Festplatte an, in das Sie das ZIP-File mit den Treiber-Dateien entpackt haben.
Klicken Sie auf "weiter".
- 12 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Folgendes Fenster erscheint:
Wählen Sie hier "Installation fortsetzen".
Folgendes Fenster erscheint:
Nachdem alle benötigten Dateien kopiert sind, klicken Sie auf "weiter".
- 13 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Folgendes Fenster erscheint:
Klicken Sie hier auf "Fertigstellen".
- 14 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Die Software für die Ansteuerung der WatchBox über einen virtuellen COM-Port ist
nun eingerichtet. Ob der neue COM-Port korrekt funktioniert, können Sie in der
Systemsteuerung im Gerätemanager nachschauen:
Wenn hier beim Punkt "Anschlüsse (COM und LPT)" ein Unterpunkt namens "antrax
UniBox" aufgeführt ist, ist die Installation erfolgreich verlaufen.
Die WatchBox ist nun betriebsbereit.
Software
 Die WatchBox kann nun mit dem Serviceprogramm "ASS" (= Antrax-ServiceSoftware) oder einer anderen Software (wie Hyperterminal, Telix oder jeder
anderen Terminalsoftware) in Betrieb genommen werden.
 Die Ansteuerung durch das zu überwachende Hauptprogramm erfolgt über
dessen Ausgaben auf der seriellen Schnittstelle.
Das Serviceprogramm "ASS" (= Antrax-Service-Software)
http://www.antrax.de heruntergeladen werden.
kann
kostenlos
von
- 15 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Funktionsreferenz
Modi
Syntax
Beschreibung
{+} Modus =
1
Gerät als WatchBox (schaltet den 'eigenen' angeschlossenen
Rechner). Die aktive Hauptfunktion in diesem Modus ist das
kontrollierte AUS/EIN-schalten des Rechners:
-
{+} Modus =
2
Gerät als SwitchBox (schaltet irgendeinen anderen Verbraucher). Die
aktive Hauptfunktion in diesem Modus ist das EIN-schalten von
Verbrauchern:
-
{+} Modus =
3
die Watchdog-Funktionen sind deaktiviert
nach Power on (und Box ohne Funktion) → Steckdose aus!
Default-Einstellung
onapon = 0, triapon = 0
Gerät als WatchBox im Failsave-Modus (schaltet den 'eigenen'
angeschlossenen Rechner). Die aktive Hauptfunktion in diesem Modus
ist das kontrollierte AUS/EIN-schalten des Rechners:
-
{+} Modus =
4
nach Power on (und Box ohne Funktion) → Steckdose ein!
onapon = 1, triapon = 0
nach Power on (und Box ohne Funktion) → Steckdose ein!
die eingestellte Zeit Tf läuft bereits ab Power-ON und schaltet
die WatchBox aus/ein, wenn nicht innerhalb der Zeit Tf
getriggert wird
onapon = 1, triapon = 1
Gerät als WatchBox im "Neutral-Power-On"-Modus (schaltet
irgendeinen anderen Verbraucher). Wie Modus 1 mit dem Unterschied,
dass die WatchBox nach Power on ausgeschaltet bleibt
-
onapon = 0, triapon = 0
- 16 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Modi
{+} onapon = 1
ONAfterPowerON
Beschreibt das Schaltverhalten der WatchBox nach einem PowerON.
Wird mit {+}Modus = n ein Modus festgelegt, wird onapon
automatisch auf den richtigen Wert gesetzt. Dieser kann jedoch
nachträglich geändert werden (z. B. so, dass die WatchBox im
Modus 2 [SwitchBox] arbeitet und nach einem Power-ON
eingeschaltet wird [{+}onapon=1]). Folgende Werte sind möglich:
0
1
2
{+} triapon = 1
Steckdose bleibt nach Power-ON aus (z. B. im Modus 2)
Steckdose wird nach Power-ON eingeschaltet (z. B. im Modus
1)
Steckdose wird eingeschaltet, wenn vor Wegfall der
Stromversorgung die Steckdose eingeschaltet war
Bereich: 0 … 2
Default-Einstellung: 0
wird mit {+}Modus = n möglicherweise neu gesetzt
TRIgAfterPowerON
Beschreibt das Schaltverhalten der WatchBox nach einem PowerON.
Wird mit {+}Modus = n ein Modus festgelegt, wird triapon
automatisch auf den richtigen Wert gesetzt. Dieser kann jedoch
nachträglich geändert werden. Folgende Werte sind möglich:
0
1
-
WatchBox muss nach Power-ON und Einschalten der
Steckdose nicht getriggert werden (z. B. im Modus 1)
WatchBox muss nach Power-ON und Einschalten der
Steckdose getriggert werden (z. B. im Modus 3)
Bereich: 0 … 1
Default-Einstellung: 0
wird mit {+}Modus = n möglicherweise neu gesetzt
- 17 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Triggerung
Syntax
Beschreibung
{+} Tr = 20
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Setzen der Retriggerzeit in Sekunden
- innerhalb dieser Zeit muss regelmäßig getriggert werden,
andernfalls wird ein Watchdog-Ereignis ausgelöst
- Bereich: 1 … 214748364
- Defaulteinstellung: 60 s
{+} Ta = 10
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Setzen der Ausschaltzeitzeit in Sekunden
- bei Eintreten des Watchdog-Ereignisses wird die Steckdose so
lange ausgeschaltet
- Bereich: 1 … 214748364
- Defaulteinstellung: 10 s
{+} Tf = 500
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Setzen der Fehlerzeit in Sekunden
Zeit bis zum nächsten Watchdog-Ereignis, wenn nach einem durch
die WatchBox durchgeführten Watchdog-Ereignis oder durch einen
allgemeinen Power-ON keine [erneute] Triggerung erfolgt (z. B.
'Windows hängt beim Booten')
- Bereich: 0 … 214748364
- Defaulteinstellung: 900 s
Bei einem Wert von 0 ist die Bootfehler-Funktion ausgeschaltet, d.h.
nach einem Watchdog-Ereignis wird die Steckdose dann dauerhaft
eingeschaltet (siehe auch → {+} maxrst )
{+} Trig
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Trigger auslösen
- mit der ersten Triggerung wird die WatchBox scharfgemacht
und muss dann regelmäßig getriggert werden
- die LED blinkt (Tastverhältnis 50:50, 0.5Hz)
- wird der {+}Trig-Befehl gesendet, schaltet die WatchBox
den Verbraucher sofort ein und wartet auf die nächste
Triggerung (Retriggerzeit läuft ab)
- 18 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
{+} Trig = 10
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Trigger auslösen mit Übergabe eines Statuswertes:
Funktion wie oben, mit der Ausnahme, dass nur ein Trigger ausgelöst
wird, wenn der Statuswert sich vom vorherigen unterscheidet. Der
letzte übergebene Statuswert wird bei Eintreten eines WatchdogEreignisses im nichtflüchtigen Speicher abgelegt. Der gespeicherte
und der letzte gesendete Statuswert kann mit dem Befehl "{+} Get"
abgefragt werden. Mit dem Befehl "{+} Del Status" kann der
gespeicherte und der letzte gesendete Status gelöscht werden. Die
Statuswerte werden nur angezeigt, wenn auch ein Status übergeben
wurde. Nach dem Löschen der Werte mit "{+} Del Status" werden
die Zeilen TRIG-STATE und ERROR-STATE nicht ausgegeben.
{+} maxrst = 3
Kann nur im Modus 1, 3, oder 4 (WatchBox) ausgeführt werden.
Anzahl der Neustarts des PC begrenzen
Dieser Befehl wird nur wirksam, wenn der Parameter "Tf" größer als
0 ist:
Soll verhindert werden, dass ein PC nach einem Reset durch fehlende
Triggerung immer wieder neu gestartet wird, so kann mit {+} maxrst
= n eine maximale Anzahl von Neustarts festgelegt werden. Der
interne Zähler ACT-RST wird mit jedem erneuten Reset-Versuch um 1
hochgezählt. Erreicht der Zähler ACT-RST den eingestellten Wert des
Parameters "maxrst", bleibt die Steckdose dauerhaft ausgeschaltet.
-
Bereich: 0 … 65535
wenn 0 → keine Begrenzung
Defaulteinstellung: 10
- 19 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Schaltvorgänge + Sequenzen
Syntax
Beschreibung
{+} Tv = 12
Kann in jedem Modus ausgeführt werden.
Einschaltverzögerung in Sekunden nach Power-ON
Diese Zeit ist nach einem Power-ON allen weiteren Abläufen / Timern
vorgelagert und erlaubt das verzögerte Einschalten der Steckdose
(z. B. zur "Synchronisation" mehrerer, verschieden "schneller" Geräte)
- Bereich: 0 … 214748364
- Defaulteinstellung: 0
{+} Off
Ohne Zeitangabe wird sofort ausgeschaltet
{+} Off = 100
direktes Ausschalten nach der angegebenen Zeit in Sekunden
- Bereich: 0 … 214748364
- wird direkt danach der {+} On = n – Befehl gesendet, startet
eine On/Off-Sequenz
{+} On
Ohne Zeitangabe wird sofort eingeschaltet
{+} On =
100000
direktes Einschalten nach der angegebenen Zeit in Sekunden
- Bereich: 0 … 214748364
- wird direkt danach der {+} Off = n – Befehl gesendet, startet
eine Off/On-Sequenz
{+} On = 20
{+} Off = 40
Startet eine On/Off-Sequenz.
Die WatchBox-Steckdose wird nach 20 Sekunden eingeschaltet. Nach
dem Einschalten, wird nach weiteren 40 Sekunden wieder
ausgeschaltet.
{+} Off = 20
{+} On = 40
Startet eine Off/On-Sequenz.
Die WatchBox-Steckdose wird nach 20 Sekunden ausgeschaltet. Nach
dem Ausschalten, wird nach weiteren 40 Sekunden wieder
eingeschaltet.
- 20 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Bedingungen für das Arbeiten mit Sequenzen:
- die Befehle müssen direkt hintereinander gesendet werden
- der zweite Befehl muss gesendet werden, bevor die im ersten
Befehl angegebene Zeit abgelaufen ist
- eine Sequenz wird durch jeden Befehl unterbrochen, der das
Schalten der Steckdose bewirkt (direkt oder auf Zeit).
- eine Sequenz wird durch die Befehle {+} Deaktiv und {+} Trig
unterbrochen
ACHTUNG: Die übergebenen Zeiten werden im Effekt addiert!
Verschiedenes
Syntax
Beschreibung
{+} Echo ON
Schnittstellenecho einschalten
- Defaulteinstellung: ON
{+} Echo OFF
Schnittstellenecho ausschalten
- Defaulteinstellung: ON
"Testseite"
{+} Testseite
wenn dieser String erkannt wird, blinkt die LED drei Mal
(Hilfe für den Bediener, wenn die WatchBox als COM-Drucker
eingerichtet wird)
{+} Deaktiv
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
WatchBox deaktivierten
- muss nicht mehr getriggert werden
- alle Zeiten bleiben erhalten
- je nach momentanem Zustand: LED statisch EIN oder AUS
{+} Del
EEPROM
Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
nichtflüchtigen Konfigurationsspeicher löschen und Defaultwerte
setzen.
{+} Del Status Kann nur im Modus 1, 3 oder 4 (WatchBox) ausgeführt werden.
Löscht den gespeicherten und den letzten Status, der mit dem {+}
Trig = n Befehl übergeben wurde.
Löscht den Zähler für die WatchDog Ereignisse
- 21 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Allgemeine Befehlsverarbeitung
-
WatchBox-Befehle werden immer mit {+} oder {1} eingeleitet.
Leerzeichen werden ignoriert.
Groß- und Kleinbuchstaben werden nicht unterschieden.
Jeder einzelne Befehl muss mindestens mit CR (Zeichen 13) beendet werden.
Alle WatchBox-Zeiten bleiben solange erhalten, bis sie explizit neu gesetzt werden.
Alle Einstellungen werden in einem nichtflüchtigen Speicher gehalten und
„überleben“ auch einen Stromausfall.
Wichtig bei manueller Eingabe über ein Terminalprogramm: Der Timeout während
einer manuellen Befehlseingabe ist 5 Sekunden (also zügig tippen ...).
Bei Echo = On wird die Befehlsausführung wird mit CRLF + 'OK' + CRLF quittiert.
Nicht erkannte Befehle werden mit CRLF + '?' + CRLF quittiert.
Vor dem Absenden eines Befehls muss der vorhergehende Befehl von der
WatchBox erkannt worden sein (Quittung oder Wartezeit).
Wird mit {+}Modus = n die WatchBox in eine der vier Modi gesetzt, werden die
Parameter "onapon" und "triapon" automatisch verändert. Wird jetzt nachträglich mit
{+}onapon = n bzw. {+}triapon = n eine Kombination eingestellt die zu keiner der vier
Modi passt (siehe Modi, Seite 10), wird nach einem {+}Get Befehl als Modus
"USERDEFINED" angezeigt.
Stati lesen
Syntax
Beschreibung
{+} Remain
Abfrage der noch verbleibenden Zeit bis zum nächsten Schaltvorgang.
Anzeige: COUNT=214748364...0 (Zeile 4 der Statusabfrage)
{+} Get
Senden aller Werte und Zustände
(Beschreibung der Stati siehe unten)
{+} F
Aktuelle Software-Version abfragen (= Datum der Freigabe)
{+} H
Hardware-ID abfragen
- 22 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Statusabfrage mit "{+} Get":
WatchBox
WatchBox=
WatchBox_FS=
WatchBox_NP=
RELAIS=
TIME=
COUNT=
TR=
TA=
TF=
TV=
TRIG-STATE=
ERROR-STATE=
ONAPON=
TRIAPON=
RST-COUNTER=
MAX-RST=
ACT-RST=
OK
Switchbox
00...15
CRLF
SWITCHBOX=
00...14
CRLF
0...1
0...21474836
4
214748364...
0
1...21474836
4
1...21474836
4
0...21474836
4
0...21474836
4
0...21474836
4
0...21474836
4
0...2
0...1
0...65535
0...65535
0...65535
CRLF
CRLF
RELAIS=
TIME=
0...1
0...214748364
CRLF
CRLF
CRLF
COUNT=
214748364...0
CRLF
CRLF
ONAPON=
0...2
CRLF
CRLF
TV=
0...214748364
CRLF
CRLF
OK
CRLF
CRLF
CRLF *)
CRLF *)
CRLF
CRLF
CRLF
CRLF **)
CRLF **)
CRLF
*) Diese Zeilen werden nur ausgegeben, wenn ein Statuswert vorhanden ist.
**) Diese Zeilen werden nur ausgegeben, wenn MAX-RST > 0 ist.
- 23 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Rückgabewerte im einzelnen:
Rückgabe
Beschreibung
WatchBox=00...05
WatchBox_FS=00...05
WatchBox_NP=00...05
SWITCHBOX=00,01,03,04
USERDEFINED=00...05
00
01
02
03
04
05
=
=
=
=
=
=
WB
WB
WB
WB
WB
WB
/ SB ist ausgeschaltet
/ SB ist eingeschaltet
wartet auf nächsten Trigger
/ SB wartet auf Ausschalten
/ SB wartet auf Einschalten
Reboot-Zeit läuft ab
Zusätzlich addieren sich je nach
Ereignis nebenstehenden Werte:
+ 10
z. B:
14 = Sequenz gestartet + warte auf Einschalten
RELAIS=0...1
0 = Steckdose ist AUS
1 = Steckdose ist EIN
TIME=0...214748364
Zeit in Sekunden nach Power on
COUNT=214748364...0
Zeit in Sekunden bis zum Auslösen des nächsten
Vorgangs,
z. B. nach "{+} On=20"
ergibt
"{+} Get" → COUNT=20...0 abwärtszählend, bei
Zählerstand 0 wird die Steckdose eingeschaltet
TR=1...214748364
gespeicherte Retriggerzeit
TA=1...214748364
gespeicherte Ausschaltzeit
TF=0...214748364
gespeicherte Fehlerzeit
TRIG-STATE=0...214748364
letzter mit "{+} Trig" = n übergebener Status
ERROR-STATE=0...214748364
gespeicherter letzter mit "{+} Trig" = n übergebener
Status vor einem Watchdog-Ereignis
Ein-/ Ausschaltsequenz folgt
Hinweis:
TRIG-STATE und ERROR-STATE werden nur ausgegeben, wenn ein Statuswert vorhanden
ist. Nach dem Löschen des Status mit "{+} Del Status" werden diese Zeilen solange
nicht ausgegeben, bis mit "{+} Trig = 0...214748364" ein neuer Status übergeben
wurde.
- 24 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Programmierung
Allgemein
Grundsätzlich sind zwei verschiedene Ansteuerungsarten der WatchBox möglich.
Die zweifellos beste und sicherste Methode der Ansteuerung wird durch das zu
überwachende Hauptprogramm selbst realisiert, d. h. allerdings auch, dass der
Sourcecode des Hauptprogramms vorliegen muss und modifiziert werden
kann/darf/soll. Mit den entsprechenden Änderungen im Sourcecode befasst sich der
Abschnitt "1. Methode: Ansteuerung durch die zu überwachende Software". Steht
der Sourcecode des Hauptprogramms allerdings nicht zur Verfügung, so muss die
WatchBox mit Hilfe eines Hintergrundprogramms (2. Methode) bedient werden.
Leider ist das nur die zweitbeste Methode der Ansteuerung, da es Programmfehler
geben könnte, die mit diesem Verfahren prinzipiell nicht erkannt werden können.
Ein Problem, mit dem übrigens alle Watchdogs zu kämpfen haben.
Der weitaus häufigste Programmierfehler (Programm in Endlosschleife mit
Watchdog-Triggerung) kann von der WatchBox allerdings sicher erkannt werden …!
Ansprechen der WatchBox
Einstellungen und Triggerungen der WatchBox können nur über die serielle bzw.
die USB-Schnittstelle vorgenommen werden.
Im einfachsten Fall genügt es, nach dem Setzen des gewünschten Watchdog-Modus
im Hauptprogramm nur die zyklische Triggerung auszugeben! In diesem Fall werden
die defaultmäßigen Schaltzeiten für Retrigger- und Schalt-Zeiten verwendet. Eine
Initialisierung der WatchBox ist nicht erforderlich.
Die WatchBox-Schaltzeiten können in weiten Grenzen variiert werden, so dass der
Rechner z. B. auch längere Zeit ausgeschaltet bleibt (Ausschaltzeit TA) bzw. mit
sehr langen Retriggerzeiten (TR) betrieben werden kann. Alle Schaltzeiten können
jederzeit neu eingestellt werden.
Die WatchBox kann auch als reine 'Schaltbox' ohne Watchdog-Funktionalität
eingesetzt werden. In diesem Fall können mit den Befehlen "{+} On" und "{+} Off"
externe Geräte wie Modems, Drucker, Lampen oder Messgeräte (auch
zeitgesteuert) direkt vom Rechner ein- bzw. ausgeschaltet werden.
Außerdem erkennt die WatchBox auch das Problem „Rechner (oder Windows)
bootet nicht“: Nach einem Fehler-Neustart muss die Triggerung durch die
WatchBox in einer vorher eingestellten Zeit (TF) erfolgen. Passiert dies nicht, löst
die WatchBox einen weiteren Fehler-Neustart aus usw.
- 25 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Programmfehler-Erkennung
Bei herkömmlichen Watchdogs wird eine Retriggerung bereits durch den
Schreibvorgang (bzw. Funktionsaufruf) selbst realisiert, d. h. es kann nicht erkannt
werden, ob sich zwischen zwei aufeinander folgende Triggerungen im
Hauptprogramm überhaupt etwas geändert hat. Das führt dazu, dass eine
Endlosschleife im Hauptprogramm, die eine Triggerung des Watchdogs enthält,
nicht erkannt werden kann.
Die WatchBox geht hier einen anderen Weg und wertet auch die bei einer
Triggerung (optional) übergebene Statusvariable aus! Bei zwei aufeinander folgende
Triggerungen mit demselben Inhalt wird von der aktivierten WatchBox die zweite
Triggerung ignoriert bzw. als nicht stattgefunden bewertet. Nur durch dieses
Verhalten kann auch der oben beschriebene Programmfehler sicher erkannt
werden.
Beispiele
Beispiel 1
In diesem Beispiel soll die WatchBox den Computer nach dem kontrollierten
Herunterfahren ausschalten und 24 Stunden später wieder einschalten.
Einstellungen:
1. Es wird eine Wartezeit von 60 Sekunden für das kontrollierte Herunterfahren
des PC eingestellt.
2. Es wird eine Ausschaltzeit von 86400 Sekunden (= 24 Stunden) eingestellt.
3. Danach kann das Programm beendet und der PC heruntergefahren werden.
...
...
Send('{+} off = 60');
Send('{+} on = 86400');
...
...
...
...
Programm beenden und PC herunterfahren ...
- 26 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Beispiel 2
In
diesem
(Delphi-)Beispiel
erfolgt
eine
WatchBox-Triggerung
(mit
Endlosschleifenerkennung) durch das Hauptprogramm. Angenommen wird hierbei,
dass die Prozedur "Send" den angegebenen String zur seriellen Schnittstelle
schickt.
Einstellungen:
o Es wird eine Retriggerzeit von 30 Sekunden eingestellt.
o Es wird eine Ausschaltzeit von 20 Sekunden eingestellt.
o Es wird eine Fehlerzeit von 180 Sekunden eingestellt.
o Danach wird regelmäßig getriggert.
var nStatus : integer;
cStatus : string;
Send('{+}
Send('{+}
Send('{+}
Send('{+}
tr = 30');
ta = 20');
tf = 180');
Modus = 1');
nStatus := 0;
// Hauptschleife des Programmes
repeat
nStatus := nStatus + 1;
cString := IntToStr(nStatus);
Send('{+} trig = ' + cString);
...
...
...
until ...
// Statusvariable inkrementieren
// Statusvariable in String
// WatchBox triggern
- 27 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Bedienung
LED
Dauerhaft AUS
WatchBox nicht im Watchdog-Modus, Steckdose
AUS
Dauerhaft EIN
WatchBox nicht im Watchdog-Modus, Steckdose
EIN
Blinkt (Tastverhältnis 50:50,
0.5Hz)
WatchBox im Watchdog-Modus
(Tr läuft ab, wartet auf nächsten Trigger)
Blinkt (Tastverhältnis 50:50, 5Hz)
WatchBox im Watchdog-Modus
(Ta läuft ab, wartet auf Einschalten nach einem
Watchdog-Ereignis)
Blitz (Tastverhältnis 10:90, 0.5Hz)
WatchBox im Watchdog-Modus
(Tf läuft ab, wartet auf erneuten Trigger nach
dem Wiedereinschalten )
Blinkt dreimal kurz
es wurde eine Testseite erkannt (beim Einrichten
eines COM-Druckers)
LED 2 x kurz hell mit 1Hz
Wiederholfrequenz
WatchBox nicht im Watchdog-Modus, Steckdose
wird nach Ablauf der gestarteten Zeit
eingeschaltet.
LED 2 x kurz dunkel mit 1Hz
Wiederholfrequenz
WatchBox nicht im Watchdog-Modus, Steckdose
wird nach Ablauf der gestarteten Zeit
ausgeschaltet.
Taster
Mit dem Drücken des Tasters (länger als 3 Sekunden) werden immer alle Funktionen
deaktiviert und der Zustand der Steckdose wird getoggelt. Die Steckdose ist nach
Betätigung des Tasters immer statisch EIN oder statisch AUS. Die LED zeigt den
aktuellen Zustand der Steckdose an.
- 28 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Serielle und USB-Schnittstelle
 Anschluss über COM-Schnittstelle oder USB-Schnittstelle (= virtuelle COM),
9600-N-8-1
 kein Hard- oder Softwarehandshake (3-Draht-Verbindung, RxD-TxD-GND)
Unterschied zwischen Modus 1 (WatchBox) und Modus 3 (WatchBox_FS)
-
-
Im Modus 1 startet die WatchBox nach Power-ON (Steckdose EIN) ohne auf
eine Triggerung zu warten, d. h. der angeschlossene PC wird dauerhaft
eingeschaltet. Danach liegt es in der Verantwortung des PC die WatchBox
anzusprechen.
Im Modus 3 startet die WatchBox nach Power-ON (Steckdose EIN) und wartet
sofort auf eine Triggerung. Meldet sich der angeschlossene PC nicht innerhalb
der Zeit Tf, führt die WatchBox einen Reset durch und befindet sich danach in
der Reset-Schleife, d. h. es werden so lange Resets durchgeführt, bis der PC sich
meldet.
Unterschied zwischen Modus 1 (WatchBox) und Modus 4 (WatchBox_NP)
-
-
Im Modus 1 startet die WatchBox nach Power-ON (Steckdose EIN) ohne auf
eine Triggerung zu warten, d. h. der angeschlossene PC wird dauerhaft
eingeschaltet. Danach liegt es in der Verantwortung des PC die WatchBox
anzusprechen.
Im Modus 4 verhält sich die WatchBox wie im Modus 1 mit dem Unterschied,
dass die Steckdose nach Power-ON ausgeschaltet bleibt.
WatchBox als Textdrucker ansprechen
Wird die WatchBox als Plain-Text – Drucker angesprochen, so können nicht
mehrere Befehle direkt hintereinander "gedruckt" werden (also nicht innerhalb einer
Druckausgabe). Auch hier muss nach jedem Befehl auf die Quittierung durch die
WatchBox gewartet werden (die WatchBox weiß ja nicht, dass sie gerade über
eine Druckerausgabe angesprochen wird).
- 29 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
Verwendete Ausdrücke
COM
Kurzbezeichnung für die serielle Schnittstelle
Neustart
der Rechnerstart nach Power-ON. Beinhaltet auch
den Kaltstart
Fehler-Neustart
ein Rechner-Neustart, der durch die WatchBox
eingeleitet wird
Kaltstart
der Rechnerstart nach einem Hardware-Reset über
den Reset-Taster
Hardware-Reset
ein Hardware-Reset wird normalerweise über den
sog. Reset-Taster an der Frontblende des Rechners
ausgelöst. Im Gegensatz zum Software-Reset
(z. B. über Ctrl-Alt-Del) ist der Hardware-Reset
neben dem Power-OFF / Power-ON die einzige
wirklich sichere Methode des Rechner-Kaltstarts
Retriggerzeit
die Retriggerzeit ist die Zeit, die zwischen der
letzten Triggerung und dem Fehler-Neustart liegt
Ausschaltzeitzeit
Die Ausschaltzeitzeit ist die Zeit, für die nach einem
Fehler-Neustart
die
WatchBox-Steckdose
abgeschaltet bleibt
Fehler-Zeit
Die Fehlerzeit ist die Zeit, innerhalb derer nach
einem Fehler-Neustart eine Triggerung eingesetzt
haben muss. Passiert das nicht, wird ein neuer
Fehler-Neustart ausgelöst.
Triggerung
die WatchBox erwartet innerhalb der Retriggerzeit
eine zyklische Triggerung. Die Statusvariablen
zweier aufeinander folgende Triggerungen dürfen
(sofern verwendet) nicht denselben Wert haben
(solche Triggerungen werden ignoriert!).
Hauptprogramm oder
zu überwachendes
Programm
bezeichnet das Programm auf dem PC, das die
Triggerungen für die WatchBox aussendet
- 30 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
antrax Datentechnik GmbH
[email protected] - www.antrax.de
WatchBoxServiceprogramm
die WatchBox kann natürlich auch eingesetzt
werden, wenn das Hauptprogramm nicht als
Sourcecode zur Verfügung steht und somit nicht für
den Einsatz einer WatchBox modifiziert werden
kann. Zur allgemeinen Einstellung und Ansteuerung
(= Triggerung)
dient
das
WatchBoxServiceprogramm
WatchBox-Taster
Bezeichnung
WatchBox
WatchBox-LED
Bezeichnung der einzigen LED auf der WatchBox
WatchBox-Steckdose
Bezeichnung der auf der WatchBox befindlichen
230V-Steckdose. Hier wird der Rechner oder ein
externes Gerät angeschlossen
des
einzigen
Tasters
auf
der
- 31 Hasenbrink 4, 32052 Herford, Germany Tel. +49 (0) 5221 929660 Fax +49 (0) 5221 9296628
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement