Usando o Helios de 32 linhas do Sagitar Radar e o algoritmo fast-LIO2 para construir um mapa (1)

1. Configurar dados lidar

Link de referência Ubuntu18.04 Instale o driver mais recente do Sagitar Juchuang RSLidar_SDK para coletar dados da nuvem de pontos laser no formato XYZIRT - SLAM não é um problema pequeno
Há também instruções para baixar o arquivo do driver
Passo 1: Baixe o rslidar_sdk e salve-o no catkin_ws/srccaminho workspace para
download Endereço: https://github.com/RoboSense-LiDAR/rslidar_sdk/releases/download/v1.3.0/rslidar_sdk.tar.gz
insira a descrição da imagem aqui
Baixe o arquivo rslidar_sdk.tar.gz no círculo vermelho, pois o conteúdo deste arquivo está completo, não é necessário Para baixar o código do submódulo rs_driver, faça o download do pacote compactado rslidar_sdk.tar.gz, não baixe o código fonte. Os usuários também precisam baixar o código do rs_driver e colocá-lo nele.
Segundo pano : adicione dependência
1.Yaml (obrigatório)

sudo apt-get update
sudo apt-get install -y libyaml-cpp-dev

2.Pcap (obrigatório)

sudo apt-get install -y  libpcap-dev

3.Protobuf (opcional)

// 下载 protoBuf:
$ git clone https://github.com/protocolbuffers/protobuf.git
//  安装依赖库
$ sudo apt-get install autoconf  automake  libtool curl make  g++  unzip libffi-dev -y
// 进入目录
$ cd protobuf/ 
// 自动生成configure配置文件:
$ ./autogen.sh 
// 配置环境:
$ ./configure
// 编译源代码(要有耐心!):
$ make 
// 安装
$ sudo make install
// 刷新共享库 (很重要的一步啊)
$ sudo ldconfig 
// 成功后需要使用命令测试
$ protoc -h 

Se não estiver instalado, abra o arquivo CMakeLists.txt e modifique-o, remova ou comente o código usando Protobuf e adicione um sinal # antes de cada linha

#Protobuf#
find_package(Protobuf QUIET)
find_program(PROTOC protoc)
if(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)
  message(=============================================================)
  message("-- Protobuf Found, Protobuf Support is turned On!")
  message(=============================================================)
  add_definitions(-DPROTO_FOUND)

  include_directories(${
    
    PROTOBUF_INCLUDE_DIRS})
  SET(PROTO_FILE_PATH ${
    
    PROJECT_SOURCE_DIR}/src/msg/proto_msg)
  file(GLOB PROTOBUF_FILELIST ${
    
    PROTO_FILE_PATH}/*.proto)
  foreach(proto_file ${PROTOBUF_FILELIST})
    message(STATUS "COMPILING ${proto_file} USING ${PROTOBUF_PROTOC_EXECUTABLE}")
    execute_process(COMMAND ${PROTOBUF_PROTOC_EXECUTABLE}
                    --proto_path=${PROTO_FILE_PATH}
                    --cpp_out=${PROTO_FILE_PATH}
                    ${proto_file})
  endforeach()
else(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)
  message(=============================================================)
  message("-- Protobuf Not Found, Protobuf Support is turned Off!")
  message(=============================================================)
endif(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)

Etapa 3 : configurar parâmetros
1. Abra o arquivo CMakeLists.txt no projeto e modifique o conteúdo a seguir

set(COMPILE_METHOD ORIGINAL)改为set(COMPILE_METHOD CATKIN)
set(POINT_TYPE XYZI)改为set(POINT_TYPE XYZIRT) #相较于XYZI,XYZIRT还有时间戳,能满足Fast-lio2时间补偿需求

2. Renomeie o arquivo package_ros1.xml no diretório do projeto rslidar_sdk para package.xml.
3. Modifique os parâmetros de config.yaml.
Consulte o caminho do pacote do driver de download rslidar_sdk/doc/intro/parameter_intro_cn.md.
  Há apenas um arquivo de parâmetro config.yaml neste projeto, que está armazenado na pasta rslidar_sdk/config . Abra este arquivo e encontre as seguintes seções:

lidar:
- driver:
//此处修改激光雷达型号
lidar_type: RS128    #LiDAR type - RS16, RS32, RSBP, RS128, RS128_40, RS80, RSM1, RSHELIOS
frame_id: /rslidar           
msop_port: 6699             
difop_port: 7788  

Altere RS128 para RSHELIOS, correspondendo ao seu próprio modelo de sensor

  msg_source: 1    #1: packet message comes from online Lidar

O número é 1, que não precisa ser alterado, indicando que o teste lidar está conectado online.

Etapa 4: compilar, testar e publicar dados

catkin_make
source devel/setup.bash

Execute o comando para exibir a nuvem de pontos do formato original
do Sagitar roslaunch start.launch
Etapa 5: Converter dados do radar Sagitar para o formato de nuvem
de pontos do radar Velodyne Baixe o pacote de funções de formato de dados de conversão
https://github.com/HViktorTsoi/rs_to_velodyne.git
também coloque no catkin_ws/srccaminho e adicione a pasta de lançamento no caminho catkin_ws/src/rs_to_velodyne/, na pasta de lançamento, adicione o arquivo velodyne.launch, o conteúdo é o seguinte

 <launch>
  <node pkg="rs_to_velodyne" name="rs_to_velodyne" type="rs_to_velodyne"  args="XYZIRT XYZIRT"   output="screen">
  </node>
</launch>

Muitos parâmetros de configuração do blog args="XYZIRT"estão incorretos e o código-fonte requer dois parâmetros. Caso contrário, um erro é relatado e o programa é encerrado

2. Configure os dados da IMU

instalação do xsensIMU
https://blog.csdn.net/cxz932652580/article/details/109961710

3. Desenho

Usando o Helios de 32 linhas do Sagitar Radar e o algoritmo fast-LIO2 para construir um mapa (3)

Acho que você gosta

Origin blog.csdn.net/weixin_44023934/article/details/123845089
Recomendado
Clasificación