Моделирование датчиков в Gazebo (часть 2): различия между версиями
Editor (обсуждение | вклад) |
Editor (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 4: | Строка 4: | ||
*'''приводов''', обеспечивающих движение робота | *'''приводов''', обеспечивающих движение робота | ||
− | Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования стека навигации ROS, что позволит ему двигаться самостоятельно! | + | Мы покажем, как добавить датчики к нашей базовой модели робота с дифференциальным приводом. После оснащения датчиками наш робот будет достаточно оснащен для использования [http://wiki.ros.org/navigation/Tutorials/RobotSetup стека навигации ROS], что позволит ему двигаться самостоятельно! |
Строка 45: | Строка 45: | ||
* mybot_description/meshes/hokuyo.dae (опционально) - Модель популярного лазера hokuyo | * mybot_description/meshes/hokuyo.dae (опционально) - Модель популярного лазера hokuyo | ||
− | Запустите Gazebo и rviz для проверки | + | Запустите Gazebo и rviz для проверки. |
Примечание: многие сообщают, что лазерное сканирование ничего не обнаруживает. В этом случае в mybot.gazebo рассмотрите возможность переключения libgazebo_ros_gpu_laser.so на libgazebo_ros_laser.so | Примечание: многие сообщают, что лазерное сканирование ничего не обнаруживает. В этом случае в 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