{"id":304816,"date":"2020-06-04T09:00:39","date_gmt":"2020-06-04T09:00:39","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=304816"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=304816","title":{"rendered":"\u0420\u043e\u0431\u043e\u0442-\u0442\u0435\u043b\u0435\u0436\u043a\u0430 2.0. \u0427\u0430\u0441\u0442\u044c 3. \u0412\u043d\u0443\u0442\u0440\u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430, \u043d\u0435\u043c\u043d\u043e\u0433\u043e majordomo"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/502674\/\">\u042d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u0446\u0438\u043a\u043b\u0430 \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u043e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e \u0440\u043e\u0431\u043e\u0442\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 open-source linorobot \u0431\u0443\u0434\u0435\u0442 \u0441\u0443\u0445\u043e\u0432\u0430\u0442\u0430 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u044c\u044e \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0442\u0435\u043e\u0440\u0438\u0438. \u00ab\u0422\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u0439 \u0434\u0440\u0443\u0433, \u0441\u0443\u0445\u0430, \u043d\u043e \u0437\u0435\u043b\u0435\u043d\u0435\u0435\u0442 \u0436\u0438\u0437\u043d\u0438 \u0434\u0440\u0435\u0432\u043e\u00bb, -\u043a\u0430\u043a \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u043a\u043b\u0430\u0441\u0441\u0438\u043a. \u0417\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442 linorobot, \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u0435\u0433\u043e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 ROS, \u0430 \u0442\u0430\u043a\u0436\u0435 n-\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0432 ROS.<br \/>  \u0412 \u043a\u043e\u043d\u0446\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0431\u043e\u043d\u0443\u0441 \u2014 \u043a\u0430\u043a \u043f\u0440\u0438\u043a\u0440\u0443\u0442\u0438\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u043a \u0434\u0440\u0443\u0433\u043e\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0443 \u2014 majordomo \u0438 \u043f\u0440\u0438\u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0441\u0432\u043e\u0435\u0433\u043e \u0436\u0438\u043b\u0438\u0449\u0430 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c.<\/p>\n<p>  \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0446\u0438\u043a\u043b\u0430:<br \/>  <a href=\"https:\/\/habr.com\/ru\/post\/502508\/\">\u0420\u043e\u0431\u043e\u0442-\u0442\u0435\u043b\u0435\u0436\u043a\u0430 2.0. \u0427\u0430\u0441\u0442\u044c 2. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 rviz \u0438 \u0431\u0435\u0437.\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u0440\u0430\u0441\u043e\u0442\u044b \u0432 rviz<\/a><br \/>  <a href=\"https:\/\/habr.com\/ru\/post\/502076\/\">\u0420\u043e\u0431\u043e\u0442-\u0442\u0435\u043b\u0435\u0436\u043a\u0430 2.0. \u0427\u0430\u0441\u0442\u044c 1. \u0410\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u0430\u044f \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0440\u043e\u0431\u043e\u0442\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 ROS<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ap\/al\/ee\/apaleelgmjwbk3xzamkfyt9bwxu.png\"><br \/>  <a name=\"habracut\"><\/a><br \/>  \u0418\u0442\u0430\u043a, \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0440\u043e\u0431\u043e\u0442\u0430 \u043d\u0430 \u043d\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0432\u0441\u0435\u0433\u043e 2 launch-\u0444\u0430\u0439\u043b\u0430:   <\/p>\n<pre><code class=\"bash\">roslaunch linorobot bringup.launch roslaunch linorobot navigate.launch <\/code><\/pre>\n<p>  \u041f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e launch-\u0444\u0430\u0439\u043b \u0432 ROS \u2014 \u044d\u0442\u043e \u0441\u0432\u043e\u0435\u043e\u0431\u0440\u0430\u0437\u043d\u0430\u044f \u0441\u0431\u043e\u0440\u043d\u0430\u044f \u0441\u043e\u043b\u044f\u043d\u043a\u0430 \u0434\u043b\u044f \u043d\u043e\u0434, \u0432 \u043e\u0434\u0438\u043d launch \u0444\u0430\u0439\u043b \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043e\u0434\u043d\u0443 \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u043d\u0438\u0445. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 launch \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430. <\/p>\n<h3>bringup.launch<\/h3>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">bringup.launch<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"xml\">&lt;launch&gt;     &lt;!-- Start ROS communication between the robot's computer and Linorobot base --&gt;     &lt;node pkg=&quot;rosserial_python&quot; name=&quot;rosserial_lino&quot; type=&quot;serial_node.py&quot; output=&quot;screen&quot;&gt;         &lt;param name=&quot;port&quot; value=&quot;\/dev\/linobase&quot; \/&gt;         &lt;param name=&quot;baud&quot; value=&quot;57600&quot; \/&gt;     &lt;\/node&gt;      &lt;!-- IMU Relay and Filter --&gt;     &lt;include file=&quot;$(find linorobot)\/launch\/include\/imu\/imu.launch&quot; \/&gt;      &lt;!-- Publish Linorobot odometry --&gt;     &lt;node pkg=&quot;linorobot&quot; name=&quot;lino_base_node&quot; type=&quot;lino_base_node&quot;&gt;&lt;\/node&gt;      &lt;!-- Publish static transform from base_footprint to base_link --&gt;     &lt;node pkg=&quot;tf2_ros&quot; type=&quot;static_transform_publisher&quot; name=&quot;base_footprint_to_base_link&quot; args=&quot;0 0 0.065 0 0 0  \/base_footprint \/base_link&quot;\/&gt;      &lt;!-- Odom-IMU Extended Kalman Filter--&gt;     &lt;node pkg=&quot;robot_localization&quot; type=&quot;ekf_localization_node&quot; name=&quot;ekf_localization&quot;&gt;         &lt;remap from=&quot;odometry\/filtered&quot; to=&quot;odom&quot; \/&gt;         &lt;rosparam command=&quot;load&quot; file=&quot;$(find linorobot)\/param\/ekf\/robot_localization.yaml&quot; \/&gt;     &lt;\/node&gt;      &lt;!-- Run Linorobot compatible laser drivers --&gt;     &lt;include file=&quot;$(find linorobot)\/launch\/include\/laser.launch&quot; \/&gt; &lt;\/launch&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f 6 \u043d\u043e\u0434, \u0447\u0430\u0441\u0442\u044c \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u044b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 launch-\u0444\u0430\u0439\u043b\u044b:<br \/>   \u2014 rosserial_lino \u2014 \u043d\u043e\u0434\u0430, \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0437\u0430 \u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 teenzy;<br \/>   \u2014 imu \u2014 \u0433\u0438\u0440\u043e\u0441\u043a\u043e\u043f;<br \/>   \u2014 lino_base_node \u2014 \u0431\u0430\u0437\u0430 \u0440\u043e\u0431\u043e\u0442\u0430;<br \/>   \u2014 base_footprint_to_base_link \u2014 \u00ab\u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430\u00bb \u0440\u043e\u0431\u043e\u0442\u0430 \u043a \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0443 (0.065\u043c \u2014 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0442 \u043f\u043e\u043b\u0430 \u0434\u043e \u0431\u0430\u0437\u044b \u0440\u043e\u0431\u043e\u0442\u0430);<br \/>   \u2014 ekf_localization \u2014 \u043d\u043e\u0434\u0430, \u0442\u0440\u0430\u043d\u0441\u043b\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u00ab\u043e\u0447\u0438\u0449\u0435\u043d\u043d\u0443\u044e\u00bb \u043e\u0434\u043e\u043c\u0435\u0442\u0440\u0438\u044e;<br \/>   \u2014 laser \u2014 \u043b\u0438\u0434\u0430\u0440.<br \/>  \u0412\u0441\u0435 \u043d\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c launch \u0444\u0430\u0439\u043b\u0435 \u0432\u0430\u0436\u043d\u044b. \u041d\u043e \u043e\u043d\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043a \u043e\u0434\u043e\u043c\u0435\u0442\u0440\u0438\u0438 \u0440\u043e\u0431\u043e\u0442\u0430, \u0447\u0435\u043c \u043a \u0435\u0433\u043e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438.<br \/>  \u0417\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 launch \u0444\u0430\u0439\u043b, \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0440\u043e\u0431\u043e\u0442\u0430 \u2014 navigate.launch.<\/p>\n<h3>navigate.launch<\/h3>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">navigate.launch<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"xml\">&lt;launch&gt;     &lt;!-- Map server --&gt;     &lt;arg name=&quot;map_file&quot; default=&quot;$(find linorobot)\/maps\/my-map-4.yaml&quot;\/&gt;     &lt;node pkg=&quot;map_server&quot; name=&quot;map_server&quot;  type=&quot;map_server&quot; args=&quot;$(arg map_file)&quot; \/&gt;      &lt;!-- AMCL used for localization --&gt;     &lt;include file=&quot;$(find linorobot)\/launch\/include\/amcl.launch&quot; \/&gt;      &lt;!-- Calls navigation stack packages for compatible Linorobot base --&gt;     &lt;!-- Takes reference from env variable LINOBASE. ie. export LINOBASE=2wd --&gt;     &lt;include file=&quot;$(find linorobot)\/launch\/include\/move_base\/move_base_$(env LINOBASE).launch&quot; \/&gt; &lt;\/launch&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0438\u0437 navigate.launch \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0435\u0449\u0435 3 launch-\u0444\u0430\u0439\u043b\u0430:<br \/>   \u2014 map_server<br \/>   \u2014 amcl<br \/>   \u2014 move_base.<br \/>  \u0418\u043c\u0435\u043d\u043d\u043e \u043e\u043d\u0438 \u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0442 \u0437\u0430 \u0432\u0441\u044e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044e \u0440\u043e\u0431\u043e\u0442\u0430. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u043d\u0438\u0445 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435.<\/p>\n<h3>Map_server.<\/h3>\n<p>  \u0412 \u0437\u0430\u0434\u0430\u0447\u0443 map_servera \u0432\u0445\u043e\u0434\u0438\u0442 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443. \u0420\u0430\u043d\u0435\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u0430\u044f \u043a\u0430\u0440\u0442\u0430, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u0447\u0435\u0440\u0435\u0437 slam, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 $(find linorobot)\/maps\/my-map-4.yaml \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u0435\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0432\u0448\u0435\u043c\u0443.<br \/>  *\u0427\u0442\u043e\u0431\u044b \u0431\u044b\u0442\u044c \u0442\u043e\u0447\u043d\u044b\u043c \u2014 \u043f\u043e \u043f\u0443\u0442\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0435 \u043a\u0430\u0440\u0442\u0443, \u0430 \u0441\u0430\u043c\u0430 \u043a\u0430\u0440\u0442\u0430 \u0438\u043c\u0435\u0435\u0442 \u0438\u043c\u044f my-map-4.pgm.<br \/>  \u0415\u0441\u043b\u0438 \u043a\u0430\u0440\u0442\u044b \u043d\u0435\u0442 \u0438\u043b\u0438 \u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u00ab\u0441\u043a\u043e\u0440\u043c\u0438\u0442\u044c\u00bb \u043f\u0443\u0441\u0442\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u2014 \u0431\u0435\u043b\u044b\u0439 \u043b\u0438\u0441\u0442, \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 \u043d\u0430\u043d\u0435\u0441\u0442\u0438 \u0437\u0430\u0442\u0435\u043c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u043c paint \u043b\u0438\u0431\u043e \u0432 rviz.<\/p>\n<h3>Amcl<\/h3>\n<p>  \u042d\u0442\u043e \u043e\u0434\u043d\u0430 \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u043d\u043e\u0434 \u0432 \u044d\u0442\u043e\u043c \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0435. \u0417\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u0432 launch, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442:  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">amcl.launch<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"xml\">&lt;launch&gt;     &lt;node pkg=&quot;amcl&quot; type=&quot;amcl&quot; name=&quot;amcl&quot; output=&quot;screen&quot;&gt;         &lt;param name=&quot;initial_pose_x&quot; value=&quot;0.548767569629&quot;\/&gt;         &lt;param name=&quot;initial_pose_y&quot; value=&quot;0.218281839179&quot;\/&gt;         &lt;param name=&quot;initial_pose_z&quot; value=&quot;0.0&quot;\/&gt;         &lt;param name=&quot;initial_orientation_z&quot; value=&quot;0.128591756735&quot;\/&gt;         &lt;param name=&quot;initial_orientation_w&quot; value=&quot;0.991697615254&quot;\/&gt;         &lt;param name=&quot;base_frame_id&quot; value=&quot;base_footprint&quot;\/&gt;          &lt;param name=&quot;gui_publish_rate&quot; value=&quot;-1.0&quot;\/&gt;          &lt;param name=&quot;laser_max_range&quot; value=&quot;12.0&quot;\/&gt;         &lt;param name=&quot;kld_err&quot; value=&quot;0.05&quot;\/&gt;         &lt;param name=&quot;kld_z&quot; value=&quot;0.99&quot;\/&gt;         &lt;param name=&quot;laser_lambda_short&quot; value=&quot;0.1&quot;\/&gt;         &lt;param name=&quot;laser_likelihood_max_dist&quot; value=&quot;2.0&quot;\/&gt;         &lt;param name=&quot;laser_max_beams&quot; value=&quot;60&quot;\/&gt;         &lt;param name=&quot;laser_model_type&quot; value=&quot;likelihood_field&quot;\/&gt;         &lt;param name=&quot;laser_sigma_hit&quot; value=&quot;0.2&quot;\/&gt;         &lt;param name=&quot;laser_z_hit&quot; value=&quot;0.5&quot;\/&gt;         &lt;param name=&quot;laser_z_short&quot; value=&quot;0.05&quot;\/&gt;         &lt;param name=&quot;laser_z_max&quot; value=&quot;0.05&quot;\/&gt;         &lt;param name=&quot;laser_z_rand&quot; value=&quot;0.5&quot;\/&gt;         &lt;param name=&quot;max_particles&quot; value=&quot;1000&quot;\/&gt;         &lt;param name=&quot;min_particles&quot; value=&quot;500&quot;\/&gt;         &lt;param name=&quot;odom_alpha1&quot; value=&quot;0.25&quot;\/&gt;         &lt;param name=&quot;odom_alpha2&quot; value=&quot;0.25&quot;\/&gt;          &lt;param name=&quot;odom_alpha3&quot; value=&quot;0.25&quot;\/&gt;          &lt;param name=&quot;odom_alpha4&quot; value=&quot;0.25&quot;\/&gt;          &lt;param name=&quot;odom_alpha5&quot; value=&quot;0.1&quot;\/&gt;          &lt;param name=&quot;odom_frame_id&quot; value=&quot;odom&quot;\/&gt;         &lt;param name=&quot;odom_model_type&quot; value=&quot;diff&quot;\/&gt;         &lt;param name=&quot;recovery_alpha_slow&quot; value=&quot;0.001&quot;\/&gt;         &lt;param name=&quot;recovery_alpha_fast&quot; value=&quot;0.1&quot;\/&gt;          &lt;param name=&quot;resample_interval&quot; value=&quot;1&quot;\/&gt;          &lt;param name=&quot;transform_tolerance&quot; value=&quot;1.25&quot;\/&gt;          &lt;param name=&quot;update_min_a&quot; value=&quot;0.2&quot;\/&gt;          &lt;param name=&quot;update_min_d&quot; value=&quot;0.2&quot;\/&gt;      &lt;\/node&gt; &lt;\/launch&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0442\u0443\u0442 \u043a\u0430\u043a \u043d\u0430 \u043f\u0440\u0438\u0431\u043e\u0440\u043d\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u0430\u043c\u043e\u043b\u0435\u0442\u0430. \u041d\u043e, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0447\u0442\u043e-\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0437\u0434\u0435\u0441\u044c \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438.<br \/>  \u0420\u0430\u0437\u0432\u0435 \u0447\u0442\u043e, \u0437\u0430\u0434\u0430\u0442\u044c \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u0440\u043e\u0431\u043e\u0442\u0430 (\u043a\u0430\u043a \u043c\u044b \u0434\u0435\u043b\u0430\u043b\u0438 \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u043f\u043e\u0441\u0442\u0435):  <\/p>\n<pre><code class=\"xml\">        &lt;param name=&quot;initial_pose_x&quot; value=&quot;0.548767569629&quot;\/&gt;         &lt;param name=&quot;initial_pose_y&quot; value=&quot;0.218281839179&quot;\/&gt;         &lt;param name=&quot;initial_pose_z&quot; value=&quot;0.0&quot;\/&gt;         &lt;param name=&quot;initial_orientation_z&quot; value=&quot;0.128591756735&quot;\/&gt;         &lt;param name=&quot;initial_orientation_w&quot; value=&quot;0.991697615254&quot;\/&gt; <\/code><\/pre>\n<p>  \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0433\u0440\u0430\u043d\u0438\u0446\u0443 \u043b\u0438\u0434\u0430\u0440\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;param name=&quot;laser_max_range&quot; value=&quot;12.0&quot;\/&gt; <\/code><\/pre>\n<p>  \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0435\u043b\u0435\u043d\u044b\u0445 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u0435\u043a particle cloud swarm (\u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u2014 \u0442\u0435\u043c \u0442\u044f\u0436\u0435\u043b\u0435\u0435 raspberry, \u043c\u0435\u043d\u044c\u0448\u0435 \u2014 \u0442\u0435\u043c \u0445\u0443\u0436\u0435 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u0430):  <\/p>\n<pre><code class=\"xml\"> &lt;param name=&quot;max_particles&quot; value=&quot;1000&quot;\/&gt;  &lt;param name=&quot;min_particles&quot; value=&quot;500&quot;\/&gt; <\/code><\/pre>\n<p>  \u0434\u0438\u0444\u0444\u0438\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043b\u0438 \u0440\u043e\u0431\u043e\u0442 \u0438\u043b\u0438 \u0441 omni-\u043a\u043e\u043b\u0435\u0441\u0430\u043c\u0438:  <\/p>\n<pre><code class=\"xml\">&lt;param name=&quot;odom_model_type&quot; value=&quot;diff&quot;\/&gt; <\/code><\/pre>\n<p>  \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0444\u0440\u0435\u0439\u043c\u044b \u043e\u0434\u043e\u043c\u0435\u0442\u0440\u0438\u0438 \u0438 \u0431\u0430\u0437\u044b \u0440\u043e\u0431\u043e\u0442\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;param name=&quot;odom_frame_id&quot; value=&quot;odom&quot;\/&gt; &lt;param name=&quot;base_frame_id&quot; value=&quot;base_footprint&quot;\/&gt;  <\/code><\/pre>\n<p>  \u0412\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0442\u044c, \u043d\u043e \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c:  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"xml\">-laser_min_range (default: -1.0): \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u043b\u0438\u0434\u0430\u0440\u0430; -1.0 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u0435\u043d \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f min \u043b\u0438\u0434\u0430\u0440\u0430 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0435\u0433\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430\u043c. -laser_max_range (default: -1.0): \u0442\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f max \u043b\u0438\u0434\u0430\u0440\u0430. -laser_max_beams: - \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u043b\u0443\u0447\u0435\u0439 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u0430. -laser_z_hit : \u043c\u0430\u0441\u0441\u0430 \u0432\u0435\u0441\u043e\u0432 \u0434\u043b\u044f z_hit \u0447\u0430\u0441\u0442\u0438 \u043c\u043e\u0434\u0435\u043b\u0438. -laser_z_short: \u0442\u043e \u0436\u0435 \u0434\u043b\u044f z_short. -laser_z_max: \u0442\u043e \u0436\u0435  z_max. -laser_z_rand: \u0442\u043e \u0436\u0435 \u0434\u043b\u044f z_rand.  -update_min_d-\u0437\u0430\u0434\u0430\u0435\u0442 \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (\u0432 \u043c\u0435\u0442\u0440\u0430\u0445), \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0440\u043e\u0431\u043e\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u043e\u0439\u0442\u0438 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430. -update_min_a: \u0437\u0430\u0434\u0430\u0435\u0442 \u0443\u0433\u043b\u043e\u0432\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (\u0432 \u0440\u0430\u0434\u0438\u0430\u043d\u0430\u0445), \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0440\u043e\u0431\u043e\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430. -resample_interval : \u0437\u0430\u0434\u0430\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 \u0444\u0438\u043b\u044c\u0442\u0440\u0430, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u043f\u0435\u0440\u0435\u0434 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u043e\u0439. -transform_tolerance: \u0432\u0440\u0435\u043c\u044f (\u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445), \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0434\u0430\u0442\u0443 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u0443\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c. <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<h3>Move_base<\/h3>\n<p>  \u0412\u0442\u043e\u0440\u0430\u044f \u043f\u043e \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f. <br \/>  \u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f move_base \u2014 \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u0438\u0437 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e.<br \/>  \u041a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u0432 rviz \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u00ab2D Nav Goal\u00bb, \u0432 \u0442\u043e\u043f\u0438\u043a move_base\/goal \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u0430.<\/p>\n<p>  \u041cove_base \u043f\u043e \u0441\u0443\u0442\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 action-server, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 5 \u0442\u043e\u043f\u0438\u043a\u043e\u0432 (\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e \u0432 ROS \u043a\u0440\u043e\u043c\u0435 topic\u043e\u0432, \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u0435\u0441\u0442\u044c \u0435\u0449\u0435 action):  <\/p>\n<pre><code class=\"bash\">\u2022\tmove_base\/goal (move_base_msgs\/MoveBaseActionGoal) \u2022\tmove_base\/cancel (actionlib_msgs\/GoalID) \u2022\tmove_base\/feedback (move_base_msgs\/MoveBaseActionFeedback) \u2022\tmove_base\/status (actionlib_msgs\/GoalStatusArray) \u2022\tmove_base\/result (move_base_msgs\/MoveBaseActionResult) <\/code><\/pre>\n<p>  \u0417\u043d\u0430\u044f \u044d\u0442\u043e, \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u043c\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f (\u0432 \u0442\u043e\u043f\u0438\u043a move_base\/goal) \u0438 <b>\u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430, \u043c\u0438\u043d\u0443\u044f rviz<\/b>. <br \/>  *\u0427\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0443\u0436\u0435 \u043a\u0430\u0441\u0430\u043b\u0438\u0441\u044c \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<br \/>  \u0424\u043e\u0440\u043c\u0430\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439:  <\/p>\n<pre><code class=\"bash\">rostopic pub \/move_base\/goal geometry_msgs\/PoseStamped '{ header: { frame_id: &quot;map&quot; }, pose: { position: { x:  2.49339078005, y: 0.0666679775475, z: 0 }, orientation: { x: 0, y: 0, z: -0.999261709946, w: 0.0384192013861 } } }' <\/code><\/pre>\n<p>  *\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u0442\u043e\u0447\u043a\u0443 \u0441 \u043a\u043e\u0434\u043e\u0432\u044b\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u00ab\u043a\u043e\u0440\u0438\u0434\u043e\u0440\u00bb.<\/p>\n<p>  \u041cove_base, \u0445\u043e\u0442\u044f \u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043e\u0434\u043d\u043e\u0439 \u043d\u043e\u0434\u044b, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u00ab\u043c\u0430\u0442\u0440\u0435\u0448\u043a\u0443\u00bb \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438:<br \/>  <b> \u2014 costmap_common_params.yaml<br \/>   \u2014 local_costmap_params.yaml<br \/>   \u2014 global_costmap_params.yaml<br \/>   \u2014 base_local_planner_default_params.yaml<br \/>   \u2014 move_base_params.yaml<br \/>  <\/b><\/p>\n<p>  \u0420\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044f \u043a\u043e\u0434 move_base \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u043e\u043d \u0441\u0432\u044f\u0437\u0430\u043d \u0441 \u044d\u0442\u0438\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438. <br \/>  \u0412 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 2-\u0445 \u043a\u043e\u043b\u0435\u0441\u043d\u043e\u0433\u043e \u0440\u043e\u0431\u043e\u0442\u0430 move_base \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">move_base_2wd.launch<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"xml\">&lt;launch&gt;     &lt;node pkg=&quot;move_base&quot; type=&quot;move_base&quot; respawn=&quot;false&quot; name=&quot;move_base&quot; output=&quot;screen&quot;&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/costmap_common_params.yaml&quot; command=&quot;load&quot; ns=&quot;global_costmap&quot; \/&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/costmap_common_params.yaml&quot; command=&quot;load&quot; ns=&quot;local_costmap&quot; \/&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/local_costmap_params.yaml&quot; command=&quot;load&quot; \/&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/global_costmap_params.yaml&quot; command=&quot;load&quot; \/&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/base_local_planner_default_params.yaml&quot; command=&quot;load&quot; \/&gt;         &lt;rosparam file=&quot;$(find linorobot)\/param\/navigation\/move_base_params.yaml&quot; command=&quot;load&quot; \/&gt;     &lt;\/node&gt; &lt;\/launch&gt; <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0446\u0435\u043b\u044c \u043f\u043e\u0435\u0437\u0434\u043a\u0438 \u0432 rviz (\u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u043a\u0440\u0438\u043f\u0442) \u0438 move_base \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u043e\u043d\u043e \u043e\u0442\u0441\u044b\u043b\u0430\u0435\u0442 \u0435\u0433\u043e \u0432 <b>\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a<\/b>(global planner)(\u0434\u0430\u043b\u0435\u0435 \u0413\u041f). \u0413\u041f \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043f\u043e\u0435\u0437\u0434\u043a\u0438 \u0434\u043e \u0446\u0435\u043b\u0438. \u042d\u0442\u043e\u0442 \u043f\u0443\u0442\u044c \u0440\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0414\u041e \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0440\u043e\u0431\u043e\u0442 \u043f\u043e\u0435\u0434\u0435\u0442, \u0438 \u044d\u0442\u043e\u0442 \u043f\u043b\u0430\u043d \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043e\u0442 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u0440\u043e\u0431\u043e\u0442\u0430 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f.<br \/>  \u041a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043a\u0430\u043a \u0413\u041f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043b\u0430\u043d \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f, \u044d\u0442\u043e\u0442 \u043f\u043b\u0430\u043d \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043f\u0438\u043a \/move_base\/DWAPlannerROS\/global_plan (\u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0442\u0443\u0434\u0430 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 echo):<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/jk\/q_\/kg\/jkq_kg5kbxyx20ce2x-xmy_fm6a.gif\"><\/p>\n<h3>\u041a\u0430\u043a \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d ?<\/h3>\n<p>  \u0413\u041f \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0432\u0441\u044e \u00ab\u043c\u0430\u0433\u0438\u044e\u00bb. \u041e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 Dijkstra \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c (\u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e) \u0434\u043b\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0442\u0447\u0430\u0448\u0435\u0433\u043e \u043f\u0443\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0435\u0439 (initial pose) \u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u043e\u0439 (goal pose).<\/p>\n<p>  \u0413\u041f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0438\u043f\u043e\u0432:<br \/>  -Navfn<br \/>  &#8212;<a href=\"http:\/\/wiki.ros.org\/carrot_planner\" rel=\"nofollow\">Carrot Planner<\/a> <br \/>  &#8212;<a href=\"http:\/\/wiki.ros.org\/global_planner\" rel=\"nofollow\">Global Planner<\/a><br \/>  \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439. \u0423\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u043b\u044f\u043d\u0443\u0432 \u0432 \u0444\u0430\u0439\u043b \u043f\u0440\u043e\u0435\u043a\u0442\u0430:  <\/p>\n<pre><code class=\"bash\">nano linorobot_ws\/src\/linorobot\/param\/navigation\/move_base_params.yaml<\/code><\/pre>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">move_base_params.yaml<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">base_global_planner: global_planner\/GlobalPlanner base_local_planner: dwa_local_planner\/DWAPlannerROS  shutdown_costmaps: false controller_frequency: 5.0 controller_patience: 3.0 planner_frequency: 0.5 planner_patience: 5.0 oscillation_timeout: 10.0 oscillation_distance: 0.2 conservative_reset_dist: 0.1 # distance from an obstacle at which it will unstuck itself cost_factor: 1.0 neutral_cost: 55 lethal_cost: 253 <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0413\u041f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430 navfn\/NavfnROS, \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u0413\u041f \u0442\u0435\u043f\u0435\u0440\u044c \u0434\u0440\u0443\u0433\u043e\u0439:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/eu\/jv\/me\/eujvmexuz_llryk8_7t6gl8tt6a.png\"><br \/>  \u0423 \u0413\u041f \u0435\u0441\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0435 \u0435\u0433\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u043e\u043d\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0432 \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c yaml \u0444\u0430\u0439\u043b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a.<\/p>\n<h3>Costmaps.<\/h3>\n<p>  \u0413\u041f \u043f\u0440\u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0438 \u043f\u043b\u0430\u043d\u0430 \u043f\u043e\u0435\u0437\u0434\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u043c\u0435\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0435\u043c\u0443 \u043e\u0442\u0434\u0430\u0435\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 map. \u041e\u0434\u043d\u0430\u043a\u043e \u043a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0432 \u0431\u043e\u0439 \u0432\u0441\u0442\u0443\u043f\u0430\u044e\u0442 \u0435\u0449\u0435 \u0434\u0432\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435, \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u00ab\u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442\u00bb (costmaps).<br \/>  \u042d\u0442\u043e 2 \u043a\u0430\u0440\u0442\u044b: <br \/>   \u2014 global costmap, \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u0430\u044f \u0438\u0437 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0430\u0440\u0442\u044b map;<br \/>   \u2014 local costmap \u2014 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0441 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u0440\u043e\u0431\u043e\u0442\u0430 \u043f\u043e \u043c\u0435\u0440\u0435 \u0438\u0445 \u043f\u043e\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f.<br \/>  \u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u043a\u0430\u0440\u0442 \u2014 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0443, \u0433\u0434\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0435 \u0435\u0441\u0442\u044c \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f, \u0430 \u0433\u0434\u0435 \u0438\u0445 \u043d\u0435\u0442. \u0411\u0435\u0437 \u044d\u0442\u0438\u0445 \u043a\u0430\u0440\u0442, \u0440\u043e\u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u0435\u0437\u0434\u0438\u0442\u044c \u043f\u043e \u043a\u0430\u0440\u0442\u0435, \u043d\u0435 \u0432\u0438\u0434\u044f \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439.<br \/>  \u0423\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e, global costmap \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0413\u041f (\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430,global planner), local costmap \u2014 \u0434\u043b\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e (local planner).<\/p>\n<h3>Global Costmap <\/h3>\n<p>  Global costmap, \u043a\u0430\u043a \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u043e \u0440\u0430\u043d\u0435\u0435, \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0430\u0440\u0442\u044b, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u043e \u0441\u0443\u0442\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c (map.pgm) \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0438 \u0438\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f\u0445.<\/p>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430:<br \/>  \/param\/navigation\/global_costmap_params.yaml   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">global_costmap_params.yaml<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">global_costmap:   global_frame: \/map   robot_base_frame: \/base_footprint   update_frequency: 1.0 #before: 5.0   publish_frequency: 0.5 #before 0.5   static_map: true   transform_tolerance: 0.5   cost_scaling_factor: 10.0   inflation_radius: 0.55 <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0432\u0438\u0434\u043d\u044b, \u043a\u0430\u043a\u0438\u0435 \u0444\u0440\u0435\u0439\u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u0441 \u043a\u0430\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u0440\u0442\u0430, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0447\u0442\u043e \u043e\u043d\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439, \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u043b\u0430\u043d, \u0440\u0430\u0434\u0438\u0443\u0441 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439.<br \/>  \u0418 \u0437\u0434\u0435\u0441\u044c \u0436\u0435 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c inflation_radius \u0445\u043e\u0442\u044f \u0431\u044b \u0434\u043e 0.2\u043c. \u0422\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u0438 \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u0445 \u0438 \u0443\u0437\u043a\u0438\u0445 \u043f\u0440\u043e\u0445\u043e\u0434\u0430\u0445 \u0432 \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0438 \u0445\u0440\u0443\u0449\u0435\u0432\u043a\u0438, \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u043b\u0430\u043d:<br \/>   <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/8o\/xf\/tt\/8oxfttulliklktovmxqz7pwsene.png\"><br \/>  *\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u00ab\u0442\u0440\u043e\u043c\u0431\u044b\u00bb \u0438\u043d\u0444\u043b\u044f\u0446\u0438\u0438 \u0437\u0430\u043a\u0443\u043f\u043e\u0440\u0438\u043b\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0432 \u0434\u0432\u0435\u0440\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043c\u0435.<br \/>  \u041f\u043e\u0441\u043b\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u044f \u00ab\u0438\u043d\u0444\u043b\u044f\u0446\u0438\u0438\u00bb:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/vr\/gn\/dc\/vrgndcmkkc3niynr9kd7z4ajato.gif\"><br \/>  \u041f\u043e\u0447\u0435\u043c\u0443 \u0431\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u043e\u0431\u043d\u0443\u043b\u0438\u0442\u044c \u0438\u043d\u0444\u043b\u044f\u0446\u0438\u044e? \u0420\u0435\u0437\u043e\u043d\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u041d\u043e \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0413\u041f \u0431\u0443\u0434\u0435\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u044b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043f\u043b\u043e\u0442\u043d\u043e \u043f\u0440\u0438\u043b\u0435\u0433\u0430\u044e\u0449\u0438\u0435 \u0441 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f\u043c \u0438 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0440\u043e\u0431\u043e\u0442\u0443 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0445 \u043e\u0431\u044a\u0435\u0445\u0430\u0442\u044c.<\/p>\n<h3>Local Planner.<\/h3>\n<p>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a (\u0434\u0430\u043b\u0435\u0435 \u00ab\u041b\u041f\u00bb) \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u043f\u0430\u0440\u0435 \u0441 \u0413\u041f (\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u043c \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u043c) \u0438 \u0438\u043c\u0435\u0435\u0442 \u043a\u0430\u043a \u0441\u0445\u043e\u0436\u0438\u0435 \u0441 \u043d\u0438\u043c \u0447\u0435\u0440\u0442\u044b, \u0442\u0430\u043a \u0438 \u0442\u0435, \u0447\u0442\u043e \u0435\u0433\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442.<br \/>  \u041e\u043d \u0442\u0430\u043a \u0436\u0435 \u043a\u0430\u043a \u0438 \u0413\u041f \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0430, \u043d\u043e \u043d\u0430 \u0435\u0433\u043e \u043f\u043b\u0435\u0447\u0438 \u043b\u043e\u0436\u0430\u0442\u0441\u044f \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438: \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u043c\u0443 \u0413\u041f \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0443 \u0438 \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f \u043f\u043e \u043f\u0443\u0442\u0438 (avoids obstacles).<\/p>\n<p>  \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0413\u041f \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043b \u043f\u043b\u0430\u043d \u043f\u0443\u0442\u0438, \u044d\u0442\u043e\u0442 \u043f\u043b\u0430\u043d \u043e\u0442\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u041b\u041f. \u041b\u041f, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u0441\u0435\u0433\u043c\u0435\u043d\u0442 \u044d\u0442\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0430. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0438\u043c\u0435\u044f \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0438 \u043a\u0430\u0440\u0442\u0443, \u041b\u041f \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u00ab\u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f\u00bb \u0438 \u0434\u0432\u0438\u0433\u0430\u0435\u0442 \u0440\u043e\u0431\u043e\u0442\u0430.<br \/>  \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0413\u041f, \u041b\u041f \u0441\u043b\u0435\u0434\u0438\u0442 \u0437\u0430 \u043e\u0434\u043e\u043c\u0435\u0442\u0440\u0438\u0435\u0439, \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441 \u043b\u0438\u0434\u0430\u0440\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043e\u0442 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442.<br \/>  \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d, \u043e\u043d \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043f\u0438\u043a \/local_plan, \u043a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u041b\u041f \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0430, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043e\u043d \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0432 \u0442\u043e\u043f\u0438\u043a \/global_plan. <\/p>\n<p>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0442\u0430\u043a \u0436\u0435 \u043a\u0430\u043a \u0438 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0438\u0434\u043e\u0432:<br \/>   \u2014 <a href=\"http:\/\/wiki.ros.org\/base_local_planner\" rel=\"nofollow\">base_local_planner<\/a><br \/>   \u2014 dwa_local_planner<br \/>   \u2014 <a href=\"http:\/\/wiki.ros.org\/eband_local_planner\" rel=\"nofollow\">eband_local_planner<\/a><br \/>   \u2014 <a href=\"http:\/\/wiki.ros.org\/teb_local_planner\" rel=\"nofollow\">teb_local_planner<\/a><br \/>  \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f dwa_local_planner.<\/p>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u041b\u041f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430:<br \/>  \/param\/navigation\/base_local_planner_default_params.yaml  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">base_local_planner_default_params.yaml<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">DWAPlannerROS:   max_trans_vel: 0.50   min_trans_vel: 0.01   max_vel_x: 0.50   min_vel_x: -0.025   max_vel_y: 0.0   min_vel_y: 0.0   max_rot_vel: 0.30   min_rot_vel: -0.30   acc_lim_x: 1.25   acc_lim_y: 0.0   acc_lim_theta: 5   acc_lim_trans: 1.25    prune_plan: false    xy_goal_tolerance: 0.25   yaw_goal_tolerance: 0.1   trans_stopped_vel: 0.1   rot_stopped_vel: 0.1    sim_time: 3.0   sim_granularity: 0.1   angular_sim_granularity: 0.1   vx_samples: 20   vy_samples: 0   vth_samples: 40   path_distance_bias: 34.0   goal_distance_bias: 24.0   occdist_scale: 0.05   forward_point_distance: 0.3   stop_time_buffer: 0.5   scaling_speed: 0.25   max_scaling_factor: 0.2    twirling_scale: 0.0     oscillation_reset_dist: 0.05   oscillation_reset_angle: 0.2      use_dwa: true   restore_defaults: false <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043c\u043d\u043e\u0433\u043e, \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c.  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0440\u043e\u0431\u043e\u0442\u0430(Robot Configuration Parameters).<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">    max_trans_vel: 0.50 - max \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u043c\/c.   min_trans_vel: 0.01 -  min \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u043c\/c.   max_vel_x: 0.50 - max \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u043c\/c.   min_vel_x: -0.025 - min \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u043c\/c.   max_vel_y: 0.0 - \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0434\u043e\u043b\u044c \u043e\u0441\u0438 y (holonomic)   min_vel_y: 0.0 - \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0434\u043e\u043b\u044c \u043e\u0441\u0438 y (holonomic)   max_rot_vel: 0.30 - max \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u0430\u0445.   min_rot_vel: -0.30 - min \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u0430\u0445.   acc_lim_x: 1.25 - \u043b\u0438\u043c\u0438\u0442 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043f\u043e \u043e\u0441\u0438 x   acc_lim_y: 0.0 - \u043b\u0438\u043c\u0438\u0442 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043f\u043e \u043e\u0441\u0438 y   acc_lim_theta: 5 - \u043b\u0438\u043c\u0438\u0442 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u043e\u0432 \u0432 \u0440\u0430\u0434\u0438\u0430\u043d\/\u0441\u0435\u043a   acc_lim_trans: 1.25 - \u043b\u0438\u043c\u0438\u0442 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0439 <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0446\u0435\u043b\u0438 (Goal Tolerance Parameters)<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">xy_goal_tolerance: 0.25 - (\u0432 \u043c\u0435\u0442\u0440\u0430\u0445) \u043a\u0430\u043a \u0431\u043b\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u044c\u0441\u044f \u043a \u0446\u0435\u043b\u0438 \u043f\u043e \u043e\u0441\u044f\u043c x \u0438 y, \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e\u0435\u0437\u0434\u043a\u0438  yaw_goal_tolerance: 0.1 - (\u0432 \u0440\u0430\u0434\u0438\u0430\u043d\u0430\u0445) \u0442\u043e \u0436\u0435, \u043d\u043e \u0434\u043b\u044f \u0443\u0433\u043b\u043e\u0432\u044b\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 (yaw\/rotation).<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u041f\u0440\u044f\u043c\u043e\u0433\u043e \u041c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (Forward Simulation Parameters)<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">sim_time: 3.0 - \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u043b\u044f forward-\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 sim_granularity: 0.1 - \u0440\u0430\u0437\u043c\u0435\u0440 \u0448\u0430\u0433\u0430, \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u043c\u043e\u0433\u043e \u043c\u0435\u0436\u0434\u0443 \u0442\u043e\u0447\u043a\u0430\u043c\u0438 \u043d\u0430 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438 (\u0448\u0430\u0433 \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f) vx_samples: 20 - \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u044b\u0431\u043e\u0440\u043e\u043a, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0435\u0439 x vy_samples: 0 - \u0442\u043e \u0436\u0435, \u043d\u043e \u043f\u043e y vth_samples: 40  - \u0442\u043e \u0436\u0435, \u043d\u043e \u043f\u043e theta. <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u041e\u0446\u0435\u043d\u043a\u0438 \u0422\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438 (Trajectory Scoring Parameters)<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">path_distance_bias: 34.0 - \u0432\u0435\u0441\u0430, \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0441\u0442\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u043b\u0438\u0437\u043a\u043e \u043a \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0443\u0442\u0438   goal_distance_bias: 24.0 - \u0432\u0435\u0441\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0434\u043e\u0441\u0442\u0438\u0447\u044c \u0441\u0432\u043e\u0435\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0446\u0435\u043b\u0438; \u0442\u0430\u043a\u0436\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c   occdist_scale: 0.05 - \u0432\u0435\u0441\u0430, \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 forward_point_distance: 0.3 - \u043a\u0430\u043a \u0434\u0430\u043b\u0435\u043a\u043e \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0440\u0430\u0441\u0441\u0447\u0435\u0442\u043d\u0443\u044e \u0442\u043e\u0447\u043a\u0443 stop_time_buffer: 0.5 - \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0440\u043e\u0431\u043e\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u0441\u0442\u043e\u043b\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0435\u043c \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439 \u0442\u0440\u0430\u0435\u043a\u0442\u043e\u0440\u0438\u0438. scaling_speed: 0.25 - \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043b\u0435\u0434\u0430 \u0440\u043e\u0431\u043e\u0442\u0430 max_scaling_factor: 0.2 - \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434 \u0440\u043e\u0431\u043e\u0442\u0430 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f.<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">Oscillation Prevention Parameters (\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u0439)<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">twirling_scale: 0.0  - \u0441\u0442\u0435\u043f\u0435\u043d\u044c \u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f oscillation_reset_dist: 0.05 - \u043a\u0430\u043a \u0434\u0430\u043b\u0435\u043a\u043e \u043f\u0440\u043e\u0439\u0442\u0438 \u0434\u043e \u0441\u0431\u0440\u043e\u0441\u0430 \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u0439 oscillation_reset_angle: 0.2 - &quot;\u043a\u0430\u043a \u0434\u0430\u043b\u0435\u043a\u043e \u043f\u043e\u0432\u0435\u0440\u043d\u0443\u0442\u044c&quot; \u0434\u043e \u0441\u0431\u0440\u043e\u0441\u0430 \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u0439 <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0418\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">use_dwa: true - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b DWA restore_defaults: false - \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043b\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u0435\u0431\u0430\u0433\u0433\u0438\u043d\u0433\u0430<\/b>                         <\/p>\n<div class=\"spoiler_text\">\u0418\u0445 \u043d\u0435\u0442 \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u043d\u043e \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b.  <\/p>\n<pre><code class=\"bash\">publish_traj_pc : true publish_cost_grid_pc: true <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<h3>Local Costmap<\/h3>\n<p>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u00ab\u043a\u0430\u0440\u0442\u0430 \u0437\u0430\u0442\u0440\u0430\u0442\u00bb, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u041b\u041f (\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u043f\u043b\u0430\u0440\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u043c) \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u0447\u0435\u0442\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0443\u0442\u0438.<br \/>  \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 Global costmap \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u0430\u0440\u0442\u0430 \u0437\u0430\u0442\u0440\u0430\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u0440\u043e\u0431\u043e\u0442\u0430. <br \/>  \u0423\u0447\u0438\u0442\u044b\u0432\u0430\u044f \u0448\u0438\u0440\u0438\u043d\u0443 \u0438 \u0432\u044b\u0441\u043e\u0442\u0443 \u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442 (\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c), \u041b\u041f \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0438.<br \/>  \u0421\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u044f \u0413\u041f \u0438 \u041b\u041f \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438 \u043b\u0438\u043d\u0438\u044e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u0413\u041f \u043d\u0435 \u0432\u0438\u0434\u0438\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0442 \u043d\u0430 \u043a\u0430\u0440\u0442\u0435, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u041b\u041f \u0435\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442.<\/p>\n<h3>Local Costmap Parameters(\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442).<\/h3>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0445 \u0434\u0430\u043d\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u043d\u0435 \u0442\u0430\u043a \u043c\u043d\u043e\u0433\u043e( linorobot\/param\/navigation\/local_costmap_params.yaml):  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">local_costmap_params.yaml<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">   global_frame: \/odom # \u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u0444\u0440\u0435\u0439\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u041b\u041f, \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c odom.     robot_base_frame: \/base_footprint #\u0424\u0440\u0435\u0439\u043c \u0440\u043e\u0431\u043e\u0442\u0430.   update_frequency: 1.0 #before 5.0 # \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u0430\u0440\u0442\u044b \u0432 \u0413\u0446   publish_frequency: 2.0 #before 2.0 # \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u043a\u0430\u0440\u0442\u044b \u0432 \u0413\u0446   static_map: false # \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u043d\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043a\u0430\u0440\u0442\u0443. \u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c true, \u0442\u043e \u041b\u041f  \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432 \u0413\u041f.   rolling_window: true #\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u0438 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0435 \u043e\u043a\u043d\u043e \u0434\u043b\u044f \u0446\u0435\u043b\u0435\u0439 \u041b\u041f.   width: 2.5 # \u0448\u0438\u0440\u0438\u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0433\u043e \u043e\u043a\u043d\u0430   height: 2.5 # \u0432\u044b\u0441\u043e\u0442\u0430 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0433\u043e \u043e\u043a\u043d\u0430   resolution: 0.05 #increase to for higher res 0.025 #\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u043c \u043e\u043a\u043d\u0435   transform_tolerance: 0.5     cost_scaling_factor: 5   inflation_radius: 0.55# \u0440\u0430\u0434\u0438\u0443\u0441 \u0438\u043d\u0444\u043b\u044f\u0446\u0438\u0438 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0417\u0434\u0435\u0441\u044c \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c height \u0434\u043e 1 \u043c\u0435\u0442\u0440\u0430, \u0442.\u043a. \u043a\u0430\u0440\u0442\u0430 \u0443 \u043d\u0430\u0441 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u044c\u044e 2d \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u044b\u0441\u043e\u0442\u0430 \u2014 \u044d\u0442\u043e \u043b\u0438\u0434\u0430\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430\u0434 \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u043f\u043e\u043b\u0430 \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 1 \u043c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0430\u0441\u0447\u0435\u0442\u044b \u0432\u044b\u0448\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u0440\u0430.<br \/>  \u041f\u043e\u043f\u0440\u0430\u0432\u0438\u043c \u0442\u0430\u043a\u0436\u0435 resolution, \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0432 \u0435\u0435.<br \/>  \u0418 \u0441\u043d\u0438\u0437\u0438\u043c \u0442\u0430\u043a\u0436\u0435 \u0438\u043d\u0444\u043b\u044f\u0446\u0438\u044e \u2014 inflation_radius:0.3 \u043c\u0435\u0442\u0440\u0430. \u041f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0435\u0435 \u043b\u0443\u0447\u0448\u0435 \u043d\u0435 \u0443\u0431\u0438\u0440\u0430\u0442\u044c, \u043a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 Global Costmap, \u0442.\u043a. \u0440\u043e\u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u0446\u0435\u043f\u043b\u044f\u0442\u044c\u0441\u044f \u0437\u0430 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f, \u043f\u044b\u0442\u0430\u044f\u0441\u044c \u0438\u0445 \u043e\u0431\u044a\u0435\u0445\u0430\u0442\u044c.<br \/>  \u041c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c update_frequency, \u0447\u0442\u043e\u0431\u044b \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e \u0432\u043e\u0437\u043d\u0438\u043a\u0448\u0435\u0435 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u043e \u043d\u0430 \u043a\u0430\u0440\u0442\u0443.<\/p>\n<p>  Local costmap \u0441\u0430\u043c\u043e\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f. \u042d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 (update_frequency).<br \/>  \u041a\u0430\u0436\u0434\u044b\u0439 \u0446\u0438\u043a\u043b \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432 \u0441\u0435\u0431\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438:<br \/>   \u2014 \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u0440\u043e\u0431\u043e\u0442\u0430;<br \/>   \u2014 \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u0438 \u043e\u0447\u0438\u0441\u0442\u043a\u0438 (\u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u0441\u043e\u043e\u0431\u0449\u0438\u043b \u0435\u0441\u0442\u044c \u0438\u043b\u0438 \u043d\u0435\u0442 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f);<br \/>   \u2014 \u043a\u0430\u0436\u0434\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0435 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f (\u0437\u0430\u043d\u044f\u0442\u0430\/\u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0430);<br \/>   \u2014 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u00ab\u0438\u043d\u0444\u043b\u044f\u0446\u0438\u0438\u00bb.<\/p>\n<p>  <b>\u0418\u0442\u0430\u043a, \u043f\u043e\u043c\u0438\u043c\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442 \u2014 global costmap \u0438 local costmap, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043d\u0430\u0434\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f.<\/b><br \/>  \u041d\u043e \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u043d\u0430 \u043e\u0431\u0435 \u043a\u0430\u0440\u0442\u044b \u0437\u0430\u0442\u0440\u0430\u0442.<\/p>\n<h3>Common costmap parameters (\u041e\u0431\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u0442\u0440\u0430\u0442).<\/h3>\n<p>  \u041d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 linorobot\/param\/navigation\/costmap_common_params.yaml   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">costmap_common_params.yaml<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">obstacle_range: 2.5 raytrace_range: 3.0 footprint: [[-0.24, -0.22], [-0.24, 0.22], [0.24, 0.22], [0.24, -0.22]] inflation_radius: 0.55 transform_tolerance: 0.5  observation_sources: scan scan:   data_type: LaserScan   topic: scan   marking: true   clearing: true  map_type: costmap <\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0412 \u044d\u0442\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0441\u0435\u043d\u0441\u043e\u0440\u044b \u0440\u043e\u0431\u043e\u0442\u0430 \u0432\u0438\u0434\u044f\u0442 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, obstacle_range: 2.5, \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0438 \u043d\u0430 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0438 2.5 \u043c, \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0435, \u0435\u0441\u043b\u0438 \u043e\u043d\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043d\u0430\u043d\u0435\u0441\u0435\u043d\u043e \u043d\u0430 \u043a\u0430\u0440\u0442\u0443 \u0437\u0430\u0442\u0440\u0430\u0442. footprint \u2014 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0440\u043e\u0431\u043e\u0442\u0430 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435.<br \/>  Observation_sources: scan \u2014 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f (\u0443 \u043d\u0430\u0441 \u043b\u0438\u0434\u0430\u0440 \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u0442 \u0432 \u0442\u043e\u043f\u0438\u043a \/scan), \u043e\u043d \u0436\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u0438 \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 \u043d\u0430 \u043a\u0430\u0440\u0442\u0435 \u0437\u0430\u0442\u0440\u0430\u0442.<\/p>\n<h3>\u041a\u0430\u043a \u0432 \u0446\u0435\u043b\u043e\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 \u0432 ROS \u0438 \u0432 linorobot \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 ?<\/h3>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u0430 (\u0440\u043e\u0431\u043e\u0442 \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d) \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0440\u043e\u0431\u043e\u0442\u0443 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0442\u043e\u0447\u043a\u0443 (goal position) \u0447\u0435\u0440\u0435\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 rviz \u0438\u043b\u0438 \u0441\u043a\u0440\u0438\u043f\u0442. \u0414\u0430\u043d\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u043e\u043f\u0430\u0434\u0435\u0442 \u0432 move_base node. \u0414\u0430\u043b\u0435\u0435 move_base node \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 goal position \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a (global planner), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u0443\u0442\u044c (path planning) \u043e\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0434\u043e \u0446\u0435\u043b\u0435\u0432\u043e\u0439. \u042d\u0442\u043e\u0442 \u043f\u043b\u0430\u043d \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u0437\u0430\u0442\u0440\u0430\u0442 (global costmap) c \u00ab\u043d\u0430\u043d\u0435\u0441\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f\u043c\u0438\u00bb, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u0443\u044e \u043e\u0442 map_server.<br \/>  \u0414\u0430\u043b\u0435\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a (local planner), \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u0441\u0435\u0433\u043c\u0435\u043d\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0430.<br \/>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043e\u0434\u043e\u043c\u0435\u0442\u0440\u0438\u044e \u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441 \u043b\u0438\u0434\u0430\u0440\u0430 \u0434\u043b\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0430 (collision-free local plan) \u0434\u043b\u044f \u0431\u0435\u0441\u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u0430.<br \/>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u00ab\u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u00bb \u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u0430\u0440\u0442\u0435 \u0437\u0430\u0442\u0440\u0430\u0442 (local costmap) \u0434\u043b\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u0439 \u043f\u043e \u043f\u0443\u0442\u0438 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f.<br \/>  \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f (velocity commands) \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0445 \u0432 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f (base controller). \u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440 \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u0435\u0442 \u044d\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u043e\u043c.<br \/>  \u0417\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u043a\u0441\u0442\u0430\u0442\u0438 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 ROS:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ku\/fa\/xy\/kufaxyl7kqfn_vbqcuhe9nxumfa.png\"><\/p>\n<h3>\u0411\u043e\u043d\u0443\u0441. <br \/>  \u041a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u043a majordomo.<\/h3>\n<p>  \u0420\u043e\u0431\u043e\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 rviz \u043b\u0438\u0431\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e.<br \/>  \u0415\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0441\u044b\u043b\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 web-browser. <br \/>  \u0414\u043b\u044f \u044d\u0442\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u044c\u043c\u0430 \u043a\u0441\u0442\u0430\u0442\u0438 open-source \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u2014 <a href=\"https:\/\/webviz.io\/\" rel=\"nofollow\">webviz<\/a>.<br \/>  \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u043a\u0440\u0435\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0441 \u0434\u0440\u0443\u0433\u0438\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c \u2014 majordomo, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0441\u0432\u043e\u0435\u0433\u043e \u0434\u043e\u043c\u0430 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c.<br \/>  <a href=\"https:\/\/mjdm.ru\/\" rel=\"nofollow\">Majordomo<\/a> \u2014 \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u043e\u043c, \u043d\u0435 \u0440\u0430\u0437 \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u043b\u0441\u044f \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u0435. \u0418 \u0442\u0430\u043a \u043a\u0430\u043a \u0430\u0432\u0442\u043e\u0440 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442 \u0443\u0436\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u0442 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u0434\u043b\u044f \u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0435\u043a\u043e\u0440\u044b\u0441\u0442\u043d\u044b\u0445 \u0446\u0435\u043b\u0435\u0439, \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432\u044b\u0431\u043e\u0440 \u043d\u0430 \u043d\u0435\u043c.<br \/>  \u041f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043a\u0430\u043a \u0432\u044b\u0432\u043e\u0434 \u0441 \u0442\u043e\u043f\u0438\u043a\u043e\u0432 ROS \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432 majordomo.<\/p>\n<p>  <b>\u0428\u0430\u0433 1.<\/b><br \/>  \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043d\u0430 \u0440\u043e\u0431\u043e\u0442\u0430 \u043f\u0430\u043a\u0435\u0442 rosbridge:  <\/p>\n<pre><code class=\"bash\">sudo apt-get install ros-kinetic-rosbridge-suite <\/code><\/pre>\n<p>  *\u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 rosbridge \u043f\u0440\u043e\u0432\u0430\u043b\u0438\u0442\u0441\u044f, \u0442\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442:  <\/p>\n<pre><code class=\"bash\">cd ~\/linorobot_ws\/src git clone https:\/\/github.com\/RobotWebTools\/rosbridge_suite.git git clone https:\/\/github.com\/GT-RAIL\/rosauth.git cd .. catkin_make sudo pip install tornado sudo pip install pymongo sudo apt-get install python-twisted <\/code><\/pre>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c (\u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 launch \u0444\u0430\u0439\u043b\u043e\u0432):  <\/p>\n<pre><code class=\"bash\">roslaunch rosbridge_server rosbridge_websocket.launch<\/code><\/pre>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e bridge \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 9090 \u043f\u043e\u0440\u0442\u0443:  <\/p>\n<pre><code class=\"bash\">netstat -a | grep 9090<\/code><\/pre>\n<p>  <b>\u0428\u0430\u0433 2.<\/b><br \/>  \u041f\u0440\u043e\u0431\u0443\u0435\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u0441 \u043b\u044e\u0431\u043e\u0433\u043e \u041f\u041a, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e\u0441\u044f \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0441 \u0440\u043e\u0431\u043e\u0442\u043e\u043c, \u0437\u0430\u0439\u0434\u044f \u0447\u0435\u0440\u0435\u0437 Chrome-\u0431\u0440\u0430\u0443\u0437\u0435\u0440:  <\/p>\n<pre><code class=\"bash\">https:\/\/webviz.io\/app\/?rosbridge-websocket-url=ws:\/\/192.168.1.110:9090 <\/code><\/pre>\n<p>  \u0413\u0434\u0435 ip \u2014 ip-\u0440\u043e\u0431\u043e\u0442\u0430.<br \/>  Chrome \u0432\u044b\u0434\u0430\u0441\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b. \u0427\u0442\u043e\u0431\u044b \u0438\u0434\u0442\u0438 \u0434\u0430\u043b\u044c\u0448\u0435 \u043d\u0430\u0434\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435, \u043a\u043b\u0438\u043a\u043d\u0443\u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u2014 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/uu\/3s\/zn\/uu3sznroksu9tlxosnpz5tkgr1c.png\"><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0448\u043b\u043e \u0443\u0434\u0430\u0447\u043d\u043e, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0441 \u0440\u043e\u0431\u043e\u0442\u043e\u043c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ap\/al\/ee\/apaleelgmjwbk3xzamkfyt9bwxu.png\"><br \/>  \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 majordomo.<\/p>\n<p>  <b>\u0428\u0430\u0433 3.<\/b><br \/>  \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432 majordomo.<br \/>  \u0417\u0430\u0439\u0434\u0435\u043c \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 \u0432 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u0438\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u043c \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/19\/xl\/xx\/19xlxxslazhg2t7xv-4t94ecxuq.png\"><br \/>  \u0412\u043d\u0435\u0441\u0435\u043c \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0441\u044b\u043b\u043a\u0443 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u043e\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u0435\u0440\u0435\u0439\u0434\u044f \u043f\u043e \u043d\u0435\u0439:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/xt\/yp\/3q\/xtyp3qpt1vh9mf4mw812vj18abc.png\"><br \/>  \u0411\u0440\u0430\u0443\u0437\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0434\u0430\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u043e\u0448\u0438\u0431\u043a\u0443, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0440\u0430\u043d\u0435\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/q4\/5b\/cl\/q45bclqblzisgczloljefa2hucq.png\"><\/p>\n<p>  \u0414\u043b\u044f \u0435\u0435 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 Chrome:<br \/>  chrome:\/\/settings\/content\/siteDetails?site=https%3A%2F%2Fwebviz.io<br \/>  \u041d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442: \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c<br \/>  \u041a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u043c \u043f\u043e\u043a\u0430 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430 \u043a\u0430\u0434\u0440\u043e\u043c.<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/502674\/\"> https:\/\/habr.com\/ru\/post\/502674\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/502674\/\">\u042d\u0442\u0430 \u0447\u0430\u0441\u0442\u044c \u0446\u0438\u043a\u043b\u0430 \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u043e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e \u0440\u043e\u0431\u043e\u0442\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 open-source linorobot \u0431\u0443\u0434\u0435\u0442 \u0441\u0443\u0445\u043e\u0432\u0430\u0442\u0430 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u044c\u044e \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0442\u0435\u043e\u0440\u0438\u0438. \u00ab\u0422\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u0439 \u0434\u0440\u0443\u0433, \u0441\u0443\u0445\u0430, \u043d\u043e \u0437\u0435\u043b\u0435\u043d\u0435\u0435\u0442 \u0436\u0438\u0437\u043d\u0438 \u0434\u0440\u0435\u0432\u043e\u00bb, -\u043a\u0430\u043a \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u043a\u043b\u0430\u0441\u0441\u0438\u043a. \u0417\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442 linorobot, \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u0435\u0433\u043e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 ROS, \u0430 \u0442\u0430\u043a\u0436\u0435 n-\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0432 ROS.<br \/>  \u0412 \u043a\u043e\u043d\u0446\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0431\u043e\u043d\u0443\u0441 \u2014 \u043a\u0430\u043a \u043f\u0440\u0438\u043a\u0440\u0443\u0442\u0438\u0442\u044c \u0440\u043e\u0431\u043e\u0442\u0430 \u043a \u0434\u0440\u0443\u0433\u043e\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0443 \u2014 majordomo \u0438 \u043f\u0440\u0438\u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0441\u0432\u043e\u0435\u0433\u043e \u0436\u0438\u043b\u0438\u0449\u0430 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c.<\/p>\n<p>  \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0446\u0438\u043a\u043b\u0430:<br \/>  <a href=\"https:\/\/habr.com\/ru\/post\/502508\/\">\u0420\u043e\u0431\u043e\u0442-\u0442\u0435\u043b\u0435\u0436\u043a\u0430 2.0. \u0427\u0430\u0441\u0442\u044c 2. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 rviz \u0438 \u0431\u0435\u0437.\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u0440\u0430\u0441\u043e\u0442\u044b \u0432 rviz<\/a><br \/>  <a href=\"https:\/\/habr.com\/ru\/post\/502076\/\">\u0420\u043e\u0431\u043e\u0442-\u0442\u0435\u043b\u0435\u0436\u043a\u0430 2.0. \u0427\u0430\u0441\u0442\u044c 1. \u0410\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u0430\u044f \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0440\u043e\u0431\u043e\u0442\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 ROS<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ap\/al\/ee\/apaleelgmjwbk3xzamkfyt9bwxu.png\">  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-304816","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/304816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=304816"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/304816\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=304816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=304816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=304816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}