Wpis z mikrobloga

Zakupiłem sobie moduł ADXL345, który jest klasyfikowany jako akcelerometr (czujnik przyspieszenia). Potrzebuję zamontować sensor na bramie, który będzie sygnalizował mi wartość w jakim tempie otwiera się brama oraz czy się otwiera (wartość np. dodatnia), bądź czy się zamyka (wartość np. ujemna).
I teraz tak bawię się tym sensorem i nie widzę różnicy w zmianie wartości, gdy poruszam w osi X, Y czy Z. Zaczynam się zastanawiać czy to jest w ogóle mierzyć przyśpieszenie (ruch).
Ktoś może używał, może podpowie jak odczytać takiej wartości?
Bądź może ktoś zna lepsze sensory, które pozwolą mi odczytać takie wartości?

Z góry dzięki :)

Przykładowy kod:

Sensor: ADXL345
Driver Ver: 1
Unique ID: 12345
Max Value: -156.91 m/s^2
Min Value: 156.91 m/s^2
Resolution: 0.04 m/s^2
------------------------------------

Data Rate: 100 Hz
Range: +/- 2 g

X: 0.24 Y: -2.39 Z: 10.98 m/s^2
X: 0.20 Y: -2.31 Z: 10.98 m/s^2
X: 0.27 Y: -2.35 Z: 11.02 m/s^2
X: 0.24 Y: -2.35 Z: 10.98 m/s^2
X: -0.47 Y: -2.39 Z: 11.02 m/s^2
X: 0.39 Y: -2.47 Z: 10.83 m/s^2
X: 1.10 Y: -2.16 Z: 11.02 m/s^2
X: 0.43 Y: -2.55 Z: 10.98 m/s^2
X: -0.16 Y: -1.88 Z: 11.14 m/s^2
X: -1.73 Y: -2.63 Z: 10.83 m/s^2
X: 1.33 Y: -2.79 Z: 10.87 m/s^2
X: 0.63 Y: -2.31 Z: 11.06 m/s^2
X: 0.43 Y: -1.10 Z: 11.38 m/s^2
X: 0.55 Y: -3.26 Z: 10.83 m/s^2
X: 0.47 Y: -2.51 Z: 11.57 m/s^2
X: 0.12 Y: -2.47 Z: 12.04 m/s^2
X: 0.47 Y: -1.65 Z: 11.26 m/s^2
X: 0.16 Y: -0.94 Z: 10.83 m/s^2
X: 0.43 Y: -1.10 Z: 11.38 m/s^2
X: 0.55 Y: -3.26 Z: 10.83 m/s^2
X: 0.47 Y: -2.51 Z: 11.57 m/s^2
X: 0.12 Y: -2.47 Z: 12.04 m/s^2
X: 0.47 Y: -1.65 Z: 11.26 m/s^2
X: 0.16 Y: -0.94 Z: 10.83 m/s^2
X: 0.04 Y: -0.12 Z: 9.14 m/s^2
X: 0.12 Y: -2.04 Z: 11.14 m/s^2
X: 0.71 Y: -2.08 Z: 11.57 m/s^2
X: 0.27 Y: -2.16 Z: 10.28 m/s^2
X: 0.43 Y: -2.31 Z: 11.06 m/s^2
X: 0.27 Y: -2.28 Z: 11.02 m/s^2
X: 0.24 Y: -2.28 Z: 11.10 m/s^2

#mikrokontrolery #elektronika #esp8266 #arduino #nodemcu
  • 12
  • Odpowiedz
@MisiekD: brama to powolny stwór, zmień czułość na 1g ale tak poza tym masz przecież przyrost w X do 1.33m/s. Jak masz to aktywuj tryb filtru DC sensora żeby wyciąć z pomiaru komponentę stałą (grawitację ale też offset spowodowany różnicami między sztukami w produkcji).
PS. to tyczy się każdego akcelerometru, jak chcesz detali to ściągnij datasheet i programmers manual do swojego.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@MisiekD: brama to powolny stwór, zmień czułość na 1g ale tak poza tym masz przecież przyrost w X do 1.33m/s. Jak masz to aktywuj tryb filtru DC sensora żeby wyciąć z pomiaru komponentę stałą (grawitację ale też offset spowodowany różnicami między sztukami w produkcji).

PS. to tyczy się każdego akcelerometru, jak chcesz detali to ściągnij datasheet i programmers manual do swojego.

@keton22: tylko, że ja tym ruszam mega szybko :/
  • Odpowiedz
@MisiekD: ale masz czułość 2g więc najmniejszy tick który jest rejestrowany jest większy niż przy 1g, do tego akcelerometr mierzy w g nie w m/s więc ja bym spróbował dorawć surowe pomiary z rejestrów nie przemielone przez bibliotekę, zakładam że nie twoją więc nie masz pewności czy działa. Ale z drugiej strony przyspieszenie ziemskie mierzy poprawnie. Jak go przekręcisz żeby grawitacja była w osi x a potem y to widać czy
  • Odpowiedz
@MisiekD: Akcelerometr, jak nazwa wskazuje mierzy przyspieszenie. Brama najprawdopodobniej przyspiesza przez krótka chwile a później porusza się ruchem jednostajnym, tego akcelerometr nie wychwyci. Gdyby udało ci się ten moduł jakoś odchylić w którejś osi na czas przesuwania bramy sprawa byłaby o wielce prostsza.
Generalnie te moduły używa się bardziej jako poziomice niż realne akcelerometry ze względu na rozdzielczość czasową pomiaru.
Jeśli chodzi o twoje zastosowanie to już łatwiej byłoby zamontować dwa
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@MisiekD: Akcelerometr, jak nazwa wskazuje mierzy przyspieszenie. Brama najprawdopodobniej przyspiesza przez krótka chwile a później porusza się ruchem jednostajnym, tego akcelerometr nie wychwyci. Gdyby udało ci się ten moduł jakoś odchylić w którejś osi na czas przesuwania bramy sprawa byłaby o wielce prostsza.

Generalnie te moduły używa się bardziej jako poziomice niż realne akcelerometry ze względu na rozdzielczość czasową pomiaru.

Jeśli chodzi o twoje zastosowanie to już łatwiej byłoby zamontować dwa
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@MisiekD: A może czujnik odległości który by sprawdzał zmianę odległości a więc przez to znałbyś kierunek i prędkość?

@echelon_: ale to brama skrzydłowa, więc musiałby też ten czujnik się poruszać i mierzyć odbicie :/ No i pytanie jak z temperaturami - czy wytrzyma zimę, nie przeszkodzi mu śnieg, itd.
  • Odpowiedz
@MisiekD: największa częstotliwość pomiaru to 3200 Hz. Może nawet jest szansa żeby moment przyspieszania bramy wyłapać. Przy I2C 400kHz powinieneś być w stanie odczytać każda nową próbkę pomiaru bez konieczności używania wbudowanego FIFO.
Skoro brama jest skrzydłowa to może jakiś enkoder udało by się tam zamontować? Jakoś nie wydaje żeby akcelerometr był miarodajnym rozwiązaniem. Szczególnie, ze ten moduł opiera się o przetwornik ADC a żeby to było precyzyjne to trzeba zadbać
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@MisiekD: największa częstotliwość pomiaru to 3200 Hz. Może nawet jest szansa żeby moment przyspieszania bramy wyłapać. Przy I2C 400kHz powinieneś być w stanie odczytać każda nową próbkę pomiaru bez konieczności używania wbudowanego FIFO.

Skoro brama jest skrzydłowa to może jakiś enkoder udało by się tam zamontować? Jakoś nie wydaje żeby akcelerometr był miarodajnym rozwiązaniem. Szczególnie, ze ten moduł opiera się o przetwornik ADC a żeby to było precyzyjne to trzeba zadbać
  • Odpowiedz
@MisiekD: https://botland.com.pl/enkodery/4483-czujnik-obrotu-impulsator-enkoder-z-przyciskiem-modul-waveshare-9533.html

Ten środkowy czpień przy obracaniu generuje impulsy które możesz liczyć. Wydaje mi się ze można z niego tez odczytać kierunek obrotu.
Zamontuj to tak żeby było mniej więcej w środku osi obrotu bramy i przyklej do tego obrotowego elementu jakieś pół-sztywne skrzydlo które połączysz z brama które będzie ją obracało przy jej ruchu. Powinno działać o wiele lepiej niż akcelerometr bo będziesz nawet wiedział czy brama się zamyka do
  • Odpowiedz