El control de vuelo Pixhawk 4 establece conexión con el ROS de Up Board

El control de vuelo Pixhawk 4 establece conexión con el ROS de Up Board

El propósito de establecer una conexión entre Pixhawk 4 y ROS:
instalar la microcomputadora y la placa de control de vuelo Pixhawk 4 en el dron para lograr el vuelo autónomo del dron.

1. paquete de funciones mavros

El controlador de vuelo Pixhawk 4 necesita establecer contacto con la microcomputadora a través del paquete de funciones mavros en el ROS de la microcomputadora y luego comunicarse a través del protocolo mavlink. Por lo tanto, primero debemos instalar el sistema Ubuntu en la microcomputadora e instalar los paquetes de funciones ROS y mavros.

Aquí instalo mavros según la documentación de uso de XTDrone Yuque

  1. Depende de la instalación
sudo apt install ninja-build exiftool ninja-build protobuf-compiler libeigen3-dev genromfs xmlstarlet libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
pip2 install pandas jinja2 pyserial cerberus pyulog==0.7.0 numpy toml pyquaternion empy pyyaml 
pip3 install packaging numpy empy toml pyyaml jinja2 pyargparse

instalar mavros

sudo apt install ros-melodic-mavros ros-melodic-mavros-extras
wget https://gitee.com/robin_shaun/XTDrone/raw/master/sitl_config/mavros/install_geographiclib_datasets.sh
sudo chmod a+x ./install_geographiclib_datasets.sh
sudo ./install_geographiclib_datasets.sh 

2. Configuración del puerto serie de control de vuelo Pixhawk 4

Hay dos formas de conectarse a ROS

El primero: puerto serie USB y conexión TELEM2 de Pixhawk 4
  1. Encontré el diagrama de interfaz correspondiente al control de vuelo en el sitio web oficial de PX4. Solo hay 3 líneas conectadas entre TELEM2 y el puerto serie USB:
    2 (TX) → Puerto USB (RX)
    3 (RX) → Puerto USB (TX)
    6 (GND) → Puerto USB (GND)
    Insertar descripción de la imagen aquí
    Insertar descripción de la imagen aquí
  2. Después de conectar el puerto serie USB a la computadora, asegúrese de que Ubuntu y el puerto serie USB estén conectados, de lo contrario, puede ser un problema con la máquina virtual. Luego vaya a la ruta donde instaló ROS (la mía está en opt/ros/),
opt/ros/melodic/share/mavros/launch/px4.launch/

Ingrese px4.launch y modifique la siguiente línea de código

<arg name="fcu_url" default="/dev/ttyACM0:115200" />

ttyACM0:115200Cambiar attyUSB0:921600

  1. Encienda el controlador de vuelo Pixhawk 4, luego abra la terminal e ingrese
roslaunch mavros px4.launch

Insertar descripción de la imagen aquí
Según este informe de error, le damos permiso.

sudo chmod 777 /dev/ttyUSB0

entonces empieza de nuevo

roslaunch mavros px4.launch
Segundo método: conecte el puerto USB de Pixhawk 4 a la computadora

Insertar descripción de la imagen aquí
En este momento, debe agregar px4.launch en la ruta a continuación

opt/ros/melodic/share/mavros/launch/px4.launch/

cambie a

<arg name="fcu_url" default="/dev/ttyACM0:115200" />

Guardar y salir, abrir terminal, iniciar

roslaunch mavros px4.launch

3. Pruebe si el controlador de vuelo Pixhawk 4 está conectado a ROS

Abrir una nueva terminal

rostopic echo /mavros/local_position/pose

o

rostopic echo /mavros/local_position/velocity_body

Si la información se puede imprimir, la conexión es normal.

o

rqt_graph

Ver de otras maneras

Supongo que te gusta

Origin blog.csdn.net/m0_64730542/article/details/125037844
Recomendado
Clasificación