> For the complete documentation index, see [llms.txt](https://voltbro.gitbook.io/robot-sobaka-mors/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://voltbro.gitbook.io/robot-sobaka-mors/simulyaciya/ros-parametry.md).

# ROS-параметры

Файл параметров pybullet\_config.yaml располагается в папке config пакета mors\_sim.&#x20;

Обратите внимание, что если вы запускаете симуляцию через launch-файл bringup\_sim.launch из модуля mors, то вам нужно редактировать файл параметров в папке src/mors\_base/mors/config.

* frequency (по умолчанию: 240) - сколько раз в секунду производится вычисление модели

* urdf\_root (по умолчанию: "./urdf") - расположение папки с urdf-файлом робота

* world (по умолчанию: "empty") - окружение робота. Доступны следующие вариант: empty - пустая гладка поверхность,  gazebo\_racetrack\_day - гоночный трек с большим количеством препятствий, random1, random2 - пересеченная местность со случайными неровностями

* render (по умолчанию: True) - True - показывать графическое изображение робота, False - не показывать изображение и рассчитывать динамику в фоне.

* on\_rack (по умолчанию: True) - Если True, то робот жестко закреплен в воздухе. Удобно использовать для отладки отдельных частей алгоритма, например, кинематики ноги.

* foot\_contacts (по умолчанию: True) - Если True, то в отдельном топике будет публиковать информация о контакте ног с поверхностью

* camera (по умолчанию: False) - Если True, то включается имитация видеокамеры

* pointcloud\_enabled (по умолчанию: False) - Если True, то публикуется массив точек, полученных с камеры глубины

* camera\_frame (по умолчанию: "camera\_frame") - название звена камеры, прописанный в urdf-файле

* camera\_freq (по умолчанию: 20) - количество кадров в секунду

* pixel\_width (по умолчанию: 320) - ширина изображения камеры в пикселях

* pixel\_height (по умолчанию: 240) - высота изображения камеры в пикселях

* camera\_rgb\_topic (по умолчанию: "/camera/rgb") - название топика для rgb-камеры

* camera\_rgb\_info\_topic (по умолчанию: "/camera/rgb/camera\_info") - название топика для вывода информации об rgb-камере

* camera\_depth\_image\_topic (по умолчанию: "/camera/depth/image\_raw") - название топика для вывода изображения с камеры глубины

* camera\_depth\_points\_topic (по умолчанию: "/camera/depth/points") - название топика для вывода точек, получаемых с камеры глубины

* camera\_depth\_info\_topic (по умолчанию: "/camera/depth/camera\_info") - название топика для вывода информации о камере глубины

* lidar (по умолчанию: False) - Если True, то включается имитация лидара

* lidar\_render (по умолчанию: False) - Если True, то лучи лидара отрисовываются в окне симулятора

* lidar\_freq (по умолчанию: 20) - количество полных измерений лидара в секунду

* lidar\_angle\_min (по умолчанию: 2.2689) - угол, с которого лидар начинает измерения

* lidar\_angle\_max (по умолчанию: -2.2689) - угол, на котором лидар заканчивает измерения

* lidar\_time\_increment (по умолчанию: 0.0) - временно не используется

* lidar\_point\_num (по умолчанию: 360) - количество точек в одном полном измерении лидара

* lidar\_range\_min (по умолчанию: 0.25) - минимальное расстояние обнаружения объектов

* lidar\_range\_max (по умолчанию: 5) - максимальное расстояния обнаружения объектов

* lidar\_frame (по умолчанию: "scan\_frame") - название звена лидара, прописанный в urdf-файле

* lidar\_topic (по умолчанию: "/scan") - название топика, где публикуются данные с лидара

* lateral\_friction (по умолчанию: 1.0) - коэффициент сухого трения

* spinning\_friction (по умолчанию: 0.0065) - коэффициент трения качения

* accurate\_motor\_model\_enabled (по умолчанию: False) - если True, то в симуляторе запущена точная модель привода. Требует больше вычислительных ресурсов. Пока не реализована.

* simple\_motor\_model\_enabled (по умолчанию: False) - если True, то в симуляторе запущена простая модель привода. Требует меньше вычислительных ресурсов.

* torque\_control\_enabled (по умолчанию: False) - если True, то на приводы pybullet-симулятора подаются момент, если False, то подаются углы.

* external\_disturbance (по умолчанию: False) - если True, то включается имитация действия внешних сил. Силы действуют в случайном направлении.

* external\_disturbance\_value (по умолчанию: 2000) - значение внешней силы

* external\_disturbance\_duration  (по умолчанию: 0.001) - длительность силового воздействия

* external\_disturbance\_interval (по умолчанию: 2) - интервал, с которым действует сила

* ros\_whole\_body\_state (по умолчанию: False) - если True, то в отдельный топик публикуется полная информация о состоянии робота. Для того, чтобы полноценно использовать возможности топика, [установите плагин для rviz](https://github.com/eborghi10/whole_body_state_rviz_plugin).

* ros\_whole\_body\_state\_topic (по умолчанию: "wb\_state") - название топика для публикации состояния робота

* ros\_imu\_topic (по умолчанию: "imu/data") - имя топик для публикации данных с imu

* ros\_joint\_states\_topic (по умолчанию: "joint\_states") - имя топика для публикации состояния сочленений

* ros\_contact\_flags\_topic (по умолчанию: "contact\_flags") - имя топика для публикации контакта с поверхностью

* ros\_robot\_odom\_topic (по умолчанию: "robot\_odom") - топик для публикации одометрии

* lcm\_servo\_cmd\_channel (по умолчанию: "SERVO\_CMD") - имя lcm-канала для получения команды на приводы

* lcm\_servo\_state\_channel (по умолчанию: "SERVO\_STATE") - имя lcm-канала для публикации состояния углов в сочленениях&#x20;

* joint\_dir (по умолчанию: \[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]) - напрвление вращения сочленений. 1 - против часовой стрелке, -1 - по часовой стрелке&#x20;

* joint\_offset (по умолчанию: \[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]) - смещение нулевого угла в сочленениях
