Satura rādītājs:
- 1. darbība. Vispārīga informācija par kompasa moduli
- 2. darbība. Nepieciešamās sastāvdaļas
- 3. darbība: GY-511 kompasa moduļa saskarne ar Arduino
- 4. solis: GY-511 kompasa moduļa kalibrēšana
- 5. solis: ķēde
- 6. darbība: kods
- 7. darbība: digitālā kompasa izgatavošana
- 8. solis: ķēde
- 9. solis: kods
- 10. solis: kas tālāk?
Video: Kā lietot GY511 moduli ar Arduino [izveidot digitālo kompasu]: 11 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:55
Pārskats
Dažos elektronikas projektos mums jebkurā brīdī jāzina ģeogrāfiskā atrašanās vieta un attiecīgi jāveic konkrēta darbība. Šajā apmācībā jūs uzzināsit, kā izmantot LSM303DLHC GY-511 kompasa moduli kopā ar Arduino, lai izveidotu digitālo kompasu. Pirmkārt, jūs uzzināsit par šo moduli un tā darbību, un pēc tam redzēsit, kā savienot LSM303DLHC GY-511 moduli ar Arduino.
Ko Tu iemācīsies
- Kas ir kompasa modulis?
- Kompasa modulis un Arduino interfeiss.
- Izveidojiet digitālo kompasu, izmantojot moduli GY-511 un Arduino.
1. darbība. Vispārīga informācija par kompasa moduli
GY-511 modulī ietilpst 3 asu akselerometrs un 3 asu magnetometrs. Šis sensors var izmērīt lineāro paātrinājumu pilnās skalās ± 2 g / ± 4 g / ± 8 g / ± 16 g un magnētiskos laukus pilnās skalās ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Gauss.
Kad šis modulis ir ievietots magnētiskajā laukā, saskaņā ar Lorenca likumu mikroskopiskajā spolē tiek ierosināta ierosmes strāva. Kompasa modulis šo strāvu pārveido par diferenciālo spriegumu katram koordinātu virzienam. Izmantojot šos spriegumus, jūs varat aprēķināt magnētisko lauku katrā virzienā un iegūt ģeogrāfisko stāvokli.
Padoms
QMC5883L ir vēl viens plaši izmantots kompasa modulis. Šis modulis, kuram ir līdzīga struktūra un pielietojums kā modulim LMS303, nedaudz atšķiras pēc veiktspējas. Tātad, ja jūs veicat projektus, esiet piesardzīgs attiecībā uz moduļa veidu. Ja jūsu modulis ir QMC5882L, izmantojiet atbilstošo bibliotēku un kodus, kas ir iekļauti arī apmācībā.
2. darbība. Nepieciešamās sastāvdaļas
Aparatūras komponenti
Arduino UNO R3 *1
GY-511 3 asu akselerometrs + magnetometrs *1
TowerPro servomotors SG-90 *1
1602 LCD modulis *1
Džemperi *1
Programmatūras lietotnes
Arduino IDE
3. darbība: GY-511 kompasa moduļa saskarne ar Arduino
GY-511 kompasa modulim ir 8 tapas, bet jums ir nepieciešami tikai 4 no tiem, lai saskarne ar Arduino. Šis modulis sazinās ar Arduino, izmantojot I2C protokolu, tāpēc pievienojiet moduļa SDA (I2C izeja) un SCK (I2C pulksteņa ievade) tapas Arduino plates I2C tapām.
Piezīme. Kā redzat, šajā projektā esam izmantojuši moduli GY-511. Bet jūs varat izmantot šo instrukciju, lai iestatītu citus LMS303 kompasa moduļus.
4. solis: GY-511 kompasa moduļa kalibrēšana
Lai pārvietotos, vispirms ir jākalibrē modulis, kas nozīmē mērīšanas diapazona iestatīšanu no 0 līdz 360 grādiem. Lai to izdarītu, pievienojiet moduli Arduino, kā parādīts zemāk, un augšupielādējiet šādu kodu savā panelī. Pēc koda izpildes sērijveida monitora logā var redzēt X, Y un Z ass mērīšanas diapazona minimālās un maksimālās vērtības. Šie skaitļi jums būs nepieciešami nākamajā daļā, tāpēc pierakstiet tos.
5. solis: ķēde
6. darbība: kods
Šajā kodā jums ir nepieciešama bibliotēka Wire.h I2C komunikācijai un LMS303.h bibliotēka kompasa modulim. Šīs bibliotēkas varat lejupielādēt no šīm saitēm.
LMS303.h bibliotēka
Wire.h bibliotēka
Piezīme. Ja izmantojat QMC5883, jums būs nepieciešama šāda bibliotēka:
MechaQMC5883L.h
Šeit mēs izskaidrojam LMS303 kodu, bet jūs varat lejupielādēt arī QMC moduļa kodus.
Apskatīsim dažas jaunās funkcijas:
kompass.enableDefault ();
Moduļa inicializācija
kompass.lasīt ();
Kompasa moduļa izejas vērtību nolasīšana
running_min.z = min (running_min.z, kompass.m.z); running_max.x = max (darbojas_max.x, kompass.m.x);
Mērījumu diapazona minimālās un maksimālās vērtības noteikšana, salīdzinot izmērītās vērtības.
7. darbība: digitālā kompasa izgatavošana
Pēc moduļa kalibrēšanas mēs izveidosim kompasu, pievienojot modulim servomotoru. Lai servo indikators vienmēr parādītu mums ziemeļu virzienu, piemēram, sarkano bultiņu uz kompasa. Lai to izdarītu, vispirms kompasa modulis vispirms aprēķina ģeogrāfisko virzienu un nosūta to Arduino, un pēc tam, piemērojot atbilstošu koeficientu, jūs aprēķināsit leņķi, kas jāpārvērš servodzinējam tā, lai tā indikators būtu vērsts uz magnētisko ziemeļu pusi. Galu galā mēs šo leņķi attiecinām uz servomotoru.
8. solis: ķēde
9. solis: kods
Šai daļai jums nepieciešama arī bibliotēka Servo.h, kas pēc noklusējuma ir instalēta jūsu Arduino programmatūrā.
Apskatīsim dažas no jaunajām funkcijām:
Servo Servo1;
Moduļa inicializācija
kompass.lasīt ();
Iepazīstinām ar servomotoru objektu
Servo1.attach (servoPin); kompass.init (); kompass.enableDefault ();
Inicializējiet kompasa moduli un servomotoru
Arguments Servo1.attach () ir servodzinējam pievienotās tapas numurs.
kompass.m_min = (LSM303:: vektors) { -32767, -32767, -32767}; kompass.m_max = (LSM303:: vektors) { +32767, +32767, +32767};
Izmantojot šīs līnijas, jūs definējat minimālās un maksimālās vērtības iepriekšējā daļā iegūtā diapazona mērīšanai.
pludiņa virsraksts = kompass.virsraksts ((LSM303:: vektors) {0, 0, 1});
Funkcija virsraksts () atgriež leņķi starp koordinātu asi un fiksēto asi. Jūs varat definēt fiksēto asi ar vektoru funkcijas argumentā. Piemēram, šeit, definējot (LSM303:: vektoru) {0, 0, 1}, Z ass tiek uzskatīta par nemainīgu asi.
Servo1.write (virsraksts);
Funkcija Servo1.write () piemēro servomotoram kompasa moduļa nolasīto vērtību.
Piezīme. Ņemiet vērā, ka servomotorei var būt magnētiskais lauks, tāpēc labāk ir novietot servomotoru piemērotā attālumā no kompasa moduļa, lai tas neizraisītu kompasa moduļa novirzi.
Ieteicams:
Kā izveidot analogo pulksteni un digitālo pulksteni ar LED joslu, izmantojot Arduino: 3 soļi
Kā izveidot analogo pulksteni un digitālo pulksteni ar LED joslu, izmantojot Arduino: Šodien mēs izgatavosim analogo pulksteni & Digitālais pulkstenis ar Led Strip un MAX7219 Dot modulis ar Arduino. Tas izlabos laiku atbilstoši vietējai laika joslai. Analogs pulkstenis var izmantot garāku LED sloksni, tāpēc to var pakārt pie sienas, lai tas kļūtu par mākslas darbu
Kā izveidot digitālo termometru #1: 4 soļi
Kā izveidot digitālo termometru #1: Šajā rakstā es izveidošu projektu ar nosaukumu "Digitālais termometrs". Es izmantoju " DHT11 " temperatūras sensoram. Un izmantojiet " 7Segmrnt moduli " kā displejs. Iesaku vispirms izlasīt šo rakstu " DHT11 " un & q
Kā izveidot Arduino digitālo pulksteni: 5 soļi
Kā izveidot Arduino digitālo pulksteni: Digitālie pulksteņi ir viens no lieliskajiem izgudrojumiem zinātnes jomā. Vai esat kādreiz domājuši par to, kā izveidot digitālos pulksteņus, tāpat kā filmās! " ???? Nu, es arī savu bērnību esmu pavadījis sapnī, lai izveidotu savu digitālo pulksteni
Kā izveidot vieglu animāciju, izmantojot digitālo planšetdatoru: 6 soļi
Kā izveidot vieglu animāciju, izmantojot digitālo planšetdatoru: šovasar ar vecāku palīdzību man izdevās iegūt Wacom Intous Pro mazo. Es iemācījos fotoattēlu rediģēšanu, zīmēšanu un karikatūru skicēšanu utt. Es pēc tam nolēmu izveidot Instructable. Galu galā es nolēmu izveidot īsu un jautru animāciju
Kā izveidot digitālo pulksteni: 10 soļi (ar attēliem)
Kā izveidot digitālo pulksteni: šī ir pirmā reize, kad es rakstu instrukciju, tāpēc, cerams, ka es uzrakstīšu pietiekami labi, lai jūs saprastu. Šodien es jums pastāstīšu, kā izveidot digitālo pulksteni no manis atrastās vietnes. Vietnes nosaukums ir sainsmart.com. Tas bija patiešām viegli