Spisu treści:
- Krok 1: Części
- Krok 2: Podłącz wszystko do góry
- Krok 3: Skonfigurujmy Twoje Raspberry Pi
- Krok 4: Zacznijmy kodować
Wideo: Pike - jedź bezpieczniej, jedź mądrzej, jedź szczupakiem!: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Witam w moim projekcie o nazwie Pike!
To projekt w ramach mojej edukacji. Jestem studentem NMCT w Howest w Belgii. Celem było stworzenie czegoś inteligentnego za pomocą Raspberry Pi. Mieliśmy pełną swobodę, w której chcieliśmy być mądrzy.
Dla mnie było to łatwe, aby mój rower był nieco mądrzejszy. Mieszkam w miejscu, w którym jazda na rowerze szybciej dociera do celu w mieście.
Raz też upadłem z rowerem. Złamałem łokieć. Upadłem, bo wskazywałem na kierowcę za mną, że chcę jechać w prawo. Droga była śliska i straciłem kontrolę, ponieważ trzymałem tylko jedną rękę na kierownicy. Dlatego moim pierwszym pomysłem było przymocowanie do roweru kierunkowskazów. Od tego momentu zacząłem zastanawiać się, co jeszcze mógłbym dodać, więc wymyśliłem śledzenie GPS, abyś mógł później zobaczyć, którą trasą pojechałeś.
Co więc może zrobić szczupak?
Pike będzie rejestrować Twoje sesje jazdy. Będzie śledzić, którą przebyłeś trasę, obliczy Twoją średnią prędkość i przebytą odległość. Po każdej sesji możesz zalogować się na stronie, aby sprawdzić, gdzie i jak przebiegała Twoja jazda. Stworzymy również coś, abyś mógł wybrać, kto będzie jeździł na rowerze, aby więcej osób mogło korzystać z Twojego szczupaka, jeśli zechce!
Krok 1: Części
Więc oczywiście musisz wiedzieć, czego potrzebujesz, aby odtworzyć mój projekt. Zanim zaczniemy, chciałbym powiedzieć, że ten projekt nie był do końca tani. Kupiłem też przewody w lokalnym sklepie, które były za drogie. Możesz je kupić online za kilka euro/dolarów (co polecam). Nie miałem czasu czekać. Dlatego kupiłem je w moim lokalnym sklepie po wysokiej cenie.
Lista zakupów
- Malina Pi
- Kable rozruchowe
- Powerbank any będzie działał tak długo, jak długo zapewni Twojemu Pi wystarczającą moc
- Uchwyt do smartfona Maxxter (w zasadzie najtańszy, jaki można znaleźć…)
- Uchwyt do smartfona Maxxter (białe okrągłe, również bardzo tanie, pasują do moich plastikowych rurek)
- Plastikowe rurki (wywiercony w nich otwór na przyciski pasujące do uchwytu na smartfona do zamocowania na kierownicy)
- Guziki*
- rezystory 6x 220 Ω
- 1x rezystor 5K Ω
- Wyświetlacz LCD
- Jednoprzewodowy czujnik temperatury DS18B20
- Moduł GPS Adafruit Ultimate Breakout 66 Channel
- Antena GPS - Zewnętrzna antena aktywna - 3-5V 28db z 5-metrowym kablem SMA (do wzmocnienia sygnału GPS)
- Adapter uFLto SMA (do podłączenia dodatkowej anteny do modułu GPS Adafruit)
Uwagi:
* Te, które zobaczysz na zdjęciach to metalowe, może nie te idealne, ale takie, które mieli w moim lokalnym sklepie. Możesz iść w pełni wodoodpornymi guzikami, ale były to 15 € za sztukę, co moim zdaniem było zbyt drogie jak na guzik. Możesz kupić dowolny przycisk, o ile działa on z systemem podciągania, wszystko będzie w porządku.
Krok 2: Podłącz wszystko do góry
To nie takie trudne. Ponieważ moduł GPS jest podłączony przez USB. Na powyższym obrazku widać, że możesz dopasować kolory do kabli na adapterze USB. Przyciski i diody LED są podłączone do 220 Ω. Czujnik temperatury DS18B20 jest podłączony do rezystora 5K Ω.
Krok 3: Skonfigurujmy Twoje Raspberry Pi
Najpierw potrzebujesz Raspbiana, którego możesz się nauczyć tutaj, a następnie musisz wykonać kroki w tym repozytorium.
Mój harmonogram bazy danych jest minimalny. Zawiera 4 tabele:
-
tbluser
- ID użytkownika (tinyint, 2) AUTOMATYCZNE WZROST, NIE PODPISANE
- Nazwa użytkownika (varchar, 175)
- Login użytkownika (varchar, 180)
- Hasło użytkownika (varchar, 255)
- UserActive (tinyint, 1) UNSIGNED
-
sesja tbl
- SessionID (int, 10) AUTO INCREMENT, UNSIGNED
- SesjaData (data)
- Identyfikator użytkownika
-
tblsensor
- SensorID (tinyint, 3) AUTO INCREMENT, UNSIGNED
- NazwaCzujnika (varchar, 150)
- tblhistoria
- HistoryID (bigint, 20) AUTOMATYCZNE WZROST, NIE PODPISANE
- ID czujnika
- Identyfikator sesji
- HistoryValue (varchar, 255)
- HistoryTime (czas, 3)
Ale możesz też spojrzeć na plik zrzutu.sql
Krok 4: Zacznijmy kodować
Tutaj znajdziesz mój kod, dzięki któremu projekt będzie działał.
GPS
Rozpoczęcie korzystania z modułu GPS jest naprawdę proste. Wszystko, co musisz zrobić, to zainstalować pakiet gpsd-py3 w swoim środowisku Pythona. Następnie możesz użyć tej biblioteki, aby ułatwić sobie życie. Możesz użyć przykładów kodowania, aby uzyskać dane, takie jak długość geograficzna, szerokość geograficzna, prędkość itp. Z GPS.
Wyświetlacz LCD
Aby wyświetlacz LCD działał, musisz zainstalować bibliotekę firmy Adafruit. Przykłady kodowania można znaleźć tutaj.
DS18B20 Jednoprzewodowy czujnik temperatury
Aby znaleźć czujnik z jednym przewodem, będziesz musiał wykonać trochę więcej pracy. Przede wszystkim musimy aktywować magistralę one wire. Aby to zrobić, wykonaj następujące czynności:
- sudo raspi-config
- Opcje interfejsu
- 1-przewodowy
Aby rozpocząć odczytywanie danych z czujnika, musimy wiedzieć, jak nazywa się nasz jeden przewód. Do tego typu w cd /sys/bus/w1/devices/
Zobaczysz dwa urządzenia, jedno to samo Raspberry Pi, a drugie powinno wyglądać mniej więcej 28-0… itd. Cóż, ten długi ciąg cyfr i liter umożliwia odczytywanie danych w Pythonie. Aby odczytać dane w Pythonie, musisz otworzyć je jako plik. Ścieżka do otwarcia pliku powinna wyglądać mniej więcej tak: /sys/bus/w1/devices/28-04177032d4ff/w1_slave.
Przyciski i diody LED
To są podstawowe funkcje, możesz spojrzeć na mój kod w tym folderze Zajęcia.
Instrukcje SQL
Prawie każda instrukcja to podstawowe instrukcje SQL. Chciałbym jednak nieco wyjaśnić, w jaki sposób zapisałem moje czujniki ich wartości. Ręcznie dodałem moje czujniki do moich tblsensorów. Wiedziałem więc, który czujnik ma jaki identyfikator. Więc śledzę długość geograficzną, szerokość geograficzną i moją prędkość. Dla każdej wartości stworzyłem inną funkcję. Zrobiłbym tylko 3 instrukcje sql, które są takie same, ale w zależności od wartości, którą chciałbym przechowywać, zmieniłem instrukcję WHERE.
Zalecana:
Licznik kroków - Micro:Bit: 12 kroków (ze zdjęciami)
Licznik kroków - Micro:Bit: Ten projekt będzie licznikiem kroków. Do pomiaru kroków użyjemy czujnika przyspieszenia wbudowanego w Micro:Bit. Za każdym razem, gdy Micro:Bit się trzęsie, dodamy 2 do licznika i wyświetlimy go na ekranie
Lewitacja akustyczna z Arduino Uno krok po kroku (8 kroków): 8 kroków
Lewitacja akustyczna z Arduino Uno Krok po kroku (8-kroków): ultradźwiękowe przetworniki dźwięku Zasilacz żeński L298N Dc z męskim pinem dc Arduino UNOBreadboardJak to działa: Najpierw wgrywasz kod do Arduino Uno (jest to mikrokontroler wyposażony w cyfrowy oraz porty analogowe do konwersji kodu (C++)
Jak używać silnika krokowego jako enkodera obrotowego i wyświetlacza OLED dla kroków: 6 kroków
Jak używać silnika krokowego jako enkodera obrotowego i wyświetlacza OLED dla kroków: W tym samouczku dowiemy się, jak śledzić kroki silnika krokowego na wyświetlaczu OLED. Obejrzyj film demonstracyjny.Kredyt samouczka oryginalnego trafia do użytkownika YouTube „sky4fly”
Bolt - DIY Wireless Charging Night Clock (6 kroków): 6 kroków (ze zdjęciami)
Bolt - DIY Wireless Charging Night Clock (6 kroków): Ładowanie indukcyjne (znane również jako ładowanie bezprzewodowe lub ładowanie bezprzewodowe) to rodzaj bezprzewodowego przesyłania energii. Wykorzystuje indukcję elektromagnetyczną do dostarczania energii elektrycznej do urządzeń przenośnych. Najpopularniejszym zastosowaniem jest stacja ładowania bezprzewodowego Qi
Bezpieczniej Lepiej: Zwiększanie bezpieczeństwa na stacjach kolejowych: 7 kroków
Bezpieczniejsze Lepsze: Zwiększanie bezpieczeństwa na stacjach kolejowych: Wiele dzisiejszych stacji kolejowych jest niebezpiecznych z powodu braku zabezpieczeń, barier i ostrzeżenia o nadjeżdżającym pociągu. Widzieliśmy potrzebę naprawienia tego. Aby rozwiązać ten problem, stworzyliśmy Safer Better. Zastosowaliśmy czujniki drgań, czujniki ruchu i