Talaan ng mga Nilalaman:

TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan: 11 Mga Hakbang (na may Mga Larawan)
TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan: 11 Mga Hakbang (na may Mga Larawan)

Video: TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan: 11 Mga Hakbang (na may Mga Larawan)

Video: TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan: 11 Mga Hakbang (na may Mga Larawan)
Video: LPG meter, Temp, Speed, GPS, oLed display, hall sensor, car trip computer, and more 2024, Hulyo
Anonim
TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan
TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan
TripComputer - GPS Trip Computer & Weather Module para sa Iyong Sasakyan
TripComputer - GPS Trip Computer & Weather Module para sa Iyong Sasakyan
TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan
TripComputer - GPS Trip Computer & Module ng Panahon para sa Iyong Sasakyan

Isang cool na proyekto ng raspberry pi na gumagamit ng module ng breakout ng GPS at 2 maliit na ipinapakita ng Digole upang magkaroon ng isang nabigasyon na computer sa iyong dash.

Hakbang 1: Flashing RaspberriPi Hard Disk / I-install ang Kinakailangan na Software (Paggamit ng Ubuntu Linux)

I-download ang "RASPBIAN JESSIE LITE VERSION"

Lumikha ng iyong bagong hard disk para sa DashboardPI

Ipasok ang microSD sa iyong computer sa pamamagitan ng USB adapter at likhain ang imahe ng disk gamit ang dd command

Hanapin ang iyong ipinasok na microSD card sa pamamagitan ng utos na df -h, i-unmount ito at likhain ang imahe ng disk gamit ang disk copy dd command

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

$ umount / dev / sdb1

Pag-iingat: siguraduhin na ang utos ay ganap na tumpak, maaari mong mapinsala ang iba pang mga disk sa utos na ito

kung = lokasyon ng RASPBIAN JESSIE FULL VERSION file ng imahe ng = lokasyon ng iyong microSD card

$ sudo dd bs = 4M kung = / path / to / raspbian-jessie-lite.img ng = / dev / sdb (tala: sa kasong ito, ito ay / dev / sdb, / dev / sdb1 ay isang mayroon nang partisyon ng pabrika sa microSD)

Pagse-set up ng iyong RaspberriPi

Ipasok ang iyong bagong microSD card sa raspberrypi at paganahin ito gamit ang isang monitor na konektado sa HDMI port

Mag log in

gumagamit: pi pass: raspberry

Baguhin ang password ng iyong account para sa seguridad (mula sa terminal)

sudo passwd pi

Paganahin ang RaspberriPi Advanced na Mga Pagpipilian (mula sa terminal)

sudo raspi-config

Piliin: 1 Palawakin ang System ng File

9 Mga advanced na pagpipilian

Palitan ito ng A2 Hostname sa "TripComputer"

A4 SSH Paganahin ang SSH Server

A7 I2C Paganahin ang i2c interface

Paganahin ang English / US Keyboard

sudo nano / etc / default / keyboard

Baguhin ang sumusunod na linya: XKBLAYOUT = "us"

I-reboot ang PI para sa mga pagbabago sa layout ng Keyboard / pagbabago ng laki ng file system upang magkabisa

$ sudo shutdown -r ngayon

Awtomatikong Kumonekta sa iyong WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Idagdag ang mga sumusunod na linya upang awtomatikong kumonekta ang iyong raspberrypi sa iyong WiFi sa bahay (kung ang iyong wireless network ay pinangalanang "linksys" halimbawa, sa sumusunod na halimbawa)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD DITO"} I-reboot ang PI upang kumonekta sa WiFi network

$ sudo shutdown -r ngayon

Ngayon na ang iyong PI ay sa wakas ay nasa lokal na network, maaari kang mag-login nang malayuan dito sa pamamagitan ng SSH. Ngunit kailangan mo munang makuha ang IP address na kasalukuyang mayroon ito.

$ ifconfig Hanapin ang "inet addr: 192.168. XXX. XXX" sa output ng sumusunod na command para sa IP Address ng iyong PI

Pumunta sa isa pang makina at mag-login sa iyong raspberrypi sa pamamagitan ng ssh

$ ssh [email protected]. XXX. XXX

Simulang I-install ang kinakailangang mga pakete

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

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

$ sudo pip i-install ang RPi. GPIO

I-update ang mga setting ng lokal na timezone

$ sudo dpkg-reconfigure tzdata

piliin ang iyong timezone gamit ang interface

I-setup ang simpleng direktoryo l utos [opsyonal]

vi ~ /.bashrc

idagdag ang sumusunod na linya:

alyas l = 'ls -lh'

pinagmulan ~ /.bashrc

Ayusin ang VIM default na syntax na pagha-highlight ng [opsyonal]

sudo vi / etc / vim / vimrc

i-komento ang sumusunod na linya:

syntax sa

Hakbang 2: Kinakailangan na Kinakailangan

Kinakailangan na Kailangan
Kinakailangan na Kailangan
Kinakailangan na Kailangan
Kinakailangan na Kailangan
Kinakailangan na Kailangan
Kinakailangan na Kailangan

2 320x240 TFT LCD Digole Display (x2)

DHT11 Humidistat

RaspberriPi Zero

Pag-breakout ng Adafruit GPS

52mm 2in Gauges - ginamit para sa salamin / at mga nakapaligid na screen

2 Sukatin ang lalagyan ng bundok

Hakbang 3: I-print ang Enclosure

Sa folder na "3DPrint /" ng proyektong ito, i-print ang gauges-final.stl file na gagawa ng pagpapakita ng Digole na mga paligid na kinakailangan upang mai-mount ang 2 mga screen sa loob ng gauge mount container.

Hakbang 4: Pagbuo ng Trip Computer

Pagbuo ng Trip Computer
Pagbuo ng Trip Computer

Ikonekta ang mga sumusunod na Device sa mga pin sa Pi Zero

Digole (bawat isa): 3v / GND / SDA / SCL

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

Ikonekta ang Module ng GPS USB sa RaspberriPi sa pamamagitan ng mga koneksyon sa HW UART Ang paggamit ng HW UART para sa module ng GPS ay nangangailangan ng sumusunod upang mapalaya ang koneksyon ng UART sa iyong Pi.

"Cross" -Konekta ang mga pin ng TX at RX mula sa module ng GPS patungo sa RPi TX (GPIO 14/8 pin) at RX (GPIO 15/10 pin) - [Ang TX ay papunta sa RX sa aparato at vice versa.] Ikonekta RPi 5V sa VIN pin at ang module ng GPS na GND pin sa isang magagamit na RPi GND pin.

Hakbang 5: Pangwakas na Assembly

Huling pagtitipon
Huling pagtitipon
Huling pagtitipon
Huling pagtitipon

Gupitin ang isang piraso ng kahoy para sa ilalim upang hawakan ang mga sangkap sa loob ng gauge casing.

Kunin ang 2 52mm 2in Gauges at putulin ang mga tuktok, ginagamit lamang namin ang baso at palibutan upang mai-mount ang aming sariling mga display, ipinapakita ng Digole. Idikit ang mga ito sa lugar na may mainit na pandikit.

Hakbang 6: Huling Assembly (cont…)

Final Assembly (cont…)
Final Assembly (cont…)
Final Assembly (cont…)
Final Assembly (cont…)

Gamit ang eskematiko sa itaas ng kawad nang magkasama ang mga sangkap na gumagamit ng panghinang upang gawing malakas at permanente ang lahat.

I-mount ang mga sangkap sa loob ng dual gauge casing, gamitin ang 3D na naka-print na mga paligid upang magkasya ang mga hugis parisukat na ipinakitang Digole sa mga pabilog na windows ng gauge.

Hakbang 7: Pag-configure / Pag-install ng Software

I-configure ang iyong Pi upang magamit ang Module ng GPS sa UART

sudo vi /boot/cmdline.txt

baguhin:

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

sa:

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

(hal., alisin ang console = ttyAMA0, 115200 at kung doon, kgdboc = ttyAMA0, 115200)

Tandaan na maaari mong makita ang console = serial0, 115200 o console = ttyS0, 115200 at dapat na alisin ang mga bahagi ng linya kung mayroon.

Patakbuhin ang mga sumusunod na utos:

sudo systemctl ihinto ang [email protected]

sudo systemctl huwag paganahin ang [email protected]

Pag-install ng Modyul ng GPS Para sa pagsubok pilitin ang iyong USB aparato na kumonekta sa gpsd

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

sudo systemctl ihinto ang gpsd.socket

sudo killall gpsd

sudo dpkg-reconfigure gpsd

sudo vi / etc / default / gpsd

# Mga default na setting para sa gpsd. START_DAEMON = "true" GPSD_OPTIONS = "- n" DEVICES = "/ dev / ttyS0" USBAUTO = "false" GPSD_SOCKET = "/ var / run / gpsd.sock"

Tiyaking gumagana ang utos

cgps -s

DHT11 Mag-install ng cd ~

git clone

cd Adafruit_Python_DHT /

sudo python setup.py install

sudo python ez_setup.py

mga halimbawa ng cd /

vi pinakasimpleng.py

Baguhin ang sumusunod na linya:

sensor = Adafruit_DHT. DHT11

I-comment ang linya sa linya

pin = 'P8_11'

Alisan ng puna ang linya at baguhin ang numero ng pin sa 16

pin = 16

Patakbuhin ang pagsubok

python simpletest.py

Dapat mong makita ang isang panukat na pagbabasa ng Temp at Humidity na ipinakita sa linya ng utos.

I-setup at Patakbuhin ang cd ng mga script ~

git clone

Hakbang 8: I-install ang Mga Tool sa Pagsubaybay sa Pagmamaneho at Pag-log ng DB

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

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

Idagdag ang sumusunod na linya sa dulo ng file:

lokal lahat ng password ng pi

sudo -i -u postgres

psql

lumikha ng tungkulin pi password 'password dito';

baguhin ang papel na ginagampanan sa pag-login;

baguhin ang papel na ginagampanan pi superuser;

du

(dapat mong makita ang iyong gumagamit ng PI na may mga pahintulot na ipinagkaloob)

lumikha ng database ng pagmamaneho_statistics;

q

labasan

psql -d pagmamaneho_statistics

Patakbuhin ang mga sumusunod na query:

GUMAWA NG TABLE driver_stats (serial ng id, timestamp ng oras nang walang time zone HINDI NUL, bagong_trip_start timestamp nang walang time zone NULL, gps_latitude double Precision, gps_longitude double Precision, gps_altitude real, gps_speed real, gps_climb real, gps_track real, locale_address text, lokal na teksto, teksto ng lokal na lokasyon, teksto ng lokal na lokasyon, teksto ng lokal na_zipcode, sa loob ng real, loob ng real, loob ng oras, timstamp ng panahon, teksto ng panahon, teksto ng panahon

LUMIKHA NG NATATANGING INDEX oras_idx SA pagmamaneho_stats (oras);

Kinakailangan ang hack upang makatrabaho ang GPSD na may koneksyon sa UART sa reboot sudo su

crontab -e

@reboot / bin / sleep 5; killall gpsd

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

Lumikha ng folder ng mga tala para ma-save ang data mkdir / home / pi / TripComputer / computer / log

Hakbang 9: Mga Startup Crontab Script - Pi & Root

I-setup ang mga script upang tumakbo sa boot

crontab -e

Idagdag ang mga sumusunod na linya

@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/diving.py> /home/pi/TripComputer/computer/diving.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

I-set up ang root user crontab upang matiyak na ang module ng GPS ay nag-uugnay nang tama

sudo su

crontab -e

Idagdag ang mga sumusunod na linya

@reboot / bin / sleep 5; ihinto ang systemctl gpsd.socket

@reboot / bin / sleep 8; killall gpsd

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

Hakbang 10: I-configure upang Kumonekta sa Panahon at Dashboard (opsyonal)

Panghuli lumikha ng mga lokal na setting na kinakailangan upang patakbuhin ang computer ng paglalakbay

Hanapin ang file /computer/includes/settings.shadow.py

Lumikha ng iyong sariling bersyon ng mga setting ng file na pinangalanang simpleng setting.py

forecast.io API key para sa lokal na impormasyon sa panahon na panahonAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'API KEY DITO'

kung mayroon kang pagpapatakbo ng proyekto ng aparato hub (https://github.com/khinds10/DeviceHub) deviceServer = 'https://my.server.com'

kung mayroon kang proyekto sa dashboard phone na tumatakbo (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'

Hakbang 11: I-mount sa Dash / Mount Humidistat at Tapos na

I-mount sa Dash / Mount Humidistat at Tapos na!
I-mount sa Dash / Mount Humidistat at Tapos na!
I-mount sa Dash / Mount Humidistat at Tapos na!
I-mount sa Dash / Mount Humidistat at Tapos na!

I-mount sa Dash

Bundok Humidistat na malayo sa direktang Araw

I-reboot ang iyong RPi at dapat handa ka nang umalis!

Inirerekumendang: