Exemple de connexions industrielles
La fonctionnalité Connexions industrielles de ThingWorx vous permet de vous connecter à la solution ThingWorx Kepware Server pour modéliser, configurer et lier des tags existants sur ThingWorx Kepware Server à des objets dans le modèle ThingWorx.
* 
Cet exemple suppose que ThingWorx 8.0 ou version ultérieure est installé et en cours d'exécution.
Création d'une clé d'application et d'un objet dans ThingWorx
Pour vous connecter à ThingWorx Kepware Server, vous devez créer une clé d'application et un objet basé sur le modèle d'objet IndustrialGateway.
1. Créez une clé d'application dans ThingWorx. Copiez l'ID de clé en vue de sa réutilisation ultérieure.
2. Créez un objet dans ThingWorx. Notez le Nom de cet objet, en vue de sa réutilisation ultérieure dans ThingWorx Kepware Server.
* 
Dans cet exemple, l'objet est nommé ThingWorxKepwareServer.
3. Dans le champ Modèle d'objet de base, sélectionnez IndustrialGateway.
4. Cliquez sur Enregistrer.
Installation de ThingWorx Kepware Server
1. Téléchargez et lancez le programme d'installation de ThingWorx Kepware Server.
2. Sur la page d'accueil, cliquez sur Next.
3. Acceptez les termes du contrat de licence et cliquez sur Next.
4. Acceptez ou modifiez l'emplacement d'installation, puis cliquez sur Next.
5. Acceptez ou modifiez l'emplacement des données, puis cliquez sur Next.
6. Acceptez ou désactivez l'installation d'un raccourci sur le bureau pour ThingWorx Kepware Server, puis cliquez sur Next.
7. Sélectionnez une suite le cas échéant, puis cliquez sur Next.
8. Cliquez sur l'icône à gauche de Full Installation et sélectionnez Entire feature will be installed on local hard drive, ou activez les fonctionnalités appropriées pour votre environnement.
9. Vérifiez vos sélections, puis cliquez sur Next (ou sur Back pour les modifier).
10. Activez l'adressage dynamique (au besoin), puis cliquez sur Next.
11. Définissez un mot de passe administrateur fort (ou ignorez cette étape pour le moment), puis cliquez sur Next.
12. Cliquez sur Install.
13. Cliquez sur Finish.
Une icône ThingWorx Kepware Server est affichée sur le bureau.
Configuration de ThingWorx Kepware Server et connexion à ThingWorx
1. Cliquez sur l'icône du bureau pour lancer la configuration de ThingWorx Kepware Server. La fenêtre Configuration s'ouvre.
2. Cliquez avec le bouton droit sur Project, puis sélectionnez Properties.
3. Dans le Property Editor, sélectionnez ThingWorx.
4. Entrez la configuration suivante (les paramètres non répertoriés ici peuvent conserver leur valeur par défaut) :
Définissez Enable sur Yes.
Host : adresse IP ou nom de domaine complet de votre instance de ThingWorx.
Port : port sur lequel ThingWorx répond (généralement 80 ou 443).
Application key : ID de clé de la clé d'application que vous avez créée plus haut.
Trust self-signed certificates : si votre plateforme utilise un certificat auto-signé, configurez ce paramètre sur Yes. Pour une sécurité maximale, définissez ce paramètre sur No.
Trust all certificates : désactive ou active la vérification stricte des certificats, laquelle peut être nécessaire pour certains certificats auto-signés. Pour une sécurité maximale, définissez ce paramètre sur No.
Disable encryption : définissez ce paramètre sur Yes si vous n'utilisez pas le chiffrement SSL sur votre plateforme. Pour une sécurité maximale, définissez ce paramètre sur No.
* 
Les communications non chiffrées représentent un risque pour la sécurité et ne doivent être activées qu'aux fins de tests à petite échelle, ou si l'environnement est bien sécurisé par d'autres moyens.
Thing name : nom de l'objet IndustrialGateway que vous avez créé dans ThingWorx plus haut.
* 
Le Thing name doit correspondre au nom de l'objet IndustrialGateway et il est sensible à la casse.
5. Cliquez sur Appliquer. ThingWorx Kepware Server essaie dès lors de se connecter à ThingWorx.
* 
Dans le cadre d'une évaluation, il peut être utile d'utiliser le pilote Simulator avec ThingWorx Kepware Server pour des exemples de données et de tags. Consultez le manuel dédié au pilote Simulator.
Liaison des tags ThingWorx Kepware Server aux propriétés ThingWorx
Maintenant que ThingWorx Kepware Server est connecté à ThingWorx, localisez l'objet IndustrialGateway connecté à ThingWorx Kepware Server, et liez les tags de ThingWorx Kepware Server aux propriétés disponibles dans ThingWorx.
1. Ouvrez Composer.
2. Cliquez sur Parcourir > Connexions industrielles.
* 
Les connexions industrielles ne s'affichent pas si la connexion n'est pas établie. Si ThingWorx Kepware Server est installé mais pas connecté, cliquez sur Start Runtime Service depuis l'icône ThingWorx Kepware Server sur la barre d'outils du bureau.
3. Une fois ThingWorx serveur Kepware en cours d'exécution, l'objet Connexions industrielles s'affiche. Si la colonne avec l'icône de base de données n'affiche pas de coche, enregistrez l'objet pour le rendre persistant.
a. Cliquez sur le nom de l'entité.
b. Cliquez sur Enregistrer.
4. Dans le menu déroulant de l'en-tête Connexion industrielle, choisissez Détecter. Cliquez sur le signe plus (+) pour développer les canaux et les appareils qui existent sur ThingWorx Kepware Server.
5. Le fait de cliquer sur un appareil donné répertorie les tags disponibles sous ce dernier. Cochez la case associée à chacun des tags que vous souhaitez ajouter à un nouvel actif, puis cliquez sur Lier à une nouvelle entité.
6. Choisissez un modèle d'objet, puis cliquez sur OK.
* 
Vous devez sélectionner un type de modèle distant.
7. L'écran de création d'un nouvel objet s'affiche. Les informations de configuration et de liaison sont définies pour que le nouvel objet se connecte automatiquement via ThingWorx Kepware Server. Donnez un Nom à l'objet.
8. Cliquez sur Enregistrer.
* 
Lors de l'enregistrement, IndustrialThingShape est implémenté par l'objet et ne peut pas en être supprimé. Si vous enregistrez un objet dont le modèle d'objet de base est dérivé d'un objet distant avec la forme IndustrialThingShape implémentée, la liaison distante n'est autorisée qu'en fonction de l'adresse de tag.
* 
ThingWorx ne prend pas en charge l'héritage des propriétés sur IndustrialThingShapes.
Après qu'une propriété est remplacée sur un objet, les modifications apportées aux formes d'objet autour des liaisons de propriété ne sont pas répercutées. Cette fonction est limitée aux aspects autour de la liaison. Si le type de base d'une propriété est modifié pour une instance, cette modification sera propagée.
La propriété substituée sur l'objet doit être supprimée (c.-à-d. annulation de l'écrasement) et toutes les modifications associées aux liaisons effectuées sur la forme d'objet seront répercutées sur l'objet.
9. Dans le menu déroulant de l'en-tête Objet industriel, sélectionnez Propriétés et alertes. Cliquez sur Actualiser. Les valeurs sont modifiées en fonction des données actuelles dont dispose ThingWorx Kepware Server.
10. Pour afficher ou modifier une propriété, cliquez sur son nom dans la colonne Nom.
* 
Le type de push des propriétés table d'informations doit être défini sur Push systématique.
* 
Les propriétés suivantes sont spécifiques à l'objet Connexions industrielles :
Adresse du tag : adresse du tag, telle que définie sur ThingWorx Kepware Server. Le nom de la propriété et l'adresse du tag lié n'ont pas besoin d'être identiques.
Type de données industrielles : type de données, tel que défini sur ThingWorx Kepware Server. Correspond au type de base dans ThingWorx.
Type de push : le type de push par défaut est Push sur modification de la valeur. Bien que l'option Push en fonction de la zone morte fonctionne de manière similaire à l'option Push sur modification de la valeur, il existe une légère différence dans les valeurs qui sont transmises. Par exemple, si les valeurs issues de l'appareil sont 1, 2, 3 et 4 et que le type de push est défini sur Push sur modification de la valeur avec un Seuil de push de 2, la valeur transmise depuis l'Edge sera 1. Néanmoins, il n'y aura pas de nouveau push de cette valeur car elle n'a varié que de 1. Si le type de push est défini sur Push en fonction de la zone morte dans ce même exemple, il y a aura un push des valeurs 1 et 3, car la modification sera envisagée au regard de la dernière valeur ayant fait l'objet d'un push et non de la dernière valeur issue de l'Edge.
* 
Le type de push Push en fonction de la zone morte est uniquement disponible pour les connexions industrielles ThingWorx Kepware Server.
11. Pour lier des tags supplémentaires à une entité existante, cliquez sur Ajouter pour accéder aux attributs Nouvelle propriété. Définissez un nom ainsi que les autres propriétés souhaitées, en veillant à sélectionner Liaison distante sous Liaison. Cliquez sur Ajouter sous Adresse du tag pour sélectionner les tags supplémentaires à lier à l'entité sélectionnée.
* 
Vous pouvez également sélectionner l'option Tag dynamique, saisir une adresse de tag dynamique, puis sélectionner le Type de données industrielles avant de cliquer sur Terminé.
Propriétés de diagnostic de la passerelle industrielle
Il existe plusieurs propriétés de diagnostic sur la passerelle industrielle que vous pouvez utiliser pour obtenir des informations de statut sur ThingWorx Kepware Server.
* 
Toutes les propriétés de décompte sont journalisées dans un flux de valeurs.
ActiveTagCount : nombre de tags liés à des propriétés sur la plateforme. Nombre de tags activement fournis par ThingWorx Kepware Server à tous les clients connectés.
ClientCount : nombre total de clients OPC DA connectés à ThingWorx Kepware Server.
DateTime : date du jour et heure actuelle ajustées compte tenu du fuseau horaire local.
DroppedUpdates : nombre de mises à jour qui ont été ignorées par ThingWorx Kepware Server et qu'il n'a pas livrées à la plateforme.
* 
Cette valeur ne doit pas être utilisée pour vérifier la connectivité, car c'est cette mise à jour qui peut être ignorée.
ExpiredFeatures : noms des fonctionnalités ThingWorx Kepware Server, telles que pilotes ou plug-ins, qui ont expiré et qui ne fourniront plus de données jusqu'à ce que le runtime du serveur soit arrêté et redémarré ou qu'une licence soit acquise pour la fonctionnalité.
FullProjectName : nom complet et emplacement du fichier de projet ThingWorx Kepware Server en cours d'exécution.
Hostname : nom d'hôte de la machine sur laquelle s'exécute ThingWorx Kepware Server.
IndustrialThingCount : nombre d'objets distants utilisant cette passerelle industrielle pour transmettre des données sur la plateforme.
isConnected : état de connexion du serveur ThingWorx Kepware Server.
lastConnected : heure de la dernière connexion réussie du serveur ThingWorx Kepware Server.
LicensedFeatures : noms des fonctionnalités ThingWorx Kepware Server, telles que pilotes ou plug-ins, sous licence sur cette instance de ThingWorx Kepware Server.
OpcClientNames : noms des clients OPC DA connectés, s'ils sont fournis.
ProductName : nom du logiciel utilisant le modèle d'objet IndustrialGateway.
ProductVersion : version du logiciel utilisant le modèle d'objet IndustrialGateway.
ProjectName : nom du fichier projet utilisé par ThingWorx Kepware Server.
ProjectTitle : titre du fichier projet utilisé par ThingWorx Kepware Server.
PropertyCount : nombre de propriétés associées à des objets distants sur la plateforme.
TimeLimitedFeatures : noms des fonctionnalités ThingWorx Kepware Server, telles que pilotes ou plug-ins, qui ne sont pas sous licence sur cette instance de ThingWorx Kepware Server, mais qui communiquent des données.
TotalTagCount : nombre de tags attribués à tous les clients.
UpdatesPerSecond : nombre moyen de mises à jour transmises par push à ThingWorx depuis ThingWorx Kepware Server.
Services
Utilisez l'un de ces services pour gérer vos connexions industrielles.
Service
Description
BrowseItems
Les entrées sont path et filter. Le filtre est facultatif.
* 
Exemple de chemin : Channel1.Device1.
Renvoie : le SourceType (par exemple, Word ou tableau Word) est le type de données tel que défini sur ThingWorx Kepware Server et corrélé au type de base dans ThingWorx.
Ce service prend un filtre comme argument, ce qui permet de rechercher des noms de tag spécifiques. Les techniques de filtre qui peuvent être utilisées dans ce champ de filtre sont les suivantes :
* Chaîne de caractères générique : correspond à n'importe quelle chaîne de caractères.
? Caractère générique unique : correspond à n'importe quel caractère unique.
[...] Jeu de caractères d'inclusion : correspond à un ou plusieurs caractères inclus entre crochets. Les plages de caractères peuvent être indiquées par un tiret : "c-j".
[!...] Jeu de caractères d'exclusion : correspond à un ou plusieurs caractères non inclus entre crochets. Les plages de caractères peuvent être indiquées par un tiret : "c-j".
# Chiffre : correspond à n'importe quel caractère numérique.
BrowseGroups
Les entrées sont path et filter. En l'absence de path, tous les groupes sont renvoyés.
GetIndustrialThings
Renvoie tous les objets qui sont connectés via le modèle d'objet IndustrialGateway. Vous pouvez également accéder à l'application composite Objets distants dans ThingWorx pour afficher ces informations.
GetPropertySubscriptions
Vous pouvez utiliser ce service (sur l'objet distant) pour renvoi des aspects définis (propriétés telles que définies par ThingWorx Kepware Server).
* 
Exemple d'aspects :
{ "industrialDataType": "Word", "tagAddress": "Channel2.Device1.Tag11", "scanRate": 1000 }
GetBoundItems
Spécifiez une valeur numérique pour maxItems. Renvoie tous les tags liés à l'objet sur lequel le service est exécuté.
* 
Les informations concernant les tags liés sont également accessibles dans la zone Tags liés de l'objet IndustrialGateway.
GetPropertyDiagnostics
Disponible sur les objets distants et ajouté lors de l'utilisation de la forme d'objet IndustrialThingShape. Ce service prend en entrée le nom local d'une propriété liée à l'objet sur lequel le service est exécuté et renvoie les informations suivantes :
Description :
champ de description sur ThingWorx Kepware Server.
Valid : retour booléen. La propriété est-elle valide sur ThingWorx Kepware Server ?
DriverFriendlyName : nom présenté aux utilisateurs pour le pilote utilisé pour générer le tag.
Model : modèle d'appareil derrière le pilote utilisé pour générer le tag.
Error : retour booléen. L'appareil est-il en erreur ?
Name : nom de l'adresse sur ThingWorx Kepware Server.
DriverPersistedName : nom ThingWorx Kepware Server du pilote utilisé pour générer le tag.
Address : adresse physique du tag sur ThingWorx Kepware Server.
DataType : type de données industrielles tel que défini sur ThingWorx Kepware Server.
ReadOnly : retour booléen. Si la valeur est "vrai", le tag est en lecture seule.
CurrentValue : valeur du tag au moment de l'exécution du service.
CurrentQuality : qualité du tag au moment de l'exécution du service.
CurrentTimestamp : heure à laquelle le tag a été lu lors de l'exécution du service.
GetDiagnosticDigest
Disponible sur l'objet IndustrialGateway. Ce service prend en entrée n'importe quelle adresse de tag et renvoie les informations de diagnostic pertinentes pour ce tag disponibles sur ThingWorx Kepware Server. Il s'agit du seul service de diagnostic en mesure d'utiliser une adresse aussi bien statique que dynamique sur l'instance ThingWorx Kepware Server pour fournir des informations, ce qui signifie que le tag n'a pas besoin d'être lié à une propriété sur la plateforme pour que ce service renvoie des résultats. La définition de chacun des champs renvoyés est la même que pour le service GetPropertyDiagnostics (voir ci-avant).
Importation d'objets via un fichier CSV
Vous pouvez utiliser l'extension d'importation CSV pour importer des objets dans ThingWorx. Cette extension inclut un ImportRepository, un ImportHelper, une ImportMashup et un fichier d'exemple TestImport.csv .
1. Procurez-vous l'extension et importez-la dans ThingWorx. Cette extension est disponible sur le site support.ptc.com, sous Télécharger un logiciel > Commander et télécharger des mises à jour > ThingWorx Foundation > Release <dernière version> > ThingWorx CSV Import for Industrial Connectivity > Code de date le plus récent > CSV-Import-Extension-Package.
2. Ouvrez ImportMashup.
* 
Le fait de cliquer sur le lien Import Format affiche le format du fichier.
3. Cliquez sur Choose File, puis accédez au fichier CSV à importer. Le fichier est chargé sur la plateforme afin que celle-ci puisse le lire.
4. Cliquez sur Charger.
5. Si nécessaire, cliquez sur My CSV file has a header row.
6. Cliquez sur Importer.
7. Dans Composer, vous devez voir tous les objets qui ont été importés via le fichier CSV.