从仿真软件连接到ROS-enabled机器人®金宝app
您可以使用仿真软件连接到金宝appROS-enabled物理机器人或ROS-enabled机器人模拟器等露台。这个例子展示了如何配置仿真软件连接到一个单独的机器人模拟器使用ROS。金宝app然后展示了如何从一个模拟发送速度命令和接收的位置信息的机器人。
示例中您可以按以下步骤来创建您自己的模型,或者你可以使用此完成版本代替。
open_system (“robotROSConnectToRobotExample”);
先决条件:开始使用ROS,与ROS交换数据发布者和订阅者,开始与ROS在仿真软件金宝app。
机器人模拟器
开始为一个差动式驱动机器人ROS-based模拟器。模拟器接收和发送消息在下列主题:
发送
nav_msgs /测程法
消息/奥多姆
主题接收
geometry_msgs /扭
速度命令上的消息/mobile_base /命令
或/ cmd_vel
主题,基于ROS-based模拟器
你可以选择两个选项设置ROS-based模拟器。
选项一:模拟器在MATLAB®
使用一个简单的基于matlab模拟绘制机器人的当前位置在一个单独的图窗口。
输入
rosinit
在MATLAB命令行。这将创建一个本地ROS的主人的网络地址(URI)http://localhost: 11311
。输入
ExampleHelper金宝appSimulinkRobotROS
启动机器人模拟器:
注意:的
geometry_msgs /扭
速度/命令收到消息mobile_base /命令/速度
的话题。
选项B:露台模拟器
使用一个模拟TurtleBot®露台。
看到在露台添加、建立和删除对象说明设置露台的环境。在Ubuntu®桌面虚拟机,点击“露台空”图标。
注意ROS的网络地址(URI)的主人。它会看起来像
http://192.168.84.128:11311
,但你的特定的IP地址。验证通过键入适当地设置露台环境
rostopic
列表
在Ubuntu终端窗口。您应该看到一个主题列表,其中包括/ cmd_vel
和/奥多姆
。注意:的
geometry_msgs /扭
速度命令收到消息/ cmd_vel主题。
配置仿真软件连接到R金宝appOS网络
1。从模拟选项卡上,选择ROS工具箱>ROS网络。
2。在活性氧(ROS大师1)部分中,选择自定义
从网络地址下拉。
选择一个(MATLAB仿真器):确保主机名或IP地址被设置为
本地主机
,港口被设置为11311年
。选项B(露台模拟器):指定的IP地址和端口号ROS主在露台。例如,如果它是
http://192.168.60.165:11311
,然后输入192.168.60.165
在主机名或IP地址盒子,11311年
在港口盒子。
发送速度命令机器人
创建一个出版商,发送控制命令(线速度和角速度)模拟器。让这些速度可调使用滑块获得块。
ROS使用右手坐标系,所以轴,轴是左,z轴。控制命令发送使用geometry_msgs /扭
消息,Linear.X
表明线性前进速度(米/秒),和Angular.Z
表明在z轴角速度(rad / s)。
配置一个出版商块
打开一个新的仿真软件模金宝app型。
从ROS工具箱>ROS在库浏览器选项卡,拖动发布块模型。双击。
集课题来源字段从活性氧选择网络。基于仿真器选择一个主题,如下所示。
选项(MATLAB仿真器):单击选择旁边主题中,选择
/ mobile_base /命令/速度
,然后单击好吧。请注意,消息类型(geometry_msgs /扭
)是自动设置。选项B(露台模拟器):点击选择旁边主题中,选择
/ cmd_vel
,然后单击好吧。请注意,消息类型(geometry_msgs /扭
)是自动设置。
配置消息块
从ROS工具箱>ROS浏览器选项卡在图书馆,一个下降空白的信息块模型。双击。
点击选择旁边消息类型并选择
geometry_msgs /扭
。集样品时间来
0.01
并点击好吧。
配置信息输入
从金宝app>信号路由在库浏览器选项卡,拖动总线分配块模型。
连接
味精
的输出空白的信息块的公共汽车
输入的总线分配块,公共汽车
输出到味精
输入的发布块。从建模选项卡上,单击更新模型确保总线信息正确地传播。忽略错误,“选择信号总线中的“signal1”分配块“untitled /总线分配”中不能找到输入总线信号”,如果它出现。下一步将解决这个错误。
双击总线分配块。选择
? ? ?
signal1
正确的列表框,然后单击删除。在左边的列表框,扩大线性和角度的属性。选择线性>X和角>Z并点击选择。点击好吧关闭块面具。
添加一个常数块,获得块,两个滑块获得块。连接在一起所示图,并设置获得价值
1。
设置限制和电流参数的线性速度滑块
0.0
来2.0
,1.0
分别。设置相应的参数指导获得滑块-1.0
来1.0
,0.1
。
接收来自机器人的位置信息
创建一个用户发送到接收消息/奥多姆
的话题。提取机器人的位置和路径在xy平面上的阴谋。
配置一个用户块
从ROS工具箱>ROS在库浏览器选项卡,拖动订阅块模型。双击。
集课题来源来从活性氧选择网络,然后单击选择旁边的主题盒子。选择并单击“/奥多姆”话题好吧。请注意,消息类型
nav_msgs /测程法
自动设置。
读消息输出
从金宝app>信号路由在库浏览器选项卡,拖动总线选择器块模型。
输出端口的连接订阅块的输入端口总线选择器块。在建模选项卡上,单击更新模型确保总线信息正确地传播。
双击总线选择器块。选择
? ? ?
signal1
和? ? ?
signal2
正确的列表框,然后单击删除。在左边的列表框,扩大构成>构成>位置并选择X和Y。点击选择然后好吧。从金宝app>汇一个浏览器选项卡在图书馆,拖累XY图块模型。连接
X
和Y
输出端口的总线选择器块的输入端口XY图块。
这图显示了已完成的模型。一个预先配置的模型包括为您的方便。
注意:出版商在这个模型中使用
/ mobile_base /命令/速度
主题使用MATLAB仿真器的选择。露台模拟器选项,选择/ cmd_vel
主题所示以上。
配置和运行模型
从建模选项卡上,单击模型设置。在解算器窗格中,设置类型来固定步和固定的大小来
0.01
。设置模拟停止时间
正
。点击运行开始仿真。
在模拟器和XY情节,您应该看到机器人朝着一个圆。
在模拟运行时,改变的值滑块获得块来控制机器人。双击XY图块和改变
X
和Y
如果需要轴的限制。(你可以在仿真运行时)。停止仿真,点击停止。