Мазмуну:

TripComputer - GPS Trip Computer & Унааңыз үчүн аба -ырайы модулу: 11 кадам (Сүрөттөр менен)
TripComputer - GPS Trip Computer & Унааңыз үчүн аба -ырайы модулу: 11 кадам (Сүрөттөр менен)

Video: TripComputer - GPS Trip Computer & Унааңыз үчүн аба -ырайы модулу: 11 кадам (Сүрөттөр менен)

Video: TripComputer - GPS Trip Computer & Унааңыз үчүн аба -ырайы модулу: 11 кадам (Сүрөттөр менен)
Video: КОРОЛЕВСКИЙ Электроскутер CHOPPER CITYCOCO 3000w Электрочоппер citycoco ситикоко 3000w электроцикл 2024, Июль
Anonim
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу
TripComputer - GPS Trip Computer & Унааңыз үчүн Аба ырайы модулу

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

1 -кадам: Жаркыраган RaspberriPi Hard Disk / Керектүү Программаны Орнотуу (Ubuntu Linuxту колдонуу)

"RASPBIAN JESSIE LITE VERSION" жүктөп алыңыз

DashboardPI үчүн жаңы катуу дискти түзүңүз

USB адаптери аркылуу microSDди компьютериңизге киргизиңиз жана dd командасын колдонуп дисктин сүрөтүн түзүңүз

Киргизилген microSD картаңызды df -h буйругу аркылуу таап, аны ажыратып, 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 (note: in this case, it's this/dev/sdb,/dev/sdb1 was in the existing zavod partition on microSD)

RaspberriPi орнотуу

Жаңы microSD картаңызды raspberrypiге салып, HDMI портуна туташкан монитор менен күйгүзүңүз

Кирүү

колдонуучу: pi pass: малина

Коопсуздук үчүн аккаунтуңуздун сырсөзүн алмаштырыңыз (терминалдан)

sudo passwd pi

RaspberriPi Advanced Options иштетүү (терминалдан)

sudo raspi-config

Тандоо: 1 Файл системасын кеңейтүү

9 Advanced Options

A2 Hostname аны "TripComputer" кылып өзгөртөт

A4 SSH SSH серверин иштетүү

A7 I2C i2c интерфейсин иштетүү

Англисче/АКШ баскычтобун иштетүү

sudo nano/etc/default/keyboard

Төмөнкү сапты өзгөртүңүз: XKBLAYOUT = "us"

Клавиатуранын жайгашуусун өзгөртүү үчүн / файл системасынын өлчөмүн өзгөртүү үчүн PIди кайра жүктөө

$ sudo өчүрүү -r азыр

WiFiга автоматтык түрдө туташуу

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Сиздин raspberrypi автоматтык түрдө үй WiFiңызга кошулушу үчүн төмөнкү саптарды кошуңуз (эгер сиздин зымсыз тармагыңыз "linksys" деп аталып калса, мисалы, төмөнкү мисалда)

network = {ssid = "linksys" psk = "БУЛ ЖЕРДЕ ЗАПСЫЗ ПАРОЛЬ"} WiFi тармагына туташуу үчүн PIди кайра жүктөңүз

$ sudo өчүрүү -r азыр

Эми сиздин PI акыры жергиликтүү тармакта болгондуктан, ага алыстан SSH аркылуу кире аласыз. Бирок адегенде азыркы учурда бар болгон IP дарегин алышыңыз керек.

$ ifconfig "inet addr: 192.168. XXX. XXX" издеңиз, PIнин IP дареги үчүн төмөнкү буйруктун чыгарылышында.

Башка машинага өтүп, raspberrypi -ге ssh аркылуу кириңиз

$ ssh [email protected]. XXX. XXX

Керектүү пакеттерди орнотууну баштаңыз

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

$ sudo apt-get install-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 Digole Display (x2)

DHT11 Humidistat

RaspberriPi Zero

Adafruit GPS Breakout

52мм 2ин өлчөгүчтөр - айнек / жана экранды курчоо үчүн колдонулат

2 өлчөөчү контейнер

3 -кадам: Корпусту басып чыгаруу

Бул долбоордун "3DPrint/" папкасында, өлчөөчү контейнердин ичинде 2 экранды орнотуу үчүн керектүү Digole дисплейинин айланасын түзө турган gauges-final.stl файлын басып чыгарыңыз.

4 -кадам: Саякат компьютерин куруу

Саякат компьютерин куруу
Саякат компьютерин куруу

Төмөнкү Түзмөктөрдү Pi Zero'го туташтырыңыз

Digole (ар бири): 3v / GND / SDA / SCL

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

HW UART туташуулары аркылуу GPS USB модулун RaspberriPi менен туташтыруу GPS модулу үчүн HW UARTти колдонуу UART туташууңузду Piге бошотуу үчүн төмөнкүлөрдү талап кылат.

"Cross"-GPS модулунан TX жана RX төөнөгүчтөрүн RPi TX (GPIO 14/8 пин) жана RX (GPIO 15/10 пин) менен туташтырыңыз-[TX түзмөктө RXке барат жана тескерисинче.] Туташуу VP пинге RPi 5V жана GPS модулуна GND pin жеткиликтүү RPi GND пинге.

5 -кадам: Акыркы жыйын

Акыркы жыйын
Акыркы жыйын
Акыркы жыйын
Акыркы жыйын

Өлчөөчү корпустун ичине компененттерди кармап туруу үчүн түбүнө жыгач кескиле.

2 52мм 2ин өлчөгүчтөрдү алып, чокуларын кесип алыңыз, биз айнектерди жана курчап, өзүбүздүн дисплейлерибизди, Диголе дисплейлерин орнотуу үчүн колдонуп жатабыз. Аларды ысык клей менен чаптаңыз.

6 -кадам: Акыркы жыйын (уландысы …)

Акыркы жыйын (уландысы …)
Акыркы жыйын (уландысы …)
Акыркы жыйын (уландысы …)
Акыркы жыйын (уландысы …)

Жогорудагы схеманы колдонуу менен компоненттерди ширетип, баарын күчтүү жана туруктуу кылыңыз.

Компоненттерди кош калибрлүү корпустун ичине орнотуңуз, 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 тамыры =/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 Humidity аттуу метрикалык окууну көрүшүңүз керек.

Скрипттерди орнотуу жана иштетүү cd ~

git clone

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

пи сырсөзүнүн паролун түзүү 'бул жерде';

пи кирүүнү өзгөртүү;

alter role pi superuser;

du

(берилген уруксаттар менен PI колдонуучуну көрүшүңүз керек)

driving_statistics маалымат базасын түзүү;

q

чыгуу

psql -d driving_statistics

Төмөнкү сурамдарды иштетиңиз:

CREATE TABLE driving_stats (id сериясы, убакыт белгиси NULL ЭМЕС, NULL эмес, new_trip_start убакыт белгиси NULL, gps_latitude кош тактык, gps_longitude кош тактык, gps_altitude реалдуу, gps_speed реалдуу, gps_climb реалдуу, gps_track текст, locale_addca текст, locale_addca, locale_county текст, locale_country текст, locale_zipcode текст, ичинде_темп реалдуу, ичинде_хмидти реалдуу, аба -ырайы_ убакыт белгиси, аба -ырайы_жыйынтык текст, аба ырайы_икон тексти, аба -ырайы_температура реалдуу, аба -ырайы нымдуулугу, аба -ырайы температурасы реалдуу, аба -ырайы реалдуу) Мүмкүнчүлүк реалдуу;

UNIKAL INDEX CREATE time_idx ON driving_stats (time);

Hack GPSDти UART туташуусу менен иштөө үчүн талап кылынат

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 -кадам: Startup Crontab Scripts - 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 stop 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 / Mount Humidistat жана Бүттү!
Dash / Mount Humidistat жана Бүттү!
Dash / Mount Humidistat жана Бүттү!
Dash / Mount Humidistat жана Бүттү!

Дашка орнотуу

Humidistat тоосу күндүн түз нурунан алыс

RPiңизди өчүрүп күйгүзүңүз жана сиз барууга даяр болушуңуз керек!

Сунушталууда: