Skip to content

Zustandsdiagramm

Im folgenden Diagram sehen Sie die einzelnen Zustände, in dem sich Ihr Evrlast-Gerät befinden kann. Jeder Zustand hat seine eigene Aufgabe. Unterhalb des Schaubilds werden die wichtigsten Zustände näher beschrieben.

stateDiagram-v2 Init: Init Startup: Startup note left of Startup Power-On Modem Initialize Modem end note Connect: Connect note left of Connect Connect to network end note Standby: Standby FirmwareUpdate: FirmwareUpdate note right of FirmwareUpdate Download Firmware end note CollectData: CollectData note left of CollectData Activate Power for Layers Read all sensors Persist measurement to bufFs end note EvaluateRules: EvaluateRules SendData: SendData RemoteConfiguration: RemoteConfiguration PrepareSleep: PrepareSleep note left of PrepareSleep Set wakeup Alarm end note DataFailure: DataFailure note left of DataFailure Format BufFs end note FailRecovery: FailRecovery note left of FailRecovery Set alarm (60s) end note Sleep: Sleep note left of Sleep Set Modem to PSM Activate/Deativate Interrups end note Ringing: Ringing note left of Ringing Check for UDP command end note Wakeup: Wakeup ManualTrigger: ManualTrigger note left of ManualTrigger setting forcedSend flag end note SensorWakeup: SensorWakeup [*] --> Init: Power on Init --> Startup Startup --> Connect: Modem initialized Connect --> Startup: Connection failed Connect --> Standby: connected Standby --> FirmwareUpdate: if config says firmware needed FirmwareUpdate --> [*]: Reboot Standby --> CollectData: configuration present CollectData --> EvaluateRules EvaluateRules --> SendData: if time is ready to send SendData --> RemoteConfiguration: corrupt data detected server want new configuration SendData --> PrepareSleep: succesfull SendData --> DataFailure DataFailure --> FailRecovery SendData --> FailRecovery RemoteConfiguration --> FailRecovery: if configuration failed RemoteConfiguration --> PrepareSleep: if it just were an update PrepareSleep --> Sleep FailRecovery --> Sleep Sleep --> Ringing: modem ringing Ringing --> Sleep Ringing --> Wakeup: command detected Sleep --> Wakeup: rtc alarm Sleep --> ManualTrigger: on button event Sleep --> SensorWakeup: sensor interrupt Wakeup --> Standby FirmwareUpdate --> FailRecovery: failed

Startup

Im Startup Zustand werden wichtige Komponenten wie z.B. das Modem initialisiert und auf die bevorstehenden Aufgaben vorbereitet. Während Startup blinkt der LED-Ring(C) türkis.

Standby & Evaluate Rules

In Standby und Evaluate Rules werden die erstellten Echtzeit-Alarme geprüft. Wenn das Gerät erkennt, dass ein Echtzeit-Alarm ausgelöst werden muss, wird sofort in den Send Data Zustand gewechselt, um die Daten so schnell wie möglich an die Cloud zu versenden und den Alarm auszulösen.

Sleep

Im Sleep Zustand fällt das Gerät in den "Schlaf", um Energie zu sparen. Nach dem angegebenen Messintervall wacht das Gerät auf und begibt sich in den Collect Data Zustand.

Collect Data

Im Collect Data Zustand werden die Sensoren ausgelesen. Während Collect Data leuchtet der LED-Ring(C) gelb.

Send Data

Im Send Data Zustand werden die gemessenen Sensordaten per CoAP/HTTP an die Cloud Anwendung gesendet. Während Send Data leuchtet der LED-Ring(C) orange. Ist die Sendung der Daten erfolgreich, blinkt der LED-Ring(C) kurzzeitig grün auf. Ist die Sendung erfolglos, blink der LED-Ring(C) kurzzeitig rot auf und nach kurzer Zeit wird erneut probiert die Sensordaten zu versenden.

Firmware Update

Der Firmware Update Zustand wird eingenommen, wenn ein neues Firmware Update für das Gerät verfügbar ist. Hier wird dann per CoAP die Firmware in mehreren Sequenzen vom Server geladen und installiert. Wenn das Firmware update erfolgreich war, blinkt der LED-Ring(C) grün.