תוכן עניינים:
- שלב 1: מהבהב דיסק קשיח של RaspberriPi / התקן תוכנות נדרשות (באמצעות אובונטו לינוקס)
- שלב 2: מסופק נחוץ
- שלב 3: הדפס את המארז
- שלב 4: בניית מחשב הטיול
- שלב 5: הרכבה אחרונה
- שלב 6: הרכבה אחרונה (המשך …)
- שלב 7: תצורת / התקנת תוכנה
- שלב 8: התקן כלי ניטור נהיגה ורישום DB
- שלב 9: הפעלת סקריפטים של Crontab - Pi & Root
- שלב 10: הגדר להתחבר למזג האוויר ולוח המחוונים (אופציונלי)
- שלב 11: הר על מקף / הר הומידיסטאט וסיים
וִידֵאוֹ: מחשב Trip - מחשב טיול GPS ומודול מזג אוויר לרכב שלך: 11 שלבים (עם תמונות)
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
פרויקט מגניב של פטל פאי שמשתמש במודול הפריצה ל- 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 שלך ואתה אמור להיות מוכן לצאת לדרך!