- Impression
Gestion des états des machines et du nombre de pièces avec Edge IO et Node-RED
Gestion des états des machines et du nombre de pièces avec Edge IO et Node-RED
Apprenez à utiliser le flux Node-RED de visibilité des machines avec votre Edge IO.
Cet article couvre le flux de travail pour connecter un capteur de faisceau de rupture et un capteur de courant à un Edge IO pour gérer l'état et compter les pièces dans Tulip. Il utilise un flux de bibliothèque Tulip Node-RED qui peut être importé sur l'équipement périphérique d'un client.
À la fin de cet article, vous aurez le flux suivant dans Node-RED pour envoyer les données de vos capteurs connectés à une machine dans Tulip.
Vous aurez besoin de compléter les étapes suivantes :
- Configuration du matériel : Câbler le Edge IO
- Configuration de la machine : Créer une machine dans Tulip
- Configuration de Node-RED : Importez, éditez et déployez un flux Node-RED à partir de la bibliothèque Tulip.
Ce dont vous aurez besoin
Un Edge IO enregistré sur votre compte Tulip.
Un capteur de courant : CR3111-3000 un autre transformateur de courant similaire
- Une résistance de charge de taille correcte pour le transformateur de courant, recommandée 100-ohm si le CR3111-3000 (voir Configuration matérielle pour le dimensionnement).
- Poutre de rupture
- Tournevis à tête plate de 3,5 mm
1. Configuration matérielle - Câblage de l'interface utilisateur périphérique
Cette procédure suppose que vous utiliserez un transformateur de courant et un faisceau de rupture connectés à une interface Edge IO.
Calcul de la taille de la résistance de charge : Si vous utilisez la CR3111-3000, nous recommandons une résistance de 100 ohms. Si vous utilisez une autre pince de courant, vous pouvez calculer la taille maximale autorisée de la résistance(R_burden
) à partir du rapport effectif des tours(T_e
) et du courant maximal à mesurer(I_max
) comme suit : R_burden = 3,12 * T_e / I_max
. Votre résistance peut être plus petite que la taille de résistance maximale autorisée ; cela réduira la résolution de votre capteur.
Câblez votre pince de courant (CR3111-3000) et votre faisceau de rupture à votre Edge IO comme suit :
Pince de courant
- Mesurer le courant alternatif à travers le câble d'alimentation de votre machine.
- Fixez une résistance entre les deux fils de la pince de courant, comme illustré.
- Fixez un fil à la borne [+] de l'ADC différentiel et un fil à la borne [-] de l'ADC différentiel.
- Poutre de rupture
- Capture de la création de la pièce
- Attachez le fil marron (+24V) à la borne +24V de l'ADC différentiel.
- Attachez le fil bleu (gnd) à la borne de masse de la banque d'entrée numérique
- Attachez le fil noir (out) à la broche 1 de la banque d'entrées numériques.
En outre, assurez-vous que vous avez mis l'appareil sous tension et que vous l'avez connecté à votre réseau en branchant un câble Ethernet sur le port WAN.
2. Configuration de la machine - Créer une machine dans Tulip
Pour envoyer les données de la poutre de rupture et du capteur de courant à Tulip, nous allons d'abord configurer une Machine en utilisant l'API Tulip comme source de données. Reportez-vous à la section Configuration d'une nouvelle machine de l'article Comment utiliser l'API des attributs de machine pour une présentation détaillée.
Dans cet exemple, nous avons créé une machine avec deux attributs :
- Current (float) - représente le courant renvoyé par le capteur.
- Part Count (int) - signal émis par le faisceau de rupture indiquant l'achèvement d'une pièce.
Vous voudrez noter vos valeurs attributeId et
machineId
pour les passer dans le flux Node-RED.
Vous pouvez également configurer un type de machine à affecter à la machine si vous prévoyez d'utiliser le capteur de courant pour modifier des aspects tels que l'état de la machine ou effectuer des comptages basés sur les sorties du capteur. Reportez-vous à la section Comment configurer les types de machine si cela vous intéresse.
3. Configuration de Node-RED
Ouvrez le portail des périphériques Edge sur l'interface Edge connectée à la poutre de rupture et aux capteurs de courant. Lancez l'éditeur Node-RED en utilisant les informations d'identification suivantes :
- Nom d'utilisateur : admin
- Mot de passe : votre mot de passe Edge IO
Voir plus d'informations ici pour démarrer avec Node-RED sur Edge IO.
3a. Importer le flux de la bibliothèque
Pour importer le flux de la bibliothèque, suivez les étapes de notre document Importation des flux Tulip Node-RED. Le flux à importer est machine_visibility.json et l'importation crée l'onglet Machine Visibility with Current Clamp and Breakbeam dans l'éditeur.
3b. Vue d'ensemble du flux
Ce flux est composé de deux flux de travail distincts :
Compteur de pièces
Le premier flux consiste à surveiller le nombre de pièces via un capteur de faisceau de rupture. Ce flux est composé de quatre nœuds fonctionnels :
Monitor Pin
- Objectif : Définir la ou les broches GPIO sur l'interface Edge IO à surveiller via la propriété pin enabled.
- Filtre pour pinUp
- Objectif : A partir de la charge utile du message, déterminer si l'événement sur la ou les broches surveillées est vrai.
- Incrémenter le nombre de pièces
- Objectif : Incrémenter le nombre de pièces de la variable de flux en cas d'événement de broche vrai.
- Attribut de la machine Tulip : Part Count
- Objectif : Envoyer la charge utile (partCount) à Tulip via l'API.
Surveillance du courant RMS
La deuxième voie consiste à surveiller un capteur de courant connecté à l'entrée ADC (convertisseur analogique-numérique). Ce flux est composé de six nœuds fonctionnels.
Lectures différentielles de l'ADC
- Objectif : affecter le profil de configuration analogique à l'entrée ADC.
- Filtrer les lectures 1/5
- Objectif : Extraire toutes les cinq mesures (5 secondes) pour les transmettre à Tulip.
- Passer le message
- Objectif : Remettre à zéro le nombre de relevés pour chaque cinquième message.
- Déposer le message et l'incrémenter
- Objectif : Pour tous les autres relevés, incrémenter le nombre de relevés de 1.
- Mise à l'échelle du CR-3111
- Objectif : Mettre à l'échelle la mesure du capteur en fonction des spécifications du fabricant.
- Attribut de la machine tulipe : RMS Current (courant efficace)
- Objectif : Envoyer la charge utile (partCount) à Tulip via l'API.
Il existe également quatre nœuds optionnels qui sont désactivés par défaut mais qui peuvent être activés pour que l'état de la machine soit déterminé par Node-RED. Notez qu'il est également possible d'utiliser des déclencheurs de machine dans Tulip pour exécuter cette même logique.
Le courant est-il > 100mA ?
- Objectif : Vérifier si la valeur du courant est supérieure à 100 mA.
- Etat = ON
- Objectif : Mettre la charge utile sur ON si le courant est supérieur à 100 mA.
- État = OFF
- Objectif : Mettre la charge utile sur OFF si le courant est inférieur ou égal à 100 mA.
- Attribut de la machine tulipe : State
- Objectif : Envoyer la charge utile (état) à Tulip via l'API.
3c. Modifiez le flux
Pour terminer la configuration de ce flux, les informations sur le dispositif pour les attributs Tulip Machine Attribute : Part Count et Tulip Machine Attribute : RMS Current doivent être incluses dans les champs
attributeId et
machineIdf
de la machine configurée précédemment.
En fonction du capteur que vous utilisez, vous pouvez également modifier le nœud CR-3111 Scaling pour refléter le rapport de transformation de votre transformateur de courant.
3d. Déployer le flux
Une fois le flux Node-RED construit et les paramètres nécessaires ajoutés, vous pouvez déployer votre flux et commencer à voir les données de votre faisceau de rupture et des capteurs de courant envoyées à Tulip.
En sélectionnant l'option Debug message sur le côté droit de l'éditeur Node-RED, vous devriez être en mesure de voir les réponses et les codes de statut correspondants de l'API Tulip.
Pour obtenir plus d'informations sur les codes de statut, veuillez consulter la documentation de l'API dans votre instance Tulip (c'est-à-dire .tulip.co/apidocs). Plus précisément, reportez-vous à la documentation du point de terminaison POST /attributs/report
.
Vous serez maintenant en mesure de voir les données dans Tulip également, en naviguant vers l'onglet de configuration de la machine.
Détails techniques du flux Node-RED
Vous trouverez ci-dessous un résumé détaillé des nœuds et de leurs paramètres de configuration par défaut importés avec le fichier machine_visibility.json.
Compteur de pièces
Broche de surveillance
Objectif : Définir la ou les broches GPIO sur le Edge IO à surveiller via la propriété pin enabled.
Type de noeud : Entrée numérique
Propriétés par défaut :
- Mode d'exécution -
Continu
- Taux de rafraîchissement -
1 seconde
- Pins activés -
1
- Filtre pour pinUp
- Mode d'exécution -
Objectif : À partir de la charge utile du message, déterminer si l'événement sur la ou les broches surveillées est vrai.
Type de nœud : Commutateur
Propriétés par défaut :
- Propriété -
msg.payload
- Règles -
is true
- Incrémenter le nombre de pièces
- Propriété -
Objectif : Incrémenter le nombre de pièces de la variable de flux lors de l'événement true de la broche.
Type de noeud : Modifier
Propriétés par défaut :
Règles :
- Fixer
flow.partCount
à l'expression$flowContext('partCount') + 1
- Fixer
msg.payload
àflow.partCount
- Attribut de la machine tulipe : Part Count
- Fixer
Objectif : Envoyer la charge utile (partCount) à Tulip via l'API.
Type de noeud : Attribut machine
Propriétés par défaut :
- Device Info* -
{"attributeId" :", "machineId" :""}
- Source de l'attribut -
msg.payload
- Device Info* -
Courant efficace du moniteur
Lectures différentielles de l'ADC
Objectif : Attribuer le profil de configuration analogique à l'entrée ADC.
Type de nœud : Analogique haute vitesse
Propriétés par défaut :
Configuration analogique -
ADC différentiel RMS @ 1kHZ
- Sélectionner le CDA à configurer -
CDA différentiel
- Sorties activées -
RMS
- Taille de la mémoire tampon -
1000
- Fréquence d'échantillonnage (Hz) -
1000
+ Type de données -RMS
+ Mode de sortie -Continu
+ Fréquence de rafraîchissement (secondes) -1
- Filtrer les relevés 1/5
- Sélectionner le CDA à configurer -
Objectif : Extraire une mesure sur cinq (5 secondes) pour la transmettre à Tulip.
Type de noeud : Commutateur
Propriétés par défaut :
Propriété -
flow.numReadings
Règles :
== 4
sinon
- Passer le message
Objectif : Remettre à zéro le compte des relevés pour chaque cinquième message.
Type de nœud : Modifier
Propriétés par défaut :
Règles :
- Définir
flow.numReadings
à0
- Déposer le message et l'incrémenter
- Définir
Objectif : Pour tous les autres relevés, incrémenter le nombre de relevés de 1.
Type de noeud : Modifier
Propriétés par défaut :
Règles :
- Définir
flow.numReadings
à l'expression$flowContext('numReadings') + 1
- Mise à l'échelle CR-3111
- Définir
Objectif : Mettre à l'échelle la mesure du capteur en fonction des spécifications du fabricant.
Type de noeud : Modèle de sous-écoulement
Propriétés par défaut :
- Propriété -
données
- Scale* -
3000
- Décalage -
0
- Attribut de la machine tulipe : RMS Current (courant efficace)
- Propriété -
Objectif : Envoyer la charge utile (partCount) à Tulip via l'API.
Type de noeud : Attribut de machine
Propriétés par défaut :
- Device Info* -
{"attributeId" :", "machineId" :""}
- Source de l'attribut -
msg.data[0]
- Device Info* -
Sous-flux pour calculer l'état de la machine
Le courant est-il > 100mA ?
Objectif : Vérifier si la valeur du courant est supérieure à 100 mA.
Type de nœud : Interrupteur
Propriétés par défaut :
Propriété -
msg.data[0]
Règles :
> 0.1
sinon
- État = ON
Objectif : Mettre la charge utile sur ON si le courant est supérieur à 100 mA.
Type de noeud : Modifier
Propriétés par défaut :
Règles :
- Mettre
msg.payload
surON
- État = OFF
- Mettre
Objectif : Définir la charge utile sur OFF si le courant est inférieur ou égal à 100 mA.
Type de noeud : Modifier
Propriétés par défaut :
Règles :
- Définir
msg.payload
surOFF
- Attribut de la machine tulipe : State
- Définir
Objectif : Envoyer la charge utile (état) à Tulip via l'API.
Type de noeud : Attribut de machine
Propriétés par défaut :
- Device Info* -
{"attributeId" :", "machineId" :""}
- Source de l'attribut -
msg.payload
- Device Info* -
* Les paramètres doivent être mis à jour pour que le flux fonctionne correctement. La valeur de l'échelle du capteur de courant doit être modifiée selon les recommandations du fabricant.
Autres lectures
- La documentation de Node-RED
- Connexion d'un capteur 4-20 mA avec Edge IO et Node-RED
- Connexion d'un oscilloscope analogique avec Edge IO et Node-RED
Vous avez trouvé ce que vous cherchiez ?
Vous pouvez également vous rendre sur community.tulip.co pour poser votre question ou voir si d'autres ont été confrontés à une question similaire !