תוכן עניינים:
- שלב 1: ציוד
- שלב 2: קובץ תמונה של תרשים מעגלים
- שלב 3: קובץ פריצה של תרשים המעגלים
- שלב 4: קוד המשדר
- שלב 5: קוד המקלט
- שלב 6: קבצי INO
- שלב 7: קישור של ספריות
וִידֵאוֹ: מכונית אלחוטית המבוקרת על ידי מחוות: 7 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
במדריך זה אנו הולכים ללמוד כיצד להכין מכונית מבוקרת מחוות או כל רובוט. לפרויקט זה יש שני חלקים, חלק אחד הוא יחידת משדר וחלק אחר הוא יחידת מקלט. יחידת המשדר למעשה מותקנת על כפפות יד ויחידת המקלט ממוקמת בתוך מכונית או כל רובוט. עכשיו הגיע הזמן ליצור מכונית נחמדה. בוא נלך!
שלב 1: ציוד
יחידת משדר
1. ארדואינו ננו.
2. מודול חיישן MPU6050.
3. משדר RF 433 מגהרץ.
4. כל סוג של 3 תאים, סוללת 11.1 וולט (כאן השתמשתי בתא מטבע).
5. ורו-בורד.
6. כפפות ידיים.
יחידת מקלט
1. Arduino Nano או Arduino Uno.
2. מודול נהג מנוע L298N.
3. מסגרת רובוט 4 גלגלים כולל מנועים.
4. מקלט RF 433.
5. סוללת 3 תאים, 11.1 וולט לי-פו.
6. לוח לוח וורו.
אחרים
1. מקלות דבק ואקדח.
2. חוטי מגשר.
3. מברגי ברגים
4. ערכת הלחמה.
וכו '
שלב 2: קובץ תמונה של תרשים מעגלים
שלב 3: קובץ פריצה של תרשים המעגלים
שלב 4: קוד המשדר
#לִכלוֹל
#לִכלוֹל
#לִכלוֹל
MPU6050 mpu6050 (חוט);
טיימר ארוך = 0;
בקר *צ'אר;
הגדרת חלל ()
{Serial.begin (9600); Wire.begin (); mpu6050.begin (); mpu6050.calcGyroOffsets (נכון); vw_set_ptt_inverted (true); // vw_set_tx_pin (10); vw_setup (4000); // מהירות העברת הנתונים Kbps
}
לולאת חלל ()
{ ////////////////////////////////////////////////////////////////////////////////////////////////
mpu6050.update ();
אם (מילי () - טיימר> 1000)
{Serial.println ("============================================ ============ "); Serial.print ("temp:"); Serial.println (mpu6050.getTemp ()); Serial.print ("accX:"); Serial.print (mpu6050.getAccX ()); Serial.print ("\ taccY:"); Serial.print (mpu6050.getAccY ()); Serial.print ("\ taccZ:"); Serial.println (mpu6050.getAccZ ()); Serial.print ("gyroX:"); Serial.print (mpu6050.getGyroX ()); Serial.print ("\ tgyroY:"); Serial.print (mpu6050.getGyroY ()); Serial.print ("\ tgyroZ:"); Serial.println (mpu6050.getGyroZ ()); Serial.print ("accAngleX:"); Serial.print (mpu6050.getAccAngleX ()); Serial.print ("\ taccAngleY:"); Serial.println (mpu6050.getAccAngleY ()); Serial.print ("gyroAngleX:"); Serial.print (mpu6050.getGyroAngleX ()); Serial.print ("\ tgyroAngleY:"); Serial.print (mpu6050.getGyroAngleY ()); Serial.print ("\ tgyroAngleZ:"); Serial.println (mpu6050.getGyroAngleZ ()); Serial.print ("angleX:"); Serial.print (mpu6050.getAngleX ()); Serial.print ("\ tangleY:"); Serial.print (mpu6050.getAngleY ()); Serial.print ("\ tangleZ:"); Serial.println (mpu6050.getAngleZ ()); Serial.println ("============================================= ============ / n "); טיימר = מיליס (); }
/////////////////////////////////////////////////////////////////////////////////////
if (mpu6050.getAccAngleX () 30) {בקר = "X2"; בקר vw_send ((uint8_t *), strlen (בקר)); vw_wait_tx (); // המתן עד שכל ההודעה תיעלם Serial.println ("קדימה"); } אחרת אם (mpu6050.getAccAngleY ()> 40) {controller = "Y1"; בקר vw_send ((uint8_t *), strlen (בקר)); vw_wait_tx (); // המתן עד שכל ההודעה תיעלם Serial.println ("LEFT"); } אחרת אם (mpu6050.getAccAngleY () <-40) {controller = "Y2"; בקר vw_send ((uint8_t *), strlen (בקר)); vw_wait_tx (); // המתן עד שכל ההודעה תיעלם Serial.println ("ימינה"); } אחרת אם (mpu6050.getAccAngleX ()-10 && mpu6050.getAccAngleY ()-10) {controller = "A1"; בקר vw_send ((uint8_t *), strlen (בקר)); vw_wait_tx (); // המתן עד שכל ההודעה תיעלם Serial.println ("STOP"); }}
שלב 5: קוד המקלט
#לִכלוֹל
int LA = 3;
int LB = 11; int RA = 5; int RB = 6; הגדרת void () {Serial.begin (9600); vw_set_ptt_inverted (true); // נדרש עבור DR3100 vw_set_rx_pin (12); vw_setup (4000); // ביטים לשנייה pinMode (13, OUTPUT); pinMode (LA, OUTPUT); pinMode (LB, OUTPUT); pinMode (RA, OUTPUT); pinMode (RB, OUTPUT); vw_rx_start (); // הפעל את PLL המקלט עם Serial.println ("הכל בסדר");
}
לולאת חלל () {uint8_t buf [VW_MAX_MESSAGE_LEN]; uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message (buf, & buflen)) // לא חוסם
{if ((buf [0] == 'X') && (buf [1] == '1')) {Serial.println ("BACKWARD"); לְאָחוֹר(); עיכוב (100); //כבוי(); } אחרת אם ((buf [0] == 'X') && (buf [1] == '2')) {Serial.println ("קדימה"); קָדִימָה(); עיכוב (100); //כבוי(); }
אחרת אם ((buf [0] == 'Y') && (buf [1] == '1'))
{Serial.println ("שמאל"); שמאלה(); עיכוב (100); //כבוי(); }
אחרת אם ((buf [0] == 'Y') && (buf [1] == '2'))
{Serial.println ("ימין"); ימין(); עיכוב (100); //כבוי(); } אחרת אם ((buf [0] == 'A') && (buf [1] == '1')) {Serial.println ("STOP"); כבוי(); עיכוב (100); }} else {Serial.println ("לא התקבל אות"); }}
בטל קדימה ()
{analogWrite (LA, 70); analogWrite (LB, 0); analogWrite (RA, 70); analogWrite (RB, 0); }
בטל לאחור ()
{analogWrite (LA, 0); analogWrite (LB, 70); analogWrite (RA, 0); analogWrite (RB, 70); }
ריק שמאל ()
{analogWrite (LA, 0); analogWrite (LB, 70); analogWrite (RA, 70); analogWrite (RB, 0); }
בטל זכות ()
{analogWrite (LA, 70); analogWrite (LB, 0); analogWrite (RA, 0); analogWrite (RB, 70); }
בטל ()
{analogWrite (LA, 0); analogWrite (LB, 0); analogWrite (RA, 0); analogWrite (RB, 0); }
שלב 6: קבצי INO
שלב 7: קישור של ספריות
ספריית Wire Virtual:
MPU6050_tockn מאזניים:
ספריית Wire:
מוּמלָץ:
מכונית בקרת מחוות MPU6050 ו- NRF24L01: 4 שלבים
רכב בקרת מחוות MPU6050 ו- NRF24L01: הרובוט לבקרת מחוות הוא סוג פרוייקטים נפוץ שנעשו על ידי חובבים. הרעיון מאחוריו פשוט: כיוון כף היד שולט בתנועת מכונית הרובוט. MPU6050 לחוש את כיוון פרק כף היד ומעביר אותה אל
עכבר נשלט על ידי מחוות באמצעות מיקרו: ביט: 5 שלבים
עכבר הנשלט על ידי מחוות באמצעות מיקרו: ביט: מבוא הפרויקט הוא עכבר הנשלט על ידי מחוות, בדמות כפפה עם מיקרו: ביט מוטבע בתוכה. זהו פרויקט בהשראת רעיון מוקדם שהיה לי כמהנדס מוטבע. אני תמיד רוצה לקבל גישה לעכבר ומקלדת אלחוטית
מרחוק אוניברסלי נשלט על ידי מחוות עם Node-MCU: 12 שלבים
מרחוק אוניברסלי נשלט על ידי מחוות עם Node-MCU: שלום לכולם וברוכים הבאים לפרויקט זה! אני די עצלן וסיוט של עצלן הוא לצפות בטלוויזיה כשאתה מבין שהשלט רחוק מדי! הבנתי שהשלט שלי לעולם לא יהיה רחוק מדי אם יהיה לי אותו בהישג יד
מכונית מבוקרת מחוות: 5 שלבים (עם תמונות)
מכונית מבוקרת מחוות: רובוטים ממלאים תפקיד חשוב באוטומציה בכל המגזרים כמו בנייה, צבא, רפואה, ייצור וכו
מכונית לבקרת מחוות באמצעות Mpu6050 וארדואינו: 7 שלבים (עם תמונות)
מכונית לבקרת מחוות באמצעות Mpu6050 וארדואינו: להלן מכונית לבקרת מחוות של בקרת יד, המיוצרת באמצעות mpu6050 וארדואינו. אני משתמש במודול rf לחיבור אלחוטי