Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03
TurtleBot3 Burger vem com Raspberry Pi 3 B / B + e não oferece suporte ao novo (em 9/2019) Raspberry Pi 4b. Siga as etapas abaixo para fazer TurtleBot3 funcionar no Raspberry Pi 4b, incluindo
- construindo ROS Kinetic a partir de fontes no Raspberry Pi 4b Raspbian Buster
- adicionar pacotes específicos do TurtleBot3
- adicionando nó de raspicam a
Etapa 1: instalar o Raspbian e configurar o Raspberry Pi 4b
Baixe uma imagem Raspbian. Usei o Raspbian Buster datado de 2019–07–10.
Grave a imagem Raspbian baixada em um cartão SD (pelo menos 8 Gb de tamanho). Conecte um monitor, teclado e mouse ao Raspberry Pi 4b, inicialize e conecte-se ao WiFi. Estenda o sistema de arquivos para ocupar todo o seu cartão SD e, opcionalmente, habilite SSH e VNC executando
sudo raspi-config
Etapa 2: Baixar fontes cinéticas de ROS
As instruções abaixo seguem o tutorial oficial do ROS, bem como as instruções do DmitryM8.
Faça login em seu Raspberry Pi 4b e execute esses comandos para adicionar o repositório de pacotes ROS, construir ferramentas e inicializar a ferramenta de dependência 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-wstool python-rosinstall build-essential cmake sudo rosdep atualização do init rosdep
Crie um espaço de trabalho para construir o ROS Kinetic a partir da fonte.
mkdir ~ / ros_catkin_ws
cd ~ / ros_catkin_ws
Baixe o código-fonte do pacote "ros_comm", que contém módulos essenciais destinados a serem executados no computador de bordo do robô. Aqui, rosinstall_generator cria uma lista de repositórios de código-fonte para download. O wstool então procede ao download do código-fonte.
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-path src --ignore-src --rosdistro kinetic -y
Para executar TurtleBot3 e raspicam, você precisará desses pacotes ROS além de ros_comm: common_msgs, rosserial, image_common, image_transport_plugins e diagnósticos. Para adicionar esses pacotes, execute esses comandos.
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-path src --ignore-src --rosdistro kinetic -y
Como as versões das dependências mudam com o tempo, pode haver erros como "python-rosdistro-modules_0.7.5-1_all.deb (--unpack): tentando sobrescrever '/usr/lib/python2.7/dist-packages/rosdistro/_init_.py ', que também está no pacote python-rosdistro 0.7.2-1 ". Resolva esses erros de "tentativa de substituição":
sudo dpkg --remove --force-all python-catkin-pkg python-catkin-pkg-modules python-rosdistro python-rosdistro-modules python-rospkg python-rospkg-modules
// ou sudo apt remove sudo apt --fix-broken install
Etapa 3: corrigir manualmente os erros de compilação de ROS
Construir ROS neste ponto irá falhar com vários erros. Vamos corrigir esses erros editando manualmente o código-fonte do ROS.
Editar
/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp linha 885
Substituir
char * str = PyString_AsString (obj);
com
const char * str = PyString_AsString (obj);
Edite os arquivos abaixo.
/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
Remova todas as ocorrências de
/ tr1
e substituir todas as ocorrências de
std:: tr1
com
impulsionar
Edite os arquivos abaixo.
/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/destruction_guard.h / home / pi / ros_catkin_ws / src / action 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/actionlibws/test/destruction_guard_testcore.cpp / home / pi / ros_catkin / srckin_ /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
Substitua todas as ocorrências de
boost:: posix_time:: milliseconds (…)
com
boost:: posix_time:: milliseconds (int (…))
Edite o arquivo abaixo.
/home/pi/ros_catkin_ws/src/geometry2/tf2/src/buffer_core.cpp
Substitua tudo
logWarn
com
CONSOLE_BRIDGE_logWarn
e
logError
com
CONSOLE_BRIDGE_logError
Etapa 4: construir ROS cinético
Neste ponto, a compilação deve ser bem-sucedida.
cd ~ / ros_catkin_ws
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Liberar --install-space / opt / ros / kinetic
Anexe a ~ /.bashrc e execute também em seu shell:
fonte /opt/ros/kinetic/setup.bash
Etapa 5: construir pacotes TurtleBot3 e Raspicam
Estas instruções seguem o tutorial ROBOTIS.
mkdir -p ~ / catkin_ws / src
cd ~ / catkin_ws / catkin_make fonte devel / setup.bash
Edite ~ /.bashrc e anexe
source /home/pi/catkin_ws/devel/setup.bash
Agora, execute
cd ~ / catkin_ws / src
clone git https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git clone git https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git clone 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 / turtlebot3_example / cd ~ / catkin_ws
A compilação deve ser bem-sucedida.
Configure o Raspberry Pi 4b para reconhecer os periféricos USB TurtleBot3.
rosrun turtlebot3_bringup create_udev_rules
Execute ifconfig e anote o IP de Raspbery Pi.
ifconfig
Edite ~ /.bashrc. Adicione as linhas abaixo e execute-as também em seu shell.
exportar ROS_MASTER_URI = https://YOUR. ROS. MASTER. IP: 11311
exportar ROS_HOSTNAME = YOUR. RASPBERRY. PI. IP
Sincronizar Raspberry Pi e hora do PC:
sudo apt-get install ntpdate
sudo ntpdate ntp.ubuntu.com
Neste ponto, sua configuração deve ser concluída. Agora você pode usar seu Raspberry Pi 4b em vez de Raspberry Pi 3/3 + em seu TurtleBot3.
Recomendado:
Instale o Windows 10 completo em um Raspberry Pi !: 5 etapas
Instale o Windows 10 completo em uma Raspberry Pi !: A Raspberry Pi é uma ótima placa para fazer muitas coisas. Existem muitos instructables sobre coisas como IOT, automação residencial, etc. Neste instructable, mostrarei como você pode executar o desktop do Windows completo no seu Raspberry PI 3B
Instale o Ubuntu 18.04.4 LTS na placa Raspberry Pi: 8 etapas
Instale o Ubuntu 18.04.4 LTS na placa Raspberry Pi: A equipe do Ubuntu lançou o sistema operacional Ubuntu 18.04.4 Long Term Support para computadores de placa única Raspberry Pi 2/3/4 ARM. Visão geral do resumoComo sabemos, Raspbian é baseado no Debian distro, que é o sistema operacional oficial do Raspber
Instale o Raspbian OS no Raspberry Pi 4: 24 etapas
Instale o Raspbian OS no Raspberry Pi 4: Este é o primeiro tutorial da série Raspberry Pi Preparação de conteúdo: Dr. Ninad Mehendale, Sr. Amit Dhiman Instalar o Raspbian OS no Raspberry Pi é uma das etapas mais básicas que se deve saber. Apresentamos um procedimento passo a passo simples para o
Instale o Homebridge no Raspberry Pi e no Windows: 9 etapas
Instale o Homebridge no Raspberry Pi e Windows: Este tutorial é para pessoas que desejam instalar o Homebridge no Raspberry Pi e Windows. Inicialmente, este tutorial foi escrito em português aqui no Brasil. Eu tentei o meu melhor para escrever em inglês. Então me perdoe por alguns erros que podem estar escritos
Instale RockBox em um iPod (etapas fáceis): 6 etapas
Instale RockBox em um IPod (etapas fáceis): Este instrutível vou mostrar a você como instalar RockBox, um sistema operacional de código aberto para iPod! Primeiras coisas primeiro: Instalar RockBox irá anular sua garantia. Além disso, não sou responsável por qualquer dano e / ou perda de dados causado pela instalação do RockBo