exponenta event banner

Преобразование ROS Pose Сообщение однородному преобразованию

Эта модель подписывается на Pose сообщение в сети АФК и преобразует его в однородное преобразование. Используйте селекторы шины для извлечения векторов вращения и перемещения. Блок преобразования координат принимает вектор поворота (углы эвлера) и вектор перемещения в и дает однородное преобразование для сообщения.

Подключение к сети ROS. Создание издателя для '/pose' раздел с использованием 'geometry_msgs/Pose' тип сообщения.

rosinit
Launching ROS Core...
Done in 0.7184 seconds.
Initializing ROS master on http://192.168.0.10:53611.
Initializing global node /matlab_global_node_69175 with NodeURI http://bat6315glnxa64:45087/
[pub,msg] = rospublisher('/pose','geometry_msgs/Pose');

Укажите подробную информацию о позе. Сообщение содержит перевод (Position) и кватернион (Orientation), чтобы выразить позу. Отправьте сообщение через издателя.

msg.Position.X = 1;
msg.Position.Y = 2;
msg.Position.Z = 3;
msg.Orientation.X = sqrt(2)/2;
msg.Orientation.Y = sqrt(2)/2;
msg.Orientation.Z = 0;
msg.Orientation.W = 0;

send(pub,msg)

Откройте окно 'pose_to_transformation_model' модель. Эта модель подписывается на '/pose' тема в ROS. Селекторы шины извлекают векторы кватерниона и положения из сообщения ROS. Затем блок преобразования координат преобразует положение (перемещение) и кватернион в однородное преобразование.

Для получения дополнительной информации проверьте селектор шины в модели, чтобы узнать, как извлекается информация о сообщении.

open_system('pose_to_transformation_model.slx')

Запустите модель для отображения однородного преобразования.

Измените положение или ориентацию компонентов сообщения. Повторно отправьте сообщение и запустите модель, чтобы увидеть изменения в однородном преобразовании.

msg.Position.X = 4;
msg.Position.Y = 5;
msg.Position.Z = 6;
send(pub,msg)

Завершение работы сети АФК.

rosshutdown
Shutting down global node /matlab_global_node_69175 with NodeURI http://bat6315glnxa64:45087/
Shutting down ROS master on http://192.168.0.10:53611.