Spisu treści:

TripComputer - komputer pokładowy GPS i moduł pogody dla Twojego pojazdu: 11 kroków (ze zdjęciami)
TripComputer - komputer pokładowy GPS i moduł pogody dla Twojego pojazdu: 11 kroków (ze zdjęciami)

Wideo: TripComputer - komputer pokładowy GPS i moduł pogody dla Twojego pojazdu: 11 kroków (ze zdjęciami)

Wideo: TripComputer - komputer pokładowy GPS i moduł pogody dla Twojego pojazdu: 11 kroków (ze zdjęciami)
Wideo: Mazda 6 trick ! Aktywacja trip computer ! 2024, Lipiec
Anonim
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu
TripComputer - komputer pokładowy GPS i moduł pogodowy do Twojego pojazdu

Fajny projekt raspberry pi, który wykorzystuje moduł GPS i 2 małe wyświetlacze Digole, aby mieć komputer nawigacyjny na desce rozdzielczej.

Krok 1: Flashowanie dysku twardego RaspberriPi / instalacja wymaganego oprogramowania (przy użyciu systemu Ubuntu Linux)

Pobierz "RASPBIAN JESSIE LITE VERSION"

Utwórz nowy dysk twardy dla DashboardPI

Włóż kartę microSD do komputera za pomocą adaptera USB i utwórz obraz dysku za pomocą polecenia dd

Zlokalizuj włożoną kartę microSD za pomocą polecenia df -h, odmontuj ją i utwórz obraz dysku za pomocą polecenia disk copy dd

$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678

$ umount /dev/sdb1

Uwaga: upewnij się, że polecenie jest całkowicie dokładne, za pomocą tego polecenia możesz uszkodzić inne dyski

if=lokalizacja pliku obrazu RASPBIAN JESSIE FULL VERSION of=lokalizacja karty microSD

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (uwaga: w tym przypadku jest to /dev/sdb, /dev/sdb1 to istniejąca partycja fabryczna na microSD)

Konfigurowanie RaspberriPi

Włóż nową kartę microSD do raspberrypi i włącz ją za pomocą monitora podłączonego do portu HDMI

Zaloguj sie

użytkownik: pi pass: malina

Zmień hasło do konta dla bezpieczeństwa (z terminala)

sudo passwd pi

Włącz opcje zaawansowane RaspberriPi (z terminala)

sudo raspi-config

Wybierz: 1 Rozwiń system plików

9 opcji zaawansowanych

Nazwa hosta A2 zmień ją na „TripComputer”

A4 SSH Włącz serwer SSH

A7 I2C Włącz interfejs i2c

Włącz klawiaturę angielską/amerykańską

sudo nano /etc/default/klawiatura

Zmień następujący wiersz: XKBLAYOUT="us"

Zrestartuj PI, aby zmiany układu klawiatury / zmiana rozmiaru systemu plików zaczęły obowiązywać

$ sudo zamknięcie -r teraz

Automatyczne łączenie z Wi-Fi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dodaj następujące wiersze, aby raspberrypi automatycznie łączył się z domową siecią Wi-Fi (jeśli Twoja sieć bezprzewodowa nosi na przykład nazwę „linksys”, w poniższym przykładzie)

network={ ssid="linksys" psk="TUTAJ HASŁO BEZPRZEWODOWE" } Uruchom ponownie PI, aby połączyć się z siecią Wi-Fi

$ sudo zamknięcie -r teraz

Teraz, gdy Twoje PI jest już w sieci lokalnej, możesz zalogować się do niego zdalnie przez SSH. Ale najpierw musisz uzyskać adres IP, który obecnie posiada.

$ ifconfig Poszukaj "inet addr: 192.168. XXX. XXX" w wyniku następującego polecenia dla adresu IP twojego PI

Przejdź do innego komputera i zaloguj się do swojego raspberrypi przez ssh

$ ssh [email protected]. XXX. XXX

Rozpocznij instalację wymaganych pakietów

$ sudo apt-get update && sudo apt-get upgrade

$ sudo apt-get install build-essential git gpsd gpsd-clients i2c-tools libi2c-dev python3 python3-pip python-dev python-gps python-imaging python-pip python-smbus rpi.gpio vim python

$ sudo pip zainstaluj RPi. GPIO

Zaktualizuj lokalne ustawienia strefy czasowej

$ sudo dpkg-reconfigure tzdata

wybierz swoją strefę czasową za pomocą interfejsu

Skonfiguruj proste polecenie l katalogu [opcjonalne]

vi ~/.bashrc

dodaj następujący wiersz:

alias l='ls -lh'

źródło ~/.bashrc

Napraw domyślne podświetlanie składni VIM [opcjonalne]

sudo vi /etc/vim/vimrc

odkomentuj następujący wiersz:

składnia włączona

Krok 2: Dostarczone potrzebne

Dostarczone potrzebne
Dostarczone potrzebne
Dostarczone potrzebne
Dostarczone potrzebne
Dostarczone potrzebne
Dostarczone potrzebne

2-calowy wyświetlacz TFT LCD 320x240 Digole (x2)

Higrostat DHT11

RaspberriPi Zero

Adafruit GPS Breakout

Wskaźniki 52 mm 2 cale - używane do ramek szklanych / i ekranów

2 pojemnik do montażu miernika

Krok 3: Wydrukuj załącznik

W folderze „3DPrint/” tego projektu wydrukuj plik gauges-final.stl, który wygeneruje obramowanie wyświetlacza Digole potrzebne do zamontowania 2 ekranów wewnątrz kontenera do montażu miernika.

Krok 4: Budowanie komputera podróży

Budowa komputera podróży
Budowa komputera podróży

Podłącz następujące urządzenia do pinów na Pi Zero

Digole (każdy): 3v/GND/SDA/SCL

DHT11: 5v / GPIO 16 (36) / GND

Podłącz moduł USB GPS do RaspberriPi za pomocą połączeń sprzętowych UART Korzystanie ze sprzętowego UART dla modułu GPS wymaga następujących czynności, aby zwolnić połączenie UART na Twoim Pi.

"Cross" - Podłącz piny TX i RX z modułu GPS do RPi TX (GPIO 14/8 pin) i RX (GPIO 15/10 pin) - [TX idzie do RX na urządzeniu i odwrotnie.] Połącz RPi 5V do pinu VIN i pin GND modułu GPS do wolnego pinu GND RPi.

Krok 5: Montaż końcowy

Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy

Wytnij kawałek drewna na spód, aby utrzymać elementy wewnątrz obudowy miernika.

Weź 2 52-milimetrowe wskaźniki 2 cale i odetnij górną część, po prostu używamy szkła i obramowania do montażu naszych własnych wyświetlaczy, wyświetlaczy Digole. Przyklej je na miejsce gorącym klejem.

Krok 6: Montaż końcowy (ciąg dalszy…)

Montaż końcowy (cd…)
Montaż końcowy (cd…)
Montaż końcowy (cd…)
Montaż końcowy (cd…)

Używając powyższego schematu, połącz komponenty za pomocą lutu, aby wszystko było mocne i trwałe.

Zamontuj komponenty wewnątrz obudowy z dwoma wskaźnikami, użyj wydrukowanych w 3D obramowań, aby dopasować kwadratowe wyświetlacze Digole do okrągłych okien wskaźników.

Krok 7: Konfiguracja/instalacja oprogramowania

Skonfiguruj swoje Pi, aby korzystać z modułu GPS na UART

sudo vi /boot/cmdline.txt

reszta:

dwc_otg.lpm_enable=0 console=ttyAMA0, 115200 kgdboc=ttyAMA0, 115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 lift=termin rootwait

do:

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 lift=ostateczny termin rootwait

(np. usuń console=ttyAMA0, 115200 i jeśli istnieje, kgdboc=ttyAMA0, 115200)

Zauważ, że możesz zobaczyć console=serial0, 115200 lub console=ttyS0, 115200 i powinieneś usunąć te części linii, jeśli są obecne.

Uruchom następujące polecenia:

sudo systemctl stop [email protected]

sudo systemctl wyłącz [email protected]

Instalacja modułu GPS W celu przeprowadzenia testów wymuś połączenie urządzenia USB z GPS

sudo gpsd /dev/ttyS0 -F /var/run/gpsd.sock

sudo systemctl stop gpsd.socket

sudo killall gpsd

sudo dpkg-reconfigure gpsd

sudo vi /etc/default/gpsd

# Domyślne ustawienia dla GPS. START_DAEMON="prawda" GPSD_OPTIONS="-n" DEVICES="/dev/ttyS0" USBAUTO="fałsz" GPSD_SOCKET="/var/run/gpsd.sock"

Upewnij się, że polecenie działa

cgps -s

DHT11 Zainstaluj płytę CD ~

git klon

cd Adafruit_Python_DHT/

sudo python setup.py zainstalować

sudo python ez_setup.py

przykłady cd/

vi prostytest.py

Zmień następujący wiersz:

czujnik = Adafruit_DHT. DHT11

Skomentuj linię out

pin = 'P8_11'

Odkomentuj linię i zmień numer pinu na 16

szpilka = 16

Uruchom test

python prostytest.py

Powinieneś zobaczyć odczyt metryczny temperatury i wilgotności wyświetlony w wierszu poleceń.

Skonfiguruj i uruchom skrypty cd ~

klon git

Krok 8: Zainstaluj narzędzia do monitorowania jazdy i rejestrowanie bazy danych

sudo apt-get zainstaluj ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2

sudo vi /etc/postgresql/9.4/main/pg_hba.conf

Dodaj następujący wiersz na końcu pliku:

lokalne hasło do wszystkich pi

sudo-i-u postgres

psql

utwórz hasło roli pi 'hasło tutaj';

zmień rolę pi logowanie;

zmienić rolę superużytkownika pi;

du

(powinieneś zobaczyć swojego użytkownika PI z przyznanymi uprawnieniami)

utwórz bazę danych Driving_statistics;

Q

Wyjście

psql -d statystyki_jazdy

Uruchom następujące zapytania:

CREATE TABLE Driving_stats (numer seryjny, znacznik czasu bez strefy czasowej NOT NULL, znacznik czasu new_trip_start bez strefy czasowej NULL, podwójna precyzja gps_latitude, podwójna precyzja gps_longitude, gps_altitude real, gps_speed real, gps_climb real, gps_track real, tekst locale_address, tekst locale_area, locale_county text, locale_country text, locale_zipcode text, inside_temp real, inside_hmidty real, weather_time timestamp, weather_summary text, weather_icon text, weather_apparentTemperature real, weather_humidity real, weather_precipIntensity real, weather_precipProbability real, weather_windSpeed real);

UTWÓRZ UNIKALNY INDEKS time_idx ON Driving_stats (czas);

Hack wymagany, aby GPSD działał z połączeniem UART po ponownym uruchomieniu sudo su

crontab -e

@reboot /bin/sleep 5; zabij gpsd

@reboot /bin/sleep 10; /usr/sbin/gpsd /dev/ttyS0 -F /var/run/gpsd.sock

Utwórz folder logs dla danych do zapisania mkdir /home/pi/TripComputer/computer/logs

Krok 9: Uruchamianie skryptów Crontab - Pi & Root

Skonfiguruj skrypty do uruchamiania podczas rozruchu

crontab -e

Dodaj następujące linie

@reboot /bin/sleep 15; nohup python /home/pi/TripComputer/computer/mtk3339.py > /home/pi/TripComputer/computer/mtk3339.log 2>&1

@reboot /bin/sleep 18; nohup python /home/pi/TripComputer/computer/driving.py > /home/pi/TripComputer/computer/driving.log 2>&1

@reboot /bin/sleep 19; nohup python /home/pi/TripComputer/computer/address.py > /home/pi/TripComputer/computer/address.log 2>&1

@reboot /bin/sleep 30; nohup python /home/pi/TripComputer/computer/gauges.py > /home/pi/TripComputer/computer/gauges.log 2>&1

@reboot /bin/sleep 21; nohup python /home/pi/TripComputer/computer/locale.py > /home/pi/TripComputer/computer/locale.log 2>&1

@reboot /bin/sleep 22; nohup python /home/pi/TripComputer/computer/notification.py > /home/pi/TripComputer/computer/notification.log 2>&1

@reboot /bin/sleep 24; nohup python /home/pi/TripComputer/computer/temperature.py > /home/pi/TripComputer/computer/temperature.log 2>&1

@reboot /bin/sleep 25; nohup python /home/pi/TripComputer/computer/upload.py > /home/pi/TripComputer/computer/upload.log 2>&1

@reboot /bin/sleep 26; nohup python /home/pi/TripComputer/computer/weather.py > /home/pi/TripComputer/computer/weather.log 2>&1

@reboot /bin/sleep 30; nohup python /home/pi/TripComputer/computer/stats.py > /home/pi/TripComputer/computer/stats.log 2>&1

Skonfiguruj crontab użytkownika root, aby upewnić się, że moduł GPS łączy się prawidłowo

sudo su

crontab -e

Dodaj następujące linie

@reboot /bin/sleep 5; systemctl stop gpsd.socket

@reboot /bin/sleep 8; zabij gpsd

@reboot /bin/sleep 12; /usr/sbin/gpsd /dev/ttyS0 -F /var/run/gpsd.sock

Krok 10: Skonfiguruj, aby połączyć się z pogodą i pulpitem nawigacyjnym (opcjonalnie)

Na koniec utwórz lokalne ustawienia potrzebne do uruchomienia komputera podróży

Znajdź plik /computer/includes/settings.shadow.py

Utwórz własną wersję pliku ustawień o nazwie po prostu settings.py

Klucz API forecast.io do lokalnych informacji o pogodzie weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'KLUCZ API TUTAJ'

jeśli masz uruchomiony projekt centrum urządzeń (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'

jeśli masz uruchomiony projekt telefonu pulpitu nawigacyjnego (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'

Krok 11: Zamontuj na desce rozdzielczej / Zamontuj higrostat i gotowe

Zamontuj na desce rozdzielczej / zamontuj higrostat i gotowe!
Zamontuj na desce rozdzielczej / zamontuj higrostat i gotowe!
Zamontuj na desce rozdzielczej / zamontuj higrostat i gotowe!
Zamontuj na desce rozdzielczej / zamontuj higrostat i gotowe!

Zamontuj na desce rozdzielczej

Mount Humidistat z dala od bezpośredniego słońca

Zrestartuj swoje RPi i powinieneś być gotowy do pracy!

Zalecana: