Projekt 37b: Keyless Entry: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(13 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 6: | Zeile 6: | ||
== Aufgabe == | == Aufgabe == | ||
Eintwickeln einer elektronischen Zugangsberechtigung, die nachträglich in ein Schließfach eingebaut werden kann. | Eintwickeln einer elektronischen Zugangsberechtigung, die nachträglich in ein Schließfach eingebaut werden kann. | ||
== Erwartungen an die Projektlösung == | == Erwartungen an die Projektlösung == | ||
Zeile 20: | Zeile 22: | ||
== Herausforderung == | == Herausforderung == | ||
[[Datei:Herausforderung.jpg|300px|thumb|left|Abbildung 1: Herausforderungen + Lösungen]] | [[Datei:Herausforderung.jpg|300px|thumb|left|Abbildung 1: Herausforderungen + Lösungen]] | ||
Zeile 64: | Zeile 65: | ||
== Schwierigkeitsgrad == | == Schwierigkeitsgrad == | ||
Anspruchsvoll (***) | Anspruchsvoll (***) | ||
== Verwendete Bauteile == | == Verwendete Bauteile == | ||
Zeile 80: | Zeile 83: | ||
*1x Lochrasterplatine, Hartpapier, 50x100mm | *1x Lochrasterplatine, Hartpapier, 50x100mm | ||
*1x LEDs + Kleinteile | *1x LEDs + Kleinteile | ||
== Projektverlaufsplan == | == Projektverlaufsplan == | ||
[[Datei:Gantt-Chart KeylessEntry.jpg| | [[Datei:Gantt-Chart KeylessEntry.jpg|300px|thumb|left|Abbildung 1: Projektplanung]] | ||
Zu Beginn des Projektes wurde sich eine entsprechende Systemarchitektur überlegt, die den Anforderungen | Zu Beginn des Projektes wurde sich eine entsprechende Systemarchitektur überlegt, die den Anforderungen | ||
Zeile 91: | Zeile 96: | ||
anschließend nach dem Fertigstellen der Hardware programmiert. In der finalen Phase wurde das gesamte System getestet und | anschließend nach dem Fertigstellen der Hardware programmiert. In der finalen Phase wurde das gesamte System getestet und | ||
Fehler behoben. | Fehler behoben. | ||
Zeile 118: | Zeile 121: | ||
wertet diese Botschaft aus. Wenn die Schlüsselnummer dem Master noch nicht bekannt ist, befiehlt der Master einem noch freien Slave das | wertet diese Botschaft aus. Wenn die Schlüsselnummer dem Master noch nicht bekannt ist, befiehlt der Master einem noch freien Slave das | ||
Schließfach zu schließen. Ist die Nummer dagegen schon bekannt, befiehlt der Master dem Slave, der der Nummer zugewiesen ist, das Schließfach zu öffnen. Der Master kommuniziert mit den Slaves über einen I2C Bus. Der Bus gewährleistet eine beliebige Erweiterungsmöglichkeit des Systems und auch eine sichere und verschlüsselbare Kommunikation zwischen den Teilnehmern. Der Slave, ein Attiny45 Mikrocontroller, empfängt die Befehle des Masters über I2C. Soll der Slave das entsprechende Schließfach öffnen, steuert der Slave die H-Brücke in Richtung Öffnen an. Bei einem Schließbefehl dementsprechend in Richtung Schließen. Parallel zum Ansteuern der H-Brücke misst der Mikrocontroller die über einen Shunt-Widerstand von 0.1 Ohm abfallende Spannung, um einen Blockierstrom zu detektieren. Hierzu wird der A/D Wandler des Mikrocontrollers verwendet. Detektiert der Slave einen Blockierstrom oder ist die vorgegebene Zeit abgelaufen, stoppt der Slave die Ansteuerung der H-Brücke mit Motor. | Schließfach zu schließen. Ist die Nummer dagegen schon bekannt, befiehlt der Master dem Slave, der der Nummer zugewiesen ist, das Schließfach zu öffnen. Der Master kommuniziert mit den Slaves über einen I2C Bus. Der Bus gewährleistet eine beliebige Erweiterungsmöglichkeit des Systems und auch eine sichere und verschlüsselbare Kommunikation zwischen den Teilnehmern. Der Slave, ein Attiny45 Mikrocontroller, empfängt die Befehle des Masters über I2C. Soll der Slave das entsprechende Schließfach öffnen, steuert der Slave die H-Brücke in Richtung Öffnen an. Bei einem Schließbefehl dementsprechend in Richtung Schließen. Parallel zum Ansteuern der H-Brücke misst der Mikrocontroller die über einen Shunt-Widerstand von 0.1 Ohm abfallende Spannung, um einen Blockierstrom zu detektieren. Hierzu wird der A/D Wandler des Mikrocontrollers verwendet. Detektiert der Slave einen Blockierstrom oder ist die vorgegebene Zeit abgelaufen, stoppt der Slave die Ansteuerung der H-Brücke mit Motor. | ||
== Pinout Atmega328 == | |||
[[Datei:atmega88pinout.jpg|300px|thumb|left|Abbildung 2: Systemarchitektur]] | |||
Der Mastermikrocontroller Atmega328 kommuniziert mit dem RFID Reader mittels Pin PD0 und PD1. Nur diese Pins erlauben eine UART Kommunikation. Zudem ist der Master durch Pin PC4 und PC5 an den I2C Bus angeschlossen. Denn auch nur diese Pins erlauben eine I2C Kommunikation. Der Mikrocontroller wird über den VCC Pin mit 5V versorgt. Die Masse wird an den GND Pin angeschlossen. | |||
== Pinout Attiny45== | |||
[[Datei:attiny45pinout.jpg|400px|thumb|left|Abbildung 2: Systemarchitektur]] | |||
Der Slavemikrocontroller Attiny45 kommuniziert mit dem Master mittels Pin PB2 und PB0 über den I2C Bus. Nur diese Pins erlauben eine I2C Kommunikation. Pin PB1 und PB3 werden zum Ansteuern der H-Brücke verwendet. Die Shuntspannung wird am Pin PB4 mittels des A/D Wandlers gemessen. Der Mikrocontroller wird über den VCC Pin mit 5V versorgt. Die Masse wird an den GND Pin angeschlossen. | |||
== H-Brücke== | |||
[[Datei:Schaltplan_H-Brücke_KeylessEntry.jpg|400px|thumb|left|Abbildung 3: H-Brücke]] | |||
Für die Ansteuerung des Motors zum Öffnen oder Schließen des Schließfaches wurde eine H-Brücke | |||
dimensioniert und ausgelegt. Da der Attiny45 nur maximal 20mA über die I/O Pins speisen soll, | |||
muss enstprechend der Basisvorwiderstand der Darlington Transistoren auf 3k Ohm ausgelegt werden. | |||
Es werden Darlington Bipolartransistoren eingesetzt, da nur so ein Verstärkungsfaktor von 750 erreicht | |||
wird. Der Motor zieht nämlich im Lastfall bis zu 0.5 A. Es wird außerdem diese Variante der H-Brücke ausgewählt, da | |||
hier nur zwei und nicht vier Transistoren angesteuert werden müssen, um den Motor in beide Richtungen drehen zu lassen. | |||
Zudem wird jeweils eine Freilaufdiode in Sperrrichtung parallel zu jedem Transistor geschaltet, um Spannungsspitzen beim Schalten der induktiven Lasten zu verhindern. Der Shuntwiderstand zum Detektieren des Blockierstroms befindet sich zwischen den Emittern der NPN-Transistoren und der Masse, weil so einfach nur die über diesen Widerstand abfallende Spannung vom A/D Wandler des Mikrocontrollers | |||
gemessen werden kann. Der Widerstand ist auf 0.1 Ohm dimensioniert, da so die maximale abfallende Spannung < 5V ist. | |||
== Master == | == Master == | ||
Zeile 139: | Zeile 207: | ||
Der mechanische Öffnungsmechanismus kann durchaus anders aussehen und benötigt möglicherweise eine andere Ansteuerung. | Der mechanische Öffnungsmechanismus kann durchaus anders aussehen und benötigt möglicherweise eine andere Ansteuerung. | ||
Durch den Einsatz des µCs ist man hier flexibel, da man Digitale und Analoge Ein/Ausgänge hat. | Durch den Einsatz des µCs ist man hier flexibel, da man Digitale und Analoge Ein/Ausgänge hat. | ||
== ToDo Liste == | == ToDo Liste == | ||
Zeile 146: | Zeile 215: | ||
Sicherheitskonzept: | Sicherheitskonzept: | ||
*Um die Wertsachen vor unbeabsichtem Öffnen zu schützen sollte ein Sicherheitskonzept erarbeitet werden | *Um die Wertsachen vor unbeabsichtem Öffnen zu schützen sollte ein Sicherheitskonzept erarbeitet werden | ||
== Anhang == | == Anhang == |
Aktuelle Version vom 5. Februar 2016, 18:44 Uhr
Autoren: Stephan Maier, Benedikt Steinmeier
Betreuer: Prof. Schneider
Aufgabe
Eintwickeln einer elektronischen Zugangsberechtigung, die nachträglich in ein Schließfach eingebaut werden kann.
Erwartungen an die Projektlösung
- Einsatz eines Microcontrollers (z. B. Raspberry Pi, Galileo, oder Arduino)
- Elektronisches Öffnen und Schließen eines Spindes
- Anbindung eines RFID Readers zum Erkennen der Zugangsberechtigung
- Möglichkeit der Anwendung auf n (z.B. n = 12) Schließfächer
- Robuste Funktion
- Kür: Einbindung der Mensakarte als RFID Chip
- Live Vorführung während der Abschlusspräsentation
Herausforderung
Schwierigkeitsgrad
Anspruchsvoll (***)
Verwendete Bauteile
- 1x Motraxx Elektro-Flugmotor
- 2x Mikrocontroller Attiny45 (Slaves)
- 1x Mikrocontroller ATMEGA 328P-PU
- 1x 125KHz RFID Reader
- 1x Proximity Thick Card, 125KHz
- 4x Schottky Diode 1N 5818
- 2x PNP Transistor BD 676
- 2x NPN Transistor BD 675
- 2x Widerstand 220 Ohm
- 1x Widerstand 0.1 Ohm (Messshunt)
- 2x Widerstand 3000 Ohm
- 1x Lochrasterplatine, Hartpapier, 50x100mm
- 1x LEDs + Kleinteile
Projektverlaufsplan
Zu Beginn des Projektes wurde sich eine entsprechende Systemarchitektur überlegt, die den Anforderungen genügt. Dabei wurden auch die Schaltung der H-Brücke, die für die Ansteuerung des Motors benötigt wird, simuliert und die Bauteile entsprechend ausgelegt. Auch wurde sich in diesem Schritt für ein RFID Zugangsberechtigungssystem entschieden. Nach dem Erstellen der Architektur wurden alle benötigten Bauteile bestellt. Die Schaltungen und Platinen wurden nach Ankunft der Bauteile gelötet. Die Software wurde anschließend nach dem Fertigstellen der Hardware programmiert. In der finalen Phase wurde das gesamte System getestet und Fehler behoben.
Systemarchitektur
Das System gliedert sich in verschiedene Komponenten auf. Die Zugangsberechtigung wird mittels eines RFID Readers abgefragt.
Dieser RFID Reader sendet bei einem näherkommenden RFID Schlüssel die auf diesem gespeicherte Zugangsnummer an den Master.
Die Botschaft (Schlüsselnummer) des RFID Reader wird mittels UART Kommunikation verschickt. Der Master, ein Atmega328PA Mikrocontroller,
wertet diese Botschaft aus. Wenn die Schlüsselnummer dem Master noch nicht bekannt ist, befiehlt der Master einem noch freien Slave das
Schließfach zu schließen. Ist die Nummer dagegen schon bekannt, befiehlt der Master dem Slave, der der Nummer zugewiesen ist, das Schließfach zu öffnen. Der Master kommuniziert mit den Slaves über einen I2C Bus. Der Bus gewährleistet eine beliebige Erweiterungsmöglichkeit des Systems und auch eine sichere und verschlüsselbare Kommunikation zwischen den Teilnehmern. Der Slave, ein Attiny45 Mikrocontroller, empfängt die Befehle des Masters über I2C. Soll der Slave das entsprechende Schließfach öffnen, steuert der Slave die H-Brücke in Richtung Öffnen an. Bei einem Schließbefehl dementsprechend in Richtung Schließen. Parallel zum Ansteuern der H-Brücke misst der Mikrocontroller die über einen Shunt-Widerstand von 0.1 Ohm abfallende Spannung, um einen Blockierstrom zu detektieren. Hierzu wird der A/D Wandler des Mikrocontrollers verwendet. Detektiert der Slave einen Blockierstrom oder ist die vorgegebene Zeit abgelaufen, stoppt der Slave die Ansteuerung der H-Brücke mit Motor.
Pinout Atmega328
Der Mastermikrocontroller Atmega328 kommuniziert mit dem RFID Reader mittels Pin PD0 und PD1. Nur diese Pins erlauben eine UART Kommunikation. Zudem ist der Master durch Pin PC4 und PC5 an den I2C Bus angeschlossen. Denn auch nur diese Pins erlauben eine I2C Kommunikation. Der Mikrocontroller wird über den VCC Pin mit 5V versorgt. Die Masse wird an den GND Pin angeschlossen.
Pinout Attiny45
Der Slavemikrocontroller Attiny45 kommuniziert mit dem Master mittels Pin PB2 und PB0 über den I2C Bus. Nur diese Pins erlauben eine I2C Kommunikation. Pin PB1 und PB3 werden zum Ansteuern der H-Brücke verwendet. Die Shuntspannung wird am Pin PB4 mittels des A/D Wandlers gemessen. Der Mikrocontroller wird über den VCC Pin mit 5V versorgt. Die Masse wird an den GND Pin angeschlossen.
H-Brücke
Für die Ansteuerung des Motors zum Öffnen oder Schließen des Schließfaches wurde eine H-Brücke dimensioniert und ausgelegt. Da der Attiny45 nur maximal 20mA über die I/O Pins speisen soll, muss enstprechend der Basisvorwiderstand der Darlington Transistoren auf 3k Ohm ausgelegt werden. Es werden Darlington Bipolartransistoren eingesetzt, da nur so ein Verstärkungsfaktor von 750 erreicht wird. Der Motor zieht nämlich im Lastfall bis zu 0.5 A. Es wird außerdem diese Variante der H-Brücke ausgewählt, da hier nur zwei und nicht vier Transistoren angesteuert werden müssen, um den Motor in beide Richtungen drehen zu lassen. Zudem wird jeweils eine Freilaufdiode in Sperrrichtung parallel zu jedem Transistor geschaltet, um Spannungsspitzen beim Schalten der induktiven Lasten zu verhindern. Der Shuntwiderstand zum Detektieren des Blockierstroms befindet sich zwischen den Emittern der NPN-Transistoren und der Masse, weil so einfach nur die über diesen Widerstand abfallende Spannung vom A/D Wandler des Mikrocontrollers gemessen werden kann. Der Widerstand ist auf 0.1 Ohm dimensioniert, da so die maximale abfallende Spannung < 5V ist.
Master
Als Master Mikrocontroller wurde ein Atmega328Pa verbaut, da dieser neben 23 I/O Pins mit 32Kbyte Programmspeicher über genügend Kapazitäten verfügt. Die Verwendung des internen Oszillators (8Mhz) minimiert den äußeren Schaltungsaufwand und reduziert die Kosten.Der Atmega328 folgende Aufgaben:
- Auswertung der Daten vom RFID-Reader über UART
- Verwaltung freier/belegter Spinds
- Ansteuerung der Slaves je nach Benutzereingabe
Slave
Die Systemarchitektur sieht vor, dass an jedem Schließfach ein eigener Mikrocontroller als Slave verbaut wird. Da das System kostengünstig sein sollte und nur wenig Rechenleistung und Ein-Ausgänge benötigt wurden wurde ein Attiny45 Mikrocontroller verbaut. Dieser ist einer der kostengünstigsten µCs von Atmel, bietet aber trotzdem die Möglichkeit die Arduino Bibliotheken zu verwenden. Der µC empfängt die Befehle vom Master und steuert den Schließfachöffnungsmechanismus an. Hier wurde dieser mit einer H-Brücke und einer einfachen Strommessung über einen Mess-shunt realisiert. Die Strommessung soll zur Abschaltung des Motors beim Blockieren dienen. Dies wäre der Fall, wenn der Schließ-Hebel am Anschlag anstößt. Der mechanische Öffnungsmechanismus kann durchaus anders aussehen und benötigt möglicherweise eine andere Ansteuerung. Durch den Einsatz des µCs ist man hier flexibel, da man Digitale und Analoge Ein/Ausgänge hat.
ToDo Liste
LCD-Display:
- Der Prozess des Schließfach öffnen/Schließens ist im momentanen Aufbau noch nicht zu Ende gedacht.
- Es müsst ein LCD-Display verbaut werden, um den Benutzer mitzuteilen, in welches Schließfach er seine Gegenstände legen soll.
Sicherheitskonzept:
- Um die Wertsachen vor unbeabsichtem Öffnen zu schützen sollte ein Sicherheitskonzept erarbeitet werden
Anhang
→ zurück zum Hauptartikel: Fachpraktikum Elektrotechnik (WS 15/16)