Bêta 2 (r2b2)

Plates-formes prises en charge

Nous prenons en charge ROS 2 Beta 2 sur trois plates-formes : Ubuntu 16.04 (Xenial), macOS 10.12 (Sierra) et Windows 10. Nous fournissons à la fois des packages binaires et des instructions sur la façon de compiler à partir de la source pour les 3 plates-formes (voir instructions d'installation ainsi que la documentation).

Caractéristiques

Améliorations depuis la version bêta 1

  • Prise en charge de DDS_Security (alias SROS2, voir sros2)

  • Paquets Debian pour Ubuntu Xenial

  • Typesupport a été repensé afin que vous ne construisiez qu’un seul exécutable et que vous puissiez choisir l’une des implémentations RMW disponibles en définissant une variable d’environnement (voir documentation).

  • Prise en charge des espaces de noms pour les nœuds et les rubriques (voir article de conception, voir les problèmes connus ci-dessous).

  • Un ensemble d’outils en ligne de commande utilisant la commande extensible ros2 (voir article conceptuel).

  • Un ensemble de macros pour la journalisation des messages en C/C++ (voir les docs API de rcutils).

Fonctionnalités sélectionnées des versions alpha/bêta précédentes

Pour la liste complète, voir notes de version antérieures.

  • Implémentations C++ et Python des bibliothèques clientes ROS 2, y compris les API pour :

    • Publication et abonnement aux rubriques ROS

    • Demander et répondre aux services ROS (synchrone (C++ uniquement) et asynchrone)

    • Obtenir et définir les paramètres ROS (C++ uniquement, synchrone et asynchrone)

    • Rappels de minuterie

  • Prise en charge de l’interopérabilité entre plusieurs implémentations DDS/RTPS

    • eProsima Fast RTPS est notre implémentation par défaut et est inclus dans les packages binaires

    • RTI Connext est pris en charge : créez à partir de la source pour l’essayer

    • Nous avons initialement pris en charge PrismTech OpenSplice, mais sa prise en charge est actuellement suspendue

  • Une API graphique pour les événements réseau

  • Découverte distribuée

  • Chemins de code sécurisés en temps réel pour la publication et l’abonnement avec une implémentation DDS compatible (uniquement Connext pour le moment)

    • Prise en charge des répartiteurs personnalisés

  • Nœud de pont dynamique ROS 1 <-> ROS 2

  • Modèle de thread d’exécuteur (C++ uniquement)

  • Modèle de composant pour composer des nœuds à la compilation / au lien / à l’exécution

  • Composant géré à l’aide d’un cycle de vie standard

  • Format .msg étendu avec de nouvelles fonctionnalités :

    • Tableaux bornés

    • Les valeurs par défaut

Problèmes connus

  • Nous suivons les problèmes dans divers référentiels, mais le principal point d’entrée est le ros2/ros2 issue tracker

  • Nous aimerions souligner un problème connu que nous examinons et qui n’autorise pas deux sujets avec le même nom de base mais des espaces de noms différents à avoir un type différent lors de l’utilisation de rmw_connext_cpp.

  • Les services avec de longues réponses ne fonctionnent pas avec Fast-RTPS. Le correctif, bien qu’il ne fasse pas partie de la version bêta 2, est disponible en amont afin que vous puissiez contourner ce problème en créant à partir de la source à l’aide de la branche principale Fast-RTPS.