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

מתקן נימה רובוטית לארדואינו: 8 שלבים (עם תמונות)
מתקן נימה רובוטית לארדואינו: 8 שלבים (עם תמונות)

וִידֵאוֹ: מתקן נימה רובוטית לארדואינו: 8 שלבים (עם תמונות)

וִידֵאוֹ: מתקן נימה רובוטית לארדואינו: 8 שלבים (עם תמונות)
וִידֵאוֹ: עשר הנשים הכי גבוהות בעולם┃טופטן 2024, יולי
Anonim
Image
Image

למה כלי ממונע

נימה של מדפסות תלת מימד - בדרך כלל כמעט חזקה - נמשכת על ידי המכבש בזמן שהגליל מונח בקרבת המדפסת, וניתן לסובב אותו בחופשיות. ראיתי הבדלים משמעותיים בהתנהגות החומרית בהתאם לרמת השימוש, בהתייחסו ללחמניות נימה של 1 ק"ג. סליל נימה חדש (מלא) זורם כמעט טוב אך הכוח המופעל על ידי המכבש צריך להיות רלוונטי יחסית: המשקל הוא לפחות 1.5 ק"ג.

מנוע המכבש (ברוב המקרים צעד Nema17) בעל כוח מספיק לביצוע העבודה אך שני ההילוכים של המכבש דוחפים את נימה לצד הקצה החם תוך כדי עבודה אוספים חלקיקי נימה עקב הכוחות המופעלים; זה דורש תחזוקה תכופה של מכבש כדי למנוע סתימת הזרבובית. חלקיקים אלה נוטים להתנתק ולהתערבב עם נימה נקייה בזמן האכילה, הגדלת בעיות החיתוך ובלאי זרבובית תכופים יותר; זה קורה בתדירות גבוהה יותר עם חרירים בקוטר 0.3 מ מ.

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

הערכה זמינה באתר Tindie.com

שלב 1: תוכן הערכה

תוכן הערכה
תוכן הערכה
תוכן הערכה
תוכן הערכה

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

בהתקנה שלי השתמשתי במנוע מוברש עם 12 מ"מ מקלנאן, אך כל מנוע בקוטר 37 מ"מ יכול להתאים כראוי בתוך תמיכת המנוע.

את ההופעות הטובות ביותר מגיעים עם מגן ארדואינו TLE94112LE של אינפיניון (סקירה מלאה כאן); לוח בקר מנוע DC זה יכול לתמוך בעד 6 ערכות מתקן רובוטיות שונות בו זמנית.

בדקתי את כל המערכת הן על Arduino UNO R3 והן על ערכת האתחול XMC1100 הלוח התואמת Arduino על ידי Infineon והמערכת הגיבה היטב לשני לוחות בקר המיקרו.

השימוש במגן TLE94112LE מוצע אך אינו הכרחי. כל בקר מנוע DC ל- Arduino - כולל פרויקט משלך! - יכול לעבוד מצוין עם הכלי הזה

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

כלים שאתה צריך

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

שלב 2: הפרויקט והעיצוב

הפרויקט והעיצוב
הפרויקט והעיצוב
הפרויקט והעיצוב
הפרויקט והעיצוב
הפרויקט והעיצוב
הפרויקט והעיצוב

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

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

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

ביצירת העיצוב עקבתי אחר שורה של הנחות:

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

זו התוצאה אליה הגעתי.

שלב 3: הרכבת הבסיס

הרכבת הבסיס
הרכבת הבסיס
הרכבת הבסיס
הרכבת הבסיס
הרכבת הבסיס
הרכבת הבסיס

השלב הראשון הוא הרכבת הבסיס עם חיישן המשקל.

  1. הכנס את צינור ציר הנושא הקטן לחור הנושא
  2. שים את שני דיסקי ההפרדה לצידי המיסב
  3. הציגו את הרכיבים בתוך תמיכת הנושא בגודל "U", ליישר את החורים
  4. הכנס את בורג אלן לצד אחד ואת מכונת הכביסה והאגוז לצד השני סוגר את האום ללא מאמץ רב מדי

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

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

השלב הבא הוא הרכבת סרגל חיישן המשקל שמחזיק את הבסיס התחתון והעליון יחד. לחיישן המשקל יש שני ברגי אלן שונים משני הצדדים וכדאי לכוון אותו כך שתווית המשקל המרבי תהיה קריאה כאשר הבסיס ממוקם נכון. לבסיס התחתון יש שני חורי צד נוספים לתיקון מגבר A/D חיישן המשקל. המגבר המבוסס על ה- HX711 IC יופעל ויחובר ללוח ה- Arduino באמצעות ארבעת החוטים כפי שמוצג בדף הנתונים של החיישן המצורף.

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

הרכיב הראשון הוגדר!

שלב 4: הרכבת חלקי מנוע התנועה של סליל

הרכבת חלקי מנוע סליל
הרכבת חלקי מנוע סליל
הרכבת חלקי מנוע סליל
הרכבת חלקי מנוע סליל
הרכבת חלקי מנוע סליל
הרכבת חלקי מנוע סליל

ההליך הקל יותר להרכיב את מנוע התנועה של הסליל הוא הרכבת בנפרד את ארבעת הרכיבים החשובים ביותר ואז השלמת הבניין הסופי:

מנוע DC המונע בתיבת ההילוכים של המנוע

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

ההילוך הגדול המונע

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

מחזיק מנעול הסליל

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

כפי שמוצג בתמונות מחזיק מנעול הסליל בנוי בשני חלקים. תחילה הכנס את אגוז ה- M4 לחלק הגדול יותר של הבלוק ואז הדבק את החלק השני (המכסה) ושמור את הבלוקים יחד. האום נשאר כלוא בתוך מחזיק המנעול שיוברג לציר המונע על הברגה.

תיבת המסבים

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

  1. הברג את אגוז ה- M4 הראשון לאחד משני הקצוות של הציר המונע על מחזיק הסליל המושחל
  2. הכנס את המסב הראשון
  3. הכנס את המפריד
  4. הכנס את המסב השני
  5. הברג את האום השני ונעול אותו באופן מתון. מפריד הפלסטיק הפנימי יתנגד לכוח מספיק בכדי לשמור את הדברים במקומם גם לשימוש ממושך.
  6. הכנס את המיסבים המורכבים לקופסת הנושא. יש לעשות זאת בכפייה כדי לתת את התוצאות הטובות יותר, לכן אל תרחיב יותר מדי את החלק הפנימי של הקופסה בעת חידוד חלקי הפלסטיק.

אנו מוכנים להרכבת הרכיבים הסופיים!

שלב 5: השלמת הרכבה של מנוע התנועה

השלמת הרכבה של מנוע התנועה
השלמת הרכבה של מנוע התנועה
השלמת הרכבה של מנוע התנועה
השלמת הרכבה של מנוע התנועה
השלמת הרכבה של מנוע התנועה
השלמת הרכבה של מנוע התנועה

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

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

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

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

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

בניין המכונאים הושלם!

שלב 6: בונוס: איך התאמתי את התמיכה לניהול הערכה

בונוס: איך התאמתי את התמיכה לניהול הערכה
בונוס: איך התאמתי את התמיכה לניהול הערכה
בונוס: איך התאמתי את התמיכה לניהול הערכה
בונוס: איך התאמתי את התמיכה לניהול הערכה
בונוס: איך התאמתי את התמיכה לניהול הערכה
בונוס: איך התאמתי את התמיכה לניהול הערכה

כדי לשמור על הערכה במקום הכנתי מבנה פשוט מאוד המבוסס על שני צינורות מרובעים מאלומיניום לתמוך הן בבסיס והן במבנה התנועה. הבסיס קבוע עם ארבעה ברגים לשתי המסילות (באורך של כ -25 ס מ) ועם כמה תומכים תלת -ממדיים קטנים יש לי תיקונים של מנוע התנועה שניתן להזיז אותו בקלות על מנת להכניס ולהסיר את גליל הנימה בקלות.

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

שלב 7: חיווט וחיבור לארדואינו

Image
Image
חיווט וחיבור לארדואינו
חיווט וחיבור לארדואינו

כפי שהוסבר בשלב התוכן של הערכה, השתמשתי במגן מנוע Infineon TLE94112LE DC עבור Arduino ובדקתי את המנוע הן בערכת האתחול של Arduino UNO R3 והן ב- Infineon XMC110.

אם אתה שולט במנוע (צריך תכונות PWM) עם לוח בקר DC לבחירתך, פשוט התאם את ההוראות למפרט הטכני של המגן שלך.

הערה על מגן TLE04112LE Arduino

אחת המגבלות שחוויתי עם מגני בקרת מנועים אחרים עבור Arduino היא שהם משתמשים בתכונות של אותו בקר מיקרו (כלומר סיכות PWM ו- GPIO); המשמעות היא שהלוח שלך מתמסר למשימות אלה בעוד שרק מעט משאבים אחרים (MPU ו- GPIO) זמינים לשימושים אחרים.

לאחר האפשרות לשים את הידיים על מגן ה- TLE94122LE Arduino לבדיקת כבישים, היתרון הבולט ביותר של ה- IC עליו מבוסס הלוח הוא רק שלמותו. לוח Arduino מתקשר למגן באמצעות פרוטוקול SPI באמצעות שני סיכות בלבד. כל פקודה שאתה שולח למגן מעובדת באופן אוטונומי על ידי ה- IC TLE94112LE מבלי לצרוך משאבי MPU. תכונה יוצאת דופן נוספת של לוח Infineon היא האפשרות לשלוט בעד שישה מנועים מוברשים עם שלושה ערוצי PWM הניתנים לתכנות. המשמעות היא שארדואינו יכול להתקין אחד או יותר מנועים, להפעיל אותם ולהמשיך לעבוד על משימות אחרות. מגן זה גילה מושלם לתמיכה בעד שישה גלילי נימה שונים בעת ובעונה אחת התנועה היא רק אחת המשימות המופקדות על MPU. בהתחשב באפשרות לנהל שישה סלילי נימה שונים עם Arduino + מגן יחיד להשפעות עלות בקר הבקרה. על כל בקר נימה בודד בפחות מ -5 יורו.

חיישן המשקל

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

השתמשתי בתא עומס זול בטווח 0-5 ק ג יחד עם לוח קטן המבוסס על מגבר HX711 AD, IC ספציפי לניהול חיישני תאי העומס. לא היו בעיות ממשק מכיוון שהיא זמינה בספריית Arduino שעובדת היטב.

שלושה שלבים להגדרת החומרה

  1. הכנס את המגן על גבי לוח ה- Arduino או את ערכת האתחול של ה- Infineon XMC110
  2. חבר את חוטי המנוע למחברים המוברגים Out1 ו- Out2 של המגן
  3. חבר את הכוח ואת האותות ממגבר חיישן המשקל HX711 AD לסיכות הארדואינו. במקרה זה השתמשתי בסיכות 2 ו -3 אך כל הסיכות החינמיות בסדר.

אזהרה: עמודים 8 ו -10 שמורים על ידי מגן TLE94113LE לחיבור SPI

זה הכל! מוכן להתקין את התוכנה? לך על זה.

שלב 8: מערך הפקודה תוכנה ובקרה

מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה
מערך הפקודה תוכנה ובקרה

ניתן להוריד את התוכנה המתועדת המלאה ממאגר GitHub 3DPrinterFilamentDispenserAndMonitor

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

ישנה סיבה כפופה למספר הפינים הזמינים ב- Arduino UNO החלטתי לשלוט במערכת באמצעות מסוף ה- USB הטורי; מכיוון שכל יחידה ממונעת מבוססת על חיישן משקל, שליטה על שישה מכשירי נימה שונים דורשת קריאת נתונים משישה חיישני משקל. כל תא עומס "צורך" שני סיכות, סיכה 0 ו -1 שמורות (Tx/Rx) לסדרה והפינים 8 ו -10 שמורים לערוץ SPI המחבר את המגן TLE94112LE.

מצב מערכת

תוכנת הבקרה פועלת באמצעות ארבעה מצבים שונים, המוגדרים ב- filament.h:

#define SYS_READY "מוכן" // מערכת מוכנה

#הגדר SYS_RUN "פועל" // נימה בשימוש #הגדר SYS_LOAD "טען" // גליל נטען #הגדר SYS_STARTED "התחיל" // התחיל היישום // קודי סטטוס #הגדר STAT_NONE 0 #הגדר STAT_READY 1 #הגדר STAT_LOAD 2 #הגדר STAT_RUN 3

סטטוס: התחיל

מצב זה מתרחש לאחר איפוס חומרה או כאשר המערכת מופעלת. שיחת ההפעלה (וההגדרה () כאשר הסקיצה מתחילה) מאתחלת את ערכי ברירת המחדל הפנימיים ויש להתחיל ללא משקל נוסף על הרציף כחלק מרצף האתחול היא רכישת הטרה המוחלטת להגיע למשקל האפס הפיזי..

סטטוס: מוכן

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

סטטוס: טעינה

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

סטטוס: רץ

סטטוס זה מאפשר חישוב משקל אוטומטי ומפיץ נימה אוטומטי.

הודעות מסוף

הגרסה הנוכחית של התוכנה מחזירה מסרים קריאים לאדם למסוף בהתאם לפקודות. הודעות המחרוזת מוגדרות בשני קבצי כותרות: command.h (הודעות ותגובות הקשורות בפקודה) ו- filament.h (מחרוזות המשמשות את המנתח ליצירת הודעות מורכבות).

פקודות

שני קבצים שונים מעורבים בניהול הפקודות: command.h כולל כל הפקודות והפרמטרים הקשורים ו- filament.h כולל כל הקבועים וההגדרות המשמשים את מערכת הניפוח ואת הניתוח.

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

מילות המפתח של הפקודה תלויות באותיות רישיות וצריכות להישלח מהמסוף. אם פקודה אינה מתאימה למצב הנוכחי של זה אינה מזוהה הודעת פקודה שגויה מוחזרת אחרת הפקודה מבוצעת.

פקודות סטטוס

שנה את הסטטוס הנוכחי של המערכת וההתנהגות מותאמת גם כן

פקודות נימה

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

פקודות יחידות

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

פקודות מידע

הצג קבוצות מידע בהתאם למצב המערכת

פקודות מוטוריות

שלוט במנוע להזנת נימה או משיכה.

כל הפקודות המנועיות עוקבות אחר נתיב האצה/האטה. שתי הפקודות הזנות והמשוך מבצעות רצף קצר כהגדרתו ב- motor.h על ידי הקבוע FEED_EXTRUDER_DELAY בזמן שפקודות feedc ו- pullc פועלות ללא הגבלת זמן עד שלא מתקבלת פקודת עצירה.

פקודות מצב ריצה

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

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

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

היגיון יישומים

היגיון האפליקציה מופץ ב- main.ino (הסקיצה של Arduino) לאורך שלוש פונקציות: setup (), loop () ו- parseCommand (commandString)

המערכון משתמש בשתי מחלקות נפרדות: מחלקת פילמנט ווייט לניהול כל חישובי החוטים וקריאת החיישנים באמצעות מחלקת HX711 IC ו- MotorControl המתממשקים בין שיטות הרמה הנמוכה של מגן TLE94112LE Arduino.

להכין()

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

לוּלָאָה()

פונקציית הלולאה הראשית מנהלת שלושה תנאים שונים.

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

  1. בדוק (במצב אוטומטי) אם המכבש צריך יותר נימה
  2. אם המנוע פועל בדוק אם יש שגיאות חומרה (מוחזר על ידי ה- TLE94112LE)
  3. אם יש נתונים סדרתיים זמינים לנתח את הפקודה

parseCommand (commandString)

פונקציית הניתוח בודקת את המחרוזות המגיעות מהסדרה וכאשר מזוהה פקודה היא מעובדת באופן מיידי.

כל פקודה פועלת כמכונת מדינה המשפיעה על פרמטר כלשהו של המערכת; בעקבות ההיגיון הזה כל הפקודות מצטמצמות לשלוש פעולות עוקבות:

  1. שלח פקודה למחלקה FilamentWeight (פקודות משקל) או למחלקה MotorControl (פקודות מנוע)
  2. מבצע חישוב לעדכון ערכי משקל או לעדכון אחד הפרמטרים הפנימיים
  3. הצג במסוף ופלט המידע בסיום הביצוע

התקן את ספריית HX711 Arduino, הורד את התוכנה מ- GitHub והעלה אותה ללוח ה- Arduino שלך ואז תהנה!

מוּמלָץ: