תוכן עניינים:

מחשב Trip - מחשב טיול GPS ומודול מזג אוויר לרכב שלך: 11 שלבים (עם תמונות)
מחשב Trip - מחשב טיול GPS ומודול מזג אוויר לרכב שלך: 11 שלבים (עם תמונות)

וִידֵאוֹ: מחשב Trip - מחשב טיול GPS ומודול מזג אוויר לרכב שלך: 11 שלבים (עם תמונות)

וִידֵאוֹ: מחשב Trip - מחשב טיול GPS ומודול מזג אוויר לרכב שלך: 11 שלבים (עם תמונות)
וִידֵאוֹ: איך להוריד מפות אוף-ליין מתוך גוגל מפס? offline google maps 2024, נוֹבֶמבֶּר
Anonim
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך
TripComputer - מחשב טיול GPS ומודול מזג אוויר לרכב שלך

פרויקט מגניב של פטל פאי שמשתמש במודול הפריצה ל- GPS וב -2 מסכי דיגול קטנים כדי שיהיה לכם מחשב ניווט על המקף.

שלב 1: מהבהב דיסק קשיח של RaspberriPi / התקן תוכנות נדרשות (באמצעות אובונטו לינוקס)

הורד את "גרסת ג'סי רספבית"

צור את הדיסק הקשיח החדש שלך עבור DashboardPI

הכנס את ה- microSD למחשב שלך באמצעות מתאם USB וצור את תמונת הדיסק באמצעות הפקודה dd

אתר את כרטיס ה- microSD שהוכנס באמצעות הפקודה df -h, הסר אותו וצור את תמונת הדיסק באמצעות הפקודה העתק דיסק.

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

$ umount /dev /sdb1

זהירות: ודא שהפקודה מדויקת לחלוטין, אתה יכול לפגוע בדיסקים אחרים באמצעות פקודה זו

if = מיקום קובץ התמונה של RASPBIAN JESSIE FULL VERSION של = המיקום של כרטיס ה- microSD שלך

$ sudo dd bs = 4M אם =/path/to/raspbian-jessie-lite.img של =/dev/sdb (הערה: במקרה זה, זה/dev/sdb,/dev/sdb1 היה מחיצת מפעל קיימת ב- microSD)

הגדרת ה- RaspberriPi שלך

הכנס את כרטיס ה- microSD החדש שלך ל- raspberrypi והפעל אותו עם צג המחובר ליציאת 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 = "אנחנו"

אתחל את ה- PI לשינויי פריסת המקלדת / שינוי גודל הקבצים כדי להיכנס לתוקף

כיבוי $ sudo -r עכשיו

התחבר אוטומטית ל- WiFi שלך

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

הוסף את השורות הבאות כדי שהפטל שלך יתחבר אוטומטית ל- WiFi הביתי שלך (אם הרשת האלחוטית שלך נקראת "linksys" למשל, בדוגמה הבאה)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} הפעל מחדש את ה- PI כדי להתחבר לרשת WiFi

כיבוי $ sudo -r עכשיו

כעת, כאשר ה- PI שלך סוף סוף נמצא ברשת המקומית, תוכל להתחבר אליו מרחוק באמצעות SSH. אך ראשית עליך לקבל את כתובת ה- IP שיש לה כרגע.

$ ifconfig חפש "inet addr: 192.168. XXX. XXX" בפלט הפקודה הבאה עבור כתובת ה- IP של ה- PI שלך

עבור למכונה אחרת והתחבר ל- 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-configure tzdata

בחר את אזור הזמן שלך באמצעות הממשק

הגדר את הפקודה הפשוטה של ספריית l [אופציונלי]

vi ~/.bashrc

הוסף את השורה הבאה:

כינוי l = 'ls -lh'

מקור ~/.bashrc

תקן סימון תחביר ברירת המחדל של VIM [אופציונלי]

sudo vi/etc/vim/vimrc

אל תגיב על השורה הבאה:

תחביר מופעל

שלב 2: מסופק נחוץ

מסופק דרוש
מסופק דרוש
מסופק דרוש
מסופק דרוש
מסופק דרוש
מסופק דרוש

2 אינץ '320x240 TFT LCD תצוגת Digole (x2)

DHT11 Humidistat

RaspberriPi Zero

פריצת GPS של Adafruit

מדים 52 מ מ 2 אינץ ' - משמש לסביבות הזכוכית / והמסך

2 מיכל הר למד

שלב 3: הדפס את המארז

בתיקייה "3DPrint/" של פרויקט זה, הדפס את הקובץ gauges-final.stl שיפיק את מסבי התצוגה של Digole הדרושים להרכבת 2 המסכים בתוך מיכל הרכבה של המד.

שלב 4: בניית מחשב הטיול

בניית מחשב הדרך
בניית מחשב הדרך

חבר את ההתקנים הבאים את הפינים ב- Pi Zero

Digole (כל אחד): 3v / GND / SDA / SCL

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

חבר את מודול USB ה- GPS ל- RaspberriPi באמצעות חיבורי HW UART שימוש ב- HW UART עבור מודול ה- GPS דורש את הדברים הבאים כדי לשחרר את חיבור ה- UART ב- Pi שלך.

"קרוס"-חבר את סיכות TX ו- RX ממודול ה- GPS ל- RPi TX (GPIO 14/8 פינים) ול- RX (GPIO 15/10 פינים)-[TX עובר ל- RX במכשיר ולהיפך.] התחבר RPi 5V לסיכת VIN ולסיכת ה- GND של מודול ה- GPS לסיכת RPi GND זמינה.

שלב 5: הרכבה אחרונה

הרכבה סופית
הרכבה סופית
הרכבה סופית
הרכבה סופית

חותכים פיסת עץ לתחתית כדי להחזיק את המרכיבים בתוך מעטפת המד.

קח את 2 מדי 52 מ מ 2 וחתך את החלקים העליונים, אנחנו רק משתמשים בזכוכית ובסביבה כדי להרכיב את המסכים שלנו, את תצוגות Digole. הדביקו אותם במקומם בעזרת דבק חם.

שלב 6: הרכבה אחרונה (המשך …)

עצרת אחרונה (המשך…)
עצרת אחרונה (המשך…)
עצרת אחרונה (המשך…)
עצרת אחרונה (המשך…)

שימוש בחוט הסכימטי שלמעלה יחד את הרכיבים באמצעות הלחמה כדי להפוך הכל לחזק וקבוע.

הרכיב את הרכיבים בתוך מעטפת מד כפולה, השתמש במקיפים המודפסים בתלת -ממד בכדי שהתצוגות Digole בצורת ריבוע יתאימו לחלונות מד עגולים.

שלב 7: תצורת / התקנת תוכנה

הגדר את ה- Pi שלך לשימוש במודול ה- GPS ב- UART

sudo vi /boot/cmdline.txt

שינוי:

dwc_otg.lpm_enable = 0 קונסולה = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 קונסולה = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 מעלית = תאריך rootwait

ל:

dwc_otg.lpm_enable = 0 קונסולה = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 מעלית = מועד אחרון rootwait

(למשל, הסר קונסולה = ttyAMA0, 115200 ואם יש, kgdboc = ttyAMA0, 115200)

שים לב שאולי תראה console = serial0, 115200 או console = ttyS0, 115200 ועליך להסיר את החלקים של השורה אם קיים.

הפעל את הפקודות הבאות:

sudo systemctl stop [email protected]

sudo systemctl השבת [email protected]

התקנת מודול GPS לבדיקה הכריחו את התקן ה- USB שלכם להתחבר ל- gpsd

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

sudo systemctl עצור gpsd.socket

sudo killall gpsd

sudo dpkg-configure 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 התקן תקליטור ~

שיבוט git

cd Adafruit_Python_DHT/

sudo python setup.py התקנה

sudo python ez_setup.py

דוגמאות לתקליטורים/

vi simpletest.py

שנה את השורה הבאה:

חיישן = Adafruit_DHT. DHT11

הגיבו על השורה

pin = 'P8_11'

בטל את התגובה של השורה ושנה את מספר הסיכה ל -16

סיכה = 16

הפעל את הבדיקה

python simplestest.py

אתה אמור לראות קריאה מטרית של טמפ 'ולחות המוצגת בשורת הפקודה.

הגדר והפעל את הסקריפטים cd ~

שיבוט git

שלב 8: התקן כלי ניטור נהיגה ורישום DB

sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2

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

הוסף את השורה הבאה לסוף הקובץ:

סיסמת all pi מקומית

sudo -i -u postgres

psql

צור סיסמת תפקיד pi 'סיסמה כאן';

שנה תפקיד pi התחברות;

לשנות תפקיד pi superuser;

du

(אתה אמור לראות את משתמש ה- PI שלך עם ההרשאות שניתנו)

צור נתוני נהיגה_סטטיסטיקה;

ש

יְצִיאָה

psql -d נהיגה_סטטיסטיקה

הפעל את השאילתות הבאות:

צור טבלאות נהיגה (סידורי מזהה, חותמת זמן ללא אזור זמן NOT NULL, חותמת new_trip_start ללא אזור זמן NULL, gps_latitude דיוק כפול, דיוק כפול gps_longitude, gps_altitude real, gps_speed real, gps_climb real, gps_track real, locale_adressea text, locale_address, טקסט אזור_מקומי, טקסט ארץ_מקומי, טקסט מיקוד_מקומי, ממש בתוך_ממש, פנים_חמצן אמיתי, חותם_זמן_זמן מזג אוויר, טקסט_סיכום של מזג אוויר, טקסט_עוגן של מזג אוויר, מזג אוויר_מופיע טמפרטורה אמיתית, מזג אוויר_לחות אמיתי, מזג אוויר_משמעות אמיתי, מזג אוויר_אמיתי;

צור אינדקס ייחודי time_idx ב- driving_stats (זמן);

נדרשת פריצה כדי לגרום ל- GPSD לעבוד עם חיבור UART בעת הפעלה מחדש של sudo su

crontab -e

@reboot /bin /sleep 5; gpsd killall

@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

התקן את crontab של משתמש הבסיס כדי לוודא שמודול ה- GPS מתחבר כראוי

סודו סו

crontab -e

הוסף את השורות הבאות

@reboot /bin /sleep 5; systemctl stop gpsd.socket

@reboot /bin /sleep 8; gpsd killall

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

שלב 10: הגדר להתחבר למזג האוויר ולוח המחוונים (אופציונלי)

לבסוף צור את ההגדרות המקומיות הדרושות להפעלת מחשב הדרך

מצא את הקובץ /computer/includes/settings.shadow.py

צור גרסה משלך של קובץ ההגדרות בשם פשוט settings.py

מפתח API של forecast.io למידע על מזג אוויר מקומי 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: הר על מקף / הר הומידיסטאט וסיים

הר על מקף / הר הומידיסטאט וסיים!
הר על מקף / הר הומידיסטאט וסיים!
הר על מקף / הר הומידיסטאט וסיים!
הר על מקף / הר הומידיסטאט וסיים!

הר על מקף

הר הומידיסטאט הרחק מהשמש הישירה

הפעל מחדש את ה- RPi שלך ואתה אמור להיות מוכן לצאת לדרך!

מוּמלָץ: