search

Поиск имен параметров в сети ROS

Описание

пример

pnames = search(ptree,searchstr) выполняет поиск в дереве параметров ptree и возвращает имена параметров, которые содержат указанную строку поиска searchstr.

[pnames,pvalues] = search(ptree,searchstr) также возвращает значения параметров.

Следующие типы данных ROS поддерживаются как значения параметров. Для каждого типа данных ROS также указан соответствующий тип данных MATLAB:

  • 32-битные целые числа - int32

  • Булеаны - logical

  • парный разряд - double

  • строки - строковый скаляр, string, или вектор символов, char

  • списки - массив ячеек

  • словари - структура

Примеры

свернуть все

Подключение к сети ROS. Укажите IP-адрес хозяина ROS.

rosinit('192.168.17.128')
Initializing global node /matlab_global_node_48144 with NodeURI http://192.168.17.1:54848/

Создайте дерево параметров.

ptree = rosparam;

Поиск имен параметров, которые содержат 'gravity'.

[pnames,pvalues] = search(ptree,'gravity')
pnames = 1×3 cell array
    {'/gazebo/gravity_x'}    {'/gazebo/gravity_y'}    {'/gazebo/gravity_z'}

pvalues = 3×1 cell array
    {[      0]}
    {[      0]}
    {[-9.8000]}

Входные параметры

свернуть все

Дерево параметров, заданное как ParameterTree указатель на объект. Создайте этот объект с помощью rosparam функция.

Строка поиска параметра ROS задается как строковый скаляр или вектор символов. The search функция возвращает все параметры, которые содержат этот вектор символов.

Выходные аргументы

свернуть все

Имена параметров, возвращенные как массив ячеек из векторов символов. Эти векторы символов совпадают с именами параметров в мастере ROS, которые содержат вектор поисковых символов.

Следующие типы данных ROS поддерживаются как значения параметров. Для каждого типа данных ROS также указан соответствующий тип данных MATLAB:

  • 32-битные целые числа - int32

  • Булеаны - logical

  • парный разряд - double

  • строки - строковый скаляр, string, или вектор символов, char

  • списки - массив ячеек

  • словари - структура

Base64-encoded двоичные данные и данные iso 8601 из ROS не поддерживаются.

Ограничения

Base64-encoded двоичные данные и данные iso8601 из ROS не поддерживаются.

См. также

|

Введенный в R2019b