Sadržaj:

TripComputer - GPS putni računar i vremenski modul za vaše vozilo: 11 koraka (sa slikama)
TripComputer - GPS putni računar i vremenski modul za vaše vozilo: 11 koraka (sa slikama)

Video: TripComputer - GPS putni računar i vremenski modul za vaše vozilo: 11 koraka (sa slikama)

Video: TripComputer - GPS putni računar i vremenski modul za vaše vozilo: 11 koraka (sa slikama)
Video: Как установить время на часах — Audi A6 Quattro 2005 г. с навигацией 2024, Juli
Anonim
TripComputer - GPS putni računar i vremenski modul za vaše vozilo
TripComputer - GPS putni računar i vremenski modul za vaše vozilo
TripComputer - GPS putni računar i vremenski modul za vaše vozilo
TripComputer - GPS putni računar i vremenski modul za vaše vozilo
TripComputer - GPS putni računar i vremenski modul za vaše vozilo
TripComputer - GPS putni računar i vremenski modul za vaše vozilo

Odličan projekt maline pi koji koristi GPS modul za probijanje i 2 mala ekrana Digole za navigacijski kompjuter.

Korak 1: Bljeskanje RaspberriPi tvrdog diska / instaliranje potrebnog softvera (pomoću Ubuntu Linuxa)

Preuzmite "RASPBIAN JESSIE LITE VERZIJA"

Kreirajte svoj novi tvrdi disk za DashboardPI

Umetnite microSD u računalo putem USB adaptera i kreirajte sliku diska pomoću naredbe dd

Pronađite umetnutu microSD karticu pomoću naredbe df -h, demontirajte je i kreirajte sliku diska naredbom dd copy copy

$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/mediji/XXX/1234-5678

$ umount /dev /sdb1

Oprez: provjerite je li naredba potpuno točna, ovom naredbom možete oštetiti druge diskove

if = lokacija slikovne datoteke RASPBIAN JESSIE FULL VERSION = lokacija vaše microSD kartice

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (napomena: u ovom slučaju to je/dev/sdb,/dev/sdb1 je bila postojeća tvornička particija na microSD)

Postavljanje vašeg RaspberriPi -ja

Umetnite svoju novu microSD karticu u raspberrypi i uključite je s monitorom spojenim na HDMI priključak

Ulogovati se

korisnik: pi pass: malina

Promijenite lozinku računa radi sigurnosti (s terminala)

sudo passwd pi

Omogući RaspberriPi napredne opcije (s terminala)

sudo raspi-config

Odaberite: 1 Proširite Sistem datoteka

9 Napredne opcije

A2 ime hosta promijenite u "TripComputer"

A4 SSH Omogući SSH server

A7 I2C Omogući i2c sučelje

Omogućite englesku/američku tastaturu

sudo nano/etc/default/keyboard

Promijenite sljedeći red: XKBLAYOUT = "mi"

Ponovo pokrenite PI za promjene rasporeda tastature / promjenu veličine datotečnog sistema kako bi stupile na snagu

$ sudo shutdown -r sada

Automatsko povezivanje na WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dodajte sljedeće redove kako bi se vaš raspberrypi automatski povezao s kućnom WiFi mrežom (ako je vaša bežična mreža na primjer "linksys", u sljedećem primjeru)

network = {ssid = "linksys" psk = "BEŽIČNA LOZINKA OVDJE"} Ponovo pokrenite PI za povezivanje na WiFi mrežu

$ sudo shutdown -r sada

Sada kada je vaš PI konačno na lokalnoj mreži, možete se daljinski prijaviti na njega putem SSH -a. Ali prvo morate dobiti IP adresu koju trenutno ima.

$ ifconfig Potražite "inet addr: 192.168. XXX. XXX" u sljedećem izlazu naredbe za IP adresu vašeg PI -ja

Idite na drugu mašinu i prijavite se na svoj raspberrypi putem ssh -a

$ ssh [email protected]. XXX. XXX

Počnite instalirati potrebne pakete

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

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

$ sudo pip instalirajte RPi. GPIO

Ažurirajte postavke lokalne vremenske zone

$ sudo dpkg-rekonfigurirajte tzdata

odaberite svoju vremensku zonu pomoću sučelja

Postavite jednostavnu naredbu l direktorija [opcionalno]

vi ~/.bashrc

dodajte sledeći red:

alias l = 'ls -lh'

izvor ~/.bashrc

Ispravite označavanje zadane sintakse VIM -a [nije obavezno]

sudo vi/etc/vim/vimrc

raskomentirajte sljedeći redak:

sintaksa uključena

Korak 2: Potrebno isporučeno

Supplied Needed
Supplied Needed
Supplied Needed
Supplied Needed
Supplied Needed
Supplied Needed

2 320x240 TFT LCD Digole ekran (x2)

DHT11 Humidistat

RaspberriPi Zero

Adafruit GPS proboj

52 mm 2 -inčni mjerači - koriste se za staklo / i oko ekrana

2 Kontejner za montažu na mjerač

Korak 3: Odštampajte kućište

U mapi "3DPrint/" ovog projekta odštampajte datoteku gauges-final.stl koja će proizvesti okruženje ekrana Digole potrebno za montiranje 2 ekrana unutar kontejnera za montiranje mjerača.

Korak 4: Izrada putnog računara

Izrada putnog računara
Izrada putnog računara

Priključite pinove sljedećih uređaja na Pi Zero

Digola (svaka): 3v / GND / SDA / SCL

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

Povežite GPS USB modul na RaspberriPi putem HW UART veze Korištenje HW UART za GPS modul zahtijeva sljedeće za oslobađanje UART veze na vašem Pi.

"Cross"-Povežite TX i RX pinove sa GPS modula na RPi TX (GPIO 14/8 pin) i RX (GPIO 15/10 pin)-[TX ide na RX na uređaju i obrnuto.] Povežite RPi 5V na VIN pin i GND pin GPS modula na raspoloživi RPi GND pin.

Korak 5: Završna montaža

Završna skupština
Završna skupština
Završna skupština
Završna skupština

Odrežite komad drveta za dno kako biste zadržali kompetencije unutar kućišta mjerača.

Uzmite 2 52 mm 2 -inčne mjerače i odrežite vrhove, mi samo koristimo staklo i okruženje za postavljanje vlastitih zaslona, zaslona Digole. Zalijepite ih vrućim ljepilom na mjesto.

Korak 6: Završna montaža (nastavak …)

Završna skupština (nastavak …)
Završna skupština (nastavak …)
Završna skupština (nastavak …)
Završna skupština (nastavak …)

Koristeći gornju shemu, spojite komponente pomoću lemljenja kako biste sve učinili jakim i postojanim.

Montirajte komponente unutar kućišta s dvostrukim kolosijekom, koristite 3D štampane okvire kako bi se Digole ekrani kvadratnog oblika uklopili u prozore kružnog profila.

Korak 7: Konfiguracija / instalacija softvera

Konfigurirajte svoj Pi da koristi GPS modul na UART -u

sudo vi /boot/cmdline.txt

promjena:

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

do:

dwc_otg.lpm_enable = 0 konzola = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = rok rootwait

(npr. uklonite konzolu = ttyAMA0, 115200 i ako postoji, kgdboc = ttyAMA0, 115200)

Imajte na umu da biste mogli vidjeti console = serial0, 115200 ili console = ttyS0, 115200 i trebali biste ukloniti te dijelove linije ako postoje.

Pokrenite sljedeće naredbe:

sudo systemctl stop [email protected]

sudo systemctl onemogući [email protected]

Instaliranje GPS modula Za testiranje prisilite USB uređaj da se poveže na gpsd

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

sudo systemctl stop gpsd.socket

sudo killall gpsd

sudo dpkg-ponovno konfigurirajte gpsd

sudo vi/etc/default/gpsd

# Zadane postavke za gpsd. START_DAEMON = "true" GPSD_OPTIONS = "-n" DEVICES = "/dev/ttyS0" USBAUTO = "false" GPSD_SOCKET = "/var/run/gpsd.sock"

Provjerite radi li naredba

cgps -s

DHT11 Instalirajte cd ~

git clone

cd Adafruit_Python_DHT/

sudo python setup.py install

sudo python ez_setup.py

cd primjeri/

vi simpletest.py

Promenite sledeći red:

senzor = Adafruit_DHT. DHT11

Komentarišite liniju

pin = 'P8_11'

Dekomentirajte liniju i promijenite pin broj na 16

pin = 16

Pokrenite test

python simpletest.py

Trebali biste vidjeti metričko očitanje temperature i vlažnosti prikazano na komandnoj liniji.

Postavljanje i pokretanje skripti cd ~

git clone

Korak 8: Instalirajte Alate za nadgledanje vožnje i evidentiranje DB -a

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

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

Dodajte sljedeći redak na kraj datoteke:

lokalna lozinka za sve pi

sudo -i -u postgres

psql

kreirajte lozinku za lozinku pi 'lozinka ovdje';

promenite ulogu pi prijavljivanja;

alter role pi superuser;

du

(trebali biste vidjeti svog korisnika PI -a s dodijeljenim dozvolama)

kreirati bazu podataka driving_statistics;

q

Izlaz

psql -d driving_statistics

Pokrenite sljedeće upite:

CREATE TABLE driving_stats (id serijski broj, vremenska oznaka bez vremenske zone NOT NULL, new_trip_start vremenska oznaka bez vremenske zone NULL, gps_latitude double preciznost, gps_longitude dvostruka preciznost, gps_altitude realna, gps_speed stvarna, gps_climb realna, gps_track stvarna, locale_adress tekst, locale_adress tekst, locale_adress tekst, locale_adress tekst, locale_adreact tekst, tekst zemljepisnog_mjesta, tekst mjesne_zemlje, tekst lokalnog_zip koda, unutrašnji_temperat stvaran, unutrašnji_sredina stvarnog vremena, vremenska oznaka vremenskog_vremena, sažeti tekst vremenskog_vremena, tekst vremenskog_ikona, vremenski_prividnaTemperatura stvarna, stvarna_vlažnost_vremena, vremenski_precipIntensitet stvarni, vremenski_precipProbabilnost_vjerni;

CREATE UNIQUE INDEX time_idx ON vozačke_stats (vrijeme);

Hack je potreban kako bi GPSD radio s UART vezom pri ponovnom pokretanju sudo su

crontab -e

@reboot /bin /sleep 5; killall gpsd

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

Kreirajte mapu dnevnika za čuvanje podataka mkdir/home/pi/TripComputer/computer/logs

Korak 9: Pokretanje Crontab skripti - Pi & Root

Podesite skripte za pokretanje pri pokretanju

crontab -e

Dodajte sljedeće redove

@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

Postavite crontab root korisnika kako biste bili sigurni da se GPS modul ispravno povezuje

sudo su

crontab -e

Dodajte sljedeće redove

@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

Korak 10: Konfigurirajte za povezivanje s Vremenom i Nadzornom pločom (izborno)

Na kraju kreirajte lokalne postavke potrebne za pokretanje putnog računara

Pronađite datoteku /computer/includes/settings.shadow.py

Kreirajte vlastitu verziju datoteke postavki pod nazivom jednostavno settings.py

weather.io API ključ za lokalne vremenske informacije weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'API KLJUČ OVDJE'

ako imate pokrenuti projekt čvorišta uređaja (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'

ako imate pokrenut projekt telefona nadzorne ploče (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'

Korak 11: Montirajte na crticu / montirajte vlažni stalak i završeno

Montirajte na crticu / montirajte vlažno i završeno!
Montirajte na crticu / montirajte vlažno i završeno!
Montirajte na crticu / montirajte vlažno i završeno!
Montirajte na crticu / montirajte vlažno i završeno!

Mount on Dash

Mount Humidistat dalje od direktnog sunca

Ponovo pokrenite svoj RPi i trebali biste biti spremni za rad!

Preporučuje se: