set

Установите значение параметра ROS или добавьте новый параметр

Описание

пример

set(ptree,paramname,pvalue) присваивает значение pvalue к параметру с именем paramname. Этот параметр отправляется в дерево параметров ptree.

set(ptree,namespace,pvalue) присваивает несколько значений в качестве словаря в pvalue под заданным namespace.

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

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

  • Логический - logical

  • double - double

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

  • список - массив ячеек (cell)

  • словарь - структура (struct)

Примеры

свернуть все

Подключение к сети ROS.

rosinit
Launching ROS Core...
Done in 0.70515 seconds.
Initializing ROS master on http://192.168.0.10:58256.
Initializing global node /matlab_global_node_43868 with NodeURI http://bat6315glnxa64:36185/

Создайте дерево параметров ROS. Установите двойной параметр. Получите параметр, чтобы убедиться, что он был установлен.

ptree = rosparam;
set(ptree,'DoubleParam',1.0)
get(ptree,'DoubleParam')
ans = 1

Завершите работу сети ROS.

rosshutdown
Shutting down global node /matlab_global_node_43868 with NodeURI http://bat6315glnxa64:36185/
Shutting down ROS master on http://192.168.0.10:58256.

Используйте структуры, чтобы задать словарь параметров ROS в определенном пространстве имен.

Подключение к сети ROS.

rosinit
Launching ROS Core...
Done in 0.68879 seconds.
Initializing ROS master on http://192.168.0.10:59999.
Initializing global node /matlab_global_node_46082 with NodeURI http://bat6315glnxa64:39021/

Создайте словарь значений параметров. Этот словарь содержит информацию, относящуюся к изображению. Отобразите структуру для проверки значений.

image = imread('peppers.png');

pval.ImageWidth = size(image,1);
pval.ImageHeight = size(image,2);
pval.ImageTitle = 'peppers.png';
disp(pval)
     ImageWidth: 384
    ImageHeight: 512
     ImageTitle: 'peppers.png'

Установите словарь значений с помощью необходимого пространства имен.

rosparam('set','ImageParam',pval)

Получите параметры с помощью пространства имен. Проверьте значения.

pval2 = rosparam('get','ImageParam')
pval2 = struct with fields:
    ImageHeight: 512
     ImageTitle: 'peppers.png'
     ImageWidth: 384

Завершите работу сети ROS.

rosshutdown
Shutting down global node /matlab_global_node_46082 with NodeURI http://bat6315glnxa64:39021/
Shutting down ROS master on http://192.168.0.10:59999.

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

свернуть все

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

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

Значение параметров ROS или словарь значений, заданный как поддерживаемый тип данных MATLAB.

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

Тип данных ROSТип данных MATLAB
32-битное целое числоint32
Булевlogical
дваждыdouble
строкастроковый скаляр, string, или вектор символов, char
списокмассив ячеек (cell)
словарьструктура (struct)

Пространство имен параметра ROS, заданное как строковый скаляр или вектор символов. Все имена параметров, начинающиеся с этой строки, перечисляются при вызове rosparam("list",namespace).

Ограничения

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

См. также

|

Введенный в R2019b