Turinys:
- 1 veiksmas: mirksi „RaspberriPi“standusis diskas / įdiekite reikiamą programinę įrangą (naudojant „Ubuntu Linux“)
- 2 žingsnis: reikalingas
- 3 veiksmas: atspausdinkite priedą
- 4 žingsnis: kelioninio kompiuterio kūrimas
- 5 žingsnis: galutinis surinkimas
- 6 žingsnis: galutinis surinkimas (tęsinys …)
- 7 veiksmas: programinės įrangos konfigūravimas / diegimas
- 8 veiksmas: įdiekite vairavimo stebėjimo įrankius ir DB registravimą
- 9 veiksmas: paleiskite „Crontab“scenarijus - „Pi & Root“
- 10 veiksmas: sukonfigūruokite prisijungimą prie orų ir prietaisų skydelio (neprivaloma)
- 11 veiksmas: montuokite ant brūkšnelio / pritvirtinkite „Humidistat“ir baigsite
Video: „TripComputer“- GPS kelioninis kompiuteris ir orų modulis jūsų automobiliui: 11 žingsnių (su nuotraukomis)
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Šaunus aviečių pi projektas, kuriame naudojamas GPS išjungimo modulis ir 2 maži „Digole“ekranai, kad jūsų prietaisų skydelyje būtų navigacijos kompiuteris.
1 veiksmas: mirksi „RaspberriPi“standusis diskas / įdiekite reikiamą programinę įrangą (naudojant „Ubuntu Linux“)
Atsisiųskite „RASPBIAN JESSIE LITE VERSION“https://www.raspberrypi.org/downloads/raspbian/
Sukurkite naują standųjį diską, skirtą „DashboardPI“
Įdėkite „microSD“į kompiuterį per USB adapterį ir sukurkite disko vaizdą naudodami komandą dd
Suraskite įdėtą „microSD“kortelę naudodami komandą df -h, atjunkite ją ir sukurkite disko atvaizdą naudodami komandą disk copy dd
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Atsargiai: įsitikinkite, kad komanda yra visiškai tiksli, naudodami šią komandą galite sugadinti kitus diskus
if = RASPBIAN JESSIE FULL VERSION vaizdo failo vieta = jūsų „microSD“kortelės vieta
$ sudo dd bs = 4M, jei =/kelias/į/raspbian-jessie-lite.img iš =/dev/sdb (pastaba: šiuo atveju tai yra/dev/sdb,/dev/sdb1 buvo esamas gamyklos skaidinys „microSD“)
„RaspberriPi“nustatymas
Įdėkite naują „microSD“kortelę į avietę ir įjunkite ją naudodami monitorių, prijungtą prie HDMI prievado
Prisijungti
vartotojas: pi pass: avietė
Saugos sumetimais pakeiskite paskyros slaptažodį (iš terminalo)
sudo passwd pi
Įgalinti „RaspberriPi“išplėstines parinktis (iš terminalo)
sudo raspi-config
Pasirinkite: 1 Išplėskite failų sistemą
9 Išplėstinės parinktys
A2 pagrindinio kompiuterio pavadinimas pakeiskite jį į „TripComputer“
A4 SSH Įgalinti SSH serverį
A7 I2C Įgalinti i2c sąsają
Įgalinti anglų/JAV klaviatūrą
sudo nano/etc/default/klaviatūra
Pakeiskite šią eilutę: XKBLAYOUT = "mes"
Iš naujo paleiskite PI, kad pakeistumėte klaviatūros išdėstymą / pakeistumėte failų sistemos dydį
$ sudo išjungimas -r dabar
Automatinis prisijungimas prie „WiFi“
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Pridėkite šias eilutes, kad jūsų raspberrypi automatiškai prisijungtų prie jūsų namų „WiFi“(jei jūsų belaidis tinklas pavadintas „linksys“, pvz., Šiame pavyzdyje)
tinklas = {ssid = "linksys" psk = "BEVIELIS PASLAPTIS ČIA"} Iš naujo paleiskite PI, kad prisijungtumėte prie „WiFi“tinklo
$ sudo išjungimas -r dabar
Dabar, kai jūsų PI pagaliau yra vietiniame tinkle, galite prie jo prisijungti nuotoliniu būdu per SSH. Bet pirmiausia turite gauti dabartinį IP adresą.
$ ifconfig Ieškokite „inet addr: 192.168. XXX. XXX“šioje komandos išvestyje, skirtoje jūsų PI IP adresui
Eikite į kitą mašiną ir prisijunkite prie savo raspberrypi per ssh
$ ssh [email protected]. XXX. XXX
Pradėkite diegti reikiamus paketus
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install build-essential git gpsd gpsd-customers i2c-tools libi2c-dev python3 python3-pip python-dev python-gps python-imaging python-pip python-smbus rpi.gpio vim python-psutil
$ sudo pip įdiegti RPi. GPIO
Atnaujinkite vietinės laiko juostos nustatymus
$ sudo dpkg-reconfigure tzdata
naudodamiesi sąsaja pasirinkite savo laiko juostą
Nustatykite paprastą katalogo komandą l [neprivaloma]
vi ~/.bashrc
pridėkite šią eilutę:
slapyvardis l = 'ls -lh'
šaltinis ~/.bashrc
Ištaisykite numatytąjį VIM sintaksės paryškinimą [neprivaloma]
sudo vi/etc/vim/vimrc
nekomentuokite šios eilutės:
sintaksė įjungta
2 žingsnis: reikalingas
2 colių 320x240 TFT LCD skaitmeninis ekranas (x2)
DHT11 drėkintuvas
„RaspberriPi Zero“
Adafruit GPS Breakout
52 mm 2 colių matuokliai - naudojami stiklui ir (arba) ekranui
2 Matavimo laikiklis
3 veiksmas: atspausdinkite priedą
Šio projekto aplanke „3DPrint/“išspausdinkite failą gauges-final.stl, kuris sukurs „Digole“ekrano apvadus, reikalingus 2 ekranams montuoti matuoklio laikiklio talpykloje.
4 žingsnis: kelioninio kompiuterio kūrimas
Prijunkite šiuos įrenginius prie „Pi Zero“kaiščių
Digole (kiekvienas): 3v / GND / SDA / SCL
DHT11: 5v / GPIO 16 (36) / GND
Prijunkite GPS USB modulį prie „RaspberriPi“per HW UART jungtis Jei norite naudoti „HW UART“GPS moduliui, norint atlaisvinti UART ryšį jūsų „Pi“.
„Kryžius“-prijunkite TX ir RX kaiščius iš GPS modulio prie RPi TX (GPIO 14/8 pin) ir RX (GPIO 15/10 pin)-[TX eina į RX įrenginyje ir atvirkščiai.] RPi 5V prie VIN kaiščio ir GPS modulio GND kaiščio prie turimo RPi GND kaiščio.
5 žingsnis: galutinis surinkimas
Iškirpkite medžio gabalėlį apačioje, kad laikytumėte matmenis korpuso viduje.
Paimkite 2 52 mm 2 colių matuoklius ir nupjaukite viršutines dalis, mes tiesiog naudojame stiklą ir erdvinę erdvę, kad pritvirtintume savo ekranus, „Digole“ekranus. Klijuokite juos į vietą karštais klijais.
6 žingsnis: galutinis surinkimas (tęsinys …)
Naudodami aukščiau esančią schemą, sudėkite komponentus naudodami lydmetalį, kad viskas būtų tvirta ir pastovi.
Sumontuokite komponentus dvigubo gabarito korpuse, naudokite 3D atspausdintus apvadus, kad kvadrato formos „Digole“ekranai būtų pritaikyti prie apskrito matuoklio langų.
7 veiksmas: programinės įrangos konfigūravimas / diegimas
Konfigūruokite „Pi“, kad jis galėtų naudoti „UART“GPS modulį
sudo vi /boot/cmdline.txt
pakeisti:
dwc_otg.lpm_enable = 0 konsolė = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 konsolė = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = terminas rootwait
į:
dwc_otg.lpm_enable = 0 konsolė = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = terminas rootwait
(pvz., pašalinti konsolę = ttyAMA0, 115200 ir jei yra, kgdboc = ttyAMA0, 115200)
Atkreipkite dėmesį, kad galite matyti konsolę = serijos0, 115200 arba konsolę = ttyS0, 115200 ir pašalinti šias linijos dalis, jei jos yra.
Vykdykite šias komandas:
sudo systemctl sustabdyti [email protected]
sudo systemctl išjungti [email protected]
GPS modulio diegimas Bandymui priverskite USB įrenginį prisijungti prie GPS
sudo gpsd/dev/ttyS0 -F /var/run/gpsd.sock
sudo systemctl sustabdyti gpsd.socket
sudo killall gpsd
sudo dpkg-konfigūruoti gpsd
sudo vi/etc/default/gpsd
# Numatytieji GPS nustatymai. START_DAEMON = "true" GPSD_OPTIONS = "-n" DEVICES = "/dev/ttyS0" USBAUTO = "false" GPSD_SOCKET = "/var/run/gpsd.sock"
Įsitikinkite, kad komanda veikia
cgps -s
DHT11 Įdiekite CD ~
git klonas
cd Adafruit_Python_DHT/
sudo python setup.py įdiegti
sudo python ez_setup.py
CD pavyzdžiai/
vi simpletest.py
Pakeiskite šią eilutę:
jutiklis = Adafruit_DHT. DHT11
Komentuokite eilutę
smeigtukas = 'P8_11'
Pašalinkite eilutę ir pakeiskite PIN kodą į 16
smeigtukas = 16
Paleiskite testą
python simpletest.py
Komandinėje eilutėje turėtumėte matyti metrinį temperatūros ir drėgmės rodmenį.
Nustatykite ir paleiskite scenarijus cd ~
git klonas
8 veiksmas: įdiekite vairavimo stebėjimo įrankius ir DB registravimą
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Failo pabaigoje pridėkite šią eilutę:
vietinis visas pi slaptažodis
sudo -i -u postgres
psql
sukurti vaidmenį pi slaptažodis „slaptažodis čia“;
pakeisti vaidmenį pi prisijungimas;
alter role pi superuser;
du
(turėtumėte matyti savo PI vartotoją su suteiktais leidimais)
sukurti duomenų bazę vairavimo_statistika;
q
išeiti
psql -d vairavimo_statistika
Vykdykite šias užklausas:
KURTI TABELĘ, 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_pecw;
CREATE UNIQUE INDEX time_idx ON driving_stats (laikas);
Įsilaužimas reikalingas norint, kad GPSD veiktų su UART ryšiu iš naujo paleidžiant sudo su
crontab -e
@reboot /bin /sleep 5; killall gpsd
@reboot /bin /sleep 10; /usr/sbin/gpsd/dev/ttyS0 -F /var/run/gpsd.sock
Sukurkite žurnalų aplanką saugomiems duomenims mkdir/home/pi/TripComputer/computer/logs
9 veiksmas: paleiskite „Crontab“scenarijus - „Pi & Root“
Nustatykite scenarijus paleisti įkrovos metu
crontab -e
Pridėkite šias eilutes
@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> ir 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> ir 1
@reboot /bin /sleep 22; nohup python /home/pi/TripComputer/computer/notification.py> /home/pi/TripComputer/computer/notification.log 2> ir 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> ir 1
@reboot /bin /sleep 26; nohup python /home/pi/TripComputer/computer/weather.py> /home/pi/TripComputer/computer/weather.log 2> ir 1
@reboot /bin /sleep 30; nohup python /home/pi/TripComputer/computer/stats.py> /home/pi/TripComputer/computer/stats.log 2> ir 1
Nustatykite pagrindinį vartotojo crontab, kad įsitikintumėte, jog GPS modulis tinkamai prijungtas
sudo su
crontab -e
Pridėkite šias eilutes
@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 veiksmas: sukonfigūruokite prisijungimą prie orų ir prietaisų skydelio (neprivaloma)
Galiausiai sukurkite vietinius nustatymus, reikalingus kelioniniam kompiuteriui paleisti
Raskite failą /computer/includes/settings.shadow.py
Sukurkite savo nustatymų failo versiją, pavadintą tiesiog settings.py
prognozės.io API raktas vietinei orų informacijai weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'API KEY HERE'
jei vykdote įrenginio centro projektą (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'
jei vykdomas prietaisų skydelio telefono projektas (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'
11 veiksmas: montuokite ant brūkšnelio / pritvirtinkite „Humidistat“ir baigsite
Montuoti ant Dash
Sumontuokite „Humidistat“nuo tiesioginių saulės spindulių
Perkraukite RPi ir turėtumėte būti pasiruošę eiti!