Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Technologie de l'Internet des objets

RTI Labs lance le connecteur Python pour Connext DDS – Maintenant dans la suite Connext

RTI Labs lance le connecteur Python pour Connext DDS – Maintenant dans la suite Connext

Beaucoup de choses ont changé depuis la première parution de cet article. Aujourd'hui, vous pouvez accéder à DDS directement depuis Python ou JavaScript – grâce aux bêta-testeurs de notre programme RTI Labs, RTI Connector pour Connext® DDS a été intégré à la famille de produits Connext.

Cette semaine, nous sommes ravis d'introduire RTI Labs, une initiative gratuite qui donne à nos clients un accès précoce à la prochaine génération de technologie IIoT industrielle. Les projets publiés sous RTI Labs sont expérimentaux, permettant aux participants de prototyper de nouvelles idées et de façonner la feuille de route de nos produits grâce à des retours réels. C'est un gagnant-gagnant pour RTI et la communauté.

Nous lançons le programme avec trois projets expérimentaux, et le premier est RTI (R) Connector pour Connext DDS. Si vous avez déjà téléchargé RTI Connext 5.3.0 et lancé le RTI Launcher, vous remarquerez de nouvelles icônes dans l'onglet « Lab » – l'une d'elles est l'icône Connector.

RTI Labs lance le connecteur Python pour Connext DDS – Maintenant dans la suite Connext

Cliquer sur l'icône Connector ouvre la page RTI Connector sur le Portail Communautaire. Connector a été créé par l'équipe de recherche de RTI pour accélérer le développement de démos et les tests rapides. Il a commencé avec une interface Lua vers RTI Prototyper et s'est depuis étendu pour supporter Python et JavaScript/node.js.

Qu'est-ce que RTI Connector ?

RTI Connector pour Connext DDS fournit une interface légère et scriptable à la pleine puissance de RTI Connext DDS. Il supporte JavaScript, Python et Lua, et s'appuie sur les capacités de Création d'Application XML et de Données Dynamiques de Connext. Bien que cet article se concentre sur l'API Python, les mêmes principes s'appliquent à JavaScript/node.js et Lua/Prototyper.

Cas d'usage

Les premiers adopteurs ont trouvé Connector précieux dans plusieurs scénarios :

Démarrage avec RTI

Ce qui suit suppose une familiarité de base avec Python. RTI Connector fonctionne avec Python 3 et versions antérieures, s'exécute sur tous les principaux systèmes d'exploitation d'entreprise, et est supporté sur des cartes embarquées comme le Raspberry Pi. Une liste complète des plateformes est disponible sur notre site. Si vous avez besoin de support pour un autre environnement, contactez-nous sur le forum.

Installez Connector depuis PyPI :

 pip install rticonnextdds_connector

Alternativement, clonez le dépôt :

 git clone https://github.com/rticommunity/rticonnextdds-connector.git

Le dépôt inclut plusieurs exemples prêts à l'exécution :

Aperçu de l'API

Pour une analyse plus approfondie, consultez le README dans notre dépôt GitHub. Voici une présentation concise de l'API de base.

D'abord, importez la bibliothèque Connector :

 import rticonnextdds_connector as rti

Créez une instance Connector avec la configuration désirée et le fichier XML :

 connector = rti.Connector("MyParticipantLibrary::Zero", "./ShapeExample.xml")

La première chaîne nomme la configuration, et la seconde pointe vers un fichier de Création d'Application XML-Base. Un fichier exemple est disponible dans le dépôt.

Accédez aux Data Writers via getOutput et aux Data Readers via getInput :

 output = connector.getOutput("MyPublisher::MySquareWriter") input = connector.getInput("MySubscriber::MySquareReader")

Les deux méthodes acceptent le nom de l'entité tel que défini dans le XML.

Définissez les champs sur un writer en utilisant un dictionnaire ou individuellement :

 output.instance.setDictionary(sample) output.instance.setNumber("y", 2)

Côté reader, récupérez les échantillons avec read() ou take(), puis itérez :

 input.read() # or input.take() numOfSamples = input.samples.getLength() for j in range(1, numOfSamples+1): if input.infos.isValid(j): x = input.samples.getNumber(j, "x") y = input.samples.getNumber(j, "y") # …

Les échantillons peuvent aussi être accédés comme un dictionnaire :

 sample = input.samples.getDictionary(j)

Lors du travail avec le multithreading, protégez l'accès à Connector – des exemples sont disponibles dans le dépôt.

Limitations

Bien que RTI Connector simplifie de nombreuses tâches, il est intentionnellement léger. Il ne supporte que les Données Dynamiques, pas les types compilés, et manque certaines fonctionnalités avancées disponibles dans la suite complète Connext DDS Pro. Pour des cas d'usage spécialisés, nous recommandons de consulter notre documentation ou de contacter le support pour des solutions alternatives.

Coût

RTI Connector est gratuit. Nous demandons seulement aux utilisateurs de fournir des retours pour aider à façonner les futures versions. Vos insights influencent notre feuille de route.

Conclusion

Cet article offre une vue d'ensemble de RTI Connector pour Python. La meilleure façon d'apprendre est d'expérimenter – téléchargez le paquet, exécutez les exemples, et partagez votre expérience sur le Forum Communautaire RTI. Vos retours sont inestimables alors que nous affinons l'outil et planifions la prochaine génération de fonctionnalités.

Technologie de l'Internet des objets

  1. OpenDDS vs RTI Connext DDS : Choisir la bonne solution Data Distribution Service
  2. Construction système monitoring time-series robuste : Intégration RTI Connext DDS, Telegraf, InfluxDB
  3. RTI Connext 6 Maintenant Disponible : Performance, Sécurité, Connectivité Unifiée Améliorées
  4. Connext DDS dans l'IoT Industriel : 5 Insights Clés pour Fiabilité, Sécurité, Scalabilité
  5. RTI Perftest 2.4 publié : Tests de performance améliorés pour Connext DDS
  6. Pourquoi RTI Connext DDS est le middleware de référence pour les véhicules autonomes
  7. Top 7 des ressources pour développeurs IIoT – Édition 2017
  8. Construire un robot avec Raspberry Pi et Python : Guide complet
  9. Comprendre type() et isinstance() en Python : exemples pratiques