מתקן בדיקת מנוע צעד: 3 שלבים
מתקן בדיקת מנוע צעד: 3 שלבים
Anonim
Image
Image
תִיוּל
תִיוּל

לא היה לי כמעט שום ניסיון בנהיגה במנועי צעד, אז לפני עיצוב, הדפסה, הרכבה ותכנות של השעון האנלוגי לתיקון אוטומטי 'עתיק' (https://www.instructables.com/id/Antique-Auto-Correcting-Analog-Clock/) בעזרת מנוע צעד, החלטתי לעצב ולבדוק את התוכנה באמצעות מתקן בדיקה פשוט בהרבה. אם לך, כמוני, אין לך כמעט שום ניסיון עם מנועי צעד, אז אני מקווה שההנחיה הקצרה הזו עם קוד המקור תעזור.

מתקן הבדיקה דורש את הרכיבים הבאים:

  • לוח אב טיפוס.
  • נוצה Adafruit ESP32 עם כותרות נקבות.
  • לוח בקרת צעדים מבוסס ULN2003.
  • מנוע צעד 28BYJ-48 5vdc.
  • כמה חוטי מגשר בין זכר לנקבה.
  • סוללת ליתיום של Adafruit 3.7vdc.
  • יד מחוון מודפסת תלת מימד.

בקר צעדים, מנוע צעד וחוטי מגשר בהם השתמשתי כלולים בחבילה 5 שרכשתי בערכה מקוונת (חפש "TIMESETL 5 יחידות DC 5V מנוע צעד 28BYJ-48 + 5 יחידות לוח נהגים ULN2003 + כבל 40 מגברים נקבה זכר נקבה ").

הסוללה אופציונלית. שים לב ליציאות הסוללה 3.7vdc, אך לוח בקר הצעדים והמדרגה הם 5vdc. מתקן הבדיקה יפעל באמצעות הסוללה בלבד, אפילו במתח הנמוך יותר.

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

שלב 1: חיווט

תִיוּל
תִיוּל
תִיוּל
תִיוּל

השתמשתי בחוטי המגשר זכר / נקבה הכלולים בערכה כדי לחבר את מתקן הבדיקה. שישה חוטים נדרשים ומוכנסים כדלקמן:

  1. סיכת ESP32 14 (זכר) אל סיכת INP (לוח נקודה).
  2. סיכת ESP32 32 (זכר) אל סיכת IN3 (נקבה).
  3. סיכה ESP32 15 (זכר) אל סיכת IN2 (נקבה).
  4. סיכת ESP32 33 (זכר) לסיכת לוח צעד IN1 (נקבה).
  5. סיכת ESP32 "GND" (זכר) לסיכת לוח המדרגות "-" (נקבה).
  6. סיכת ESP32 "USB" (זכר) להפעלת USB או "BAT" (זכר) להפעלת סוללה, אל סיכת לוח הצעדים "+" (נקבה).

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

לבסוף, אם אתה משתמש בסוללה, חבר אותה למחבר הסוללה ESP32.

שלב 2: אינדיקטור

אינדיקטור
אינדיקטור

עבור מחוון על מנוע הצעד, עיצבתי והדפסתי תלת מימד יד מחוון "Hand.stl". הדפסתי את יד המחוון בגובה שכבה.15 מ"מ, מילוי של 20% ללא תומכים, ואז לחצתי אותו על פיר מנוע הצעד.

כחלופה, קלטת, קרטון או חומר אחר יכולים לשמש כאינדיקטור.

שלב 3: תוכנה

תוֹכנָה
תוֹכנָה

כתבתי את תוכנת מבחן המדרגות בסביבת 1.85 Arduino. אם עדיין לא עשית זאת, הורד את סביבת Arduino ומנהלי ה- USB הדרושים למחשב והתקן אותם. כמו כן, בקר באתר Adafruit לכל תוכנה נוספת הקשורה ל- Adafruit ESP32. מצאתי שהקישור הזה עוזר מאוד: Adafruit ESP32 והסביבה של Arduino.

עם כבל USB המחובר בין המחשב שלך ל- ESP32 ו- "Stepper.ino" נטען בסביבת ה- Arduino, הורד את "Stepper.ino" ל- ESP32.

לאחר הורדתו, הצעד צריך לעלות 6 מעלות פעם בשנייה.

כתבתי את תוכנת הבדיקה הזו משתי סיבות; ראשית, ללמוד כיצד להניע מנוע צעד, ושנית, להמיר את 4096 הצעדים לכל סיבוב של מנוע הצעד ל- 60 "קרציות" של שנייה אחת של 6 מעלות לשעון.

הפונקציה "שלב (nDirection)" מניעה את מנוע הצעדים. פונקציה זו שומרת על משתנה מספר שלם מקומי (סטטי) "nPhase", אשר מצטמצם או מוריד באחד (בכל פעם שנקראת הפונקציה), על פי סימן הארגומנט פונקציה nDirection. משתנה זה מוגבל בטווח ל -0 עד 7, אשר כאשר משתמשים בו יחד עם מתג המארז, מניע את שלבי המנוע בהתאם למפרטי היצרנים עבור כל שלב.

הפונקציה "עדכון ()" קובעת מתי וכמה צעדים יש לנקוט בכל קרציה כדי לחלל באופן שווה 60 קרציות לכל 360 מעלות סיבוב. פונקציה זו מדריכה את מנוע הצעד 68 או 69 שלבים עבור כל סימון. לדוגמה, אם הפונקציה השתמשה ב -68 שלבים בלבד לכל סימן, אז (68 שלבים * 60 קרציות) = 4080 צעדים לא יהיו מספיק שלבים כדי להשלים את 360 מעלות הסיבוב (זכור שהצעד דורש 4096 צעדים עבור 360 מעלות סיבוב). ואם הפונקציה השתמשה ב 69 שלבים לכל קרציה, אז (69 שלבים * 60 קרציות) = 4140 יהיו יותר מדי צעדים. האלגוריתם הפשוט שכתבתי מפיץ באופן שווה 68 ו -69 קרציות צעד לאורך כל הסיבוב של 360 מעלות, ויכול לקבוע לאיזה כיוון סיבוב המהיר ביותר לספירה השנייה הרצויה (בשימוש בשעון).

וכך עיצבתי ובדקתי את התוכנה עבור שעון אנלוגי לתיקון אוטומטי 'עתיק'.

אם יש לך הצעות ו / או שאלות, אנא אל תהסס להגיב ואעשה כמיטב יכולתי להשיב.

מוּמלָץ: