
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03


W tym prostym projekcie użyjemy czujnika ruchu, aby wykryć, czy obiekt przechodzi przed naszym Raspberry Pi. Następnie policzymy, ile razy to się zdarzy, i wyślemy tę wartość do Ubidots.
Liczniki osób są zazwyczaj drogimi urządzeniami używanymi w branży detalicznej, aby zrozumieć, jak zachowują się kupujący. Dzięki Raspberry Pi i Ubidots jesteśmy w stanie zbudować funkcjonalny licznik ludzi w kilka godzin i za kilka dolarów!
Po przesłaniu danych zliczających osoby do Ubidots, możemy tworzyć ładne wykresy do analizy, a także alerty SMS/e-mail.
Krok 1: Zdobycie odpowiednich materiałów


Aby ukończyć ten projekt, potrzebujesz:
- Raspberry Pi Model B
- Czujnik PIR firmy Parallax
- Klucz USB WiFi zgodny z Raspberry Pi
- Zestaw baterii USB do zasilania Raspberry Pi (jest to opcjonalne w przypadku, gdy chcesz pozostawić Pi całkowicie bezprzewodowe)
- Trzy przewody połączeniowe żeńsko-żeńskie
- Konto Ubidots - lub - Licencja STEM
Krok 2: Podłączanie rzeczy


Czujnik ruchu PIR jest dość prosty w obsłudze, ponieważ ma tylko trzy piny:
- V+
- GND
- Pin sygnałowy, który wyprowadza „1”, gdy jest ruch i „0”, gdy nie ma.
Nie ma potrzeby lutowania czegokolwiek ani pisania skomplikowanych funkcji I2C lub szeregowych do wykrywania tego sygnału; po prostu podłącz kable bezpośrednio do pinów GPIO swojego Raspberry Pi i zadziała!
Krok 3: Obudowa


Ponieważ czujnik PIR jest bardzo czuły na ruch, użyłem przełącznika znajdującego się za nim, aby ustawić jak najniższą czułość. Wziąłem też stare etui z okularów przeciwsłonecznych i zrobiłem w nim dziurę, a następnie umieściłem w nim czujnik RPi i PIR. W ten sposób czujnik ruchu jest silnie skupiony w jednym punkcie, zamiast być tak wielokierunkowym.
Krok 4: Kodowanie RPi
W tym momencie założymy, że wykonałeś podstawową konfigurację swojego Raspberry Pi i patrzysz na jego wiersz poleceń Linuksa. Jeśli nie, zalecamy najpierw zapoznać się z tym przewodnikiem. Możesz również sprawdzić ten post na temat używania Wicd do konfiguracji WiFi swojego Raspberry Pi.
Zacznijmy od upewnienia się, że mamy wszystkie wymagane biblioteki:
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install python-setuptools $ sudo easy_install pip $ pip zainstaluj ubidots
Utwórz nowy plik o nazwie „peoplecounter.py”:
$ sudo nano peoplecounter.py
I napisz do niego poniższy kod. Pamiętaj, aby zastąpić wartości klucza API i identyfikatora zmiennej tymi z Twojego osobistego konta Ubidots. (Uwaga: kod nie jest zbyt elegancki, ale hej, nie jestem programistą w Pythonie, tylko facetem od sprzętu:)
Skrypt składa się z pętli, która sprawdza stan pinu nr 7 (czujnika ruchu). Jeśli odczyta „1”, co oznacza, że był ruch, zwiększa zmienną „liczba osób” i czeka 1,5 sekundy, aby czujnik ruchu wrócił do normy. Odbywa się to 10 razy, upewniając się, że między każdym cyklem jest co najmniej 1 sekunda, a następnie wysyła całkowitą sumę „ruchów” do Ubidots. Jeśli potrzebujesz skalibrować licznik osób, powinieneś pobawić się liniami "time.sleep" z innymi wartościami.
z ubidots importuj ApiClient
importuj RPi. GPIO jako GPIO
czas importu
GPIO.setmode(GPIO. BCM)
GPIO.setup(7, GPIO. IN)
próbować:
api =ApiClient("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")
ludzie = api.get_variable("5238cec3f91b282c7357a140")
z wyjątkiem: print "Nie można połączyć się z API, sprawdź połączenie internetowe"
licznik = 0
ludziev = 0
podczas (1):
obecność = GPIO.input(7)
jeśli (obecność):
liczba osób += 1
obecność = 0
czas.sen(1.5)
czas.sen(1)
licznik += 1
jeśli(licznik==10):
drukuj liczbę osób
people.save_value({'value':liczba osób})
licznik = 0
ludziev = 0
Krok 5: Wyświetl swoje dane




Na koniec przejdź do pulpitu nawigacyjnego Ubidots i dodaj widżet typu „Oświadczenie”. Spowoduje to wyświetlenie całkowitej liczby osób wykrytych w określonym przedziale czasowym
Krok 6: Podsumowanie

Ten projekt daje wskazówkę, ile osób przechodzi przez dany punkt. Nie podaje dokładnej liczby osób, biorąc pod uwagę ograniczenia czujnika ruchu, ale w niektórych aplikacjach może to wystarczyć.
Zebrane dane można łatwo przesłać do chmury Ubidots, gdzie można je zinterpretować, tworząc alerty, pulpity na żywo, a nawet udostępniając te dane w mediach społecznościowych, jako kod do osadzenia lub po prostu w publicznym linku. Możesz również odczytać te dane z innej aplikacji za pomocą interfejsu API Ubidots.
Zalecana:
Jak zbudować inteligentne lustro za pomocą Raspberry Pi 4: 10 kroków?

Jak zbudować inteligentne lusterko za pomocą Raspberry Pi 4: W tym przewodniku zobaczymy, jak zbudować inteligentne lusterko z elementów pochodzących z recyklingu, takich jak ramka na zdjęcia, stary monitor i szyba do zdjęć. Elementy elektroniczne, które kupiłem tutaj www.lcsc .com
Jak zbudować stację pogodową za pomocą XinaBox i Ubidots przez HTTP: 7 kroków

Jak zbudować stację pogodową za pomocą XinaBox i Ubidots przez HTTP: Dowiedz się, jak stworzyć własną stację pogodową w Ubidots, używając XinaBox xChips (IP01, CW01 i SW01) Moduł ESP8266 Core i Wi-Fi (xChip CW01) umożliwia użytkownikom wysyłanie dane z modułowych xChips XinaBox do chmury. Dane te mogą być monitorowane zdalnie
Jak zbudować stronę internetową na Raspberry Pi za pomocą Node.js, Express i MongoDB Część 1: 6 kroków

Jak zbudować stronę internetową na Raspberry Pi, z Node.js, Express i MongoDB…Część 1: Witamy w CZĘŚCI 1 mojego samouczka aplikacji internetowej node.js. W części 1 omówimy niezbędne oprogramowanie używane do tworzenia aplikacji node.js, jak korzystać z przekierowania portów, jak zbudować aplikację za pomocą Express i jak ją uruchomić. Druga część tego
Jak zrobić licznik za pomocą Microbit?: 9 kroków

Jak zrobić ladę z Microbitem?: Kiedy wsiadamy do samolotu, często spotykamy się z taką sytuacją: piękna stewardesa niosąca małe srebrne pudełeczko naciska je, przelatując obok. Ona mruczy: 1,2,3,4,5,6… Musisz się domyślić - liczy całkowitą liczbę
Jak zbudować zestaw głośników gitarowych lub zbudować dwa do swojego zestawu stereo.: 17 kroków (ze zdjęciami)

Jak zbudować zestaw głośników gitarowych lub zbudować dwa do swojego zestawu stereo.: Chciałem, aby nowy głośnik gitarowy pasował do wzmacniacza lampowego, który buduję. Głośnik pozostanie w moim sklepie, więc nie musi być niczym wyjątkowym. Pokrycie z Tolexu może być zbyt łatwo uszkodzone, więc po prostu spryskałem zewnętrzną czerń po lekkim piasku