Projekt template Embedded Systems WS2019/Initiale Anforderungen: Unterschied zwischen den Versionen

Aus Verteilte Systeme - Wiki
Zur Navigation springen Zur Suche springen
 
(55 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
  +
= Initial Requirements =
Ähmmm Hi!
 
Sorry ich das Template kaputt gemacht =/
 
Die ersten 2 Punkte Rollen und Ziele stimmen jetzt nicht mehr mit den dem Rest von dem Template überein. ...bevor noch jemand den gleichen Fehler macht: ...Wenn ihr das Template kopiert ändert ERST alle Links. LG Felix
 
   
  +
<!-- = Initial Requirements = -->
== Initiale Anforderung ==
 
   
  +
*Req_01: Microcontroller should be able to operate all the sensors and actuators.
[[:Datei:EM2019WSP14.pdf|Ursprüngliche Aufgabenstellung]]
 
   
  +
*Req_02: Surface of the Product should provide an accurate goods placing.
== Rollen (Stakeholder) ==
 
   
  +
*Req_03: The Product should avoid collisions.
* (R01) Endanwender (Beaufsichtiger des Hühnerhauses)
 
* (R02) Huhn (Bewohner des Hauses)
 
* (R03) Entwickler
 
== Ziele ==
 
   
  +
*Req_04: The Product should be able to find the delivery goal point and wait there until a new delivery request is received.
* (Z01) automatisierter Toröffnung und -schließung
 
  +
[[Datei:EM2019WSP06.pdf| Initial Project Description]]
* (Z02) Beobachtung der Anzahl der Tiere außerhalb und innerhalb des Stalls
 
* (Z03) Probleme im Betriebsablauf werden übermittelt(Warnlampe oder SMS-Modem)
 
* (Z04) manuelle Bedienung und Datenausgabe über ein kleines Display
 
   
== Anwendungsfälle ==
+
== Stakeholder Role ==
   
  +
* (R01) Developer : He should choose the components, write the software and assembly the end Product/Prototype.
=== (UC01) Türbedienung nach Helligkeit ===
 
  +
* (R02) End User : End User can be Receiver or Sender of goods. He will request the service (Send or Receive).
[[Datei:EM18WSP15 UC01.png]]
 
{| Border=1 style="border-collapse:collapse; width: 800px;" cellpadding=10}
 
|'''(UC01a) Öffnen der Tür'''
 
Die Türsteuerung soll, nach Anbruch des Tages die Tür öffnen.
 
|-
 
|'''(UC01b) Schließen der Tür'''
 
Die Türsteuerung soll sobald es draußen dunkel ist, vorausgesetzt alle Tiere sind im Stall, das Tor schließen, und überprüfen, dass es auch verschlossen ist. Wenn nicht alle Tiere im Stall sind oder die Tür nicht richtig verschlossen ist, soll auf das Problem aufmerksam gemacht werden.
 
|[[Datei:ESW18P50UC01b.png]]
 
|}
 
   
=== (UC02) Beobachtung der Anzahl der Tiere außerhalb und innerhalb des Stalls ===
 
{| Border=1 style="border-collapse:collapse; width: 800px;" cellpadding=10
 
|'''(UC02a) Hühner, welche den Stall verlassen oder betreten, sollen individuell getrackt werden, um sicherzustellen,dass sich bei Dunkelheit alle Tiere im Stall befinden.'''
 
   
  +
== Milestones ==
|[[Datei:UC03a.png]]
 
|-
 
|'''(UC0) Entwicklung zusätzlicher Treiber für neue Sensoren/Aktoren'''
 
Der Entwickler soll neue Sensoren und Aktoren anbinden und für dieser Treiber neu entwickeln bzw. erweitern können.
 
|[[Datei:UC03b.png]]
 
|-
 
|'''(UC03c) Analyse der Kommunikation mittels Netzwerk-Sniffer'''
 
Der Entwickler soll die Kommuniukation der entwickelten Endgeräte in einem Versuchsaufbau monitoren und analysieren.
 
|[[Datei:UC03c.png]]
 
|}
 
   
  +
* (M01) Interface and control of Sensors and Actuators.
  +
* (M02) Assembly of the Product.
  +
* (M03) Development of the functionality algorithm.
  +
* (M04) Boot can deliver a good to a designated location.
   
=== (UC03) Probleme im Betriebsablauf werden übermittelt(Warnlampe oder SMS-Modem) ===
 
{| Border=1 style="border-collapse:collapse; width: 800px;" cellpadding=10
 
|'''(UC03a) Wiederverwendung von Code in Folgeprojekten'''
 
Der Entwickler soll den in diesem Projekt entwickelten Code inbesondere die Profile LightLink und HomeAutomation in großen Teilen wiederverwenden oder erweitern können.
 
|[[Datei:UC03a.png]]
 
|-
 
|'''(UC03b) Entwicklung zusätzlicher Treiber für neue Sensoren/Aktoren'''
 
Der Entwickler soll neue Sensoren und Aktoren anbinden und für dieser Treiber neu entwickeln bzw. erweitern können.
 
|[[Datei:UC03b.png]]
 
|-
 
|'''(UC03c) Analyse der Kommunikation mittels Netzwerk-Sniffer'''
 
Der Entwickler soll die Kommuniukation der entwickelten Endgeräte in einem Versuchsaufbau monitoren und analysieren.
 
|[[Datei:UC03c.png]]
 
|}
 
   
  +
== Uses Case ==
=== (UC04) Bedienung des Displays ===
 
{| Border=1 style="border-collapse:collapse; width: 800px;" cellpadding=10
 
|'''(UC04a) Konfigurieren je nach Hühneranzahl'''
 
Der Endanwender soll die Anzahl der Hühner verändern können und die Zähler, wie viele Hühner sich im Stall befinden, zurücksetzen können.
 
|[[Datei:UC02a.png]]
 
|-
 
|'''(UC04b) Manuelle Torbedinung'''
 
Der Endanwender soll das Tor auch unabhängig von der Lichtsituation regeln können.
 
|[[Datei:UC02b.png]]
 
|-
 
|'''(UC04c) Auslesen der Messwerte'''
 
Der Endanwender soll die Temperatur und die Anzahl der Tiere im Stall ablesen können
 
|[[Datei:UC02c.png]]
 
|}
 
   
  +
=== (UC01) Sending an Object to the Receiver ===
<!--
 
* (UC01) Nutzung eines WieDAS-ZigBee-Knotens durch R01
 
** (UC01a) Licht ein- und ausschalten
 
** (UC01b) Licht dimmen
 
* (UC02) Integration eines neuen Knotens durch R02
 
** (UC02a) Festlegen der Knotenadresse des Endknotens
 
** (UC02b) Konfiguration der Security-Features
 
** (UC02c) Binding von Schalter-/Lampenpaaren auf ZigBee-Profilebene
 
* (UC03) Nutzung der Realisierung durch weitere Entwickler R03
 
** (UC03a) Wiederverwendung von Code in Folgeprojekten
 
** (UC03b) Entwicklung zusätzlicher Treiber für neue Sensoren/Aktoren
 
** (UC03c) Analyse der Kommunikation mittels Netzwerk-Sniffer
 
-->
 
   
  +
[[Datei:UC01_dboot1.png| 375px]]
== Aktivitätsdiagramme für Anwendungsfälle ==
 
* Ablauf der Schritte in Use Cases in Form von Aktivitätsdiagrammen, u.a. für UC02a/b/c
 
...
 
   
  +
== Requirements and Milestones ==
== Detaillierte Anforderungen mit zugeordneten Zielen und ggf. Anwendungsfällen ==
 
   
  +
f = functional, nf = not functional
nf = nicht-funktional, f = funktional
 
   
  +
* (Req_01, nf) : Microcontroller should be able to operate all the sensors and actuators(M01)
* (A01, nf) Nutzung von BitCloud als Entwicklungsbasis (Z01, Z02)
 
  +
* (Req_02, f) : Surface of theProduct should provide an accurate goods placing.
* (A02, nf) Realisierung auf WieDAS-Knotenhardware (Z01)
 
  +
* (Req_03, f) : The Product should avoid collisions (M01, M03).
* (A02a, nf) Beschränkung auf verfügbaren Speicher der Hardware (Z01)
 
  +
* Req_04, f): The Product should be able to find the delivery goal point and wait there until a new delivery request is received(M03, M04).
* (A02b, f) Unterstützung der WieDAS-Knoten-Sensoren (Z03)
 
  +
== Tests and Simulation ==
* (A02c, f) Aktoransteuerung von WieDAS-Knoten aus (Z03)(UC01)
 
* (A03, nf) Analyse der Kompatibilität von BitCloud mit anderen ZigBee-Umsetzungen (Z02)
 
* (A04, f) Konfigurationsmöglichkeit für Knoten- und PAN-Adresse (Z01)(UC02a)
 
* (A05, f) Elektrische Anbindung einer Lampe an WieDAS-Knoten (Z03)
 
   
  +
*Hardware:
...
 
  +
**Ultrasonic: Read the Distant and check against a physical distant measure.
 
  +
**Motors: Monitoring of direction and speed of rotation.
== Tests und Simulation ==
 
  +
**Color Sensor: Check against the two color used with variation of the environment light.
 
  +
**Reflective Optical Sensor: Check against a line by moving the two sensors to left and right of the line.
* Inbetriebnahme der Hardware
 
  +
**Assembly and test again every single sensor/actuator.
** WieDAS-Wandknoten (AVR-Mikrocontroller) und AVR Raven
 
  +
</br>
** ZigBee Sniffer
 
  +
*Software in Assembly Product and test scenario:
** LED Lampe
 
  +
**Design the Matrix where the Product should work.
** Lüfter
 
  +
**Test if line can be followed.
 
  +
**Test if Rotations are accurate.
* Inbetriebnahme der Software
 
  +
**Test if Obstacle can be detected.
** deCONZ Simulationssoftware für ZigBee
 
  +
**Test if Colors can be detected.
*** Coordinator
 
  +
**Test if a delivery without obstacles can be done.
*** Binding
 
  +
**Test if a delivery with obstacles can be done.
**** (DimmableLight <--> DimmerSwitcher)
 
  +
**Change test scenario and repeat.
*** Security Einstellung
 
** BitCloud ZigBee Stack
 
 
* Test der ZigBee-Implementierung (OnOff)
 
** Implementierung des DimmableLights aus dem HomeAutomation-Profil (OnOff-Fuktionalität)
 
** Simulation des Coordinators mit deCONZ
 
** Simulation des DimmerSwitchers mit deCONZ
 
** Bindig der ZigBee-Implementierung mit simuliereten Knoten
 
** Security Einstellung
 
** Simulation der Lampe durch einfache LED
 
 
* Test der ZigBee-Implementierung (Dimmen)
 
** Implementierung des DimmableLights aus dem HomeAutomation-Profil (Dimmer-Fuktionalität)
 
** Simulation des Coordinators mit deCONZ
 
** Simulation des DimmerSwitchers mit deCONZ
 
** Bindig der ZigBee-Implementierung mit simuliereten Knoten
 
** Security Einstellung
 
** Simulation des Dimmens der Lampe durch Debug-Ausgabe
 
 
* Vollständiger Test
 
** Vollständige Implementierung des DimmableLight (OnOff- und Dimmer-Funktionalität)
 
** Simulation des Coordinators mit deCONZ
 
** Simulation des DimmerSwitchers mit deCONZ
 
** Bindig der ZigBee-Implementierung mit simuliereten Knoten
 
** Security Einstellung
 
** Steuerung der LED-Lampe und Lüfters durch Mikrocontroller
 

Aktuelle Version vom 22. November 2019, 20:58 Uhr

Initial Requirements

  • Req_01: Microcontroller should be able to operate all the sensors and actuators.
  • Req_02: Surface of the Product should provide an accurate goods placing.
  • Req_03: The Product should avoid collisions.
  • Req_04: The Product should be able to find the delivery goal point and wait there until a new delivery request is received.

Datei:EM2019WSP06.pdf

Stakeholder Role

  • (R01) Developer : He should choose the components, write the software and assembly the end Product/Prototype.
  • (R02) End User : End User can be Receiver or Sender of goods. He will request the service (Send or Receive).


Milestones

  • (M01) Interface and control of Sensors and Actuators.
  • (M02) Assembly of the Product.
  • (M03) Development of the functionality algorithm.
  • (M04) Boot can deliver a good to a designated location.


Uses Case

(UC01) Sending an Object to the Receiver

UC01 dboot1.png

Requirements and Milestones

f = functional, nf = not functional

  • (Req_01, nf) : Microcontroller should be able to operate all the sensors and actuators(M01)
  • (Req_02, f) : Surface of theProduct should provide an accurate goods placing.
  • (Req_03, f) : The Product should avoid collisions (M01, M03).
  • Req_04, f): The Product should be able to find the delivery goal point and wait there until a new delivery request is received(M03, M04).

Tests and Simulation

  • Hardware:
    • Ultrasonic: Read the Distant and check against a physical distant measure.
    • Motors: Monitoring of direction and speed of rotation.
    • Color Sensor: Check against the two color used with variation of the environment light.
    • Reflective Optical Sensor: Check against a line by moving the two sensors to left and right of the line.
    • Assembly and test again every single sensor/actuator.


  • Software in Assembly Product and test scenario:
    • Design the Matrix where the Product should work.
    • Test if line can be followed.
    • Test if Rotations are accurate.
    • Test if Obstacle can be detected.
    • Test if Colors can be detected.
    • Test if a delivery without obstacles can be done.
    • Test if a delivery with obstacles can be done.
    • Change test scenario and repeat.