TripComputer - GPS саяхат компьютері және сіздің көлігіңіз үшін ауа райы модулі: 11 қадам (суреттермен)
TripComputer - GPS саяхат компьютері және сіздің көлігіңіз үшін ауа райы модулі: 11 қадам (суреттермен)
Anonim
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі
TripComputer - GPS саяхат компьютері және сіздің көлігіңізге арналған ауа райы модулі

Сіздің сызықта навигациялық компьютер болуы үшін GPS -тің үзіліс модулін және 2 кішкентай Digole дисплейін қолданатын таңқурай pi салқын жобасы.

1 -қадам: RaspberriPi қатты дискінің жыпылықтауы / қажетті бағдарламалық жасақтаманы орнату (Ubuntu Linux көмегімен)

«RASPBIAN JESSIE LITE НҰСҚАСЫН» жүктеп алыңыз

DashboardPI үшін жаңа қатты дискіні жасаңыз

MicroSD картасын компьютерге USB адаптері арқылы салыңыз және dd пәрменін қолданып диск кескінін жасаңыз

DF -h пәрмені арқылы енгізілген microSD картасын табыңыз, оны шығарыңыз және дискіні көшіру dd пәрменімен дискінің суретін жасаңыз.

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/медиа/XXX/1234-5678

$ umount /dev /sdb1

Ескерту: пәрменнің толық дәл екеніне көз жеткізіңіз, сіз бұл пәрменмен басқа дискілерді зақымдауға болады

if = RASPBIAN JESSIE FULL VERSION сурет файлы = microSD картасының орналасқан жері

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of//dev/sdb (ескерту: бұл жағдайда бұл/dev/sdb,/dev/sdb1-бұл зауыттық бөлім. microSD)

RaspberriPi орнату

Жаңа microSD картасын таңқурайға салыңыз және оны HDMI портына қосылған монитормен қосыңыз

Кіру

пайдаланушы: pi pass: таңқурай

Қауіпсіздік үшін есептік жазбаның құпия сөзін өзгертіңіз (терминалдан)

sudo passwd pi

RaspberriPi кеңейтілген опцияларын қосыңыз (терминалдан)

sudo raspi-config

Таңдау: 1 Файлдық жүйені кеңейту

9 Қосымша опциялар

A2 хост атауы оны «TripComputer» етіп өзгертеді

A4 SSH SSH серверін қосыңыз

A7 I2C i2c интерфейсін қосыңыз

Ағылшын/АҚШ пернетақтасын қосыңыз

sudo nano/etc/default/keyboard

Келесі жолды өзгертіңіз: XKBLAYOUT = «us»

Күшіне ену үшін пернетақта орналасуының өзгеруіне / файлдық жүйенің өлшеміне PI қайта жүктеу

$ sudo өшіру -r қазір

Wi-Fi желісіне автоматты түрде қосылыңыз

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Таңқурайдың үйдегі WiFi желісіне автоматты түрде қосылуы үшін келесі жолдарды қосыңыз (егер сымсыз желіңіз «linksys» деп аталса, мысалы, келесі мысалда)

network = {ssid = «linksys» psk = «СЫРСЫЗ ПАРОЛЬ МЫНА ЖЕРДЕ»} WiFi желісіне қосылу үшін PI қайта жүктеңіз.

$ sudo өшіру -r қазір

Енді сіздің PI жергілікті желіде болғандықтан, оған қашықтан SSH арқылы кіруге болады. Бірақ алдымен сіз қазіргі IP мекенжайын алуыңыз керек.

$ ifconfig PI IP мекенжайы үшін келесі команданың шығысында «inet addr: 192.168. XXX. XXX» іздеңіз.

Басқа машинаға өтіп, raspberrypi -ге ssh арқылы кіріңіз

$ ssh [email protected]. XXX. XXX

Қажетті пакеттерді орнатуды бастаңыз

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

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

$ sudo pip RPi. GPIO орнатыңыз

Жергілікті уақыт белдеуінің параметрлерін жаңартыңыз

$ sudo dpkg-деректерді қайта конфигурациялау

интерфейс арқылы уақыт белдеуін таңдаңыз

Қарапайым каталогты орнатыңыз l пәрмені [міндетті емес]

vi ~/.bashrc

келесі жолды қосыңыз:

лақап аты l = 'ls -lh'

көзі ~/.bashrc

VIM әдепкі синтаксисті бөлектеуді түзету [міндетті емес]

sudo vi/etc/vim/vimrc

келесі жолды өшіріңіз:

синтаксис қосулы

2 -қадам: жеткізілім қажет

Жеткізу қажет
Жеткізу қажет
Жеткізу қажет
Жеткізу қажет
Жеткізу қажет
Жеткізу қажет

2 дюймдік 320x240 TFT LCD дисплейі (x2)

DHT11 ылғалдандырғыш

RaspberriPi Zero

Adafruit GPS Breakout

52мм 2 өлшеуіштер - экран мен әйнекті қоршау үшін қолданылады

2 өлшеуіш контейнер

3 -қадам: корпусты басып шығарыңыз

Бұл жобаның «3DPrint/» қалтасында өлшеуіш контейнерінің ішіне 2 экранды орнатуға қажетті Digole дисплейінің қоршауын шығаратын gauges-final.stl файлын басып шығарыңыз.

4 -қадам: Саяхат компьютерін құру

Саяхат компьютерін құру
Саяхат компьютерін құру

Келесі құрылғыларды Pi Zero түйреуіштеріне қосыңыз

Диголь (әрқайсысы): 3v / GND / SDA / SCL

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

HW UART қосылымдары арқылы GPS USB модулін RaspberriPi -ге жалғау GPS модулі үшін HW UART пайдалану Pi -де UART байланысын босату үшін төмендегілерді қажет етеді.

«Крест»-GPS модулінен TX және RX түйреуіштерін RPi TX (GPIO 14/8 істікшесі) мен RX (GPIO 15/10 түйреуішке) жалғаңыз-[TX құрылғыдағы RX-ке өтеді және керісінше.] Қосылу VIN түйреуішіне RPi 5V және қол жетімді RPi GND істігіне GPS модулінің GND түйреуіші.

5 -қадам: Қорытынды жиналыс

Қорытынды жиналыс
Қорытынды жиналыс
Қорытынды жиналыс
Қорытынды жиналыс

Өлшеуіш корпустың ішіндегі компененттерді ұстау үшін түбіне ағаш кесіңіз.

52 мм 2 дюймді өлшегіштерді алып, шыңдарын кесіңіз, біз тек қана дисплейлерді, Digole дисплейлерін орнату үшін әйнекті және көлемді қолданамыз. Оларды ыстық желіммен жабыстырыңыз.

6 -қадам: Қорытынды жиналыс (жалғасы …)

Қорытынды жиналыс (жалғасы …)
Қорытынды жиналыс (жалғасы …)
Қорытынды жиналыс (жалғасы …)
Қорытынды жиналыс (жалғасы …)

Жоғарыда келтірілген схеманы қолданып, компоненттерді дәнекерлеу арқылы бәрін берік және тұрақты етеді.

Компоненттерді қос калибрлі корпустың ішіне орнатыңыз, дөңгелек өлшемді терезелерге төртбұрышты Digole дисплейлерін қою үшін 3D басып шығарылған қоршауды қолданыңыз.

7 -қадам: Бағдарламалық қамтамасыз етуді конфигурациялау / орнату

UART -те GPS модулін пайдалану үшін Pi -ді конфигурациялаңыз

sudo vi /boot/cmdline.txt

өзгерту:

dwc_otg.lpm_enable = 0 консоль = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 консоль = tty1 түбір =/dev/mmcblk0p2 rootfstype = ext4 элеватор = түпкі күту мерзімі

дейін:

dwc_otg.lpm_enable = 0 консоль = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 лифті = түпкі күту мерзімі

(мысалы, консольді алып тастаңыз = ttyAMA0, 115200 және егер болса, kgdboc = ttyAMA0, 115200)

Назар аударыңыз, сіз konsol = serial0, 115200 немесе console = ttyS0, 115200 көре аласыз және егер бар болса, жолдың сол бөліктерін алып тастауыңыз керек.

Келесі пәрмендерді іске қосыңыз:

sudo systemctl тоқтату [email protected]

sudo systemctl [email protected] қызметін өшіреді

GPS модулін орнату Тексеру үшін USB құрылғысын gpsd -ке қосылуға мәжбүрлейді

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

sudo systemctl stop gpsd.socket

sudo killall gpsd

sudo dpkg-gpsd қайта конфигурациялау

sudo vi/etc/default/gpsd

# Gpsd үшін әдепкі параметрлер. START_DAEMON = «true» GPSD_OPTIONS = «-n» DEVICES = «/dev/ttyS0» USBAUTO = «false» GPSD_SOCKET = «/var/run/gpsd.sock»

Пәрменнің жұмыс істейтініне көз жеткізіңіз

cgps -s

DHT11 cd ~ орнатыңыз

git clone

CD Adafruit_Python_DHT/

sudo python setup.py орнату

sudo python ez_setup.py

CD мысалдары/

vi simpletest.py

Келесі жолды өзгертіңіз:

сенсор = Adafruit_DHT. DHT11

Сызыққа түсініктеме беріңіз

түйреуіш = 'P8_11'

Жолға түсініктеме беріңіз және түйреуіш нөмірін 16 -ға өзгертіңіз

түйреуіш = 16

Тестті іске қосыңыз

python simpletest.py

Сіз пәрмен жолында көрсетілген Temp and ылғалдылық көрсеткішінің көрсеткішін көруіңіз керек.

Сценарийлерді орнатыңыз және іске қосыңыз cd ~

git клоны

8 -қадам: Жүргізуді бақылау құралдарын және DB журналын орнатыңыз

sudo apt-get install ifstat memcached python-memcache postgresql postgresql-салым python-psycopg2

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

Файлдың соңына келесі жолды қосыңыз:

жергілікті барлық pi құпия сөзі

sudo -i -u postgres

psql

pi паролінің 'құпия сөзін мұнда жасаңыз';

pi логинін өзгерту;

pi superuser рөлін өзгерту;

du

(берілген рұқсаттары бар PI пайдаланушысын көруіңіз керек)

drive_statistics мәліметтер базасын құру;

q

Шығу

psql -d driving_statistics

Келесі сұрауларды іске қосыңыз:

Кесте жүргізу_статаларын жасаңыз (уақыт сериялы уақыт белгісі NULL ЕМЕС, уақыт белдеуі жоқ NULL, new_trip_start уақыт белгісі NULL, gps_latitude қос дәлдігі, gps_longitude қос дәлдігі, gps_altitude нақты, gps_speed real, gps_climb нақты, gps_track мәтіні, locale_addca мәтіні, locale_addc, local_county мәтіні, local_country мәтіні, locale_zipcode мәтіні, нақты уақыт ішінде, ауа температурасы_ уақыт белгісі, ауа райы_жазба мәтіні, ауа райы_белгі мәтіні, ауа -райы_ температурасы нақты, ауа -райы ылғалдылығы, ауа райы_нұсқалығы шынайы, ауа райы_президенттік мүмкіншілік;

CREATE UNIQUE INDEX time_idx ON driving_stats (уақыт);

Sudo su қайта жүктеуде UART қосылымымен жұмыс істейтін GPSD алу үшін хак қажет

crontab -e

@reboot /bin /sleep 5; killall gpsd

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

Сақталатын деректер үшін журналдар қалтасын жасаңыз mkdir/home/pi/TripComputer/computer/logs

9 -қадам: Crontab сценарийлерін іске қосу - Pi & Root

Жүктеу кезінде іске қосылатын сценарийлерді орнатыңыз

crontab -e

Келесі жолдарды қосыңыз

@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

GPS модулінің дұрыс қосылғанына көз жеткізу үшін root user crontab орнатыңыз

sudo su

crontab -e

Келесі жолдарды қосыңыз

@reboot /bin /sleep 5; systemctl gpsd.socket тоқтатады

@reboot /bin /sleep 8; killall gpsd

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

10 -қадам: Ауа райы мен бақылау тақтасына қосылуды конфигурациялаңыз (міндетті емес)

Соңында саяхат компьютерін іске қосу үшін қажетті жергілікті параметрлерді жасаңыз

/Computer/includes/settings.shadow.py файлын табыңыз

Settings.py деп аталатын параметрлер файлының жеке нұсқасын жасаңыз

Жергілікті ауа райы ақпараты үшін weather.io API кілті weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'API КІЛТІ МЫНАДА'

егер сізде жұмыс істейтін құрылғы хабының жобасы болса (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'

егер сізде бақылау тақтасының телефон жобасы жұмыс істесе (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'

11 -қадам: Dash / Humidistat тауына және аяқталды

Dash / Humidistat тауына орнатыңыз және аяқталды!
Dash / Humidistat тауына орнатыңыз және аяқталды!
Dash / Humidistat тауына орнатыңыз және аяқталды!
Dash / Humidistat тауына орнатыңыз және аяқталды!

Дашқа орнатыңыз

Гумидистат тауы тікелей күн сәулесінен алыс

RPi қайта жүктеңіз және сіз баруға дайын болуыңыз керек!

Ұсынылған: