[{"data":1,"prerenderedAt":571},["ShallowReactive",2],{"wiki-page-/en-us/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai":3,"wiki-doc-items-/en-us/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai":203,"language-switcher-data-/en-us/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai":555,"wiki-i18n-paths-/en-us/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai":570},{"id":4,"title":5,"body":6,"canonicalPath":182,"chapter":183,"chapterSort":184,"date":185,"description":176,"docI18nKey":186,"docKey":187,"docRoot":188,"docTitle":189,"extension":190,"i18nKey":191,"isBlogPost":192,"isWikiDoc":193,"isWikiIndex":192,"layout":194,"legacyPath":194,"locale":195,"localeSlug":196,"meta":197,"navigation":193,"path":182,"seo":198,"sourcePath":199,"sourceStem":191,"stem":200,"wikiDepth":201,"__hash__":202},"content/_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-Gezebo仿真平台.md","Gazebo simulation platform",{"type":7,"value":8,"toc":175},"minimark",[9,14,18,21,24,27,33,36,58,61,66,72,77,80,85,88,108,111,116,119,127,130,134,137,140,152,155,158,172],[10,11,13],"h3",{"id":12},"briefly-describe","Briefly describe",[15,16,17],"p",{},"Gazebo is currently divided into two main versions.",[15,19,20],{},"One is the older Gazebo Classic, and the other is the newer Ignition Gazebo (Gazebo Fortress).",[15,22,23],{},"In this post, Gazebo refers to Gazebo Classic, while Ignition Gazebo will be distinguished accordingly.",[15,25,26],{},"Now ROS2 Humble comes with Ignition Gazebo (Gazebo Fortress), but ROS2 Jazzy comes with Gazebo Harmonic. It is recommended to learn Gazebo Harmonic!",[15,28,29],{},[30,31,32],"strong",{},"Scene",[15,34,35],{},"In ROS robot development, physical robots offer the advantages of directness and realism, but they also have some drawbacks, such as:",[37,38,39],"blockquote",{},[40,41,42,46,49,52],"ol",{},[43,44,45],"li",{},"High cost: Developing an autonomous mobile robot requires purchasing expensive hardware components such as sensors, motors, and controllers. Moreover, these components may need frequent replacement or upgrades during the early stages of development, leading to a sharp increase in costs.",[43,47,48],{},"Resource Constraints: Due to limited funding and resources, it may not be possible to simultaneously have multiple physical robots for testing. This can extend the testing cycle and hinder research and development progress.",[43,50,51],{},"Environmental uncertainty and complexity: When testing robots in real-world environments, various unpredictable situations may arise, such as changes in lighting, uneven terrain, electromagnetic interference, etc. These factors can all affect the robot's performance.",[43,53,54,57],{},[30,55,56],{},"Safety Risks",": During testing, if the robot's control algorithm or hardware malfunctions, it may cause the robot to lose control, potentially harming people or the environment.",[15,59,60],{},"In the field of ROS robot development, simulation technology is widely used to compensate for the limitations of testing with physical robots.",[15,62,63],{},[30,64,65],{},"Concept",[15,67,68,71],{},[30,69,70],{},"Robot simulation"," is a process that uses computer models and simulation technology to mimic the behavior and performance of robots in a virtual environment. It involves creating virtual robot and environment models to simulate the robot's perception, control, and motion capabilities, as well as its interactions with the environment and other objects.",[15,73,74],{},[30,75,76],{},"Purpose",[15,78,79],{},"Through simulation testing, the cost and risk of robot development can be reduced, the performance and reliability of robot systems can be improved, and reference and guidance can be provided for actual robot deployment.",[15,81,82],{},[30,83,84],{},"Simulation Advantages:",[15,86,87],{},"Simulation plays a pivotal role in the research and development of robotic systems. Compared to physical robot implementation, simulation offers the following significant advantages during development and testing:",[40,89,90,96,102],{},[43,91,92,95],{},[30,93,94],{},"Low cost:"," Current robot costs remain prohibitively high, often reaching hundreds of thousands, and simulation can significantly reduce costs and minimize risk.",[43,97,98,101],{},[30,99,100],{},"Efficient:"," The setup environment is more diverse and flexible, which can improve testing efficiency and test coverage.",[43,103,104,107],{},[30,105,106],{},"High Security:"," In the simulation environment, there is no need to worry about wear and tear.",[15,109,110],{},"Simulation technology provides developers with a comprehensive testing and verification platform that is both efficient and safe, as well as low-cost.",[15,112,113],{},[30,114,115],{},"Simulation Defects:",[15,117,118],{},"Robots perform quite differently in simulation environments compared to real-world settings. In other words, simulation cannot fully replicate the real physical world, and there are some cases of \"distortion.\" Reasons:",[40,120,121,124],{},[43,122,123],{},"The physics engine used by the simulator is currently unable to fully and accurately simulate the physical conditions of the real world.",[43,125,126],{},"The simulator constructs an absolutely ideal scenario for joint actuators (motors and gearboxes), sensors, and signal communication. It currently does not support simulating actual hardware defects or certain edge-case conditions.",[15,128,129],{},"In short, while simulation technology is important, it cannot fully replace physical testing. Physical testing can verify the accuracy of simulation results and uncover issues that simulations might overlook.",[10,131,133],{"id":132},"chapter-summary","## Chapter Summary",[15,135,136],{},"This chapter mainly introduces the application of the 2D simulation tool stage_ros2 and the 3D simulation tool Ignition Gazebo in ROS2.",[15,138,139],{},"The relevant knowledge points are as follows:",[141,142,143,146,149],"ul",{},[43,144,145],{},"Theoretical knowledge of simulation;",[43,147,148],{},"Using stage_ros2 in ROS2;",[43,150,151],{},"Using Ignition Gazebo in ROS2.",[15,153,154],{},"Through the content above, we introduced the application scenarios and concepts of simulation in ROS2, as well as its advantages and disadvantages compared to physical robots. We also learned how to set up simulation environments and simulate robots using stage_ros2 and Ignition Gazebo, laying the foundation for further study.",[15,156,157],{},"Additionally, besides stage_ros2 and Ignition Gazebo, there are several other software options available for ROS2 simulation. Below are some common choices:",[141,159,160,163,166,169],{},[43,161,162],{},"Webots: Webots is a powerful open-source multi-robot simulation software platform that supports simulation of various robot hardware and sensors, and can be integrated with ROS 2.",[43,164,165],{},"Gazebo Classic: Gazebo Classic is a commonly used simulator in ROS 1, and it can also be connected to and used via ROS 2.",[43,167,168],{},"MORSE: MORSE is an open-source simulator based on Python, used for ROS 2 simulation and robot development, supporting a variety of sensor and behavior models.",[43,170,171],{},"V-REP: V-REP is a powerful multi-robot simulation platform that supports communication with ROS 2, enabling the simulation of various robot models and scenarios.",[15,173,174],{},"These are some common ROS 2 simulation software packages. You can choose the appropriate one based on your specific needs for simulation and development. Please note that some simulators may require adaptation and configuration to be compatible with ROS 2.",{"title":176,"searchDepth":177,"depth":177,"links":178},"",2,[179,181],{"id":12,"depth":180,"text":13},3,{"id":132,"depth":180,"text":133},"/en-us/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","11",11000000,"2023-12-30","wiki/2023-12-30-ros2-tutorial","en-us:2023-12-30-ros2-tutorial","/en-us/wiki/2023-12-30-ros2-tutorial","Ros2 Tutorial","md","wiki/2023-12-30-ros2-tutorial/ch11-Gezebo仿真平台",false,true,null,"en-US","en-us",{},{"title":5,"description":176},"/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-Gezebo仿真平台",1,"07UOomG4qPiel5cUOUSClR68ltZh0hTKbILdQDHARjg",[204,210,216,222,228,234,240,241,247,253,259,265,271,277,283,289,295,301,306,312,317,323,329,335,341,347,353,359,365,371,377,383,389,395,401,407,413,419,425,431,437,443,449,455,461,467,473,479,485,491,497,503,509,515,521,527,533,539,545,551],{"path":205,"stem":206,"title":207,"date":185,"chapter":208,"chapterSort":209,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch1-ros2-jie-shao","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch1-ROS2介绍","Introduction to ROS2","1",1000000,{"path":211,"stem":212,"title":213,"date":185,"chapter":214,"chapterSort":215,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch10-stage-ros2-fang-zhen-ping-tai","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch10-Stage_Ros2仿真平台","Stage_Ros2 Simulation Platform","10",10000000,{"path":217,"stem":218,"title":219,"date":185,"chapter":220,"chapterSort":221,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch11-1-gazeboclassic","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-1-GazeboClassic","Gezebo Classic","11.1",11010000,{"path":223,"stem":224,"title":225,"date":185,"chapter":226,"chapterSort":227,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch11-2-ignitiongazebo","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-2-IgnitionGazebo","Ignition Gazebo（Gazebo Fortress）","11.2",11020000,{"path":229,"stem":230,"title":231,"date":185,"chapter":232,"chapterSort":233,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch11-3-gazebosim","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-3-GazeboSim","Gz Sim（Gazebo Harmonic）","11.3",11030000,{"path":235,"stem":236,"title":237,"date":185,"chapter":238,"chapterSort":239,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch11-4-igngz2gzsim","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch11-4-Igngz2gzsim","Migrate Ign Gazebo to Gz Sim","11.4",11040000,{"path":182,"stem":200,"title":5,"date":185,"chapter":183,"chapterSort":184,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},{"path":242,"stem":243,"title":244,"date":185,"chapter":245,"chapterSort":246,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch12-1-humble-ban-ben","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch12-1-Humble版本","Humble Navigation Simulation","12.1",12010000,{"path":248,"stem":249,"title":250,"date":185,"chapter":251,"chapterSort":252,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch12-2-jazzy-ban-ben","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch12-2-Jazzy版本","Jazzy Navigation Simulation","12.2",12020000,{"path":254,"stem":255,"title":256,"date":185,"chapter":257,"chapterSort":258,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch12-3-humble2jazzy","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch12-3-Humble2Jazzy","Differences in Navigation between Humble and Jazzy","12.3",12030000,{"path":260,"stem":261,"title":262,"date":185,"chapter":263,"chapterSort":264,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch12-ji-qi-ren-dao-hang-navigation2-fang-zhen-pian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch12-机器人导航Navigation2(仿真篇)","Robot Navigation with Navigation2 (Simulation)","12",12000000,{"path":266,"stem":267,"title":268,"date":185,"chapter":269,"chapterSort":270,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-1-boost-aiso","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-1-Boost.Aiso","Boost.Asio库","13.1.1",13010100,{"path":272,"stem":273,"title":274,"date":185,"chapter":275,"chapterSort":276,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-2-ros2-serial-driver","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-2-ros2_serial_driver","ROS2 Serial Driver Library","13.1.2",13010200,{"path":278,"stem":279,"title":280,"date":185,"chapter":281,"chapterSort":282,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-chuan-kou-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-1-串口通信","UART serial communication","13.1",13010000,{"path":284,"stem":285,"title":286,"date":185,"chapter":287,"chapterSort":288,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-1-socketcan","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-1-socketcan","SocketCAN","13.2.1",13020100,{"path":290,"stem":291,"title":292,"date":185,"chapter":293,"chapterSort":294,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-2-ros2-socketcan","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-2-ros2_socketcan","ROS2_SocketCAN","13.2.2",13020200,{"path":296,"stem":297,"title":298,"date":185,"chapter":299,"chapterSort":300,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-can-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-2-CAN通信","CAN communication","13.2",13020000,{"path":302,"stem":303,"title":268,"date":185,"chapter":304,"chapterSort":305,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-3-1-boost-aiso","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-3-1-Boost.Aiso","13.3.1",13030100,{"path":307,"stem":308,"title":309,"date":185,"chapter":310,"chapterSort":311,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-3-tcp-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-3-TCP通信","TCP communication","13.3",13030000,{"path":313,"stem":314,"title":268,"date":185,"chapter":315,"chapterSort":316,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-4-1-boost-aiso","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-4-1-Boost.Aiso","13.4.1",13040100,{"path":318,"stem":319,"title":320,"date":185,"chapter":321,"chapterSort":322,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-4-udp-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-4-UDP通信","UDP communication","13.4",13040000,{"path":324,"stem":325,"title":326,"date":185,"chapter":327,"chapterSort":328,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch13-linux-ying-jian-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch13-Linux硬件通信","Linux hardware communication","13",13000000,{"path":330,"stem":331,"title":332,"date":185,"chapter":333,"chapterSort":334,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-1-ji-qi-ren-zu-cheng","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-1-机器人组成","Robot Composition","14.1",14010000,{"path":336,"stem":337,"title":338,"date":185,"chapter":339,"chapterSort":340,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-1-yuan-cheng-kai-fa-ssh","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-1-远程开发SSH","Remote Development SSH","14.2.1",14020100,{"path":342,"stem":343,"title":344,"date":185,"chapter":345,"chapterSort":346,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-2-yuan-cheng-fang-wen-zhuo-mian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-2-远程访问桌面","Remote Desktop Access","14.2.2",14020200,{"path":348,"stem":349,"title":350,"date":185,"chapter":351,"chapterSort":352,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-gong-kong-ji-zhi-yuan-cheng-kai-fa-huan-jing","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-2-工控机之远程开发环境","Remote Development Environment for Industrial PC","14.2",14020000,{"path":354,"stem":355,"title":356,"date":185,"chapter":357,"chapterSort":358,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-3-gong-kong-ji-zhi-wai-jie-usb-she-bei","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-3-工控机之外接USB设备","External USB Devices for the Industrial PC","14.3",14030000,{"path":360,"stem":361,"title":362,"date":185,"chapter":363,"chapterSort":364,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-4-fen-bu-shi-da-jian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-4-分布式搭建","Distributed setup","14.4",14040000,{"path":366,"stem":367,"title":368,"date":185,"chapter":369,"chapterSort":370,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-5-you-hua-ri-zhi","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-5-优化日志","Optimize logs","14.5",14050000,{"path":372,"stem":373,"title":374,"date":185,"chapter":375,"chapterSort":376,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-1-li-cheng-ji-odom","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-1-里程计Odom","odometry","14.6.1",14060100,{"path":378,"stem":379,"title":380,"date":185,"chapter":381,"chapterSort":382,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-2-guan-xing-ji-imu","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-2-惯性计IMU","Inertial Measurement Unit (IMU)","14.6.2",14060200,{"path":384,"stem":385,"title":386,"date":185,"chapter":387,"chapterSort":388,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-3-ji-guang-lei-da-lidar","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-3-激光雷达LiDAR","LiDAR","14.6.3",14060300,{"path":390,"stem":391,"title":392,"date":185,"chapter":393,"chapterSort":394,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-4-xiang-ji-camera","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-4-相机Camera","Camera","14.6.4",14060400,{"path":396,"stem":397,"title":398,"date":185,"chapter":399,"chapterSort":400,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-5-quan-qiu-ding-wei-gnss","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-5-全球定位GNSS","Global Navigation Satellite System (GNSS)","14.6.5",14060500,{"path":402,"stem":403,"title":404,"date":185,"chapter":405,"chapterSort":406,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-6-shou-bing-joy","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-6-手柄joy","The query \"手柄JOY\" is a bit ambiguous. To help you better, could you please provide more details? For example:","14.6.6",14060600,{"path":408,"stem":409,"title":410,"date":185,"chapter":411,"chapterSort":412,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-7-jian-pan-kong-zhi-jie-dian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-7-键盘控制节点","Keyboard control node","14.6.7",14060700,{"path":414,"stem":415,"title":416,"date":185,"chapter":417,"chapterSort":418,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-ying-jian-ping-tai","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-6-硬件平台","Hardware platform","14.6",14060000,{"path":420,"stem":421,"title":422,"date":185,"chapter":423,"chapterSort":424,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-7-zuo-biao-xi-yu-hua-ti-guan-xi","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-7-坐标系与话题关系","Coordinate System and Topic Relationship","14.7",14070000,{"path":426,"stem":427,"title":428,"date":185,"chapter":429,"chapterSort":430,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-1-lun-shi-li-cheng-ji-biao-ding","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-1-轮式里程计标定","Wheel odometry calibration","14.8.1.1",14080101,{"path":432,"stem":433,"title":434,"date":185,"chapter":435,"chapterSort":436,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-2-lun-shi-li-cheng-ji-yu-imu-rong-he","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-2-轮式里程计与IMU融合","Fusion of Wheel Odometry and IMU","14.8.1.2",14080102,{"path":438,"stem":439,"title":440,"date":185,"chapter":441,"chapterSort":442,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-lun-shi-li-cheng-ji-biao-ding-yu-rong-he","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-1-轮式里程计标定与融合","Wheel odometry calibration and fusion","14.8.1",14080100,{"path":444,"stem":445,"title":446,"date":185,"chapter":447,"chapterSort":448,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-2-ji-guang-lei-da-gong-ju","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-2-激光雷达工具","Lidar Tool","14.8.2",14080200,{"path":450,"stem":451,"title":452,"date":185,"chapter":453,"chapterSort":454,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-3-xiang-ji-shi-yong-jin-jie","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-3-相机使用进阶","Advanced Camera Usage","14.8.3",14080300,{"path":456,"stem":457,"title":458,"date":185,"chapter":459,"chapterSort":460,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-ying-jian-ping-tai-jin-jie","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-8-硬件平台进阶","Advanced Hardware Platform","14.8",14080000,{"path":462,"stem":463,"title":464,"date":185,"chapter":465,"chapterSort":466,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch14-ji-qi-ren-ying-jian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch14-机器人硬件","Robot hardware","14",14000000,{"path":468,"stem":469,"title":470,"date":185,"chapter":471,"chapterSort":472,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch15-ros2-control","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch15-ROS2_Control","ROS2_Control","15",15000000,{"path":474,"stem":475,"title":476,"date":185,"chapter":477,"chapterSort":478,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch16-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch16-Moveit2工业机器人机械臂","MoveIt2 industrial robot arm","16",16000000,{"path":480,"stem":481,"title":482,"date":185,"chapter":483,"chapterSort":484,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch17-ji-qi-ren-dao-hang-navigation2-shi-ti-pian","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch17-机器人导航Navigation2(实体篇)","Robot Navigation with Navigation2 (Physical Robot)","17",17000000,{"path":486,"stem":487,"title":488,"date":185,"chapter":489,"chapterSort":490,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch18-microros","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch18-MicroROS","MicroROS","18",18000000,{"path":492,"stem":493,"title":494,"date":185,"chapter":495,"chapterSort":496,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch19-webots-fang-zhen-ping-tai","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch19-Webots仿真平台","Webots simulation platform","19",19000000,{"path":498,"stem":499,"title":500,"date":185,"chapter":501,"chapterSort":502,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch2-ru-men-cao-zuo","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch2-入门操作","Getting Started","2",2000000,{"path":504,"stem":505,"title":506,"date":185,"chapter":507,"chapterSort":508,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch20-opencv","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch20-OpenCV","OpenCV","20",20000000,{"path":510,"stem":511,"title":512,"date":185,"chapter":513,"chapterSort":514,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch3-gong-zuo-kong-jian-yu-gong-neng-bao","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch3-工作空间与功能包","Workspace and Function Packages","3",3000000,{"path":516,"stem":517,"title":518,"date":185,"chapter":519,"chapterSort":520,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch4-si-da-tong-xin","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch4-四大通信","Four Major Communications","4",4000000,{"path":522,"stem":523,"title":524,"date":185,"chapter":525,"chapterSort":526,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch5-ros2-qi-ta-tong-xin-ji-zhi","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch5-ROS2其他通信机制","ROS2 Other Communication Mechanisms","5",5000000,{"path":528,"stem":529,"title":530,"date":185,"chapter":531,"chapterSort":532,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch6-launch","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch6-Launch","Launch","6",6000000,{"path":534,"stem":535,"title":536,"date":185,"chapter":537,"chapterSort":538,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch7-hui-su-rosbag2","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch7-回溯rosbag2","Replaying rosbag2","7",7000000,{"path":540,"stem":541,"title":542,"date":185,"chapter":543,"chapterSort":544,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch8-zuo-biao-bian-huan-tf","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch8-坐标变换TF","Coordinate Transformation TF","8",8000000,{"path":546,"stem":547,"title":548,"date":185,"chapter":549,"chapterSort":550,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":192},"/en-us/wiki/2023-12-30-ros2-tutorial/ch9-ke-shi-hua-ping-tai-rviz2-yu-urdf-jian-mo-yu-yan","_i18n/en-us/wiki/2023-12-30-ros2-tutorial/ch9-可视化平台RVIZ2与URDF建模语言","Visualization Platform RVIZ2 and URDF Modeling Language","9",9000000,{"path":188,"stem":552,"title":553,"date":185,"chapter":194,"chapterSort":554,"docKey":187,"docRoot":188,"docTitle":189,"isWikiDoc":193,"isWikiIndex":193},"_i18n/en-us/wiki/2023-12-30-ros2-tutorial/index","ROS2 Robot Operating System Tutorial",0,{"variants":556},[557,558,561,564,567],{"path":182,"localeSlug":196,"i18nKey":191},{"path":559,"localeSlug":560,"i18nKey":191},"/zh-hant/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","zh-hant",{"path":562,"localeSlug":563,"i18nKey":191},"/zh-hk/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","zh-hk",{"path":565,"localeSlug":566,"i18nKey":191},"/zh-tw/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","zh-tw",{"path":568,"localeSlug":569,"i18nKey":191},"/zh-cn/wiki/2023-12-30-ros2-tutorial/ch11-gezebo-fang-zhen-ping-tai","zh-cn",[182,199,559,199,562,199,565,199,568,199],1780671799104]