最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

3.6 時間相關(guān)API

2023-10-09 14:16 作者:猛獅集訓(xùn)營  | 我要投稿

在前面案例中我們已經(jīng)使用了 ROS2 中的諸多 API,本節(jié)主要介紹另一類比較常見的API:時間相關(guān)API

3.6.1 Rate

第2章話題通信案例中,要求話題發(fā)布方按照一定的頻率發(fā)布消息,我們實現(xiàn)時是通過定時器來控制發(fā)布頻率的,其實,除了定時器之外,ROS2 中還提供了 Rate 類,通過該類對象也可以控制程序的運行頻率。

1.rclcpp 中的 Rate

示例:周期性輸出一段文本。

2.rclpy 中的 Rate

rclpy 中的 Rate 對象可以通過節(jié)點創(chuàng)建,Rate 對象的 sleep() 函數(shù)需要在子線程中執(zhí)行,否咋會阻塞程序。

示例:周期性輸出一段文本。

3.6.2 Time

1.rclcpp 中的 Time

示例:創(chuàng)建 Time 對象,并調(diào)用其函數(shù)。

#include "rclcpp/rclcpp.hpp"


int main(int argc, char const *argv[])

{ ? ?

? ?rclcpp::init(argc,argv); ? ?

? ?auto node = rclcpp::Node::make_shared("time_demo"); ??

?

? ?// 創(chuàng)建 Time 對象 ? ?

? ?rclcpp::Time t1(10500000000L); ? ?

? ?rclcpp::Time t2(2,1000000000L); ? ?

? ?// 通過節(jié)點獲取當(dāng)前時刻。 ? ?

? ?// rclcpp::Time roght_now = node->get_clock()->now(); ? ?

? ?rclcpp::Time roght_now = node->now(); ? ?

? ?RCLCPP_INFO(node->get_logger(),"s = %.2f, ns = %ld",t1.seconds(),t1.nanoseconds()); ? ?

? ?RCLCPP_INFO(node->get_logger(),"s = %.2f, ns = %ld",t2.seconds(),t2.nanoseconds()); ? ?

? ?RCLCPP_INFO(node->get_logger(),"s = %.2f, ns = %ld",roght_now.seconds(),roght_now.nanoseconds()); ? ?

? ?

? ?rclcpp::shutdown(); ? ?

? ?return 0;?

}

2.rclpy 中的 Time

示例:創(chuàng)建 Time 對象,并調(diào)用其函數(shù)。

import rclpy

from rclpy.time import Time

def main(): ? ?

? rclpy.init() ? ?

? node = rclpy.create_node("time_demo") ? ?

? # 創(chuàng)建 Time 對象 ? ?

? right_now = node.get_clock().now() ? ?

? t1 = Time(seconds=10,nanoseconds=500000000) ? ?


? node.get_logger().info("s = %.2f, ns = %d" % (right_now.seconds_nanoseconds()[0], right_now.seconds_nanoseconds()[1])) ? ?

? node.get_logger().info("s = %.2f, ns = %d" % (t1.seconds_nanoseconds()[0], t1.seconds_nanoseconds()[1])) ? ?

? node.get_logger().info("ns = %d" % right_now.nanoseconds) ? ?

? node.get_logger().info("ns = %d" % t1.nanoseconds) ? ?

? rclpy.shutdown()


if __name__ == "__main__": ? ?

? main()

3.6.3 Duration

1.rclcpp 中的 Duration

示例:創(chuàng)建 Duration 對象,并調(diào)用其函數(shù)。

2.rclpy 中的 Duration

示例:創(chuàng)建 Duration 對象,并調(diào)用其函數(shù)。

3.6.4 Time 與 Duration 運算

1.rclcpp 中的運算

示例:Time 以及 Duration 的相關(guān)運算。


2.rclpy 中的運算

示例:Time 以及 Duration 的相關(guān)運算。

B站有完整的ros系列教程視頻,可以觀看完整內(nèi)容ros課程ROS2理論與實踐

更多內(nèi)容將在猛獅知識星球社區(qū)更新最新課程,后續(xù)將推出更多優(yōu)質(zhì)內(nèi)容——詳情可關(guān)注猛獅集訓(xùn)營公眾號和猛獅集訓(xùn)營官方網(wǎng)站。



3.6 時間相關(guān)API的評論 (共 條)

分享到微博請遵守國家法律
陵水| 定陶县| 博白县| 潮州市| 定日县| 合江县| 封开县| 锡林郭勒盟| 闵行区| 南华县| 邵阳市| 巴里| 朔州市| 辽宁省| 桐梓县| 隆化县| 郯城县| 二连浩特市| 靖江市| 北海市| 宜城市| 治县。| 绿春县| 罗山县| 龙门县| 富民县| 谷城县| 石河子市| 泾源县| 张家港市| 叙永县| 兴义市| 新巴尔虎左旗| 响水县| 荃湾区| 松潘县| 孟州市| 民勤县| 临湘市| 游戏| 顺平县|