Spisu treści:

Śledzenie zmian przyspieszenia za pomocą Raspberry Pi i MMA7455 za pomocą Pythona: 6 kroków
Śledzenie zmian przyspieszenia za pomocą Raspberry Pi i MMA7455 za pomocą Pythona: 6 kroków

Wideo: Śledzenie zmian przyspieszenia za pomocą Raspberry Pi i MMA7455 za pomocą Pythona: 6 kroków

Wideo: Śledzenie zmian przyspieszenia za pomocą Raspberry Pi i MMA7455 za pomocą Pythona: 6 kroków
Wideo: Co potrafi KOMPUTER ZA 200 PLN? | Raspberry PI 4B 2024, Listopad
Anonim
Image
Image

Nie potknąłem się, testowałem grawitację. To nadal działa…

Reprezentacja przyspieszającego wahadłowca kosmicznego wyjaśniała, że zegar w najwyższym punkcie wahadłowca wybierałby szybciej niż zegar u podstawy z powodu grawitacyjnego rozszerzania się czasu. Niektórzy twierdzili, że przyspieszenie na pokładzie wahadłowca będzie takie samo dla obu zegarów, więc powinny tykać w tym samym tempie. Zastanów się nad tym.

Myśli, motywacja, a nawet wytyczne mogą pochodzić z dowolnego miejsca, jednak gdy twoja uwaga jest skierowana na innowacje, wkład w to osoby, które koncentrują się na tym punkcie. Raspberry Pi, mini, jednopłytkowy komputer z systemem Linux, oferuje wyjątkowe przedsięwzięcia i doskonałe doradztwo w zakresie aranżacji, programowania i przedsięwzięć elektronicznych. Blisko, będąc twórcami samouczków Raspberry Pi i urządzeń, mamy szansę na programowanie, majsterkowanie i tworzenie niesamowitych rzeczy dzięki informatyce i elektronice. Ostatnio mieliśmy radość z wykonania zadania za pomocą akcelerometru, a myśli stojące za tym, co można zrobić z tym gadżetem, są naprawdę fajne. Tak więc w tym zadaniu zastosujemy MMA7455, 3-osiowy cyfrowy czujnik przyspieszenia, aby mierzyć przyspieszenie w 3 wymiarach, X, Y i Z, z Raspberry Pi przy użyciu Pythona. Zobaczmy, czy to się opłaca.

Krok 1: Wymagany sprzęt

Sprzęt, którego potrzebujemy
Sprzęt, którego potrzebujemy
Sprzęt, którego potrzebujemy
Sprzęt, którego potrzebujemy

Wiemy, jak kłopotliwe może być podejmowanie prób i branie po nich, nie wiedząc, które części zdobyć, skąd ułożyć i ile wszystko będzie kosztować z góry. Więc wykonaliśmy dla Ciebie całą tę pracę. Po rozłożeniu wszystkich części wykonanie tego zadania powinno być szybkie. Weź po zakończeniu, aby uzyskać pełną listę części.

1. Raspberry Pi

Pierwszym krokiem było zdobycie płyty Raspberry Pi. Raspberry Pi to samodzielny komputer PC oparty na systemie Linux. Ten mały komputer ma ogromne możliwości w rejestrowaniu mocy, wykorzystywanym jako element ćwiczeń z elektroniki oraz operacjach komputerowych, takich jak arkusze kalkulacyjne, edytor tekstu, surfowanie po Internecie i poczta e-mail oraz gry. Możesz go kupić w dowolnym sklepie elektronicznym lub hobbystycznym.

2. Osłona I2C dla Raspberry Pi

Podstawowym problemem Raspberry Pi jest naprawdę nieobecny port I2C. W tym celu złącze TOUTPI2 I2C daje sens używania Raspberry Pi z KAŻDYM urządzeniem I2C. Jest dostępny w sklepie DCUBE

3. Akcelerometr 3-osiowy, MMA7455

Wyprodukowany przez firmę Freescale Semiconductor, Inc. 3-osiowy akcelerometr cyfrowy MMA7455 jest czujnikiem obrabianym maszynowo o małej mocy i mniejszej skali, przeznaczonym do pomiaru przyspieszenia wzdłuż osi X, Y i Z. Ten czujnik otrzymaliśmy ze sklepu DCUBE

4. Kabel połączeniowy

Kupiliśmy kabel połączeniowy I2C ze sklepu DCUBE

5. Kabel Micro USB

Najmniej uwikłany, jednak najbardziej rygorystyczny pod względem zapotrzebowania na energię jest Raspberry Pi! Najbardziej zalecanym i najmniej wymagającym podejściem do zarządzania strategią jest wykorzystanie kabla Micro USB. Bardziej zaawansowaną i wyspecjalizowaną ścieżką jest zasilanie konkretnie za pomocą portów GPIO lub USB.

6. Wsparcie sieciowe

Połącz Raspberry Pi z kablem Ethernet (LAN) i podłącz go do sieci domowej. Z drugiej strony wyszukaj złącze Wi-Fi i użyj jednego z portów USB, aby uzyskać dostęp do sieci zdalnej. To ostra decyzja, podstawowa, mała i prosta!

7. Kabel HDMI/zdalny dostęp

Raspberry Pi ma port HDMI, który można podłączyć w szczególności do ekranu lub telewizora za pomocą kabla HDMI. Ewentualnie możesz użyć SSH do nawiązania połączenia z Raspberry Pi z komputera z systemem Linux lub Mac z terminala. Podobnie PuTTY, darmowy emulator terminala o otwartym kodzie źródłowym, brzmi jak mądra myśl.

Krok 2: Podłączanie sprzętu

Podłączanie sprzętu
Podłączanie sprzętu
Podłączanie sprzętu
Podłączanie sprzętu
Podłączanie sprzętu
Podłączanie sprzętu

Wykonaj obwód, jak pokazano na schemacie. Na schemacie zobaczysz połączenia różnych elementów elektroniki, przewody połączeniowe, kable zasilające i czujnik I2C.

Połączenie Raspberry Pi i I2C Shield

Przede wszystkim weź Raspberry Pi i zobacz na nim I2C Shield. Ładnie naciśnij Shield na piny GPIO Pi i jesteśmy skończeni z tą progresją tak łatwą jak bułka z masłem (patrz przystawka).

Połączenie Raspberry Pi i czujnika

Weź czujnik i połącz z nim kabel I2C. Aby uzyskać odpowiednie działanie tego kabla, zapoznaj się z wyjściem I2C ZAWSZE zajmuje się z wejściem I2C. To samo należy wykonać dla Raspberry Pi z osłoną I2C zamontowaną nad pinami GPIO.

Zalecamy użycie kabla I2C, ponieważ neguje to wymóg rozcinania pinoutów, zabezpieczania i przeszkadzania nawet przy najprostszym bałaganie. Dzięki temu znaczącemu kablowi skojarzonemu i odtwarzanemu możesz prezentować, wymieniać urządzenia lub dodawać więcej gadżetów do odpowiedniej aplikacji. To wspiera ciężar pracy do ogromnego poziomu.

Uwaga: Brązowy przewód powinien niezawodnie łączyć się z uziemieniem (GND) między wyjściem jednego urządzenia a wejściem innego urządzenia

Dostęp do Internetu jest kluczem

Aby nasze przedsięwzięcie odniosło sukces, potrzebujemy połączenia internetowego dla naszego Raspberry Pi. W tym celu masz alternatywy, takie jak połączenie połączenia Ethernet (LAN) z siecią domową. Alternatywnie, satysfakcjonującym sposobem jest użycie złącza USB WiFi. Ogólnie rzecz biorąc, potrzebujesz sterownika, aby to działało. Więc skłaniaj się ku temu z Linuksem w zarysie.

Zasilacz

Podłącz kabel Micro USB do gniazda zasilania Raspberry Pi. Atakuj i jesteśmy gotowi.

Połączenie z ekranem

Możemy podłączyć kabel HDMI do innego monitora/telewizora. Czasami musisz dostać się do Raspberry Pi bez łączenia go z ekranem lub możesz potrzebować wyświetlić informacje z niego z innego miejsca. Możliwe, że istnieją kreatywne i finansowo sprytne sposoby radzenia sobie ze wszystkimi rozważanymi rzeczami. Jednym z nich jest użycie - SSH (zdalne logowanie z wiersza poleceń). Możesz również użyć do tego oprogramowania PuTTY.

Krok 3: Kodowanie Pythona dla Raspberry Pi

Kodowanie Pythona dla Raspberry Pi
Kodowanie Pythona dla Raspberry Pi

Możesz zobaczyć kod Pythona dla Raspberry Pi i czujnika MMA7455 w naszym GithubRepository.

Przed przejściem do kodu upewnij się, że przeczytałeś standardy podane w kronice Readme i skonfiguruj swoje Raspberry Pi zgodnie z jego wskazaniami. To po prostu przyniesie ulgę na chwilę w świetle obecnych okoliczności.

Akcelerometr to elektromechaniczny gadżet, który mierzy siły przyspieszenia. Te moce mogą być statyczne, podobne do stałej siły grawitacji, która ciągnie twoje stopy, lub mogą być zmienne - wywołane przez ruch lub wibracje akcelerometru.

Chodzi o kod Pythona i możesz klonować i zmieniać kod w dowolny 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 dzieł. # MMA7455L # Ten kod jest przeznaczony do współpracy z modułem MMA7455L_I2CS I2C Mini dostępnym na stronie dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 %B2c-mini-moduł/

importuj smbus

czas importu

# Uzyskaj magistralę I2C

autobus = smbus. SMBus(1)

# Adres MMA7455L, 0x1D(16)

# Wybór rejestru kontrolnego trybu, 0x16(22) # 0x01(01) Tryb pomiaru, +/- 8g bus.write_byte_data(0x1D, 0x16, 0x01)

czas.sen(0.5)

# Adres MMA7455L, 0x1D(16)

# Odczytaj dane z powrotem z 0x00(00), 6 bajtów # Oś X LSB, Oś X MSB, Oś Y LSB, Oś Y MSB, Oś Z LSB, Oś Z MSB data=bus.read_i2c_block_data(0x1D, 0x00, 6)

# Konwertuj dane na 10 bitów

xAccl = (dane[1] i 0x03) * 256 + dane [0] jeśli xAccl > 511: xAccl -= 1024 yAccl = (dane[3] & 0x03) * 256 + dane [2] jeśli yAccl > 511: yAccl - = 1024 zAccl = (dane[5] & 0x03) * 256 + dane [4] jeśli zAccl > 511: zAccl -= 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: Praktyczność Kodeksu

Praktyczność Kodeksu
Praktyczność Kodeksu

Pobierz (lub git pull) kod z Github i otwórz go w Raspberry Pi.

Uruchom polecenia skompiluj i prześlij kod w terminalu i zobacz wydajność na ekranie. Po kilku minutach wyświetli każdy z parametrów. Aby upewnić się, że wszystko działa łatwo, możesz korzystać z tej wędrówki każdego dnia lub sprawić, by wędrówka była częścią znacznie bardziej znaczącego zadania. Niezależnie od twoich potrzeb, masz teraz na swoim spotkaniu jeszcze jedno urządzenie.

Krok 5: Aplikacje i funkcje

MMA7455, wyprodukowany przez Freescale Semiconductor, wysokowydajny 3-osiowy cyfrowy akcelerometr o małej mocy może być używany do zmian danych czujnika, orientacji produktu i wykrywania gestów. Idealnie nadaje się do zastosowań takich jak Telefony komórkowe/PMP/PDA: Wykrywanie orientacji (portret/krajobraz), stabilność obrazu, przewijanie tekstu, wybieranie ruchu, stuknięcie w celu wyciszenia, laptop: ochrona przed kradzieżą, gry: wykrywanie ruchu, automatyczne wybudzanie/ Tryb uśpienia dla niskiego zużycia energii i cyfrowego aparatu fotograficznego: Stabilność obrazu.

Krok 6: Wniosek

Jeśli zastanawiałeś się nad zbadaniem wszechświata czujników Raspberry Pi i I2C, możesz zaszokować się, korzystając z podstaw sprzętowych, kodowania, aranżowania, autorytatywnego itp. Kiedy próbujesz być bardziej kreatywny w swoim małe przedsięwzięcie, nigdy nie zaszkodzi przeskoczyć do zewnętrznych źródeł. W tej metodzie może być kilka spraw, które mogą być proste, a niektóre mogą cię przetestować, poruszyć. W każdym razie możesz zrobić sposób i bezbłędnie, zmieniając i tworząc swoją formację.

Na przykład, możesz zacząć od pomysłu prototypu grawimetru do pomiaru lokalnego pola grawitacyjnego Ziemi za pomocą MMA7455 i Raspberry Pi za pomocą Pythona. W powyższym przedsięwzięciu wykorzystaliśmy obliczenia podstawowe. Podstawową zasadą projektowania jest pomiar bardzo małych zmian ułamkowych w obrębie grawitacji Ziemi wynoszącej 1 g. Możesz więc wykorzystać ten czujnik na różne sposoby, które możesz rozważyć. Algorytm polega na pomiarze szybkości zmian pionowego wektora grawitacji we wszystkich trzech prostopadłych kierunkach, które powodują powstanie tensora gradientu grawitacji. Można to wywnioskować, różnicując wartość grawitacji w dwóch punktach oddzielonych niewielką odległością pionową l i dzieląc ją przez tę odległość. Spróbujemy stworzyć wersję roboczą tego prototypu wcześniej niż później, konfiguracja, kod i modelowanie działają na potrzeby analizy hałasu i drgań przenoszonych przez konstrukcje. Wierzymy, że wszystkim wam się to podoba!

Dla Twojej pociechy mamy na YouTube czarujący film, który może pomóc w badaniu. Zaufaj, że to przedsięwzięcie prowadzi do dalszych badań. Jeśli okazja nie puka, zbuduj drzwi.

Zalecana: