Inhaltsverzeichnis:

HackerBox 0038: TeknoDactyl - Gunook
HackerBox 0038: TeknoDactyl - Gunook

Video: HackerBox 0038: TeknoDactyl - Gunook

Video: HackerBox 0038: TeknoDactyl - Gunook
Video: #41 Hacker Box #0038 TechnoDactyl 2024, Juli
Anonim
HackerBox 0038: TeknoDactyl
HackerBox 0038: TeknoDactyl

HackerBox Hacker erforschen elektronische Fingerabdruckerkennung und mechanische Spinner-Spielzeuge mit oberflächenmontierten Mikrocontrollern und LED-Schaltungen. Dieses Instructable enthält Informationen für die ersten Schritte mit HackerBox # 0038, die hier gekauft werden können, solange der Vorrat reicht. Wenn Sie jeden Monat eine solche HackerBox direkt in Ihre Mailbox erhalten möchten, abonnieren Sie bitte HackerBoxes.com und schließen Sie sich der Revolution an!

Themen und Lernziele für HackerBox 0038:

  • Entdecken Sie die elektronische Fingerabdruckerkennung
  • Konfigurieren und programmieren Sie den Arduino Nano-Mikrocontroller
  • Schnittstelle von Fingerabdrucksensormodulen zu Mikrocontrollern
  • Integrieren Sie Fingerabdrucksensoren in eingebettete Systeme
  • Üben Sie oberflächenmontierte Löttechniken
  • Bauen Sie ein Acryl-LED-Zappel-Spinner-Projekt zusammen
  • Konfigurieren und programmieren Sie den Digispark-Mikrocontroller
  • Experimentieren Sie mit Nutzlasten für die Injektion von USB-Tastaturanschlägen

HackerBoxes ist der monatliche Abo-Box-Service für DIY-Elektronik und Computertechnik. Wir sind Bastler, Macher und Experimentatoren. Wir sind die Träumer der Träume.

HACK DEN PLANETEN

Schritt 1: HackerBox 0038: Lieferumfang

Image
Image
  • Fingerabdrucksensormodul
  • Arduino Nano 5V 16MHz microUSB
  • LED Fidget Spinner Lötkit
  • CR1220 Knopfzellen für Spinner Kit
  • USB-Digispark-Mikrocontroller-Modul
  • ESD-Pinzetten
  • Entlötgeflecht
  • Zwei Vier-Wege-Spannungspegelschieber
  • USB-Verlängerungskabel
  • Exklusives HackerBox Forging Decal
  • Exklusives "Quad Cut Up" Hacker-Aufkleber
  • Exklusiver Chairborne Bügelflicken

Einige andere Dinge, die hilfreich sein werden:

  • Lötkolben, Lötzinn und grundlegende Lötwerkzeuge
  • Lötflussmittel (Beispiel)
  • Beleuchtete Lupe (Beispiel)
  • Computer zum Ausführen von Softwaretools
  • Finger zum Zappeln
  • Finger für Fingerabdruckexperimente

Am wichtigsten sind Abenteuerlust, Hackergeist, Geduld und Neugier. Das Bauen und Experimentieren mit Elektronik ist zwar sehr lohnend, kann jedoch knifflig, herausfordernd und manchmal sogar frustrierend sein. Das Ziel ist Fortschritt, nicht Perfektion. Wenn man hartnäckig bleibt und das Abenteuer genießt, kann man viel Befriedigung aus diesem Hobby ziehen. Machen Sie jeden Schritt langsam, achten Sie auf die Details und haben Sie keine Angst, um Hilfe zu bitten.

In den HackerBoxes FAQ finden Sie eine Fülle von Informationen für aktuelle und zukünftige Mitglieder. Fast alle nicht-technischen Support-E-Mails, die wir erhalten, werden dort bereits beantwortet. Vielen Dank, dass Sie sich ein paar Minuten Zeit nehmen, um die FAQ zu lesen.

Schritt 2: Elektronische Fingerabdruckerkennung

Arduino Nano-Mikrocontroller-Plattform
Arduino Nano-Mikrocontroller-Plattform

Fingerabdruckscanner sind biometrische Sicherheitssysteme zur Analyse von Reibungsgraten einer menschlichen Fingerkuppe, auch Fingerabdruck (Dactylograph) genannt. Diese Scanner werden in der Strafverfolgung, Identitätssicherheit, Zugangskontrolle, Computern und Mobiltelefonen verwendet.

Jeder hat Spuren an den Fingern. Sie können nicht entfernt oder geändert werden. Diese Markierungen haben ein Muster, das als Fingerabdruck bezeichnet wird. Jeder Fingerabdruck ist etwas Besonderes und unterscheidet sich von allen anderen auf der Welt. Aufgrund der unzähligen Kombinationsmöglichkeiten haben sich Fingerabdrücke zu einem idealen Identifikationsmittel entwickelt.

Ein Fingerabdruck-Scanner-System hat zwei grundlegende Aufgaben. Zuerst nimmt es ein Bild des Fingers auf. Als nächstes bestimmt es, ob das Muster von Graten und Tälern in diesem Bild mit dem Muster von Graten und Tälern in vorgescannten Bildern übereinstimmt. Nur spezifische Merkmale, die für jeden Fingerabdruck einzigartig sind, werden gefiltert und als verschlüsselter biometrischer Schlüssel oder mathematische Darstellung gespeichert. Es wird nie ein Bild eines Fingerabdrucks gespeichert, sondern nur eine Reihe von Zahlen (ein binärer Code), die zur Überprüfung verwendet werden. Der Algorithmus kann nicht umgekehrt werden, um die codierten Informationen wieder in ein Fingerabdruckbild umzuwandeln. Dies macht es äußerst unwahrscheinlich, brauchbare Fingerabdrücke aus den codierten Bildinformationen zu extrahieren oder zu duplizieren.

(Wikipedia)

Schritt 3: Arduino Nano-Mikrocontroller-Plattform

Ein Arduino Nano oder ein ähnliches Mikrocontroller-Board ist eine gute Wahl für die Verbindung mit Fingerabdruckscanner-Modulen. Das mitgelieferte Arduino Nano Board wird mit Header-Pins geliefert, die jedoch nicht mit dem Modul verlötet sind. Lassen Sie die Stifte vorerst weg. Führen Sie diese ersten Tests des Arduino Nano-Moduls durch, bevor Sie die Header-Pins des Arduino Nano verlöten. Für die nächsten Schritte benötigen Sie lediglich ein microUSB-Kabel und den Arduino Nano so wie er aus der Tasche kommt.

Das Arduino Nano ist ein oberflächenmontierbares, Steckbrett-freundliches, miniaturisiertes Arduino-Board mit integriertem USB. Es ist erstaunlich voll funktionsfähig und leicht zu hacken.

Merkmale:

  • Mikrocontroller: Atmel ATmega328P
  • Spannung: 5V
  • Digitale I/O-Pins: 14 (6 PWM)
  • Analoge Eingangspins: 8
  • Gleichstrom pro E/A-Pin: 40 mA
  • Flash-Speicher: 32 KB (2 KB für Bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Taktfrequenz: 16 MHz
  • Abmessungen: 17 mm x 43 mm

Diese besondere Variante des Arduino Nano ist das schwarze Robotdyn-Design. Die Schnittstelle besteht aus einem integrierten MicroUSB-Anschluss, der mit den gleichen MicroUSB-Kabeln kompatibel ist, die bei vielen Mobiltelefonen und Tablets verwendet werden.

Arduino Nanos verfügen über einen integrierten USB/Seriell-Bridge-Chip. Bei dieser speziellen Variante ist der Brückenchip der CH340G. Beachten Sie, dass es verschiedene andere Arten von USB / seriellen Brückenchips gibt, die auf den verschiedenen Arten von Arduino-Boards verwendet werden. Diese Chips ermöglichen es dem USB-Port des Computers, mit der seriellen Schnittstelle auf dem Prozessorchip des Arduino zu kommunizieren.

Das Betriebssystem eines Computers erfordert einen Gerätetreiber, um mit dem USB/Seriell-Chip zu kommunizieren. Der Treiber ermöglicht es der IDE, mit dem Arduino-Board zu kommunizieren. Der benötigte spezifische Gerätetreiber hängt sowohl von der Betriebssystemversion als auch vom Typ des USB/Seriell-Chips ab. Für die CH340 USB/Seriell-Chips stehen Treiber für viele Betriebssysteme (UNIX, Mac OS X oder Windows) zur Verfügung. Der Hersteller des CH340 liefert diese Treiber hier.

Wenn Sie den Arduino Nano zum ersten Mal an einen USB-Port Ihres Computers anschließen, sollte die grüne Betriebsanzeige aufleuchten und kurz darauf sollte die blaue LED langsam zu blinken beginnen. Dies geschieht, weil der Nano mit dem BLINK-Programm vorinstalliert ist, das auf dem brandneuen Arduino Nano läuft.

Schritt 4: Arduino integrierte Entwicklungsumgebung (IDE)

Arduino integrierte Entwicklungsumgebung (IDE)
Arduino integrierte Entwicklungsumgebung (IDE)

Wenn Sie die Arduino IDE noch nicht installiert haben, können Sie sie von Arduino.cc herunterladen

Wenn Sie zusätzliche einführende Informationen zum Arbeiten im Arduino-Ökosystem wünschen, empfehlen wir Ihnen, den Leitfaden zum HackerBoxes Starter Workshop zu lesen.

Stecken Sie den Nano in das MicroUSB-Kabel und das andere Ende des Kabels in einen USB-Port des Computers, starten Sie die Arduino IDE-Software, wählen Sie den entsprechenden USB-Port in der IDE unter tools>port (wahrscheinlich ein Name mit "wchusb" darin)). Wählen Sie auch in der IDE unter Tools>Board "Arduino Nano" aus.

Laden Sie zum Schluss einen Beispielcode hoch:

Datei->Beispiele->Grundlagen->Blinken

Dies ist eigentlich der Code, der auf dem Nano vorgeladen wurde und jetzt laufen sollte, um die blaue LED langsam zu blinken. Dementsprechend ändert sich nichts, wenn wir diesen Beispielcode laden. Lassen Sie uns stattdessen den Code ein wenig ändern.

Wenn Sie genau hinsehen, können Sie sehen, dass das Programm die LED einschaltet, 1000 Millisekunden (eine Sekunde) wartet, die LED ausschaltet, eine weitere Sekunde wartet und dann alles wieder tut - für immer.

Ändern Sie den Code, indem Sie beide "delay(1000)"-Anweisungen in "delay(100)" ändern. Diese Änderung führt dazu, dass die LED zehnmal schneller blinkt, oder?

Laden wir den geänderten Code in den Nano, indem Sie auf die Schaltfläche HOCHLADEN (das Pfeilsymbol) direkt über Ihrem geänderten Code klicken. Beobachten Sie unten den Code für die Statusinfo: "Kompilieren" und dann "Hochladen". Schließlich sollte die IDE "Uploading Complete" anzeigen und Ihre LED sollte schneller blinken.

Wenn ja, herzlichen Glückwunsch! Sie haben gerade Ihren ersten eingebetteten Code gehackt.

Wenn Ihre Fast-Blink-Version geladen ist und ausgeführt wird, können Sie den Code erneut ändern, damit die LED zweimal schnell blinkt, und dann einige Sekunden warten, bevor Sie den Vorgang wiederholen. Versuche es! Wie wäre es mit anderen Mustern? Sobald es Ihnen gelungen ist, ein gewünschtes Ergebnis zu visualisieren, zu codieren und zu beobachten, dass es wie geplant funktioniert, haben Sie einen enormen Schritt in Richtung eines kompetenten Hardware-Hackers getan.

Schritt 5: Löten der Arduino Nano Header Pins

Löten der Arduino Nano Header Pins
Löten der Arduino Nano Header Pins

Nachdem Ihr Entwicklungscomputer so konfiguriert wurde, dass er Code auf den Arduino Nano lädt und der Nano getestet wurde, trennen Sie das USB-Kabel vom Nano und machen Sie sich bereit, die Header-Pins zu löten. Wenn Sie zum ersten Mal im Fight Club sind, müssen Sie löten.

Es gibt viele tolle Anleitungen und Videos online zum Beispiel zum Löten. Wenn Sie das Gefühl haben, dass Sie zusätzliche Hilfe benötigen, versuchen Sie, eine lokale Maker-Gruppe oder einen Hacker-Space in Ihrer Nähe zu finden. Außerdem sind Amateurfunkclubs immer ausgezeichnete Quellen für Elektronikerfahrungen.

Löten Sie die beiden einreihigen Header (jeweils fünfzehn Pins) an das Arduino Nano-Modul. Der sechspolige ICSP-Anschluss (In-Circuit Serial Programming) wird in diesem Projekt nicht verwendet, also lassen Sie diese Pins einfach weg. Nach dem Löten sorgfältig auf Lötbrücken und/oder kalte Lötstellen prüfen. Schließen Sie schließlich den Arduino Nano wieder an das USB-Kabel an und überprüfen Sie, ob alles noch ordnungsgemäß funktioniert.

Schritt 6: Fingerabdrucksensormodul

Fingerabdrucksensormodul
Fingerabdrucksensormodul

Das Fingerabdrucksensormodul verfügt über eine serielle Schnittstelle, die es sehr einfach zu Ihren Projekten hinzuzufügen. Das Modul verfügt über einen integrierten FLASH-Speicher, um alle Fingerabdrücke zu speichern, auf deren Erkennung es trainiert wurde, ein Vorgang, der als Enrollment bezeichnet wird. Verbinden Sie einfach vier Drähte wie hier gezeigt mit Ihrem Mikrocontroller. Beachten Sie, dass VCC 3,3 V (nicht 5 V) beträgt.

Adafruit hat eine sehr schöne Arduino Library für Fingerabdrucksensoren veröffentlicht. Die Bibliothek enthält einige nützliche Skizzen. "enroll.ino" zeigt beispielsweise, wie Fingerabdrücke in das Modul aufgenommen (trainiert) werden. Nach dem Training zeigt "fingerprint.ino", wie man einen Fingerabdruck scannt und mit den trainierten Daten durchsucht. Die Dokumentation von Adafruit für die Bibliothek finden Sie hier. Sie können dort zusätzliche Fingerabdruckleser erhalten oder einige Federmodule ausprobieren.

INTEGRATION

Fingerabdrucksensoren können zu verschiedenen Projekten hinzugefügt werden, einschließlich Sicherheitssystemen, Türschlössern, Zeiterfassungssystemen usw. Zum Beispiel macht es ein großartiges Upgrade für Projekte aus der Locksport HackerBox.

Dieses Video zeigt ein Beispielsystem, das mit einem Fingerabdrucksensor arbeitet.

Schritt 7: Fidget Spinner LED-Kit

Fidget Spinner LED-Kit
Fidget Spinner LED-Kit

Das sich drehende LED-Kit verwendet zwei Microchip PIC-Controller und 24 LEDs, um verschiedene bunte Muster anzuzeigen. Die Muster sind mit einer Persistence of Vision (POV)-Technik sichtbar. Die Muster können durch Drücken der Taste geändert werden.

Bevor wir beginnen, überprüfen Sie alle oben aufgeführten Teile. Es gibt wahrscheinlich einige zusätzliche Widerstände, Kondensatoren, LEDs, Schrauben und Acrylteile im Kit, also lassen Sie sich davon nicht verwirren. Auch wenn Ihr Kit eine Anleitung enthielt, sollten die Anweisungen hier viel einfacher zu befolgen sein.

Schritt 8: Fidget Spinner LED-Kit - Schaltplan und PCB

Fidget Spinner LED-Kit - Schaltplan und PCB
Fidget Spinner LED-Kit - Schaltplan und PCB

Unsere erste Frage beim Betrachten dieses Schaltplans sollte lauten: Wie genau steuert man 24 LEDs mit nur zehn I/O-Leitungen? Magie? Ja, die Magie von Charlieplexing.

HINWEIS ZUR AUSRICHTUNG DER KOMPONENTEN. Sehen Sie sich das Diagramm der PCB-Polaritätsmarkierungen genau an. Die beiden Mikrocontroller müssen in die richtige Ausrichtung gedreht werden. Außerdem sind die LEDs polarisiert und müssen richtig ausgerichtet werden. Im Gegensatz dazu können die Widerstände und Kondensatoren in jede Richtung gelötet werden. Der Knopf passt nur in eine Richtung.

Schritt 9: Fidget Spinner - Beginnend mit SMT-Löten

Fidget Spinner - Beginnend mit SMT-Löten
Fidget Spinner - Beginnend mit SMT-Löten

Die Leiterplatte des Fidget Spinner Kits ist eine SMT-Technologie (Surface-Mount-Technologie), die normalerweise ziemlich schwierig zu löten ist. Das Layout der Leiterplatte und die Komponentenauswahl machen dieses SMT-Kit jedoch relativ einfach zu löten. Wenn Sie noch nie mit SMT-Löten gearbeitet haben, gibt es einige wirklich schöne Demo-Videos online (zum Beispiel).

LÖTEN STARTEN: Der Knopf und sein 10K ("103") Widerstand sind wahrscheinlich der einfachste Ort, um zu beginnen, da viel Platz um sie herum ist. Nehmen Sie sich Zeit und lassen Sie diese beiden Komponenten verlöten.

Denken Sie daran, dass auch wenn Ihr Löten nicht ganz erfolgreich ist, die Reise außerhalb Ihrer gegenwärtigen Komfortzone die beste Vorgehensweise ist. Außerdem funktioniert das zusammengebaute Kit immer noch als cool aussehender, von der Elektronik inspirierter Spinner, auch wenn die LEDs nicht perfekt funktionieren.

Schritt 10: Fidget Spinner - Mikrocontroller-Löten

Fidget Spinner - Löten von Mikrocontrollern
Fidget Spinner - Löten von Mikrocontrollern

Löten Sie die beiden Mikrocontroller (beachten Sie die Orientierungsmarkierung). Folgen Sie mit den beiden 0,1uF-Kondensatoren, die sich direkt neben den Mikrocontrollern befinden. Die Kondensatoren sind nicht polarisiert und können in beide Richtungen ausgerichtet werden.

Schritt 11: Fidget Spinner - LED-Löten

Fidget Spinner - LED Löten
Fidget Spinner - LED Löten

Auf der Platine befinden sich zwei Reihen von LEDs und zwei Streifen von LED-Komponenten. Jeder Streifen hat eine andere Farbe (rot und grün), also halten Sie die LEDs von jedem Streifen zusammen in derselben Reihe auf der Platine. Es spielt keine Rolle, welche Reihe grün und welche rot ist, aber die gleichen farbigen LEDs müssen alle in derselben Reihe sein.

Auf jedem PCB-Pad befindet sich eine "-"-Markierung für die LEDs. Diese Markierungen wechseln die Seiten, während Sie entlang der Pad-Reihe gehen, was bedeutet, dass die Ausrichtung der LEDs in der Reihe hin und her wechselt. Die grünen Markierungen auf einer Seite jeder LED sollten auf das "-" ausgerichtet sein, das für dieses LED-Pad steht.

Schritt 12: Fidget Spinner - Löten beenden

Fidget Spinner - Löten fertig
Fidget Spinner - Löten fertig

Löten Sie die sechs 200 Ohm ("201") Widerstände. Diese sind nicht polarisiert und können in beide Richtungen positioniert werden.

Löten Sie die drei Knopfzellenbatterieclips, indem Sie sie in die Unterseite der Platine einführen und dann in die beiden Löcher von der Oberseite der Platine löten.

Setzen Sie drei Knopfzellen ein und drücken Sie die Taste, um die LEDs zu testen. Sie können die POV-Muster nicht sehen, während die Platine stationär ist, aber Sie werden unterschiedliche Helligkeiten zwischen den beiden LED-Bänken bemerken, wenn Sie durch die Anzeigemodi wechseln. Beachten Sie, dass kurzes Drücken und langes Drücken unterschiedliche Auswirkungen haben.

Schritt 13: Fidget Spinner - Acrylgehäuse vorbereiten

Fidget Spinner - Acrylgehäuse vorbereiten
Fidget Spinner - Acrylgehäuse vorbereiten

Entfernen Sie das Schutzpapier von den Acrylteilen.

Legen Sie die fünf Acrylteile und die Platine wie im Bild nummeriert aus. Dies stellt die Reihenfolge des letzten Stapels dar.

Beachten Sie die drei kleinen Kreise in jedem Stück. Drehen Sie alle Teile um, bis die kleinen Kreise alle in die gleiche Richtung ausgerichtet sind.

Beginnen Sie mit Schicht 2, die mit knopfzellengroßen Kreisen in jedem der drei Arme ist.

Legen Sie das Lager in die Mitte von Schicht 2 und drücken Sie es in das große Loch. Dies wird viel Kraft erfordern. Versuchen Sie dabei, das Acryl nicht zu knacken. Allerdings kann sich ein einzelner kleiner Riss um das Lagermontageloch herum bilden. Dies ist durchaus akzeptabel.

Schritt 14: Fidget Spinner - Mechanische Montage

Fidget Spinner - Mechanische Montage
Fidget Spinner - Mechanische Montage

Stapeln Sie die Schichten - 1 bis 5.

Beachten Sie, dass sich die Teile 4 und 5 tatsächlich auf derselben Ebene befinden.

Setzen Sie drei der Messing-Gewindekupplungen ein.

Legen Sie Schicht 6 auf den Stapel.

Beachten Sie, dass die Schichten 1 und 6 kleinere Löcher haben, um die Messingkupplungen an Ort und Stelle zu halten.

Mit den sechs kurzen Schrauben die Lagen 1 und 6 an den Messingkupplungen befestigen.

Schritt 15: Fidget Spinner - Center Hub

Fidget Spinner - Center Hub
Fidget Spinner - Center Hub

Entfernen Sie das Schutzpapier von drei der Acrylzyklen - zwei großen und einem kleinen.

Stecken Sie eine lange Schraube durch einen der großen Acrylkreise; stapeln Sie den kleinen Acrylkreis auf die Schraube; und drehen Sie eine Messing-Gewindekupplung auf die Schraube, um einen Stapel zu bilden, wie in der Abbildung gezeigt.

Führen Sie den Stapel durch die Mittelnabe ein.

Halten Sie den Stapel in der Nabe fest, indem Sie den verbleibenden großen Acrylkreis mit einer langen Schraube auf der offenen Seite befestigen.

C'est fin! Laissez-les-bon-zappel-Rouler.

Schritt 16: Digispark und USB Rubber Ducky

Digispark und USB Rubber Ducky
Digispark und USB Rubber Ducky

Digispark ist ein Open-Source-Projekt, das ursprünglich über Kickstarter finanziert wurde. Es ist ein Superminiatur-ATtiny-basiertes Arduino-kompatibles Board mit dem Atmel ATtiny85. Der ATtiny85 ist ein 8-Pin-Mikrocontroller, der ein enger Verwandter des typischen Arduino-Chips ATMega328P ist. Der ATtiny85 hat etwa ein Viertel des Speichers und nur sechs I/O-Pins. Es kann jedoch über die Arduino-IDE programmiert werden und kann immer noch Arduino-Code ohne Probleme ausführen.

Das USB Rubber Ducky ist ein beliebtes Hacker-Tool. Es ist ein Tastendruck-Injektionsgerät, das als generisches Flash-Laufwerk getarnt ist. Computer erkennen sie als normale Tastatur und akzeptieren automatisch ihre vorprogrammierten Tastenanschläge mit über 1000 Wörtern pro Minute. Folgen Sie dem Link, um alles über Rubber Duckies von Hak5 zu erfahren, wo Sie auch das echte Angebot kaufen können. In der Zwischenzeit zeigt dieses Video-Tutorial, wie man einen Digispark wie ein Rubber Ducky verwendet. Ein weiteres Video-Tutorial zeigt, wie man Rubber Ducky-Skripte für die Ausführung auf dem Digispark umwandelt.

Schritt 17: HackLife

HackLife
HackLife

Wir hoffen, Ihnen hat die Reise in diesem Monat in die DIY-Elektronik gefallen. Melde dich und teile deinen Erfolg in den Kommentaren unten oder in der HackerBoxes Facebook-Gruppe. Lassen Sie es uns auf jeden Fall wissen, wenn Sie Fragen haben oder Hilfe bei irgendetwas benötigen.

Komm zur Party. Lebe das HackLife. Sie können jeden Monat eine Kühlbox mit hackbaren Elektronik- und Computertechnologieprojekten direkt in Ihre Mailbox geliefert bekommen. Surfen Sie einfach zu HackerBoxes.com und abonnieren Sie den monatlichen HackerBox-Service.

Empfohlen: