Starline Hackathon 2020

Bonjour à tous, dans un but de transfert d'expérience, ainsi que pour structurer et consolider toute la quantité d'informations qui ont dû être pelliculées, j'écris cet article. Je ne vise pas à présenter un manuel pour créer notre solution (   puisque le code source est déjà complètement ouvert). Je veux dire que l'intérêt principal est d'esquisser les principes de base de la construction de tels systèmes, de décrire les sources utilisées, de raconter ce que nous avons abandonné et ce à quoi nous sommes arrivés. J'essaierai de garder un équilibre entre la quantité d'informations et la lisibilité.

Si vous ne savez pas ce qu'est ROS, je vous conseille d'étudier la ressource  Voltbto.com , par exemple, voici  un article sur le travail avec les services en ROS .

Fin mars 2020, Starline a organisé un hackathon pour la deuxième fois de son histoire  .

Par rapport au  précédent hackathon  ( youtube ), organisé en octobre 2018, cette fois, le niveau d'organisation a considérablement augmenté: il y avait une réglementation claire, un système d'évaluation, des conditions égales pour tous les participants et une mission de qualification complexe - comme il se doit.

Cette fois, les organisateurs ont placé la barre haute en termes de complexité de la compétition: à tel point que sur 25 candidatures soumises, seulement 5. Pour résoudre la tâche de qualification, il a fallu mettre en place le robot dans le  simulateur gazebo  pour se déplacer d'un point à un autre. Plus d'informations  ici .

: , . , ( ):

  1. Starline Hackathon

  2. COEX Hackathon

  3.  Autonet 18+

  4. UpGreat   +   vc.ru

  5.  -1-2

  6.   Pro (  )

  7.    [ ]

, [] .

. , , , . : , ( ).

 @urpylka   @goldarte  ( , – ).

Turtlebot E2 :

  1. Kobuki

  2. RGBD- Orbbec Astra

  3. Rplidar A2

  4. Intel NUC [BOXNUC7I7BNH]

  5. Logitech HD Pro C920

, , . , , .

4 , , .

(7x7 ): , . , - , . .

( ):

  1. “”

  2. “ ”

, .

( ) . ́ .

:

  1. “”

  2. , ROS

, .   TurtleBot3 robotis.com,  autoraceturtlebot3autoracehttps://github.com/ROBOTIS-GIT/turtlebot3autorace2020. :

State Machine

: - : GOTO_0GOTO_1.  0  1  .

,  0, , ; ,  0, , , , . , , , .

( ) . , .

 GOTO_0GOTO_1 - , “”. , .

 INIT  IDLE.  INIT  ,  IDLE.  IDLE   GOTO_0  GOTO_1. state-machine   ,  - Karn Saheb.  StateMachine   S  ObjectStorage.  setattr(Class, Attr, Value)   Class.Attr = Value.

,  lane-detection:

  1. github/awesome-lane-detection

  2. github lane-detection

  3. hackster.io curved-lane-detection

 birdview   dynamic_reconfigure.

 color-segmentation.  dheera/ros-semantic-segmentation. .

   .

, , , - . . .

.  gmapping  . , .

- . , ,  R1  , ,  R2.

, . ROS  find_object_2d: ,  /objects  objectsStamped. , , ,  opencv.  detect_objects_node.py.      CarND-Capstone  .

 find_object_2d. ORB .  . :

,  /objects, .

 detected_stop, , .

 dynamic_reconfigure, ( )  rqt. :

.  find_object_2d  . . - , ( ). - . .

: HSV, , ( Hough Circles) . - , .

- , , ( ). , , , , .

, Astra .  Logitech HD Pro C920 - – . - .

Navigation Stack

ROS Navigation Stack (   PhD Paul‑Edouard Sarlin) .

  • Map prior:

  • Kinect: ,

  • Odometry:

  • Map updater:

  • Global planner: ,

  • Local planner:

 - navigation,  move_base(  ) : . – , , , . . , , .

   Navigation Stack .    ROS Navigation Stack.

   robot_navigation, .

 amcl. , , .

 teb_local_planner (github),  TU Dortmund University. c :

- , , .

:

  • obstacle_layer – (  Obstacle inflation in costmap2d)

  • inflation_layer –

  • static_layer –

:

  • costmap_2d::StaticLayer – ,

  • costmap_2d::ObstacleLayer –  LaserScan  PointCloud

  • costmap_2d::InflationLayer –  costmap 

  • costmap_2d::VoxelLayer – 3D

, .  costmap_2d::StaticLayer, ,  costmap  .

 costmap_2d   . (123), (staticmapobstacles),  flat  layered.

 Sr4l/virtualobstacles, Costmap Plugin  costmap_2d::MovingObjects. ,  Lars Kistner   , . - . .

     .

()  Maps Merger.

:

  1. /maps/map_amcl – ,  gmapping (  )

  2. /maps/map_mb – /maps/map_amcl + ( )

  3. /maps/crossroads –

  4. /maps/start_wall –

  5. /maps/map_merged -  /maps/map_mb/maps/crossroads/maps/start_wall( )

  map_server   navigation.

:

rostopic pub /move_base_simple/goal geometry_msgs/PoseStamped '{header: {stamp: now, frame_id: "map"}, pose: {position: {x: 0.674, y: 0.119, z: 0.0}, orientation: {w: 1.0}}}'
# PS       (    )

 . ( )  velocity_smoother,  .

TurtleBot . .

RGBD- ( ). , .

SLAM , , , .

, RGBD- .

. , ,  teb_local_planner  . , . , , . 2 , . , , . - , , .

, , , .

.  Starline, : , , , , .

- :

C'est tout, merci beaucoup d'avoir lu!




All Articles