Spisu treści:
Wideo: Raspberry Pi - ADXL345 3-osiowy akcelerometr Python - samouczek: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
ADXL345 to mały, cienki, bardzo energooszczędny, 3-osiowy akcelerometr z pomiarem o wysokiej rozdzielczości (13-bitów) do ±16 g. Cyfrowe dane wyjściowe są sformatowane jako 16-bitowe uzupełnienie do dwójek i są dostępne przez interfejs cyfrowy I2 C. Mierzy statyczne przyspieszenie grawitacyjne w aplikacjach z wykrywaniem przechyłu, a także dynamiczne przyspieszenie wynikające z ruchu lub wstrząsu. Jego wysoka rozdzielczość (3,9 mg/LSB) umożliwia pomiar zmian nachylenia mniejszych niż 1,0°. Oto demonstracja z raspberry pi przy użyciu kodu Pythona.
Krok 1: Czego potrzebujesz.
1. Raspberry Pi
2. ADXL345
3. Kabel I²C
4. Osłona I²C dla Raspberry Pi
5. Kabel Ethernet
Krok 2: Połączenie:
Weź nakładkę I2C dla raspberry pi i delikatnie nałóż ją na piny gpio raspberry pi.
Następnie podłącz jeden koniec kabla I2C do czujnika ADXL345, a drugi koniec do ekranu I2C.
Podłącz również kabel Ethernet do pi lub możesz użyć modułu WiFi.
Połączenia prezentuje powyższy obrazek.
Krok 3: Kod:
Kod Pythona dla ADXL345 można pobrać z naszego repozytorium GitHub- Dcube Store
Oto link do tego samego:
github.com/DcubeTechVentures/ADXL345..
Użyliśmy biblioteki SMBus do kodu Pythona, kroki instalacji SMBus na raspberry pi są opisane tutaj:
pypi.python.org/pypi/smbus-cffi/0.5.1
Możesz również skopiować kod stąd, jest on podany w następujący sposób:
# Rozprowadzany z wolną licencją.
# Używaj go w dowolny sposób, z zyskiem lub za darmo, pod warunkiem, że pasuje do licencji powiązanych z nim utworów.
# ADXL345
# Ten kod jest przeznaczony do pracy z modułem ADXL345_I2CS I2C Mini dostępnym w sklepie Dcube Store.
importuj smbus
czas importu
# Uzyskaj magistralę I2C
autobus = smbus. SMBus(1)
# Adres ADXL345, 0x53(83)
# Wybierz rejestr szybkości pasma, 0x2C(44)# 0x0A(10) tryb normalny, szybkość transmisji danych wyjściowych = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
# Adres ADXL345, 0x53(83)
# Wybierz rejestr kontroli mocy, 0x2D(45)
# 0x08(08) Wyłączenie automatycznego uśpienia
bus.write_byte_data (0x53, 0x2D, 0x08)
# Adres ADXL345, 0x53(83)
# Wybierz rejestr formatu danych, 0x31(49)
# 0x08(08) Autotest wyłączony, interfejs 4-przewodowy
# Pełna rozdzielczość, zakres = +/-2g
bus.write_byte_data (0x53, 0x31, 0x08)
czas.sen(0.5)
# Adres ADXL345, 0x53(83)
# Odczytaj dane z powrotem z 0x32(50), 2 bajty
# Oś X LSB, Oś X MSB
dane0 = magistrala.odczyt_bajtów_danych (0x53, 0x32)
dane1 = magistrala.odczyt_bajtów_danych (0x53, 0x33)
# Konwertuj dane na 10 bitów
xAccl = ((dane1 i 0x03) * 256) + dane0
jeśli xAccl > 511:
xAccl -= 1024
# Adres ADXL345, 0x53(83)
# Odczytaj dane z powrotem z 0x34(52), 2 bajty
# Oś Y LSB, Oś Y MSB
dane0 = magistrala.odczyt_bajtów_danych (0x53, 0x34)
dane1 = magistrala.odczyt_bajtów_danych (0x53, 0x35)
# Konwertuj dane na 10 bitów
yAccl = ((dane1 i 0x03) * 256) + dane0
jeśli yAccl > 511:
yAccl -= 1024
# Adres ADXL345, 0x53(83)
# Odczytaj dane z powrotem z 0x36(54), 2 bajty
# Oś Z LSB, Oś Z MSB
data0 = magistrala.odczyt_bajtu_danych (0x53, 0x36)
dane1 = magistrala.odczyt_bajtów_danych (0x53, 0x37)
# Konwertuj dane na 10 bitów
zAccl = ((dane1 i 0x03) * 256) + dane0
jeśli zAccl > 511:
zZak -= 1024
# Dane wyjściowe na ekran
print "Przyspieszenie w osi X: %d" %xAccl
print "Przyspieszenie w osi Y: %d" %yAccl
print "Przyspieszenie w osi Z: %d" %zAccl
Krok 4: Aplikacje:
ADXL345 jest małym, cienkim, 3-osiowym akcelerometrem o bardzo niskim poborze mocy, który może być stosowany w telefonach, oprzyrządowaniu medycznym itp. Jego zastosowanie obejmuje również urządzenia do gier i wskazujące, oprzyrządowanie przemysłowe, osobiste urządzenia nawigacyjne i ochronę dysku twardego (HDD).
Zalecana:
Akcelerometr kontrolera Xbox 360 / modyfikacja sterowania żyroskopem: 7 kroków
Modyfikacja akcelerometru/żyroskopu kontrolera dla konsoli Xbox 360: Gram w Assetto Corsa na kontrolerze dla konsoli Xbox 360. Niestety sterowanie drążkiem analogowym jest bardzo nieporęczne i nie mam miejsca na ustawienie kół. Próbowałem wymyślić sposoby, w jakie mógłbym wbić lepszy mechanizm kierowniczy do t
Instalowanie Raspbian Buster na Raspberry Pi 3 - Pierwsze kroki z Raspbian Buster z Raspberry Pi 3b / 3b+: 4 kroki
Instalowanie Raspbian Buster na Raspberry Pi 3 | Pierwsze kroki z Raspbian Buster z Raspberry Pi 3b / 3b+: Witajcie, niedawno organizacja Raspberry pi uruchomiła nowy system operacyjny Raspbian o nazwie Raspbian Buster. Jest to nowa wersja Raspbian dla Raspberry pi. Więc dzisiaj w tej instrukcji dowiemy się, jak zainstalować Raspbian Buster OS na twoim Raspberry pi 3
Podstawy MPU6050-Akcelerometr + czujnik żyroskopowy: 3 kroki
MPU6050-Akcelerometr + czujnik żyroskopowy Podstawy: MPU6050 jest bardzo przydatnym czujnikiem. MPU 6050 to IMU: Bezwładnościowa jednostka pomiarowa (IMU) to urządzenie elektroniczne, które mierzy i raportuje specyficzną siłę ciała, prędkość kątową, a czasem orientację ciała, stosując kombinację
Akcelerometr Kontroler gier: 8 kroków
Akcelerometr kontroler gier: tekst Voorlopige
Arduino Nano: Akcelerometr Żyroskop Kompas Czujnik MPU9250 I2C Z Visuino: 11 kroków
Arduino Nano: Akcelerometr Żyroskop Kompas Czujnik MPU9250 I2C Z Visuino: MPU9250 jest jednym z najbardziej zaawansowanych obecnie dostępnych czujników połączonych akcelerometrem, żyroskopem i kompasem. Posiadają wiele zaawansowanych funkcji, w tym filtrowanie dolnoprzepustowe, wykrywanie ruchu, a nawet programowalny, wyspecjalizowany procesor