Inhaltsverzeichnis:

IOT123 - D1M BLOCK - GY521 Montage - Gunook
IOT123 - D1M BLOCK - GY521 Montage - Gunook

Video: IOT123 - D1M BLOCK - GY521 Montage - Gunook

Video: IOT123 - D1M BLOCK - GY521 Montage - Gunook
Video: Подключаем гироскоп GY-521 к Ардуино! 2024, Juli
Anonim
IOT123 - D1M BLOCK - GY521 Montage
IOT123 - D1M BLOCK - GY521 Montage
IOT123 - D1M BLOCK - GY521 Montage
IOT123 - D1M BLOCK - GY521 Montage
IOT123 - D1M BLOCK - GY521 Montage
IOT123 - D1M BLOCK - GY521 Montage

D1M BLOCKS fügen taktile Hüllen, Labels, Polarity Guides und Breakouts für die beliebten Wemos D1 Mini SOC/Shields/Clones hinzu. Dieser D1M BLOCK ermöglicht eine einfache Verbindung zwischen dem Wemos D1 Mini und dem GY-521-Modul (die Adress- und Interrupt-Pins können nach Ihren eigenen Anforderungen angeschlossen werden).

Meine anfängliche Motivation für die Entwicklung des D1M BLOCK war die unabhängige Verifizierung eines Solar-Tracking-Reglers.

Dieses Gysoskop/Beschleunigungsmesser (GY-521-Modul) wird mit folgenden Anwendungen angepriesen:

  1. Sportliche Spielmessung
  2. Erweiterte Realität
  3. Elektronenbild (EIS: Elektronische Bildstabilisierung)
  4. Optisches Bild (OIS: Optische Bildstabilisierung)
  5. Fußgängernavigator
  6. Die Zero-Touch-Gesten-Benutzeroberfläche
  7. Haltungsverknüpfung 8. Intelligentes Mobiltelefon
  8. Tablet-Geräte
  9. Handheld-Spielprodukte
  10. 3D-Fernbedienung
  11. Tragbare Navigationsgeräte

Diese Anleitung führt durch die Montage des Blocks und testet dann die Pitch-, Roll- und Yaw-Messungen mit dem D1M WIFI BLOCK.

Schritt 1: Materialien und Werkzeuge

Materialien und Werkzeuge
Materialien und Werkzeuge
Materialien und Werkzeuge
Materialien und Werkzeuge
Materialien und Werkzeuge
Materialien und Werkzeuge

Es gibt jetzt eine vollständige Liste der Materialien und Quellen.

  1. Das Wemos D1 Mini Protoboard Shield und lange Stiftleisten
  2. 3D-gedruckte Teile.
  3. Ein Satz D1M BLOCK - Montagevorrichtungen
  4. Ein GY-521-Modul
  5. Anschlusskabel.
  6. Starker Cyanoachrylat-Kleber (vorzugsweise aufpinseln)
  7. Heißklebepistole und Heißklebestifte
  8. Löten und Eisen

Schritt 2: Löten der Header Pins (mit der PIN JIG)

Image
Image
Löten der Kopfstifte (mit der PIN JIG)
Löten der Kopfstifte (mit der PIN JIG)
Löten der Kopfstifte (mit der PIN JIG)
Löten der Kopfstifte (mit der PIN JIG)
Löten der Kopfstifte (mit der PIN JIG)
Löten der Kopfstifte (mit der PIN JIG)

Oben gibt es ein Video, das den Lötprozess für die PIN JIG durchläuft.

  1. Führen Sie die Header-Pins durch die Unterseite der Platine (TX rechts-links) und in die Lötschablone.
  2. Drücken Sie die Stifte auf eine harte, ebene Oberfläche.
  3. Drücken Sie das Brett fest auf die Schablone.
  4. Löten Sie die 4 Eckstifte.
  5. Erhitzen Sie die Platine/Pins bei Bedarf und positionieren Sie sie neu (Platine oder Pins nicht ausgerichtet oder lotrecht).
  6. Löten Sie den Rest der Stifte

Schritt 3: Zusammenbau des Schildes

Zusammenbau des Schildes
Zusammenbau des Schildes
Zusammenbau des Schildes
Zusammenbau des Schildes
Zusammenbau des Schildes
Zusammenbau des Schildes

Da das GY-521-Modul Sie daran hindert, Durchgangslöcher auf der Oberseite zu löten, funktioniert die folgende Strategie: Auf der Unterseite über das Durchgangsloch löten, dann umschmelzen und das Drahtende durch das Loch schieben und die Wärme abführen.

  1. Löten Sie den 8P-Header, der mit dem Modul geliefert wurde, auf GY-521.
  2. Modul auf Schirm setzen und verlöten (gleichen seitlichen Pinabstand sicherstellen).
  3. Biegen Sie 4 Stifte und schneiden Sie die restlichen Stifte ab.
  4. 3V3 auf VCC (rot) auflegen und verlöten.
  5. Platzieren und verlöten Sie GND auf GND (schwarz).
  6. D1 auf SCL (blau) setzen und verlöten.
  7. Platzieren und verlöten Sie D2 an SDA (grün).

Wenn Sie die Adress- und Interrupt-Pins verbinden möchten, ist es jetzt an der Zeit, dies zu tun.

Schritt 4: Kleben der Komponente auf die Basis

Image
Image
Kleben der Komponente auf die Basis
Kleben der Komponente auf die Basis
Kleben der Komponente auf die Basis
Kleben der Komponente auf die Basis
Kleben der Komponente auf die Basis
Kleben der Komponente auf die Basis

Im Video nicht behandelt, aber empfohlen: Geben Sie einen großen Klecks Heißkleber in die leere Basis, bevor Sie die Platine schnell einlegen und ausrichten - dies erzeugt Kompressionskeile auf beiden Seiten der Platine. Bitte führen Sie einen Probelauf durch, um die Schilde in der Basis zu platzieren. Wenn das Kleben nicht sehr genau war, müssen Sie möglicherweise die Kante der Leiterplatte leicht feilen.

  1. Mit der Unterseite des Basisgehäuses nach unten zeigend, stecken Sie den angelöteten Kunststoff-Header der Baugruppe durch die Löcher in der Basis; der (TX-Stift befindet sich auf der Seite mit der zentralen Nut).
  2. Legen Sie die Heißklebevorrichtung unter die Basis, wobei die Kunststoffleisten durch die Rillen gesteckt werden.
  3. Setzen Sie die Heißklebevorrichtung auf eine feste, ebene Oberfläche und drücken Sie die Platine vorsichtig nach unten, bis die Kunststoff-Header die Oberfläche treffen; Dadurch sollten die Stifte richtig positioniert sein.
  4. Wenn Sie den Heißkleber verwenden, halten Sie ihn von den Kopfstiften und mindestens 2 mm von der Position des Deckels entfernt.
  5. Tragen Sie Klebstoff auf alle 4 Ecken der Leiterplatte auf, um den Kontakt mit den Bodenwänden sicherzustellen; lassen Sie, wenn möglich, auf beiden Seiten der Platine ein Durchsickern zu.

Schritt 5: Kleben des Deckels auf die Basis

Image
Image
Aufkleben des Deckels auf die Basis
Aufkleben des Deckels auf die Basis
Aufkleben des Deckels auf die Basis
Aufkleben des Deckels auf die Basis
  1. Stellen Sie sicher, dass die Stifte frei von Klebstoff sind und die oberen 2 mm der Basis frei von Heißkleber sind.
  2. Bringen Sie den Deckel vor (Trockenlauf) und stellen Sie sicher, dass keine Druckartefakte im Weg sind.
  3. Treffen Sie bei der Verwendung des Cyanoachrylat-Adhäsivs geeignete Vorsichtsmaßnahmen.
  4. Tragen Sie Cyanoachrylat auf die unteren Ecken des Lids auf, um sicherzustellen, dass der angrenzende Kamm bedeckt ist.
  5. Bringen Sie den Deckel schnell an der Basis an; Klemmen Sie, wenn möglich, die Ecken zu (um die Linse zu vermeiden).
  6. Nachdem der Deckel getrocknet ist, biegen Sie jeden Stift von Hand, so dass er bei Bedarf zentral im Hohlraum liegt (siehe Video).

Schritt 6: Hinzufügen der Klebeetiketten

Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
Hinzufügen der Klebeetiketten
  1. Pinbelegungs-Etikett auf Unterseite des Sockels anbringen, RST-Pin auf Seite mit Nut.
  2. Bringen Sie das Kennzeichnungsetikett auf der flachen, nicht genuteten Seite an, wobei sich die Stifte an der Oberseite des Etiketts befinden.
  3. Drücken Sie die Etiketten fest nach unten, ggf. mit einem flachen Werkzeug.

Schritt 7: Testen mit dem D1M WIFI BLOCK

Testen mit dem D1M WIFI BLOCK
Testen mit dem D1M WIFI BLOCK

Für diesen Test benötigen Sie:

  1. Ein D1M GY521 BLOCK
  2. Ein D1M WIFI-BLOCK

Vorbereitung:

  1. Installieren Sie in der Arduino IDE die I2CDev- und MPU6050-Bibliotheken (Reißverschlüsse angehängt)
  2. Laden Sie die Testskizze auf den D1M WIFI BLOCK hoch.
  3. Trennen Sie den USB vom PC.
  4. Verbinden Sie den D1M GY521 BLOCK mit dem D1M WIFI BLOCK

Der Test:

  1. Verbinden Sie den USB mit dem PC.
  2. Öffnen Sie das Arduino-Konsolenfenster bei dem in der Skizze angegebenen Baud.
  3. Verschieben Sie die BLOCKS im Raum und überprüfen Sie, ob die Konsolenwerte die Bewegungen widerspiegeln.

Eine Testskizze, die den grundlegenden PITCH/ROLL/YAW-Winkel für das KY-521-Modul aufzeichnet

#include "I2Cdev.h"
#include "MPU6050_6Axis_MotionApps20.h"
#include "Wire.h"
MPU6050 mpu;
uint8_t mpuIntStatus;
uint16_t Paketgröße;
uint16_t fifoCount;
uint8_t fifoBuffer[64];
Quaternion q;
VectorFloat-Schwerkraft;
float-ypr[3];
volatile bool mpuInterrupt = false;
void dmpDataReady() {mpuInterrupt = true;}
Leere Einrichtung () {
Wire.begin();
mpu.initialize();
mpu.dmpInitialize();
mpu.setDMPEnabled(true);
attachInterrupt(0, dmpDataReady, RISING);
mpuIntStatus = mpu.getIntStatus();
packetSize = mpu.dmpGetFIFOPacketSize();
Serial.begin(115200);
}
Leere Schleife () {
while (!mpuInterrupt && fifoCount < Paketgröße) {}
mpuInterrupt = falsch;
mpuIntStatus = mpu.getIntStatus();
fifoCount = mpu.getFIFOCount();
if ((mpuIntStatus & 0x10) || fifoCount == 1024) {
mpu.resetFIFO();
Serial.println (F ("FIFO-Überlauf!"));
}
sonst if (mpuIntStatus & 0x02) {
while (fifoCount < Paketgröße) fifoCount = mpu.getFIFOCount();
mpu.getFIFOBytes(fifoBuffer, Paketgröße);
fifoCount -= Paketgröße;
mpu.dmpGetQuaternion(&q, fifoBuffer);
mpu.dmpGetGravity(&gravity, &q);
mpu.dmpGetYawPitchRoll(ypr, &q, &gravity);
Serial.print("ypr\t");
Serial.print (ypr[0]*180/M_PI);
Serial.print("\t");
Serial.print (ypr[1]*180/M_PI);
Serial.print("\t");
Serial.print (ypr [2] * 180/M_PI);
Serial.println();
}
}

rawd1m_MPU6050_pitch_roll_yaw.ini anzeigen, gehostet mit ❤ von GitHub

Schritt 8: Nächste Schritte

  • Programmieren Sie Ihren D1M BLOCK mit D1M BLOCKLY
  • Schauen Sie sich Thingiverse an
  • Stellen Sie eine Frage im ESP8266-Community-Forum

Empfohlen: