|
|
|
ROS 2·Î ½ÃÀÛÇÏ´Â ·Îº¿ ÇÁ·Î±×·¡¹Ö
|
|
|
Ç¥À±¼®
¤Ó
·çºñÆäÀÌÆÛ
|
|
|
|
- Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
-
-
-
ÀÌ Ã¥Àº ROS °ø½Ä Ç÷§ÆûÀÎ TurtleBot3ÀÇ °³¹ßÀÚÀÌÀÚ 10¿© ³â°£ ROS ±â¹Ý ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇÑ ·Îº¸Æ½½º ¿£Áö´Ï¾îÀÎ ÇÊÀÚµéÀÌ ½Ç¹«¿¡¼ ¾òÀº °æÇè°ú Ä¿¹Â´ÏƼ È°µ¿À» ¹ÙÅÁÀ¸·Î ÀÛ¼ºÇÑ ROS ·Îº¿ ÇÁ·Î±×·¡¹Ö Áöħ¼ÀÌ´Ù. Çѱ¹ ROS Ä¿¹Â´ÏƼ¿¡¼ ´Ù¾çÇÑ ±³À°°ú ¼¼¹Ì³ª, °ø°³°Á¸¦ ÁøÇàÇÏ¸ç ¹ÞÀº Çǵå¹éÀ» ÅëÇØ µ¶ÀÚµéÀÇ ÇнÀ ¸ñÀû°ú ÀÇ°ßÀ» ¹Ý¿µÇÏ¿´´Ù.
"ROS 2 ·Îº¿ ÇÁ·Î±×·¡¹Ö"Àº Áö³ 2015³â ÃâÆÇÇÑ "ROS ·Îº¿ ÇÁ·Î±×·¡¹Ö"ÀÇ Æǿø²ÀÌ´Ù. ROS 2·Î ·Îº¿ ÇÁ·Î±×·¡¹Ö¿¡ ÀÔ¹®ÇÏ´Â µ¶ÀÚµéÀ» À§ÇØ ROS ¼Ò°³ºÎÅÍ ROS 2 ±âº» ÇÁ·Î±×·¡¹Ö, ROS 2 ½ÉÈ ÇÁ·Î±×·¡¹ÖÀ¸·Î ³»¿ëÀ» ¼¼ºÐÈÇÏ¿© ÀÍÈú ¼ö ÀÖ°Ô Çß´Ù. ¶Ç ROS 1À» »ç¿ëÇÏ´ø ±âÁ¸ °³¹ßÀÚµéÀ» À§ÇØ ROS 2 ÇÁ·Î±×·¡¹ÖÀÇ ¸ðµç °ÍÀ» Ãæ½ÇÈ÷ ´ã¾Ò´Ù. ÀÌ Ã¥ÀÌ ¿©·¯ºÐÀ» ROS 2¿ÍÀÇ Áñ°Å¿î ¿©Á¤À¸·Î À̲ø¾î ROS ±â¹ÝÀÇ ¸ÚÁø ·Îº¿µéÀÌ ³ª¿À±â¸¦ ±â´ëÇغ»´Ù.
-
-
ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë
- ROS¶õ ¹«¾ùÀΰ¡?
- ROS 2ÀÇ Áß¿ä ÄܼÁÆ®¿Í Ư¡, ÅäÇÈ, ¼ºñ½º, ¾×¼Ç, ÆĶó¹ÌÅÍ, ºôµå ½Ã½ºÅÛ ¼Ò°³ µî
- ROS 2 ±âº» ÇÁ·Î±×·¡¹Ö(ÄÚµå ½ºÅ¸ÀϺÎÅÍ ÅäÇÈ, ¼ºñ½º, ¾×¼Ç, ÆĶó¹ÌÅÍ µî ±âÃÊ ÇÁ·Î±×·¡¹Ö ÇнÀ)
- ROS 2 ½ÉÈ ÇÁ·Î±×·¡¹Ö(·Î±ë, CLI, GUI, QoS, Component, Life cycle, Security µî ROS 2ÀÇ °í±Þ ±â´É ÇнÀ)
µ¶ÀÚ ÇѸ¶µð
ROS¿¡ ´ëÇÑ °øºÎ¸¦ ÇÑ´Ù¸é ²À Àоî¾ß ÇÒ Ã¥ 1¼øÀ§! ROS 1¿¡ À̾î ROS 2¿¡ ´ëÇؼ Àß Á¤¸®ÇÏ¿© ÀÌÇØÇÒ ¼ö ÀÖ´Â ÀÌ Ã¥ÀÌ Åº»ýÇϱâ±îÁö ÀúÀÚµéÀÇ ³ë°í¿¡ °¨»çµå¸³´Ï´Ù. - ±èÀçÈÆ -
ÀÚ·á°¡ º°·Î ¾ø°í ¾î·Á¿ö¼ ROS¸¦ °øºÎÇϱâ Á¤¸» Èûµé¾ú´Âµ¥, ÇÑ Áٱ⠺ûÀÌ µÇ¾ú´ø °Á¿´½À´Ï´Ù °¨»çÇÕ´Ï´Ù! - Á¤¹ÎÀç -
Çѱ¹ ¿ÀǼҽº ·Îº¿ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÇ ¹®ÀÍÁ¡ÀΠǥÀ±¼® ¹Ú»ç´ÔÀÇ µÎ ¹ø° ¸ñȾ¾, ROS 2 ·Îº¿ ÇÁ·Î±×·¡¹Ö! Á¤¸» ±â´ëµË´Ï´Ù. - Á¤È¯¼® -
-
-
1ºÎ ROS 2 ¼Ò°³
1Àå ROS 2 ¼Ò°³
__1.1. ·Îº¿ °³¹ßÀ» À§ÇÑ Åø
__1.2. ¸ÞŸ ¿î¿µÃ¼Á¦
__1.3. ROSÀÇ ¸ñÀû
__1.4. ROSÀÇ ±¸¼º
__1.5. ROSÀÇ ¿ª»ç
__1.6. ROS ¹öÀü
__1.7. ¹öÀü ÁÖ±â
__1.8. ¹öÀü ¼±ÅÃ
2Àå ROS 2 ±â¹Ý ·Îº¿ °³¹ß¿¡ ÇÊ¿äÇÑ Á¤º¸
__2.1. Ä¿¹Â´ÏƼ Áß½ÉÀÇ °³¹ß ¹®È
__2.2. Áñ°Üã´Â ROS 2 Á¤º¸ ¹× °³¹ß ÀÚ·á
__2.3. ROS Ä¿¹Â´ÏƼ °Ô½ÃÆÇ
__2.4. ROS ¹®¼
__2.5. ROS 2 ¼Ò½ºÄÚµå
__2.6. ROS 2 ÆÐÅ°Áö ¹èÆ÷ ÇöȲ
__2.7. ROS ÁúÀÇÀÀ´ä
__2.8. ±âŸ
3Àå ROS 2 °³¹ßȯ°æ ±¸Ãà
__3.1. °³¹ßȯ°æ
__3.2. ±âº» ¿î¿µÃ¼Á¦ ¼³Ä¡
__3.3. ·Îº¿ ¿î¿µÃ¼Á¦ ¼³Ä¡
__3.4. ROS °³¹ß Åø ¼³Ä¡
__3.5. ROS 2 ºôµå Å×½ºÆ®
__3.6. Run commands ¼³Á¤
__3.7. ÅëÇÕ °³¹ßȯ°æ(IDE) ¼³Ä¡
__3.8. ROS 2 »èÁ¦
4Àå ¿Ö? ROS 2·Î °¡¾ßÇϴ°¡?
__4.1. ¿Ö? ROS 2·Î °¡¾ßÇϴ°¡?
__4.2. ´ë¼¼´Â ÀÌÁ¦ ROS 2!
5Àå ROS 2ÀÇ Áß¿ä ÄܼÁÆ®
__5.1. Why ROS 2?
6Àå ROS 1°ú 2ÀÇ Â÷ÀÌÁ¡À¸·Î ¾Ë¾Æº¸´Â ROS 2ÀÇ Æ¯Â¡
__6.1. ROS 2 °³¹ßÀÇ Çʿ伺
__6.2. ROS 1°ú ROS 2ÀÇ Â÷ÀÌÁ¡
__6.3. ROS 2ÀÇ Æ¯Â¡
7Àå ROS 2¿Í DDS
__7.1. ROS 2¿Í DDS
...
__7.2. DDS¶õ?
__7.3. DDSÀÇ Æ¯Â¡
__7.4. ROS¿¡¼ÀÇ »ç¿ë¹ý
8Àå DDSÀÇ QoS
__8.1. DDSÀÇ ¼ºñ½º Ç°Áú(QoS, Quality of Service)
__8.2. QoSÀÇ Á¾·ù
__8.3. ROS 2¿¡¼ »ç¿ëµÇ´Â QoS ¿É¼Ç
__8.4. rmw_qos_profile »ç¿ë°ú À¯Àú QoS ÇÁ·ÎÆÄÀÏ »ç¿ë
__8.5. QoS Å×½ºÆ®
9Àå ÆÐÅ°Áö ¼³Ä¡¿Í ³ëµå ½ÇÇà
__9.1. Turtlesim ÆÐÅ°Áö ¼³Ä¡
__9.2. TurtlesimÀ̶õ?
__9.3. Turtlesim ÆÐÅ°Áö¿Í ³ëµå
__9.4. Turtlesim ÆÐÅ°ÁöÀÇ ³ëµå ½ÇÇà
__9.5. ³ëµå, ÅäÇÈ, ¼ºñ½º, ¾×¼ÇÀÇ Á¶È¸
__9.6. rqt_graph·Î º¸´Â ³ëµå¿Í ÅäÇÈÀÇ ±×·¡ÇÁ ºä
10Àå ROS 2 ³ëµå¿Í µ¥ÀÌÅÍ Åë½Å
__10.1. ³ëµå¿Í ¸Þ½ÃÁö Åë½Å
__10.2. ³ëµå ½ÇÇà(ros2 run)
__10.3. ³ëµå ¸ñ·Ï(ros2 node list)
__10.4. ³ëµå Á¤º¸(ros2 node info)
11Àå ROS 2 ÅäÇÈ
__11.1. ÅäÇÈ
__11.2. ÅäÇÈ ¸ñ·Ï È®ÀÎ(ros2 topic list)
__11.3. ÅäÇÈ Á¤º¸ È®ÀÎ(ros2 topic info)
__11.4. ÅäÇÈ ³»¿ë È®ÀÎ(ros2 topic echo)
__11.5. ÅäÇÈ ´ë¿ªÆø È®ÀÎ(ros2 topic bw)
__11.6. ÅäÇÈ ÁÖ±â È®ÀÎ(ros2 topic hz)
__11.7. ÅäÇÈ Áö¿¬ ½Ã°£ È®ÀÎ(ros2 topic delay)
__11.8. ÅäÇÈ ÆÛºí¸®½Ã(ros2 topic pub)
__11.9. bag ±â·Ï(ros2 bag record)
__11.10. bag Á¤º¸(ros2 bag info)
__11.11. bag Àç»ý(ros2 bag play)
12Àå ROS 2 ¼ºñ½º
__12.1. ¼ºñ½º
__12.2. ¼ºñ½º ¸ñ·Ï È®ÀÎ(ros2 service list)
__12.3. ¼ºñ½º ÇüÅ ȮÀÎ(ros2 service type)
__12.4. ¼ºñ½º ã±â(ros2 service find)
__12.5. ¼ºñ½º ¿äû(ros2 service call)
13Àå ROS 2 ¾×¼Ç
__13.1. ¾×¼Ç
__13.2. ¾×¼Ç ¼¹ö ¹× Ŭ¶óÀ̾ðÆ®
__13.3. ³ëµå Á¤º¸(ros2 node info)
__13.4. ¾×¼Ç ¸ñ·Ï(ros2 action list -t)
__13.5. ¾×¼Ç Á¤º¸(ros2 action info)
__13.6. ¾×¼Ç ¸ñÇ¥(action goal) Àü´Þ
14Àå ROS 2 ÀÎÅÍÆäÀ̽º
__14.1. ROS 2 ÀÎÅÍÆäÀ̽º
__14.2. ¸Þ½ÃÁö ÀÎÅÍÆäÀ̽º(Message interface, msg)
__14.3. ¼ºñ½º ÀÎÅÍÆäÀ̽º(Service interface, srv)
__14.4. ¾×¼Ç ÀÎÅÍÆäÀ̽º(Action interface, action)
15Àå ROS 2 ÅäÇÈ/¼ºñ½º/¾×¼Ç Á¤¸® ¹× ºñ±³
__15.1. ÅäÇÈ, ¼ºñ½º, ¾×¼Ç ºñ±³
16Àå ROS 2 ÆĶó¹ÌÅÍ
__16.1. ÆĶó¹ÌÅÍ
__16.2. ÆĶó¹ÌÅÍ ¸ñ·Ï È®ÀÎ(ros2 param list)
__16.3. ÆĶó¹ÌÅÍ ³»¿ë È®ÀÎ(ros2 param describe)
__16.4. ÆĶó¹ÌÅÍ Àбâ(ros2 param get)
__16.5. ÆĶó¹ÌÅÍ ¾²±â(ros2 param set)
__16.6. ÆĶó¹ÌÅÍ ÀúÀå(ros2 param dump)
__16.7. ÆĶó¹ÌÅÍ »èÁ¦(ros2 param delete)
17Àå ROS 2 µµ±¸¿Í CLI ¸í·É¾î
__17.1. ROS µµ±¸
__17.2. ROS 2 CLI ¸í·É¾î
__17.3. ROS 2 CLI »ç¿ë¹ý
__17.4. ROS 2 CLI Á¾·ù¿Í °¢ sub-verbsÀÇ ±â´É
__17.5. Áö¼Ó °³¹ßµÇ°í ÀÖ´Â ROS 2 CLI
18Àå ROS 2 GUI °³¹ßÀ» À§ÇÑ RQt
__18.1. ROSÀÇ Á¾ÇÕ GUI Åø RQt
__18.2. RQt ÇÁ·¹ÀÓ¿öÅ©
__18.3. RQt ¼³Ä¡ ¹× ½ÇÇà
__18.4. RQt Ç÷¯±×ÀÎÀÇ Á¾·ù
__18.5. RQt »ç¿ë ¿¹½Ã
__18.6. ROSÀÇ CLI Åø°ú GUI Åø
19Àå ROS 2ÀÇ Ç¥ÁØ ´ÜÀ§
__19.1. ROS 2ÀÇ Ç¥ÁØ ´ÜÀ§ÀÇ Çʿ伺
__19.2. ROS 2ÀÇ Ç¥ÁØ ´ÜÀ§
__19.3. ROS 2ÀÇ Ç¥ÁØ ´ÜÀ§ »ç¿ë
20Àå ROS 2ÀÇ ÁÂÇ¥ Ç¥Çö
__20.1. ROS 2ÀÇ ÁÂÇ¥ Ç¥Çö ÅëÀÏÀÇ Çʿ伺
__20.2. ÁÂÇ¥ Ç¥ÇöÀÇ ±âº» ±ÔÄ¢
__20.3. ÁÂÇ¥ Ç¥ÇöÀÇ Ãà ¹æÇâ(Axis Orientation) ±ÔÄ¢
__20.4. ÁÂÇ¥ Ç¥ÇöÀÇ È¸Àü Ç¥Çö ±ÔÄ¢
21Àå ROS 2ÀÇ ½Ã°£
__21.1. ½Ã°è(Clock)¿Í ½Ã°£(Time)
__21.2. ½Ã°£ Ãß»óÈ(Time Abstractions)
__21.3. Time API
22Àå ROS 2ÀÇ ÆÄÀÏ ½Ã½ºÅÛ
__22.1. ÆÄÀÏ ½Ã½ºÅÛ
__22.2. ÆÐÅ°Áö¿Í ¸ÞŸÆÐÅ°Áö
__22.3. ¹ÙÀ̳ʸ® ¼³Ä¡¿Í ¼Ò½ºÄÚµå ¼³Ä¡
__22.4. ±âº» ¼³Ä¡ Æú´õ¿Í »ç¿ëÀÚ ÀÛ¾÷ Æú´õ
23Àå ROS 2ÀÇ ºôµå ½Ã½ºÅÛ°ú ºôµå Åø
__23.1. ºôµå ½Ã½ºÅÛ°ú ºôµå Åø
__23.2. ºôµå ½Ã½ºÅÛ(Build system)
__23.3. ºôµå Åø(Build tools)
__23.4. ÆÐÅ°Áö »ý¼º
__23.5. ÆÐÅ°Áö ºôµå
__23.6. ºôµå ½Ã½ºÅÛ¿¡ ÇÊ¿äÇÑ ºÎ°¡ ±â´É
24Àå ROS 2ÀÇ ÆÐÅ°Áö ÆÄÀÏ
__24.1. ÆÐÅ°Áö ÆÄÀÏ
__24.2. ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(package.xml)
__24.3. ºôµå ¼³Á¤ ÆÄÀÏ(CMakeLists.txt)
__24.4. ÆÄÀ̽ã ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(setup.py)
__24.5. ÆÄÀ̽ã ÆÐÅ°Áö ȯ°æ¼³Á¤ ÆÄÀÏ(setup.cfg)
__24.6. RQt Ç÷¯±×ÀÎ ¼³Á¤ ÆÄÀÏ(plugin.xml)
__24.7. ÆÐÅ°Áö º¯°æ·Î±× ÆÄÀÏ(CHANGELOG.rst)
__24.8. ¶óÀ̼±½º ÆÄÀÏ(LICENSE)
__24.9. ÆÐÅ°Áö ¼³¸í ÆÄÀÏ(README.md)
2ºÎ ROS 2 ±âº» ÇÁ·Î±×·¡¹Ö
1Àå ROS ÇÁ·Î±×·¡¹Ö ±ÔÄ¢(ÄÚµå ½ºÅ¸ÀÏ)
__1.1. ÄÚµå ½ºÅ¸ÀÏ °¡À̵å
__1.2. ±âº» À̸§ ±ÔÄ¢
__1.3. C++ Style
__1.4. Python Style
__1.5. ´Ù¸¥ ¾ð¾î
2Àå ROS ÇÁ·Î±×·¡¹Ö ±âÃÊ(ÆÄÀ̽ã)
__2.1. ROSÀÇ Hello World, rclpy ¹öÀü
__2.2. ÆÐÅ°Áö »ý¼º
__2.3. ÆÐÅ°Áö ¼³Á¤
__2.4. ÆÛºí¸®¼Å ³ëµå ÀÛ¼º
__2.5. ¼ºê½ºÅ©¶óÀ̹ö ³ëµå ÀÛ¼º
__2.6. ºôµå
__2.7. ½ÇÇà
3Àå ROS ÇÁ·Î±×·¡¹Ö ±âÃÊ(C++)
__3.1. ROSÀÇ Hello World, rclcpp¹öÀü
__3.2. ÆÐÅ°Áö »ý¼º
__3.3. ÆÐÅ°Áö ¼³Á¤
__3.4. ÆÛºí¸®¼Å ³ëµå ÀÛ¼º
__3.5. ¼ºê½ºÅ©¶óÀ̹ö ³ëµå ÀÛ¼º
__3.6. ºôµå
__3.7. ½ÇÇà
4Àå ROS 2 Tips
__4.1. ¼³Á¤ ½ºÅ©¸³Æ®(setup script)
__4.2. setup.bash vs local_setup.bash
__4.3. colcon_cd
__4.4. ROS_DOMAIN_ID vs Namespace
__4.5. colcon°ú vcstool ¸í·É¾î ÀÚµ¿ ¿Ï¼º ±â´É Ãß°¡
5Àå ÅäÇÈ, ¼ºñ½º, ¾×¼Ç ÀÎÅÍÆäÀ̽º
__5.1. ROS 2 ÀÎÅÍÆäÀ̽º(Interface) ½Å±Ô ÀÛ¼º
__5.2. ÀÎÅÍÆäÀ̽º ÆÐÅ°Áö ¸¸µé±â
__5.3. ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(package.xml)
__5.4. ºôµå ¼³Á¤ ÆÄÀÏ(CMakeLists.txt)
__5.5. ºôµåÇϱâ
6Àå ROS 2 ÆÐÅ°Áö ¼³°è(ÆÄÀ̽ã)
__6.1. ÆÐÅ°Áö ¼³°è
__6.2. ³ëµå ÀÛ¼º
__6.3. ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(package.xml)
__6.4. ÆÄÀ̽ã ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(setup.py)
__6.5. ¼Ò½ºÄÚµå ³»·Á¹Þ±â ¹× ºôµå
__6.6. ½ÇÇà
7Àå ÅäÇÈ ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã)
__7.1. ÅäÇÈ
__7.2. ÅäÇÈ ÆÛºí¸®¼Å ÄÚµå
__7.3. ÅäÇÈ ¼ºê½ºÅ©¶óÀ̹ö ÄÚµå
__7.4. ³ëµå ½ÇÇà ÄÚµå
8Àå ¼ºñ½º ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã)
__8.1. ¼ºñ½º
__8.2. ¼ºñ½º ¼¹ö ÄÚµå
__8.3. ¼ºñ½º Ŭ¶óÀ̾ðÆ® ÄÚµå
__8.4. ³ëµå ½ÇÇà ÄÚµå
9Àå ¾×¼Ç ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã)
__9.1. ¾×¼Ç
__9.2. ¾×¼Ç ¼¹ö ÄÚµå
__9.3. ¾×¼Ç Ŭ¶óÀ̾ðÆ® ÄÚµå
__9.4. ³ëµå ½ÇÇà ÄÚµå
10Àå ÆĶó¹ÌÅÍ ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã)
__10.1. ÆĶó¹ÌÅÍ
__10.2. ÆĶó¹ÌÅÍ ¼³Á¤
__10.3. ÆĶó¹ÌÅÍ »ç¿ë ¹æ¹ý(CLI)
__10.4. ÆĶó¹ÌÅÍ »ç¿ë ¹æ¹ý(¼ºñ½º Ŭ¶óÀ̾ðÆ®)
__10.5. ±âº» ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý
11Àå ½ÇÇà ÀÎÀÚ ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã)
__11.1. ½ÇÇà ÀÎÀÚ
__11.2. ROS 2¿¡¼ÀÇ ½ÇÇà ÀÎÀÚ Ã³¸®
__11.3. ½ÇÇà ÀÎÀÚÀÇ ±¸¹® Çؼ®
__12Àå ROS 2 ÆÐÅ°Áö ¼³°è(C++)
__12.1. ÆÐÅ°Áö ¼³°è
__12.2. ³ëµå ÀÛ¼º
__12.3. ÆÐÅ°Áö ¼³Á¤ ÆÄÀÏ(package.xml)
__12.4. ºôµå ¼³Á¤ ÆÄÀÏ(CMakeLists.txt)
__12.5. ¼Ò½ºÄÚµå ³»·Á¹Þ±â ¹× ºôµå
__12.6. ½ÇÇà
13Àå ÅäÇÈ ÇÁ·Î±×·¡¹Ö(C++)
__13.1. ÅäÇÈ
__13.2. ÅäÇÈ ÆÛºí¸®¼Å ÄÚµå
__13.3. ÅäÇÈ ¼ºê½ºÅ©¶óÀ̹ö ÄÚµå
__13.4. ³ëµå ½ÇÇà ÄÚµå
14Àå ¼ºñ½º ÇÁ·Î±×·¡¹Ö(C++)
__14.1. ¼ºñ½º
__14.2. ¼ºñ½º ¼¹ö ÄÚµå
__14.3. ¼ºñ½º Ŭ¶óÀ̾ðÆ® ÄÚµå
__14.4. ³ëµå ½ÇÇà ÄÚµå
15Àå ¾×¼Ç ÇÁ·Î±×·¡¹Ö(C++)
__15.1. ¾×¼Ç
__15.2. ¾×¼Ç ¼¹ö ÄÚµå
__15.3. ¾×¼Ç Ŭ¶óÀ̾ðÆ® ÄÚµå
__15.4. ³ëµå ½ÇÇà ÄÚµå
16Àå ÆĶó¹ÌÅÍ ÇÁ·Î±×·¡¹Ö(C++)
__16.1. ÆĶó¹ÌÅÍ
__16.2. ÆĶó¹ÌÅÍ ¼¹ö¿Í ÃʱâÈ
__16.3. ÆĶó¹ÌÅÍ Å¬¶óÀ̾ðÆ®
17Àå ½ÇÇà ÀÎÀÚ ÇÁ·Î±×·¡¹Ö(C++)
__17.1. ½ÇÇà ÀÎÀÚ
__17.2. ½ÇÇà ÀÎÀÚ ÄÚµå
__17.3. ROS 2 ÆĶó¹ÌÅÍ¿Í ½ÇÇà ÀÎÀÚ
18Àå ·±Ä¡ ÇÁ·Î±×·¡¹Ö(ÆÄÀ̽ã, C++)
__18.1. ROS 2 Launch System
__18.2. launch ÀÛ¼º
__18.3. ÆÐÅ°Áö ºôµå
3ºÎ ROS 2 ½ÉÈ ÇÁ·Î±×·¡¹Ö
1Àå Logging
__1.1. ·Î±×(Log)
__1.2. ·Î±× ¼³Á¤
__1.3. ¿¹Á¦ ÄÚµå
2Àå ROS 2 CLI
__2.1. ROS 2 CLI
__2.2. ROS 2 CLI ½Ç½À
__2.3. ROS 2 CLIÀÇ ºü¸¥ ½ÇÇà
__2.4. CLI ¸í·É¾î¿¡¼ ROS arguments »ç¿ëÇϱâ
__2.5. ½Å±Ô ROS 2 CLI ÀÛ¼º ¹æ¹ý
3Àå Intra-process communication
__3.1. ROS Node¿Í Nodelets
__3.2. Intra-proces communication
__3.3. µ¥¸ð ÄÚµå
4Àå QoS
__4.1. QoS(Quality of Service)
__4.2. Topic, Service, ActionÀÇ QoS ¼³Á¤
__4.3. QoS ½Ç½À
__4.4. À¯¿ëÇÑ QoS ¿¹Á¦
5Àå Component
__5.1. Á¤Àû ¸µÅ·°ú µ¿Àû ¸µÅ·
__5.2. µ¿Àû ·Îµù°ú ROS 2 Component
__5.3. µ¥¸ð ÄÚµå
__5.4. ½ÇÇà ¹æ¹ý
6Àå RQt plugin
__6.1. RQt
__6.2. RQt Ç÷¯±×ÀÎ(RQt plugin)
__6.3. RQt °³¹ßȯ°æ
__6.4. RQt Ç÷¯±×ÀÎ ÀÛ¼º ¼ø¼
__6.5. RQt ¿¹Á¦ÀÇ ±¸¼º
__6.6. RQt ¿¹Á¦ UI »ìÆ캸±â
__6.7. RQt ¿¹Á¦ ¼³Á¤ ÆÄÀÏ »ìÆ캸±â
__6.8. RQt ¿¹Á¦ ¼Ò½ºÄÚµå »ìÆ캸±â
__6.9. RQt Ç÷¯±×ÀÎ ¿¹Á¦ ½ÇÇà
__6.10. ´Ù¸¥ ³ëµå¿Í RQt Ç÷¯±×ÀÎ ¿¬µ¿ ¿¹Á¦ ½ÇÇà
7Àå Lifecycle
__7.1. ³ëµå °ü¸®
__7.2. Lifecycle
__7.3. µ¥¸ð ÄÚµå
8Àå Security
__8.1. ROS 2ÀÇ º¸¾È(Security)
__8.2. SROS2(Secure Robot Operating System 2)
__8.3. ROS 2ÀÇ ÀÎÁõ, ¾×¼¼½º Á¦¾î, ¾ÏÈ£È ±â´É
__8.4. º¸¾È vs ¼º´É
__8.5. ROS 2 Robotic Systems Threat Model
9Àå Real-time
__9.1. Real-timeÀÇ Á¤ÀÇ
__9.2. Real-time¿¡ ´ëÇÑ ¹è°æ Áö½Ä
__9.3. ROS 2 Real-time
__9.4. µ¥¸ð ÄÚµå
-
-
|
Ç¥À±¼® [Àú]
|
|
-
ÀúÀÚ Ç¥À±¼®Àº ·Îº¸Æ¼Áî ¿¬±¸¿øÀ¸·Î ¼ºñ½º ·Îº¿À» À§ÇÑ ·Îº¿ ½Ã½ºÅÛÀ» ¿¬±¸°³¹ß ÁßÀÌ´Ù. ·Îº¿Àº ¿ì¸®¿¡°Ô ¹«¾ùÀΰ¡¿¡ ´ëÇØ Ç×»ó °í¹ÎÇÏ¸ç ¿ì¸® »ýÈ°¿¡ ´õ °¡±îÀÌ °¥ ¼ö ÀÖµµ·Ï ³ë·ÂÇÏ°í ÀÖ´Ù. ±¤¿î´ëÇб³ ÀüÀÚ°øÇаú ÇкΠÁ¹¾÷ ÈÄ Çѱ¹°úÇбâ¼ú¿¬±¸¿ø¿¡¼ ±Ù¹«Çß¾ú°í ÀϺ» Å¥½´´ëÇп¡¼ Á¤º¸Áö´É°øÇÐÀ» Àü°øÀ¸·Î ¼®»ç¿Í ¹Ú»çÇÐÀ§¸¦ ¹Þ¾Ò´Ù. 2011³â ROS 1 Diamondback ¹öÀüºÎÅÍ ROS¸¦ »ç¿ëÇϱ⠽ÃÀÛÇÏ¿© Áö±ÝÀÇ ROS 2±îÁö 10¿© ³â°£ÀÇ ROS °³¹ß °æÇèÀ» °¡Áö°í ÀÖÀ¸¸ç ROS °ø½Ä ·Îº¿ Ç÷§ÆûÀÎ TurtleBot3¸¦ °³¹ßÇÏ¿© ROS º¸±Þ¿¡ ¾ÕÀå¼¹´Ù. 2018³âºÎÅÍ 2019³âµµ¿¡ °ÉÃļ ROS 2 TSC(Technical Steering Committee) ¸â¹ö·Î È°µ¿Çß°í, Çѱ¹·Îº¿»ê¾÷ÁøÈï¿ø »ê¾÷Àη¾缺 °»ç·Î 4³â°£ È°µ¿Çϸç ÀçÁ÷ÀÚ ´ë»óÀ¸·Î ROS ±³À°À» ÁøÇàÇß´Ù. 2011³âºÎÅÍ ²ÙÁØÈ÷ ROS °Á¸¦ ¿Â¶óÀο¡¼ ¿¬ÀçÇÏ°í ÀÖÀ¸¸ç, Çѱ¹¾î, ÀϺ»¾î, Áß±¹¾î, ¿µ¾î·Î ROS °ü·Ã ¼ÀûÀ» ´Ù¼ö Àú¼úÇß´Ù. ·Îº¿¿¡ ´ëÇÑ ²ÞÀ» °¡Áø À̵é°ú ÇÔ²² À̾߱⠳ª´©´Â °ÍÀ» Áñ±â¸ç ¿ÀÇ ·Îº¸Æ½½º¸¦ ÁöÇâÇÏ´Â '¿ÀǼҽº ·Îº¿±â¼ú °øÀ¯ Ä¿¹Â´ÏƼ(¿À·ÎÄ«)'¿¡¼ °ø°³°ÁÂ¿Í °ø°³ ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇÏ°í ÀÖ´Ù.
-
-
Àüü 0°³ÀÇ ±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù. |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
»óÇ°À» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳», ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óÇ°¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì |
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
Áß°í»óÇ°ÀÇ ±³È¯ |
Áß°í»óÇ°Àº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆǸŰ¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
¿ÀǸ¶ÄÏ »óÇ°ÀÇ È¯ºÒ |
¿ÀǸ¶ÄÏ»óÇ°¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹ÝÇ° Á¢¼ö½Ã ¹Ýµå½Ã ÆǸÅÀÚ¿Í ÇùÀÇ ÈÄ ¹ÝÇ° Á¢¼ö¸¦ ÇϼžßÇϸç, ¹ÝÇ°Á¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óÇ° È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. |
|
|
|
¹è¼Û¿¹Á¤ÀÏ ¾È³» |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇÏ°í ÀÖ½À´Ï´Ù.
|
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óÇ°> |
»óÇ°Àº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù. |
»óÇ°Àº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
|
»óÇ°Àº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù. |
~
»óÇ°Àº À¯ÅëƯ¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óÇ°À¸·Î ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óÇ°À» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
|
|
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óÇ°> |
~
»óÇ°Àº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇÏ°í, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù. ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óÇ°Àº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² Ç°Àýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
|
|
|
¹è¼Ûºñ ¾È³» |
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û) À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óÇ°À» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óÇ°À» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óÇ°ÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏÄ«Æ®¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öÆ°À» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óÇ°À» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
|
|
Çؿܹè¼Û ¾È³» |
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î Çؿܹè¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
Çؿܹè¼ÛÀº µµ¼/CD/DVD »óÇ°¿¡ ÇÑÇØ ¼ºñ½ºÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ »óÇ°À» ºÏÄ«Æ®¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì Çؿܹè¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù. |
|
¾Ë¾ÆµÎ¼¼¿ä!!! |
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù. |
|
|
|
|