Spisu treści:
- Krok 1: Flashowanie dysku twardego RaspberriPi / instalacja wymaganego oprogramowania (przy użyciu systemu Ubuntu Linux)
- Krok 2: Dostarczone potrzebne
- Krok 3: Wydrukuj załącznik
- Krok 4: Budowanie komputera podróży
- Krok 5: Montaż końcowy
- Krok 6: Montaż końcowy (ciąg dalszy…)
- Krok 7: Konfiguracja/instalacja oprogramowania
- Krok 8: Zainstaluj narzędzia do monitorowania jazdy i rejestrowanie bazy danych
- Krok 9: Uruchamianie skryptów Crontab - Pi & Root
- Krok 10: Skonfiguruj, aby połączyć się z pogodą i pulpitem nawigacyjnym (opcjonalnie)
- Krok 11: Zamontuj na desce rozdzielczej / Zamontuj higrostat i gotowe
Wideo: TripComputer - komputer pokładowy GPS i moduł pogody dla Twojego pojazdu: 11 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
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
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
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
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…)
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
Mount Humidistat z dala od bezpośredniego słońca
Zrestartuj swoje RPi i powinieneś być gotowy do pracy!
Zalecana:
Twórz własne mapy dla Twojego GPS Garmin: 8 kroków (ze zdjęciami)
Twórz własne mapy dla swojego GPS firmy Garmin: Jeśli masz urządzenie GPS firmy Garmin przeznaczone do uprawiania turystyki pieszej i innych aktywności na świeżym powietrzu (w tym między innymi z serii GPSMAP, eTrex, Colorado, Dakota, Oregon i Montana), nie musisz zadowolić się mapami w postaci gołych kości, które zostały na nim wstępnie załadowane. MI
Luciferin, bezprzewodowe oświetlenie odchylenia dla twojego komputera.: 6 kroków (ze zdjęciami)
Luciferin, Wireless Bias Lighting for Your PC.: Lucyferyna to ogólne określenie związku emitującego światło występującego w organizmach wytwarzających bioluminescencję, takich jak świetliki i świetliki. Firefly Luciferin to oprogramowanie Java Fast Screen Capture PC zaprojektowane dla oprogramowania układowego Glow Worm Luciferin, te
System chłodzony jonami dla twojego serwera gier Raspberry Pi!: 9 kroków (ze zdjęciami)
System chłodzony jonami dla twojego serwera gier Raspberry Pi!: Cześć twórcy! Jakiś czas temu dostałem Raspberry Pi, ale tak naprawdę nie wiedziałem, co z nim zrobić. Ostatnio Minecraft powrócił do popularności, więc postanowiłem skonfigurować serwer Minecraft dla mnie i moich znajomych, aby cieszyć się nim. Cóż, okazało się, że jestem tylko ja:
Gwiezdne wrota dla Twojego komputera - projektowanie PCB: 6 kroków (ze zdjęciami)
Stargate for Your Desktop - PCB Design: Jeśli podoba Ci się ten projekt, rozważ proszę głosowanie na niego w konkursie PCB (na dole strony)! Stargate SG-1 to mój ulubiony program telewizyjny wszechczasów – kropka. W ciągu ostatnich kilku miesięcy zmuszałem moją dziewczynę do oglądania, aby oglądać
Projekt Arduino: Zakres testowy Moduł LoRa RF1276 dla rozwiązania śledzenia GPS: 9 kroków (ze zdjęciami)
Projekt Arduino: Zakres testowy Moduł LoRa RF1276 do śledzenia GPS Rozwiązanie: Połączenie: USB - Serial Potrzeba: Przeglądarka Chrome Potrzeba: 1 X Arduino Mega Potrzeba: 1 X GPS Potrzeba: 1 X Karta SD Potrzeba: 2 X Modem LoRa RF1276 Funkcja: Arduino Wyślij wartość GPS do bazy głównej - Główna baza przechowuje dane w Dataino Server Moduł Lora: Ultra daleki zasięg