[{"data":1,"prerenderedAt":719},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-webots-fang-zhen-ping-tai":3,"wiki-doc-items-2023-12-30-ros2-tutorial":299,"wiki:author-members":707},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":286,"chapterOrder":287,"date":288,"description":14,"docKey":289,"docRoot":290,"docTitle":291,"extension":292,"isWikiDoc":206,"isWikiIndex":293,"meta":294,"navigation":206,"path":295,"seo":296,"stem":297,"wikiDepth":64,"__hash__":298},"wiki\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-Webots仿真平台.md","Webots仿真平台",[7],"董佳辉",{"type":9,"value":10,"toc":284},"minimark",[11,15,18,26,32,35,38,41,44,47,50,280],[12,13,14],"p",{},"这个平台用来测运动学很舒服。",[12,16,17],{},"可以SolidWorks转URDF（ROS官方提供sw2udfo工具），再URDF转Webots（webots官方提供urdf2webots工具）。",[12,19,20],{},[21,22,23],"a",{"href":23,"rel":24},"https:\u002F\u002Fgithub.com\u002Fros\u002Fsolidworks_urdf_exporter",[25],"nofollow",[12,27,28],{},[21,29,30],{"href":30,"rel":31},"https:\u002F\u002Fgithub.com\u002Fcyberbotics\u002Furdf2webots",[25],[12,33,34],{},"这样的话，连电机甚至都给你选好了，你只需要写运动学即可。",[12,36,37],{},"运动控制程序可以用C\u002FC++、Python、Java等语言编写，控制的时候只需要注意一下控制电机角度和速度的方式以及单位即可。",[12,39,40],{},"如果你给电机setPosition(INFINITY)的话，那么这个电机将变成角度电机，而原本设置速度的函数将会变成设置角速度。",[12,42,43],{},"如果你没给电机设置setPosition(INFINITY)，那么这个电机就是个速度电机。",[12,45,46],{},"角度单位是rad（存疑）",[12,48,49],{},"速度单位是rad\u002Fs（存疑）",[51,52,57],"pre",{"className":53,"code":54,"language":55,"meta":56,"style":56},"language-cpp shiki shiki-themes github-light github-dark","        for (int i = 0;i \u003C 4;i++)\n        {\n                \u002F\u002F舵电机仿真中默认顺时针为正\n                swerve_motor[i] = robot->getMotor(\"swerve_joint\" + std::to_string(i));\n                \u002F\u002Fswerve_motor[i]->setPosition(INFINITY);       \u002F\u002F 注释掉：不启用速度控制\n                swerve_motor[i]->setPosition(0.0);       \u002F\u002F 初始角度为0\n                swerve_motor[i]->setVelocity(50.0);       \u002F\u002F 设置角速度\n\n                \u002F\u002F驱动电机仿真中默认向后滚为正\n                drive_motor[i] = robot->getMotor(\"drive_joint\" + std::to_string(i));\n                drive_motor[i]->setPosition(INFINITY);   \u002F\u002F 启用速度控制\n                drive_motor[i]->setVelocity(-0.0);        \u002F\u002F 初始速度为0\n        }\n","cpp","",[58,59,60,104,110,117,154,163,183,201,208,214,241,255,274],"code",{"__ignoreMap":56},[61,62,65,69,73,76,79,82,86,89,92,95,98,101],"span",{"class":63,"line":64},"line",1,[61,66,68],{"class":67},"szBVR","        for",[61,70,72],{"class":71},"sVt8B"," (",[61,74,75],{"class":67},"int",[61,77,78],{"class":71}," i ",[61,80,81],{"class":67},"=",[61,83,85],{"class":84},"sj4cs"," 0",[61,87,88],{"class":71},";i ",[61,90,91],{"class":67},"\u003C",[61,93,94],{"class":84}," 4",[61,96,97],{"class":71},";i",[61,99,100],{"class":67},"++",[61,102,103],{"class":71},")\n",[61,105,107],{"class":63,"line":106},2,[61,108,109],{"class":71},"        {\n",[61,111,113],{"class":63,"line":112},3,[61,114,116],{"class":115},"sJ8bj","                \u002F\u002F舵电机仿真中默认顺时针为正\n",[61,118,120,123,125,128,132,135,139,142,145,148,151],{"class":63,"line":119},4,[61,121,122],{"class":71},"                swerve_motor[i] ",[61,124,81],{"class":67},[61,126,127],{"class":71}," robot->",[61,129,131],{"class":130},"sScJk","getMotor",[61,133,134],{"class":71},"(",[61,136,138],{"class":137},"sZZnC","\"swerve_joint\"",[61,140,141],{"class":67}," +",[61,143,144],{"class":130}," std",[61,146,147],{"class":71},"::",[61,149,150],{"class":130},"to_string",[61,152,153],{"class":71},"(i));\n",[61,155,157,160],{"class":63,"line":156},5,[61,158,159],{"class":115},"                \u002F\u002Fswerve_motor[i]->setPosition(INFINITY);",[61,161,162],{"class":115},"       \u002F\u002F 注释掉：不启用速度控制\n",[61,164,166,169,172,174,177,180],{"class":63,"line":165},6,[61,167,168],{"class":71},"                swerve_motor[i]->",[61,170,171],{"class":130},"setPosition",[61,173,134],{"class":71},[61,175,176],{"class":84},"0.0",[61,178,179],{"class":71},");",[61,181,182],{"class":115},"       \u002F\u002F 初始角度为0\n",[61,184,186,188,191,193,196,198],{"class":63,"line":185},7,[61,187,168],{"class":71},[61,189,190],{"class":130},"setVelocity",[61,192,134],{"class":71},[61,194,195],{"class":84},"50.0",[61,197,179],{"class":71},[61,199,200],{"class":115},"       \u002F\u002F 设置角速度\n",[61,202,204],{"class":63,"line":203},8,[61,205,207],{"emptyLinePlaceholder":206},true,"\n",[61,209,211],{"class":63,"line":210},9,[61,212,213],{"class":115},"                \u002F\u002F驱动电机仿真中默认向后滚为正\n",[61,215,217,220,222,224,226,228,231,233,235,237,239],{"class":63,"line":216},10,[61,218,219],{"class":71},"                drive_motor[i] ",[61,221,81],{"class":67},[61,223,127],{"class":71},[61,225,131],{"class":130},[61,227,134],{"class":71},[61,229,230],{"class":137},"\"drive_joint\"",[61,232,141],{"class":67},[61,234,144],{"class":130},[61,236,147],{"class":71},[61,238,150],{"class":130},[61,240,153],{"class":71},[61,242,244,247,249,252],{"class":63,"line":243},11,[61,245,246],{"class":71},"                drive_motor[i]->",[61,248,171],{"class":130},[61,250,251],{"class":71},"(INFINITY);",[61,253,254],{"class":115},"   \u002F\u002F 启用速度控制\n",[61,256,258,260,262,264,267,269,271],{"class":63,"line":257},12,[61,259,246],{"class":71},[61,261,190],{"class":130},[61,263,134],{"class":71},[61,265,266],{"class":67},"-",[61,268,176],{"class":84},[61,270,179],{"class":71},[61,272,273],{"class":115},"        \u002F\u002F 初始速度为0\n",[61,275,277],{"class":63,"line":276},13,[61,278,279],{"class":71},"        }\n",[281,282,283],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":56,"searchDepth":106,"depth":106,"links":285},[],0,"1900","2023-12-30","2023-12-30-ros2-tutorial","\u002Fwiki\u002F2023-12-30-ros2-tutorial","Ros2 Tutorial","md",false,{},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-webots-fang-zhen-ping-tai",{"title":5,"description":14},"wiki\u002F2023-12-30-ros2-tutorial\u002F1900-Webots仿真平台","k8WFtT4IGlnkqCLwEbjov3OpYM041YWkmA96eJ9VXOE",[300,306,312,318,324,330,336,342,348,354,360,366,372,378,384,390,396,402,408,414,420,426,432,438,444,450,456,462,468,474,480,486,492,498,504,509,515,520,526,532,538,544,550,556,562,568,574,580,586,592,598,604,610,616,622,628,634,640,646,652,658,664,670,676,682,688,694,696,702],{"path":301,"stem":302,"title":303,"authors":304,"date":288,"chapterOrder":305,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0100-ros2-jie-shao","wiki\u002F2023-12-30-ros2-tutorial\u002F0100-ROS2介绍","ROS2介绍",[7],"0100",{"path":307,"stem":308,"title":309,"authors":310,"date":288,"chapterOrder":311,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0200-ru-men-cao-zuo","wiki\u002F2023-12-30-ros2-tutorial\u002F0200-入门操作","入门操作",[7],"0200",{"path":313,"stem":314,"title":315,"authors":316,"date":288,"chapterOrder":317,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":319,"stem":320,"title":321,"authors":322,"date":288,"chapterOrder":323,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0400-si-da-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F0400-四大通信","四大通信",[7],"0400",{"path":325,"stem":326,"title":327,"authors":328,"date":288,"chapterOrder":329,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":331,"stem":332,"title":333,"authors":334,"date":288,"chapterOrder":335,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0600-launch","wiki\u002F2023-12-30-ros2-tutorial\u002F0600-Launch","Launch",[7],"0600",{"path":337,"stem":338,"title":339,"authors":340,"date":288,"chapterOrder":341,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0700-hui-su-rosbag2","wiki\u002F2023-12-30-ros2-tutorial\u002F0700-回溯rosbag2","回溯rosbag2",[7],"0700",{"path":343,"stem":344,"title":345,"authors":346,"date":288,"chapterOrder":347,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0800-zuo-biao-bian-huan-tf","wiki\u002F2023-12-30-ros2-tutorial\u002F0800-坐标变换TF","坐标变换TF",[7],"0800",{"path":349,"stem":350,"title":351,"authors":352,"date":288,"chapterOrder":353,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":355,"stem":356,"title":357,"authors":358,"date":288,"chapterOrder":359,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":361,"stem":362,"title":363,"authors":364,"date":288,"chapterOrder":365,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-gazeboclassic","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-GazeboClassic","Gezebo Classic",[7],"1100-0100",{"path":367,"stem":368,"title":369,"authors":370,"date":288,"chapterOrder":371,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":373,"stem":374,"title":375,"authors":376,"date":288,"chapterOrder":377,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":379,"stem":380,"title":381,"authors":382,"date":288,"chapterOrder":383,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":385,"stem":386,"title":387,"authors":388,"date":288,"chapterOrder":389,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-gezebo-fang-zhen-ping-tai","wiki\u002F2023-12-30-ros2-tutorial\u002F1100-Gezebo仿真平台","Gezebo仿真平台",[7],"1100",{"path":391,"stem":392,"title":393,"authors":394,"date":288,"chapterOrder":395,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":397,"stem":398,"title":399,"authors":400,"date":288,"chapterOrder":401,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":403,"stem":404,"title":405,"authors":406,"date":288,"chapterOrder":407,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-humble2jazzy","wiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-Humble2Jazzy","Humble与Jazzy导航的差异",[7],"1200-0300",{"path":409,"stem":410,"title":411,"authors":412,"date":288,"chapterOrder":413,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":415,"stem":416,"title":417,"authors":418,"date":288,"chapterOrder":419,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":421,"stem":422,"title":423,"authors":424,"date":288,"chapterOrder":425,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":427,"stem":428,"title":429,"authors":430,"date":288,"chapterOrder":431,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":433,"stem":434,"title":435,"authors":436,"date":288,"chapterOrder":437,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":439,"stem":440,"title":441,"authors":442,"date":288,"chapterOrder":443,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":445,"stem":446,"title":447,"authors":448,"date":288,"chapterOrder":449,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":451,"stem":452,"title":453,"authors":454,"date":288,"chapterOrder":455,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":457,"stem":458,"title":459,"authors":460,"date":288,"chapterOrder":461,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":463,"stem":464,"title":465,"authors":466,"date":288,"chapterOrder":467,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":469,"stem":470,"title":471,"authors":472,"date":288,"chapterOrder":473,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":475,"stem":476,"title":477,"authors":478,"date":288,"chapterOrder":479,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":481,"stem":482,"title":483,"authors":484,"date":288,"chapterOrder":485,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":487,"stem":488,"title":489,"authors":490,"date":288,"chapterOrder":491,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":493,"stem":494,"title":495,"authors":496,"date":288,"chapterOrder":497,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":499,"stem":500,"title":501,"authors":502,"date":288,"chapterOrder":503,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":505,"stem":506,"title":471,"authors":507,"date":288,"chapterOrder":508,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":510,"stem":511,"title":512,"authors":513,"date":288,"chapterOrder":514,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":516,"stem":517,"title":471,"authors":518,"date":288,"chapterOrder":519,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":521,"stem":522,"title":523,"authors":524,"date":288,"chapterOrder":525,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":527,"stem":528,"title":529,"authors":530,"date":288,"chapterOrder":531,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-linux-ying-jian-tong-xin","wiki\u002F2023-12-30-ros2-tutorial\u002F1300-Linux硬件通信","Linux硬件通信",[7],"1300",{"path":533,"stem":534,"title":535,"authors":536,"date":288,"chapterOrder":537,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":539,"stem":540,"title":541,"authors":542,"date":288,"chapterOrder":543,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":545,"stem":546,"title":547,"authors":548,"date":288,"chapterOrder":549,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":551,"stem":552,"title":553,"authors":554,"date":288,"chapterOrder":555,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":557,"stem":558,"title":559,"authors":560,"date":288,"chapterOrder":561,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":563,"stem":564,"title":565,"authors":566,"date":288,"chapterOrder":567,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":569,"stem":570,"title":571,"authors":572,"date":288,"chapterOrder":573,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-you-hua-ri-zhi","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-优化日志","优化日志",[7],"1400-0500",{"path":575,"stem":576,"title":577,"authors":578,"date":288,"chapterOrder":579,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":581,"stem":582,"title":583,"authors":584,"date":288,"chapterOrder":585,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":587,"stem":588,"title":589,"authors":590,"date":288,"chapterOrder":591,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":593,"stem":594,"title":595,"authors":596,"date":288,"chapterOrder":597,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":599,"stem":600,"title":601,"authors":602,"date":288,"chapterOrder":603,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":605,"stem":606,"title":607,"authors":608,"date":288,"chapterOrder":609,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":611,"stem":612,"title":613,"authors":614,"date":288,"chapterOrder":615,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":617,"stem":618,"title":619,"authors":620,"date":288,"chapterOrder":621,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-ying-jian-ping-tai","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-硬件平台","硬件平台",[7],"1400-0600",{"path":623,"stem":624,"title":625,"authors":626,"date":288,"chapterOrder":627,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":629,"stem":630,"title":631,"authors":632,"date":288,"chapterOrder":633,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":635,"stem":636,"title":637,"authors":638,"date":288,"chapterOrder":639,"chapterDepth":112,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":641,"stem":642,"title":643,"authors":644,"date":288,"chapterOrder":645,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":647,"stem":648,"title":649,"authors":650,"date":288,"chapterOrder":651,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":653,"stem":654,"title":655,"authors":656,"date":288,"chapterOrder":657,"chapterDepth":106,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":659,"stem":660,"title":661,"authors":662,"date":288,"chapterOrder":663,"chapterDepth":64,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":665,"stem":666,"title":667,"authors":668,"date":288,"chapterOrder":669,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-ji-qi-ren-ying-jian","wiki\u002F2023-12-30-ros2-tutorial\u002F1400-机器人硬件","机器人硬件",[7],"1400",{"path":671,"stem":672,"title":673,"authors":674,"date":288,"chapterOrder":675,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1500-ros2-control","wiki\u002F2023-12-30-ros2-tutorial\u002F1500-ROS2_Control","ROS2_Control",[7],"1500",{"path":677,"stem":678,"title":679,"authors":680,"date":288,"chapterOrder":681,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":683,"stem":684,"title":685,"authors":686,"date":288,"chapterOrder":687,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\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":689,"stem":690,"title":691,"authors":692,"date":288,"chapterOrder":693,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1800-microros","wiki\u002F2023-12-30-ros2-tutorial\u002F1800-MicroROS","MicroROS",[7],"1800",{"path":295,"stem":297,"title":5,"authors":695,"date":288,"chapterOrder":287,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},[7],{"path":697,"stem":698,"title":699,"authors":700,"date":288,"chapterOrder":701,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":293},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F2000-opencv","wiki\u002F2023-12-30-ros2-tutorial\u002F2000-OpenCV","OpenCV",[7],"2000",{"path":290,"stem":703,"title":704,"authors":705,"date":288,"chapterOrder":706,"chapterDepth":286,"docKey":289,"docRoot":290,"docTitle":291,"isWikiDoc":206,"isWikiIndex":206},"wiki\u002F2023-12-30-ros2-tutorial\u002Findex","ROS2机器人操作系统教程",[7],null,[708,710,713,716],{"name":7,"image":709},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":711,"image":712},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":714,"image":715},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":717,"image":718},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431904673]