Retrieve current ROS time or system time
Robotics System Toolbox / ROS
The Current Time block outputs the current ROS or system time. ROS Time is based on the system clock of your
computer or the
/clock topic being published on the ROS node.
Use this block to synchronize your simulation time with your connected ROS node.
use_sim_time ROS parameter is set to
the block returns the simulation time published on the
Otherwise, the block returns the system time of your machine.
Time— ROS time
ROS time, returned as a bus signal or a scalar. The bus represents a
rosgraph_msgs/Clock ROS message with
NSec elements. The scalar is the ROS time in seconds. If no time
has been received on the
/clock topic, the block outputs
Output format— Format of ROS time
Format of ROS
Time output, specified as either
Sample time— Interval between outputs
-1(default) | numeric scalar
Interval between outputs, specified as a numeric scalar.
For more information, see Specify Sample Time (Simulink).
To set the
use_sim_time parameters and get time from a
Connect to a ROS network, then use the Set Parameter block or set the parameter in the MATLAB® command window:
ptree = rosparam; set(ptree,'/use_sim_time',true)
Usually, the ROS node that publishes on the
/clock topic sets up