Projekt 64: Wasserstandswarner-Aufsatz für Arduino: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 289: Zeile 289:


Die für den Prototyp benötigte Software ist relativ simpel. Es sind lediglich die Variablen für den Messwert, den analogen Eingangspin und den digitalen Ausgangspin, der den Summer auslöst, zu deklarieren und die entsprechenden Werte zuzuweisen. In der Setup Funktion werden dann die serielle Übertragung für den seriellen Monitor initiiert und die PinModes gesetzt. In der Loop Funktion wird schließlich der Messwert alle 500 ms über den analogen Eingang eingelesen und via seriellem Monitor ausgegeben. In einer If-Abfrage wird der Messwert mit einem definierten Referenzwert verglichen. Falls der Messwert über dem Referenzwert liegt, wird der Piezo-Summer eingeschaltet, ansonsten ausgeschaltet. Der gesamte Quellcode ist im Anhang der Dokumentation einzusehen als auch in SVN im Ordner Software zu finden. Der Programmablaufplan ist in der folgenden Abbildung dargestellt.
Die für den Prototyp benötigte Software ist relativ simpel. Es sind lediglich die Variablen für den Messwert, den analogen Eingangspin und den digitalen Ausgangspin, der den Summer auslöst, zu deklarieren und die entsprechenden Werte zuzuweisen. In der Setup Funktion werden dann die serielle Übertragung für den seriellen Monitor initiiert und die PinModes gesetzt. In der Loop Funktion wird schließlich der Messwert alle 500 ms über den analogen Eingang eingelesen und via seriellem Monitor ausgegeben. In einer If-Abfrage wird der Messwert mit einem definierten Referenzwert verglichen. Falls der Messwert über dem Referenzwert liegt, wird der Piezo-Summer eingeschaltet, ansonsten ausgeschaltet. Der gesamte Quellcode ist im Anhang der Dokumentation einzusehen als auch in SVN im Ordner Software zu finden. Der Programmablaufplan ist in der folgenden Abbildung dargestellt.


[[Datei:Wasserstandswarner-Programmablaufplan.png|gerahmt|x800px|zentriert| Programmablaufplan P64 Wasserstandswarner]]
[[Datei:Wasserstandswarner-Programmablaufplan.png|gerahmt|x800px|zentriert| Programmablaufplan P64 Wasserstandswarner]]

Version vom 14. Dezember 2016, 20:32 Uhr

Autor: Lars Christian Naujocks | Mike Westhoff

Betreuer: Prof. Göbel | Prof. Schneider

Aufgabe

  • Untersuchen Sie einen ABUS Wassermelder HSWM10000
  • Erstellen Sie das System als prototypischen Eigenbau auf einem Proto-Shield für einen Arduino Uno >> Schaltplan, Pin-Belegungstabelle
  • Beschaffen Sie die Bauteile
  • Realisierung und Erprobung des Aufbaus
  • Machen Sie ein spektakuläres Video, welches die Funktion visualisiert.
  • Test und wiss. Dokumentation
  • Live Vorführung während der Abschlusspräsentation
  • Bausteine


Anforderungen

Da keine Anforderungsspezifikation vorhanden war, hat das Team aus der Aufgabenstellung heraus eine eigene geschrieben, die auf den Vorgaben von Prof. Göbel beruhen. Hier werden nochmals die wichtigsten funktionalen und nicht-funktionalen Anforderungen aufgelistet. Die detaillierte Spezifikation ist [1] zu entnehmen.


Funktionale Anforderungen

REQ 10.3100 Wasserstandswarnung
Anforderung Der Prototyp soll eine Warnung ausgeben, wenn ein Wasserstand überschritten ist.
Notiz Der Prototyp soll an das kommerzielle Produkt ABUS Wassermelder HSWM10000 angelehnt sein.
Priorität 1
Status Final


Nicht-funktionale Anforderungen

REQ 10.3200 Hardware
Anforderung Das System soll als prototypischer Eigenbau auf einem Proto-Shield für einen Arduino Uno erstellt werden.
Notiz
Priorität 1
Status Final
REQ 10.3210 Aufbau der Hardware
Anforderung Alle Anschlüsse auf dem Proto-Shield sollen mit Schraubleisten durchgeführt werden.
Notiz
Priorität 1
Status Final
REQ 10.3220 Lautstärke
Anforderung Der Piezo-Summer soll mit einer Lautstärke >=80 dB warnen.
Notiz
Priorität 1
Status Final
REQ 10.3230 BOM
Anforderung Es soll eine Stückliste erstellt werden, die alle benötigten Teile für die Realisierung enthält.
Notiz BOM wird in SVN eingecheckt und von den Professoren wird die Bestellung durchgeführt.
Priorität 1
Status Final
REQ 10.3240 Video
Anforderung Es soll ein Video gedreht werden, das die Funktion des Wasserstandswarners visualisiert.
Notiz
Priorität 1
Status Final
REQ 10.3250 Live Vorführung
Anforderung Das Projekt soll während der Abschlusspräsentation live vorgeführt werden.
Notiz
Priorität 1
Status Final
REQ 10.3260 Wiki
Anforderung Die Ergebnisse und eine nachhaltige Dokumentation sollen auf das Wiki hochgeladen werden.
Notiz
Priorität 1
Status Final


Toolanforderungen

REQ 10.3300 Tools für softwareentwicklung
Anforderung Es soll die Arduino IDE für die Softwareentwicklung benutzt werden.
Notiz
Priorität 1
Status Final

Qualitätssicherung

REQ 10.3310 Test
Anforderung Die Hard- und Software soll ausgiebig getestet werden.
Notiz Da die Software wenig Code und nur eine Routine enthält, sind Integrationstests nicht nötig.
Priorität 1
Status Final
REQ 10.3320 Dokumentation
Anforderung Das Projekt soll nach wissenschaftlichen Standards dokumentiert werden.
Notiz
Priorität 1
Status Final

Projektorganisation

REQ 10.3330 Projektplanung
Anforderung Für die Detailplanung soll MS Project eingesetzt werden.
Notiz
Priorität 1
Status Final
REQ 10.3340 Versionskontrolle und -verwaltung
Anforderung Für das Projekt soll das Versionsverwaltungssystem SVN eingesetzt werden.
Notiz Damit nur die wichtigen Items eingecheckt werden, ist eine Konfigurationsidentifizierung nötig.
Priorität 1
Status Final


Pflichtenheft

Das dem Lastenheft entsprechende Pflichtenheft ist unter SVN [2] eingecheckt und kann jederzeit eingesehen werden. Auch hier folgt eine kurze Auflistung der wichtigsten Punkte.


Zielbestimmungen

Das Projekt P 64 stellt einen Prototyp für einen Waserstandswarner dar, der eine Warnung ausgibt, sobald ein Wasserstand überschritten ist.

Musskriterien

Ausgeben einer Warnung, sobald ein Wasserstand überschritten ist.

Anwendungsbereiche

Der Wasserstandswarner kann überall dort eingesetzt werden, wo eine unerlaubte Erhöhung des Wasserstandes bzw. Überschwemmung zu befürchten ist (z.B.: Pumpensumpf, Keller).


Zielgruppen

Personengruppen, bei denen o.a. Anwendungsbereiche zutreffen.


Betriebsbedingungen

Der Wasserstandwarner soll sich nicht von anderen kommerziell erhältlichen Produkten bezüglich der Betriebsbedingungen unterscheiden. • Betriebsdauer: täglich, 24 Stunden • Wartungsfrei


Produktfunktionen

Benutzerfunktionen: Das Gerät gibt eine Warnung aus, sobald ein Wasserstand überschritten wird. /F0010/ Warnung ausgeben: Sobald ein Wasserstand überschritten wird, gibt das Gerät eine akustische Warnung aus, die den Nutzer darüber informiert.

Produktleistungen

/L0010/: Das Gerät gibt eine akustische Warnung von >80 dB aus.

/L0020/: Das Gerät kann netzunabhängig, d.h. mit einer Batterie arbeiten.


Qualitätszielbestimmungen

Tabelle 1: Qualitätszielbestimmungen

Globale Szenarien und Testfälle

/T0010/ Warnung ausgeben: Das Gerät wird in einer entsprechenden Umgebung oder einem Ersatzszenario getestet (z.B.: Wassereimer).

Projektplan

Um die Übersicht über das Projekt zu behalten, wurde ein Projektplan mit MS Project 2016 erstellt.Dieser ist in [3] einzusehen. Das folgende Bild zeigt einen Screenshot vom Gantt Chart.

Projektplan P64 Wasserstandswarner


Grundlagen

Realisierung

Hardware

It's nice to be important, but it's more important to be nice Respect to the man in the ice cream van

Software

Die für den Prototyp benötigte Software ist relativ simpel. Es sind lediglich die Variablen für den Messwert, den analogen Eingangspin und den digitalen Ausgangspin, der den Summer auslöst, zu deklarieren und die entsprechenden Werte zuzuweisen. In der Setup Funktion werden dann die serielle Übertragung für den seriellen Monitor initiiert und die PinModes gesetzt. In der Loop Funktion wird schließlich der Messwert alle 500 ms über den analogen Eingang eingelesen und via seriellem Monitor ausgegeben. In einer If-Abfrage wird der Messwert mit einem definierten Referenzwert verglichen. Falls der Messwert über dem Referenzwert liegt, wird der Piezo-Summer eingeschaltet, ansonsten ausgeschaltet. Der gesamte Quellcode ist im Anhang der Dokumentation einzusehen als auch in SVN im Ordner Software zu finden. Der Programmablaufplan ist in der folgenden Abbildung dargestellt.


Programmablaufplan P64 Wasserstandswarner


Ergebnisse

Addel Addel Rang


Quellen/Referenzen

[1] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Anforderungsmanagement/Anforderungsspezifikation.doc

[2] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Anforderungsmanagement/Anforderungsspezifikation.doc

[3] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Projektmanagement/Projektplan-P64-Wasserstandswarner.mpp [4] http://www.werkzeuginfos.de/wp-content/uploads/L%C3%B6tkolbenspitzen.png (Abgerufen am 26.11.2016

[5] Deutsche Gesetzliche Unfallversicherung (Hrsg.): BG/BGIA-Empfehlungen für die Gefährdungsbeurteilung nach der Gefahrstoffverordnung, BGI 790-014, Aktualisierte Fassung 2008, S.8 http://publikationen.dguv.de/dguv/pdf/10002/bgi790-14.pdf (Abgerufen am 26.11.2016)

[6] https://www.sparkfun.com/datasheets/DevTools/Arduino/ProtoShield-v25.pdf (Abgerufen am 26.11.2016)

[7] https://cdn.sparkfun.com//assets/parts/5/6/3/07914-004.jpg (Abgerufen am 26.11.2016)

[8] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Dokumentation/HSWM10000_ger-DE.pdf

[9] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Dokumentation/HSWM10000_INT_SeS20101012.pdf

[10] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Dokumentation/INDUINO_Feuchtigkeitssensor.pdf

[11] https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/64_Wasserstandswarner_Arduino/Dokumentation/716870-da-01-en-PIEZO_SUMMER_102_DB.pdf