Sadržaj:

Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi  4b: 5 koraka
Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi 4b: 5 koraka

Video: Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi 4b: 5 koraka

Video: Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi  4b: 5 koraka
Video: ROS Kinetic on Raspbian| ROS Kinetic Installation on Raspberry Pi 4 2024, Srpanj
Anonim
Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi 4b
Instalirajte ROS Kinetic, TurtleBot3, Raspicam na Raspberry Pi 4b

TurtleBot3 Burger dolazi s Raspberry Pi 3 B/B+ i ne podržava novu (od 9./2019.) Raspberry Pi 4b. Slijedite donje korake kako bi TurtleBot3 radio na Raspberry Pi 4b, uključujući

  • izgradnja ROS Kinetic iz izvora na Raspberry Pi 4b Raspbian Buster
  • dodavanjem paketa specifičnih za TurtleBot3
  • dodajući raspicam-node u

Korak 1: Instalirajte Raspbian i konfigurirajte Raspberry Pi 4b

Instalirajte Raspbian i konfigurirajte Raspberry Pi 4b
Instalirajte Raspbian i konfigurirajte Raspberry Pi 4b

Preuzmite Raspbian sliku. Koristio sam Raspbian Buster od 2019. -07. -10.

Prenesite preuzetu Raspbian sliku na SD karticu (veličine najmanje 8 Gb). Spojite zaslon, tipkovnicu i miša na svoj Raspberry Pi 4b, pokrenite sustav i povežite se na WiFi. Proširite datotečni sustav da zauzme cijelu SD karticu i, po želji, pokretanjem omogućite SSH i VNC

sudo raspi-config

Korak 2: Preuzmite kinetičke izvore ROS -a

Preuzmite kinetičke izvore ROS -a
Preuzmite kinetičke izvore ROS -a

Upute u nastavku slijede službeni vodič za ROS, kao i DmitrijM8 koji se može uputiti.

Prijavite se na svoj Raspberry Pi 4b i izvršite ove naredbe za dodavanje spremišta paketa ROS -a, izradu alata i inicijalizaciju alata za ovisnost o ROS -u.

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-rosinstall build-essential cmake sudo rosdep init rosdep ažuriranje

Izradite radni prostor za izgradnju ROS Kinetic od izvora.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Preuzmite izvorni kod za paket "ros_comm", koji sadrži bitne module namijenjene izvođenju na ugrađenom robotskom računalu. Ovdje rosinstall_generator stvara popis spremišta izvornog koda za preuzimanje. wstool zatim nastavlja s preuzimanjem izvornog koda.

rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --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

Za pokretanje TurtleBot3 i raspicama bit će vam potrebni i ovi ROS paketi uz ros_comm: common_msgs, rosserial, image_common, image_transport_plugins i dijagnostika. Da biste dodali ove pakete, pokrenite ove naredbe.

rosinstall_generator common_msgs common_msgs rosserial image_common image_transport_plugins dijagnostika nodelet_core --rosdistro kinetic --deps --wet-only --tar> kinetic-extra-wet.rosinstall

wstool merge -t src kinetic -extra -wet.rosinstall wstool update -j8 -t src rosdep install --from -paths src --ignore -src --rosdistro kinetic -y

Kako se verzije ovisnosti mijenjaju s vremenom, može doći do pogrešaka poput "python-rosdistro-modules_0.7.5-1_all.deb (--unpack): pokušaj prepisivanja '/usr/lib/python2.7/dist-packages/rosdistro/_init_.py ', koji je također u paketu python-rosdistro 0.7.2-1 ". Riješite ove pogreške "pokušaja prepisivanja":

sudo dpkg --remove --force-all python-catkin-pkg python-catkin-pkg-moduli python-rosdistro python-rosdistro-moduli python-rospkg python-rospkg-moduli

// ili sudo apt ukloniti sudo apt --fix-broken install

Korak 3: Ručno ispravite pogreške pri sastavljanju ROS -a

Ručno ispravite pogreške pri sastavljanju ROS -a
Ručno ispravite pogreške pri sastavljanju ROS -a

Izgradnja ROS -a u ovom trenutku neće uspjeti s raznim pogreškama. Ispravimo te pogreške ručnim uređivanjem izvornog koda ROS -a.

Uredi

/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp linija 885

Zamijeniti

char* str = PyString_AsString (obj);

s

const char* str = PyString_AsString (obj);

Uredite datoteke u nastavku.

/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.cpp

Ukloni sva pojavljivanja

/tr1

i zamijeniti sve pojave

std:: tr1

s

pojačati

Uredite datoteke u nastavku.

/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_ckin /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. /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

Zamijenite sve pojave

boost:: posix_time:: milliseconds (…)

s

boost:: posix_time:: milliseconds (int (…))

Uredite datoteku ispod.

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

Zamjeni sve

logWarn

s

CONSOLE_BRIDGE_logUpozorenje

i

logError

s

CONSOLE_BRIDGE_logError

Korak 4: Izgradite ROS Kinetic

U ovom trenutku izgradnja bi trebala uspjeti.

cd ~/ros_catkin_ws

sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Release --install -space/opt/ros/kinetic

Dodajte u ~/.bashrc i također izvedite u ljusci:

izvor /opt/ros/kinetic/setup.bash

Korak 5: Izgradite TurtleBot3 i Raspicam pakete

Napravite TurtleBot3 i Raspicam pakete
Napravite TurtleBot3 i Raspicam pakete

Ove upute slijede ROBOTIS vodič.

mkdir -p ~/catkin_ws/src

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

Uredite ~/.bashrc i dodajte

izvor /home/pi/catkin_ws/devel/setup.bash

Sada, izvrši

cd ~/catkin_ws/src

git clone https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone 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/turtlebot3_example_catkin

Izgradnja bi trebala uspjeti.

Konfigurirajte Raspberry Pi 4b za prepoznavanje TurtleBot3 USB perifernih uređaja.

rosrun turtlebot3_bringup create_udev_rules

Pokrenite ifconfig i zapišite IP Raspbery Pi.

ifconfig

Uredite ~/.bashrc. Dodajte donje retke i izvedite ih u ljusci.

izvoz ROS_MASTER_URI = https://YOUR. ROS. MASTER. IP: 11311

izvoz ROS_HOSTNAME = VAŠA. MASINA. PI. IP

Sinkronizirajte vrijeme Raspberry Pi i računala:

sudo apt-get install ntpdate

sudo ntpdate ntp.ubuntu.com

U ovom trenutku vaše postavljanje bi trebalo biti dovršeno. Sada možete koristiti svoj Raspberry Pi 4b umjesto Raspberry Pi 3/3+ u TurtleBot3.

Preporučeni: