יום שני, 6 בנובמבר 2017

ארדואינו ו GPS

הגיע הזמן לחבר את הארדואינו לרכיב GPS. רכיב ה GPS מזהה את המיקומים של הלוויינים ועל פיהם מחשב את המיקום שלו עצמו. לאחר התנסות עם מספר רכיבים של GPS, החלטתי להשתמש ברכיב GPS מסוג NEO-6M. הרכיב קטן ופשוט מאד להפעלה. הוא מגיע עם חמישה חיבורים (ואנחנו נשתמש בארבעה מהם) ומגיע עם אנטנה פנימית אולם יכול להתחבר גם לאנטנה חיצונית. היתרון של אנטנה חיצונית הוא שאנו יכולים לעבוד בתוך הבית ולהשתמש ב GPS בתוך מבנה אולם לשלשל את האנטנה החוצה וכך לקבל אות מדויק של GPS. אם אין לכם אנטנה חיצונית - תאלצו לצאת עם המחשב והארדואינו אל השמים הפתוחים לאחר העלאת הקוד.

נתחיל?

רכיבים:

  • ארדואינו UNO
  • מטריצה
  • ארבעה חוטים 
  • רכיב GPS מסוג NEO-6M
  • אנטנה מתאימה (לא חובה). 
את רכיב ה GPS נחבר למטריצה ולאחר מכן נחבר את החוטים על פי החיבורים הבאים:

את ה VCC ברכיב ה GPS נחבר ל 5V בארדואינו.
את ה GND ברכיב ה GPS נחבר ל GND בארדואינו. 
את ה TXD ברכיב ה GPS נחבר ליציאה מספר 10 בארדואינו. 
את ה RXD ברכיב ה GPS נחבר ליציאה מספר 9 בארדואינו.
את ה PPS ברכיב ה GPS נשאיר ללא חיבור. 
אם יש לכם אנטנה חיצונית תואמת לרכיב - חברו אותה. 



אחרי שחיברנו הכל, אנו צריכים להוריד 2 ספריות על מנת להפעיל את הקוד. הספריה SoftwareSerial, מאפשרת לנו להשתמש ביציאות אחרות בארדואינו כיציאות TX ו RX. הספריה TinyGPS היא ספריה ספציפית ל GPS ובעזרתה נפעיל את הרכיב שלנו. 

אחרי שהורדנו את הספריות ושמנו אותן מחולצות במקומן (אצלי זו הכתובת:  C:\Program Files (x86)\Arduino\libraries) אפשר להעלות את הקוד. 

שימו לב בבקשה שאתם מורידים את הספריות כאשר תוכנת הארדואינו סגורה!

כעת נעלה את הקוד: 



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

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


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

31.95723, 35.35621

העתקתי את הקורדינטות לגוגל ולחצתי על חיפוש. גוגל זיהה את הקורדינטות וסימן את המיקום שלי על המפה (הסימון האדום):


אגב, הסימון הכחול מבוסס על חישוב של גוגל לגבי המיקום שלי בהתבסס על רשתות אלחוטיות באזור ואולי גם בהתבסס על נתוני GPS (?) במגבלות של מבנה. ניתן לראות שהמיקום האדום (=הקורדינטות שהוצאתי מהמסך הסיריאלי של הארדואינו) מדויק יותר מהנקודה הכחולה (=המיקום שגוגל מעריך שאני נמצא בו).

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


(קרדיט למקור ממני לקחתי את רוב המידע)

אין תגובות:

הוסף רשומת תגובה

הערות? הארות? יש לך משהו חשוב לספר לכולם? שאלות?

נשמח לשמוע!

(התגובה תפורסם בהקדם בכפוף לאישור מערכת מייקינג)