תוכן עניינים:

התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi  4b: 5 שלבים
התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi 4b: 5 שלבים

וִידֵאוֹ: התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi 4b: 5 שלבים

וִידֵאוֹ: התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi  4b: 5 שלבים
וִידֵאוֹ: Hər hansı avtomobil sahibinin həyatını sadələşdirən Aliexpress-dən 20 faydalı avtomobil məhsulları 2024, דֵצֶמבֶּר
Anonim
התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi 4b
התקן את ROS Kinetic, TurtleBot3, Raspicam ב- Raspberry Pi 4b

TurtleBot3 Burger מגיע עם Raspberry Pi 3 B/B+ ואינו תומך ב- Raspberry Pi 4b החדש (נכון ל -9/2019). בצע את השלבים שלהלן כדי לגרום ל- TurtleBot3 לעבוד על Raspberry Pi 4b, כולל

  • בניית ROS Kinetic ממקורות ב- Raspberry Pi 4b Raspbian Buster
  • הוספת חבילות ספציפיות ל- TurtleBot3
  • הוספת צומת raspicam אל

שלב 1: התקן את Raspbian והגדר את Raspberry Pi 4b

התקן את Raspbian והגדר את Raspberry Pi 4b
התקן את Raspbian והגדר את Raspberry Pi 4b

הורד תמונה של Raspbian. השתמשתי ב- Raspbian Buster מתאריכים 2019-07-10.

צרוב את תמונת ה- Raspbian שהורדת לכרטיס SD (גודל 8Gb לפחות). חבר מסך, מקלדת ועכבר ל- Raspberry Pi 4b שלך, אתחל והתחבר ל- WiFi. הרחב את מערכת הקבצים כדי לכבוש את כל כרטיס ה- SD שלך, ואפשר, הפעל SSH ו- VNC על ידי הפעלה

sudo raspi-config

שלב 2: הורד מקורות קינטיים של ROS

הורד מקורות קינטיים של ROS
הורד מקורות קינטיים של ROS

ההוראות להלן עוקבות אחר ההדרכה הרשמית של ROS וכן הוראות DmitryM8.

היכנס ל- Raspberry Pi 4b שלך ובצע פקודות אלה להוספת מאגר חבילות ROS, בניית כלים ואתחול כלי התלות ב- ROS.

sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $ (lsb_release -sc) main"> /etc/apt/sources.list.d/ros-latest.list'

sudo apt-key adv-keyserver 'hkp: //keyserver.ubuntu.com: 80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt-get update sudo apt-get install -y python-rosdep python-rosinstall-generator python עדכון python-rosinstall build-essential cmake sudo rosdep init rosdep

צור מרחב עבודה לבניית ROS Kinetic מהמקור.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

הורד את קוד המקור לחבילת "ros_comm", המכיל מודולים חיוניים שנועדו לפעול על מחשב הלוח של הרובוט. כאן rosinstall_generator יוצר רשימה של מאגרי קוד המקור להורדה. לאחר מכן wstool ממשיך להוריד את קוד המקור.

rosinstall_generator ros_comm --rosdistro kinetic-צעדים-רטובים בלבד --tar> kinetic-ros_comm-wet.rosinstall

wstool init -j8 src kinetic-ros_comm-wet.rosinstall rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

כדי להפעיל את TurtleBot3 ו- raspicam תזדקקו לחבילות ROS אלה בנוסף ל- ros_comm: common_msgs, rosserial, image_common, image_transport_plugins ואבחון. כדי להוסיף חבילות אלה הפעל פקודות אלה.

rosinstall_generator common_msgs common_msgs image_rosserial image_common image_transport_plugins אבחון nodelet_core --rosdistro kinetic-צעדים-רטוב בלבד --tar> kinetic-extra-wet.rosinstall

wstool מיזוג -t src kinetic -extra -wet.rosinstall wstool עדכון -j8 -t src rosdep להתקין -מתוך -נתיבים src --ignore -src --rosdistro kinetic -y

ככל שגרסאות התלות משתנות עם הזמן, ייתכנו שגיאות כמו "python-rosdistro-modules_0.7.5-1_all.deb (--unpack): מנסה להחליף '/usr/lib/python2.7/dist-packages/rosdistro/_init_.py ', שגם הוא באריזה python-rosdistro 0.7.2-1 ". פתור את השגיאות האלה "מנסה להחליף":

סודו dpkg-הסר-כפה-כל פייתון-קטקין-פק"ג פייתון-קטקין-פק"ג-מודולים פיתון-רוזדיסטרו פייתון-רוזדיסטרו-מודולים פיתון-רוספק פייתון-רוספק-מודולים

// או sudo apt הסר sudo apt-תיקון שבור

שלב 3: תקן ידנית שגיאות אוסף ROS

תקן ידנית שגיאות אוסף ROS
תקן ידנית שגיאות אוסף ROS

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

לַעֲרוֹך

/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp שורה 885

החלף

char* str = PyString_AsString (obj);

עם

const char* str = PyString_AsString (obj);

ערוך קבצים למטה.

/home/pi/ros_catkin_ws/src/rospack/include/rospack/rospack.h /home/pi/ros_catkin_ws/src/rospack/src/rospack.cpp /home/pi/ros_catkin_ws/src/rospack/src/utils

הסר את כל המופעים של

/tr1

ולהחליף את כל המופעים של

std:: tr1

עם

לְהַגבִּיר

ערוך קבצים למטה.

/home/pi/ros_catkin_ws/src/actionlib/include/actionlib/client/simple_action_client.h /home/pi/ros_catkin_ws/src/actionlib/include/actionlib/destruction_guard.h/home/pi/ros_catkin_ws/sr /c /actionlib/server/simple_action_server_imp.h /home/pi/ros_catkin_ws/src/actionlib/src/connection_monitor.cpp /home/pi/ros_catkin_ws/src/actionlib/test/destruction_guard_test.cpp/home/pc/home/p/// /bondcpp/src/bond.cpp /home/pi/ros_catkin_ws/src/ros_comm/roscpp/include/ros/timer_manager.h /home/pi/ros_catkin_ws/src/ros/roslib/test/utest.cpp

החלף את כל המקרים של

boost:: posix_time:: אלפיות השנייה (…)

עם

boost:: posix_time:: מילי שניות (int (…))

ערוך את הקובץ למטה.

/home/pi/ros_catkin_ws/src/geometry2/tf2/src/buffer_core.cpp

החלף הכל

logWarn

עם

CONSOLE_BRIDGE_log הזהר

ו

logError

עם

CONSOLE_BRIDGE_log שגיאה

שלב 4: בנה ROS Kinetic

בשלב זה הבנייה אמורה להצליח.

cd ~/ros_catkin_ws

sudo./src/catkin/bin/catkin_make_isolated -install -DCMAKE_BUILD_TYPE = שחרור -install -space/opt/ros/kinetic

הוסף ל ~/.bashrc וגם בצע במעטפת שלך:

source /opt/ros/kinetic/setup.bash

שלב 5: בנה חבילות TurtleBot3 ו- Raspicam

בנה חבילות TurtleBot3 ו- Raspicam
בנה חבילות TurtleBot3 ו- Raspicam

הוראות אלה עוקבות אחר הדרכת ROBOTIS.

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/catkin_make מקור devel/setup.bash

ערוך ~/.bashrc והוסף

מקור /home/pi/catkin_ws/devel/setup.bash

עכשיו, בצע

cd ~/catkin_ws/src

שיבוט git https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git שיבוט git https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git שיבוט git https://github.com/ROBOTIS-GIT/turtlebot3. שיבוט git git https://github.com/UbiquityRobotics/raspicam_node.git cd ~/catkin_ws/src/turtlebot3 rm -r turtlebot3_description/turtlebot3_teleop/turtlebot3_navigation/turtlebot3_slam /_turtbotm_

הבנייה צריכה להצליח.

הגדר את Raspberry Pi 4b כדי לזהות ציוד היקפי USB של TurtleBot3.

rosrun turtlebot3_bringup create_udev_rules

הפעל את ifconfig ורשום את ה- IP של Raspbery Pi.

ifconfig

ערוך ~/.bashrc. הוסף את השורות למטה וגם בצע אותן במעטפת שלך.

ייצא ROS_MASTER_URI = https://YOUR. ROS. MASTER. IP: 11311

ייצא ROS_HOSTNAME = YOUR. RASPBERRY. PI. IP

סנכרן את Raspberry Pi ו- PC זמן:

sudo apt-get להתקין ntpdate

sudo ntpdate ntp.ubuntu.com

בשלב זה, ההתקנה שלך אמורה להסתיים. עכשיו אתה יכול להשתמש ב- Raspberry Pi 4b שלך במקום ב- Raspberry Pi 3/3+ ב- TurtleBot3 שלך.

מוּמלָץ: