בשל הדיוק הנדרש בתחומים שונים, כגון חקלאות, ארכיאולוגיה ותחבורה, לייזרים משמשים לעתים קרובות למטרות כגון הימנעות ממכשולים, בניית מפה, או אפילו אוטונומי ניווט.
בואו נסתכל על LiDARs, כיצד הם פועלים וכיצד תוכלו להשתמש בהם כדי ליצור מפה דו-ממדית של החלל שלכם.
דברים שתצטרכו כדי לסרוק את החדר שלכם
להלן הדרישות המוקדמות ליצירת מפה דו-ממדית של החדר שלך:
- מחשב נייד או מחשב עם שרת אובונטו
- התקנת ROS
- LiDAR
מה זה LiDAR?
LiDAR, או Light Detection and Ranging, ניתן למצוא אותו גם בשם אחר, LADAR (איתור לייזר ו Ranging) טכנולוגיית חישה מרחוק אקטיבית המודדת מרחק באמצעות אור בצורת פעימה לייזר. הטכנולוגיה פועלת על ידי הפעלת דופק אופטי למטרה ומדידת המאפיינים של אות ההחזרה המשתקף.
המערכת מודדת את הזמן שלוקח לקורה לחזור. באופן כללי, זה מד מרחק. רוחב הפולס האופטי יכול לנוע בין כמה ננו-שניות למספר מיקרו-שניות, והוא יכול לכוון למגוון חומרים.
חיבור מערכת ורכישת נתונים בלייזר
RPLIDAR A1, חיישן LiDAR בעלות נמוכה המתאים ליישומים רובוטיים פנימיים, ישמש במקרה זה. יש לו שדה סריקה של 360 מעלות, תדר מסתובב של 5.5 הרץ/10 הרץ ומרחק ריינג'ר של 8 מטרים. ל-LiDAR מערכת סורק טווח, מערכת מנוע וכן ממשק תקשורת (יציאה טורית/USB).
המערכת מודדת נתוני מרחק ביותר מ-2000 פעמים בשנייה ועם פלט מרחק ברזולוציה גבוהה. כתוצאה מכך, זה דורש שימוש במספר כלים כדי לעבד ולהמחיש את הנתונים. לדוגמה, אתה יכול להשתמש בכלי SlamTech RoboStudio או בחבילת ROS שסופקה.
למה ROS?
ROS (מערכת הפעלה רובוט) היא תוכנה המשמשת קהילת קוד פתוח עולמית של חובבי רובוטיקה המוקדשים לשיפור והפיכת רובוטים לזמינים לכולם. זה פותח בתחילה על ידי אריק ברגר וקינן ווירובק באוניברסיטת סטנפורד. ROS גם מאפשר לך לדמיין נתוני חיישנים, ליצור ממשקים ולהשתמש בכלים כמו Rviz ומנוע הסימולציה Gazebo.
עם ROS, תוכל להפריד בקלות את הקוד שלך לחבילות המכילות תוכניות קטנות, הנקראות צמתים. צמתים אלה מחוברים באמצעות נושאים עליהם הם שולחים ומקבלים הודעות.
בפרויקט זה, תשתמש ב-rplidar_ros, חבילת ROS שתוכננה במיוחד לאיסוף נתונים של LiDAR. החבילה hector_slam תשמש מאוחר יותר ליצירת מפה.
שלב 1: התקנת ROS
לאחר התקנת שרת אובונטו, פתח את הטרמינל שלך והפעל את הפקודה הבאה כדי לוודא שאינדקס החבילה של Debian שלך מעודכן. ההבדל בין עדכון לשדרוג כבר מכוסה.
sudo apt עדכון
השלב הבא הוא התקנת ROS.
sudo apt להתקין ros-noetic-desktop-מלא
אתה יכול לבדוק ROS על ידי הפעלת ה רוסקור, אשר ישמש הוכחה להתקנה נכונה.
רוסקור
שלב 2: קבלת הסריקה הראשונה שלך
ראשית, הפעל את הפקודה הבאה כדי להתקין את rplidar_ros חֲבִילָה:
sudo apt-לקבל התקן את ros-noetic-rplidar-ros
ה rplidar_ros החבילה כוללת את הסקריפטים וקובצי ההשקה הנדרשים כדי להשיג ולהמחיש נתוני סריקת LiDAR.
לאחר השלמת התוכנה, חבר את ה-LiDAR למחשב שלך דרך יציאת ה-USB. ה-LiDAR יתחיל להסתובב, אבל הוא לא יפלוט שום לייזר אלא אם כן תפעיל את הפקודה הבאה שקוראת לקובץ הפעלה של ROS.
roslaunchrplidar_rosrplidar.לְהַשִׁיק
על ידי הפעלת פקודה זו, אתה יכול לראות את המרחקים המשתקפים שמתפרסמים בנושא שנקרא /scan.
רוסטופיק הֵד /scan
אתה אמור לראות ייצוג של נתוני סריקת הלייזר הלא מעובדים במסוף שלך:
כדי להמחיש את הנתונים האלה, פתח מסוף אחר, הקפד לא לסגור את הטרמינל האחר הפועל שאוחזר נתונים מסורק הלייזר, והפעל Rviz, כלי ההדמיה.
rosrun rviz rviz
לשנות את ה מסגרת קבועה ל לייזר, ולאחר מכן לחץ על לְהוֹסִיף לחצן בפינה השמאלית התחתונה של החלון ובחר LaserScan. לבסוף, הגדר את הנושא LaserScan ל /scan, ותוכל לראות את סריקת ה-LiDAR שלך בזמן אמת.
אם אתה מתקשה לקבל את הסריקה הראשונה שלך, זה יכול להיות בגלל שהמכשיר שלך אינו מורשה לתקשר נתונים באמצעות סדרתי. כדי לתקן זאת, הפעל את הפקודה הבאה ולאחר מכן המשך עם השלבים הקודמים.
sudo chmod 777 /dev/ttyUSB0
שלב 3: הפעל את המיפוי
לאחר שבדקת את ה-LiDAR שלך ואישרת שהוא פועל כראוי, השלב הבא הוא להתחיל לסרוק את אזור העניין שלך. לשם כך תזדקק לחבילה נוספת בשם Hector Slam (כאשר "Slam" מייצג "לוקליזציה ומיפוי סימולטני").
כמו קודם, בצע את הפקודה הבאה כדי להתקין את החבילה:
sudo apt-לקבל להתקין ros-noetic-hector-slam
לפני הפעלת הסריקה, שנה כמה פרמטרים כפי שמוצג להלן. חפש את tutorial.launch בחבילת hector_slam על ידי שימוש ב- roscd פקודה.
roscd hector_slam_launch
הפקודה ננו יאפשר לך לפתוח את הקובץ ולערוך אותו.
ננוהדרכה.לְהַשִׁיק
אתה עלול להיתקל הרשאת קובץ לינוקס שגיאה שניתן לפתור על ידי פקודה זו:
סודוchmod 777 הדרכה.לְהַשִׁיק
הנה דוגמה לביצוע:
השלב הבא הוא לשנות את השורות כפי שמוצג להלן:
השלב האחרון הוא ביצוע שורה זו.
roslaunchהקטור_סלאםהדרכה.לְהַשִׁיק
התחל להזיז את ה-LiDAR שלך באיטיות בחדר שלך לקבלת התוצאות הטובות ביותר מכיוון שיצירת מפות היא היעילה ביותר כאשר נעים לאט. אתה יכול להפעיל את המסלול שלך ולהתנסות בהגדרות סריקת הלייזר.
אתה יכול להשתמש ב-SLAM מקורה כדי לסרוק את כל הבית באמצעות מחשב נייד ו-LiDAR כפי שמוצג בסרטון למטה. ניתן לשפר את התוצאות על ידי שילוב חיישנים נוספים, ולאחר מכן שילוב הנתונים משני המקורות.
שלב 4: שמירה ועריכה של המפה שלך
הפעל את הפקודה הבאה לאחר שתסיים עם הסריקה כדי לשמור את המפה:
rostopic pub syscommand std_msgs/String "savegeotiff"
בתרחיש הזה, קסם תמונה ניתן להשתמש כדי להמיר את המפה לקובץ תמונה PNG, הפעל את שתי הפקודות הללו כדי להשלים את ההתקנה וההמרה.
sudo apt-לקבל התקן את imagemagick
להמירמפה סרוקה.pgmMyPngMap.png
קבל יותר שימוש מ-LiDAR
באמצעות LiDAR ומחשב, הצלחת לבצע סריקה דו-ממדית. אתה יכול לשפר את הסריקה שלך על ידי הוספת מצלמת עומק, כגון Kinect, ושילוב שני סוגי הנתונים שנאספו.
אותה טכנולוגיה עשויה להימצא בחלק מדגמי האייפון והאייפד המתקדמים, שבהם ה-LiDAR משולב במצלמה מודול בגב המכשיר, המאפשר פיתוח מפות תלת מימד, מדידת מרחק ומציאות מוגברת יישומים.