Coder Social home page Coder Social logo

rtc_prak's Introduction

ROS пакет для работы с лазерным дальномером ls2d

Подключение датчика

Подлючение сенсора осуществляется в соответсвии с его документацией (раздел "ссылки", Техническое описание LS2D). Основные пункты, на которые стоит обратить внимание:

  • Мощность датчика
  • Поляронсь подлкючения
  • Параметры IPv4

Запуск пакета

Запуск в контейнере docker

  1. Установите docker при необходимости. Склонируйте репозиторий и перейдите в его основную папку:
git clone https://github.com/I1sh/RTC_PRAK.git
  1. Для работы с docker-окружением доступны следующие скрипты:
docker/build_docker.sh - сборка контейнера
docker/run_docker.sh - запуск контейнера
docker/into_docker.sh - запуск bash в контейнерере

В случае, если на вашем ПК используется видеокарта от nvidia, то скрипты сборки и запуска следует исполнять с параметром -n или --nvidia.

Соответственно, для начала работы соберите и запустите контейнер выполнив последовательно следующие команды:

bash <path-to-this-rep>/docker/build_docker.sh
bash <path-to-this-rep>/docker/run_docker.sh
  1. При первом входе в контейнер требуется собрать пакеты в директории catkin_ws, для этого внутри контейнера выполните:
cd /catkin_ws
catkin_make 

Запуск вне контейнера

  1. Склонируйте репозиторий и перенесите пакет в ваше окружение:
git clone https://github.com/I1sh/RTC_PRAK.git
mv RTC_PRAK/catkin_ws/src/ls2d <path-to-your-ws/src>
  1. Установите библиотеку boost:
sudo apt-get install libboost-all-dev
  1. Перейдите в ваш воркспейс и соберите пакет:
rosdep install --from-paths src --ignore-src -r -y
catkin_make 
source devel/setup.bash

LS2D ros package

Пакет содержит ноду ls2d_init_node, которая подлючается к датчику и публикует данные с датчика в топик point_cloud, тип сообщения sensor_msgs/PointCloud2.msg. Данные об иницализации датчика публикуются в топик sensor_info, тип сообщения ls2d/Sensor_info.msg.

Для запуска всех нижеописаных пакетов одной командой можно воспользоваться launch файлом:

roslaunch ls2d ls2d.launch 

  1. Для запуска визуализации данных в rviz нужно оперделить tf для фрейма датчика /sensor_base_link. При запуске датчика отдельно можно воспользоваться командой:
rosrun tf static_transform_publisher 0 0 0 0 0 0 map sensor_base_link 50

В общем случае же необходимо определить static_tf между роботом и датчиком.

  1. Для преобразования получаемого с датчика облака точек к сообщению типа sensor_msgs/LaserScan.msg нужно запусить лаунч файл point_cloud_to_lazerscan.launch из этого пакета. При необходимости в нём можно задать имя фрейма сенсора, параметры сканирования (высоту, ширину, угол сканирования), названия топиков для входого облака точек (по умолчанию /point_cloud) и выходного сообщения laserscan(по умолчанию /scan_msgs).
roslaunch ls2d point_cloud_to_lazerscan.launch
  1. В rviz необходимо добавить визуализацию LaserScan и указать имя топика из которого чиать сообщеня соответсвующего типа.

License

License: APACHE LICENSE, VERSION 2.0.

**Author: Ivan Shevtsov [email protected] **

Пакет тестировался и разробатывался под [ROS] Noetic и ubuntu 20.04.

rtc_prak's People

Contributors

i1sh avatar i1vanshevtsov avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.