rosduration

Создайте объект длительности ROS

Описание

dur = rosduration возвращает объект длительности ROS по умолчанию. Свойства в течение многих секунд и наносекунд установлены в 0.

пример

dur = rosduration(totalSecs) инициализирует временные стоимости в течение многих секунд и наносекунд на основе totalSecs, который представляет время в секундах как число с плавающей запятой.

dur = rosduration(secs,nsecs) инициализирует временные стоимости в течение многих секунд и наносекунд индивидуально. Оба входных параметров должны быть целыми числами. Большие значения для nsecs перенесены автоматически с остатком, добавленным к secs.

Примеры

свернуть все

Создайте ROS Duration объекты, выполните сложение и вычитание, и сравните объекты длительности. Можно также добавить, что длительность возражает против ROS Time объекты получить другой Time объект.

Создайте длительность, использующую секунды и наносекунды.

dur1 = rosduration(100,2000000)
dur1 = 
  ROS Duration with properties:

     Sec: 100
    Nsec: 2000000

Создайте длительность с помощью значения с плавающей точкой. Это устанавливает секунды с помощью целочисленного фрагмента и наносекунды с остатком.

dur2 = rosduration(20.5)
dur2 = 
  ROS Duration with properties:

     Sec: 20
    Nsec: 500000000

Добавьте эти две длительности вместе, чтобы получить одну длительность.

dur3 = dur1 + dur2
dur3 = 
  ROS Duration with properties:

     Sec: 120
    Nsec: 502000000

Вычтите длительность и получите отрицательную длительность. Можно инициализировать длительность отрицательными величинами также.

dur4 = dur2 - dur1
dur4 = 
  ROS Duration with properties:

     Sec: -80
    Nsec: 498000000

dur5 = rosduration(-1,2000000)
dur5 = 
  ROS Duration with properties:

     Sec: -1
    Nsec: 2000000

Сравнение длительности.

dur1 > dur2
ans = logical
   1

Инициализируйте сеть ROS.

rosinit
Launching ROS Core...
.................................Done in 1.2352 seconds.
Initializing ROS master on http://192.168.0.10:58314.
Initializing global node /matlab_global_node_26249 with NodeURI http://bat1072001glnxa64:38355/

Добавьте длительность в Time ROS объект.

time = rostime('now','system')
time = 
  ROS Time with properties:

     Sec: 1.6058e+09
    Nsec: 799699754

timeFuture = time + dur3
timeFuture = 
  ROS Time with properties:

     Sec: 1.6058e+09
    Nsec: 301699754

Закройте сеть ROS.

rosshutdown
Shutting down global node /matlab_global_node_26249 with NodeURI http://bat1072001glnxa64:38355/
Shutting down ROS master on http://192.168.0.10:58314.
.........

Входные параметры

свернуть все

Общее время в виде скаляра с плавающей точкой. Целочисленный фрагмент установлен в Sec свойство с остатком применилось к Nsec свойство Duration объект.

Целые секунды в виде целого числа. Это значение непосредственно установлено к Sec свойство Duration объект.

Примечание

Максимальные и минимальные значения для secs [-2147483648, 2147483647].

Наносекунды в виде положительного целого числа. Это значение непосредственно установлено к NSec свойство Duration возразите, если это не больше или равно 109. Значение затем перенесено, и остатки добавляются к значению secs.

Выходные аргументы

свернуть все

Длительность, возвращенная как Duration ROS объект с Sec и Nsec свойства.

Смотрите также

| |

Введенный в R2019b