Sommario:

TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo: 11 passaggi (con immagini)
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo: 11 passaggi (con immagini)

Video: TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo: 11 passaggi (con immagini)

Video: TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo: 11 passaggi (con immagini)
Video: SFIORATO INVESTIMENTO NELLA STAZIONE DI RICCIONE!! - DATA: 10/08/2020 2024, Novembre
Anonim
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo
TripComputer - Computer di bordo GPS e modulo meteo per il tuo veicolo

Un fantastico progetto Raspberry Pi che utilizza il modulo di breakout GPS e 2 piccoli display Digole per avere un computer di navigazione sul cruscotto.

Passaggio 1: lampeggiare il disco rigido di RaspberriPi / installare il software richiesto (utilizzando Ubuntu Linux)

Scarica "RASPBIAN JESSIE LITE VERSION"

Crea il tuo nuovo disco rigido per DashboardPI

Inserisci la microSD sul tuo computer tramite l'adattatore USB e crea l'immagine del disco usando il comando dd

Individua la scheda microSD inserita tramite il comando df -h, smontala e crea l'immagine del disco con il comando disk copy dd

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

$ umount /dev/sdb1

Attenzione: assicurati che il comando sia completamente preciso, puoi danneggiare altri dischi con questo comando

if=posizione del file immagine RASPBIAN JESSIE FULL VERSION of=posizione della tua scheda microSD

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (nota: in questo caso, è /dev/sdb, /dev/sdb1 era una partizione di fabbrica esistente sul microSD)

Configura il tuo RaspberriPi

Inserisci la tua nuova scheda microSD nel raspberrypi e accendilo con un monitor collegato alla porta HDMI

Login

utente: pi pass: lampone

Cambia la password del tuo account per sicurezza (dal terminale)

sudo passwd più

Abilita le opzioni avanzate di RaspberriPi (da terminale)

sudo raspi-config

Scegli: 1 Espandi file system

9 Opzioni avanzate

A2 Hostname cambialo in "TripComputer"

A4 SSH Abilita server SSH

A7 I2C Abilita interfaccia i2c

Abilita la tastiera inglese/americana

sudo nano /etc/default/keyboard

Modifica la seguente riga: XKBLAYOUT="us"

Riavvia PI per modifiche al layout della tastiera / ridimensionamento del file system per avere effetto

$ sudo shutdown -r now

Connessione automatica al tuo WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Aggiungi le seguenti righe per far connettere automaticamente il tuo raspberrypi al WiFi di casa (se la tua rete wireless si chiama "linksys", ad esempio, nell'esempio seguente)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Riavvia PI per connetterti alla rete WiFi

$ sudo shutdown -r now

Ora che il tuo PI è finalmente sulla rete locale, puoi accedere in remoto tramite SSH. Ma prima devi ottenere l'indirizzo IP che ha attualmente.

$ ifconfig Cerca "inet addr: 192.168. XXX. XXX" nell'output del comando seguente per l'indirizzo IP del tuo PI

Vai su un'altra macchina e accedi al tuo raspberrypi tramite ssh

$ ssh [email protected]. XXX. XXX

Avvia l'installazione dei pacchetti richiesti

$ 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 install RPi. GPIO

Aggiorna le impostazioni del fuso orario locale

$ sudo dpkg-reconfigure tzdata

seleziona il tuo fuso orario utilizzando l'interfaccia

Imposta il comando semplice directory l [opzionale]

vi ~/.bashrc

aggiungi la seguente riga:

alias l='ls -lh'

sorgente ~/.bashrc

Correggi l'evidenziazione della sintassi predefinita di VIM [opzionale]

sudo vi /etc/vim/vimrc

decommenta la seguente riga:

sintassi attiva

Passaggio 2: fornito necessario

Fornito Necessario
Fornito Necessario
Fornito Necessario
Fornito Necessario
Fornito Necessario
Fornito Necessario

Display Digole LCD TFT da 2 320x240 (x2)

DHT11 Umidostato

LamponiPi Zero

Adafruit GPS Breakout

Calibri da 52 mm 2 pollici - utilizzati per i bordi del vetro e dello schermo

Contenitore per montaggio su misura 2

Passaggio 3: stampare l'allegato

Nella cartella "3DPrint/" di questo progetto, stampa il file gauges-final.stl che produrrà i bordi del display Digole necessari per montare i 2 schermi all'interno del contenitore di montaggio del misuratore.

Passaggio 4: costruzione del computer di viaggio

Costruire il computer di bordo
Costruire il computer di bordo

Collega i seguenti dispositivi ai pin del Pi Zero

Digole (ciascuno): 3v / GND / SDA / SCL

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

Collega il modulo USB GPS a RaspberriPi tramite connessioni HW UART L'utilizzo di HW UART per il modulo GPS richiede quanto segue per liberare la connessione UART sul tuo Pi.

"Cross" - Collega i pin TX e RX dal modulo GPS a RPi TX (pin GPIO 14/8) e RX (pin GPIO 15/10) -- [TX va a RX sul dispositivo e viceversa.] Connetti RPi 5V al pin VIN e il pin GND del modulo GPS a un pin GND RPi disponibile.

Passaggio 5: assemblaggio finale

Assemblea finale
Assemblea finale
Assemblea finale
Assemblea finale

Tagliare un pezzo di legno per il fondo per contenere i componenti all'interno dell'involucro del misuratore.

Prendi i 2 calibri da 2 pollici da 52 mm e taglia le parti superiori, stiamo solo usando il vetro e la cornice per montare i nostri display, i display Digole. Incollali in posizione con la colla a caldo.

Fase 6: assemblaggio finale (continua…)

Assemblea finale (segue…)
Assemblea finale (segue…)
Assemblea finale (segue…)
Assemblea finale (segue…)

Usando lo schema sopra, collega i componenti usando la saldatura per rendere tutto forte e permanente.

Montare i componenti all'interno dell'involucro a doppio calibro, utilizzare i bordi stampati in 3D per adattare i display Digole a forma quadrata alle finestre a calibro circolare.

Passaggio 7: configurazione/installazione del software

Configura il tuo Pi per utilizzare il modulo GPS su UART

sudo vi /boot/cmdline.txt

modificare:

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

a:

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

(ad esempio, rimuovere console=ttyAMA0, 115200 e, se presente, kgdboc=ttyAMA0, 115200)

Nota che potresti vedere console=serial0, 115200 o console=ttyS0, 115200 e dovresti rimuovere quelle parti della linea se presenti.

Esegui i seguenti comandi:

sudo systemctl stop [email protected]

sudo systemctl disabilita [email protected]

Installazione modulo GPS Per testare, forzare il dispositivo USB a connettersi a gpsd

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

# Impostazioni predefinite per gpsd. START_DAEMON="true" GPSD_OPTIONS="-n" DEVICES="/dev/ttyS0" USBAUTO="false" GPSD_SOCKET="/var/run/gpsd.sock"

Assicurati che il comando funzioni

cgps -s

DHT11 Installa cd ~

git clone

cd Adafruit_Python_DHT/

sudo python setup.py install

sudo python ez_setup.py

esempi di cd/

vi simpletest.py

Modifica la seguente riga:

sensore = Adafruit_DHT. DHT11

Commenta la riga fuori

pin = 'P8_11'

Decommenta la riga e cambia il numero pin in 16

perno = 16

Esegui il test

python simpletest.py

Dovresti vedere una lettura metrica di Temp e Umidità visualizzata sulla riga di comando.

Imposta ed esegui gli script cd ~

git clone

Passaggio 8: installazione degli strumenti di monitoraggio della guida e registrazione del database

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

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

Aggiungi la seguente riga alla fine del file:

locale all pi password

sudo -i -u postgres

psql

crea ruolo pi password 'password qui';

modificare il ruolo pi login;

alterare il ruolo pi superutente;

du

(dovresti vedere il tuo utente PI con i permessi concessi)

creare database driving_statistics;

Q

Uscita

psql -d driving_statistics

Eseguire le seguenti query:

CREATE TABLE driving_stats (id serial, time timestamp senza fuso orario NOT NULL, new_trip_start timestamp senza fuso orario NULL, gps_latitude double precision, gps_longitude double precision, gps_altitude real, gps_speed real, gps_climb real, gps_track real, testo locale_address, testo locale_area, testo locale_city, testo locale_county, testo locale_country, testo locale_zipcode, inside_temp reale, inside_hmidty reale, weather_time timestamp, weather_summary testo, weather_icon testo, weather_apparentTemperature reale, weather_humidity reale, weather_precipIntensity reale, weather_precipProbability reale, weather_windSpeed reale);

CREA INDICE UNICO time_idx ON driving_stats (tempo);

Hack richiesto per far funzionare GPSD con la connessione UART al riavvio sudo su

crontab -e

@reboot /bin/sleep 5; killall gpsd

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

Crea la cartella dei log per i dati da salvare mkdir /home/pi/TripComputer/computer/logs

Passaggio 9: avvio degli script di Crontab - Pi e root

Imposta gli script da eseguire all'avvio

crontab -e

Aggiungi le seguenti righe

@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/Computer di viaggio/computer/meteo.py > /home/pi/Computer di viaggio/computer/meteo.log 2>&1

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

Imposta il crontab dell'utente root per assicurarti che il modulo GPS si connetta correttamente

sudo su

crontab -e

Aggiungi le seguenti righe

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

@reboot /bin/sleep 8; killall gpsd

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

Passaggio 10: configurare per connettersi a Weather e Dashboard (opzionale)

Infine, crea le impostazioni locali necessarie per eseguire il computer di bordo

Trova il file /computer/includes/settings.shadow.py

Crea la tua versione del file delle impostazioni chiamato semplicemente settings.py

Chiave API forecast.io per le informazioni meteo locali weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'CHIAVE API QUI'

se hai il progetto hub del dispositivo in esecuzione (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'

se hai il progetto del telefono dashboard in esecuzione (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'

Passaggio 11: montare su Dash / Mount Humidistat e finito

Monta su Dash / Mount Humidistat e finito!
Monta su Dash / Mount Humidistat e finito!
Monta su Dash / Mount Humidistat e finito!
Monta su Dash / Mount Humidistat e finito!

Monta su Dash

Monte Umidostato lontano dal sole diretto

Riavvia il tuo RPi e dovresti essere pronto per partire!

Consigliato: