Starline Hackathon 2020

Hola a todos, con el propósito de transferir experiencia, así como con el fin de estructurar y consolidar toda la cantidad de información que hubo que trasladar, estoy escribiendo este artículo. No pretendo presentar un manual para crear nuestra solución (   ya que el código fuente ya está completamente abierto). Quiero decir que el interés principal es delinear los principios básicos de la construcción de tales sistemas, delinear las fuentes utilizadas, de contar a qué nos rendimos y a qué llegamos. Intentaré mantener un equilibrio entre la cantidad de información y la legibilidad.

Si no sabes qué es ROS, te aconsejo que estudies el recurso  Voltbto.com , por ejemplo, aquí hay  un artículo sobre cómo trabajar con servicios en ROS .

A finales de marzo de 2020, Starline celebró un hackathon por segunda vez en su historia  .

En comparación con el  hackathon anterior  ( youtube ), celebrado en octubre de 2018, esta vez el nivel de organización ha aumentado considerablemente: había regulaciones claras, un sistema de evaluación, igualdad de condiciones para todos los participantes y una tarea de calificación compleja, como debería ser.

En esta ocasión, los organizadores pusieron un listón muy alto en cuanto a la complejidad de la competición: tanto que de las 25 candidaturas presentadas, solo 5. Para resolver la tarea clasificatoria, era necesario configurar el robot en el  simulador gazebo  para que se desplazara de un punto a otro. Más sobre esto  aquí .

: , . , ( ):

  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, : , , , , .

- :

Eso es todo, ¡muchas gracias por leer!




All Articles