This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
courses:ros:class7 [2016/10/24 12:51] anton.filatov |
courses:ros:class7 [2022/12/10 09:08] (current) |
||
---|---|---|---|
Line 4: | Line 4: | ||
Например, один из самых простых объектов в Gazebo - это робот "пионер" [[http://www.lar.deis.unibo.it/equipments/p2dx/index.html| Pioneer 2 DX]]. Так он выглядит в симуляторе Gaztbo. | Например, один из самых простых объектов в Gazebo - это робот "пионер" [[http://www.lar.deis.unibo.it/equipments/p2dx/index.html| Pioneer 2 DX]]. Так он выглядит в симуляторе Gaztbo. | ||
- | {{:start:ros:снимок_экрана_от_2016-10-24_14-08-35.png|Pioneer 2 dx in Gazebo}} | + | {{courses:ros:снимок_экрана_от_2016-10-24_14-08-35.png|Pioneer 2 dx in Gazebo}} |
Основная цель симулятора - демострировать результат работы программы в виде, удобном для восприятия. Для описания внешнего вида объектов используется язык разметки xml. Некоторые объекты уже описаны и могут быть скачаны с официального сайта gazebo. Однако, объекты можно создавать самостоятельно из простых фигур, типа кубов, сфер и прочих. | Основная цель симулятора - демострировать результат работы программы в виде, удобном для восприятия. Для описания внешнего вида объектов используется язык разметки xml. Некоторые объекты уже описаны и могут быть скачаны с официального сайта gazebo. Однако, объекты можно создавать самостоятельно из простых фигур, типа кубов, сфер и прочих. | ||
Line 26: | Line 26: | ||
roslaunch gazebo_ros empty_world.launch | roslaunch gazebo_ros empty_world.launch | ||
- | Теперь можно увидеть, что gazebo запущена как самостоятельная нода{{:start:ros:снимок_экрана_от_2016-10-24_15-02-35.png|граф нод}} | + | Теперь можно увидеть, что gazebo запущена как самостоятельная нода{{courses:ros:снимок_экрана_от_2016-10-24_15-02-35.png|граф нод}} |
Объект в Gazebo можно создать "вручную", но это не удобно с точки зрения практического использования, поэтому существует сервис, позволяющий создать объект. | Объект в Gazebo можно создать "вручную", но это не удобно с точки зрения практического использования, поэтому существует сервис, позволяющий создать объект. | ||
Line 89: | Line 89: | ||
* twist -- относительное изменение положения | * twist -- относительное изменение положения | ||
Следует отметить, что, приняв сообщение с непустыми значениями pose и twist, робот будет использовать только положение pose; twist используется только как справочная информация, например, для лога. | Следует отметить, что, приняв сообщение с непустыми значениями pose и twist, робот будет использовать только положение pose; twist используется только как справочная информация, например, для лога. | ||
+ | |||
+ | Для того, чтобы представленный выше код заработал, необходимо в CMakeLists.txt добавить зависимость от gazebo: | ||
+ | |||
+ | find_package(catkin REQUIRED COMPONENTS | ||
+ | gazebo_ros | ||
+ | ) | ||
+ | | ||
+ | catkin_package( | ||
+ | DEPENDS gazebo_ros | ||
+ | ) | ||
+ | | ||
+ | include_directories( | ||
+ | ${catkin_INCLUDE_DIRS} | ||
+ | ${GAZEBO_INCLUDE_DIRS} | ||
+ | ${SDFormat_INCLUDE_DIRS} | ||
+ | ) | ||
+ | | ||
+ | В package.xml также необходимо указать build depend и run depend от gazebo_ros. | ||
+ |