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 .
: , . , ( ):
, [] .
. , , , . : , ( ).
Turtlebot E2 :
Kobuki
RGBD- Orbbec Astra
Rplidar A2
Intel NUC [BOXNUC7I7BNH]
Logitech HD Pro C920
, , . , , .
4 , , .
(7x7 ): , . , - , . .
( ):
“”
“ ”
, .
( ) . ́ .
:
“”
, ROS
, . TurtleBot3 robotis.com, autorace: turtlebot3autorace, https://github.com/ROBOTIS-GIT/turtlebot3autorace2020. :
-.
State Machine
: - : GOTO_0
, GOTO_1
. 0
1
.
, 0
, , ; , 0
, , , , . , , , .
( ) . , .
GOTO_0
, GOTO_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
:
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 .
, /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.
amcl
. , , .
teb_local_planner
(github), TU Dortmund University. c :
- , , .
:
:
costmap_2d::StaticLayer
– ,costmap_2d::ObstacleLayer
–LaserScan
PointCloud
costmap_2d::InflationLayer
–costmap
costmap_2d::VoxelLayer
– 3D
, . costmap_2d::StaticLayer
, , costmap
.
costmap_2d
. (1, 2, 3), (staticmap, obstacles), flat layered.
Sr4l/virtualobstacles, Costmap Plugin costmap_2d::MovingObjects
. , Lars Kistner , . - . .
() Maps Merger.
:
/maps/map_mb
–/maps/map_amcl
+ ( )/maps/crossroads
–/maps/start_wall
–/maps/map_merged
-/maps/map_mb
,/maps/crossroads
,/maps/start_wall
( )
:
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 ( )
Layered Costmaps for Context-Sensitive Navigation David V. Lu, Dave Hershberger, and William D. Smart
Fast Gaussian Process Occupancy Maps. In 2018 15th International Conference on Control, Automation, Robotics and Vision (ICARCV) (pp. 1502–1507). IEEE. Yuan, Y., Kuang, H. & Schwertfeger, S. ( gpmaps.py)
TU Dortmund University
costmap_converter
costmap
. github, DBSCAN.
TurtleBot . .
RGBD- ( ). , .
SLAM , , , .
, RGBD- .
. , , teb_local_planner
. , . , , . 2 , . , , . - , , .
, , , .
. Starline, : , , , , .
- :
developer.starline.ru – API Starline.
Au fait, le portail RoboFinist , son principal développeur n'est qu'une seule personne - Kirill Gorev. Et sur ce portail, vous pouvez trouver plus de photos de ce merveilleux événement.
Chaîne YouTube de Nikolay Dem . Kolya est un ingénieur en robotique cool et des vidéos intéressantes apparaissent de temps en temps sur son YouTube.
C'est tout, merci beaucoup d'avoir lu!