תוכן עניינים:
- שלב 1: כלים וחומרים
- שלב 2: איך זה עובד
- שלב 3: הרכבת צירי גלגל אומני
- שלב 4: חיתוך וקידוח של משאיות גלגלי אומני
- שלב 5: הרכבת משאיות הגלגלים אומני
- שלב 6: הרכבה לרציף סקייטבורד
- שלב 7: הלחמת המנועים
- שלב 8: הלחמת מחברי סוללות ESC
- שלב 9: הלחמת לוח חלוקת החשמל (PDB)
- שלב 10: חיבור החוטים
- שלב 11: שינוי מצב ESC
- שלב 12: ממשק עם מודול Bluetooth וטלפון
- שלב 13: הלחמת מגן הארדואינו
- שלב 14: יצירת האפליקציה באמצעות Blynk
- שלב 15: ממשקי ווידג'טים עם Arduino
- שלב 16: תכנות בקר Omniboard
- שלב 17: התקנת דיור האלקטרוניקה
- שלב 18: ציור
- שלב 19: בדיקה והדגמה
וִידֵאוֹ: OmniBoard: סקייטבורד והוברבורד היברידי עם בקרת בלוטות ': 19 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:17
ה- OmniBoard הוא חיבור חדש של סקייטבורד-Hoverboard חשמלי היברידי הניתן לשליטה באמצעות יישום סמארטפון Bluetooth. הוא מסוגל לנוע עם כל שלוש דרגות החופש שאפשר להשיג על ידי שני הלוחות יחד, ללכת קדימה, להסתובב סביב הציר שלו ולהתחיל הצידה.
זה מאפשר לך לנוע לכל כיוון שתחפוץ בו, כמו גם לעשות טריקים חכמים שאחרת לא היית מסוגל לעשות עם אופן התחבורה הטיפוסי שלך כגון סקייטבורדים (חשמליים), מרחפים, מכוניות, אופניים וכו '.
חברי ואני החלטנו לבנות את OmniBoard כתרגיל ואתגר מהנה, כמו גם להיכנס לכמה תחרויות Instructables, כלומר אתגר הגלגלים. רצינו להכין משהו שמעולם לא נעשה קודם, מגניב ויהיה שימושי. מכיוון שמערכת התחבורה הציבורית לרוב אינה אמינה, והתנועה העירונית איומה במהלך הנסיעה בבוקר ואחר הצהריים לעבודה וממנה, אפשרות תחבורה חלופית כגון אופניים או סקייטבורד מועילה. סקייטבורד ואופניים חשמליים שימושיים לנסיעות לטווח ארוך, אך יש כבר הרבה פתרונות צרכנים ו- DIY בנושא זה. אז החלטנו להמציא את הגלגל מחדש, פשוטו כמשמעו, ולהכין אומניבורד חדש ומהנה.
שלב 1: כלים וחומרים
מערכת הנעה
- (4) גלגלי אומני
- (4) 60 גלגלת שיניים
- (4) גלגלת 20 שיניים
- (4) חגורת תזמון GT2 (השתמשנו ב- 140 שיניים)
- (8) מזהה 7 מ"מ, מיסב 19 מ"מ*
- (20) ברגי מכונה מסוג M5 (או בגודל דומה) באורך של כ -25 מ"מ*
- (28) אגוזים, באותו גודל כמו ברגי מכונה*
- (32) מס '2 ברגי עץ, באורך 3/8 אינץ'*
- (16) סוגרי זווית, רצוי ארבעה חורים, חייבים להיות לפחות 1/2 אינץ 'מהפינה לחור הבורג*
- גיליון דיקט בגודל 1 על 2*
- משטח סקייטבורד
מכשירי חשמל:
מערכת הנעה
- (4) מנועי DC
- (4) בקרי מהירות אלקטרוניים (ESC)
- לוח הפצת חשמל (PDB)
- חוט סיליקון 16AWG - אדום ושחור
- מפצל מקבילי מחבר XT90
- מחבר XT90 זכר עם זנב
- (8 זוגות) מחבר כדורים 4 מ"מ
- (4 זוגות) מחברי XT60
- (2) סוללות LiPo
שלט רחוק
- לוח פרפ דו צדדי*
- ווסת מתח LM7805*
- חוטי ליבה מוצקים 24AWG - מגוון צבעים*
- מודול בלוטות 'HC-05*
- Arduino Uno v3*
- (32 פינים) כותרות סיכה לזכר דו צדדיות*
- (12 פינים) כותרות סיכה חד צדדיות לדג*
כלים:
- תחנת הלחמה והלחמה
- מספרי תיל
- חשפניות חוטים
- צְבָת
- מספריים
- מקדחים: 1-3/8 ", 3/4", 1/4"
צִיוּד
- מדפסת תלת מימד
- חותך לייזר
- להקה ראתה
- מקדחה
*נרכש מחנות האלקטרוניקה המקומית או מחנות החומרה.
שלב 2: איך זה עובד
Omniboard הוא סקייטבורד חשמלי ומרחף באחד! הוא מסוגל לנוע קדימה ואחורה, מצד לצד, ולסובב, הכל נשלט על ידי ג'ויסטיק בטלפון שלך.
ה- Omniboard מופעל על ידי ארבעה מנועים המחוברים כל אחד לגלגל דו כיווני. מכיוון שמותר לגלגלי האומני להחליק לרוחב, שינוי המהירות והכיוון של כל מנוע מאפשר ללוח לנוע לכל כיוון שהמשתמש יבחר, כפי שמתואר בתמונה למעלה.
שלב 3: הרכבת צירי גלגל אומני
החלקים הדרושים לך להרכבת הצירים הם:
- (8) מרווח נושאות מודפס בתלת מימד
- (4) מרווח גלגלת גדול מודפס בתלת מימד
- (8) מיסב
- (4) גלגל אומני
- (4) גלגלת גדולה
- (4) 3x3x80 מ"מ מפתח
ראשית, אתה רוצה לשים מרווח מיסב בקצה הפיר כפי שמוצג. המרווח עשוי להתאמה הדוקה מאוד, ולכן אני ממליץ להשתמש במקלדת או פטיש כדי להעלות אותו. אם ההתאמה רופפת מדי, הזז אותו עוד קצת במעלה המפתח והצמד צווארון. אתה לא צריך לדאוג לגבי צווארון בצד השני.
לאחר מכן אתה מחליק את גלגל האומני ואחריו מרווח מיסב הפונה לכיוון ההפוך. אתה יכול להחליק את המסבים עכשיו (זה לא משנה כי הם לא צמודים) וזה צריך להיראות כמו בתמונה. לבסוף, תוכלו להחליק את מרווחי הגלגלת הדקים והארוכים לתוך הגלגלות. בשלב זה, אל תדק את ברגי סט הגלגלת ואל תניח אותם על המפתח. אלה מגיעים מאוחר יותר.
שלב 4: חיתוך וקידוח של משאיות גלגלי אומני
כאן שימושי חותך הלייזר שלך והדיקט בעובי 3/8 אינץ '! ה- CAD לחיתוך המסגרת בלייזר מחובר בפורמט.dxf.
לאחר מכן תקדוח שני חורים על הצלבים הקטנים שיותיר חותך הלייזר על הדיקט. הצלב הקטן מעט ייקדח עם סיבית 3/4 אינץ 'בלבד של הדרך, ואילו הצלב הגדול יותר יוקדח עם סיביות 1-3/8 לאורך כל הדרך. זה מאוד חשוב. שאתה זוכר לחצי מהחתיכות לחתוך את החורים בגודל 3/4 אינץ 'מצד אחד ואת החצי השני מהצד השני. לאחר מכן נקדח חור בגודל 3/8 אינץ 'באמצע החורים 3/4 אינץ', לאורך כל השכבה שלא חתכת קודם.
לבסוף, הברג את סוגרי הזווית לצדדים הקצרים יותר של החלקים המלבניים. יש לך כמעט כל מה שאתה צריך עכשיו כדי להרכיב את משאיות הגלגלים האומני.
שלב 5: הרכבת משאיות הגלגלים אומני
עכשיו נוכל לסיים את הרכבת המשאיות! תזדקק לחלקים משני השלבים האחרונים פלוס:
- (4) חגורת תזמון
- (4) מרווח גלגלת קטן מודפס בתלת מימד
- (4) גלגלת קטנה
- (4) מנוע
החלק כל צד דיקט על המסבים. אם החורים בגודל 3/4 אינץ 'אינם מתאימים בקלות למיסבים, השתמשו ב- Dremel כדי לשייף אותם מעט יותר. ברגע שהם מתאימים, הניחו את הגלגלת מעל המפתח הבולט והדק את ברגי הסט. הברג את החלק המלבני לתוך חריץ מעל גלגל האומני.
בשלב זה, בדוק שגלגל האומני שלך מסתובב בחופשיות. אם זה לא קורה, הגלגלת שלך עשויה להיצמד לדיקט. הרם אותו עוד קצת למעלה במקלדת.
בשלב הבא נתאים את המנועים. החורים בגודל 1-3/8 "מעט קטנים מדי, אז לאט לאט משייפים את המעגל הפנימי בעזרת Dremel עד שהמנוע נכנס היטב פנימה. היזהר שלא לכפות את המנוע פנימה ולעוות את לאחר שהמנוע נמצא במקומו, החלק את החגורה על הגלגלות הקטנות, ולאחר מכן את הגלגלות הקטנות מעל המרווחים שלהן ועל פיר המנוע 3.175 מ"מ. הדק את ברגי הסט.
למען הקומפקטיות והסימטריה, תרצה לשים את הגלגלות והחגורות בצד אחד של המשאית לשניים מהם והצד השני לשניים האחרים.
שלב 6: הרכבה לרציף סקייטבורד
עכשיו אנחנו הולכים לצרף את המשאיות לרציף הסקייטבורד. אתה יכול להכין את שלך דיקט וסרט אחיזה; שלנו נלקח מסקייטבורד ישן.
ראשית, תרצה לקדוח חורים בגודל 1/4 אינץ 'משני צידי הדיקט כפי שמוצג בתמונה. בכל חור יש לצרף סוגר זווית עם בורג M5 ואום כפול בצד הפנימי כדי למנוע ממנו לבוא. רופף עקב רעידות. מדוד וקדח את החורים המאפשרים לעלות את המשאיות קרוב לקצות ובזווית התחדשות תלולה ככל האפשר תוך שהיית בתוך טביעת הרגל של הרציף. כעת הפוך אותה וערוך לו בדיקת עומס. !
שלב 7: הלחמת המנועים
הלחם את מחברי הכדור הזכריים בגודל 4 מ"מ לחוט אשר יתחבר למנועים, ולאחר מכן הלחם חוט זה על מסופי המנוע. לצורך ארגון הכבלים, כל חוטים נחתכים ל -6 ס"מ ומפשטים משני הקצוות
טיפ: קל יותר להלחם את החוטים על מחברי הכדור תחילה ולאחר מכן להלחים אותו למנוע מאשר להפך.
כדי להלחים את מחבר הכדור על החוט, הניחו אותו על קליפ תנין מבודד של היד העוזרת (כשהחום מתפוגג במהירות מגוף מחבר הכדור אל גוף היד המסייע המתכתי המוביל חום). לאחר מכן, הצמיד מעט הלחמה למחבר הכדור, בערך באמצע הדרך ותוך כדי שמירה על הברזל במחבר, טובל את החוט על בריכת ההלחמה, כפי שמוצג בסרטון. לאחר מכן, כווץ את החוט ואת מחבר הכדורים בחום.
לאחר מכן, הנח את החוט ליד מסוף המנוע והחזק אותו זקוף בעזרת היד העוזרת. השתמשתי בגליל הלחמה כדי להחזיק את המנוע הפוך. לאחר מכן הלחם את החוט על מסוף המנוע. הסדר והצבע של החוטים אינם חד משמעיים ואינם חשובים, שכן ניתן לשנות את ההזמנה כדי להפוך את הסיבוב, אשר יתבצע בשלבים הבאים במידת הצורך.
שלב 8: הלחמת מחברי סוללות ESC
לפני ההלחמה, חתכו מעט כיווץ חום לכל אחד מהחוטים שישמשו לבידוד הקצוות המולחמים החשופים.
חותכים את אחד המוליכים למחבר הסוללה, מפשיטים אותו, מחליקים את התכווצות החום פנימה, ומלחמים אותו למחבר XT60 כשהחיבור האדום מתחבר לטרמינל החיובי של ה- XT60 והשחור למסוף השלילי של ה- XT60.
אזהרה: חותכים רק את חוטי ה- ESC אחד בכל פעם, שכן קיים קבל שעשוי להיטען בין המסופים החיוביים והשליליים שייקצרו אם המספריים או חותכי החוטים יחתכו את שניהם בבת אחת.
כדי להלחים את החוט על מחבר XT60, השתמש בידיים המסייעות כדי לאחוז בגוף המחבר XT60. לאחר מכן, צבר מעט הלחמה למסוף XT60 בערך באמצע הדרך ותוך כדי שמירה על מגהץ על מחבר XT60, טבול את החוט לתוך בריכת הלחמה הנוזלית, כפי שמוצג בסרטון מהשלב הקודם. לאחר שהתקרר, החלק את החום המתכווץ כלפי מטה כדי לבודד את הקצה החשוף ולחמם אותו עם דפנות הברזל.
חזור על פעולה זו עבור שאר החוטים של מחברי הסוללה של ה- ESC.
שלב 9: הלחמת לוח חלוקת החשמל (PDB)
ה- PDB יקלט קלט משתי סוללות הליתיום פולימר (LiPo) עם מתח וזרם משולבים של 11.1V ו- 250A, בהתאמה, ויפיץ אותו לארבעת ה- ESC.
טיפ: קל יותר להלחיד את מחבר ה- XT90 הזכר מוביל תחילה לרפידות ה- PDB, ולאחר מכן את 16 חוטי ה- AWG אל ה- ESC, ולאחר מכן את מחברי ה- XT60 על חוטים אלה.
לפני, הלחמת החוטים, חתכו את כיווץ החום כך שיתאים לכל אחד מהחוטים, כך שניתן יהיה להחליק אותו לקצה ההלחמה החשוף מאוחר יותר כדי למנוע קצר.
כדי להלחים את החוטים על כריות ה- PDB, מצאתי שהכי קל להשתמש בידיים המסייעות להחזיק את החוטים זקופים (במיוחד את כבל ה- XT90 הגדול) ולהניח אותו על גבי ה- PDB מונח על השולחן. לאחר מכן הלחם את החוט סביב כרית ה- PDB. לאחר מכן, החלק את מכווץ החום כלפי מטה וחמם אותו כדי לבודד את המעגל.
חזור על פעולה זו בשאר חוטי ה- ESC.
להלחמת ה- XT60, עקוב אחר השלב הקודם כיצד הוחלף מסוף הסוללות ESC ב- XT60.
שלב 10: חיבור החוטים
חבר את חוטי המנוע למסופי מחברי הכדור של ה- ESC. לאחר מכן, חבר את סיכת האות הלבנה מה- ESC לסיכה 9 ואת סיכת הקרקע השחורה לסיכת ה- GND שבארדואינו. רצועות נעילה כפולות שימשו לאבטחת כל ה- ESC והחוטים ללוח.
כדי לבדוק אם סיבוב המנועים נכון (מסתובבים כלפי החזית), הפעל את קוד הדוגמה על הארדואינו למטה.
#לִכלוֹל
מנוע סרוו;
בייט עם כיוון השעון = 110; מרווח ארוך ללא סימן = 1500; int motorPin = 9;
הגדרת חלל ()
{Serial.begin (9600); motor.attach (motorPin); Serial.println ("בדיקה מתחילה"); }
לולאת חלל ()
{motor.write (עם כיוון השעון); Serial.println ("עצור את המנוע מלסתובב"); עיכוב (מרווח); }
סדר החוטים המחוברים מה- ESC למנוע קובעים את סיבוב המנוע. אם סיבוב המנוע הוא נגד כיוון השעון, שמור על המנוע ושנה את בוליאן בקוד הבקר בשלב "תכנות בקר Omniboard". אם הוא מסתובב בכיוון השעון כלפי החזית, אז הסיבוב נכון. בצע זאת עבור כל אחד מארבעת המנועים. אם המנוע לא מסתובב, בדוק שוב את כל המחברים שלך אם יש הלחמה קרה וכתוצאה מכך חיבור רופף.
שלב 11: שינוי מצב ESC
כברירת מחדל, ה- ESCs המוברשים נמצאים במצב אימון. זה מסומן על ידי נורת LED מהבהבת. על מנת לשלוט באופן מתוכנת במנוע לכיוון ההפוך, יש צורך בטיפוס טיפוס.
כדי לגשת למצב זה, חבר את ה- ESC ל- Arduino על ידי חיבור סיכת האות הלבנה מה- ESC לסיכה 9 וסיכת הקרקע השחורה לסיכת ה- GND בארדואינו. לאחר מכן העלה והפעל את התוכנית הבאה ללוח Arduino:
#לִכלוֹל
מנוע סרוו;
בייט stopSpeed = 90; מרווח ארוך ללא סימן = 1500; int motorPin = 9;
הגדרת חלל ()
{Serial.begin (9600); motor.attach (motorPin); Serial.println ("בדיקה מתחילה"); }
לולאת חלל ()
{motor.write (stopSpeed); Serial.println ("עצור את המנוע מלסתובב"); עיכוב (מרווח); }
הפעל את ESC ולאחר מכן לחץ לחיצה ארוכה על לחצן התכנות למשך שתי שניות. מחוון הלד יהיה יציב כעת לעומת מהבהב, מה שאומר שהמצב השתנה בהצלחה למצב טיפוס.
שלב 12: ממשק עם מודול Bluetooth וטלפון
מודול ה- Bluetooth HC-05 מאפשר ל- Arduino להתחבר לטלפון כדי לאפשר שליטה אלחוטית בסקייטבורד באמצעות אפליקציה. מכיוון שמצאתי בעיות פגומות בממשקי מודול ה- Bluetooth, מוטב היה לבדוק זאת קודם לפני הלחמת המעגל הסופי, אנו נשתמש ב -4 מתוך 6 הפינים במודול ה- Bluetooth. אלה הם: Tx (שידור), Rx (קבלה), 5V ו- GND (קרקע). חבר את סיכות ה- Tx וה- Rx ממודול ה- Bluetooth HC-05 לפינים 10 ו -11 בארדואינו בהתאמה. לאחר מכן, חבר את סיכת 5V וסיכות GND לפינים כאשר התווית זהה על הארדואינו.
באפליקציית Blynk, הוסיפו את הווידג'טים של Bluetooth וכפתורים, כפי שמוצג בתמונות למעלה. לאחר מכן, הקצה לכפתור את הסיכה הדיגיטלית D13 המחוברת לנורית ה- LED המובנית ב- Arduino Uno.
העלה והפעל את הקוד הבא ל- Arduino כאשר מודול ה- Bluetooth מחובר ופתח צג סדרתי כדי לראות אם מודול ה- Bluetooth התחבר. לאחר מכן החלף את כפתור ההפעלה/כיבוי והתבונן בנורית ה- LED המובנית בשינוי Arduino.
#הגדר סדרה BLYNK_PRINT
#לִכלוֹל
#לִכלוֹל
// אתה אמור לקבל את Auth Token באפליקציית Blynk.
// עבור אל הגדרות הפרויקט (סמל אגוז). char auth = "אסימון האימות שלך";
SoftwareSerial SerialBLE (10, 11); // RX, TX
BLYNK_WRITE (V1)
{int pinValue = param.asInt (); // הקצאת ערך נכנס מסיכה V1 למשתנה}
הגדרת חלל ()
{Serial.begin (9600); // קונסולת איתור באגים SerialBLE.begin (9600); Blynk.begin (SerialBLE, authent); Serial.println ("מחכה לחיבורים …"); }
לולאת חלל ()
{Blynk.run (); }
שלב 13: הלחמת מגן הארדואינו
על מנת לנקות את המעגלים וחוטי המגשר הרופפים מאב טיפוס, נלחם מגן ארדואינו המתחבר לכל אחד ממודעי ה- ESC ומבלוטות ', כמו גם אספקת חשמל לארדואינו.
הלחם את הסכימה הבאה למעלה על גבי לוח פרפר דו צדדי.
הגדלתי וחיברתי לראשונה את כותרות הסיכה הדו-צדדית לזכר הכותרות הנשיות של ארדואינו ואז הלחמתי אותו לצד העליון של לוח הפרפ משני הצדדים. לאחר שהם מולחמים, הסרתי אותו מלוח ה- Arduino כדי להלחם את החלק התחתון של הלוח. לאחר מכן הלחמתי את כותרות סיכות הזכר החד צדדיות של ESC ב -4 סטים של 3 על הצד התחתון של לוח הפרפ. לאחר מכן הנחתי את מודול ה- Bluetooth HC-05 זקוף והלחמתי את המחברים גם בצד התחתון של לוח הפרפ.
מכיוון שמודול ה- Bluetooth דורש כניסת מתח של 5V וה- PDB מוסדר ל- 12V בלבד, השתמשתי ב- LM7805 כדי להוריד את הזרם כדי להגביל את משיכת הזרם מהארדואינו. אותו אספקת 5V מחוברת גם לסיכה 5V של הארדואינו כך שניתן להניע את הארדואינו דרך המגן בניגוד למתאם שקע חבית נוסף.
סיכות ה- LM7805 מולחמו לצד התחתון של לוח ה perf עם רכיב ווסת המתח יושב על גבי לוח ה perf כפי שמוצג בתמונה למעלה. הלחמתי את כל חיבורי החשמל לכל אחד מהרכיבים ולכותרות סיכות ESC ומודול בלוטות 'HC-05 כמתואר בתרשים. יציאת 12V של ה- PDB מולחמה לאחר מכן אל קלט ה- VCC (רוב השמאלי) וסיכת הקרקע (האמצעית) של ווסת המתח LM7805. לבסוף, כל אחת מכותרות סיכות האות של ESC וסיכות Tx ו- Rx של מודול בלוטות 'HC-05 לפינים הדיגיטליים של Arduino דרך כותרות הסיכות הזכרות דו צדדיות כפי שמוצג בתרשים.
שלב 14: יצירת האפליקציה באמצעות Blynk
Omniboard נשלט באמצעות Bluetooth באמצעות כל סמארטפון באמצעות אפליקציית Blynk. Blynk היא אפליקציית Android ו- iOS המאפשרת להשתמש במודולים ווידג'טים שיכולים להתממשק עם מספר בקרי מיקרו עם יכולות Bluetooth או אלחוטיות או מודולים של Bluetooth / אלחוטי, כמו HC-05.
1. התקן את Blynk בטלפון שלך.
2. צור חשבון והתחבר
3. צור פרויקט חדש ושם אותו. קראתי לשלי "בקר Omniboard", בחר ב- Arduino Uno כבקר המיקרו ובחר ב- Bluetooth כסוג הממשק.
4. גרור ושחרר את הווידג'טים הבאים על המסך: Bluetooth, מפה, 2 לחצנים וג'ויסטיק
שלב 15: ממשקי ווידג'טים עם Arduino
הלחצן ישמש להחלפת מצב Hoverboard לעומת מצב סקייטבורד. מצב Hoverboard מאפשר שליטה מדויקת של ספין ו strafe תוך החזקת מהירות שיוט. בעוד שמצב סקייטבורד נותן שליטה מדויקת על המהירות והסיבוב קדימה. הג'ויסטיק ישלוט על הסקייטבורד עם שתי דרגות חופש אשר מתחלפות באמצעות לחצן ההחלפה. המפה תציג את המיקום הנוכחי שלך וכן נקודות ציון למקומות אחרים שאליהם אתה יכול ללכת. ה- Bluetooth מאפשר לממשק להתחבר עם מודול Bluetooth.
הגדרות ג'ויסטיק:
בחר "מיזוג" עבור סוג הפלט והקצה אותו לסיכה וירטואלית V1
הגדרת לחצנים:
- תן שם ללחצן הראשון "מצב רחף" ולחצן השני "בקרת שיוט".
- הקצה את הפלט של הכפתור הראשון ל- pin pin V2 ושנה את המצב ל- "Switch".
- הקצה את הפלט של הכפתור השני ל- pin PIN V3 ושנה את המצב ל- "Switch".
- שנה את שמות ההחלפה של הכפתורים הראשונים כ"רחף "ו"גלש" ושמור על "ON" ו- "OFF".
הגדרות מפה:
הקצה את הקלט ל- V4
הגדרות Bluetooth:
בחר את ווידג'ט ה- Bluetooth באפליקציית Blynk והתחבר למודול שלך. סיסמת ברירת המחדל של מודול ה- Bluetooth היא '1234'
שלב 16: תכנות בקר Omniboard
הדינמיקה של Omniboard תוכנתה על סמך אלגוריתם הדינמיקה הנגזר מהקטע "איך זה עובד". כל אחת משלוש דרגות החופש, קדימה, ריצה וספין מחושבות באופן עצמאי ומועלות אחת על השנייה כדי לגרום לטווח שליטה מלא של התנועה של Omniboard.השליטה בכל מנועים היא ביחס לינארי לתנועת הג'ויסטיק. העלה והפעל את הקוד הבא ל- Arduino.
#הגדר סדרה BLYNK_PRINT
#לִכלוֹל
#לִכלוֹל
#לִכלוֹל
מנוע סרוו FR; מנוע סרוו FL; מנוע סרוו BR; מנוע סרוו BL;
bool motorFRrev = נכון;
bool motorFLrev = נכון; bool motorBRrev = נכון; bool motorBLrev = true;
מנוע צף FRang = 330.0*PI/180.0;
מנוע צף FLang = 30.0*PI/180.0; מנוע צף BRang = 210.0*PI/180.0; מנוע צף BLang = 150.0*PI/180.0;
מנוע צף FRspeedT;
מנוע צף FLspeedT; מנוע צף BRspeedT; מנוע צףBLspeedT;
מנוע צף FRspeedR;
מנוע צף FLspeedR; מנוע צף BRspeedR; מנוע צףBLspeedR;
float maxAccel = 10;
בייט forwardSpeed = 110;
בייט backSpeed = 70; בייט stopSpeed = 90; // שינוי למספר המובהק ניסיוני
int cruiseControl;
int yawMode;
// אתה אמור לקבל את Auth Token באפליקציית Blynk.
// עבור אל הגדרות הפרויקט (סמל אגוז). char auth = "8523d5e902804a8690e61caba69446a2";
SoftwareSerial SerialBLE (10, 11); // RX, TX
BLYNK_WRITE (V2) {cruiseControl = param.asInt ();}
BLYNK_WRITE (V3) {yawMode = param.asInt ();} WidgetMap myMap (V4);
BLYNK_WRITE (V1)
{int x = param [0].asInt (); int y = param [1].asInt ();
אם (! cruiseControl) calcTranslation (x, y);
אם (yawMode) calcRotation (x, y); אחרת {motorFRspeedR = 0; motorFLspeedR = 0; motorBRspeedR = 0; motorBLspeedR = 0; } writeToMotors (); }
הגדרת חלל ()
{motorFR.attach (9); motorFL.attach (6); motorBR.attach (5); motorBL.attach (3); עיכוב (1500); // לחכות לאתחול המנועים // מסוף באגים Serial.begin (9600);
SerialBLE.begin (9600);
Blynk.begin (SerialBLE, authent);
Serial.println ("מחכה לחיבורים …");
// אם ברצונך להסיר את כל הנקודות:
//myMap.clear ();
מדד int = 1;
float lat = 43.653172; לצוף lon = -79.384042; myMap.location (אינדקס, lat, lon, "ערך"); }
לולאת חלל ()
{Blynk.run (); }
void calc תרגום (int joyX, int joyY)
{float normX = (joyX - 127.0) /128.0; צף normY = (joyY - 127.0) /128.0; motorFRspeedT = (normY*cos (motorFRang) + normX*sin (motorFRang))*(1 - 2*motorFRrev); motorFLspeedT = (normY*cos (motorFLang) + normX*sin (motorFLang))*(1 - 2*motorFLrev); motorBRspeedT = (normY*cos (motorBRang) + normX*sin (motorBRang))*(1 - 2*motorBRrev); motorBLspeedT = (normY*cos (motorBLang) + normX*sin (motorBLang))*(1 - 2*motorBLrev); }
calc void Rotation (int joyX, int joyY)
{float normX = (joyX - 127.0) /128.0; צף normY = (joyY - 127.0) /128.0; motorFRspeedR = joyX*(1-2*motorFRrev); motorFLspeedR = -joyX*(1-2*motorFLrev); motorBRspeedR = -joyX*(1-2*motorBRrev); motorBLspeedR = joyX*(1-2*motorBLrev); }
void writeToMotors ()
{float motorFRspeed = motorFRspeedT + motorFRspeedR; float motorFLspeed = motorFLspeedT + motorFLspeedR; float motorBRspeed = motorBRspeedT + motorBRspeedR; float motorBLspeed = motorBLspeedT + motorBLspeedR;
motor motor longmapp = מפה ((ארוכה) (100*motorFRspeed), -100, 100, backSpeed, forwardSpeed);
מנוע ארוך FLmapped = מפה ((ארוכה) (100*motorFLspeed), -100, 100, backSpeed, forwardSpeed); מנוע ארוך BRmapped = מפה ((ארוכה) (100*motorBRspeed), -100, 100, backSpeed, forwardSpeed); מנוע ארוךBLmapped = מפה ((ארוכה) (100*motorBLspeed), -100, 100, backSpeed, forwardSpeed); motorFR.write (motorFRmapped); motorFL.write (motorFLmapped); motorBR.write (motorBRmapped); motorBL.write (motorBLmapped); }
שלב 17: התקנת דיור האלקטרוניקה
על מנת למנוע מכל החוטים והחלקים להתנדנד מהחלק התחתון, הדפס תלת מימד את המארז המצורף ולאחר מכן הברג אותו על הסקייטבורד בעזרת ברגי M5.
שלב 18: ציור
ההשראה לעיצוב הסיפון העליון הם מעגלים ודפוסים. לשם כך, תחתית החלק התחתון של הסקייטבורד מכוסה את סרט הצייר העוטף שלי סביבו. ואז כל הסיפון העליון מצופה בצבע לבן. לאחר ייבוש, הוא מסווה את השלילי של תבנית המעגל, ואז נצבע מחדש במעיל שחור. לאחר מכן, קלפו את המסיכות מהשכבה העליונה בזהירות וואלה, סקייטבורד בעל מראה מגניב.
אני ממליץ לך להתאים אישית את העיצוב של Omniboard שלך ולממש את החופש היצירתי שלך.
שלב 19: בדיקה והדגמה
פרס שני בתחרות הגלגלים 2017
פרס ראשון בתחרות שלט רחוק 2017
מוּמלָץ:
מזל"ט היברידי: 7 שלבים (עם תמונות)
HYBRID DRONE: תכנון ופיתוח של רכב תת ימי ואווירי המבוסס על ארבע רכבים. מעטפת הלחץ האלקטרוניקה של הרכב תוכננה ויוצרה באמצעות חומר אקרילי שיכול לעמוד בלחץ אטמוספרי במצב אוויר
בקרת בהירות בקרת LED מבוססת PWM באמצעות לחצני לחיצה, פטל פאי ושריטה: 8 שלבים (עם תמונות)
בקרת בהירות בקרת LED מבוססת PWM באמצעות לחצני לחיצה, פטל פאי ושריטה: ניסיתי למצוא דרך להסביר כיצד PWM פועל לתלמידי, אז הנחתי לעצמי את המשימה לנסות לשלוט על בהירות הנורית באמצעות 2 כפתורי לחיצה. - כפתור אחד מגביר את הבהירות של נורית LED והשני מעמעם אותו. לפרוגרה
בקרת ESP8266 RGB LED STRIP WIFI - NODEMCU כשלט רחוק IR עבור רצועת LED נשלטת באמצעות Wifi - בקרת סמארטפון LED RIP LED STRIP: 4 שלבים
בקרת ESP8266 RGB LED STRIP WIFI | NODEMCU כשלט רחוק IR עבור רצועת LED נשלטת באמצעות Wifi | בקרת סמארטפון RGB LED STRIP: שלום חברים במדריך זה נלמד כיצד להשתמש ב- nodemcu או ב- esp8266 כשלט רחוק IR לשליטה ברצועת LED RGB ו- Nodemcu נשלט על ידי סמארטפון באמצעות wifi. אז בעצם אתה יכול לשלוט ב- RGB LED STRIP בעזרת הסמארטפון שלך
בקרת בלוטות 'אנדרואיד: 3 שלבים
בקרת Bluetooth אנדרואיד: בנה פרויקט ארדואינו לאוטומציה ביתית משלך, שבו תוכל לשלוט בטמפרטורה ולחות הודות לחיישן הטמפרטורה DHT-11, תוכל לשלוט גם על התאורה הודות לרצועות LED RGB ולנהל מספר מכשירים באופן אלחוטי באמצעות
אוטומציה ביתית: לוח מתגים אוטומטי עם בקרת דימר באמצעות בלוטות 'באמצעות Tiva TM4C123G: 7 שלבים
אוטומציה ביתית: לוח מתגים אוטומטי עם בקרת דימר באמצעות Bluetooth באמצעות Tiva TM4C123G: כיום יש לנו שלט רחוק למכשירי הטלוויזיה שלנו ולמערכות אלקטרוניות אחרות, שהפכו את חיינו לקלים באמת. האם תהית אי פעם לגבי אוטומציה ביתית שתאפשר את השליטה במנורות צינור, מאווררים וחשמל אחר