Моделирование датчиков в Gazebo (часть 2): различия между версиями
Editor (обсуждение | вклад) |
Editor (обсуждение | вклад) |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 4: | Строка 4: | ||
*'''приводов''', обеспечивающих движение робота | *'''приводов''', обеспечивающих движение робота | ||
− | Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования стека навигации ROS, что позволит ему двигаться самостоятельно! | + | Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования [http://wiki.ros.org/navigation/Tutorials/RobotSetup стека навигации ROS], что позволит ему двигаться самостоятельно! |
Строка 16: | Строка 16: | ||
* [http://gazebosim.org/tutorials?tut=ros_gzplugins Gazebo Plugin Library] | * [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] | * [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