主要内容

罗斯蒂

访问ROS时间功能

描述

ROS.时间消息表示以秒和纳秒为单位的实例。这次可以基于您的系统时间,ROS仿真时间或任意时间。

创建

描述

时间= rostime(totalsecs.基于的秒数和纳秒初始化时间值totalsecs.,它表示作为浮点数的秒数的时间。

笔记

在未来的释放中,ROS工具箱将使用消息结构而不是ROS消息的对象。

现在使用消息结构,设置“dataformat”名称 - 值参数“结构”。有关更多信息,请参阅ROS消息结构

时间= rostime(nsecs.单独初始化秒和纳秒的时间值。两个输入必须是整数。大量的价值nsecs.随后添加到的剩余部分自动包裹

时间= rostime(“现在”)返回当前的ROS时间。如果是使用_sim_time.ROS参数设置为真的, 这罗斯蒂返回发布的模拟时间话题。否则,该函数返回计算机的系统时间。这时间是一个罗斯时间目的。如果没有给出输出参数,则将当前时间(以秒为单位)打印到屏幕上。

罗斯蒂可用于时间戳消息或测量ROS网络中的时间。

例子

[时间签约赛] = rostime(“现在”)还返回一个指示IF的布尔值时间是在模拟时间(真的)或系统时间(错误的)。

例子

时间= rostime(“现在”,“系统”)始终返回计算机的系统时间,即使ROS发布模拟时间话题。如果没有给出输出参数,则打印到屏幕上的系统时间(以秒为单位)。

ROS中的系统时间遵循UNIX或POSIX时间标准。POSIX时间被定义为自200:00自1970年1月1日协调的世界(UTC)以来经过的时间,而不是计算闰秒。

例子

时间= rostime(___,“dataformat”,“struct”)使用邮件结构而不是与先前语法中的任何参数的对象。有关更多信息,请参阅ROS消息结构

特性

展开全部

总时间,指定为浮点标量。整数部分设置为剩下的财产适用于NSEC.财产的财产时间目的。

全秒,指定为正整数。

笔记

最大值和最小值[0,4294967294]

纳秒,指定为正整数。这个值大于或等于109.,然后包裹该值并将剩余者添加到值

消息格式,指定为“目的”或者“结构”。您必须使用名称值输入设置创建此属性。有关更多信息,请参阅ROS消息结构

例子

全部收缩

连接到ROS网络。

罗斯尼特
启动ROS核心......在4.0108秒内完成。初始化ROS Master在http://192.168.203.1:54077上。使用nodeuri初始化全局节点/ matlab_global_node_06022 http:// ah-sradford:55528 /

将当前的ROS时间作为ROS消息结构。您也可以通过获取它来检查是否是系统时间依锡输出。

[t,issim] = rostime('现在''datomformat''struct'
t =结构与字段:SEC:1606921641 NSEC:223781600
签约=逻辑0.

关闭ROS网络。

Rosshutdown.
使用nodeuri关闭全局节点/ matlab_global_node_06022 http:// ah-sradford:55528 /关闭ROS Master网上http://192.168.203.1:54077。

初始化ROS网络。

罗斯尼特
推出ROS核心......完成3.8149秒。在http://192.168.203.1:56458初始化ROS Master。使用nodeuri初始化全局节点/ matlab_global_node_61113 http:// ah-sradford:57406 /

使用结构创建盖章ROS消息。指定标题.stamp.具有当前系统时间的财产。

point = rosmessage('geometry_msgs / pointstamped''datomformat''struct');point.header.stamp = rostime('现在''系统''datomformat''struct');

关闭ROS网络。

Rosshutdown.
使用nodeuri关闭全局节点/ matlab_global_node_61113 http:// ah-sradford:57406 /关闭ROS Master http://192.168.203.1:56458。

此示例显示如何将当前ROS时间转换为MATLAB®标准时间。ROS时间对象首先将其转换为双秒,然后以指定的MATLAB时间转换为双倍。

设置ROS网络并将ROS时间存储为结构消息。

罗斯尼特
启动ROS核心......在3.7844秒内完成。初始化ROS Master http://192.168.203.1:57153。使用nodeuri初始化全局节点/ matlab_global_node_39117 http:// ah-sradford:56074 /
t = rostime('现在''datomformat''struct');

将ROS时间转换为双倍使用函数并将时间设置为指定的MATLAB格式,约会时间

time = datetime(t.sec + 10 ^ -9 * t.nsec,'vectormfrom''posixtime'
时间=约会时间02-DEC-2020 15:13:41

关闭ROS网络。

Rosshutdown.
使用nodeuri关闭全局节点/ matlab_global_node_39117 http:// ah-sradford:56074 /关闭ROS Master http://192.168.203.1:57153。

兼容性考虑因素

展开全部

未来发布的行为变化

扩展能力

C / C ++代码生成
使用MATLAB®Coder™生成C和C ++代码。

也可以看看

|

在R2019B中介绍