Spisu treści:

Udostępniany Smartbike: 12 kroków (ze zdjęciami)
Udostępniany Smartbike: 12 kroków (ze zdjęciami)

Wideo: Udostępniany Smartbike: 12 kroków (ze zdjęciami)

Wideo: Udostępniany Smartbike: 12 kroków (ze zdjęciami)
Wideo: #fotelik.info: PODDUPNIK - nie używaj tego gó... w swoim samochodzie [VLOG #001] 2024, Listopad
Anonim
Udostępniany Smartbike
Udostępniany Smartbike
Udostępniany Smartbike
Udostępniany Smartbike

Za każdym razem, gdy używam roweru, zapominam włączyć światła, gdy robi się ciemno. Również na moim rowerze nie wiem, jak szybko jadę.

Postanowiłem więc stworzyć smartbike, który można udostępniać, który śledzi:

  • Prędkość
  • Lokalizacja
  • Jak długo korzystasz z roweru

Automatycznie włącza i wyłącza światła. Użyłem skanera RFID, aby ktoś inny mógł korzystać z roweru bez zmiany moich danych.

Link do mojego githuba.

Kieszonkowe dzieci

  • Raspberry Pi 3 (32, 49 €)
  • Karta SD (dla RPi) (13, 99 €)
  • GPS NEO 6M (dla prędkości i lokalizacji) (15, 99 €)
  • Anker PowerCore 10400mAh (29, 99 €)
  • RFID RC522 (5, 49 €)
  • Wyświetlacz LCD 16x2 (9, 99 EUR)
  • Tablica Elegoo Uno R3 (9, 34 €)
  • LDR (1, 50 €)
  • MCP3008 (ADC) (5, 98 €)
  • Światło z recyklingu
  • Drewno na obudowę (~15, 00 euro)
  • Kable (~ 6 €, 00)

Całkowita cena: 145,76 €

Krok 1: Wykonaj obwód

Zrób obwód
Zrób obwód
Zrób obwód
Zrób obwód

Najpierw musisz wszystko poskładać. Dołączyłem schemat fritzowania.

Uwaga: Niektóre elementy, takie jak skaner RFID, muszą być przylutowane.

Krok 2: Skonfiguruj Pythona

Skonfiguruj Pythona
Skonfiguruj Pythona

W tym projekcie będę używał Pythona 3 i uruchamiał kod z serwerem Pythona. Połączę mój github z moim kodem.

Najpierw musisz nawiązać połączenie z Raspberry Pi poprzez Ustawienia> Kompilacja, Wykonanie, Wdrożenie> Wdrożenie. Następnie musisz zrobić tłumacza ze wszystkimi wymaganymi pakietami. Na moim Raspberry Pi używam Pythona 3.5.

Kiedy już wyznaczyłeś tłumacza, możesz zrobić nowy projekt i wybrać tłumacza, którego właśnie stworzyłeś do tego projektu. Następnie będziesz musiał wybrać, gdzie zapisać pliki na swoim komputerze i RPi.

Krok 3: Przeczytaj dane

Przeczytaj dane
Przeczytaj dane

Po wykonaniu obwodu i sprawdzeniu wszystkich podzespołów należy odczytać dane z czujników. Mój projekt został wykonany w Pythonie 3. W Pythonie większość danych z czujników odczytałem za pomocą klas.

  • Skaner RFID jest używany z arduino (więcej informacji o tym, jak go używać tutaj). Odczytuję dane ze skanera z arduino i wysyłam do RPi z Serial USB.
  • Moduł GPS również korzysta z komunikacji szeregowej. Dane wysyłane przez GPS do RPi nie są tak dobrze sformatowane, że użyłem biblioteki do analizy danych i ułatwienia ich użycia. (Więcej informacji o danych GPS).
  • Wartości analogowe z LDR są konwertowane za pomocą mcp3008 (adc), a następnie przekształcam wartość na procent.

Uwaga: Jeśli chcesz używać pętli while w Pythonie, aby stale pobierać dane podczas uruchamiania serwera Pythona. Będziesz potrzebować wątków (więcej informacji na temat wątków). Nawlekanie jest łatwe w użyciu.

Krok 4: Baza danych (mySQL)

Baza danych (mySQL)
Baza danych (mySQL)

Teraz, gdy masz już dane z czujników, potrzebujesz miejsca do ich przechowywania. Będziemy przechowywać dane w relacyjnej bazie danych w mySQL.

Aby to zadziałało, uruchamiam bazę danych na moim RPi. Muszę mieć zainstalowaną mariaDB na moim RPi. Po zainstalowaniu mariaDB i skonfigurowaniu możesz użyć środowiska pracy mySQL na swoim komputerze, aby połączyć się z bazą danych na RPi.

Będziesz musiał zrobić ERD na komputerze; zaprojektuj ERD i wyeksportuj bazę danych. Następnie możesz zaimportować zrzut (nie zapomnij o utworzeniu schematu) na RPi za pośrednictwem środowiska roboczego mySQL.

Uwaga: tabela „Bike_has_User” nie jest wymagana i będzie używana tylko wtedy, gdy planujesz korzystać z wielu rowerów. Możesz usunąć tabelę „Bike_has_User” i połączyć tabelę User z „Datahistory”.

Krok 5: Połącz swój Python z bazą danych

Połącz swój Python z bazą danych
Połącz swój Python z bazą danych

Teraz, gdy masz już zainstalowaną bazę danych, możesz połączyć swojego Pythona z bazą danych. Kliknij na bazę danych (po prawej stronie ekranu) i dodaj nowe źródło danych.

Baza danych i skrypt Pythona działają na RPi, więc użyj adresu IP localhost. Użyj użytkownika, którego utworzyłeś wcześniej podczas konfigurowania mariaDB.

Krok 6: Wyślij dane do bazy danych

Wyślij dane do bazy danych
Wyślij dane do bazy danych

Po skonfigurowaniu wszystkiego możesz rozpocząć wysyłanie danych do bazy danych. Użyłem do tego klasy helpers. Database w pythonie (zobacz mój github).

Zdjęcie pokazuje przykładowy kod.

Krok 7: Użyj danych

Użyj danych
Użyj danych

Dzięki klasie helpers. Database możesz wstawiać dane do bazy danych lub pobierać dane z bazy danych.

Teraz, gdy wszystko działa, możesz wykorzystać dane z bazy danych, aby wyświetlić je na stronie internetowej lub w dowolnym miejscu.

Krok 8: Obudowa: spód

Obudowa: dół
Obudowa: dół

O obudowie

Ostatecznie obudowa do tego projektu wykonana jest z drewna (310x130x110 mm). Większość elementów jest przykręcona do drewna, z wyjątkiem powerbanku i płytki stykowej.

Możesz zmniejszyć obudowę, jeśli lutujesz elementy. Nie uwzględniłem sposobu na bezpieczne połączenie obudowy z rowerem, ale opcji jest wiele.

Wykonanie obudowy

Musisz zacząć od wykonania dolnej części obudowy. Wytnij kawałek drewna (130x310 mm). Następnie przymocuj RPi śrubą i przyklej płytkę stykową do dolnej części.

Uwaga: możesz wykonać identyczną część na górze obudowy

Krok 9: Obudowa: małe boki

Obudowa: małe boki
Obudowa: małe boki

Kiedy skończyłeś dolną część. Możesz rozpocząć cięcie części bocznych. Zacznij od robienia mniejszych boków.

Najpierw musisz dołączyć mniejsze boki. Użyłem dodatkowego kawałka drewna do połączenia wszystkich części, ten dodatkowy kawałek ułatwia.

Krok 10: Obudowa: duże boki

Obudowa: duże boki
Obudowa: duże boki

Teraz będziesz musiał zrobić większe boki. Jeszcze raz przytnij boki i przymocuj je do dolnej części za pomocą dodatkowego kawałka drewna.

Krok 11: Dodanie otworu na LCD i LDR

Dodanie otworu na LCD i LDR
Dodanie otworu na LCD i LDR

Będziesz także musiał zrobić otwór na wyświetlacz LCD, aby zobaczyć adres IP i wyświetlić, czy użytkownik skanuje, czy nie.

Użyj pomiarów LCD, aby zdecydować, jaki rozmiar będzie miał otwór.

Po włożeniu wyświetlacza LCD upewnij się, że LDR znajduje się na zewnątrz obudowy. Użyłem malutkiego otworu, aby LDR mógł widzieć światło dzienne.

Krok 12: Podłącz skaner Arduino i RFID z boku

Przymocuj skaner Arduino i RFID z boku
Przymocuj skaner Arduino i RFID z boku

Po skompletowaniu obudowy należy jeszcze dołączyć skaner arduino i RFID. Możesz je przymocować w dowolnym miejscu. Zalecam jednak zamocowanie skanera RFID pod wyświetlaczem LCD, aby użytkownik mógł zobaczyć, czy zeskanował, czy nie.

Zalecana: