Sommario:
- Passaggio 1: installa Raspbian e configura Raspberry Pi 4b
- Passaggio 2: scarica le fonti cinetiche ROS
- Passaggio 3: correggi manualmente gli errori di compilazione del ROS
- Passaggio 4: crea ROS Kinetic
- Passaggio 5: crea i pacchetti TurtleBot3 e Raspicam
Video: Installa ROS Kinetic, TurtleBot3, Raspicam su Raspberry Pi 4b: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
TurtleBot3 Burger viene fornito con Raspberry Pi 3 B/B+ e non supporta il nuovo Raspberry Pi 4b (dal 9/2019). Segui i passaggi seguenti per far funzionare TurtleBot3 su Raspberry Pi 4b, incluso
- costruire ROS Kinetic da sorgenti su Raspberry Pi 4b Raspbian Buster
- aggiunta di pacchetti specifici per TurtleBot3
- aggiungendo raspicam-nodo a
Passaggio 1: installa Raspbian e configura Raspberry Pi 4b
Scarica un'immagine Raspbian. Ho usato Raspbian Buster datato 2019–07–10.
Masterizza l'immagine Raspbian scaricata su una scheda SD (di almeno 8 Gb di dimensione). Collega un display, una tastiera e un mouse al tuo Raspberry Pi 4b, avvia e connettiti al WiFi. Estendi il file system per occupare l'intera scheda SD e, facoltativamente, abilita SSH e VNC eseguendo
sudo raspi-config
Passaggio 2: scarica le fonti cinetiche ROS
Le istruzioni seguenti seguono il tutorial ROS ufficiale e l'istruzione DmitryM8.
Accedi al tuo Raspberry Pi 4b ed esegui questi comandi per aggiungere il repository del pacchetto ROS, creare strumenti e inizializzare lo strumento di dipendenza 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-roinstall-wstool python python-rosinstall build-essential cmake sudo rosdep init rosdep update
Crea uno spazio di lavoro per creare ROS Kinetic dal sorgente.
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Scarica il codice sorgente per il pacchetto "ros_comm", che contiene moduli essenziali destinati a funzionare sul computer di bordo del robot. Qui rosinstall_generator crea un elenco di repository di codice sorgente da scaricare. wstool procede quindi al download del codice sorgente.
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
Per eseguire TurtleBot3 e raspicam avrai bisogno di questi pacchetti ROS oltre a ros_comm: common_msgs, rosserial, image_common, image_transport_plugins e diagnostics. Per aggiungere questi pacchetti esegui questi comandi.
rosinstall_generator common_msgs common_msgs rosserial image_common image_transport_plugins diagnostics 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
Poiché le versioni delle dipendenze cambiano nel tempo, potrebbero esserci errori come "python-rosdistro-modules_0.7.5-1_all.deb (--unpack): tentativo di sovrascrivere '/usr/lib/python2.7/dist-packages/rosdistro/_init_.py', che è anche nel pacchetto python-rosdistro 0.7.2-1". Risolvi questi errori di "tentativo di sovrascrittura":
sudo dpkg --remove --force-all python-catkin-pkg python-catkin-pkg-modules python-rosdistro python-rosdistro-modules python-rospkg python-rospkg-modules
// o sudo apt remove sudo apt --fix-broken install
Passaggio 3: correggi manualmente gli errori di compilazione del ROS
La creazione di ROS a questo punto fallirà con vari errori. Risolviamo questi errori modificando manualmente il codice sorgente di ROS.
Modificare
/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp riga 885
Sostituire
char* str = PyString_AsString(obj);
insieme a
const char* str = PyString_AsString(obj);
Modifica i file di seguito.
/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
Rimuovi tutte le occorrenze di
/tr1
e sostituire tutte le occorrenze di
std::tr1
insieme a
Incremento
Modifica i file di seguito.
/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/src/actionlib/include /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/ros_catkin_ws/src/bond_core /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
Sostituisci tutte le occorrenze di
boost::posix_time::millisecondi(…)
insieme a
boost::posix_time::millisecondi(int(…))
Modifica il file qui sotto.
/home/pi/ros_catkin_ws/src/geometry2/tf2/src/buffer_core.cpp
Sostituisci tutto
logAvverti
insieme a
CONSOLE_BRIDGE_logAvviso
e
logError
insieme a
CONSOLE_BRIDGE_logError
Passaggio 4: crea ROS Kinetic
A questo punto la build dovrebbe avere successo.
cd ~/ros_catkin_ws
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic
Aggiungi a ~/.bashrc ed esegui anche nella tua shell:
source /opt/ros/kinetic/setup.bash
Passaggio 5: crea i pacchetti TurtleBot3 e Raspicam
Queste istruzioni seguono il tutorial ROBOTIS.
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/ catkin_make source devel/setup.bash
Modifica ~/.bashrc e aggiungi
source /home/pi/catkin_ws/devel/setup.bash
Ora, esegui
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/ cd ~/catkin_make_ws && catkin
La build dovrebbe avere successo.
Configura Raspberry Pi 4b per riconoscere le periferiche USB TurtleBot3.
rosrun turtlebot3_bringup create_udev_rules
Esegui ifconfig e annota l'IP di Raspbery Pi.
ifconfig
Modifica ~/.bashrc. Aggiungi le righe sottostanti ed eseguile anche nella tua shell.
esporta ROS_MASTER_URI=https://YOUR. ROS. MASTER. IP:11311
esporta ROS_HOSTNAME=YOUR. RASPBERRY. PI. IP
Sincronizzare Raspberry Pi e l'ora del PC:
sudo apt-get install ntpdate
sudo ntpdate ntp.ubuntu.com
A questo punto, la configurazione dovrebbe essere completata. Ora puoi usare il tuo Raspberry Pi 4b invece di Raspberry Pi 3/3+ nel tuo TurtleBot3.
Consigliato:
Installa Windows 10 completo su un Raspberry Pi!: 5 passaggi
Installa Windows 10 completo su un Raspberry Pi!: Il Raspberry Pi è un'ottima scheda per fare molte cose. Ci sono molte istruzioni su cose come IOT, Domotica, ecc. In questa istruzione, ti mostrerò come eseguire il desktop completo di Windows sul tuo Raspberry PI 3B
Installa e configura Shinken Network Monitor su Raspberry Pi: 14 passaggi
Installa e configura Shinken Network Monitor su Raspberry Pi: NOTA: Shinken è stato aggiornato l'ultima volta in MAR2016 a una versione stabile di 2.4.3. Così, diversi anni fa sono passato ad altri modi di monitorare la rete domestica. Inoltre, php5 non sembra essere disponibile. Quindi, per favore non usare questo istruibile! Installa un
Installa Ubuntu 18.04.4 LTS sulla tua scheda Raspberry Pi: 8 passaggi
Installa Ubuntu 18.04.4 LTS sulla tua scheda Raspberry Pi: Il team Ubuntu ha rilasciato il sistema operativo Ubuntu 18.04.4 Supporto a lungo termine per computer a scheda singola Raspberry Pi 2/3/4 ARM. Breve panoramicaCome sappiamo, Raspbian è basato su Debian distro, che è il sistema operativo ufficiale per il Raspber
Installa il sistema operativo Raspbian su Raspberry Pi 4: 24 passaggi
Installa il sistema operativo Raspbian su Raspberry Pi 4: questo è il primo tutorial della serie Raspberry Pi Preparazione del contenuto: Dr. Ninad Mehendale, Mr. Amit Dhiman L'installazione del sistema operativo Raspbian in Raspberry Pi è uno dei passaggi più basilari che dovresti conoscere. Vi presentiamo una semplice procedura passo passo per il
Installa RockBox su un iPod (semplici passaggi): 6 passaggi
Installa RockBox su un iPod (semplici passaggi): in questa guida ti mostrerò come installare RockBox, un sistema operativo open source per iPod! Per prima cosa: l'installazione di RockBox annullerà la garanzia. Inoltre non sono responsabile per eventuali danni e/o perdite di dati causati dall'installazione di RockBo