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

גלאי יעילות דלק: 5 שלבים
גלאי יעילות דלק: 5 שלבים

וִידֵאוֹ: גלאי יעילות דלק: 5 שלבים

וִידֵאוֹ: גלאי יעילות דלק: 5 שלבים
וִידֵאוֹ: ג'ק עגלה 2024, נוֹבֶמבֶּר
Anonim
גלאי יעילות דלק
גלאי יעילות דלק

מאת: דניקה פוג'יווארה וויליאם מקגרוטר

מכוניות הן אמצעי התחבורה העיקרי בעולם כיום. באופן ספציפי, בקליפורניה, אנו מוקפים ברחובות, כבישים מהירים וכבישי אגרה בהם נוסעים אלפי מכוניות מדי יום. עם זאת, מכוניות משתמשות בגז וקליפורניה משתמשת ביותר בנזין מכל מדינה אחרת בארה ב, כ -4,500 ליטרים ליום. עבור פרויקט הגמר CPE 133 שלנו, החלטנו ליצור מערכת שבה תוכל לעקוב אחר מהירות המכונית ולספר האם היא עולה על המהירות היעילה ביותר עבור קילומטראז הגז או צריכת הדלק הטובה ביותר. פרויקט זה יעזור לנהגים להיות מודעים לחסכון בדלק שלהם אשר בתורו בתקווה יעזור להם לחסוך כסף, להשתמש פחות בגז וליצור פחות זיהום באוויר.

שלב 1: חומרים

חומרים
חומרים
חומרים
חומרים
חומרים
חומרים
חומרים
חומרים

החומרים הדרושים לפרויקט זה:

- Basys 3 FPGA

- ארדואינו אונו

- לוח לחם

- חיישן התמצאות מוחלט של Adafruit BNO055

- חוטי זכר לזכר

שלב 2: הבנת העיצוב

הבנת העיצוב
הבנת העיצוב
הבנת העיצוב
הבנת העיצוב

תרשים מצב סופי

לפרויקט זה שני מצבים שונים בתוך תרשים המצב הסופי המוצג לעיל. האור יכול להיות דולק (מיוצג על ידי '1') או כבוי (מיוצג על ידי '0'). המצב משתנה בהתאם לקלט של מהירות המעקב (ts) ומהירות האופטימלית הקבועה.

תרשים קופסה שחורה

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

שלב 3: קידוד VHDL

לפרויקט זה ישנם שלושה קבצי VHDL שבונים את העיצוב שלנו, מודול Fuel_Efficency_FinalProject, מודול Speed_Comparator ומודול sseg_dec שבו Speed_Comparator ו- sseg_dec נמצאים ברמה הנמוכה יותר כדי להרכיב את מודול יעילות הדלק.

מודול משווה המהירות

מודול זה לוקח מהירות 8 סיביות בקילומטרים לשעה ומשווה אותו למהירות האופטימלית עבור כמות הצריכה הגס הנמוכה ביותר. המהירות האופטימלית הממוצעת עבור קילומטראז הגז הטוב ביותר במכונית היא בסביבות 55 קמ ש ומטה. עם זאת, זה יכול להשתנות ממכונית לרכב שניתן להתאים אישית בתוך המודול. שורה 45 של קוד הניתנת לשינוי לצורך אופטימיזציה אישית מוצגת להלן

if (מעקב> "00110111") אז

כאשר ניתן לשנות את "00110111" (55 בינארי) לכל מספר של 8 סיביות למהירות האידיאלית של המכונית האישית שלך בכמות צריכת הדלק הנמוכה ביותר.

אם המהירות עולה על המספר האופטימלי הנורה תידלק ותודיע שהמכונית לא משתמשת ביעילות דלק מרבית.

מודול התצוגה של שבעה פלחים

מודול זה לוקח מהירות של 8 סיביות בקילומטרים לשעה ומציג את המהירות בתצוגת שבעה הקטעים. זה יאפשר למשתמש לדעת כמה מהר הוא הולך לדעת אם הוא צריך להאט. מודול זה ניתן לנו במסגרת הכיתה שלנו ונכתב על ידי בריאן מיילי המכיל את הרכיבים bin2bcdconv הממיר את הקלט הבינארי של 8 סיביות לצורת BCD שקל יותר לפענח ול clk_div כך שהתצוגה תוכל להציג חזותית מספר בעל 3 ספרות על ידי שינוי פלט האנודה בתדר שעון גבוה. קוד זה מקבל מספר של 8 סיביות ממיר את המספר לתצוגה קריאה בלוח הבסיס 3.

מודול צריכת הדלק

זהו הקובץ הראשי שמשתמש במודולים לעיל כרכיבים. הכניסות שלו הן השעון ומהירות המעקב. השעון בנוי בתוך לוח הבסיס 3 ומהירות המעקב ניתנת על ידי פלט הארדואינו המחובר ליציאת האות האנלוגי pmod (XADC). כל פיסת מהירות המעקב של 8 סיביות היא מפה ליציאות המוצגות בתוך חלק החיווט בשלב 4. ניתן למצוא אילוצים אחרים של Basys 3 בתוך Basys_3_Master.xdc.

שלב 4: קידוד Arduino

פרויקט זה משתמש בקובץ ארדואינו מרכזי אחד הדורש שימוש במספר ספריות שחלקן כבר נמצאות בתוכנית הארדואינו שלך ואחרות יש להוריד מאתר זה או מאתר Adafruit (קישור להלן).

ספריות

קישור לדף Adafruit BNO055:

Adafruit פיתחה 2 ספריות לשימוש ב- BNO055, ונותנות דוגמאות כיצד להשתמש בהן. בפרויקט זה נשתמש בפונקציית.getVector כדי שהארדואינו יפיק את נתוני מד התאוצה.

פרויקט זה משתמש גם בכמה ספריות שכבר מותקנות בתוכנית arduino, כמו ספריית המתמטיקה.

קובץ ראשי

קובץ זה משתמש בנתוני מד התאוצה מהפונקציה.getVector ומשתמש במשוואות מתמטיות כדי להפוך אותו למהירות בקילומטרים לשעה, ולאחר מכן מוציאים ב -8 סיביות נתונים ל- Basys 3 (עיין בסעיף "חיווט החומרה" לפרטים נוספים מֵידָע).

שלב 5: חיווט החומרה

חיווט החומרה
חיווט החומרה
חיווט החומרה
חיווט החומרה
חיווט החומרה
חיווט החומרה
חיווט החומרה
חיווט החומרה

חיווט Arduino

יש לחבר את הארדואינו ללוח הלחם כמו בתמונות למעלה.

חיווט Basys 3

יציאות הארדואינו ממופות לכניסות ה- Basys 3 דרך יציאות האות האנלוגי pmod JXADC. ניתן לחבר כל סיבוב של מהירות המעקב של 8 סיביות לאחד הפינים המוצגים בתמונה למעלה. הסיביות הפחות משמעותיות (סיכה דיגיטלית 7) מתחברת ל- ts (7) והסיבית המשמעותית ביותר (סיכה דיגיטלית 0) מתחברת ל- ts (0).

מוּמלָץ: