Arduino Projekt: Türsicherheitssystem

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abb. 1: Tür Sicherheitssystem

Autor: Justin Frommberger

Aufgabenstellung

  • Ziel von dem Projekt ist eine Tür Sicherheitssystem zu simulieren.
  • Die Aufgabe ist, mit einem vierstelligen Zahlen Code die Tür zu öffnen.
  • Wenn der Code 3-mal Falsche eingegeben wurde, ertönt ein Warnsignal.
  • Alle Eingaben sollen auf dem seriellen Monitor angezeigt werden.

Benötigte Software

  • Aktuellste Arduino IDE mit der Version für ihren PC. (Download link)
  • Bibliotheken für das 4x4 Tastenfeld downloaden: (Link)
    • Klicke oben rechts in GitHub auf Code und dann downloade die Zip-Datei.
    • Um die Zip-Datei in ihre Arduino Bibliothek einzubinden, folgen diese Schritte: (Link)

Benötigte Materiallien

Tabelle 1: Materialliste

Nr. Anz. Beschreibung Bild Pos. Anz. Beschreibung Bild
1 Funduino Arduino UNO R3
viele Jumper Kabel, männlich/männlich
1 Steckbrett
2 LED Rot/Grün
3 Widerstand
120 Ω
1 TowerPro SG90 Servomotor
1 Piezo Lautsprecher
1 4x4 Tastenfeld

Vorab wichtig zu wissen!

Abb. 2: LED

Arduino Uno R3:

  • Der Arduino besitzt unterschiedliche Schnittstellen, weil der Arduino ein digitaler Mikrocontroller ist, kann er nur  5 Volt ausgeben oder annehmen.
  • Bei einer konstanten  5 V Spannung, ist die LED immer gleich hell, so ist das Ziel die Spannung zur LED zu reduzieren.
  • Dafür wird eine Pulsweitenmodulation (PWM) Schnittstelle benötigt, denn bei den anderen Schnittstellen ist dies nicht möglich.
  • Bei einem geringen PWM-Wert ist das  5 V Signal kaum noch vorhanden und bei einem hohen PWM-Wert liegt das  5 V Signal nahezu durchgehend am Pin an.
  • Durch die PWM Schnittstelle kann nun die LED unterschiedlich hell leuchten, da die Spannung anpassbar ist.
  • Die [PWM] Schnittstellen sind ganz einfach zu erkennen an diesem Zeichen (~)

LED:

  • Beachte beim Arbeiten mit der LED, die Anode und Kathode nicht zu vertauschen.
  • In die Anode fließt der Strom hinein (lange Seite), danach fließt der Strom wieder durch die Kathode hinaus (kurze Seite) siehe Abb. 2.
  • Wenn die LED am Ende des Projektes nicht leuchtet, wurde dies vertauscht, einfach umdrehen und sie leuchtet!

Steckbrett:
Erklärung zum Arbeiten mit einem Steckbrett: (Link)

Servomotor:

  • Schwarz oder Braun = Masse (GND)
  • Rot = + 5 V
  • Orange, Gelb oder Weiß = PWM-Signal

Tastenfeld:
Anleitung zum Tastenfeld siehe: (Link)

Aufbau Schaltung

Abb.3 Schaltung Tür Sicherheitssystem

In Abb. 3 wird die Schaltung für das Projekt " Tür Sicherheitssystem" dargestellt.

Arduino Datei erstellen

Erstellen der ersten Arduino Datei (Link zum Tutorial).

Programmierung Vorkenntnisse

  • Kenntnisse in den Programmierrichtlinien für die Erstellung von Software. (Link)
  • Grundkenntnisse von Projekt 1-4 verstanden haben. (Link)
  • Grundkenntnisse für das Projekt "Tür Sicherheitssystem" verstehen. (Link)

Programmierung Anleitung

Nachdem alle Schritte abgeschlossen sind, kann mit der Programmierung des Projektes gestartet werden.

1) Bibliotheken einfügen

Zuerst muss, für das Projekt Tür Sicherheitssystem, die heruntergeladenen Bibliotheken eingefügt werden.
Benötigt wird die Bibliothek für den Servomotor und für das Tastenfeld.

Quelltext 1: TSS.ino

2) Initialisierung Arduino

Im nächsten Schritt wird das Projekt mit den verbundenen Hardwarebauteilen im Programm initialisiert.

2.1) Tastenfeld initialisieren

Ziel ist, alle benötigten Variablen für die Funktion: Keypad Tastenfeld = Keypad(makeKeymap(Hexa_Keys), Row_Pins, Col_Pins, ROWS, COLS); festzulegen.

  • ROWS sind die Anzahl der Spalten und COLS sind die Anzahl der Zeilen, diese werden als Variable festgelegt.
  • Daraufhin müssen Row_Pins und Col_Pins ihren Ziffern zugeordnet werden über eine Array-Zuweisung.
  • Zum Schluss muss die Hexa_Keys Matrix aufgebaut werden, hier wird jede Ziffer für das Tastenfeld festgelegt.

Quelltext 2: TSS.ino

2.2) Tastenfeld Variablen

Benötigt werden Variablen zum:

  • Festlegen des Passwortes
  • Speichern der aktuell gedrückten Taste
  • Speichern der vier gedrückten Tasten
  • verhindern einer falschen Position bei der Eingabe

Quelltext 2: TSS.ino

2.3) Motor, Buzzer und RGB initialisieren

Zum Schluss wird die externe Hardware initialisiert und mit dem jeweiligen Pin verbunden.
Pin belegung: RGB (12,13), MOTOR(11) und Buzzer(10). Tipp: Bei Fragen zum Code, kann in den anderen Projekten nachgeschaut werden. (Link)

Musterlösung

Quelle: Link



→ zurück zum Hauptartikel: BA: Arduino-Projekte für die Lehre