Spisu treści:
- Krok 1: Ogólne informacje o module kompasu
- Krok 2: Wymagane składniki
- Krok 3: Łączenie modułu kompasu GY-511 z Arduino
- Krok 4: Kalibracja modułu kompasu GY-511
- Krok 5: Obwód
- Krok 6: Kod
- Krok 7: Tworzenie cyfrowego kompasu
- Krok 8: Obwód
- Krok 9: Kod
- Krok 10: Co dalej?
Wideo: Jak korzystać z modułu GY511 z Arduino [Zrób cyfrowy kompas]: 11 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Przegląd
W niektórych projektach elektronicznych musimy w każdej chwili znać położenie geograficzne i odpowiednio wykonać określoną operację. W tym samouczku dowiesz się, jak używać modułu kompasu LSM303DLHC GY-511 z Arduino do tworzenia cyfrowego kompasu. Najpierw dowiesz się o tym module i jego działaniu, a następnie zobaczysz, jak połączyć moduł LSM303DLHC GY-511 z Arduino.
Czego się nauczysz
- Czym jest moduł kompasu?
- Moduł kompasu i interfejs Arduino.
- Zrób kompas cyfrowy z modułem GY-511 i Arduino.
Krok 1: Ogólne informacje o module kompasu
Moduł GY-511 zawiera 3-osiowy akcelerometr i 3-osiowy magnetometr. Ten czujnik może mierzyć przyspieszenie liniowe w pełnej skali ± 2 g / ± 4 g / ± 8 g / ± 16 g oraz pola magnetyczne w pełnej skali ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Gaussa.
Gdy moduł ten jest umieszczony w polu magnetycznym, zgodnie z prawem Lorentza, w jego mikroskopijnej cewce indukuje się prąd wzbudzający. Moduł kompasu przekształca ten prąd na napięcie różnicowe dla każdego kierunku współrzędnych. Korzystając z tych napięć, można obliczyć pole magnetyczne w każdym kierunku i uzyskać położenie geograficzne.
Wskazówka
QMC5883L to kolejny powszechnie używany moduł kompasu. Ten moduł, który ma podobną budowę i zastosowanie jak moduł LMS303, ma nieco inną wydajność. Więc jeśli robisz projekty, uważaj na typ swojego modułu. Jeśli twój moduł to QMC5882L, użyj odpowiedniej biblioteki i kodów, które są również zawarte w samouczku.
Krok 2: Wymagane składniki
Komponenty sprzętowe
Arduino UNO R3 * 1
GY-511 3-osiowy akcelerometr + magnetometr *1
Silnik serwo TowerPro SG-90 * 1
Moduł LCD 1602 * 1
Zworki * 1
Aplikacje oprogramowania
IDE Arduino
Krok 3: Łączenie modułu kompasu GY-511 z Arduino
Moduł kompasu GY-511 ma 8 pinów, ale do połączenia z Arduino potrzebujesz tylko 4 z nich. Moduł ten komunikuje się z Arduino za pomocą protokołu I2C, dlatego należy podłączyć piny SDA (wyjście I2C) i SCK (wejście zegara I2C) modułu do pinów I2C na płytce Arduino.
Uwaga Jak widać, w tym projekcie użyliśmy modułu GY-511. Ale możesz użyć tej instrukcji do skonfigurowania innych modułów kompasu LMS303.
Krok 4: Kalibracja modułu kompasu GY-511
W celu nawigacji należy najpierw skalibrować moduł, czyli ustawić zakres pomiarowy od 0 do 360 stopni. Aby to zrobić, podłącz moduł do Arduino jak pokazano poniżej i wgraj poniższy kod na swoją płytkę. Po wykonaniu kodu w oknie monitora szeregowego widać minimalne i maksymalne wartości zakresu pomiarowego dla osi X, Y i Z. Liczby te będą potrzebne w następnej części, więc zapisz je.
Krok 5: Obwód
Krok 6: Kod
W tym kodzie potrzebujesz biblioteki Wire.h do komunikacji I2C oraz biblioteki LMS303.h do modułu kompasu. Biblioteki te można pobrać z poniższych linków.
Biblioteka LMS303.h
Biblioteka Wire.h
UwagaJeśli używasz QMC5883, będziesz potrzebować następującej biblioteki:
MechaQMC5883L.h
Tutaj wyjaśniamy kod dla LMS303, ale możesz również pobrać kody dla modułu QMC.
Zobaczmy kilka nowych funkcji:
kompas.enableDefault();
Inicjalizacja modułu
kompas.czytaj();
Odczytywanie wartości wyjściowych modułu kompasu
running_min.z = min(running_min.z, kompas.m.z); running_max.x = max(running_max.x, kompas.m.x);
Wyznaczanie minimalnych i maksymalnych wartości zakresu pomiarowego poprzez porównanie zmierzonych wartości.
Krok 7: Tworzenie cyfrowego kompasu
Po skalibrowaniu modułu zbudujemy kompas, podłączając do modułu serwomotor. Aby wskaźnik serwomechanizmu zawsze wskazywał nam kierunek północny, tak jak czerwona strzałka na kompasie. Aby to zrobić, najpierw moduł kompasu oblicza najpierw kierunek geograficzny i wysyła go do Arduino, a następnie, stosując odpowiedni współczynnik, obliczysz kąt, o jaki powinien obracać się serwomotor, aby jego wskaźnik wskazywał północ magnetyczną. Ostatecznie stosujemy ten kąt do serwomotoru.
Krok 8: Obwód
Krok 9: Kod
Do tej części potrzebna jest również biblioteka Servo.h, która jest domyślnie zainstalowana w oprogramowaniu Arduino.
Zobaczmy kilka nowych funkcji:
Serwo Serwo1;
Inicjalizacja modułu
kompas.czytaj();
Przedstawiamy obiekt silnika serwo
Servo1.attach(servoPin); kompas.init(); kompas.enableDefault();
Inicjalizacja modułu kompasu i serwomotoru
Argument Servo1.attach() to numer pinu podłączonego do serwomotoru.
kompas.m_min = (LSM303::wektor){-32767, -32767, -32767}; kompas.m_max = (LSM303::wektor){+32767, +32767, +32767};
Za pomocą tych linii definiujesz minimalne i maksymalne wartości pomiaru zakresu uzyskanego w poprzedniej części.
nagłówek pływający =compass.heading((LSM303::vector){0, 0, 1});
Funkcja header() zwraca kąt między osią współrzędnych a osią stałą. Możesz zdefiniować stałą oś za pomocą wektora w argumencie funkcji. Na przykład tutaj, definiując (LSM303:: wektor) {0, 0, 1}, oś Z jest uważana za oś stałą.
Servo1.write(nagłówek);
Funkcja Servo1.write() stosuje wartość odczytaną przez moduł kompasu do serwomotoru.
Uwaga Zwróć uwagę, że serwomotor może mieć pole magnetyczne, więc lepiej jest umieścić serwomotor w odpowiedniej odległości od modułu kompasu, aby nie powodowało to odchylenia modułu kompasu.
Zalecana:
Jak korzystać z modułu RFID-RC522 z Arduino: 5 kroków
Jak korzystać z modułu RFID-RC522 z Arduino: W tym instruktażu przedstawię podstawowe zasady działania modułu RFID w połączeniu z jego tagami i chipami. Przedstawię również krótki przykład projektu, który wykonałem przy użyciu tego modułu RFID z diodą LED RGB. Jak zwykle z moimi Ins
Jak korzystać z modułu zegara czasu rzeczywistego (DS3231): 5 kroków
Jak korzystać z modułu zegara czasu rzeczywistego (DS3231): DS3231 to tani, niezwykle dokładny zegar czasu rzeczywistego (RTC) I2C ze zintegrowanym oscylatorem kwarcowym z kompensacją temperatury (TCXO) i kryształem. Urządzenie zawiera wejście baterii i utrzymuje dokładny pomiar czasu, gdy główne zasilanie
Jak korzystać z czujnika PIR i modułu brzęczyka - samouczek Visuino: 6 kroków
Jak używać czujnika PIR i modułu brzęczyka - Samouczek Visuino: W tym samouczku nauczymy się, jak używać czujnika PIR i modułu brzęczyka, aby wydawać dźwięk za każdym razem, gdy czujnik PIR wykryje ruch. Obejrzyj film demonstracyjny
Jak korzystać z terminala Mac i jak korzystać z kluczowych funkcji: 4 kroki
Jak korzystać z terminala Mac i jak korzystać z kluczowych funkcji: Pokażemy Ci, jak otworzyć terminal MAC. Pokażemy również kilka funkcji w Terminalu, takich jak ifconfig, zmiana katalogów, dostęp do plików i arp. Ifconfig pozwoli Ci sprawdzić Twój adres IP i reklamę MAC
Jak korzystać z modułu czujnika podczerwieni TCRT5000 z Arduino UNO: 7 kroków (ze zdjęciami)
Jak korzystać z modułu czujnika podczerwieni TCRT5000 z Arduino UNO: W tym samouczku nauczymy Cię podstaw korzystania z modułu czujnika podczerwieni TCRT5000. Te podstawowe pokazują wartości analogowe i cyfrowe na monitorze szeregowym.Opis:Ten czujnik odbiciowy na podczerwień wykorzystuje TCRT5000 do wykrywania koloru i