Satura rādītājs:
- 1. darbība: RaspberriPi cietā diska mirgošana / nepieciešamās programmatūras instalēšana (izmantojot Ubuntu Linux)
- 2. darbība. Nepieciešams piegādāt
- 3. darbība: izdrukājiet pielikumu
- 4. solis: ceļojuma datora izveide
- 5. solis: galīgā montāža
- 6. darbība: galīgā montāža (turpinājums …)
- 7. darbība: programmatūras konfigurēšana / instalēšana
- 8. darbība: instalējiet braukšanas uzraudzības rīkus un DB reģistrēšanu
- 9. solis: Crontab skriptu palaišana - Pi & Root
- 10. darbība. Konfigurēšana, lai izveidotu savienojumu ar laika apstākļiem un informācijas paneli (pēc izvēles)
- 11. solis: uzstādiet uz domuzīmes / uzstādiet mitrinātāju un esat pabeidzis
Video: TripComputer - GPS ceļojuma dators un laika apstākļu modulis jūsu automašīnai: 11 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Foršs aveņu pi projekts, kas izmanto GPS izlaušanās moduli un 2 mazus Digole displejus, lai jūsu domuzīmē būtu navigācijas dators.
1. darbība: RaspberriPi cietā diska mirgošana / nepieciešamās programmatūras instalēšana (izmantojot Ubuntu Linux)
Lejupielādēt "RASPBIAN JESSIE LITE VERSION"
Izveidojiet jauno cieto disku DashboardPI
Ievietojiet microSD datorā, izmantojot USB adapteri, un izveidojiet diska attēlu, izmantojot komandu dd
Atrodiet ievietoto microSD karti, izmantojot komandu df -h, atvienojiet to un izveidojiet diska attēlu ar komandu disk copy dd
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Uzmanību: pārliecinieties, ka komanda ir pilnīgi precīza, ar šo komandu varat sabojāt citus diskus
if = RASPBIAN JESSIE FULL VERSION attēla faila atrašanās vieta = jūsu microSD kartes atrašanās vieta
$ sudo dd bs = 4M, ja =/ceļš/uz/raspbian-jessie-lite.img no =/dev/sdb (piezīme: šajā gadījumā tas ir/dev/sdb,/dev/sdb1 bija esošs rūpnīcas nodalījums microSD)
RaspberriPi iestatīšana
Ievietojiet jauno microSD karti avenes un ieslēdziet to, izmantojot monitoru, kas pievienots HDMI portam
Pieslēgties
lietotājs: pi pass: aveņu
Mainiet konta paroli drošības nolūkos (no termināļa)
sudo passwd pi
Iespējot RaspberriPi papildu opcijas (no termināļa)
sudo raspi-config
Izvēlieties: 1 Izvērst failu sistēmu
9 Papildu opcijas
A2 resursdatora nosaukums mainiet to uz "TripComputer"
A4 SSH Iespējot SSH serveri
A7 I2C Iespējot i2c saskarni
Iespējojiet angļu/ASV tastatūru
sudo nano/etc/noklusējuma/tastatūra
Mainiet šādu rindu: XKBLAYOUT = "mēs"
Pārstartējiet PI, lai tastatūras izkārtojuma izmaiņas / failu sistēmas izmēru maiņa stātos spēkā
$ sudo izslēgšana -r tagad
Automātisks savienojums ar WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Pievienojiet šādas rindiņas, lai jūsu aveņu pipari automātiski izveidotu savienojumu ar jūsu mājas WiFi (ja jūsu bezvadu tīkla nosaukums ir "linksys", piemēram, šajā piemērā)
tīkls = {ssid = "linksys" psk = "BEZVADA PAROLE ŠEIT"} Pārstartējiet PI, lai izveidotu savienojumu ar WiFi tīklu
$ sudo izslēgšana -r tagad
Tagad, kad jūsu PI beidzot ir lokālajā tīklā, varat tajā attālināti pieteikties, izmantojot SSH. Bet vispirms jums ir jāiegūst IP adrese, kas tai pašlaik ir.
$ ifconfig Meklējiet "inet addr: 192.168. XXX. XXX" šajā komandas izejā jūsu PI IP adresei
Dodieties uz citu mašīnu un piesakieties savā raspberrypi, izmantojot ssh
$ ssh [email protected]. XXX. XXX
Sāciet nepieciešamo pakotņu instalēšanu
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install build-essential git gpsd gpsd-klienti i2c-tools libi2c-dev python3 python3-pip python-dev python-gps python-imaging python-pip python-smbus rpi.gpio vim python-psutil
$ sudo pip instalējiet RPi. GPIO
Atjauniniet vietējās laika joslas iestatījumus
$ sudo dpkg-pārkonfigurēt tzdata
izmantojot interfeisu, izvēlieties savu laika joslu
Iestatiet vienkāršo direktoriju l komanda [pēc izvēles]
vi ~/.bashrc
pievienojiet šādu rindu:
pseidonīms l = 'ls -lh'
avots ~/.bashrc
Labot VIM noklusējuma sintakses izcelšanu [pēc izvēles]
sudo vi/etc/vim/vimrc
norakstiet šādu rindu:
sintakse ir ieslēgta
2. darbība. Nepieciešams piegādāt
2 collu 320x240 TFT LCD digola displejs (x2)
Mitrinātājs DHT11
RaspberriPi Zero
Adafruit GPS izlaušanās
52 mm 2 collu mērinstrumenti - izmanto stikla / un ekrāna apšuvumam
2 Manometra stiprinājuma trauks
3. darbība: izdrukājiet pielikumu
Šī projekta mapē "3DPrint/" izdrukājiet failu gauges-final.stl, kas radīs Digole displeja aploksnes, kas nepieciešamas, lai uzstādītu 2 ekrānus mērinstrumentu stiprinājuma tvertnes iekšpusē.
4. solis: ceļojuma datora izveide
Pievienojiet Pi Zero tapas šīm ierīcēm
Digole (katrs): 3v / GND / SDA / SCL
DHT11: 5v / GPIO 16 (36) / GND
Savienojiet GPS USB moduli ar RaspberriPi, izmantojot HW UART savienojumus Lai izmantotu HW UART GPS modulim, ir nepieciešams, lai atbrīvotu UART savienojumu jūsu Pi.
"Krusts"-savienojiet TX un RX tapas no GPS moduļa ar RPi TX (GPIO 14/8 pin) un RX (GPIO 15/10 pin)-[TX iet uz RX ierīcē un otrādi.] Savienojiet RPi 5V uz VIN tapu un GPS moduļa GND tapu uz pieejamo RPi GND tapu.
5. solis: galīgā montāža
Izgrieziet koka gabalu apakšai, lai noturētu komponentus mērinstrumenta korpusa iekšpusē.
Paņemiet 2 52 mm 2 collu mērierīces un nogrieziet galotnes, mēs tikai izmantojam stiklu un ieskaujošo malu, lai uzstādītu savus displejus, Digole displejus. Līmējiet tos vietā ar karstu līmi.
6. darbība: galīgā montāža (turpinājums …)
Izmantojot iepriekš minēto shematisko vadu, savienojiet komponentus, izmantojot lodmetālu, lai viss būtu stiprs un noturīgs.
Uzstādiet komponentus dubultā gabarīta korpusā, izmantojiet 3D drukātās aploces, lai kvadrātveida Digole displeji būtu piemēroti apļveida gabarīta logiem.
7. darbība: programmatūras konfigurēšana / instalēšana
Konfigurējiet savu Pi, lai izmantotu GPS moduli UART
sudo vi /boot /cmdline.txt
mainīt:
dwc_otg.lpm_enable = 0 konsole = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 konsole = tty1 sakne =/dev/mmcblk0p2 rootfstype = ext4 lifts = termiņš rootwait
uz:
dwc_otg.lpm_enable = 0 konsole = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = termiņš rootwait
(piemēram, noņemiet konsoli = ttyAMA0, 115200 un, ja ir, kgdboc = ttyAMA0, 115200)
Ņemiet vērā, ka, iespējams, redzēsit konsoli = serial0, 115200 vai konsole = ttyS0, 115200, un šīs līnijas daļas ir jānoņem, ja tādas ir.
Palaidiet šādas komandas:
sudo systemctl apturēt [email protected]
sudo systemctl atspējot [email protected]
GPS moduļa instalēšana Pārbaudei piespiediet USB ierīci izveidot savienojumu ar GPS
sudo gpsd/dev/ttyS0 -F /var/run/gpsd.sock
sudo systemctl stop gpsd.socket
sudo killall gpsd
sudo dpkg-pārkonfigurējiet gpsd
sudo vi/etc/default/gpsd
# GPS iestatījumi pēc noklusējuma. START_DAEMON = "true" GPSD_OPTIONS = "-n" DEVICES = "/dev/ttyS0" USBAUTO = "false" GPSD_SOCKET = "/var/run/gpsd.sock"
Pārliecinieties, vai komanda darbojas
cgps -s
DHT11 Instalējiet cd ~
git klons
cd Adafruit_Python_DHT/
sudo python setup.py instalēt
sudo python ez_setup.py
CD piemēri/
vi simpletest.py
Mainiet šādu rindu:
sensors = Adafruit_DHT. DHT11
Komentējiet līniju
pin = 'P8_11'
Noņemiet komentāru no rindas un mainiet tapas numuru uz 16
tapa = 16
Izpildiet testu
python simpletest.py
Jums vajadzētu redzēt komandrindā parādītu metrisko temperatūras un mitruma rādījumu.
Iestatiet un palaidiet skriptus cd ~
git klons
8. darbība: instalējiet braukšanas uzraudzības rīkus un DB reģistrēšanu
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Faila beigās pievienojiet šādu rindu:
vietējā all pi parole
sudo -i -u postgres
psql
izveidot lomu pi parole 'parole šeit';
mainīt lomu pi pieteikšanās;
mainīt lomu pi superlietotājs;
du
(jums vajadzētu redzēt savu PI lietotāju ar piešķirtajām atļaujām)
izveidot datu bāzes braukšanas_statistiku;
q
Izeja
psql -d braukšanas_statistika
Izpildiet šādus vaicājumus:
CREATE TABLE driving_stats (id sērija, laika zīmogs bez laika joslas NOT NULL, new_trip_start timestamp bez laika joslas NULL, gps_latitude dubultā precizitāte, gps_longitude dubultā precizitāte, gps_altitude real, gps_speed real, gps_climb real, gps_track real, locale_addate_tex,, 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_precip)
CREATE UNIQUE INDEX time_idx ON driving_stats (laiks);
Uzlaušana nepieciešama, lai GPSD darbotos ar UART savienojumu, pārstartējot sudo su
crontab -e
@reboot /bin /sleep 5; killall gpsd
@reboot /bin /sleep 10; /usr/sbin/gpsd/dev/ttyS0 -F /var/run/gpsd.sock
Izveidojiet žurnālu mapi saglabājamajiem datiem mkdir/home/pi/TripComputer/computer/logs
9. solis: Crontab skriptu palaišana - Pi & Root
Iestatiet skriptus, lai tie darbotos sāknēšanas laikā
crontab -e
Pievienojiet šādas rindas
@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> un 1
@reboot /bin /sleep 21; nohup python /home/pi/TripComputer/computer/locale.py> /home/pi/TripComputer/computer/locale.log 2> un 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> un 1
@reboot /bin /sleep 26; nohup python /home/pi/TripComputer/computer/weather.py> /home/pi/TripComputer/computer/weather.log 2> un 1
@reboot /bin /sleep 30; nohup python /home/pi/TripComputer/computer/stats.py> /home/pi/TripComputer/computer/stats.log 2> un 1
Iestatiet saknes lietotāja crontab, lai pārliecinātos, ka GPS modulis ir pareizi savienots
sudo su
crontab -e
Pievienojiet šādas rindas
@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
10. darbība. Konfigurēšana, lai izveidotu savienojumu ar laika apstākļiem un informācijas paneli (pēc izvēles)
Visbeidzot izveidojiet vietējos iestatījumus, kas nepieciešami brauciena datora palaišanai
Atrodiet failu /computer/includes/settings.shadow.py
Izveidojiet savu iestatījumu faila versiju ar nosaukumu vienkārši settings.py
prognozes.io API atslēga vietējai laika informācijai weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'API KEY HERE'
ja darbojas ierīces centrmezgla projekts (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'
ja jums darbojas informācijas paneļa tālruņa projekts (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'
11. solis: uzstādiet uz domuzīmes / uzstādiet mitrinātāju un esat pabeidzis
Uzstādiet uz domuzīmes
Uzstādiet mitrinātāju prom no tiešiem saules stariem
Pārstartējiet savu RPi, un jums jābūt gatavam darbam!
Ieteicams:
(IOT projekts) Iegūstiet laika apstākļu datus, izmantojot ESP8266 un Openweather API: 5 soļi
(IOT projekts) Iegūstiet laika apstākļu datus, izmantojot ESP8266 un Openweather API: Šajā pamācībā mēs izveidosim vienkāršu IOT projektu, kurā mēs iegūstam mūsu pilsētas laika apstākļu datus no vietnes openweather.com/api un parādām tos, izmantojot apstrādes programmatūru
Izveidojiet laika apstākļu informācijas paneli, izmantojot Dark Sky API: 5 soļi (ar attēliem)
Izveidojiet laika apstākļu informācijas paneli, izmantojot Dark Sky API: Dark Sky specializējas laika prognozēšanā un vizualizācijā. Stilīgākais Dark Sky aspekts ir viņu laika apstākļu API, ko mēs varam izmantot, lai izgūtu laika apstākļu datus no gandrīz jebkuras vietas pasaulē. Tas ir ne tikai lietains vai saulains laiks, bet arī temperatūra
Āra, laika apstākļu izturīgs stiprinājums Lifx vai Hue: 5 soļi (ar attēliem)
Āra, laika apstākļu necaurlaidīgs stiprinājums Lifx vai Hue: Es gribēju apgaismot savu dārzu ar savām Lifx Color 1000 spuldzēm vakara baudīšanai, kā arī gadījuma rakstura piemājas rīvēšanai. Ņemot vērā sīpolu neaizsargātību pret mitrumu un karstumu, es nevarēju atrast tirgū nevienu armatūru, kas pienācīgi aizsargātu t
Galīgais laika apstākļu gaisa balonu datu reģistrētājs: 9 soļi (ar attēliem)
Augstākā laika apstākļu gaisa balonu datu reģistrētājs: ierakstiet laika apstākļu gaisa balonu datus ar galīgo laika apstākļu gaisa balonu datu reģistrētāju. Laika balons augstā augstumā, pazīstams arī kā augstkalnu balons vai HAB, ir milzīgs balons, kas piepildīts ar hēliju. Šie baloni ir platforma
Uz ESP8266 balstīts tīkla pulkstenis un laika apstākļu monitors: 3 soļi (ar attēliem)
Uz ESP8266 balstīts tīkla pulkstenis un laika apstākļu monitors: īss un vienkāršs nedēļas nogales projekts ar ESP8266 un 0,96 collu 128x64 OLED displeju. Ierīce ir tīkla pulkstenis, t.i., iegūst laiku no ntp serveriem. Tas arī parāda laika apstākļu informāciju ar ikonām no vietnes openweathermap.org Nepieciešamās daļas: 1. ESP8266 modulis (A