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

ציר Roll and Pitch Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050: 4 שלבים
ציר Roll and Pitch Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050: 4 שלבים

וִידֵאוֹ: ציר Roll and Pitch Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050: 4 שלבים

וִידֵאוֹ: ציר Roll and Pitch Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050: 4 שלבים
וִידֵאוֹ: Как сделать дешевый ручной карданный шарнир с рукояткой из эскимосов 2024, דֵצֶמבֶּר
Anonim
Roll and Pitch Axis Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050
Roll and Pitch Axis Gimbal עבור GoPro באמצעות Arduino - סרוו וג'ירו MPU6050

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

מטרתו של פרויקט זה הייתה לבנות גימבל בעל 3 צירים עבור GoPro באמצעות Arduino nano + 3 מנועי סרוו + מד ג'ירו/תאוצה MPU6050. בפרויקט זה שלטתי על 2 צירים (גליל ופיה) באמצעות ג'ירו/תאוצה מד MPU6050, הציר השלישי (יאו) נשלט מרחוק ובידנית בעזרת אפליקציית HC-05 ו- Arduino BlueControl הנמצאת בחנות האפליקציות של אנדרואיד..

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

בתחילת הפרויקט שלי, התכנון שלי היה לבנות גימבל 3 צירים עם 3 מנועים ללא מברשת, מכיוון שמנועים ללא מברשות חלקים ומגיבים יותר בהשוואה למנועי סרוו. מנועים ללא מברשת משמשים ביישומים במהירות גבוהה, כך שנוכל להתאים את מהירות רכישת המנוע ESC (בקר). אבל כדי להיות מסוגל להשתמש במנוע ללא מברשת בפרויקט גימבל, הבנתי שעלי לנהוג במנוע ללא מברשת כמו סרוו. במנועי סרוו, מיקום המנוע ידוע. אך במנוע ללא מברשות, איננו יודעים את מיקום המנוע, כך שמדובר בחיסרון של מנוע ללא מברשת שלא הצלחתי להבין כיצד לנהוג בו. בסופו של דבר החלטתי להשתמש בשלושה מנועי סרוו MG995 לפרויקט Gimbal הדרוש מומנט גבוה. שלטתי על שני מנועי סרוו לציר גלילה וצליל באמצעות ג'ירו MPU6050, ושלטתי על מנוע סרוו של ציר יא באמצעות HC-05 bluetooth ואפליקציית אנדרואיד.

שלב 1: רכיבים

רכיבים
רכיבים
רכיבים
רכיבים
רכיבים
רכיבים
רכיבים
רכיבים

הרכיבים בהם השתמשתי בפרויקט זה;

1- Arduino Nano (יחידה אחת) (מיקרו USB)

2- מנועי סרוו MG995 (3 יחידות)

3- GY-521 MPU6050 תאוצה 3 צירים/ג'ירוסקופ (יחידה אחת)

מודול Bluetooth HC-05 (לשליטה מרחוק על ציר yaw (Servo3))

מטען נייד מיקרו USB של 5V

שלב 2: יישום 3 מנועי סרוו + MPU6050 Gyro + HC-05

יישום 3 מנועי סרוו + ג'יירו MPU6050 + HC-05
יישום 3 מנועי סרוו + ג'יירו MPU6050 + HC-05
יישום 3 מנועי סרוו + ג'יירו MPU6050 + HC-05
יישום 3 מנועי סרוו + ג'יירו MPU6050 + HC-05

חיווט סרוו

Servo1 (רול), Servo2 (Pitch), Servo3 (Yaw)

מנועי סרוו כוללים 3 חוטים: VCC (אדום), GND (חום או שחור), PWM (צהוב).

D3 => Servo1 PWM (חוט צהוב)

D4 => Servo2 PWM (חוט צהוב)

D5 => Servo3 PWM (חוט צהוב)

PIN 5V של Arduino => VCC (אדום) של 3 מנועי סרוו.

קוד GND של Arduino => GND (חום או שחור) של 3 מנועי סרוו

חיווט ג'ירו MPU6050

A4 => SDA

A5 => SCL

3.3 V PIN של Arduino => VCC של MPU6050

מספר GND של Arduino => GND של MPU6050

חיווט בלוטות 'HC-05

D9 => TX

D10 => RX

3.3 V PIN של Arduino => VCC של HC-05 Bluetooth

קוד GND של Arduino => GND של HC-05 Bluetooth

שלב 3: עיצוב ופונקציונליות תלת מימד

עיצוב תפקודי ותלת מימד
עיצוב תפקודי ותלת מימד
עיצוב ותפקוד תלת מימד
עיצוב ותפקוד תלת מימד
עיצוב ותפקוד תלת מימד
עיצוב ותפקוד תלת מימד
עיצוב ותפקוד תלת מימד
עיצוב ותפקוד תלת מימד

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

קובץ ה-.step של כל עיצוב התלת מימד משותף בתחתית כדי לאפשר עריכה קלה יותר.

שלב 4: מנגנון השליטה

Image
Image

האלגוריתם העיקרי של פרויקט Gimbal שלי משתמש בסיבוב Quaternion שהוא אלטרנטיבה לזוויות אוילר. השתמשתי בספריית helper_3dmath.h כהפניה לאפשר תנועה חלקה באמצעות אלגוריתם Quaternion. למרות שתגובת ציר המגרש חלקה, ציר הגליל מתעכב כדי להגיב על תנועת המקל. באמצעות אלגוריתם Quaternion הצלחתי לשלוט במנועי סרוו של Roll and Pitch. אם אתה רוצה להשתמש בציר yaw, ייתכן שיהיה עליך להשתמש ב- MPU6050 השני רק כדי לשלוט על ציר הלסת. כפתרון חלופי, הגדרתי את HC-05 ושלטתי בציר הלסת מרחוק באמצעות אפליקציית אנדרואיד באמצעות לחצנים. בכל לחיצה על כפתור הלחיצה, סרוו ציר הלסת מסתובב 10 מעלות.

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

1- I2Cdev.h // משמש עם wire.h כדי לאפשר תקשורת עם MPU6050

2- "MPU6050_6Axis_MotionApps20.h" // ספריית גירוסקופ

3- // זה מאפשר להמיר סיכות דיגיטליות לסיכות RX ו- TX (יש צורך במודול Bluetooth HC-05)

4-

5- // הוא מאפשר לתקשר עם התקני I2C המשתמשים בשני סיכות נתונים (SDA ו- SCL) => MPU6050

הקוד הראשי נוצר על ידי ג'ף רווברג, ושיניתי אותו בהתאם לפונקציונליות הפרויקט שלי והערתי לכל הפונקציות בקובץ ino.

מוּמלָץ: