ros2device

Свяжите с удаленным устройством ROS 2

Описание

ros2device объект создает связь с устройством ROS 2. Устройство ROS 2 может быть локальным устройством или удаленным устройством. Объект содержит необходимую информацию о входе в систему и другие параметры распределения ROS 2. Если вы установили связь с помощью ros2device, можно запустить и остановить ROS 2 узла.

Можно развернуть ROS 2 узла в устройство ROS 2 с помощью Simulink® модели. Для примера смотрите, Генерируют Автономный узел ROS 2 от Simulink®

Можно также развернуть ROS 2 узла, сгенерированные из MATLAB® код.

.

Примечание

Чтобы связать с устройством ROS 2, сервер SSH должен быть установлен на устройстве. Чтобы соединиться с локальным хостом, установка сервера SSH на локальном устройстве не требуется, если вы задаете deviceAddress как 'localhost'. В качестве альтернативы, если вы задаете deviceAddress как '127.0.0.1' или как имя хоста, относящееся к локальному устройству, затем, сервер SSH должен быть установлен на локальном устройстве.

Создание

Описание

пример

device = ros2device(deviceAddress,username,password) создает ros2device объект, соединенный с устройством ROS 2 в заданном адресе и с заданным именем пользователя и паролем.

device = ros2device создает ros2device объект, соединенный с устройством ROS 2 с помощью сохраненных значений для deviceAddress, username, и password.

device = ros2device('localhost') создает ros2device объект соединяется с локальным устройством.

Свойства

развернуть все

Это свойство доступно только для чтения.

Имя хоста или IP-адрес устройства ROS 2 в виде вектора символов.

Пример: '192.168.1.10'

Пример: 'samplehost.foo.com'

Это свойство доступно только для чтения.

Имя пользователя раньше связывало с устройством ROS 2 в виде вектора символов.

Пример: 'user'

Местоположение установки ROS 2 в виде вектора символов. Если вы не задаете папку, MATLAB пытается определить правильную папку для вас. Когда вы развертываете узел ROS 2, устанавливаете это значение от Simulink в диалоговом окне Configuration Parameters под Hardware Implementation.

Пример: '/opt/ros/dashing'

Папка ROS 2 проекта, где модели развертываются на устройстве в виде вектора символов. Когда вы развертываете узел ROS 2, устанавливаете это значение от Simulink в диалоговом окне Configuration Parameters под Hardware Implementation.

Пример: '~/ros2_ws_test'

Это свойство доступно только для чтения.

Узлы, доступные, чтобы работать на устройстве ROS 2, возвращенном как массив ячеек из символьных векторов. Узлы только перечислены, если они - часть ROS2Workspace и были развернуты на устройстве с помощью Simulink.

Пример: {'robotcontroller','publishernode'}

Функции объекта

runNodeЗапустите ROS или узел ROS 2
stopNodeОстановите ROS или узел ROS 2
isNodeRunningОпределите, запускаются ли ROS или узел ROS 2
systemВыполните системную команду на устройстве
putFileСкопируйте файл в устройство
getFileПолучите файл от устройства
deleteFileУдалите файл из устройства
dirПеречислите содержание папки на устройстве
openShellОткройте интерактивный командный процессор для устройства

Примеры

свернуть все

Свяжите с удаленным устройством и запустите узел ROS 2 с помощью ros2device объект. Создайте ros2device объект путем определения адреса, имени пользователя и пароля удаленного устройства.

ipaddress = '192.168.203.131';
device = ros2device(ipaddress,'user','password');
device.ROS2Folder = '/opt/ros/dashing';
device.ROS2Workspace = '~/ros2_ws_test';

ros2device объект также содержит информацию о доступных узлах ROS. Проверяйте доступный ROS 2 узла на подключенном устройстве.

device.AvailableNodes

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

runNode(device,'ros2FeedbackControlExample')
isNodeRunning(device,'ros2FeedbackControlExample')

Остановите узел ROS 2.

stopNode(device,'ros2FeedbackControlExample')

Ограничения

  • Вы не можете изменить ROS2Folder свойство, когда соединено с локальным хостом. Для локальных связей хоста это будет всегда указывать на папку ROS 2 в рамках установки MATLAB.

Введенный в R2021a