ROS Kinetic, TurtleBot3, Raspicam бағдарламасын Raspberry Pi  4b: 5 қадамына орнатыңыз
ROS Kinetic, TurtleBot3, Raspicam бағдарламасын Raspberry Pi 4b: 5 қадамына орнатыңыз
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 жаңа нұсқасын қолдамайды. TurtleBot3 Raspberry Pi 4b -де жұмыс жасау үшін төмендегі қадамдарды орындаңыз

  • Raspberry Pi 4b Raspbian Buster дереккөздерінен ROS Kinetic құру
  • TurtleBot3 арнайы пакеттерін қосу
  • raspicam түйінін қосу

1 -қадам: Raspbian орнатыңыз және Raspberry Pi 4b конфигурациялаңыз

Raspbian орнатыңыз және Raspberry Pi 4b конфигурациялаңыз
Raspbian орнатыңыз және Raspberry Pi 4b конфигурациялаңыз

Raspbian кескінін жүктеп алыңыз. Мен Raspbian Buster -ді 2019-07-10 аралығында қолдандым.

Жүктелген Raspbian кескінін SD картасына жазыңыз (көлемі кемінде 8 Гб). Дисплей, пернетақта мен тінтуірді 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-python-rosinstall 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 кинетикалық --deps-тек дымқыл --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_comm: common_msgs, rosserial, image_common, image_transport_plugins және диагностикадан басқа осы ROS пакеттері қажет болады. Бұл пакеттерді қосу үшін осы пәрмендерді орындаңыз.

rosinstall_generator common_msgs common_msgs rosserial image_common image_transport_plugins диагностика nodelet_core --rosdistro кинетикалық --deps-ылғалды-тар> кинетикалық-қосымша-ылғалды.rosinstall

wstool merge -t src kinetic -extra -wet.rosinstall wstool update -j8 -t src rosdep install --from -paths 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 «пакетінде. Бұл «қайта жазуға тырысатын» қателерді шешіңіз:

sudo dpkg --remove-forth-all python-catkin-pkg python-catkin-pkg-модульдері python-rosdistro python-rosdistro-модульдері python-rospkg python-rospkg-модульдерін

// немесе sudo apt remove sudo apt --fix-broken install

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/src/

Барлық көріністерін алып тастаңыз

/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_catcin_ws/sr /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/pi/bc/bc/bc /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 файлына қосыңыз және қабығыңызда орындаңыз:

көзі /opt/ros/kinetic/setup.bash

5 -қадам: TurtleBot3 және Raspicam пакеттерін жасаңыз

TurtleBot3 және Raspicam пакеттерін жасаңыз
TurtleBot3 және Raspicam пакеттерін жасаңыз

Бұл нұсқаулар ROBOTIS оқулығына сәйкес келеді.

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/catkin_make source devel/setup.bash

~/. Bashrc өңдеңіз және қосыңыз

көзі /home/pi/catkin_ws/devel/setup.bash

Енді, орындаңыз

cd ~/catkin_ws/src

git clone 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 clone https://github.com/UbiquityRobotics/raspicam_node.git cd ~/catkin_ws/src/turtlebot3 rm -r turtlebot3_description/turtlebot3_teleop/turtlebot3_navigation/turtlebot3_slam/turtlebot/catkin_cample_cample

Құрылыс табысты болуы керек.

TurtleBot3 USB перифериялық құрылғыларын тану үшін Raspberry Pi 4b конфигурациялаңыз.

rosrun turtlebot3_bringup create_udev_rules

Ifconfig іске қосыңыз және Raspbery Pi IP мекенжайын жазыңыз.

ifconfig

~/. Bashrc өңдеңіз. Төмендегі жолдарды қосыңыз және оларды қабығыңызда орындаңыз.

экспорттау ROS_MASTER_URI = https://YOUR. ROS. MASTER. IP: 11311

экспорттау ROS_HOSTNAME = YOUR. RASPBERRY. PI. IP

Raspberry Pi мен компьютер уақытын синхрондаңыз:

sudo apt-get install ntpdate

sudo ntpdate ntp.ubuntu.com

Бұл кезде сіздің баптауыңыз аяқталуы керек. Енді сіз TurtleBot3 -те Raspberry Pi 3/3+ орнына Raspberry Pi 4b қолдана аласыз.

Ұсынылған: