Au cours des 40 dernières années, de nombreux efforts ont été déployés pour améliorer l'environnement de programmation logicielle de l'interface IEEE-488. Des améliorations telles que l'extension IEEE-448.2 de la norme ont défini un ensemble de commandes de bas niveau pour les instruments et le bus, commandes qu'un instrument doit prendre en charge pour être conforme. L'industrie a également adopté la normalisation des commandes de programmation de haut niveau pour les instruments, connues sous le nom de SCPI (Standard Commands for Programmable Instruments), ce qui a permis d'améliorer considérablement le temps de développement des tests et de réduire le temps nécessaire à la maintenance des logiciels existants. Bien que la mise en œuvre de SCPI soit largement acceptée par les fabricants d'instruments, l'ingénieur en charge de l'automatisation des instruments reste responsable d'une grande partie du codage des instruments.


Les efforts déployés pour créer un niveau d'abstraction plus élevé pour l'automatisation des instruments ont d'abord abouti à des pilotes d'instruments propriétaires, puis à des pilotes plus interopérables et basés sur des normes. Les instruments actuels réalisent une grande variété d'analyses et de mesures complexes, et nombre d'entre eux sont conçus pour fonctionner comme une application sous un système d'exploitation Microsoft. L'infrastructure .NET de Microsoft permet aux fournisseurs d'instruments d'accéder à des informations beaucoup plus approfondies sur les mesures, sans avoir à consulter le guide du programmeur SCPI ni à apprendre à utiliser une suite de pilotes spécifique. L'avènement des logiciels pilotes d'instruments hébergés sur la technologie Microsoft .NET a permis aux ingénieurs en automatisation de développer plus rapidement des logiciels de test et d'accéder plus facilement aux informations complexes générées par l'instrument.
Cet article vise à illustrer comment la technologie .NET, mise en œuvre par un fournisseur d'oscilloscopes dans son produit de test de conformité des transmetteurs numériques, fournit des informations de mesure à valeur ajoutée, facilement accessibles au code d'automatisation de ses clients. La technologie .NET a permis la création d'un cadre commun utilisé pour développer toutes ses applications de communication de données conformes, conçues pour gérer les tests de transmetteurs numériques par rapport à une norme spécifique. La technologie .NET a non seulement facilité le travail des développeurs internes du fabricant d'oscilloscopes, mais a également fourni un très haut niveau d'abstraction permettant à ses clients de tirer parti de l'exécution à distance et de l'automatisation côté client. Les mesures au sein de l'écosystème actuel des appareils numériques sont devenues plus complexes à mesure que ces appareils deviennent plus rapides et plus petits. Jusqu'à récemment, l'ingénieur en automatisation était chargé de créer les algorithmes de mesure nécessaires aux tests de conformité à une norme donnée, comme PCI Express, SAS et autres normes de communication de données. Aujourd'hui, les clients ne disposent tout simplement pas des équipes d'ingénierie logicielle nécessaires pour suivre l'évolution constante des normes de communication de données. Ils attendent désormais des fabricants d'oscilloscopes qu'ils fournissent le logiciel permettant de qualifier un appareil de conforme à une norme spécifique.
    

Dans les premiers oscilloscopes, les ingénieurs concevaient généralement leurs propres algorithmes pour mesurer les temps de montée et de descente des signaux électriques. Ce n'est qu'à la fin du XXe siècle que ces mesures ont été intégrées au micrologiciel des oscilloscopes. Dans les années 1990, les ingénieurs attendaient de leurs oscilloscopes des fonctions de mesure de base, comme la mesure du temps de montée. Au XXIe siècle, les clients attendent des fabricants d'oscilloscopes qu'ils relèvent les défis de test des normes de communication de données spécifiques et qu'ils fournissent une solution de mesure complète, facilement accessible via leur propre code d'automatisation. L'offre de produits d'un fabricant d'oscilloscopes doit témoigner d'un investissement continu dans l'expertise en mesure afin de répondre aux exigences des normes de communication de données actuelles et futures.
Un fabricant d'oscilloscopes qui intègre davantage d'expertise en mesure dans son offre de produits est généralement un membre actif d'organismes de normalisation tels que PCI Express, SATA, JEDEC et USB-IF. Cette participation active lui permet de contribuer à la définition des spécifications de test visant à garantir l'interopérabilité des appareils compatibles avec une norme particulière. Une fois les exigences de test définies, le fabricant d'oscilloscopes peut implémenter les différentes mesures définies par la norme et les intégrer à son logiciel. Un client peut alors accéder à une suite logicielle de test conforme aux normes, rendue possible par la technologie .NET du fournisseur d'oscilloscope, afin de vérifier la conformité de son appareil à une norme de communication de données spécifique. Outre une interface graphique conviviale permettant au client d'utiliser l'oscilloscope, la plateforme logicielle doit également offrir un accès distant complet. Un fournisseur d'oscilloscope proposant des solutions de test pour un large éventail de normes de communication de données accroît considérablement la productivité des équipes d'ingénierie du client. Ce fournisseur est responsable de l'interprétation des spécifications de test d'une norme et est chargé du développement du logiciel de mesure et de l'assistance technique. De plus, la fourniture du logiciel de mesure par le fournisseur d'oscilloscope facilite la corrélation des données de test entre les équipes d'ingénierie du client et celles de son client, grâce à l'utilisation de tests et d'algorithmes communs.
 
Rapport de test d'échantillon DDR4La figure 1 illustre un exemple de logiciel présentant les tests disponibles définis dans la norme pour la mémoire DDR4. Le client sélectionne les tests et mesures pertinents, et les algorithmes appropriés sont implémentés automatiquement par le logiciel du fournisseur d'oscilloscope. Il est important de choisir un fournisseur d'oscilloscopes garantissant la cohérence de ses logiciels de mesure conformes aux normes. Un progiciel de test DDR4 doit être cohérent avec celui destiné à PCI Express, ce qui améliore l'efficacité et la productivité de l'utilisateur final.
 
Un progiciel complet permettant d'effectuer des tests selon une norme de communication de données doit produire des données dans un format facilement lisible, comme illustré dans l'exemple de la figure 2. Un rapport HTML incluant des captures d'écran, le cas échéant, de tous les tests exécutés, avec les informations de réussite/échec/marge, est très utile au client pour le partage avec ses équipes d'ingénierie et ses clients.
 
    Les oscilloscopes modernes du XXIe siècle sont considérés comme des systèmes de mesure dotés de capacités d'interrogation innovantes permettant d'accéder à des signaux inaccessibles par câble RF direct. Des moteurs algorithmiques basés sur FPGA, alimentés par l'accès à des langages de chiffrement externes et à des bibliothèques mathématiques, sont nécessaires pour analyser et produire de nombreuses valeurs de mesure requises par les appareils numériques modernes. Il est important non seulement d'accéder aux tests souhaités via une interface utilisateur graphique interactive, comme illustré dans la figure 1, mais aussi de pouvoir les exécuter à partir du code d'automatisation du client. L'ingénieur en automatisation peut également avoir besoin de surveiller les alimentations électriques ou les caméras environnementales avant d'exécuter un test prescrit, en plus d'intégrer les données mesurées dans une base de données d'entreprise. Un fournisseur d'oscilloscopes capable de fournir une interface d'automatisation fluide pour les mêmes fonctions que celles exposées dans l'interface utilisateur graphique interactive apporte non seulement une valeur ajoutée significative à l'ingénieur en automatisation, mais surtout, permet une TestMenu-wmeilleure utilisation des ressources d'ingénierie de l'entreprise. Un framework logiciel basé sur la technologie .NET permet à l'ingénieur en automatisation d'accéder à toutes les fonctions du logiciel de mesure du fournisseur d'oscilloscopes, conçu pour une norme de communication de données. De plus, il permet aux ingénieurs d'explorer les événements d'exécution asynchrones pour intégrer l'automatisation des instruments associés, par exemple en répondant par programmation au message « Réglez la sortie de l'alimentation sur 1 V et cliquez sur « OK » pour continuer ». Ces événements ne nécessitent plus l'intervention manuelle souvent fastidieuse.
    L'exemple Python suivant, illustrant l'utilisation d'une suite .NET, offre à l'ingénieur en automatisation un niveau d'abstraction optimal sans le submerger par les détails de la configuration des conditions de test, de la gestion du flux de test et, enfin, de la gestion des données mesurées. Le moteur Common Language Runtime de Microsoft permet de charger facilement une suite .NET depuis divers langages de programmation tels que Visual Basic, C# et C++, ainsi que des langages de programmation graphique comme VeePro de Keysight et LabWindows et LabVIEW de NI. De plus, la technologie .NET peut être étendue à une grande variété de tâches d'automatisation, notamment le contrôle de caméras environnementales, la communication avec l'appareil testé, la commutation de matrices et, bien sûr, d'autres instruments qu'un oscilloscope. `
import clr
clr.AddReference("Keysight.Infiniium.AppFW.Remote")
from Keysight.Infiniium.AppFW.Remote import *`
Nécessaire pour connecter l'oscilloscope via une connexion Ethernet afin d'accéder aux méthodes et propriétés exposées dans les ensembles .NET.
remoteObj = RemoteAteUtilities.GetRemoteAte("192.168.1.107")
remoteApp = IRemoteAte(remoteObj)
    L'objet nommé remoteApp peut désormais accéder à toutes les fonctions du logiciel de mesure spécifiques à la norme de communication de données sélectionnée, comme s'il s'agissait d'une interaction depuis l'interface graphique du logiciel de test. Voici le code nécessaire à l'ingénieur en automatisation pour créer un nouveau projet, de la même manière qu'en utilisant le menu Fichier > Nouveau projet de l'interface graphique du logiciel de mesure :
remoteApp.NewProject(True)

    Le code suivant récupère les mêmes informations que celles présentées dans la figure 1 lors de l'exécution interactive du logiciel de mesure. Une fois que l'ingénieur en automatisation a pris connaissance des tests disponibles, il peut les sélectionner par programmation, comme s'il cochait une case à côté du nom du test dans la figure 1. L'interface utilisateur graphique reflétera d'ailleurs la programmation effectuée à distance, ce qui facilite grandement le débogage du code.
`myAvailableTests = remoteApp.GetCurrentOptions("TestsInfo")
`. La boucle suivante extrait les noms et identifiants des tests disponibles :
  `myTestName = info.Name`  
  , `myTestId = info.ID`
, `testToSelect = myAvailableTests[0].ID`. Le premier test disponible est sélectionné pour exécution :
`remoteApp.SelectedTests = [testToSelect]`.
Le code suivant exécute le test sélectionné et génère le rapport HTML, comme illustré dans la figure 2. Le fichier `MY_HTML` est créé dans le dossier `C:\data`.
remoteApp.Run()
descriptionHtmlString = 'MY_HTML'
saveResultHtmlOptions = ExportHtmlOptions()
saveResultHtmlOptions.ReportName = descriptionHtmlString
saveResultHtmlOptions.OverwriteExisting = True
saveResultHtmlOptions.BasePath = "C:\data"
remoteApp.ExportResultsHtmlCustom(saveResultHtmlOptions);
Un élément essentiel de la documentation pour une utilisation efficace de la suite .NET est un fichier d'aide complet et à jour fourni par le fabricant de l'oscilloscope. Un extrait de ce fichier d'aide, présenté ci-dessous, définit les options disponibles lors de la création d'un rapport HTML. Ces options sont implémentées dans l'exemple Python précédent.
Propriétés de ExportHtmlOptions Keysight DigitalTestApps Interface distante pour .NET
Version 3.40
Le type ExportHtmlOptions expose les membres suivants.


Nom et description
des propriétés
: BasePath : Chemin d’accès pour enregistrer le rapport. Un sous-répertoire nommé ReportName sera créé.

ÉcraserExistant : définissez cette propriété sur « vrai » pour écraser un rapport existant portant le même nom à l’emplacement spécifié.
NomDuRapport : nom du rapport à générer.

Mieux encore, les indicateurs intégrés à l'interface utilisateur graphique répondent à des questions telles que : « Quelle commande d'automatisation cette case à cocher sélectionne-t-elle ? »
Les entreprises ne peuvent plus se permettre de consacrer des ressources d'ingénierie précieuses à la compréhension de toutes les exigences de test d'une norme de communication de données spécifique, ni de financer le développement du logiciel nécessaire pour effectuer les mesures requises par cette norme. Dès lors que le fournisseur d'oscilloscopes devient le fournisseur du progiciel de mesure pour une norme de communication de données spécifique, les ingénieurs du client peuvent se concentrer plus rapidement sur l'obtention d'informations précieuses sur leur produit à partir des données de mesure générées par le progiciel. La possibilité de corréler les données obtenues à partir de différents oscilloscopes utilisant la même version du progiciel de mesure améliore la productivité du personnel d'ingénierie du client. Les clients continueront de se tourner vers les fournisseurs d'oscilloscopes pour obtenir un oscilloscope faisant office de système de mesure, incluant des solutions de connectivité avec leur appareil (sondes, progiciels de mesure compatibles avec différentes normes de communication de données, etc.) et un haut niveau d'abstraction du progiciel de mesure. Ceci permet aux ingénieurs en automatisation de contrôler facilement l'exécution du progiciel de mesure depuis leur logiciel d'automatisation interne.

Plus d'informations