- חומרים נדרשים
- מהו מגנטומטר וכיצד הוא עובד?
- כיצד פועל מודול חיישן HMC5883L
- תרשים מעגל
- ייצור PCB עבור המצפן הדיגיטלי
- הרכבת ה- PCB
- תכנות את הארדואינו
המוח האנושי בנוי משכבה מורכבת של מבנים שעוזרת לנו להיות זן דומיננטי עלי אדמות. לדוגמא קליפת המוח התוך המוחית במוח שלך יכולה לתת לך תחושת כיוון ולעזור לך לנווט בקלות במקומות שאינך מכיר. אך בניגוד לנו, רובוטים ורכבי אריאל בלתי מאוישים זקוקים למשהו כדי לקבל את תחושת הכיוון הזו כדי שיוכלו לתמרן באופן אוטונומי בשטחים ונופים חדשים. רובוטים שונים משתמשים בסוגים שונים של חיישנים בכדי להשיג זאת, אך הרוב הנפוץ הוא מגנומטר אשר יכול להודיע לרובוט לאיזה כיוון גיאוגרפי הוא פונה כעת. זה לא רק יעזור לרובוט לחוש כיוון אלא גם לתור בכיוון מוגדר מראש ולמלאך.
מכיוון שהחיישן יכול להצביע על הצפון הגיאוגרפי, הדרום, המזרחי והמערבי, אנו בני האדם היינו יכולים להשתמש בו גם בעת הצורך. אז במאמר זה ננסה להבין כיצד עובד חיישן מגנטומטר וכיצד לממשק אותו למיקרו-בקר כמו ארדואינו. כאן נבנה מצפן דיגיטלי מגניב שיעזור לנו למצוא את ההוראות באמצעות זוהר נורית LED שמכוונת לכיוון צפון. המצפן הדיגיטלי הזה מיוצר בקפידה על גבי PCB מ- PCBGOGO, כדי שאוכל לשאת אותו בפעם הבאה כשאצא לטבע ואחל שאלך לאיבוד רק כדי להשתמש בדבר הזה למציאת דרכי חזרה הביתה. בוא נתחיל.
חומרים נדרשים
- מיני Arduino Pro
- חיישן מגנטומטר HMC5883L
- נורות לד - 8 מס
- 470Ohm נגד - 8Nos
- ג'ק חבית
- יצרן PCB אמין כמו PCBgogo
- מתכנת FTDI למיני
- מחשב / מחשב נייד
מהו מגנטומטר וכיצד הוא עובד?
לפני שנצלול למעגל, בואו נבין קצת על מגנומטר ואיך הם עובדים. כפי שהשם מרמז המונח מגנטו אינו מתייחס לאותו מוטציה מטורפת בפלא שיכולה לשלוט על מתכות רק על ידי נגינה בפסנתר באוויר. אהה! אבל אני אוהב את הבחור ההוא שהוא אחלה.
מגנטומטר הוא למעשה פיסת ציוד שיכולה לחוש את הקטבים המגנטיים של כדור הארץ ולהפנות את הכיוון לפיה. כולנו יודעים שכדור הארץ הוא פיסת מגנט כדורית ענקית עם הקוטב הצפוני והקוטב הדרומי. ויש שדה מגנטי בגלל זה. מגנטומטר מרגיש שדה מגנטי זה ועל סמך כיוון השדה המגנטי הוא יכול לזהות את הכיוון אליו אנו פונים.
כיצד פועל מודול חיישן HMC5883L
HMC5883L להיות חיישן מגנטומטר עושה את אותו הדבר. יש עליו את ה- IC HMC5883L שמקורו בהוניוול. ל- IC זה 3 חומרים עמידים למגנטו שבתוכם מסודרים בצירים x, y ו- z. כמות הזרם הזורמת דרך חומרים אלה רגישה לשדה המגנטי של כדור הארץ. אז על ידי מדידת השינוי בזרם הזורם דרך חומרים אלה אנו יכולים לזהות את השינוי בשדה המגנטי של כדור הארץ. ברגע שהשינוי נספג השדה המגנטי ניתן לשלוח את הערכים לכל בקר משובץ כמו מיקרו-בקר או מעבד באמצעות פרוטוקול I2C.
מכיוון שהחיישן עובד על ידי חישה של השדה המגנטי, ערכי הפלט יושפעו מאוד אם מתכת ממוקמת בסמוך. ניתן למנף התנהגות זו לשימוש בחיישנים אלה גם כגלאי מתכת. יש להיזהר שלא להביא מגנטים ליד חיישן זה מכיוון שהשדה המגנטי החזק ממגנט עלול לגרום לערכים כוזבים על החיישן.
ההבדל בין HMC5883L ו- QMC5883L
יש בלבול נפוץ המסתובב סביב חיישנים אלה עבור מתחילים רבים. הסיבה לכך היא שחלק מהספקים (למעשה רובם) מוכרים את חיישני QMC5883L במקום את HMC5883L המקורי מבית Honeywell. זה בעיקר בגלל ש- QMC5883L הוא הרבה יותר זול ממודול ה- HMC5883L. החלק העצוב הוא שהעבודה של שני חיישנים אלה שונה במקצת ולא ניתן להשתמש באותו קוד עבור שניהם. הסיבה לכך היא שכתובת ה- I2C של שני החיישנים אינה זהה. הקוד שנתן במדריך זה יעבוד רק עבור QMC5883L, המודול החיישן הנפוץ.
כדי לדעת איזה דגם של חיישן יש לך, אתה רק צריך להסתכל מקרוב על ה- IC עצמו כדי לקרוא את מה שכתוב על גבי זה. אם זה כתוב משהו כמו L883 אז זה HMC58836L ואם כתוב משהו כמו DA5883 אז זה ה- QMC5883L IC. שני המודולים מוצגים בתמונה למטה כדי להקל עליהם.
תרשים מעגל
המעגל עבור מצפן דיגיטלי מבוסס Arduino זה הוא די פשוט, עלינו פשוט לממשק את חיישן HMC5883L עם Arduino ולחבר 8 נוריות לסיכות ה- GPIO של ה- Arduino Pro mini. תרשים המעגל המלא מוצג להלן
מודול חיישן יש 5 סיכות החוצה מתוכו DRDY (Ready Data) אינו משמש בפרויקט שלנו מאז אנו פועלים החיישן במצב מתמשך. ה- Vcc וסיכה הקרקעית משמשים להפעלת המודול עם 5 וולט מלוח Arduino. SCL ו- SDA הם קווי אוטובוס התקשורת I2C המחוברים לסיכות A4 ו- A5 I2C של Arduino Pro mini בהתאמה. מכיוון שלמודול עצמו יש נגד משיכה גבוה בקווים, אין צורך להוסיף אותם חיצונית.
כדי לציין את הכיוון השתמשנו ב -8 נוריות LED המחוברות לסיכות ה- GPIO של הארדואינו באמצעות נגד מגביל זרם של 470 אוהם. המעגל השלם מופעל על ידי סוללת 9 וולט דרך שקע הקנה. 9V זה מסופק ישירות לסיכת ה- Vin של הארדואינו, שם הוא מווסת ל -5 וולט באמצעות הרגולטור על הלוח בארדואינו. 5V זה משמש לאחר מכן להפעלת החיישן וגם הארדואינו.
ייצור PCB עבור המצפן הדיגיטלי
הרעיון של המעגל הוא למקם את 8 נוריות הנורה בצורה מעגלית כך שכל לד מכוונת לכל 8 הכיוונים, כלומר צפון, צפון-מזרח, מזרח, דרום-מזרח, דרום, דרום-מערב, מערב וצפון-מערב בהתאמה. לכן לא קל לסדר אותם בצורה מסודרת על קרש לחם או אפילו על קרש מושלם לצורך העניין. פיתוח PCB למעגל זה יראה אותו מסודר וקל יותר לשימוש. אז פתחתי את תוכנת העיצוב של PCB והנחתי את נוריות ה- LED והנגד בתבנית מעגלית מסודרת וחיברתי את המסילות ליצירת חיבורים. העיצוב שלי נראה משהו כזה למטה כשהושלם. ניתן גם להוריד את קובץ גרבר מהקישור הבא.
- הורד קובץ גרבר למחשבי לוח דיגיטלי של מצפן
תכננתי את זה שיהיה לוח צד כפול מכיוון שאני רוצה שהארדואינו יהיה בחלק התחתון של ה- PCB שלי, כך שהוא לא יקלקל את המראה על גבי ה- PCB שלי. אם אתה דואג שתצטרך לשלם גבוה עבור PCB צדדי כפול, אז המתן שקיבלתי חדש.
עכשיו, כשהעיצוב שלנו מוכן הגיע הזמן לייצר אותם. כדי לבצע את ה- PCB זה די קל, פשוט בצע את השלבים הבאים
שלב 1: היכנס ל- www.pcbgogo.com, הירשם אם זו הפעם הראשונה שלך. לאחר מכן, בכרטיסיית אב טיפוס PCB הזן את ממדי ה- PCB שלך, מספר השכבות ומספר PCB שאתה זקוק לו. PCB שלי הוא 80 ס"מ × 80 ס"מ, כך שהכרטיסייה נראית כך למטה
שלב 2: המשך על ידי לחיצה על כפתור ציטוט עכשיו . תועבר לדף שבו תוכל להגדיר כמה פרמטרים נוספים במידת הצורך, כמו חומר המרווח בין מסלולים וכו '. אך בעיקר ערכי ברירת המחדל יעבדו בסדר. הדבר היחיד שעלינו לקחת בחשבון כאן הוא המחיר והזמן. כפי שאתה יכול לראות זמן הבנייה הוא רק 2-3 ימים וזה פשוט עולה רק 5 $ עבור ה- PSB שלנו. לאחר מכן תוכל לבחור שיטת משלוח מועדפת על פי דרישתך.
שלב 3: השלב האחרון הוא העלאת קובץ גרבר והמשך התשלום. כדי לוודא שהתהליך חלק PCBGOGO מאמת אם קובץ הגרבר שלך תקף לפני שתמשיך עם התשלום. בדרך זו אתה יכול לוודא כי ה- PCB שלך הוא ידידותי לייצור ויגיע אליך כמחויב.
הרכבת ה- PCB
לאחר הזמנת הלוח, הוא הגיע אלי לאחר מספר ימים, אך שליח בתיבה ארוזה היטב וכמו תמיד איכות ה- PCB הייתה מדהימה. אני משתף כמה תמונות מהלוחות למטה כדי שתוכלו לשפוט.
הפעלתי את מוט ההלחמה שלי והתחלתי להרכיב את הלוח. מכיוון שטביעות הרגליים, הרפידות, הוויאסות ומסך המשי הם בצורה ובגודל הנכונים לחלוטין לא הייתה לי שום בעיה להרכיב את הלוח. הלוח היה מוכן תוך עשר דקות בלבד מרגע פריקת הארגז.
תמונות מעטות של הלוח לאחר ההלחמה מוצגות למטה.
תכנות את הארדואינו
עכשיו שהחומרה שלנו מוכנה, בואו נבדוק את התוכנית שיש להעלות ללוח Arduino שלנו. מטרת הקוד היא לקרוא את הנתונים מחיישן המגנטומטר QMC5883L ולהמיר אותם למידה (0 עד 360). ברגע שנדע את התואר, עלינו להדליק את ה- LED המכוון לכיוון מסוים. הכיוון בו השתמשתי בתוכנית זו הוא צפון. כך שלא משנה היכן אתה נמצא , נורית נורית אחת זוהרת על הלוח שלך וכיוון הנורית יציין את כיוון הצפון. פעם יכול היה לחשב אחר כך את הכיוון השני הוא כיוון אחד ידוע.
הקוד המלא לפרויקט מצפן דיגיטלי זה נמצא בסוף עמוד זה. אתה יכול להעלות אותו ישירות על הלוח שלך לאחר הכללת הספרייה ואתה מוכן לצאת לדרך. אבל, אם אתה רוצה לדעת