[{"data":1,"prerenderedAt":614},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-gezebo-fang-zhen-ping-tai":3,"wiki-doc-items-2023-12-30-ros2-tutorial":194,"wiki:author-members":602},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":179,"chapterOrder":180,"date":181,"description":173,"docKey":182,"docRoot":183,"docTitle":184,"extension":185,"isWikiDoc":186,"isWikiIndex":187,"meta":188,"navigation":186,"path":189,"seo":190,"stem":191,"wikiDepth":192,"__hash__":193},"wiki\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-Gezebo仿真平台.md","Gezebo仿真平台",[7],"董佳辉",{"type":9,"value":10,"toc":172},"minimark",[11,15,19,22,25,28,34,37,56,59,64,70,75,78,83,86,106,109,114,117,125,128,131,134,137,149,152,155,169],[12,13,14],"h3",{"id":14},"简述",[16,17,18],"p",{},"Gazebo目前主要分为两个版本，",[16,20,21],{},"一个是旧版Gazebo Classic，一个是新版Ignition Gazebo（ Gazebo Fortress）。",[16,23,24],{},"本文中称呼的Gazebo均代指Gazebo Classic，而Ignition Gazebo会加以区别。",[16,26,27],{},"然后现在ROS2Humble自带的是Ignition Gazebo（ Gazebo Fortress），但是ROS2 Jazzy自带的是\tGazebo Harmonic，建议学习\tGazebo Harmonic ！",[16,29,30],{},[31,32,33],"strong",{},"场景",[16,35,36],{},"在ROS机器人开发中，实体机器人虽然具有直接性和真实性的优势，但也存在一些不足，比如：",[38,39,40],"blockquote",{},[41,42,43,47,50,53],"ol",{},[44,45,46],"li",{},"高昂的成本：研发一款自主移动机器人需要购买昂贵的硬件组件，如传感器、电机、控制器等，且这些硬件在研发初期可能需要频繁更换或升级，导致成本急剧上升。",[44,48,49],{},"资源限制：由于资金和资源有限，可能无法同时拥有多台实体机器人进行测试。这会导致测试周期延长，研发进度受阻。",[44,51,52],{},"环境的不确定性和复杂性：在真实环境中测试机器人时，可能会遇到各种不可预测的情况，如光线变化、地面不平整、电磁干扰等，这些因素都可能影响机器人的性能。",[44,54,55],{},"安全风险：在测试过程中，如果机器人的控制算法或硬件出现故障，可能会导致机器人失控，对人员或环境造成损害。",[16,57,58],{},"在ROS机器人开发的领域里，仿真技术被广泛应用以弥补实体机器人测试中的不足。",[16,60,61],{},[31,62,63],{},"概念",[16,65,66,69],{},[31,67,68],{},"机器人仿真"," 是一种利用计算机模型和仿真技术来模拟机器人在虚拟环境中的行为和性能的过程。它通过创建虚拟的机器人和环境模型，模拟机器人的感知、控制和运动能力，以及与环境和其他对象的交互。",[16,71,72],{},[31,73,74],{},"作用",[16,76,77],{},"通过仿真测试，可以降低机器人研发成本和风险，提高机器人系统的性能和可靠性，并为实际机器人部署提供参考和指导。",[16,79,80],{},[31,81,82],{},"仿真优势:",[16,84,85],{},"仿真在机器人系统研发过程中占有举足轻重的地位，在研发与测试中较之于实体机器人实现，仿真有如下几点的显著优势:",[41,87,88,94,100],{},[44,89,90,93],{},[31,91,92],{},"低成本:"," 当前机器人成本居高不下，动辄几十万，仿真可以大大降低成本，减小风险",[44,95,96,99],{},[31,97,98],{},"高效:"," 搭建的环境更为多样且灵活，可以提高测试效率以及测试覆盖率",[44,101,102,105],{},[31,103,104],{},"高安全性:"," 仿真环境下，无需考虑耗损问题",[16,107,108],{},"仿真技术为开发者构建了一个既高效又安全，且成本低廉的全方位测试和验证平台。",[16,110,111],{},[31,112,113],{},"仿真缺陷:",[16,115,116],{},"机器人在仿真环境与实际环境下的表现差异较大，换言之，仿真并不能完全做到模拟真实的物理世界，存在一些\"失真\"的情况，原因:",[41,118,119,122],{},[44,120,121],{},"仿真器所使用的物理引擎目前还不能够完全精确模拟真实世界的物理情况",[44,123,124],{},"仿真器构建的是关节驱动器（电机&齿轮箱）、传感器与信号通信的绝对理想情况，目前不支持模拟实际硬件缺陷或者一些临界状态等情形",[16,126,127],{},"总之，仿真技术虽然重要，但并不能完全替代实体测试。实体测试可以验证仿真结果的准确性，并发现仿真中可能忽略的问题。",[12,129,130],{"id":130},"本章小结",[16,132,133],{},"本章主要介绍了2D仿真工具stage_ros2以及3D仿真工具ignition gazebo在ROS2中的应用。",[16,135,136],{},"相关知识点如下：",[138,139,140,143,146],"ul",{},[44,141,142],{},"仿真的理论知识；",[44,144,145],{},"stage_ros2在ROS2中的使用；",[44,147,148],{},"ignition gazebo在ROS2中的使用。",[16,150,151],{},"通过上述内容我们介绍了仿真在ROS2中的应用场景、概念，以及较之于实体机器人，仿真的优势和不足。还学习了如何基于stage_ros2以及ignition gazebo分别搭建仿真环境并模拟机器人，为后续的学习奠定了基础。",[16,153,154],{},"另外，除了stage_ros2和ignition gazebo之外，还有其他一些可用于ROS2仿真的软件。以下是一些常见的选择：",[138,156,157,160,163,166],{},[44,158,159],{},"Webots: Webots是一个强大的开源多机器人仿真软件平台，它支持各种机器人硬件和传感器模拟，并且可以与ROS 2进行集成。",[44,161,162],{},"Gazebo Classic: Gazebo Classic是ROS 1中常用的仿真器，也可以通过ROS 2进行连接和使用。",[44,164,165],{},"MORSE: MORSE是一个基于Python的开源仿真器，可以用于ROS 2仿真和机器人开发，支持多种传感器和行为模型。",[44,167,168],{},"V-REP: V-REP是一个强大的多机器人仿真平台，它支持ROS 2与其进行通信，可以实现各种机器人模型和场景的仿真。",[16,170,171],{},"这些都是一些常见的ROS 2仿真软件，你可以根据具体的需求选择合适的软件来进行仿真和开发。请注意，某些仿真器可能需要进行适配和配置以与ROS 2兼容。",{"title":173,"searchDepth":174,"depth":174,"links":175},"",2,[176,178],{"id":14,"depth":177,"text":14},3,{"id":130,"depth":177,"text":130},0,"1100","2023-12-30","2023-12-30-ros2-tutorial","\u002Fwiki\u002F2023-12-30-ros2-tutorial","Ros2 Tutorial","md",true,false,{},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-gezebo-fang-zhen-ping-tai",{"title":5,"description":173},"wiki\u002F2023-12-30-ros2-tutorial\u002F1100-Gezebo仿真平台",1,"Y64x4X6HynVtizACOZjJmRuUchheTg0InWvh1aS0RoA",[195,201,207,213,219,225,231,237,243,249,255,261,267,273,279,281,287,293,299,305,311,317,323,329,335,341,347,353,359,365,371,377,383,389,395,400,406,411,417,423,429,435,441,447,453,459,465,471,477,483,489,495,501,507,513,519,525,531,537,543,549,555,561,567,573,579,585,591,597],{"path":196,"stem":197,"title":198,"authors":199,"date":181,"chapterOrder":200,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0100-ros2-jie-shao","wiki\u002F2023-12-30-ros2-tutorial\u002F0100-ROS2介绍","ROS2介绍",[7],"0100",{"path":202,"stem":203,"title":204,"authors":205,"date":181,"chapterOrder":206,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0200-ru-men-cao-zuo","wiki\u002F2023-12-30-ros2-tutorial\u002F0200-入门操作","入门操作",[7],"0200",{"path":208,"stem":209,"title":210,"authors":211,"date":181,"chapterOrder":212,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0300-gong-zuo-kong-jian-yu-gong-neng-bao","wiki\u002F2023-12-30-ros2-tutorial\u002F0300-工作空间与功能包","工作空间与功能包",[7],"0300",{"path":214,"stem":215,"title":216,"authors":217,"date":181,"chapterOrder":218,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0400-si-da-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F0400-四大通信","四大通信",[7],"0400",{"path":220,"stem":221,"title":222,"authors":223,"date":181,"chapterOrder":224,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0500-ros2-qi-ta-tong-xin-ji-zhi","wiki\u002F2023-12-30-ros2-tutorial\u002F0500-ROS2其他通信机制","ROS2其他通信机制",[7],"0500",{"path":226,"stem":227,"title":228,"authors":229,"date":181,"chapterOrder":230,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0600-launch","wiki\u002F2023-12-30-ros2-tutorial\u002F0600-Launch","Launch",[7],"0600",{"path":232,"stem":233,"title":234,"authors":235,"date":181,"chapterOrder":236,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0700-hui-su-rosbag2","wiki\u002F2023-12-30-ros2-tutorial\u002F0700-回溯rosbag2","回溯rosbag2",[7],"0700",{"path":238,"stem":239,"title":240,"authors":241,"date":181,"chapterOrder":242,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0800-zuo-biao-bian-huan-tf","wiki\u002F2023-12-30-ros2-tutorial\u002F0800-坐标变换TF","坐标变换TF",[7],"0800",{"path":244,"stem":245,"title":246,"authors":247,"date":181,"chapterOrder":248,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0900-ke-shi-hua-ping-tai-rviz2-yu-urdf-jian-mo-yu-yan","wiki\u002F2023-12-30-ros2-tutorial\u002F0900-可视化平台RVIZ2与URDF建模语言","可视化平台RVIZ2与URDF建模语言",[7],"0900",{"path":250,"stem":251,"title":252,"authors":253,"date":181,"chapterOrder":254,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1000-stage-ros2-fang-zhen-ping-tai","wiki\u002F2023-12-30-ros2-tutorial\u002F1000-Stage_Ros2仿真平台","Stage_Ros2仿真平台",[7],"1000",{"path":256,"stem":257,"title":258,"authors":259,"date":181,"chapterOrder":260,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-gazeboclassic","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-GazeboClassic","Gezebo Classic",[7],"1100-0100",{"path":262,"stem":263,"title":264,"authors":265,"date":181,"chapterOrder":266,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0200-ignitiongazebo","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-0200-IgnitionGazebo","Ignition Gazebo（Gazebo Fortress）",[7],"1100-0200",{"path":268,"stem":269,"title":270,"authors":271,"date":181,"chapterOrder":272,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0300-gazebosim","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-0300-GazeboSim","Gz Sim（Gazebo Harmonic）",[7],"1100-0300",{"path":274,"stem":275,"title":276,"authors":277,"date":181,"chapterOrder":278,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0400-igngz2gzsim","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-0400-Igngz2gzsim","将Ign Gazebo迁移至Gz Sim",[7],"1100-0400",{"path":189,"stem":191,"title":5,"authors":280,"date":181,"chapterOrder":180,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},[7],{"path":282,"stem":283,"title":284,"authors":285,"date":181,"chapterOrder":286,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0100-humble-ban-ben","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0100-Humble版本","Humble导航仿真",[7],"1200-0100",{"path":288,"stem":289,"title":290,"authors":291,"date":181,"chapterOrder":292,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0200-jazzy-ban-ben","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0200-Jazzy版本","Jazzy导航仿真",[7],"1200-0200",{"path":294,"stem":295,"title":296,"authors":297,"date":181,"chapterOrder":298,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-humble2jazzy","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-Humble2Jazzy","Humble与Jazzy导航的差异",[7],"1200-0300",{"path":300,"stem":301,"title":302,"authors":303,"date":181,"chapterOrder":304,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0100-you-xian-zhuang-tai-ji-fsm","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0100-有限状态机FSM","有限状态机（Finite State Machine）",[7],"1200-0400-0100",{"path":306,"stem":307,"title":308,"authors":309,"date":181,"chapterOrder":310,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0100-ji-ben-gai-nian","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0100-基本概念","基本概念",[7],"1200-0400-0200-0100",{"path":312,"stem":313,"title":314,"authors":315,"date":181,"chapterOrder":316,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0200-kong-zhi-yu-zhuang-shi-gui-ze","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0200-控制与装饰规则","控制与装饰规则",[7],"1200-0400-0200-0200",{"path":318,"stem":319,"title":320,"authors":321,"date":181,"chapterOrder":322,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0300-di-yi-ge-wan-zheng-cheng-xu","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0300-第一个完整程序","第一个完整程序",[7],"1200-0400-0200-0300",{"path":324,"stem":325,"title":326,"authors":327,"date":181,"chapterOrder":328,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0400-jie-dian-zhi-jian-chuan-shu-ju","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0400-节点之间传数据","节点之间传数据",[7],"1200-0400-0200-0400",{"path":330,"stem":331,"title":332,"authors":333,"date":181,"chapterOrder":334,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0500-chi-xu-ren-wu-yu-zhong-zhi","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0500-持续任务与中止","持续任务与中止",[7],"1200-0400-0200-0500",{"path":336,"stem":337,"title":338,"authors":339,"date":181,"chapterOrder":340,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0600-zu-he-shi-ji-ren-wu","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-0600-组合实际任务","组合实际任务",[7],"1200-0400-0200-0600",{"path":342,"stem":343,"title":344,"authors":345,"date":181,"chapterOrder":346,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-xing-wei-shu-bt","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-0200-行为树BT","行为树（BehaviorTree.CPP）",[7],"1200-0400-0200",{"path":348,"stem":349,"title":350,"authors":351,"date":181,"chapterOrder":352,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-fsm-yu-bt","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0400-FSM与BT","有限状态机FSM与行为树BT",[7],"1200-0400",{"path":354,"stem":355,"title":356,"authors":357,"date":181,"chapterOrder":358,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-ji-qi-ren-dao-hang-navigation2-fang-zhen-pian","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-机器人导航Navigation2(仿真篇)","机器人导航Navigation2(仿真篇)",[7],"1200",{"path":360,"stem":361,"title":362,"authors":363,"date":181,"chapterOrder":364,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0100-boost-aiso","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0100-Boost.Aiso","Boost.Asio库",[7],"1300-0100-0100",{"path":366,"stem":367,"title":368,"authors":369,"date":181,"chapterOrder":370,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0200-ros2-serial-driver","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0200-ros2_serial_driver","ROS2 Serial Driver库",[7],"1300-0100-0200",{"path":372,"stem":373,"title":374,"authors":375,"date":181,"chapterOrder":376,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-chuan-kou-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-串口通信","UART串口通信",[7],"1300-0100",{"path":378,"stem":379,"title":380,"authors":381,"date":181,"chapterOrder":382,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0100-socketcan","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0100-socketcan","SocketCAN",[7],"1300-0200-0100",{"path":384,"stem":385,"title":386,"authors":387,"date":181,"chapterOrder":388,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0200-ros2-socketcan","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0200-ros2_socketcan","ROS2_SocketCAN",[7],"1300-0200-0200",{"path":390,"stem":391,"title":392,"authors":393,"date":181,"chapterOrder":394,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-can-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-CAN通信","CAN通信",[7],"1300-0200",{"path":396,"stem":397,"title":362,"authors":398,"date":181,"chapterOrder":399,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-0100-boost-aiso","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-0100-Boost.Aiso",[7],"1300-0300-0100",{"path":401,"stem":402,"title":403,"authors":404,"date":181,"chapterOrder":405,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-tcp-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-TCP通信","TCP通信",[7],"1300-0300",{"path":407,"stem":408,"title":362,"authors":409,"date":181,"chapterOrder":410,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-0100-boost-aiso","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-0100-Boost.Aiso",[7],"1300-0400-0100",{"path":412,"stem":413,"title":414,"authors":415,"date":181,"chapterOrder":416,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-udp-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-UDP通信","UDP通信",[7],"1300-0400",{"path":418,"stem":419,"title":420,"authors":421,"date":181,"chapterOrder":422,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-linux-ying-jian-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-Linux硬件通信","Linux硬件通信",[7],"1300",{"path":424,"stem":425,"title":426,"authors":427,"date":181,"chapterOrder":428,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0100-ji-qi-ren-zu-cheng","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0100-机器人组成","机器人组成",[7],"1400-0100",{"path":430,"stem":431,"title":432,"authors":433,"date":181,"chapterOrder":434,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0100-yuan-cheng-kai-fa-ssh","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0100-远程开发SSH","远程开发SSH",[7],"1400-0200-0100",{"path":436,"stem":437,"title":438,"authors":439,"date":181,"chapterOrder":440,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0200-yuan-cheng-fang-wen-zhuo-mian","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0200-远程访问桌面","远程访问桌面",[7],"1400-0200-0200",{"path":442,"stem":443,"title":444,"authors":445,"date":181,"chapterOrder":446,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-gong-kong-ji-zhi-yuan-cheng-kai-fa-huan-jing","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-工控机之远程开发环境","工控机之远程开发环境",[7],"1400-0200",{"path":448,"stem":449,"title":450,"authors":451,"date":181,"chapterOrder":452,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0300-gong-kong-ji-zhi-wai-jie-usb-she-bei","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0300-工控机之外接USB设备","工控机之外接USB设备",[7],"1400-0300",{"path":454,"stem":455,"title":456,"authors":457,"date":181,"chapterOrder":458,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0400-fen-bu-shi-da-jian","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0400-分布式搭建","分布式搭建",[7],"1400-0400",{"path":460,"stem":461,"title":462,"authors":463,"date":181,"chapterOrder":464,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-you-hua-ri-zhi","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-优化日志","优化日志",[7],"1400-0500",{"path":466,"stem":467,"title":468,"authors":469,"date":181,"chapterOrder":470,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0100-li-cheng-ji-odom","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0100-里程计Odom","里程计Odom",[7],"1400-0600-0100",{"path":472,"stem":473,"title":474,"authors":475,"date":181,"chapterOrder":476,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0200-guan-xing-ji-imu","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0200-惯性计IMU","惯性计IMU",[7],"1400-0600-0200",{"path":478,"stem":479,"title":480,"authors":481,"date":181,"chapterOrder":482,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0300-ji-guang-lei-da-lidar","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0300-激光雷达LiDAR","激光雷达LiDAR",[7],"1400-0600-0300",{"path":484,"stem":485,"title":486,"authors":487,"date":181,"chapterOrder":488,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0400-xiang-ji-camera","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0400-相机Camera","相机Camera",[7],"1400-0600-0400",{"path":490,"stem":491,"title":492,"authors":493,"date":181,"chapterOrder":494,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0500-quan-qiu-ding-wei-gnss","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0500-全球定位GNSS","全球定位GNSS",[7],"1400-0600-0500",{"path":496,"stem":497,"title":498,"authors":499,"date":181,"chapterOrder":500,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0600-shou-bing-joy","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0600-手柄joy","手柄JOY",[7],"1400-0600-0600",{"path":502,"stem":503,"title":504,"authors":505,"date":181,"chapterOrder":506,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0700-jian-pan-kong-zhi-jie-dian","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0700-键盘控制节点","键盘控制节点",[7],"1400-0600-0700",{"path":508,"stem":509,"title":510,"authors":511,"date":181,"chapterOrder":512,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-ying-jian-ping-tai","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-硬件平台","硬件平台",[7],"1400-0600",{"path":514,"stem":515,"title":516,"authors":517,"date":181,"chapterOrder":518,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0700-zuo-biao-xi-yu-hua-ti-guan-xi","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0700-坐标系与话题关系","坐标系与话题关系",[7],"1400-0700",{"path":520,"stem":521,"title":522,"authors":523,"date":181,"chapterOrder":524,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0100-lun-shi-li-cheng-ji-biao-ding","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0100-轮式里程计标定","轮式里程计标定",[7],"1400-0800-0100-0100",{"path":526,"stem":527,"title":528,"authors":529,"date":181,"chapterOrder":530,"chapterDepth":177,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0200-lun-shi-li-cheng-ji-yu-imu-rong-he","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0200-轮式里程计与IMU融合","轮式里程计与IMU融合",[7],"1400-0800-0100-0200",{"path":532,"stem":533,"title":534,"authors":535,"date":181,"chapterOrder":536,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-lun-shi-li-cheng-ji-biao-ding-yu-rong-he","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-轮式里程计标定与融合","轮式里程计标定与融合",[7],"1400-0800-0100",{"path":538,"stem":539,"title":540,"authors":541,"date":181,"chapterOrder":542,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0200-ji-guang-lei-da-gong-ju","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0200-激光雷达工具","激光雷达工具",[7],"1400-0800-0200",{"path":544,"stem":545,"title":546,"authors":547,"date":181,"chapterOrder":548,"chapterDepth":174,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0300-xiang-ji-shi-yong-jin-jie","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0300-相机使用进阶","相机使用进阶",[7],"1400-0800-0300",{"path":550,"stem":551,"title":552,"authors":553,"date":181,"chapterOrder":554,"chapterDepth":192,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-ying-jian-ping-tai-jin-jie","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-硬件平台进阶","硬件平台进阶",[7],"1400-0800",{"path":556,"stem":557,"title":558,"authors":559,"date":181,"chapterOrder":560,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-ji-qi-ren-ying-jian","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-机器人硬件","机器人硬件",[7],"1400",{"path":562,"stem":563,"title":564,"authors":565,"date":181,"chapterOrder":566,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1500-ros2-control","wiki\u002F2023-12-30-ros2-tutorial\u002F1500-ROS2_Control","ROS2_Control",[7],"1500",{"path":568,"stem":569,"title":570,"authors":571,"date":181,"chapterOrder":572,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","wiki\u002F2023-12-30-ros2-tutorial\u002F1600-Moveit2工业机器人机械臂","Moveit2工业机器人机械臂",[7],"1600",{"path":574,"stem":575,"title":576,"authors":577,"date":181,"chapterOrder":578,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1700-ji-qi-ren-dao-hang-navigation2-shi-ti-pian","wiki\u002F2023-12-30-ros2-tutorial\u002F1700-机器人导航Navigation2(实体篇)","机器人导航Navigation2(实体篇)",[7],"1700",{"path":580,"stem":581,"title":582,"authors":583,"date":181,"chapterOrder":584,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1800-microros","wiki\u002F2023-12-30-ros2-tutorial\u002F1800-MicroROS","MicroROS",[7],"1800",{"path":586,"stem":587,"title":588,"authors":589,"date":181,"chapterOrder":590,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-webots-fang-zhen-ping-tai","wiki\u002F2023-12-30-ros2-tutorial\u002F1900-Webots仿真平台","Webots仿真平台",[7],"1900",{"path":592,"stem":593,"title":594,"authors":595,"date":181,"chapterOrder":596,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":187},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F2000-opencv","wiki\u002F2023-12-30-ros2-tutorial\u002F2000-OpenCV","OpenCV",[7],"2000",{"path":183,"stem":598,"title":599,"authors":600,"date":181,"chapterOrder":601,"chapterDepth":179,"docKey":182,"docRoot":183,"docTitle":184,"isWikiDoc":186,"isWikiIndex":186},"wiki\u002F2023-12-30-ros2-tutorial\u002Findex","ROS2机器人操作系统教程",[7],null,[603,605,608,611],{"name":7,"image":604},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":606,"image":607},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":609,"image":610},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":612,"image":613},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431902430]