- רכיב נדרש
- תרשים מעגלים של ריחוף אולטרה סאונד
- תכנות Arduino לריחוף אולטרסאונד
- בניית מערך ריחוף אולטרסאונד
זה מאוד מרגש לראות משהו צף באוויר או בחלל פנוי, בדיוק על מה מדובר בפרויקט נגד כובד. האובייקט (ביסודו פיסת נייר קטנה או תרמוקול) ממוקם בין שני מתמרים קולי המייצרים גלי קול אקוסטיים. האובייקט צף באוויר בגלל הגלים האלה שנראים כאילו הם נגד כוח המשיכה. זה לא רק פרויקט ריחוף של Arduino מגניב למראה, אלא יש לו גם יישומים מעשיים רבים. חוקרים עובדים על תפסנים רובוטיים אולטרה סאונד, שעובדים מאוד דומה לזה, ותפסנים אלה יכולים להיות שימושיים בהעברת עצמים מבלי לגעת בהם.
רכיב נדרש
- Arduino Uno / Arduino Nano ATMEGA328P
- מודול קולי HC-SR04
- מודול IC או L239d H-Bridge L239D
- לוח ורו מנוקד ורו
- דיודה 4007
- קבלים (PF) 104
דרישה נוספת לאספקת חשמל 8 עד 12 וולט
- וסת מתח LM 7809
- ספק כוח לד הנהג 12V 2Amp
חומר נוסף: חוט חיבור כלשהו, כותרת זכר, חוט מגשר נקבה עד נקבה
תרשים מעגלים של ריחוף אולטרה סאונד
המעגל המלא של ארדואינו לריחוף מוצג להלן ועקרון העבודה של המעגל פשוט מאוד. המרכיב העיקרי של פרויקט זה הוא ארדואינו, IC המניע מנוע L239D ומתמר קולי שנאסף ממודול החיישן הקולי HCSR04. באופן כללי, החיישן הקולי מעביר גל אקוסטי של אות תדרים בין 25 קילו-הרץ ל -50 קילו-הרץ, ובפרויקט זה אנו משתמשים במתמר קולי HCSR04. בנינו בעבר פרויקטים רבים של חיישנים קולי, בהם HCSR04 משמש בעיקר למדידת מרחק. בפרויקט זה הלחמנו את המתמר מהמודול.
על פי גיליון הנתונים, תדר העבודה של מתמר קולי זה הוא 40 קילוהרץ. לכן, מטרת השימוש בארדואינו ובקוד הקטן הקטן הזה היא ליצור אות תנודה בתדר גבוה של 40 קילו-הרץ עבור החיישן או המתמר הקולי שלי, והדופק הזה מוחל על הקלט של מנוע הדו-קרב IC L239D (פין 2 ו -6 מארדוינו. סיכות A0 ו- A1) להפעלת מתמר קולי. לבסוף, אנחנו מיישמים אות תנודת 40KHz בתדירות גבוהה זו יחד עם נהיגת מתח דרך נהיגת IC (בדרך כלל 8 מתח to12 נתון על 8 th סיכה של IC L239D, Vcc2) על המתמר הקולי. כתוצאה ממנו מתמר קולי מייצר גלי קול אקוסטיים. הצבנו שני מתמרים פנים אל פנים בכיוון ההפוך בצורה כזו שנשאר מרווח כלשהו ביניהם. גלי קול אקוסטיים נעים בין שני מתמרים ומאפשרים לאובייקט לצוף.
שימו לב L293D יש קלט מתח כפול, אחד היא העוצמה שהייתה IC עצמו, אשר מופעל מ Arduino 5V בפרויקט זה ועוד Vcc2 (8 th) להחיל מתח נהיגה רכיב תפוקות וזה פין VCC יכול לקבל עד 36V. ל- IC זה 2 פינים אפשריים, 4 פינים של פלט קלט, 4 פינים של קרקע. הרעיון של שימוש ב- IC זה נובע מהתפיסה של שימוש במיקרו-בקר ובשבב זה בו אנו יכולים לשנות את הכיוון והמהירות של שני מנועים בנפרד על ידי מתן פשוט אות לוגי או דיגיטלי מהמיקרו-בקר.
במעגל זה אנו משתמשים רק בשני כניסות של ה- IC L293D, סיכת כניסה 1 (2) וסיכה כניסה 2 (7). כדי לאפשר את שני הפינים האלה, עלינו לשמור על IC Enable PIN 1 גבוה, אז צילמנו את הפין הזה לסיכת IC 16 שהיא קלט Vcc 1, למידע נוסף, אנא עקוב אחר גיליון הנתונים L293D.
השימוש של קבל 100nf הוא אופציונלי רק להחזיק את הכוח IC וכתוצאה אספקת החשמל, אנו משתמשים נהג LED 2Amp 12V, אז טיפה את מתח 9V באמצעות הרגולטור מתח IC LM7809 ואספקה 8 th סיכה של L139D עם בסיס משותף. על פי פורום Arduino, Cc ו- Arduino, לוח Arduino UNO תומך בקלט של 7 עד 12 וולט, אך בטוח יותר להכניס מקסימום 9 וולט.
תכנות Arduino לריחוף אולטרסאונד
הקידוד הוא פשוט מאוד, רק כמה שורות. באמצעות קוד קטן זה בעזרת טיימר ופונקציות הפרעה, אנו מייצרים גבוה או נמוך (0/1) ומייצרים אות תנודה של 40 קילו-הרץ לסיכות פלט Arduino A0 ו- A1.
ראשית, התחל במערך משמרת פאזה.
בתים TP = 0b10101010;
וכל יציאה שנייה מקבלת את האות ההפוך הזה. לאחר מכן תחת הגדרת הריק, אנו מגדירים את כל היציאות האנלוגיות כפלט באמצעות שורת קוד זו.
DDRC = 0b11111111;
לאחר מכן אנו מאתחלים את הטיימר 1 ומשביתים את כל ההפרעה כדי להגדיר אותם כאפס.
לפי הקוד הזה, noInterrupts (); TCCR1A = 0; TCCR1B = 0; TCNT1 = 0;
לאחר מכן, טיימר אחד מוגדר להפעיל שעון הפסקה להשוות ב 80 KHz. Arduino פועל ב 16000000 MHZ ÷ 200 = 80,000 קילוהרץ גלים מרובעים נוצרים באמצעות פונקציה זו.
OCR1A = 200; TCCR1B - = (1 << WGM12); TCCR1B - = (1 << CS10);
לאחר מכן, קו זה מופעל, השווה את הפרעת הטיימר.
TIMSK1 - = (1 << OCIE1A);
ולסיום, הפעל הפסק באמצעות פיסת הקוד הזו.
מפריע ();
כל הפרעה הופכת את מצב היציאות האנלוגיות, וזה הופך אות גל מרובע של 80 קילוהרץ לאות של גל מלא על 40Khz. ואז אנו שולחים את הערך ליציאת Arduino A0 ו- A1.
ISR (TIMER1_COMPA_vect) {PORTC = TP; TP = ~ TP; // הפוך TP לריצה הבאה}
ואין מה לשים או צורך לרוץ מתחת לולאות.
בניית מערך ריחוף אולטרסאונד
שים לב כי עבור פרויקט זה, יש צורך בהתקנה נכונה של מתמרים קולי. הם צריכים להתמודד זה עם זה בכיוון ההפוך וזה חשוב מאוד והם צריכים להיות באותו קו כך שגלי קול אולטראסוניים יוכלו לנוע ולהצטלב זה בזה בכיוונים מנוגדים. לשם כך, אתה יכול לקחת שתי חתיכות קטנות של עץ או לוח MD, בריח אגוזים ודבק. אתה יכול ליצור שני חורים כדי להתאים את המתמר בצורה מושלמת על ידי מכונת המקדחה. על המעמד ניתן לתלות את סידור המתמר הקולי.
במקרה זה השתמשתי בשתי פיסות קרטון ואז קבוע מתמר קולי בעזרת דבק מאקדח הדבק. מאוחר יותר, להכנת המעמד, השתמשתי בתיבת מעטפת חיווט פשוטה וקיבעתי הכל בדבק.
להלן מספר תמונות של ריחוף אולטרסאונד המציגות את עבודתו של הפרויקט.
ריחוף קולי או ריחוף אקוסטי פועל גם אם צד אחד מותקן עם המתמר הקולי, אך במקרה זה יהיה צורך ברפלקטור אשר ישמש כמכשול כך שניתן יהיה להשתמש בו ברחף בעתיד והובלה נגד כוח הכבידה. תוכלו גם לבדוק את סרטון העבודה השלם למטה.
אני מקווה שהבנתם את הפרויקט ונהניתם לבנות משהו מהנה. אם יש לך שאלות, השאיר אותן בסעיף ההערות למטה, תוכל גם להשתמש בפורומים שלנו לשאלות טכניות אחרות.