תוכן עניינים:
- אספקה
- שלב 1: אב טיפוס
- שלב 2: הכנת ה- Raspberry Pi
- שלב 3: מסד נתונים
- שלב 4: סוף אחורי
- שלב 5: חזית
- שלב 6: הצגת לוח המחוונים בתצוגה
- שלב 7: הלחמת האלקטרוניקה
- שלב 8: ספק כוח
- שלב 9: דיור
וִידֵאוֹ: לוח מחוונים לאופנוע פטל: 9 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:13
כסטודנט טכנולוגיית מולטימדיה ותקשורת בהווסט קורטרייק, נאלצתי ליצור פרויקט IoT משלי. זה ישלב את כל המודולים שבוצעו בשנה הראשונה לפרויקט אחד גדול. מכיוון שאני רוכב הרבה על האופנוע שלי בזמני הפנוי, החלטתי להשתמש בכישורי הנרכשים שלי ב- MCT tu כדי לבנות משהו לאופנוע שלי: לוח מחוונים חכם.
MotoDash הוא לוח מחוונים המופעל על ידי Raspberry Pi המיועד לרוכבי אופנוע קנאים שנותן לרוכב את היכולת לעקוב אחר הביצועים שלהם.
מהן התכונות של לוח המחוונים הזה?
- צפייה בזווית ההטיה הנוכחית
- צפייה בתאוצה הנוכחית
- יכולת מעקב אחר טמפרטורת השמן
- עבור אוטומטית לנושא כהה בעת רכיבה בחושך
- רשום נתונים של הנסיעות שלך וצפה בסטטיסטיקות משלך
אספקה
יחידת מחשוב ראשית:
פטל פטל זהו הבקר הראשי של המערכת
מכשירי חשמל:
- מטען USB לאופנוע 12V-5V ספק כוח ראשי ל- RPi
- ממסר התנגדות 4 פינים 12V החלף להפעלה/כיבוי של מעגל החשמל של ה- RPi
- לוח לחם עם חוטי מגשר (אופציונלי) לבדיקה ואב טיפוס
- Breakout Pi plus זהו לוח אב טיפוס שבו תוכלו להלחם את כל הרכיבים שלכם. הוא עשוי להתאים ישירות על גבי ה- Raspberry Pi, כך שמידות הפרויקט נשארות למינימום.
סט נגדים
צבעים שונים של חוט 0.2 מ"מ
חיישנים ומודולים:
-
חיישן טמפרטורה חד-חוטי DS18B20 עמיד למים חיישן טמפרטורת שמן
- חיישן הטיל/תאוצה Gyro 3 Axes MPU6050 חיישן הטיה/הדבקה
- נגד תלוי אור (LDR)
MCP3008-8 ערוצים ADC של 10 סיביות עם ממשק SPI
צג TFT SPI (או כל צג LCD אחר שמתאים לצרכים שלך)
LED RGB
מַעֲטֶפֶת:
- קופסת פלסטיק
- מארז פאי פטל
כלים:
- מלחם והלחמה
- ברגים ומרווחים 2.5 מ"מ
- מחברי כבלים עמידים למים
- דבק מגע
- …
שלב 1: אב טיפוס
לפני שנעשה הכל קבוע, נרכיב את הפרויקט על קרש לחם. ניתן לדלג על שלב זה אם אתה בטוח לחלוטין שלא תעשה טעויות. ניתן למצוא את תוכנית החשמל/קרש הלוח במסמך ה- PDF למטה. חבר את המעגל בדיוק כפי שמתואר. הקפד להשתמש רק בסיכה 3.3V ולא בסיכת 5V ב- RPi. כמו כן לפני שתפעיל את פטל הפטל בדוק שוב את המעגל שלך. וודא שאין מכנסיים קצרים!
שלב 2: הכנת ה- Raspberry Pi
קודם כל, אנחנו הולכים להקים את ה- Raspberry Pi. ה- Raspberry Pi הוא מחשב מיני המסוגל להריץ מערכת הפעלה משלו. עבור פרויקט זה, היא אחראית על עיבוד sensordata, אירוח האתר, הפעלת ה- backend ומסד הנתונים, …
1. התקן תמונה Raspbian מותאמת אישית
התמונה שסופקה כבר מכילה את חבילות התוכנה הדרושות להפעלת פרויקט זה:
- אפאצ'י לממשחת האתר
- MariaDB עבור מסד הנתונים
- PhpMyAdmin לתפעל את מסד הנתונים
- הרשאות מותאמות אישית למניעת בעיות
ניתן להוריד את התמונה המותאמת אישית מכאן.
מדריך להתקנת תמונות ניתן למצוא כאן:
לאחר התקנת התמונה, חבר את ה- Raspberry Pi למחשב האישי באמצעות כבל אתרנט. כעת תוכל להשתמש בלקוח SSH כדי להתחבר אליו בכתובת ה- IP 169.254.10.1
נוהג טוב להגדיר מיידית סיסמה חדשה באמצעות הפקודה passwd
2. הגדרת AP אלחוטי
כאשר הפרויקט יסתיים, אנו רוצים להיות מסוגלים להתחבר ל- RPi באמצעות wifi, לכן אפשר להפוך אותו ל- AP אלחוטי. ניתן למצוא כאן הדרכה בנושא.
עליך לעקוב אחר הדרכה זו עד שלב 7. שלב 8 אינו נדרש מכיוון שאיננו צריכים לגשר על חיבור לאינטרנט, אלא ליצור רשת עצמאית.
3. הפעלת ממשקים
עבור אל raspi-config
sudo raspi-config
עבור לאפשרויות הממשק והפעל את חוט אחד, SPI ו- I2C והפעל מחדש את ה- Pi
3. הגדרת דרייברים לתצוגה
אתחול התצוגה
ערוך את הקובץ /etc /modules
sudo nano /etc /modules
הוסף את 2 השורות הבאות
spi-bcm2835fbtft_device
כעת ערוך /etc/modprobe.d/fbtft.conf
sudo nano /etc/modprobe.d/fbtft.conf
הוסף את השורה הבאה
אפשרויות fbtft_device name = tm022hdh26 gpios = reset: 25, dc: 24, led: 18 rotate = 90 speed = 80000000 fps = 60
אתחל את הפי. אם אתה רואה את התאורה האחורית של התצוגה דולקת הכל הלך כשורה. זה יאתחל את התצוגה בכל פעם שה- Pi יתחיל, אולם הוא יציג רק מסך שחור כעת. כדי להציג את תוכן ה- Pi בתצוגה, עלינו להעתיק את תוכן המסך הראשי אל ה- LCD הקטן. לשם כך נשתמש בשירות שנקרא 'fbcp'.
התקנת שירות fbcp
sudo apt-get להתקין cmake
שיבוט git
cd rpi-fbcp
mkdir build
בניית תקליטורים/
cmake..
עשה
sudo התקן fbcp/usr/local/bin/fbcp
כעת התקנו את השירות. עם זאת, מכיוון שאנו משתמשים ב- Pi ללא ראש, אין מסך זמין להעתקת תוכן ממנו. כדי לאלץ את ה- Pi להוציא תוכן מסך, ערוך /boot/config.txt
sudo nano /boot/config.txt
מצא את הערות אלה או הוסף אותן או הוסף אותן לקובץ זה:
hdmi_force_hotplug = 1
hdmi_cvt = 640 480 60 0 0 0 0
display_rotate = 0
hdmi_group = 2
hdmi_mode = 87
הפעל מחדש את ה- RPi ובדוק את שירות fbcp על ידי הקלדת fbcp במסוף. עכשיו אתה אמור לראות את תוכן המסך על ה- LCD.
מפעיל fbcp בעת ההפעלה
ערוך /etc/rc.local והוסף את השורה הבאה בין כתובת ה- ip לבין קו היציאה
fbcp &
כעת התצוגה אמורה להידלק בכל פעם שה- RPi מופעל
שלב 3: מסד נתונים
כדי להיכנס ולשמור sensordata עיצבתי מסד נתונים משלי המכיל 4 טבלאות. תרשים EER מוצג בתמונה למעלה.
1. מכשירים
טבלה זו מכילה כל חיישן. הוא מתאר את שם החיישן, תיאור ויחידת המדידה. לטבלה זו יש יחס של אחד לרבים עם פעולות הטבלה, כמו במקרה שלי, חיישן התאוצה יכול לבצע משימות שונות.
2. פעולות
טבלה זו מאחסנת פעולות עבור חיישן שונה. פעולה אחת תמיד מקושרת לחיישן מסוים. לדוגמה: הפעולה 'TEMP' מקושרת למכשיר המודד טמפרטורה. זה יהיה חיישן הטמפרטורה של 1 חוטים.
3. היסטוריה
טבלה זו מכילה את כל יומני החיישנים. לכל יומן יש מזהה פעולה, ערך, חותמת זמן ו- rideid
4. טרמפים
שולחן זה מאחסן טרמפים שונים. בכל פעם שהמשתמש מתחיל בנסיעה חדשה, מתבצעת רשומה חדשה בטבלה זו
כדי לקבל מסד נתונים זה ב- Raspberry Pi שלך, עבור אל GitHub שלי ושכפל/הורד את המאגר. מתחת למסד הנתונים תמצאו 2 קבצי.sql. הפעל את אלה ב- PhpMyAdmin או MySQL workbench. כעת מסד הנתונים צריך להיות ב- RPi שלך.
שלב 4: סוף אחורי
אם עדיין לא עשית זאת, עבור אל GitHub שלי ושכפל/הורד את המאגר. מתחת לתיקייה Backend תמצא את ה- backend המלא לפרויקט.
התיקייה מכילה שיעורים לקריאת חיישני תחת /עוזרים, קבצים לתקשורת עם מסד הנתונים תחת /מאגרים, והיישום הראשי ממוקם בשורש בשם app.py.
התקנת חבילות Python
לפני שננסה להריץ משהו, עלינו להתקין תחילה כמה חבילות לפייתון. היכנס למסוף ה- RPi שלך והקלד את הפקודות הבאות:
pip3 התקן את mysql-connector-python
pip3 התקן flask-socketio
pip3 התקן בקבוקונים
pip3 התקן gevent
pip3 התקן gevent-websocket
הערה חשובה: אם שינית את סיסמת Mariadb/Mysql שלך, שנה את הסיסמה ב- config.py!
בדוק את הקצה האחורי
הפעל את app.py באמצעות מתורגמן python3 (/usr/bin/python3). וודא שאין טעויות.
הפעלת ה- backend על האתחול
ערוך את motoDash_backend.service ושנה את YOURFILEPATH לנתיב שבו המאגר נשמר.
כעת העתק קובץ זה אל/etc/systemd/system/
sudo cp motoDash_backend.service /etc/systemd/system/motoDash_backend.service.
עכשיו ה backend יתחיל אוטומטית בכל פעם שה- RPi יתחיל.
שלב 5: חזית
כנסו ל Repo GitHub. העתק את התוכן של ספריית Frontend אל/var/www/html.
זה כל מה שאתה צריך לעשות כדי לגרום לחזית לפעול. תיקיה זו מכילה את כל דפי האינטרנט, העיצוב והתסריטים לממשק האינטרנט. הוא מתקשר גם עם ה- backend. כדי לבדוק אם הכל עובד כמו שצריך, ודא שאתה מחובר ל- RPi שלך והקלד את כתובת ה- IP של ה- RPi בדפדפן. אתה אמור לראות את דף הבית של ממשק האינטרנט.
הערה: האתר מגיב, כך שתוכל להשתמש בו גם בנייד וגם בשולחן העבודה
שלב 6: הצגת לוח המחוונים בתצוגה
לחזית יש דף אינטרנט מוסתר משלו המשמש רק לתצוגה הקטנה. אנו נעשה את האתחול של Pi באופן אוטומטי לאתר זה במצב מסך מלא.
וודא שה- RPi מוגדר כ- autologin בשולחן העבודה ב- raspi-config תחת אפשרויות אתחול
sudo raspi-config
כעת היכנס לתיקיית התצורה הנסתרת וצור שם קובץ חדש
cd.config
sudo mkdir -p lxsession/LXDE -pi
sudo nano lxsession/LXDE-pi/הפעלה אוטומטית
הוסף את השורות הבאות בקובץ זה ושמור
@xscarver -no -splash
@xset s כבוי
@xset -dpms
@xset s noblank
@כרום-דפדפן-שגיאות-הפעלה-מושבת-התרסקות-בועה-השבתת-infobars-קיוסק-אינקוגניטו
עכשיו ה- Pi אמור לאתחל לדף אינטרנט זה בכל פעם
שלב 7: הלחמת האלקטרוניקה
קח את לוח הפריצה ופרס עליו את הרכיבים בצורה מובנית. לא אדון בפריסה של האופן שבו הלחמתי את הרכיבים עליו, שכן עשיתי עבודה די גרועה בו. השתמשתי בכותרות סיכה נפרדות על הלוח כך שהייתי צריך לחבר רק את החיישנים והמודולים לסיכה הנכונה. וודא שאתה יודע איזו סיכה היא למה!
כמה טיפים בזמן הלחמה:
- השתמש בחוטים מבודדים בעת חציית מרחקים גדולים יותר. הדבר האחרון שאתה רוצה הוא מכנסיים קצרים במעגל שלך
- לאחר הלחמת רכיב או חוט, בדוק את המשכיותו בעזרת מולטימטר. בדוק גם באופן קבוע אם יש מעגלים קצרים.
- אין להשתמש בהרבה הלחמה או מעט מדי!
- אם אינך יודע כיצד להלחם, תרגל זאת תחילה בלוח אב טיפוס אחר. ניתן למצוא כאן הדרכה בנושא הלחמה.
עכשיו חוטי הלחמה מספיקים לחיישנים, ושמו מעט כיווץ מתכווץ סביבם כדי לוודא שהכל לא יהיה קצר ונקי.
כשתסיים, בדוק שוב אם יש מכנסיים קצרים או חיבורים גרועים, ובדוק כל חיבור עם ערכת החשמל אם זהו החיבור הנכון. ברגע שאתה בטוח שהכל נעשה כראוי, קדימה והנח את לוח הפריצה על ה- RPi, סיים לדפוק אותו היטב בעזרת כמה ברגים 2.5 מ מ וסטנדים. חבר את החיישנים לפינים הנכונים ובדוק את כולם באמצעות האתר.
שלב 8: ספק כוח
כדי להפעיל את ה- Raspberry Pi אנו הולכים להשתמש במתאם USB של 12V-5V. מתאם זה יתחבר לסוללת האופנוע. כדי לוודא שה- RPi מופעל כאשר מתג ההצתה מופעל, אנו הולכים להשתמש בממסר. הממסר יסגור את מעגל הכוח RPi כאשר הוא מזהה מתח מהפנס האחורי (הפנס האחורי תמיד נדלק בעת הפעלת ההצתה).
לקבלת הדרכה מפורטת יותר בנושא זה, עיין בדף זה: https://www.hondagrom.net/threads/2017-gromsf-msx125sf-wire-up-auxiliary-power-for-pcv-wb2-and-other-fuel -בקרים.1621/
שלב 9: דיור
דיור לתצוגה
לתצוגה, קח לעצמך קופסת פלסטיק קשיחה מסביב לגודל התצוגה. חותכים בו חור מרובע בגודל התצוגה וחורים תואמים כדי לדפוק את המסך. בחזית אתה צריך לקדוח 2 חורים נוספים עבור ה- RGB LED ו- LDR.
הרמתי את הקופסה הזו על גבי מחזיק סמארטפון באמצעות בורג.
חיישן טמפרטורה
לדיור חיישן הטמפרטורה, הדפסתי בתלת מימד מד מד המתאים לאופנוע שלי.
פאי פטל
הרכיבו את הפטל פאי עצמו על מקום מאובטח בתוך האופנוע, הנחתי אותו מתחת לאחד הפגושים בעזרת כמה רצועות סקוטש. והגן עליו מפני האלמנטים באמצעות דיור וקצת פלסטיק.
מד תאוצה
הרכיב את מד התאוצה במקום מאובטח, רצוי על מסגרת האופנוע עצמה.
הערה:
אתה לא צריך להיות בעל אותו דיור בדיוק כמוני, אתה חופשי לסיים אותו כרצונך. רק וודא שהרכיבים האלקטרוניים מוגנים מפני גשם ואבק.
מוּמלָץ:
הפוך את לוח הבקרה הדיגיטלי מבוסס ה- GPS שלך לאופנוע או לאופנוע חשמלי: 13 שלבים
הפוך את לוח הבקרה הדיגיטלי מבוסס ה- GPS שלך לאופניים או לאופנוע חשמלי: HI בכל פעם הפעם הגעתי להדרכה חדשה הכוללת גם תצוגה עצמאית וגם כורסת באמצעות arduino mega 2560 ותצוגת Lcd של Nextion ולצורך מעקב תוכל גם לרשום משפטים של NMEA של Gps ב- sdcard וכמובן בהקרנה
בנה לוח מחוונים של מזג אוויר באמצעות API של Sky Sky: 5 שלבים (עם תמונות)
בנה לוח מחוונים למזג אוויר באמצעות Dark Sky API: Dark Sky מתמחה בחיזוי מזג אוויר והדמיה. ההיבט המגניב ביותר של Dark Sky הוא ה- API של מזג האוויר שבו אנו יכולים להשתמש כדי לאחזר את נתוני מזג האוויר כמעט מכל מקום בעולם. לא רק מזג האוויר גשום או שטוף שמש אלא טמפרטורה
גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 1): 6 שלבים (עם תמונות)
LTE Arduino GPS Tracker + לוח מחוונים IoT (חלק 1): מבוא מה קורה חבר'ה! מדריך זה הוא המשך של ההוראה הראשונה שלי על השימוש במגן LTE/NB-IoT של Botletics עבור Arduino, כך שאם עדיין לא עשית זאת, אנא קרא אותו כדי לקבל סקירה טובה של אופן השימוש במגן ומהו הכול ab
גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): 6 שלבים (עם תמונות)
גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): מבוא & חלק 1 Recap Yup, הגיע הזמן לעוד הוראה על גשש ה- GPS SIM7000 עם Arduino ו- LTE! אם עדיין לא עשית זאת, עיין במדריך תחילת העבודה עבור מגן ה- SIM7000 CAT-M/NB-IoT של Botletics ואז קרא על Pa
גינו: לוח מחוונים עבור הארדואינו שלך: 4 שלבים (עם תמונות)
Guino: Dashboard for Arduino שלך: פרויקט זה הוא חלק מניסויים שנעשו בעת ביצוע אמן במגורים ב- Instructables. אתה יכול לראות את הפרויקטים האחרים כאן. זו יכולה להיות משימה מסובכת לאתר באגים ולדמיין נתונים בזמן אמת על לוח Arduino. בדרך כלל אתה תקוע עם ה