ROS在仿真软万博1manbetx件

使用Simulink访问ROS网络和消息万博1manbetx®

ROS工具箱使您可以在Simulink中连接到ROS和ROS 2,并通过网络发送消息。万博1manbetx看到在Simulink®中开始使用ROS万博1manbetx

您还可以生成代码并将其部署到目标系统。有关创建独立ROS节点的高级示例,请参见从Simulink®生成一个独立的ROS 2节点万博1manbetx

要运行、停止或检查ROS设备上可用的已部署ROS节点的状态,请使用MATLAB®列出的功能。通过以下方式创建到ROS设备的连接rosdevice

功能

全部展开

rosdevice 连接远端ROS设备
runNode 启动ROS节点
stopNode 停止ROS节点
runCore 开始ROS核心
stopCore 停止ROS核心
isNodeRunning 判断ROS节点是否运行
isCoreRunning 判断ROS核心是否在运行

全部展开

空白的信息 使用指定的消息类型创建空白消息
调用服务 ROS网络中的呼叫业务
当前时间 获取当前ROS时间或系统时间
得到参数 从ROS参数服务器获取值
发布 发送消息到ROS网络
读取数据 从日志文件中回放数据
读取图像 从ROS图像信息中提取图像
读点云 从ROS PointCloud2消息中提取点云
设置参数 请在ROS参数服务器上设置
订阅 接收来自ROS网络的消息
空白的信息 使用指定的消息类型创建空白的ROS 2消息
发布 发送消息到ROS 2网络
订阅 接收来自ROS 2网络的消息

主题

ROS网络

ROS 万博1manbet万博1manbetxxSimulink支持和限制

在Simulink中,ROS工具箱不支持以下ROS万博1manbetx特性:万博1manbetx

在Simulink®中开始使用ROS万博1manbetx

这个例子展示了如何使用Simulink块为ROS发送和接收来万博1manbetx自本地ROS网络的消息。

配置ROS网络地址

配置ROS网络地址对话框

从Simulink®连接到一个支持ros的机器人万博1manbetx

您可以使用Simulin万博1manbetxk连接到一个支持ros的物理机器人或一个支持ros的机器人模拟器,例如露台

Simulink中的ROS参数万博1manbetx

在Simulink中设置ROS参数的详细信息。万博1manbetx

接入ROS设备

接入ROS设备参数说明

ROS仿万博1manbetx真软件交互

万博1manbetxSimulink与ROS相互作用概述

ROS的消息

在Simulink®中使用ROS消息万博1manbetx

这个示例演示了如何在Simulink中处理复杂的ROS消息,比如嵌套子消息和可变长度数组的消息。万博1manbetx

选择“ROS主题”、“消息”和“参数”

对话框描述选择ROS主题和消息。

在Simulink中管理ROS消息的阵列大小万博1manbetx

在Simulink ROS中管理数组大小的对话框的描述万博1manbetx

ROS 2网络

在Simulink®中开始使用ROS 2万博1manbetx

这个例子展示了如何使用Simulink块为ROS 2发送和接万博1manbetx收消息从本地ROS 2网络。

在Simulink中发布和订阅ros2消息万博1manbetx

该模型展示了如何使用Simulink®发布和订阅ros2主题。万博1manbetx

通过ROS 2连接到Simulink®支持ROS的机器人万博1manbetx

这个例子向您展示了如何配置Simulink模型,以发送和接收来自ROS 2上独立的基万博1manbetx于ROS的模拟器(如Gazebo®)的信息。

机器人应用程序

从Simulink®生成一个独立的ROS节点万博1manbetx

这个示例向您展示了如何从Simulink模型生成和构建一个独立的ROS节点。万博1manbetx

从Simulink®生成一个独立的ROS 2节点万博1manbetx

这个例子向您展示了如何从Simulink®模型生成和构建一个独立的ROS 2节点。万博1manbetx

ROS机器人在ROS 2上的反馈控制

这个例子向您展示了如何使用Simulink®来控制运行在Gazebo万博1manbetx®机器人模拟器通过ROS 2网络的模拟机器人。

MATLAB中带ROS的符号跟踪机器人

这个例子向您展示了如何使用MATLAB®来控制一个运行在ROS网络上的独立ROS模拟器上的模拟机器人。

自动泊车代客与ROS在MATLAB

这个示例演示了如何将自动泊车代客(Automated Parking Valet,简称autopdriving Toolbox)应用程序分布到ROS网络的各个节点。

生成代码手动部署ROS节点从Simulink万博1manbetx

这个例子向您展示了如何从一个Simulink模型生成c++代码来部署为一个独立的ROS节点。万博1manbetx

从Simulink®生成代码手动部署ROS 2节点万博1manbetx

这个示例向您展示了如何从Simulink®模型生成c++代码,以部署为独立的ROS 2节点。万博1manbetx

为ROS工具箱型号启用外部模式

外部模式使主机上的Simulink能够在运行万博1manbetx时与机器人硬件上部署的模型通信。

为已部署的ROS节点开启ROS时间模型步进功能

您可以使已部署的ROS节点根据发布的时间执行/时钟主题。

使用外部模式在部署机器人模型上调整参数和查看信号

外部模式允许主机上的Simulink模型在运万博1manbetx行时与机器人硬件上部署的模型通信。