תוכן עניינים:
- שלב 1: בחר חוט סיגל
- שלב 2: הארך את החוט ללוח Arduino
- שלב 3: ניתוח אותות
- שלב 4: קוד את ניתוח האותות שלך
- שלב 5: זהה מסנן
- שלב 6: סינון: חלק 1
- שלב 7: סינון: חלק 2
- שלב 8: סינון: חלק 3
- שלב 9: סינון: חלק 4
וִידֵאוֹ: השתמש בארדואינו להצגת סל"ד של מנוע: 10 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:14
מדריך זה יפרט כיצד השתמשתי ב- Arduino UNO R3, תצוגת LCD בגודל 16x2 עם I2C, ורצועת LED לשמש כמד מהירות מנוע והזזה אור במכונית מסילת אקורה אינטגרה שלי. הוא כתוב במונחים של מישהו בעל ניסיון או חשיפה לתוכנת Arduino או קידוד באופן כללי, התוכנה המתמטית MATLAB, ויצירה או שינוי של מעגלים חשמליים. בעתיד זה עשוי להיות מתוקן יותר להבנה עבור מישהו עם מעט מאוד ניסיון בנושאים אלה.
שלב 1: בחר חוט סיגל
יהיה עליך לקבל אות המתאם למהירות המנוע. אפשר להוסיף מערכת המודדת את מהירות המנוע אך הרבה יותר מעשי להתחבר לחוט קיים שנושא מידע על מהירות המנוע. לרכב בודד יש מספר מקורות לכך, והוא עשוי להשתנות באופן עצום אפילו משנה לשנה בדגם רכב יחיד. למען הדרכה זו אשתמש בדוגמה של המכונית שלי, מסלול שונה 2000 Acura Integra LS. גיליתי שבמנוע שלי (B18B1 עם OBD2) יש מתח החוצה שאינו בשימוש שגובהו 12V ויורד ל 0V עם השלמת מהפכה מלאה.
דברים שיעזרו לזהות אות מהירות מנוע פוטנציאלית:
- תרשים חיווט לרכב שלך
- מחפש פורומים לרכב שלך הכולל אותות מנוע/ECU
- מכונאי או חובב מכוניות ידידותי
שלב 2: הארך את החוט ללוח Arduino
לאחר שבחרת אות מתאים, יהיה עליך להאריך אותו לכל מקום בו אתה מציב את לוח ה- Arduino שלך. החלטתי למקם את שלי בתוך הרכב במקום בו היה הרדיו, אז ניתבתי את החוט החדש מהמנוע, דרך חגורת גומי בקיר האש, וישר לאזור הרדיו. מכיוון שכבר יש כמות עצומה של מדריכי הדרכה בנושא הפשטה, הלחמה והגנה על חיווט, לא אסביר את התהליך הזה.
שלב 3: ניתוח אותות
כאן הדברים יכולים להסתבך. הבנה כללית של ניתוח אותות ובקרות תעזור לך רחוק, אך היא ניתנת לביצוע עם מעט ידע.
סביר להניח כי חוט האות שנבחר לא ירוק את הערך המדויק של מהירות המנוע. יהיה עליו לעצב ולשנות אותו בכדי לתת את המספר המדויק של סל ד המנוע שאתה רוצה. בשל העובדה שכל מכונית וחוט אות שונים בחרו עשויים להיות שונים, מנקודה זו ואילך אסביר כיצד השתמשתי באות המיקום מהמפיץ באינטגרה שלי.
האות שלי בדרך כלל הוא 12V ויורד ל 0V בסיום סיבוב מלא אחד. אם אתה יודע את הזמן להשלים סיבוב אחד מלא, או מחזור אחד מלא, ניתן לתרגם זאת בקלות לסיבובים/דקה באמצעות כמה מושגים בסיסיים.
1 / (שניות למחזור) = מחזורים לשנייה, או הרץ
סיבובים לדקה = Hz * 60
שלב 4: קוד את ניתוח האותות שלך
שיטה זו דורשת לקבל את הזמן הדרוש לאות הכניסה להשלמת מחזור אחד שלם. למרבה המזל לתוכנת Arduino IDE יש פקודה שעושה בדיוק את זה, PulseIn.
פקודה זו תחכה לאות שיעבור סף, תתחיל לספור ותפסיק לספור כאשר הסף נחצה שוב. יש לציין כמה פרטים בעת השימוש בפקודה, לכן אצרף כאן קישור למידע של PulseIn:
PulseIn יחזיר ערך במיקרו שניות, וכדי לשמור על המתמטיקה פשוטה יש להמיר את זה מיד לשניות רגילות. בעקבות המתמטיקה בשלב הקודם, ניתן להשוות את משך הזמן הזה ישירות לסל ד.
הערה: לאחר ניסוי וטעייה גיליתי שהמפיץ משלים שני סיבובים לכל סיבוב של גל ארכובה של המנוע, אז פשוט חילקתי את התשובה שלי ב -2 כדי להסביר זאת.
שלב 5: זהה מסנן
אם יש לך מזל לאותך לא יהיה 'רעש' (תנודות) ומהירות המנוע שלך תהיה מדויקת. במקרה שלי, היה הרבה רעש מהמפיץ שלעתים קרובות נתן מתח רחוק מהצפוי. זה הופך לקריאות שווא מאוד של מהירות המנוע בפועל. יהיה צורך לסנן את הרעש הזה.
לאחר קצת ניתוח אותות, כמעט כל הרעש הגיע בתדרים (הרץ) גבוהים בהרבה ממה שהמנוע עצמו הוציא (וזה נכון לרוב המערכות הדינמיות האמיתיות). המשמעות היא שמסנן מעבר נמוך הוא מועמד אידיאלי לטפל בכך.
מסנן מעבר נמוך מאפשר לעבור תדרים נמוכים (רצויים) ומחליש את התדרים הגבוהים (לא רצויים).
שלב 6: סינון: חלק 1
ניתן לעצב את המסנן ביד, אולם השימוש ב- MATLAB יאיץ זאת באופן משמעותי אם תהיה לך גישה לתוכנה.
ניתן להשוות פילטר מעבר נמוך לפונקציית העברה (או שבר) בתחום Laplace (תחום תדר). תדר הכניסה יוכפל בשבר זה והפלט הוא אות מסונן שיש בו רק את המידע שאתה רוצה להשתמש בו.
המשתנה היחיד בפונקציה הוא tau. טאו שווה ל- 1 / אומגה, כאשר אומגה היא תדר החיתוך שאתה רוצה (חייב להיות ברדיאנים לשנייה). תדירות הניתוק היא הגבול שבו תדרים גבוהים ממנו יוסרו ותדרים נמוכים ממנו יישמרו.
הגדרתי את תדירות הניתוק שווה לסל"ד שהמנוע שלי לעולם לא יגיע (990 סל"ד או 165 הרץ). גרפי ה- FFT מראים בערך אילו תדרים האות הגולמי שלי נשאו והתדרים שיצאו מהמסנן.
שלב 7: סינון: חלק 2
כאן MATLAB נוצל שוב למען הזמן. תדירות הניתוק מוגדרת, ומכאן מוצגת פונקציית ההעברה המתקבלת. זכור שחלק זה חל רק על תחום Laplace ואינו יכול לשמש ישירות בבקר מיקרו מבוסס זמן כמו Arduino UNO R3.
שלב 8: סינון: חלק 3
ל- MATLAB יש פקודה שתמיר פונקציה רציפה (תחום תדר) לפונקציה נפרדת (תחום זמן). הפלט של פקודה זו יספק משוואה הניתנת לשילוב בקלות בקוד IDE של Arduino.
שלב 9: סינון: חלק 4
בשרטוט Arduino, כלול את המשתנים u ו- y לפני ההתקנה. הפקודה float פשוט מגדירה כיצד המשתנה יאחסן נתונים (דברים כמו ערך מקסימלי, עשרוני וכו '…) וקישור למידע נוסף בנושא זה יינתן כאן: https://www.arduino.cc/reference/en/language /varia…
בלולאה שבה מתרחשת ההמרה מהאות הגולמי למהירות המנוע, כלול את משתנה u ואת משוואת המרובים y. ישנן דרכים רבות להשתמש בהן, אך יש להגדיר את המשתנה u שווה לאות הקלט הגולמי הנמדד, והמשתנה y יהיה הערך המסונן.
מוּמלָץ:
מנוע צעד נשלט על ידי מנוע צעד ללא מיקרו -בקר (V2): 9 שלבים (עם תמונות)
מנוע צעד מבוקר צעדים ללא מיקרו -בקר (V2): באחד ממדריכי ההוראות הקודמים שלי, הראיתי לך כיצד לשלוט במנוע צעד באמצעות מנוע צעד ללא מיקרו -בקר. זה היה פרויקט מהיר ומהנה אך הוא בא עם שתי בעיות שיפתרו במדריך זה. אז, שנינות
קטר דגם מבוקר באמצעות מנוע צעד - מנוע צעד כמקודד סיבובי: 11 שלבים (עם תמונות)
קטר דגם מבוקר באמצעות מנוע צעד | מנוע צעד כמקודד סיבוב: באחד מההנחיות הקודמות למדנו כיצד להשתמש במנוע צעד כמקודד סיבוב. בפרויקט זה, כעת נשתמש במנוע הצעד ההופך את המקודד הסיבובי לשליטה על קטר דגם באמצעות מיקרו -בקר ארדואינו. אז בלי fu
מנוע צעד מבוקר צעד מנוע - מנוע צעד כמקודד סיבובי: 11 שלבים (עם תמונות)
מנוע צעד מבוקר צעד מנוע | מנוע צעד כמקודד סיבובי: האם כמה מנועי צעד שוכבים ורוצים לעשות משהו? במדריך זה, בואו להשתמש במנוע צעד כמקודד סיבובי כדי לשלוט במיקום מנוע צעד אחר באמצעות מיקרו -בקר Arduino. אז בלי להתבטא יותר, בואו נגיד
כיצד לשנות מנוע סרוו לסיבוב רציף (רובוט מנוע אחד): 8 שלבים (עם תמונות)
כיצד לשנות מנוע סרוו לסיבוב רציף (רובוט מנוע אחד): מדריך זה הוא חלק מהליכון המנוע האחד. Https://www.instructables.com/id/How-to-build-the-one-motor- הליכון/יש טריליוני הדרכה כזו, אני יודע :-) הם לוקחים בבית הספר במהלך הפסקת הצהריים עם מצלמת Sony Mavica (פלופ
השתמש בארדואינו עם בקר N64: 5 שלבים (עם תמונות)
השתמש בארדואינו עם בקר N64: ישנן הדרכות לשימוש בבקר NES עם ארדואינו, אך שימוש בבקר N64 המסובך יותר והג'ויסטיק האנלוגי שלו הוא בעל משיכה ברורה. אם יש לך ארדואינו בסביבה ואתה לא רוצה לקנות Adaptoid, זה מורה על