İçindekiler:

TripComputer - GPS Yol Bilgisayarı ve Aracınız İçin Hava Durumu Modülü: 11 Adım (Resimlerle)
TripComputer - GPS Yol Bilgisayarı ve Aracınız İçin Hava Durumu Modülü: 11 Adım (Resimlerle)

Video: TripComputer - GPS Yol Bilgisayarı ve Aracınız İçin Hava Durumu Modülü: 11 Adım (Resimlerle)

Video: TripComputer - GPS Yol Bilgisayarı ve Aracınız İçin Hava Durumu Modülü: 11 Adım (Resimlerle)
Video: Captiva LTZ Yol Bilgisayarı ve Dijital Klima Kullanımı ( using a trip computer and air conditioner ) 2024, Kasım
Anonim
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü
TripComputer - Aracınız için GPS Yol Bilgisayarı ve Hava Durumu Modülü

Gösterge panelinde bir navigasyon bilgisayarı olması için GPS koparma modülünü ve 2 küçük Digole ekranını kullanan harika bir ahududu pi projesi.

Adım 1: RaspberriPi Sabit Diski Flashlama / Gerekli Yazılımı Yükleme (Ubuntu Linux Kullanarak)

"RASPBIAN JESSIE LITE VERSİYONU"nu indirin

DashboardPI için yeni sabit diskinizi oluşturun

MicroSD'yi USB adaptörü aracılığıyla bilgisayarınıza takın ve dd komutunu kullanarak disk görüntüsünü oluşturun

Takılı microSD kartınızı df -h komutuyla bulun, bağlantısını kesin ve disk copy dd komutuyla disk görüntüsünü oluşturun

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

$ umount /dev/sdb1

Dikkat: komutun tamamen doğru olduğundan emin olun, bu komutla diğer disklere zarar verebilirsiniz.

if=RASPBIAN JESSIE FULL VERSION görüntü dosyasının konumu=microSD kartınızın konumu

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (not: bu durumda /dev/sdb'dir, /dev/sdb1, mikroSD)

RaspberriPi'nizi kurma

Yeni microSD kartınızı raspberrypi'ye takın ve HDMI bağlantı noktasına bağlı bir monitörle açın

Giriş yapmak

kullanıcı: pi pass: ahududu

Güvenlik için hesap şifrenizi değiştirin (terminalden)

sudo şifresi

RaspberriPi Gelişmiş Seçeneklerini Etkinleştir (terminalden)

sudo raspi yapılandırması

Seçin: 1 Dosya Sistemini Genişlet

9 Gelişmiş Seçenek

A2 Ana Bilgisayar Adı "Yol Bilgisayarı" olarak değiştirin

A4 SSH SSH Sunucusunu Etkinleştir

A7 I2C i2c arayüzünü etkinleştir

İngilizce/ABD Klavyesini Etkinleştir

sudo nano /etc/varsayılan/klavye

Aşağıdaki satırı değiştirin: XKBLAYOUT="us"

Klavye düzeni değişiklikleri / dosya sisteminin etkili olması için yeniden boyutlandırılması için PI'yi yeniden başlatın

$ sudo kapatma -r şimdi

WiFi'nize Otomatik Bağlanın

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Raspberrypi'nizin otomatik olarak ev WiFi'nize bağlanması için aşağıdaki satırları ekleyin (örneğin aşağıdaki örnekte kablosuz ağınız "linksys" olarak adlandırılmışsa)

network={ ssid="linksys" psk="KABLOSUZ ŞİFRE BURADA" } WiFi ağına bağlanmak için PI'yi yeniden başlatın

$ sudo kapatma -r şimdi

Artık PI'niz nihayet yerel ağda olduğuna göre, SSH aracılığıyla uzaktan oturum açabilirsiniz. Ancak önce şu anda sahip olduğu IP adresini almanız gerekir.

$ ifconfig PI'nizin IP Adresi için aşağıdaki komutun çıktısında "inet addr: 192.168. XXX. XXX" ifadesini arayın

Başka bir makineye gidin ve raspberrypi'nize ssh ile giriş yapın

$ ssh [email protected]. XXX. XXX

Gerekli paketleri yüklemeye başlayın

$ sudo apt-get güncelleme && sudo apt-get yükseltme

$ sudo apt-get kurulum temel git gpsd gpsd-clients i2c-tools libi2c-dev python3 python3-pip python-dev python-gps python-görüntüleme python-pip python-smbus rpi.gpio-psu

$ sudo pip kurulum RPi. GPIO

Yerel saat dilimi ayarlarını güncelleyin

$ sudo dpkg-tzdata'yı yeniden yapılandır

arayüzü kullanarak saat diliminizi seçin

Basit dizin l komutunu kurun [isteğe bağlı]

vi ~/.bashrc

aşağıdaki satırı ekleyin:

takma ad l='ls -lh'

kaynak ~/.bashrc

VIM varsayılan sözdizimi vurgulamasını düzeltin [isteğe bağlı]

sudo vi /etc/vim/vimrc

aşağıdaki satırın yorumunu kaldırın:

sözdizimi açık

Adım 2: Sağlanan Gerekli

Sağlanan Gerekli
Sağlanan Gerekli
Sağlanan Gerekli
Sağlanan Gerekli
Sağlanan Gerekli
Sağlanan Gerekli

2 320x240 TFT LCD Digole Ekran (x2)

DHT11 Nemlendirici

RaspberriPi Sıfır

Adafruit GPS Koparma

52mm 2in Göstergeler - cam / ve ekran çevreleri için kullanılır

2 Ölçü montajlı konteyner

3. Adım: Muhafazayı Yazdırın

Bu projenin "3DPrint/" klasöründe, 2 ekranı gösterge montaj kabının içine monte etmek için gereken Digole ekran çevrelerini üretecek olan gauges-final.stl dosyasını yazdırın.

4. Adım: Yol Bilgisayarını Oluşturma

Yol Bilgisayarını Oluşturma
Yol Bilgisayarını Oluşturma

Aşağıdaki Cihazları Pi Zero üzerindeki pinlere bağlayın

Digole (her biri): 3v / GND / SDA / SCL

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

GPS USB Modülünü HW UART bağlantıları aracılığıyla RaspberriPi'ye bağlayın GPS modülü için HW UART'ı kullanmak, Pi'nizde UART bağlantısını boşaltmak için aşağıdakileri gerektirir.

"Çapraz"-GPS modülünden TX ve RX pinlerini RPi TX'e (GPIO 14/8 pin) ve RX'e (GPIO 15/10 pin) bağlayın -- [TX, cihazda RX'e gider ve tam tersi.] Bağlayın RPi 5V'yi VIN pinine ve GPS modülü GND pinini mevcut bir RPi GND pinine bağlayın.

Adım 5: Son Montaj

Son montaj
Son montaj
Son montaj
Son montaj

Bileşenleri gösterge kasasının içinde tutmak için alt kısım için bir tahta parçası kesin.

2 adet 52mm 2 inçlik Göstergeyi alın ve üst kısımlarını kesin, biz sadece kendi ekranlarımızı, Digole ekranlarımızı monte etmek için camı ve çevreyi kullanıyoruz. Onları sıcak tutkalla yerine yapıştırın.

Adım 6: Son Montaj (devamı…)

Nihai Montaj (devamı…)
Nihai Montaj (devamı…)
Nihai Montaj (devamı…)
Nihai Montaj (devamı…)

Yukarıdaki şemayı kullanarak, her şeyi güçlü ve kalıcı hale getirmek için lehim kullanarak bileşenleri bir araya getirin.

Bileşenleri çift gösterge kasasının içine monte edin, kare şekilli Digole ekranlarının dairesel gösterge pencerelerine uyması için 3D baskılı çevreleri kullanın.

Adım 7: Yazılım Yapılandırması / Kurulumu

UART'ta GPS Modülünü kullanmak için Pi'nizi yapılandırın

sudo vi /boot/cmdline.txt

değiştirmek:

dwc_otg.lpm_enable=0 console=ttyAMA0, 115200 kgdboc=ttyAMA0, 115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 asansör=son tarih rootwait

ile:

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 asansör=son tarih rootwait

(örneğin, console=ttyAMA0, 115200 ve varsa kgdboc=ttyAMA0, 115200'ü kaldırın)

Console=serial0, 115200 veya console=ttyS0, 115200 görebileceğinizi ve varsa satırın bu kısımlarını kaldırmanız gerektiğini unutmayın.

Aşağıdaki komutları çalıştırın:

sudo systemctl [email protected]'i durdur

sudo systemctl [email protected]'i devre dışı bırakın

GPS Modülü Kurulumu Test için USB cihazınızı gpsd'ye bağlanmaya zorlayın

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

sudo systemctl gpsd.socket'i durdur

sudo killall gpsd

sudo dpkg-gpsd'yi yeniden yapılandır

sudo vi /etc/default/gpsd

# gpsd için varsayılan ayarlar. START_DAEMON="true" GPSD_OPTIONS="-n" DEVICES="/dev/ttyS0" USBAUTO="yanlış" GPSD_SOCKET="/var/run/gpsd.sock"

Komutun çalıştığından emin olun

cgps -s

DHT11 Kurulum cd'si ~

git klon

cd Adafruit_Python_DHT/

sudo python setup.py kurulumu

sudo python ez_setup.py

cd örnekleri/

vi basittest.py

Aşağıdaki satırı değiştirin:

sensör = Adafruit_DHT. DHT11

Çizgiyi yorumlayın

pin = 'P8_11'

Çizgiyi kaldırın ve pin numarasını 16 olarak değiştirin

pin = 16

testi çalıştır

python basittest.py

Komut satırında Sıcaklık ve Nem ölçümünün görüntülendiğini görmelisiniz.

Komut dosyalarını kurun ve çalıştırın cd ~

git klonu

8. Adım: Sürüş İzleme Araçlarını ve DB Günlüğünü Kurun

sudo apt-get install ifstat memcached python-memcache postgresql postgresql-katkı python-psycopg2

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

Dosyanın sonuna aşağıdaki satırı ekleyin:

yerel tüm pi şifresi

sudo -i -u postgres

psql

rol pi şifresi 'buradan şifre' oluşturun;

rol pi girişini değiştir;

rol pi süper kullanıcısını değiştir;

du

(PI kullanıcınızı verilen izinlerle görmelisiniz)

drive_statistics veritabanı oluşturun;

Q

çıkış

psql -d sürüş_istatistikleri

Aşağıdaki sorguları çalıştırın:

CREATE TABLE drive_stats (id serial, zaman dilimi NOT NULL olmadan zaman damgası, NULL saat dilimi olmadan new_trip_start zaman damgası, gps_latitude çift kesinlik, gps_longitude çift kesinlik, gps_altitude real, gps_speed real, gps_climb real, gps_track real, locale_address metni, locale_area metni, locale_city metni, 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, weather_precipIntensity real, weather_precipGerçek olasılık, weather_windSpeed);

EŞSİZ INDEX OLUŞTUR time_idx ON drive_stats (zaman);

Yeniden başlatma sırasında GPSD'nin UART bağlantısıyla çalışmasını sağlamak için gereken hack sudo su

crontab -e

@yeniden başlat /bin/uyku 5; killall gpsd

@yeniden başlat /bin/uyku 10; /usr/sbin/gpsd /dev/ttyS0 -F /var/run/gpsd.sock

Kaydedilecek veriler için günlükler klasörünü oluşturun mkdir /home/pi/TripComputer/computer/logs

Adım 9: Başlangıç Crontab Komut Dosyaları - Pi ve Kök

Önyüklemede çalışacak komut dosyalarını ayarlayın

crontab -e

Aşağıdaki satırları ekleyin

@yeniden başlat /bin/uyku 15; nohup python /home/pi/TripComputer/computer/mtk3339.py > /home/pi/TripComputer/computer/mtk3339.log 2>&1

@yeniden başlat /bin/uyku 18; nohup python /home/pi/TripComputer/computer/driving.py > /home/pi/TripComputer/computer/driving.log 2>&1

@yeniden başlat /bin/uyku 19; nohup python /home/pi/TripComputer/computer/address.py > /home/pi/TripComputer/computer/address.log 2>&1

@yeniden başlat /bin/uyku 30; nohup python /home/pi/TripComputer/computer/gauges.py > /home/pi/TripComputer/computer/gauges.log 2>&1

@yeniden başlat /bin/uyku 21; nohup python /home/pi/TripComputer/computer/locale.py > /home/pi/TripComputer/computer/locale.log 2>&1

@yeniden başlat /bin/uyku 22; nohup python /home/pi/TripComputer/computer/notification.py > /home/pi/TripComputer/computer/notification.log 2>&1

@yeniden başlat /bin/uyku 24; nohup python /home/pi/TripComputer/computer/temperature.py > /home/pi/TripComputer/computer/temperature.log 2>&1

@yeniden başlat /bin/uyku 25; nohup python /home/pi/TripComputer/computer/upload.py > /home/pi/TripComputer/computer/upload.log 2>&1

@yeniden başlat /bin/uyku 26; nohup python /home/pi/TripComputer/computer/weather.py > /home/pi/TripComputer/computer/weather.log 2>&1

@yeniden başlat /bin/uyku 30; nohup python /home/pi/TripComputer/computer/stats.py > /home/pi/TripComputer/computer/stats.log 2>&1

GPS modülünün doğru bağlandığından emin olmak için kök kullanıcı crontab'ı kurun

sudo su

crontab -e

Aşağıdaki satırları ekleyin

@yeniden başlat /bin/uyku 5; systemctl gpsd.socket'i durdur

@yeniden başlat /bin/uyku 8; killall gpsd

@yeniden başlat /bin/uyku 12; /usr/sbin/gpsd /dev/ttyS0 -F /var/run/gpsd.sock

Adım 10: Hava Durumuna ve Gösterge Tablosuna Bağlanmak için Yapılandırın (isteğe bağlı)

Son olarak, yol bilgisayarını çalıştırmak için gereken yerel ayarları oluşturun

/computer/includes/settings.shadow.py dosyasını bulun

Basitçe settings.py adlı ayar dosyasının kendi sürümünüzü oluşturun

yerel hava durumu bilgileri için tahmin.io API anahtarı weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'API ANAHTARI BURADA'

çalışan cihaz hub projeniz varsa (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'

çalışan pano telefon projeniz varsa (https://github.com/khinds10/RetroDashboard) panoSunucusu = 'https://my.server.com'

Adım 11: Dash'e Monte Edin / Humidistat'ı Monte Edin ve Tamamlandı

Dash'e Monte Edin / Humidistat'ı Dağıtın ve Bitti!
Dash'e Monte Edin / Humidistat'ı Dağıtın ve Bitti!
Dash'e Monte Edin / Humidistat'ı Dağıtın ve Bitti!
Dash'e Monte Edin / Humidistat'ı Dağıtın ve Bitti!

Dash'e Monte Et

Doğrudan Güneş'ten uzakta Humidistat Dağı

RPI'nizi yeniden başlatın ve gitmeye hazır olmalısınız!

Önerilen: