חיפוש
  • יניב אור

מבוך מונע ע"י מנועי סרוו

פרויקט מן העבר - 2010:

https://www.instructables.com/id/Servo-Controlled-Labyrinth/


* הפוסט הזה הוא תרגום לעברית של הפרסום הנ"ל



מכירים את המבוך צעצוע הזה - מעץ, שכדי להניע כדור מתכת לאורך המסלול מסובבים שתי ידיות, אחת לציר ה-x והשנייה לציר ה-y?


אז החלטתי לשדרג מבוך כזה - להחליף את הידיות עץ במנועי סרוו (גודל סטנדרטי) ולתת ל-ATmega32 לשחק את המשחק.


תודות

ל-CarlS ולפרויקט https://www.instructables.com/id/Servo-Controlled-Marble-Maze/ על ההשראה.

ל-http://www.avrfreaks.net ובעיקר ל-Dean (aka abcminiuser) על המדריכים המעולים שכתב.


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


שלב 1: חומרים, חלקים וכלים





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


חומרים:

1 מבוך עץ - 280/230/60 mm

1 לוח עץ - 400/350/20 mm

4 חתיכות עץ - 30/30/10 mm כל אחת

2 חתיכות עץ - 150/155/10 mm כל אחת

2 חתיכות עץ בצורת L - גודל 120/27/4 mm כל אחת

4 חתיכות עץ בצורת L - גודל 34/32/8 ו- 18/32/8 mm כל אחת

חוט חזק מבד או פשתן

8 פיסות מיריעת גומי - 30/30/1 mm כל אחת

4 זוויות מתכת - 32/32/1.5 כל אחת

8 ברגים (40/5 mm) עם אומים ושייבות

ברגי עץ ומסמרים

דף נייר A4 אחד

דבק חם

דבק מגע

איזולירבנד


רכיבים:

2 מנועי סרוו בגודל רגיל - Hitec HS-311

בקר AVR ATmega32 ותכנת מתאים - אני השתמשתי ב-AVR-LIP (EC-AVR) של DeccanRobots שהגיע מתאילנד עם הוראות בתאילנדית ואין לי מושג איך הצלחתי לתפעל אותו (התעסקות ראשונה עם AVR). אגב, מדובר על התקופה ה-pre ארדואינו.

2 ידיות פלסטיק של פוטנציומטרים

לוח מטריצה

חוטים ופינים


כלים:

מסור, מברג, פטיש, סכין יפנית, מספריים, מלחציים וכו'.



שלב 2: עבודה על המבוך עצמו



חתכו את זרועות מנועי הסרוו (#13 R-D) כך שיהיו סימטריים והדביקו כל אחד מהם לידית הפוטנציומטר (90 מעלות לקו סימון של הידית).

החליפו את ידיות העץ של המבוך בידיות הפלסטיק עליהן מודבקות הזרועות.


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



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



שלב 3: תושבות למנועי הסרוו





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

צפו בתמונות והכל יהיה ברור.




שלב 4: הבקר


יצירת PWM

סרוו סטנדרטי עובד ב-50 הרץ, מה שאומר שהוא צריך לקבל אות ב-control line שלו כל 20 מילישניות. רוחב האות במצב האקטיבי שלו (duty cycle) קובע את זווית הזרוע.

קביעת רוחב האות נקרא Pulse Width Modulation (PWM).

1.25 ms - 0 deg. 1.50 ms - 90 deg. 1.75 ms - 180 deg.


הקוד

הדרך הטובה ביותר - תקנו אותי אם אני טועה - ליצירת PWM עם ATmega לשני מנועי סרוו תיעשה על-ידי חיבור סרוו אחד ל-OC1A וסרוו שני ל-OC1B - ולתכנת כל אחד מהטיימרים הללו לייצר PWM.

עכשיו, בערכת הפיתוח בה השתמשתי לפרוייקט OC1A ו-OC1B תפוסים ע"י ה-LCD והבאזר.

אז - בעזרתו של [frakk2136] מ-AVR freaks - השתמשתי בדרך אחרת.

חיברתי את מנועי הסרוו ל-PA4 ו-PA5, תיכנתתי את OC1A לייצר PWM מהיר והשתמשתי ב-interrupts. תצטרכו לשנות את הקוד בהתאם לסביבה שלכם.


הנה קישור לקוד




כמה הערות

יש כמה צורות לשחק עם המבוך:


Labyrinth_Auto

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

הקוד עובד נהדר אבל הדרך בה המבוך מורכב מכנית לא מספיק מדוייקת.

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


Labyrinth_Manual_RS-232

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


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


הרשימה היא כזאת:

- ג'וייסטיק אנלוגי (לא בוצע)

- ג'וייסטיק דיגיטלי (לא בוצע)

- מד תאוצה (לא בוצע)

- כפתורים (בוצע)

- ראייה ממוחשבת (לא בוצע)


*@&* לבנות שוב ובנוסף לבצע את המטלות מהרשימה (לפחות אלה).

© 2023 by DO IT YOURSELF. Proudly created with Wix.com