Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Toto je len základný pokyn pre projekt, na ktorom pracujem. Toto je nekalibrované a je to veľmi základný prototyp vyrobený pre triedu. V neskoršom návode ukážem, ako ho kalibrovať.
Na vašom mieste by som od toho nečakal veľkú veľkosť, je to skôr dokumentovanie postupu.
Zásoby
- Mikro servo (použil som mikro servo HXT900 od Hobby King)
- Arduino (používal som Uno)
- LSM303DLHC je snímač
- Káble, spájka atď
- Breadboard
Krok 1: Zostavte všetko
Uistite sa, že sú vaše hlavičky správne pripájané k senzoru a že máte káble a dosku.
Krok 2: Knižnice kódu
Budete sa chcieť uistiť, že ich máte stiahnuté.
Ostatné knižnice, ktoré budete používať, wire.h a servo.h, by už mali byť predvolene nainštalované.
Krok 3: Kód
Z toho, čo ste práve stiahli, otvorte knižnicu skíc „Compass“. Aby ste mohli používať servo, musíte do tohto kódu vložiť servo kód. Skombinoval som to s kódom Hanie Kiany odtiaľto. Originál je od Hanie Kiani, nie odo mňa. Malo by to vyzerať takto.
#zahrnúť
#include #include #include #include Adafruit_LSM303DLH_Mag_Unified mag = Adafruit_LSM303DLH_Mag_Unified (12345); int servoPin = 3; Servo Servo1; void setup (void) {Serial.begin (9600); Wire.begin (); Servo1.attach (servoPin); Serial.println („test magnetometra“); Serial.println (""); if (! mag.begin ()) {Serial.println („Ojoj, nebol zistený žiadny LSM303 … Skontrolujte zapojenie!“); pričom (1); }} void loop (void) { / * Získať novú udalosť senzora * / sensor_event_t udalosť; mag.getEvent (& event); plavák Pi = 3,14159; // Vypočítajte uhol vektora y, x plávajúci nadpis = (atan2 (event.magnetic.y, event.magnetic.x) * 180) / Pi; // Normalizácia na 0-360 if (nadpis <0) {nadpis = 360 + nadpis; } Serial.print („Nadpis kompasu:“); Serial.println (nadpis); Servo1.write (180-nadpis); oneskorenie (10); }
Krok 4: Spojte to dohromady
Chcete, aby bol pin úplne vľavo- SCL- pripojený k dátovému vstupu A5
Ten vedľa neho- SDA- pripojený k portu A4.
Ground ide na Ground.
VIN ide na port 5v.
Krok 5: Pridajte servo do vedenia
Zem a napätie hovoria samy za seba, ale chcete, aby bol dátový kolík ~ 3.
Krok 6: Otestujte kód
Ak pohybujete magnetometrom pomaly, servo by sa malo pohybovať s ním. Pravdepodobne sa nelíši presne, ale aspoň pracuje s kódom, takže prvá časť je dokončená. Stále je to nekalibrované, ale funguje to.