- חומרים נדרשים
- הבנת מנועי BLDC
- מדוע מזל"טים ושאר רב-מסמכים משתמשים במנועי BLDC?
- מדוע אנו זקוקים ל- ESC ומה תפקידו?
- כמה מונחים נפוצים עם BLDC ו- ESC:
- דיאגרמת מעגל בקרת מנוע Arduino BLDC
- תוכנית לבקרת מהירות של BLDC באמצעות Arduino
- Arduino BLDC בקרת מנוע
לבנות דברים ולהביא אותם לעבודה, כמו שאנחנו רוצים, תמיד היה כיף צרוף. בעוד שהוסכם על כך, בניית דברים שיכולים לעוף תשאב בהתרסה קצת יותר חרדה בקרב התחביבים ומתעסקי החומרה. כן! אני מדבר על רחפנים, מסוקים, מטוסים ובעיקר רב-מסמכים. כיום זה הפך להיות קל מאוד לבנות לבד בשל התמיכה הקהילתית הזמינה באינטרנט. דבר נפוץ אחד עם כל הדברים שעפים הוא שהם משתמשים במנוע BLDC, אז מהו מנוע BLDC זה? למה אנחנו צריכים את זה כדי להטיס דברים? מה כל כך מיוחד בזה? איך לקנות את המנוע הנכון ולמשק אותו עם הבקר שלך? מהו ESC ומדוע אנו משתמשים בו? אם יש לך שאלות כאלה, הדרכה זו היא הפיתרון היחיד שלך.
אז בעצם במדריך זה נשלוט על מנוע Brushless עם Arduino. כאן נעשה שימוש במנוע A2212 / 13T ללא חיישן BLDC, עם בקר מהירות אלקטרוני 20A (ESC). מנוע זה משמש בדרך כלל לבניית מזל"טים.
חומרים נדרשים
- מנוע A2212 / 13T BLDC
- ESC (20A)
- מקור חשמל (12V 20A)
- ארדואינו
- פוטנציומטר
הבנת מנועי BLDC
מנוע BLDC מייצג מנוע Brush Less DC, הוא משמש בדרך כלל במאווררי תקרה וברכבים חשמליים בשל פעולתו החלקה. השימוש במנועי BLDC ברכבים חשמליים הוסבר בעבר בפירוט. שלא כמו מנועים אחרים, במנועי BLDC יש שלושה חוטים שיוצאים מהם וכל חוט יוצר שלב משלו ובכך נתן לנו מנוע תלת פאזי. רגע מה!!??
כן, למרות שמנועי BLDC נחשבים למנועי DC, הם עובדים בעזרת גלים פועמים. בקר מהירות אלקטרונית (ESC) וממיר מתח DC מהמצבר כדי פולסים ומספק אותו 3 החוטים של המנוע. בכל זמן נתון רק שני שלבים של המנוע יופעלו, כך שהזרם יעבור דרך שלב אחד ויעבור דרך אחר. במהלך תהליך זה הסליל בתוך המנוע מואץ ומכאן שהמגנטים על הרוטור מיישרים את עצמם לסליל המונע. ואז שני החוטים הבאים מפעילים אנרגיה באמצעות ה- ESC, תהליך זה ממשיך לגרום לסיבוב המנוע. מהירות המנוע תלויה במהירות המהירה של הסליל וכיוון המנוע תלוי בסדר הסלילים מואץ. נלמד עוד על ESC בהמשך מאמר זה.
ישנם סוגים רבים של מנועי BLDC זמינים, בואו נסתכל על הסיווגים הנפוצים ביותר.
מנוע BLDC In-runner ו- Out-Runner: במנועי BLDC של רץ עובדים כמו כל מנוע אחר. זהו הפיר שבתוך המנוע מסתובב בעוד המעטה נשאר קבוע. בעוד מנועי BLDC של הרצים הם בדיוק ההפך, המעטה החיצוני של המנוע מסתובב יחד עם הפיר בזמן שהסליל בפנים נשאר קבוע. מנועי ראנר אאוט הם יתרונות מאוד באופניים חשמליים מכיוון שהמעטפת החיצונית (זו שמסתובבת) עצמה הופכת לשפה עבור הצמיגים ומכאן שנמנע ממנגנון צימוד. כמו כן מנועי הרצים החוצה נוטים לתת מומנט רב יותר מאשר בסוגי הרצים, ולכן הוא הופך לבחירה אידיאלית ב- EV ובמעוטות. זה שאנחנו משתמשים כאן הוא גם סוג רץ.
הערה: יש סוג אחר של מנוע הנקרא מנועי BLDC חסרי גרעין המשמשים גם למל"טים בכיס, יש להם עקרון עבודה אחר אך לעת עתה בואו נדלג עליו לטובת הדרכה זו.
חיישן ומנוע BLDC ללא חיישנים: כדי שמנוע BLDC יסתובב ללא מטומטם נדרש משוב. כלומר על ה- ESC לדעת את המיקום והקוטב של המגנטים ברוטור כדי להמריץ את הסטטור בהתאם. ניתן לרכוש מידע זה בשתי דרכים; האחת היא על ידי הצבת חיישן אולם בתוך המנוע. חיישן האולם יזהה את המגנט וישלח את המידע ל- ESC מנוע מסוג זה נקרא מנוע Sensord BLDC ומשמש ברכבים חשמליים. השיטה השנייה היא באמצעות EMF האחורי שנוצר על ידי הסלילים כאשר המגנטים חוצים אותם, הדבר לא דרוש חומרה נוספת או חוטי חוט הפאזה עצמו משמש כמשוב לבדיקת EMF בחזרה. שיטה זו משמשת במנוע שלנו והיא נפוצה עבור מזל"טים ופרויקטים מעופפים אחרים.
מדוע מזל"טים ושאר רב-מסמכים משתמשים במנועי BLDC?
ישנם סוגים רבים של מזל"טים מגניבים בחוץ, ממספר מרובע ועד מסוקים ורחפנים. לכל מה שיש חומרה אחת משותפת. זה מנועי BLDC, אבל למה? מדוע הם משתמשים במנוע BLDC שהוא מעט יקר בהשוואה ל- DC Motors?
יש לכך לא מעט סיבות תקפות, אחת הסיבות העיקריות היא שהמומנט המסופק על ידי מנועים אלה הוא גבוה מאוד, וחשוב מאוד לצבור / לדחוף דחף במהירות כדי להמריא או להנחית מזל"ט. כמו כן, מנועים אלה זמינים כרצים החוצה מה שמגביר שוב את דחף המנועים. סיבה נוספת למנוע BLDC נבחר היא הרטט החלק שלה פחות, זה אידיאלי מאוד למזל"טים שלנו באוויר.
כוח יחס משקל של מנוע BLDC הוא גבוה מאוד. זה חשוב מאוד מכיוון שהמנועים המשמשים למזל"טים צריכים להיות בעלי הספק גבוה (מהירות גבוהה ומומנט גבוה) אך גם צריכים להיות בעלי משקל נמוך יותר. מנוע DC שיכול לספק את אותו מומנט ומהירות זהה לזה של מנוע BLDC יהיה כבד פי שניים ממנוע BLDC.
מדוע אנו זקוקים ל- ESC ומה תפקידו?
כידוע כל מנוע BLDC דורש איזשהו סוג של בקר להמיר את מתח DC מהסוללה לפולסים להפעלת חוטי הפאזה של המנוע. בקר זה נקרא ESC אשר מייצג בקר מהירות אלקטרוני. האחריות העיקרית של הבקר היא להפעיל את חוטי הפאזה של מנועי BLDC בסדר כך שהמנוע יסתובב. זה נעשה על ידי חישה של ה- EMF האחורי מכל חוט וממריץ את הסליל בדיוק כאשר המגנט חוצה את הסליל. אז יש הרבה מבריק חומרה בתוך ESC אשר מחוץ להיקף של הדרכה זו. אבל אם להזכיר כמה יש לו בקר מהירות ומעגל סילוק סוללות.
בקרת מהירות מבוססת PWM: ה- ESC יכול לשלוט על מהירות מנוע ה- BLDC על ידי קריאת אות ה- PWM המסופק על החוט הכתום. זה עובד מאוד דומה למנועי סרוו, אות ה- PWM המסופק אמור להיות בעל תקופה של 20ms וניתן לשנות את מחזור החובה כדי לשנות את מהירות מנוע ה- BLDC. מכיוון שאותו היגיון חל גם על מנועי סרוו כדי לשלוט במיקום אנו יכולים להשתמש באותה ספריית סרוו בתכנית Arduino שלנו. למדו להשתמש בסרוו עם Arduino כאן.
מעגל חיסול סוללות (BEC): כמעט כל מוצרי ה- ESC מגיעים עם מעגל סילוק סוללות. כפי שהשם מרמז, מעגל זה מבטל את הצורך בסוללה נפרדת למיקרו-בקר, במקרה זה איננו זקוקים לאספקת חשמל נפרדת בכדי להניע את הארדואינו שלנו; ה- ESC עצמו יספק +5 וולט מוסדר שניתן להשתמש בו בכוח לארדואינו שלנו. ישנם סוגים רבים של מעגלים המווסתים את המתח הזה בדרך כלל, זה יהיה ויסות ליניארי על ה- ESC הזול, אך ניתן למצוא גם כאלה עם מעגלי מיתוג.
קושחה: לכל ESC נכתבת תוכנת קושחה על ידי היצרנים. קושחה זו קובעת במידה רבה את תגובת ה- ESC שלך; חלק מהקושחה הפופולרית היא Traditional, Simon-K ו- BL-Heli. קושחה זו ניתנת לתכנות גם למשתמש אך לא ניכנס להרבה מזה במדריך זה.
כמה מונחים נפוצים עם BLDC ו- ESC:
אם יש לך רק התחלתי לעבוד עם מנועי BLDC אז ייתכן שיהיה כנראה נתקלת לתנאי כמו בלימה, הפעלה רכה, כיוון מנוע, מתח נמוך, זמן תגובה ו Advance. בואו נבדוק מה המשמעות של מונחים אלה.
בלימה: בלימה היא היכולת של מנוע ה- BLDC שלך להפסיק להסתובב ברגע שהמצערת הוסרה. יכולת זו חשובה מאוד עבור רב-מסמכים מכיוון שהם צריכים לשנות את הסל"ד שלהם בתדירות גבוהה יותר כדי לתמרן באוויר.
התחלה רכה: התחלה רכה היא תכונה חשובה שיש לקחת בחשבון כאשר מנוע ה- BLDC שלך משויך להילוך. כאשר מנוע מאפשר הפעלה רכה, הוא לא יתחיל להסתובב מהר מאוד פתאום, הוא תמיד יגביר את המהירות בהדרגה ולא משנה כמה מהר ניתן המצערת. זה יעזור לנו להפחית את בלאי ההילוכים המחוברים למנועים (אם בכלל).
כיוון המנוע: כיוון המנוע במנועי BLDC בדרך כלל לא משתנה במהלך ההפעלה. אך בעת ההרכבה, המשתמש עשוי להזדקק לשנות את כיוון המנוע. הדרך הקלה ביותר לשנות את כיוון המנוע היא פשוט להחליף בין שני חוטי המנוע.
עצירת מתח נמוך: לאחר כיול, נזדקק תמיד למנועי ה- BLDC שלנו לפעול באותה מהירות מסוימת עבור ערך מצערת מסוים. אך קשה להשיג זאת מכיוון שהמנועים נוטים להפחית את מהירותם באותו ערך מצערת כאשר מתח הסוללה פוחת. כדי להימנע מכך אנו בדרך כלל מתכנתים את ה- ESC להפסיק לעבוד כאשר מתח הסוללה הגיע מתחת לערך הסף פונקציה זו נקראת עצירת מתח נמוכה והיא שימושית במזל"טים.
זמן תגובה: היכולת של המנוע לשנות במהירות את מהירותו בהתבסס על שינוי המצערת נקראת זמן תגובה. ככל שזמן התגובה קטן יותר כך השליטה תהיה טובה יותר.
התקדמות: התקדמות היא בעיה או יותר כמו באג עם מנועי BLDC. לכל מנועי BLDC יש מעט התקדמות. כלומר כאשר סלילי הסטטור מפעילים אנרגיה הרוטור נמשך אליו בגלל המגנט הקבוע הקיים עליהם. לאחר שנמשך נמשך הרוטור לנוע קצת יותר קדימה באותו כיוון לפני שהסליל מתפוגג ואז הסליל הבא ממריץ. תנועה זו מכונה "התקדמות" והיא תיצור בעיות כמו רטט, התחממות, השמעת רעש וכו '. אז זה משהו ש- ESC טוב צריך להימנע מעצמו.
אוקיי, מספיק תיאוריה עכשיו בואו נתחיל עם החומרה על ידי חיבור המנוע עם הארדואינו.
דיאגרמת מעגל בקרת מנוע Arduino BLDC
להלן תרשים המעגל לבקרת מנוע ללא מברשות עם Arduino:
החיבור לממשק מנוע BLDC עם ארדואינו די ישר קדימה. ה- ESC זקוק למקור הספק של מינימום 12V ו- 5A. במדריך זה השתמשתי ב- RPS שלי כמקור חשמל, אך ניתן גם להשתמש בסוללת Li-Po להפעלת ה- ESC. יש לחבר את חוטי השלושה שלבי ה- ESC לחוטי השלושה של המנועים, אין שום סדר לחבר את החוטים הללו אתה יכול לחבר אותם בכל סדר.
אזהרה: בחלק מה- ESC לא יהיו מחברים, במקרה זה וודאו שהחיבור שלכם מוצק והגן על החוטים החשופים באמצעות סרט בידוד. מכיוון שיהיה זרם גבוה שיעבור בשלבים כל קצר יוביל לנזק קבוע של ה- ESC והמנוע.
BEC (מעגל Eliminator סוללה) ב ESC עצמו יהיה לווסת 5V + אשר ניתן להשתמש בהם כדי כוח במעלה לוח Arduino. לבסוף כדי לקבוע את המהירות של מנוע BLDC אנו משתמשים גם בפוטנציומטר המחובר לסיכה A0 של הארדואינו
תוכנית לבקרת מהירות של BLDC באמצעות Arduino
עלינו ליצור אות PWM עם מחזור חובה משתנה בין 0% ל 100% בתדר של 50 הרץ. יש לשלוט על מחזור החובה באמצעות פוטנציומטר כדי שנוכל לשלוט על מהירות המנוע. הקוד לשם ביצוע זה דומה לשליטה במנועי סרוו מכיוון שהם דורשים גם אות PWM בתדר 50 הרץ; לפיכך אנו משתמשים באותה ספריית סרוו מארדואינו. את הקוד השלם תוכלו למצוא בתחתית דף זה בהמשך אני מסביר את הקוד בקטעים קטנים. ואם אתה לא חדש ב- Arduino או PWM, ראשית עליך לעבור באמצעות PWM עם Arduino ולשלוט על סרוו באמצעות Arduino.
ניתן ליצור את אות ה- PWM רק על הפינים שתומכים ב- PWM על ידי חומרה, בדרך כלל פינים אלה מוזכרים עם סמל ~. ב- Arduino UNO, הסיכה 9 יכולה ליצור אות PWM ולכן אנו מחברים את סיכת האות ESC (חוט כתום) לסיכה 9 אנו מזכירים את אותו קוד פונדק באמצעות הקו הבא.
נספח ESC. (9);
עלינו ליצור אות PWM במחזור חובה משתנה בין 0% ל -100%. במחזור חובה של 0% הספק יפיק 0 וולט (0) ובמחזור חובה של 100% הספק יפיק 5 וולט (1023). כאן הסיר מחובר לסיכה A0, לכן עלינו לקרוא את המתח האנלוגי מהסיר באמצעות פונקציית הקריאה האנלוגית כמוצג להלן
מצערת int = analogRead (A0);
אז עלינו להמיר את הערך מ 0 ל 1023 ל 0 ל 180 מכיוון שהערך 0 יפיק 0% PWM והערך 180 יפיק 100% מחזור חובה. כל ערכים מעל 180 לא יהיו הגיוניים. אז אנו ממפים את הערך ל- 0-180 באמצעות פונקציית המפה כפי שמוצג להלן.
מצערת = מפה (מצערת, 0, 1023, 0, 180);
לבסוף, עלינו לשלוח ערך זה לפונקציית סרוו כדי שיוכל ליצור את אות ה- PWM על אותו סיכה. מכיוון ששמנו את אובייקט סרוו כ- ESC, הקוד ייראה כך למטה, כאשר המצערת המשתנה מכילה את הערך 0-180 לשליטה במחזור החובה של אות ה- PWM.
ESC.write (מצערת);
Arduino BLDC בקרת מנוע
בצע את החיבורים על פי תרשים המעגל והעלה את הקוד לארדואינו והפעל את ה- ESC. וודא שהרכבת את מנוע BLDC על משהו מכיוון שהמנוע יקפוץ מסביב כאשר הוא מסתובב. ברגע שההתקנה מופעלת, ה- ESC שלך ישמיע צליל קבלת פנים וימשיך לצפצף עד שאות המצערת יהיה בגבולות הסף, פשוט הגדל את ה- POT מ- 0V בהדרגה וטון הצפצוף יפסק, זה אומר שאנחנו מספקים כעת PWM אות מעל ערך הסף התחתון וככל שתגדיל עוד יותר המנוע שלך יתחיל להסתובב לאט. ככל שתספק יותר מתח כך המנוע יעלה יותר, לבסוף כאשר המתח יגיע מעל גבול הסף העליון המנוע יעצור. לאחר מכן תוכל לחזור על התהליך.
את העבודה המלאה של בקר BLDC זה של Arduino ניתן למצוא גם בקישור הוידאו למטה. אם נתקלת בבעיה כלשהי בהפעלת פעולה זו אל תהסס להשתמש בסעיף ההערות או להשתמש בפורומים לעזרה טכנית נוספת.