Моделирование датчиков в Gazebo (часть 2): различия между версиями

Материал из RoboWiki
Перейти к навигации Перейти к поиску
 
(не показано 15 промежуточных версий этого же участника)
Строка 4: Строка 4:
 
*'''приводов''', обеспечивающих движение робота
 
*'''приводов''', обеспечивающих движение робота
  
Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования стека навигации ROS, что позволит ему двигаться самостоятельно!
+
Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования [http://wiki.ros.org/navigation/Tutorials/RobotSetup стека навигации ROS], что позволит ему двигаться самостоятельно!
 +
 
 +
 
 +
== Обзор: моделирование датчиков ==
 +
 
 +
'''Цели''': 1. Добавить экстероцептивные датчики (окружающей среды) к нашей модели робота с дифференциальным приводом
 +
 
 +
2. Добавить алгоритмы, которые опираются на восприятие окружающей среды (автономная навигация !!).
 +
 
 +
'''Ссылки: '''
 +
* [http://gazebosim.org/tutorials?tut=ros_gzplugins Gazebo Plugin Library]
 +
* [https://www.generationrobots.com/blog/en/robotic-simulation-scenarios-with-gazebo-and-ros/ Gazebo Camera Tutorial]
 +
 
 +
'''Код репозитория (хранилища):'''
 +
git clone -b base_sensors https://github.com/richardw05/mybot_ws.git
 +
 
 +
[https://www.youtube.com/watch?v=EZ3MYf24c6Y Видео-мануал]
 +
 
 +
== Моделирование камеры ==
 +
 
 +
Необходимо добавить всего два блока кода.
 +
* mybot_description/urdf/mybot.xacro - Add the camera model
 +
* mybot_description/urdf/mybot.gazebo - Add the camera plugin
 +
Запустим модель в Gazebo.
 +
roslaunch mybot_gazebo mybot_world.launch
 +
 
 +
Запустим ноду, чтоб просматривать данные с камеры.
 +
rosrun image_view image_view image:=/mybot/camera1/image_raw
 +
 
 +
Вставим объект в симулятор Gazebo, чтобы убедиться, что он отображается на виде с камеры.
 +
Запустим rviz.
 +
roslaunch mybot_description mybot_rviz.launch
 +
Убедимся, что данные с камеры можно прочитать в rviz с топиком: /mybot/camera1/image_raw
 +
 
 +
== Моделирование лазера ==
 +
 
 +
Опять, необходимо добавить всего два блока кода:
 +
* mybot_description/urdf/mybot.xacro - Добавление модели лазера
 +
* mybot_description/urdf/mybot.gazebo - Добавление плагина лазера
 +
* mybot_description/meshes/hokuyo.dae (опционально) - Модель популярного лазера hokuyo
 +
 
 +
Запустите Gazebo и rviz для проверки.
 +
 
 +
Примечание: многие сообщают, что лазерное сканирование ничего не обнаруживает. В этом случае в mybot.gazebo рассмотрите возможность переключения libgazebo_ros_gpu_laser.so на libgazebo_ros_laser.so

Текущая версия на 16:17, 26 июля 2019

Робот, для эффективного взаимодействия с окружающей средой, нуждается в трех базовых блоках:

  • датчиков для получения информации об окружающей среде
  • планирования дальнейших действий
  • приводов, обеспечивающих движение робота

Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования стека навигации ROS, что позволит ему двигаться самостоятельно!


Обзор: моделирование датчиков

Цели: 1. Добавить экстероцептивные датчики (окружающей среды) к нашей модели робота с дифференциальным приводом

2. Добавить алгоритмы, которые опираются на восприятие окружающей среды (автономная навигация !!).

Ссылки:

Код репозитория (хранилища):

git clone -b base_sensors https://github.com/richardw05/mybot_ws.git

Видео-мануал

Моделирование камеры

Необходимо добавить всего два блока кода.

  • mybot_description/urdf/mybot.xacro - Add the camera model
  • mybot_description/urdf/mybot.gazebo - Add the camera plugin

Запустим модель в Gazebo.

roslaunch mybot_gazebo mybot_world.launch

Запустим ноду, чтоб просматривать данные с камеры.

rosrun image_view image_view image:=/mybot/camera1/image_raw

Вставим объект в симулятор Gazebo, чтобы убедиться, что он отображается на виде с камеры. Запустим rviz.

roslaunch mybot_description mybot_rviz.launch

Убедимся, что данные с камеры можно прочитать в rviz с топиком: /mybot/camera1/image_raw

Моделирование лазера

Опять, необходимо добавить всего два блока кода:

  • mybot_description/urdf/mybot.xacro - Добавление модели лазера
  • mybot_description/urdf/mybot.gazebo - Добавление плагина лазера
  • mybot_description/meshes/hokuyo.dae (опционально) - Модель популярного лазера hokuyo

Запустите Gazebo и rviz для проверки.

Примечание: многие сообщают, что лазерное сканирование ничего не обнаруживает. В этом случае в mybot.gazebo рассмотрите возможность переключения libgazebo_ros_gpu_laser.so на libgazebo_ros_laser.so