NI Remote-Ability permet une interaction à distance avec l’instrumentation NI, en utilisant la technologie Remote Procedure Calls (gRPC). NI a investi pour garantir que ses produits fonctionnent avec la technologie gRPC, afin que nos clients puissent interagir à distance avec les produits NI en vue de prendre des mesures de haute qualité et à faible latence. NI Remote-Ability permet aux ingénieurs d’exploiter les workflows de test existants avec flexibilité.
Le logiciel Remote-Ability de NI permet d’interagir à distance avec le matériel et les services de NI afin d’effectuer des mesures de haute qualité à faible latence. Il utilise des applications autonomes et/ou des API et/ou des commandes prédéfinies de manière globale et indépendante du système d’exploitation, tout en tirant parti d’une architecture client/serveur.
NI Remote-Ability utilise la technologie gRPC « sous le capot ». L’utilisation d’un serveur basé sur gRPC vous offre la possibilité d’accéder aux équipements de test et de mesure et de les contrôler à partir de nombreux environnements de programmation, plates-formes et systèmes d’exploitation différents.
La technologie gRPC utilise les buffers de protocole (Proto3) comme format d’échange de messages. La figure ci-dessous illustre la manière dont les requêtes et les réponses de protocole sont envoyées entre le serveur gRPC et les stubs.
Figure 1 : Requêtes et réponses du serveur gRPC
NI Remote-Ability est pris en charge sous Windows, Linux et Mac, pour une gamme de langages de programmation. Pour obtenir une liste complète des langages et des systèmes d’exploitation pris en charge, reportez-vous à nos ressources de support gRPC.
La technologie gRPC est un framework d’appels de procédure à distance (RPC, Remote Procedure Calls) open source qui peut s’exécuter n’importe où. Elle permet aux applications client et serveur de communiquer de manière transparente, tout en facilitant la construction de systèmes connectés à distance.
Avec gRPC, une application client peut appeler directement une méthode sur une application serveur sur une autre machine, comme s’il s’agissait d’un objet local, ce qui facilite la création d’applications et de services distribués. Côté serveur, le serveur implémente cette interface et exécute un serveur gRPC afin de gérer les appels client. Côté client, le client dispose d’un stub (appelé simplement client dans certains langages) qui fournit les mêmes méthodes que le serveur.
L’un des principaux aspects de l’utilisation de la technologie gRPC est qu’elle est indépendante du système d’exploitation et du langage côté client, qu’elle vous offre de la flexibilité et qu’elle peut être adaptée au système d’exploitation actuel ou aux langages de programmation déjà utilisés dans votre projet.
En utilisant gRPC pour NI Remote-Ability, NI rejoint d’autres grandes entreprises telles que Google, NetFlower et Square. La technologie gRPC présente d’importantes capacités que d’autres options telles que RPyC, SCPI et HiSLIP n’offrent pas :
NI Remote-Ability utilise les mécanismes d’autorisation par défaut de gRPC. La connexion peut être sécurisée par un protocole TLS côté serveur ou TLS mutuel (Zero Trust), ce qui garantit que la communication est chiffrée et que le client/serveur est fiable. Il est possible de mettre à jour le serveur pour inclure une autorisation personnalisée en intégrant un serveur d’autorisations.
Utiliser NI Remote-Ability constitue un bon moyen de minimiser la latence lorsque vous effectuez des mesures de haute qualité. L’exemple suivant montre des résultats de test de performances lors de la lecture d’une tension d’entrée analogique à partir d’un châssis cDAQ-9179 simulé avec un module NI-9207 de la Série C.
Transfert en continu des données du serveur au client :
Localhost Linux
Localhost Windows 10 : 4 Go/s1
Linux à Linux : 11 Mb/s
Réseau local de liaison Thunderbolt 3
1 Attention à CISO AMP
NI-DAQmx avec châssis cDAQ-9179 simulé et modules NI-9207 :
Comme le montrent ces tests de performances, les appels gRPC sont comparables aux appels de drivers natifs et présentent une latence minimale. Grâce à la technologie gRPC, les clients NI peuvent interagir à distance avec les produits NI pour effectuer des mesures de haute qualité à faible latence, mais aussi tirer parti des workflows de test existants.