Сгенерируйте пользовательские сообщения от ROS 2 определения
ros2genmsg(
генерирует ROS 2 пользовательские сообщения в MATLAB® путем чтения ROS 2 пользовательские сообщения и сервисные определения в заданном пути к папке. Функция ожидает одну или несколько папок ROS 2 пакета в пути к папке. Эти пакеты содержат определения сообщения в folderpath
).msg
файлы и сервисные определения в .srv
файлы.
После вызывания этой функции можно отправить и получить пользовательские сообщения в MATLAB как все другие поддерживаемые сообщения. Можно создать эти сообщения использование ros2message
или просмотрите список сообщений путем вызова ros2 msg list
.
Примечание
При генерации пользовательских сообщений для ROS 2 необходимо создать ROS 2 пакета. Это требует, чтобы у вас были CMake и компилятор C++ для вашей платформы. Для получения дополнительной информации смотрите Системные требования ROS
Пользовательские сообщения от ROS 2 определения должны быть регенерированы для каждого нового релиза.
ros2genmsg(
задает дополнительные опции с помощью одного или нескольких аргументов пары "имя-значение".folderpath
,Name,Value
)
Перезапустите узлы
После генерации пользовательских сообщений перезапустите любой существующий ROS 2 узла.
Генерация кода с пользовательскими сообщениями:
Пользовательское сообщение и сервисные типы могут использоваться с функциональностью ROS 2 для генерации Кода С++ для автономного узла ROS 2. Сгенерированный код (.tgz архив) будет включать определения для пользовательских сообщений, но это не будет включать ROS 2 пользовательские пакеты сообщения. Когда сгенерированный код будет создан в месте назначения, он ожидает, что пользовательские пакеты сообщения будут доступны в colcon рабочей области, которая должна быть вашей текущей рабочей директорией. Гарантируйте, что вы или устанавливаете или копируете пользовательский пакет сообщения в свою систему прежде, чем создать сгенерированный код.
MATLAB Compiler
ROS 2 пользовательские сообщения и ros2genmsg
функция не поддерживается с MATLAB Compiler™.