7.4 Динамическая перенастройка из командной строки

Кроме того, можно изменить значение динамического параметра из командной строки, как подробно описано в Ros Wiki. Основная команда-это dynapharm, которая принимает ряд следующих команд:

  • dynparam list : список текущих запущенных узлов, которые динамически настраиваются

  • dynparam get : получить конфигурацию узла

  • dynparam set : настройка узла

  • dynparam set_from_parameters : копирование конфигурации с параметрами сервера

  • dynparam dump : конфигурация дампа в файл

  • dynparam load : загрузка конфигурации из файла

Для выполнения любой из этих команд используйте следующий синтаксис:

$ rosrun dynamic_reconfigure dynparam COMMAND

Например, чтобы установить разрешение глубинной камеры Kinect или Xtion Pro равным 640x480 (параметр image_mode=2) и предположить, что узел камеры работает как /camera / driver, вы должны использовать команду:

$ rosrun dynamic_reconfigure dynparam set /camera/driver image_mode 2

И точно так же установить режим глубины:

$ rosrun dynamic_reconfigure dynparam set /camera/driver depth_mode 2

Команды dump и load полезны, если вы потратили некоторое время на настройку набора параметров с помощью rqt_reconfigure или другого метода и хотите сохранить эти изменения в файл, который можно загрузить позже. Чтобы сохранить текущую конфигурацию узла с именем my_node в файл с именем my_node.yaml, используйте команду:

$ rosrun dynamic_reconfigure dynparam dump /my_node my_node.yaml

Затем, чтобы загрузить эту конфигурацию позже, выполните команду:

$ rosrun dynamic_reconfigure dynparam load /my_node my_node.yaml

Вы также можете загрузить ранее сохраненные параметры с помощью такого файла запуска:

<launch>
    <node pkg="dynamic_reconfigure" name="dynaparam"
type="dynaparam"
command="load" file="$(find my_package)/my_node.yaml" />
</launch>

Строка <node> выше будет загружать динамические параметры из файла my_node.yaml находится в пакете my_package. Конечно, вы можете запустить другие узлы в том же файле запуска.

Last updated