SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Mikrocontroller-
gesteuertes Türschloss
Markus Schwer
12 Jahre
Schüler experimentieren-Projekt 2014
Deutschorden-Schule Lauchheim
Inhaltsverzeichnis
Kurzfassung .............................................................................2
Idee..........................................................................................2
Hintergründe...........................................................................2
Material und Methoden..........................................................3
Durchführung ..........................................................................4
Ergebnis.................................................................................10
Ausblick .................................................................................11
Danksagung...........................................................................12
Anhang ..................................................................................12
Kurzfassung
Damit ausschließlich ich meine Zimmertür öffnen kann, habe
ich ein mikrocontroller-gesteuertes Türschloss konstruiert.
Dafür habe ich ein Holzkästchen gebaut, das den Zugriff auf
das Schloss kontrolliert. Ich kann mit einem elektronischen
Schlüssel den Zugang zum Schloss öffnen und schließen.
Dafür habe ich den Mikrocontroller Arduino benutzt.
Idee:
Ich habe eine Zwillingsschwester, die mich oft nervt. Sie
kommt immer wieder in mein Zimmer, auch wenn ich die Tür
zugeschlossen habe. Sie hat den gleichen Schlüssel wie ich
und ich kann ihr ihren eigenen Schlüssel nicht wegnehmen.
Deshalb hatte ich die Idee ein elektronisches Türschloss zu
bauen.
Hintergründe:
Letztes Jahr (2012) zu Weihnachten habe ich ein Arduino Uno
Board und ein Arduino Buch („Die elektronische Welt mit
Arduino entdecken“ von Erik Bartmann) bekommen.
Danach habe ich mich viel mit Arduino auseinandergesetzt.
Ich habe mich auch schon vorher mit Programmieren etwas
beschäftigt (C#). Durch das Arduino-Buch habe ich C++
gelernt.
Im Juli 2013 habe ich an einem Mikrocontroller-Kurs von
explorhino bei Herrn Reiner teilgenommen. Bei diesem Kurs
haben wir ein Mikrocontroller-Board mit Arduino selber
zusammengelötet. Im September 2013 habe ich auch bei
Herrn Reiner einen Fortgeschrittenen Kurs besucht. Dabei
haben wir eine Verstärkerplatine mit Motor-IC für den
Mikrocontroller gelötet. Dabei habe ich viel über die
Elektronik der verwendeten Bauteile gelernt. Leider haben
wir nicht wirklich programmiert.
Material und Methoden:
Material:
 Arduino Nano
 Schrittmotor mit Treiber von OzHobbies
(http://www.ozhobbies.eu/)
 Netzteil DC 5V 1,2A - 7,5V-20V (AC/DC) von OzHobbies
 NFC Modul von ElecFreaks
(http://www.elecfreaks.com/5418.html)
 Software: Arduino ver. 1.0.5
Methoden:
 Programmierung mit C++
Durchführung:
Als ich Herrn Bich, den Leiter der Jugend forscht-AG an
meiner Schule, von meiner Idee, ein Mikrocontroller-
gesteuertes Türschloss zu bauen, erzählt hatte, hat er ein
altes Türschloss mitgebracht. Ich habe es geöffnet und dabei
sprangen Federn heraus. Leider konnte ich das Schloss nicht
mehr zusammenbauen. Er hatte aber noch ein zweites
Schloss mitgebracht, das nicht auseinanderfiel. Das habe ich
mir genauer angeschaut. Dabei bin ich auf die Idee
gekommen, den Riegel mit einem Motor zu bewegen. Auf
dem Motor befindet sich ein Zahnrad, das mit Hilfe einer
Zahnstange, die sich am Riegel befindet, den Riegel
verschiebt. Wenn ich z.B. einen Code eingebe, dann sollte
sich der Riegel bewegen und das Schloss versperren.
Dann habe ich ein neues Türschloss gekauft um es
umzubauen. Leider war das Schloss genietet, sodass ich es
nicht öffnen konnte.
Danach wollte ich einen Schrittmotor kaufen, damit ich den
Riegel bewegen kann. Beim Mükra in Aalen (ein kleiner
Elektronikladen) habe ich keinen bekommen, bekam jedoch
den Tipp zum Spielwaren Wanner zu gehen. Dort bekam ich
zwar auch keinen Schrittmotor, aber den Tipp einen
Schrittmotor aus einem alten Drucker auszubauen. Gott sei
Dank hatten wir einen alten Drucker zu Hause. Diesen habe
ich zerlegt und den Scanner-Motor ausgebaut.
Leider hatte ich dazu keinen passenden Motortreiber.
Deshalb habe ich bei OzHobbies (http://www.ozhobbies.eu/)
einen Schrittmotor mit Treiber gekauft. Dann habe ich mit
Videoanleitung (http://www.youtube.com/watch?v=cCNT0J-
X4mM) den Schrittmotor versucht zum Laufen zu bringen, hat
aber nicht funktioniert. Deshalb habe ich den Sketch-Code
aus dem Buch „Die elektronische Welt mit Arduino
entdecken“ verwendet. Nun hat der Motor auf Anhieb
funktioniert.
Leider war der Motor zu schwach um den Riegel zu bewegen.
Nun habe ich nach einem stärkeren Schrittmotor gesucht. Ich
habe deshalb auf www.Gutefrage.de nach einer Empfehlung
gefragt. Mir wurde als Lösung ein Hubmagnet vorgeschlagen.
In der Zwischenzeit bin ich zu Mayer-Werkzeuge in Aalen
gefahren um ein aufschraubbares Türschloss zu kaufen. Ich
habe eins gekauft und bei dieser Gelegenheit bin ich zum
nahegelegenen Bauhaus (Baumarkt) gefahren und habe mir
dort ein elektronisches Türschloss angeschaut.
Dabei kam mir die Erleuchtung: „Ich muss verhindern, dass
man das Schloss aufkriegt.“ (nicht das Schloss versperren)
Dazu hatte ich mehrere Ideen:
Eine Idee war, dass die Klinke im Leerlauf ist. Diese Idee habe
ich dann verworfen, da dies zu schwierig ist.
Ich habe mich nach längeren Überlegungen dazu
entschlossen, statt im Schloss etwas zu verändern (zu
schwierig), außen ein Kästchen anzubringen, das den Zugang
zum Schloss versperrt.
Ich habe nun provisorisch ein Kartonkästchen ausgesucht und
Löcher passend ausgeschnitten.
Dann habe ich eine Kartonscheibe auf den Motor geklebt. Die
Platinen (Arduino, Netzteil, Motortreiber) habe ich mit einem
doppelseitigen Klebeband ins Kästchen geklebt.
Jetzt musste ich nur noch dafür sorgen, dass nur ich den
Zugriff auf das Schloss habe. Ich habe mich für die RFID-
Technik entschieden. RFID heißt „radio-frequency
identification“ und bedeutet „Identifizierung mit Hilfe
elektromagnetischer Wellen“. Man verwendet diese Technik
häufig für Zutrittskontrollen. Mehr Informationen über RFID
stehen im Anhang.
Ich habe im Internet ein NFC Modul von ElecFreaks
(http://www.elecfreaks.com/5418.html) bestellt. NFC heißt
„Near Field Communication“ und ist ein internationaler
Übertragungsstandard zum kontaktlosen Austausch von
Daten per Funktechnik über kurze Strecken von wenigen
Zentimetern. Mehr Informationen unter
http://de.wikipedia.org/wiki/Near_Field_Communication.
Als ich es bekommen hatte, habe ich die Library dafür im
Internet gesucht, jedoch leider nichts gefunden. Eine Library
ist ein Programm, das z.B. beim Ansteuern von Motoren hilft
(Informationen zu C++ im Anhang).
Auf http://www.elecfreaks.com/5418.html habe ich dann ein
passendes Programm mit Library gefunden. Die Anleitung zur
Portbelegung habe ich dort ebenfalls gefunden.
Leider hat es auch nach mehreren Versuchen nicht geklappt.
Zuerst habe ich festgestellt, dass ich beim User Guide die
falsche PIN-Belegung benutzt habe. Nach Lösung dieses
Problems hat es aber immer noch nicht funktioniert. Erst
nach langer Fehlersuche habe ich festgestellt, dass ich mich
bei der PIN-Belegung geirrt hatte. Meine Mutter hat darauf
bestanden, dass ich alle Verbindungen noch einmal
überprüfe. Dabei habe ich festgestellt, dass ich ein Kabel
falsch angeschlossen hatte. Endlich hat es funktioniert.
Als nächstes habe ich das Programm so umgeschrieben, dass
es die ID von dem RFID-Tag prüft. Meine eigenen Ideen haben
zuerst nicht funktioniert, aber die Grundidee war richtig. (Die
richtige und die aktuelle ID werden verglichen). Auch die
Suche in verschiedenen Internetforen nach Hilfe hat nichts
gebracht. Dann kam mir die Idee, die Daten in Strings (oder
Zeichenketten) zu konvertieren. Leider kannte ich den Befehl
nicht. Deshalb habe ich gegoogelt wie man konvertiert.
Auf
http://www.netzmafia.de/skripten/hardware/Arduino/progr
ammierung.html habe ich einen wichtigen Hinweis gefunden.
Ich habe programmiert und es hat geklappt!!!
Dann habe ich das Programm mit dem bereits vorhandenen
Programm für den Schrittmotor erweitert. Das hat auch
funktioniert!!!
Nun habe ich den Arduino von der USB-Verbindung mit dem
PC getrennt, da das Ganze ja nicht am Computer hängen,
sondern unabhängig laufen soll. Nun hat sich jedoch der
Motor nicht mehr gedreht.
Ich habe deshalb alle Kabel überprüft und isoliert und eine
frische Batterie verwendet. Nun hat alles endlich
funktioniert!!!
Nun musste ich nur noch ein Kästchen aus Holz bauen, das ich
dann auf der Tür befestigen konnte.
Beim Bau des Kästchens hat mir meine Mutter geholfen, da
sie handwerklich ein wenig begabter ist als ich.
Nun dachte ich es ist alles fertig. Nur noch die Kabel, Platinen
und Motor im Kästchen befestigen und das Ganze
funktioniert. Ich musste das Arduino nur noch so
programmieren, dass der Motor sich vor und zurück dreht.
Das sollte kein Problem sein, dachte ich. Doch leider drehte
er sich nur in eine Richtung. Und das auch noch kurz vor
Silvester. Es war unerklärlich. Dann hat meine Mutter die
Kabel vom Motor umgesteckt, obwohl ich fest davon
überzeugt war, dass das nicht funktionieren wird. Doch
plötzlich drehte er sich so wie er sollte.
Fazit: Ich habe gelernt, dass Murphys Laws stimmen!
Ergebnis:
Das ist ein Ausschnitt aus meinem fertigen Programm.
Die vollständige Datei kann ich per E-mail schicken.
Ein Foto von dem fertigen Türschloss:
Das Kästchen wird außen auf meiner Zimmertür befestigt.
Normalerweise ist die Öffnung geschlossen. Wenn ich meinen
RFID-Tag an die Markierung halte dreht sich der Motor und
öffnet mir den Zugang zum Schloss. Nach 15 Sekunden
schließt sich der Zugang wieder.
Ausblick:
Eine Erweiterung dieses mikrocontroller-gesteuerten Systems
wäre, dass es über Ethernet steuerbar ist. Das ist jedoch ein
etwas größeres Unterfangen und könnte ein wenig länger
dauern. Außerdem könnte man es noch etwas kompakter
gestalten.
Danksagung:
Ich bedanke mich bei Herrn Bich für die Unterstützung bei der
Anmeldung und für Ideen.
Ich bedanke mich besonders bei meiner Mutter für die
anregenden Diskussionen und die Hilfe bei den Internet-
Recherchen, beim Kauf der benötigten Materialien und beim
Schreiben. Ohne die Motivation durch sie hätte ich das
Projekt vielleicht nicht in der Zeit geschafft.
Anhang:
C++ : http://de.wikipedia.org/wiki/C%2B%2B
RFID-Technik : http://de.wikipedia.org/wiki/RFID
Arduino : http://arduino.cc/
Software : http://arduino.cc/en/main/software
explorhino : http://www.explorhino.de/
Fotos: Markus Schwer

Weitere ähnliche Inhalte

Mikrocontroller gesteuertes türschloss

  • 1. Mikrocontroller- gesteuertes Türschloss Markus Schwer 12 Jahre Schüler experimentieren-Projekt 2014 Deutschorden-Schule Lauchheim
  • 2. Inhaltsverzeichnis Kurzfassung .............................................................................2 Idee..........................................................................................2 Hintergründe...........................................................................2 Material und Methoden..........................................................3 Durchführung ..........................................................................4 Ergebnis.................................................................................10 Ausblick .................................................................................11 Danksagung...........................................................................12 Anhang ..................................................................................12
  • 3. Kurzfassung Damit ausschließlich ich meine Zimmertür öffnen kann, habe ich ein mikrocontroller-gesteuertes Türschloss konstruiert. Dafür habe ich ein Holzkästchen gebaut, das den Zugriff auf das Schloss kontrolliert. Ich kann mit einem elektronischen Schlüssel den Zugang zum Schloss öffnen und schließen. Dafür habe ich den Mikrocontroller Arduino benutzt. Idee: Ich habe eine Zwillingsschwester, die mich oft nervt. Sie kommt immer wieder in mein Zimmer, auch wenn ich die Tür zugeschlossen habe. Sie hat den gleichen Schlüssel wie ich und ich kann ihr ihren eigenen Schlüssel nicht wegnehmen. Deshalb hatte ich die Idee ein elektronisches Türschloss zu bauen. Hintergründe: Letztes Jahr (2012) zu Weihnachten habe ich ein Arduino Uno Board und ein Arduino Buch („Die elektronische Welt mit Arduino entdecken“ von Erik Bartmann) bekommen.
  • 4. Danach habe ich mich viel mit Arduino auseinandergesetzt. Ich habe mich auch schon vorher mit Programmieren etwas beschäftigt (C#). Durch das Arduino-Buch habe ich C++ gelernt. Im Juli 2013 habe ich an einem Mikrocontroller-Kurs von explorhino bei Herrn Reiner teilgenommen. Bei diesem Kurs haben wir ein Mikrocontroller-Board mit Arduino selber zusammengelötet. Im September 2013 habe ich auch bei Herrn Reiner einen Fortgeschrittenen Kurs besucht. Dabei haben wir eine Verstärkerplatine mit Motor-IC für den Mikrocontroller gelötet. Dabei habe ich viel über die Elektronik der verwendeten Bauteile gelernt. Leider haben wir nicht wirklich programmiert. Material und Methoden: Material:  Arduino Nano  Schrittmotor mit Treiber von OzHobbies (http://www.ozhobbies.eu/)
  • 5.  Netzteil DC 5V 1,2A - 7,5V-20V (AC/DC) von OzHobbies  NFC Modul von ElecFreaks (http://www.elecfreaks.com/5418.html)  Software: Arduino ver. 1.0.5 Methoden:  Programmierung mit C++ Durchführung: Als ich Herrn Bich, den Leiter der Jugend forscht-AG an meiner Schule, von meiner Idee, ein Mikrocontroller- gesteuertes Türschloss zu bauen, erzählt hatte, hat er ein altes Türschloss mitgebracht. Ich habe es geöffnet und dabei sprangen Federn heraus. Leider konnte ich das Schloss nicht mehr zusammenbauen. Er hatte aber noch ein zweites Schloss mitgebracht, das nicht auseinanderfiel. Das habe ich mir genauer angeschaut. Dabei bin ich auf die Idee gekommen, den Riegel mit einem Motor zu bewegen. Auf dem Motor befindet sich ein Zahnrad, das mit Hilfe einer Zahnstange, die sich am Riegel befindet, den Riegel verschiebt. Wenn ich z.B. einen Code eingebe, dann sollte sich der Riegel bewegen und das Schloss versperren. Dann habe ich ein neues Türschloss gekauft um es umzubauen. Leider war das Schloss genietet, sodass ich es nicht öffnen konnte. Danach wollte ich einen Schrittmotor kaufen, damit ich den Riegel bewegen kann. Beim Mükra in Aalen (ein kleiner
  • 6. Elektronikladen) habe ich keinen bekommen, bekam jedoch den Tipp zum Spielwaren Wanner zu gehen. Dort bekam ich zwar auch keinen Schrittmotor, aber den Tipp einen Schrittmotor aus einem alten Drucker auszubauen. Gott sei Dank hatten wir einen alten Drucker zu Hause. Diesen habe ich zerlegt und den Scanner-Motor ausgebaut. Leider hatte ich dazu keinen passenden Motortreiber. Deshalb habe ich bei OzHobbies (http://www.ozhobbies.eu/) einen Schrittmotor mit Treiber gekauft. Dann habe ich mit Videoanleitung (http://www.youtube.com/watch?v=cCNT0J- X4mM) den Schrittmotor versucht zum Laufen zu bringen, hat aber nicht funktioniert. Deshalb habe ich den Sketch-Code aus dem Buch „Die elektronische Welt mit Arduino entdecken“ verwendet. Nun hat der Motor auf Anhieb funktioniert. Leider war der Motor zu schwach um den Riegel zu bewegen. Nun habe ich nach einem stärkeren Schrittmotor gesucht. Ich
  • 7. habe deshalb auf www.Gutefrage.de nach einer Empfehlung gefragt. Mir wurde als Lösung ein Hubmagnet vorgeschlagen. In der Zwischenzeit bin ich zu Mayer-Werkzeuge in Aalen gefahren um ein aufschraubbares Türschloss zu kaufen. Ich habe eins gekauft und bei dieser Gelegenheit bin ich zum nahegelegenen Bauhaus (Baumarkt) gefahren und habe mir dort ein elektronisches Türschloss angeschaut. Dabei kam mir die Erleuchtung: „Ich muss verhindern, dass man das Schloss aufkriegt.“ (nicht das Schloss versperren) Dazu hatte ich mehrere Ideen: Eine Idee war, dass die Klinke im Leerlauf ist. Diese Idee habe ich dann verworfen, da dies zu schwierig ist. Ich habe mich nach längeren Überlegungen dazu entschlossen, statt im Schloss etwas zu verändern (zu schwierig), außen ein Kästchen anzubringen, das den Zugang zum Schloss versperrt. Ich habe nun provisorisch ein Kartonkästchen ausgesucht und Löcher passend ausgeschnitten. Dann habe ich eine Kartonscheibe auf den Motor geklebt. Die Platinen (Arduino, Netzteil, Motortreiber) habe ich mit einem doppelseitigen Klebeband ins Kästchen geklebt. Jetzt musste ich nur noch dafür sorgen, dass nur ich den Zugriff auf das Schloss habe. Ich habe mich für die RFID-
  • 8. Technik entschieden. RFID heißt „radio-frequency identification“ und bedeutet „Identifizierung mit Hilfe elektromagnetischer Wellen“. Man verwendet diese Technik häufig für Zutrittskontrollen. Mehr Informationen über RFID stehen im Anhang. Ich habe im Internet ein NFC Modul von ElecFreaks (http://www.elecfreaks.com/5418.html) bestellt. NFC heißt „Near Field Communication“ und ist ein internationaler Übertragungsstandard zum kontaktlosen Austausch von Daten per Funktechnik über kurze Strecken von wenigen Zentimetern. Mehr Informationen unter http://de.wikipedia.org/wiki/Near_Field_Communication. Als ich es bekommen hatte, habe ich die Library dafür im Internet gesucht, jedoch leider nichts gefunden. Eine Library ist ein Programm, das z.B. beim Ansteuern von Motoren hilft (Informationen zu C++ im Anhang). Auf http://www.elecfreaks.com/5418.html habe ich dann ein passendes Programm mit Library gefunden. Die Anleitung zur Portbelegung habe ich dort ebenfalls gefunden. Leider hat es auch nach mehreren Versuchen nicht geklappt. Zuerst habe ich festgestellt, dass ich beim User Guide die falsche PIN-Belegung benutzt habe. Nach Lösung dieses Problems hat es aber immer noch nicht funktioniert. Erst nach langer Fehlersuche habe ich festgestellt, dass ich mich bei der PIN-Belegung geirrt hatte. Meine Mutter hat darauf bestanden, dass ich alle Verbindungen noch einmal
  • 9. überprüfe. Dabei habe ich festgestellt, dass ich ein Kabel falsch angeschlossen hatte. Endlich hat es funktioniert. Als nächstes habe ich das Programm so umgeschrieben, dass es die ID von dem RFID-Tag prüft. Meine eigenen Ideen haben zuerst nicht funktioniert, aber die Grundidee war richtig. (Die richtige und die aktuelle ID werden verglichen). Auch die Suche in verschiedenen Internetforen nach Hilfe hat nichts gebracht. Dann kam mir die Idee, die Daten in Strings (oder Zeichenketten) zu konvertieren. Leider kannte ich den Befehl nicht. Deshalb habe ich gegoogelt wie man konvertiert. Auf http://www.netzmafia.de/skripten/hardware/Arduino/progr ammierung.html habe ich einen wichtigen Hinweis gefunden. Ich habe programmiert und es hat geklappt!!! Dann habe ich das Programm mit dem bereits vorhandenen Programm für den Schrittmotor erweitert. Das hat auch funktioniert!!! Nun habe ich den Arduino von der USB-Verbindung mit dem PC getrennt, da das Ganze ja nicht am Computer hängen, sondern unabhängig laufen soll. Nun hat sich jedoch der Motor nicht mehr gedreht.
  • 10. Ich habe deshalb alle Kabel überprüft und isoliert und eine frische Batterie verwendet. Nun hat alles endlich funktioniert!!! Nun musste ich nur noch ein Kästchen aus Holz bauen, das ich dann auf der Tür befestigen konnte. Beim Bau des Kästchens hat mir meine Mutter geholfen, da sie handwerklich ein wenig begabter ist als ich. Nun dachte ich es ist alles fertig. Nur noch die Kabel, Platinen und Motor im Kästchen befestigen und das Ganze funktioniert. Ich musste das Arduino nur noch so programmieren, dass der Motor sich vor und zurück dreht. Das sollte kein Problem sein, dachte ich. Doch leider drehte er sich nur in eine Richtung. Und das auch noch kurz vor Silvester. Es war unerklärlich. Dann hat meine Mutter die Kabel vom Motor umgesteckt, obwohl ich fest davon überzeugt war, dass das nicht funktionieren wird. Doch plötzlich drehte er sich so wie er sollte. Fazit: Ich habe gelernt, dass Murphys Laws stimmen!
  • 11. Ergebnis: Das ist ein Ausschnitt aus meinem fertigen Programm. Die vollständige Datei kann ich per E-mail schicken. Ein Foto von dem fertigen Türschloss:
  • 12. Das Kästchen wird außen auf meiner Zimmertür befestigt. Normalerweise ist die Öffnung geschlossen. Wenn ich meinen RFID-Tag an die Markierung halte dreht sich der Motor und öffnet mir den Zugang zum Schloss. Nach 15 Sekunden schließt sich der Zugang wieder. Ausblick: Eine Erweiterung dieses mikrocontroller-gesteuerten Systems wäre, dass es über Ethernet steuerbar ist. Das ist jedoch ein
  • 13. etwas größeres Unterfangen und könnte ein wenig länger dauern. Außerdem könnte man es noch etwas kompakter gestalten. Danksagung: Ich bedanke mich bei Herrn Bich für die Unterstützung bei der Anmeldung und für Ideen. Ich bedanke mich besonders bei meiner Mutter für die anregenden Diskussionen und die Hilfe bei den Internet- Recherchen, beim Kauf der benötigten Materialien und beim Schreiben. Ohne die Motivation durch sie hätte ich das Projekt vielleicht nicht in der Zeit geschafft. Anhang: C++ : http://de.wikipedia.org/wiki/C%2B%2B RFID-Technik : http://de.wikipedia.org/wiki/RFID Arduino : http://arduino.cc/ Software : http://arduino.cc/en/main/software explorhino : http://www.explorhino.de/ Fotos: Markus Schwer