Pytanie:
Czy akcelerometry wiedzą, kiedy poruszają się prosto w górę lub prosto w dół?
TheDudeAbides
2015-02-09 21:50:25 UTC
view on stackexchange narkive permalink

Potrzebuję czujnika, który mogę umieścić tylko na wierzchu obiektu, aby policzyć, ile razy obiekt porusza się w górę iw dół.

Czy umieszczenie akcelerometru na górze obiektu mogłoby to osiągnąć, czy może on śledzić przejście między ruchem w górę iw dół?

Jeśli nie, jaki typ czujnika (ów) by to osiągnął?

---------------- EDYCJA: -------------------------

Najlepiej, jeśli chciałbym mieć czujnik, który mogę ustawić na górze pudełka opisanego poniżej i policzyć jego ruchy w górę iw dół. Posiada wiele prowadnic, które zapobiegają skręcaniu. Planuję używać arduino jako mikrokontrolera, który wykonuje obliczenia, wystarczy czujnik zdolny do wykrywania ruchu w górę / w dół. Wszystkie sugestie mile widziane. dzięki.

  + + + + + + ------------ | pudełko | | porusza się w górę || i w dół | ------------ + + + +  
Akcelerometr mierzy zmiany prędkości obiektu.Gdyby obiekt poruszał się ze stałą prędkością, akcelerometr wskazywałby zerową moc wyjściową.Im szybsza zmiana prędkości, tym większy pomiar akcelerometru pokaże w tym czasie.
Tak więc w oparciu o mój powyższy komentarz, akcelerometr może być użyty do pomiaru, kiedy obiekt zaczyna się poruszać z pozycji spoczynkowej lub kiedy zmienia kierunek.Samo urządzenie jest tylko czujnikiem i nie ma żadnego „wiedzieć”.Musisz podłączyć jakiś inny obwód lub mikrokontroler, który będzie notował wyjścia akcelerometru i liczył zmiany, aby „wiedzieć”, kiedy obiekt zmienia położenie.
Musisz podać więcej informacji o tym, co robi obiekt.Jeśli jest w stałym miejscu i porusza się w górę iw dół między dwoma pozycjami, jest to możliwe, ale prawdopodobnie byłyby łatwiejsze sposoby.
Tak, jest to stała pozycja, która porusza się tylko w górę iw dół.Jakie masz sugestie dotyczące łatwiejszego sposobu?
Myślę, że zasugerowanie lepszego sposobu wymagałoby większej wiedzy o aplikacji.Istnieje niezliczona liczba sposobów mierzenia ruchu i pozycji - ten, który działa najlepiej, zależy całkowicie od * tego, co * się porusza, * jak * się porusza, * gdzie * się znajduje (i co jest wokół niego), jakie źródła mocysą dostępne lub wygodne, jak dokładne musi być rozwiązanie, ile hałasu musi odrzucić, jak niezawodne musi być itp. Jeśli możesz podać więcej szczegółów na temat aplikacji, prawdopodobnie uzyskasz lepsze odpowiedzi.
Mam nadzieję, że diagram, który dodałem jako edycja, pomoże wyjaśnić, czego szukam lub.Wszystkie sugestie mile widziane i podziękowania lub dotychczasowe odpowiedzi.
Ten rodzaj diagramu pomaga.Ale odpowiedź nadal zależy od rzeczy, o których nie wspomniałeś.Na przykład sterowanie windą nie opiera się na akcelerometrach, ale wie, gdzie jest winda.Na każdym piętrze jest przełącznik, który uruchamia winda.
Dokładnie - jak duże jest pudełko, jak szybko porusza się w górę iw dół (i jak często?).Czy jego długość podróży jest różna, czy zawsze jest stała.Co jest zdarzeniem, które chciałbyś policzyć - jeśli wzrośnie o 0,5 mm w 100 ms, następnie w dół o 2 mm w 10 min, a następnie w górę o 15 cm w 1 s, a następnie zaczekaj i powoli opadnie w dół następnego dnia ... co liczy się jako „w górę i w dół?Wystarczy czujnik fotograficzny lub zwykły kontaktron.
Tylko z ciekawości, co sprawia, że pudełko porusza się w górę iw dół?(Mam na myśli, dlaczego nie możesz wykryć ruchu pośrednio, patrząc na elementy sterujące?)
Czy pudełko jest podnoszone i opuszczane przez maszynę czy osobę?
Czujnik wykrywający kierunek ruchu można skonstruować poprzez przymocowanie magnesu do pudełka, które następnie porusza się przez cewkę.Wynikowe napięcie na cewce jest proporcjonalne do prędkości magnesu, więc napięcie zmieni znaki, gdy prędkość się zmieni.
@MichaelKaras - Przepraszamy, ale charakterystyka akcelerometru jest nieprawidłowa.Akcelerometr utrzymywany nieruchomo w polu grawitacyjnym 1 g (jeśli oś czuła jest pionowa) zgłosi, że przyspiesza w pionie z prędkością ~ 9,8 m / s ^ 2.W istocie jest to pierwszy postulat ogólnej teorii względności.
Dziesięć odpowiedzi:
tomnexus
2015-02-09 22:13:48 UTC
view on stackexchange narkive permalink

Myślę, że akcelerometr i arduino to świetny sposób, aby policzyć, ile razy pudełko porusza się w górę iw dół. To kompaktowy, niezawodny, bezkontaktowy sposób wykrywania ruchu.

Może działać w przypadku ruchu tak delikatnego, jak unoszenie się i opadanie klatki piersiowej, podczas oddychania, leżenia, a na pewno w przypadku każdego szybszego.

Prosty detektor progu z pewną histerezą może ci ujść na sucho - policz jeden, gdy przyspieszenie przekroczy + x, następnie ustaw próg na -x, aż przekroczy -x, a następnie ustaw próg na + x.

Jeśli przyspieszenie jest łagodniejsze lub występują wibracje w tle, których nie chcesz liczyć (nawet jeśli w rzeczywistości jest to ruch w górę iw dół), sygnał może zostać utracony w szumie. Wtedy będziesz musiał zaimplementować prosty filtr cyfrowy na arduino, który w efekcie „wyszukuje” ruch w określonym tempie. Może to być proste, jak po prostu zsumowanie ostatnich 100 próbek przyspieszenia (przy 100 Hz) i przepuszczenie średniej przez detektor progu lub możesz zaprojektować bardziej złożony filtr.

Jeśli planujesz używaj akcelerometru do wszystkiego, najpierw wypróbuj go na smartfonie.

Poszukaj w sklepie z aplikacjami aplikacji do monitorowania akcelerometru, czegoś, co rejestruje czujnik w pliku, i przeprowadź kilka eksperymentów. Jeśli tworzy plik CSV, możesz go otworzyć w programie Excel i wykreślić wykresy itp.

Akcelerometr w telefonie jest dość prosty i głośny, ale jest dobrym zamiennikiem każdego innego akcelerometru poniżej 100 USD i może dać przybliżone wyobrażenie o tym, co może zrobić osoba o wartości 1000 USD.

Oto przykład tego, co zrobiłem z czujnikiem telefonu.

Dobrze szczęście! Opublikuj swoje wyniki tutaj (odpowiedz na własne pytanie), jeśli Ci się uda.

Pete Becker
2015-02-09 22:14:00 UTC
view on stackexchange narkive permalink

Ogólnie nie. Wyobraź sobie, że rzucasz piłkę prosto w górę (zignoruj ​​opór wiatru): kiedy się porusza, jedyną siłą działającą na nią jest grawitacja, która wytwarza stałe przyspieszenie. Nie ma sposobu, aby stwierdzić na podstawie samego przyspieszenia, kiedy piłka osiągnęła najwyższą wysokość i ruszyła z powrotem w dół - przyspieszenie jest takie samo na całej swojej drodze, aż uderzy w ziemię.

Jeśli wiesz, że przedmiot startuje w spoczynku, a ty mierzysz jego przyspieszenie, możesz obliczyć jego prędkość całkując przyspieszenie w czasie. Jeśli zwolni, zobaczysz ujemne przyspieszenie, a całka spadnie do zera, gdy się zatrzyma. Następnie, gdy znów zacznie się poruszać, zobaczysz zmianę przyspieszenia i możesz zacząć całkowanie od nowa. Zależy to jednak w dużym stopniu od dokładności pomiarów i obliczeń. Jeśli któryś z nich jest trochę wyłączony, błąd będzie stopniowo narastał, aż nie będziesz już wiedział, co się naprawdę dzieje.

Nie tylko dokładność - rzeczywisty IMU musi zawsze znać swoją orientację obrotową, aby zastosować pomiary przyspieszenia.
@ChrisStratton - tego nie powiedziałem, ale zakładałem ruch po linii prostej.Czy twój komentarz jest nadal poprawny w tej nierealistycznie ograniczonej sytuacji?
Po prostu przy 9,8 m / s do obserwowanego przyspieszenia.
@LorenPechtel: To i tak jest konieczne, ale nie rozwiązuje problemu z integracją.Wyobraź sobie, że skrzynia podnosi się, zwalnia prawie do zatrzymania i znów przyspiesza.Teraz wyobraź sobie drugie pudełko, które zwalnia nieco bardziej, więc na chwilę opada, zanim ponownie się podniesie.Różnica może być minimalna, ale licznik góra / dół musi się różnić.Jeśli Twoja integracja jest nieznacznie wyłączona, nie zauważysz różnicy.
Czy akcelerometr nie mierzyłby zera dla obiektu spadającego swobodnie?To naprawdę bardziej pomiar siły G, prawda?
@Octopus - tak, myślę, że masz rację.Znam fizykę;Nie znam urządzenia.
Dave Branton
2015-02-10 05:42:31 UTC
view on stackexchange narkive permalink

Po pierwsze, ważne jest, aby zrozumieć, jak akcelerometr zachowuje się w polu grawitacyjnym, jakiego doświadczamy na Ziemi. Akcelerometr nie mierzy przyspieszenia w tym sensie, że nie mierzy samej zmiany prędkości. Mierzy zmianę prędkości plus grawitację - co oznacza, że ​​musisz wziąć pomiar grawitacji, jeśli planujesz spróbować tego, co zarysujesz.

Ponadto grawitacja będzie mierzona jako w górę przyspieszenie - co jest nieco sprzeczne z intuicją, ale ma sens, jeśli wyobrażasz sobie, że akcelerometr jest budowany w ten sposób:

schematic

symulować ten obwód - Schemat utworzony za pomocą CircuitLab

Nadużyłem edytora schematów, aby pokazać łożysko kulkowe zawieszone w rurze za pomocą dwóch doskonale tłumionych sprężyn . Wyobraź sobie, że akcelerometr dokonuje pomiaru, informując Cię, jak daleko od pozycji spoczynkowej znajduje się obecnie łożysko kulkowe. Teraz wyobraź sobie, że obracasz to urządzenie na końcu i możesz zobaczyć, jak łożysko kulkowe zapada się pod wpływem grawitacji i jak jest to nie do odróżnienia od przyspieszenia. Myślę, że teoria względności ma coś do powiedzenia na ten temat, ale i tak.

A więc - jeśli masz akcelerometr pionowy i usuwasz efekt grawitacji, a ruchy twojego urządzenia są wystarczająco większe niż hałas podłogę akcelerometru, a ponadto ruchy są wystarczająco płynne, aby nie mylić algorytmu - wtedy może się to udać. Powyżej jest odpowiedź, która wspomina o swobodnym spadaniu, co byłoby problemem, ale z twojego opisu zakładam, że twoje urządzenie nie będzie spadać swobodnie przez dłuższy czas. To jest jednak przypuszczenie.

Jeśli naprawdę chcesz użyć akcelerometru, najlepszym podejściem do takiego problemu jest jakoś zarejestrowanie danych wyjściowych akcelerometru (wolę wyprowadzić je przez SPI i nagrać za pomocą analizatora logicznego USB) i zapisać dokładnie to, co masz zrób to (lub nawet nagrywaj, jeśli naprawdę chcesz). Wtedy możesz bawić się algorytmami offline, bez ciągłego zastanawiania się, czy Twoje Arduino naprawdę robi to, co myślisz.

Jak wspominali inni, inne typy czujników mogą być bardziej odpowiednie. Potrzebowalibyśmy więcej szczegółów na temat tego, dlaczego próbujesz to, co myślę, skomentować.

To nie jest tylko dziwactwo akcelerometru - obiekt znajdujący się w jednolitym polu grawitacyjnym jest nie do odróżnienia od tego, który jest równomiernie przyspieszany.W pewnym sensie akcelerometr ma rację, gdy mówi, że obiekt siedzący na ziemi przyspiesza;po prostu uważamy, że nie dzieje się tak, ponieważ przyspieszamy w tym samym tempie.
Tak - zdaję sobie z tego sprawę.Akcelerometr jest tak dokładny, jak to tylko możliwe - ale jest dość sprzeczne z intuicją, że nieruchomy pionowy akcelerometr w polu grawitacyjnym mierzy przyspieszenie _ w górę_.
Myślę, że to lepsze wyjaśnienie: wyobraź sobie człowieka na wadze w windzie.Skala pokazuje siłę, jaką wywiera na człowieka (podzieloną przez g).Po pierwsze, wyświetla rzeczywistą wagę, ale kiedy winda zaczyna się poruszać w górę, wyświetla wyższą wagę.Nawet mężczyzna czuje, że jest cięższy.Również akcelerometr mierzy tylko siłę, którą przykłada do małej masy.
Peter Bennett
2015-02-09 23:09:26 UTC
view on stackexchange narkive permalink

Jeśli obiekt porusza się w górę iw dół po stałych prowadnicach, myślę, że najłatwiejszym sposobem policzenia jego ruchów byłoby użycie wyłącznika krańcowego, który byłby zamknięty, gdy obiekt był w spoczynku, a otwarty, gdy znajdował się z dala od pozycji spoczynkowej.

Loren Pechtel
2015-02-10 10:40:47 UTC
view on stackexchange narkive permalink

Ostrożnie, odwrócenie przyspieszenia nie oznacza, że ​​pudełko się odwróciło. Pudełko się uruchamia - widzisz przyspieszenie w górę. Teraz porusza się w górę w stałym tempie - nie widać przyspieszenia. Zwalnia do połowy prędkości - widać przyspieszenie w dół. Kontynuuje z połową prędkości - nie widać przyspieszenia. Przyspiesza powrót - widać przyspieszenie w górę. Zatrzymuje się, widzisz przyspieszenie w dół.

Widziałeś w górę, w dół, w górę, w dół, ale tak naprawdę pudełko przesunęło się tylko w górę. Z czasem będziesz musiał przeprowadzić całkowanie i mieć wystarczającą dokładność w akcelerometrze, aby dowiedzieć się, jak naprawdę idziesz - uważaj na skumulowany błąd, może to bardzo utrudnić ten problem!

dalmierz laserowy do pomiaru, gdzie znajduje się pudełko?

Rzeczywiście, musisz całkować dwa razy w czasie - raz, aby uzyskać prędkość i raz, aby uzyskać odległość - co będzie obfitowało w skumulowany błąd.
Eugene Sh.
2015-02-09 21:55:02 UTC
view on stackexchange narkive permalink

Akcelerometry mierzą przyspieszenia. Jeśli ruch jest wykonywany z przyspieszeniem, zostanie wykryty, biorąc pod uwagę, że akcelerometr jest wystarczająco czuły na tej osi. Kierunek przyspieszenia będzie wskazywany przez znak odczytanych wartości. Należy pamiętać, że podczas pomiaru przyspieszeń na osi pionowej pomiar będzie obciążony stałą przyspieszenia ziemskiego g .

„Jeśli ruch jest wykonywany z przyspieszeniem” Obiekt początkowo jest w spoczynku.Nie mógł wejść w stan ruchu bez przyspieszenia.
Tak, ale pytanie brzmi, na jakich etapach ruch ma zostać wykryty.
abligh
2015-02-10 03:56:30 UTC
view on stackexchange narkive permalink

Jeśli nie chcesz fizycznego kontaktu (takiego jak zapewniany przez typowy wyłącznik krańcowy lub mikroprzełącznik), możesz zamontować magnes i użyć kontaktronu lub przełącznika efektu Halla. Lub zamontuj coś, co lekko odstaje i jest nieprzezroczyste, i przechodzi przez detektor optyczny (taki z małą szczeliną).

Akcelerometr jest skomplikowany, droższy niż którykolwiek z powyższych, a dla powód wymownie wyjaśniony przez Pete'a Beckera (a teraz także przez Dave'a Brantona) jest mało prawdopodobny.

Warto zauważyć, że sytuacja, którą opisuje @TheDudeAbides, przypomina nieco krokomierz.
@user3334690 Podejrzewam, że ograniczony stopień dokładności krokomierzy wynika po części z przewidywalnej natury ludzkiego kroku.Gdybyśmy mogli zaaranżować przymocowanie magnesów do każdej powierzchni podłogi, podejrzewam, że moglibyśmy zwiększyć ich dokładność za pomocą przełączników efektu Halla :-)
user1183325
2015-02-10 09:28:50 UTC
view on stackexchange narkive permalink

Wiele świetnych informacji tutaj, ale nie widziałem nikogo, kto sugeruje potencjometr liniowy ...

Prosto, przyłóż napięcie i policz, ile razy odczytuje GPIO a HI. Najtańsza doniczka liniowa? Suwak głośności ze starego radia, regulacja trymu za pomocą kontrolerów zabawkowych R / C itp.

Czy sugerujesz mechaniczne połączenia między obiektem, garnkiem i stacjonarną podstawą?Czy to nie wprowadziłoby nowych sił i oporów.
Dean Turner
2015-02-10 19:30:53 UTC
view on stackexchange narkive permalink

Jeśli chodzi o następujące szyny, co z użyciem dalmierza ultradźwiękowego? Arduino może wykonać obliczenia matematyczne, aby określić przyspieszenie, a implementacja będzie o wiele prostsza niż podłączenie przewodów do czegoś, co się rusza. To z pewnością zadziała najlepiej, jeśli tor jest prosty. Tutaj jest jeden. https://www.sparkfun.com/products/639

Witamy w serwisie electronics.stack exchange!Mam nadzieję, że poczujesz się tu jak w domu!
Guill
2015-02-13 12:59:24 UTC
view on stackexchange narkive permalink

Zalecałbym użycie dwóch cienkich metalowych płytek do utworzenia kondensatora. Jedna płyta była umieszczana na górze pudełka, a druga mocowana na pewnej wysokości od pudełka. Gdy pudełko porusza się w górę iw dół, pojemność (C) będzie się zmieniać ze względu na zmianę separacji (d) płytek (C = kA / d). Zmianę tę można „przekształcić” za pomocą odpowiednich środków w zmianę napięcia, częstotliwości itp., A następnie na postać odpowiednią dla interfejsu arduino (może być konieczne wzmocnienie).

To nie zadziała.1: Chociaż nie mamy żadnych wymiarów, pobaw się trochę liczbami, a zobaczysz, że zakres dynamiki jest duży, a pojemność może być bardzo mała.2 .: Jeśli układ jest wykonany z metalu, każda z twoich płyt tworzy kondensator z konfiguracją.To znaczy.masz dwie nasadki połączone szeregowo z różną długością kabla między nimi.Pojemność będzie mniej więcej stała.Są czujniki pojemnościowe, ale ich zasada jest inna i mogą mierzyć różnice nie większe niż 1 cm.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...