Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
D1M BLOKOVI dodaju taktilne futrole, naljepnice, vodiče za polaritet i proboje za popularne Wemos D1 Mini SOC/štitove/klonove. Ovaj D1M BLOK omogućava jednostavno povezivanje između Wemos D1 Mini i modula GY-521 (pinovi za adresu i prekid mogu se spojiti prema vašim potrebama).
Moja početna motivacija za razvoj D1M BLOK -a bila je nezavisna provjera solarnog kontrolera za praćenje.
Ovaj gizoskop/akcelerometar (GY-521 modul) se smatra sljedećim:
- Mjerenje atletskih igara
- Proširena stvarnost
- Elektronska slika (EIS: Elektronska stabilizacija slike)
- Optička slika (OIS: Optička stabilizacija slike)
- Navigator za pješake
- Korisničko sučelje gestama bez dodira
- Prečica za držanje 8. Inteligentni mobilni telefon
- Tablet uređaji
- Ručni proizvodi za igre
- 3D daljinski upravljač
- Prijenosni navigacijski uređaji
Ovaj Instructable prolazi kroz sastavljanje bloka, a zatim testira mjerenja visine, nagiba i nagiba koristeći D1M WIFI BLOK.
Korak 1: Materijali i alati
Sada postoji potpuna lista predloga materijala i izvora.
- Wemos D1 Mini Protoboard štit i ženska zaglavlja sa dugim iglicama
- 3D štampani delovi.
- Komplet D1M BLOK - Instalirajte Džigove
- Modul GY-521
- Spojna žica.
- Jak ljepilo s cijanoakrilatom (po mogućnosti četkom)
- Pištolj za vruće ljepilo i štapići za vruće ljepilo
- Lemljenje i gvožđe
Korak 2: Lemljenje igala zaglavlja (pomoću PIN JIG -a)
Gore postoji video zapis koji prolazi kroz proces lemljenja za PIN JIG.
- Igle zaglavlja provucite kroz dno ploče (TX desno-lijevo) i u ubodnu lemilicu.
- Pritisnite igle prema dolje na tvrdu ravnu površinu.
- Čvrsto pritisnite ploču na držač.
- Lemite 4 ugaone igle.
- Ponovo zagrijte i po potrebi postavite ploču/igle (ploča ili igle nisu poravnate ili okomite).
- Lemite ostale igle
Korak 3: Sklapanje štita
Budući da će vam modul GY-521 spriječiti lemljenje kroz rupe na gornjoj strani, funkcionira sljedeća strategija: s donje strane lemite preko provrta, zatim otopite i gurnite kraj žice kroz rupu i uklonite toplinu.
- Lemilica 8P zaglavlje koja se isporučuje s modulom na GY-521.
- Postavite modul na štit i lemite (osiguravajući jednak zazor bočnih igala).
- Savijte 4 igle i izrežite preostale igle.
- Postavite i lemite 3V3 na VCC (crveno).
- Postavite i lemite GND u GND (crno).
- Postavite i lemite D1 na SCL (plavo).
- Postavite i lemite D2 na SDA (zeleno).
Ako ćete povezati pinove za adresu i prekid, sada je vrijeme da to učinite.
Korak 4: Lijepljenje komponente na podlogu
Nije obuhvaćeno video zapisom, ali se preporučuje: stavite veliki dotok vrućeg ljepila u praznu podlogu prije brzog umetanja ploče i poravnavanja - to će stvoriti tipke za kompresiju s obje strane ploče. Molimo vas da radite na suho postavljajući štitove u podnožje. Ako lijepljenje nije bilo vrlo precizno, možda ćete morati napraviti lagano turpijanje ruba PCB -a.
- S donjom površinom kućišta baze okrenutom prema dolje, postavite lemljeni sklop zalemljenog sklopa kroz rupe na podnožju; (TX pin će biti sa strane sa centralnim utorom).
- Postavite ubodno ljepilo ispod podnožja s plastičnim zaglavljima postavljenim kroz njegove utore.
- Spustite posudu za vruće ljepilo na čvrstu ravnu površinu i pažljivo gurnite PCB prema dolje dok plastični zaglavci ne dotaknu površinu; ovo bi trebalo da su pinovi pravilno postavljeni.
- Kada koristite vruće ljepilo, držite ga dalje od igala zaglavlja i najmanje 2 mm od mjesta na kojem će se poklopac postaviti.
- Nanesite ljepilo na sva 4 ugla PCB -a osiguravajući kontakt sa osnovnim zidovima; dozvoliti curenje sa obe strane štampane ploče ako je moguće.
Korak 5: Lijepljenje poklopca na podlogu
- Uvjerite se da su igle bez ljepila i da gornjih 2 mm osnove nema vrućeg ljepila.
- Unaprijed namjestite poklopac (suha vožnja) pazeći da nema prepreka u ispisu.
- Poduzmite odgovarajuće mjere opreza pri upotrebi cijanoakrilatnog ljepila.
- Nanesite cijanoakrilat na donje uglove poklopca osiguravajući pokrivenost susjednog grebena.
- Brzo postavite poklopac na podnožje; stezanjem zatvorite uglove ako je moguće (izbjegavajući leće).
- Nakon što se poklopac osuši, ručno savijte svaki zatik tako da bude u središtu praznine ako je potrebno (pogledajte video).
Korak 6: Dodavanje ljepljivih naljepnica
- Nanesite oznaku pinout na donju stranu baze, sa RST iglom sa strane sa utorom.
- Nanesite identifikacijsku naljepnicu na ravnu stranu bez žljebova, pri čemu su igle praznine na vrhu naljepnice.
- Čvrsto pritisnite etikete prema dolje, ako je potrebno, ravnim alatom.
Korak 7: Testiranje sa D1M WIFI BLOKOM
Za ovaj test trebat će vam:
- D1M GY521 BLOK
- D1M WIFI BLOK
Priprema:
- U Arduino IDE instalirajte biblioteke I2CDev i MPU6050 (zipovi priloženi)
- Prenesite testnu skicu na D1M WIFI BLOCK.
- Isključite USB iz računara.
- Pričvrstite D1M GY521 BLOK na D1M WIFI BLOK
Test:
- Priključite USB na računar.
- Otvorite prozor konzole Arduino na brzinama identificiranim na skici.
- Pomjerajte BLOKOVE po prostoru i provjerite da li vrijednosti konzole odražavaju kretanja.
Testna skica koja bilježi osnovni kut PITCH/ROLL/YAW za KY-521 modul
#include "I2Cdev.h" |
#include "MPU6050_6Axis_MotionApps20.h" |
#include "Wire.h" |
MPU6050 mpu; |
uint8_t mpuIntStatus; |
uint16_t packetSize; |
uint16_t fifoCount; |
uint8_t fifoBuffer [64]; |
Quaternion q; |
VectorFloat gravitacija; |
float ypr [3]; |
volatile bool mpuInterrupt = false; |
void dmpDataReady () {mpuInterrupt = true;} |
void setup () { |
Wire.begin (); |
mpu.initialize (); |
mpu.dmpInitialize (); |
mpu.setDMPEnabled (true); |
attachInterrupt (0, dmpDataReady, RISING); |
mpuIntStatus = mpu.getIntStatus (); |
packetSize = mpu.dmpGetFIFOPacketSize (); |
Serial.begin (115200); |
} |
void loop () {{100} {101} |
while (! mpuInterrupt && fifoCount <packetSize) {} |
mpuInterrupt = false; |
mpuIntStatus = mpu.getIntStatus (); |
fifoCount = mpu.getFIFOCount (); |
if ((mpuIntStatus & 0x10) || fifoCount == 1024) { |
mpu.resetFIFO (); |
Serial.println (F ("FIFO prelijevanje!")); |
} |
else if (mpuIntStatus & 0x02) {{100} {101} |
while (fifoCount <packetSize) fifoCount = mpu.getFIFOCount (); |
mpu.getFIFOBytes (fifoBuffer, packetSize); |
fifoCount -= veličina paketa; |
mpu.dmpGetQuaternion (& q, fifoBuffer); |
mpu.dmpGetGravity (& gravitacija, & 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 (); |
} |
} |
pogledajte rawd1m_MPU6050_pitch_roll_yaw.ini hostirano sa ❤ od GitHub -a
Korak 8: Sljedeći koraci
- Programirajte svoj D1M BLOK sa D1M BLOKALNO
- Pogledajte Thingiverse
- Postavite pitanje na forumu zajednice ESP8266