le 12-18-2012 02:54 AM
Bonjour,
Dans le cadre de ma formation Licence Pro, je suis chargé d’un projet de la société PRIMES concernant un « Eurotherm 900 »
Nous avons un « Eurotherm réf 900 » qui gère un « Four Heraeus », on souhaite faire une interface Labview qui permet de piloter sous Labview l’Eurotherm 900 pour gérer le Four.
Donc ma question est la suivante, est ce que L’Eurotherm 900 peut être piloté par Labview ?
Et si oui, pourriez-nous envoyer une doc ou des exemplaires qui nous permettrez de faire cette communication entre L’interface Labview et l’Eurotherm 900 ?
Je suis vraiment débutant avec Labview, toute aide de votre part est le bien venu.
Merci d’avance pour toute aide
Cordialement
le
12-19-2012
06:29 AM
- dernière modification le
02-27-2024
10:30 AM
par
migration-bot
Bonjour abden11,
Comme vous souhaitez utiliser du matériel tiers avec LabVIEW, vous ne pouvez pas utiliser les drivers DAQmx de National Instruments pour le piloter.
Une solution possible est d'utiliser les drivers du fournisseur, donc ceux d'Eurotherm dans votre cas.
Vous avez la liste des drivers créés par des utilisateurs ou des fournisseurs dans le but de piloter du matériel non NI. Ils sont répertoriés sur notre site : https://www.ni.com/fr/search.html?pg=1&ps=10&sb=%2Brelevancy&sn=catnav:sup.dwl.ndr
Si vous ne trouvez pas votre bonheur, vous pouvez adresser une demande directe chez le fournisseur Eurotherm : http://www.eurotherm.com/labview/
Bon courage!
Cordialement,
Celine
National Instruments France
le 01-08-2013 05:48 AM
Bonjour
L'eurotherm 900 est, comme beaucoup de régulateur d'Eurotherm, un régulateur "à la carte".
Vérifier qu'il possède l'option de communication et si oui dans quelle format.
Il peut y avoir :
- le protocol Eurotherm, une sorte de modbus ASCII
- le protocole modbus RTU.
Viens ensuite la lourde table de trouver le mots qui vos interresses.
Si vous n'avez pas les doc de communication, je peux regarder de mon coté.
Salutation
EricC
le 01-09-2013 04:57 AM
Bonjour
Je vous remercie pour m’avoir répondu,
Après avoir contacté Eurotherm Leur réponse était la suivante : Le 900 communique en modbus & donc peut être piloté par tout logiciel utilisant modbus.
Le manuel de communication est 900HP Communication HA174539
Je voudrais savoir si déjà Labview peut communiquer par modbus, et si possible d’avoir des exemples ? Comment déterminer la forme des mots qui m’intéresse ?
Je suis vraiment bloqué et j’ai l’impression que le projet n’avance pas, si vous pouvez m’aider à éclaircir ce que je dois faire serait vraiment gentil de votre part.
Cordialement
le
01-09-2013
07:39 AM
- dernière modification le
02-27-2024
10:31 AM
par
migration-bot
Bonjour
Effectivement LabVIEW peut dialoguer en utilisant le modbus.
Toutes les informations sur le modbus sont disponibles sur modbus.org.
Il existe même une LLB gratuite sur le site NI
Une fois la communication établie, il ne reste plus qu'a décider qu'elle mot vous désirez lire.
Attention, il arrive que l'on trouve des références au protocole JBUS. Pour les fonctions d'échange classique, le jbus et le mmodbus sont identique.
La seul différence est l'adresse du mot.
adrsse jbus = adresse modbus+1
Pour information voici une table des principales adresses utilisables dans le régulateur.
AD ;SIGNE; DESIGNATION
0; 1; Boucle 1 : Variable de process (PV)
1; 1; Boucle 1 : Consigne (SP)
2; 1; Boucle 1 : Puissance (OP)
3; 1; Boucle 1 : Action vanne (VO)
4; 1; Boucle 1 : Consigne courrante (SL)
5; 1; Boucle 1 : Bande proportionelle (XP)
6; 1; Boucle 1 : Limite de sortie (OR)
7; 1; Boucle 1 : Temps d'intégrale (TI)
8; 1; Boucle 1 : Temps de dérivé (TD)
9; 1; Boucle 1 : Temps de cycle, canal 1 (CH)
10; 1; Boucle 1 : Limite basse d'affichage d'entrée de process (1L)
11; 1; Boucle 1 : Limite haute d'affichage d'entrée de process (1H)
12; 1; Boucle 1 : Puissance si rupture capteur (BO)
13; 1; Boucle 1 : Bande morte, canal 1 (DB)
14; 1; Boucle 1 : Bande morte, canal 2 (B2)
15; 1; Boucle 1 : Bande morte (HC)
16; 1; Boucle 1 : Valeur basse cute back (LB)
17; 1; Boucle 1 : Valeur haute cute back (HB)
18; 1; Boucle 1 : Gain relatif sortie 2 (RG)
19; 1; Boucle 1 : Temps de rafraichissement vanne (TP)
20; 1; Boucle 1 : Temps de course du moteur, canal 1 (TT)
21; 1; Boucle 1 : Action si rupture capteur regulation VP, canal 1 (BV)
22; 1; Boucle 1 : Libre ()
23; 1; Boucle 1 : Consigne 1 (SL)
24; 1; Boucle 1 : Consigne 2 (S2)
25; 1; Boucle 1 : Consigne auxiliaire (SR)
26; 1; Boucle 1 : Réglage de la consigne locale (LT)
27; 1; Boucle 1 : Intégrale manuelle (MR)
28; 1; Boucle 1 : Temps de cycle, canal 2 (CC)
29; 1; Boucle 1 : Limite haute de puissance, canal 1 (HO)
30; 1; Boucle 1 : Limite haute de puissance, canal 2 (LO)
31; 1; Boucle 1 : Limite haute de la consigne de travail (HS)
32; 1; Boucle 1 : Limite basse de la consigne de travail (LS)
33; 1; Boucle 1 : Puissance en cas de rupture capteur (BP)
34; 1; Boucle 1 : Rampe (RR)
400; 1; Boucle 1 : Valeur mesurée d'entrée de process (1M)
401; 1; Boucle 1 : Résistance de ligne (Sonde RTD) (2M)
402; 1; Boucle 1 : Valeur mesurée de l'entrée auxiliaire (3M)
403; 1; Boucle 1 : Valeur CJC (CJ)
404; 1; Boucle 1 : Valeur linéarisée d'entrée de procss (LI)
405; 1; Boucle 1 : Valeur linéarisée de l'entrée auxiliaire (LR)
500; 1; Boucle 2 : Variable de process (PV)
501; 1; Boucle 2 : Consigne (SP)
502; 1; Boucle 2 : Puissance (OP)
503; 1; Boucle 2 : Action vanne (VO)
504; 1; Boucle 2 : Consigne courrante (SL)
505; 1; Boucle 2 : Bande proportionelle (XP)
506; 1; Boucle 2 : Limite de sortie (OR)
507; 1; Boucle 2 : Temps d'intégrale (TI)
508; 1; Boucle 2 : Temps de dérivé (TD)
509; 1; Boucle 2 : Temps de cycle, canal 1 (CH)
510; 1; Boucle 2 : Limite basse d'affichage d'entrée de process (1L)
511; 1; Boucle 2 : Limite haute d'affichage d'entrée de process (1H)
512; 1; Boucle 2 : Puissance si rupture capteur (BO)
513; 1; Boucle 2 : Bande morte, canal 1 (DB)
514; 1; Boucle 2 : Bande morte, canal 2 (B2)
515; 1; Boucle 2 : Bande morte (HC)
516; 1; Boucle 2 : Valeur basse cute back (LB)
517; 1; Boucle 2 : Valeur haute cute back (HB)
518; 1; Boucle 2 : Gain relatif sortie 2 (RG)
519; 1; Boucle 2 : Temps de rafraichissement vanne (TP)
520; 1; Boucle 2 : Temps de course du moteur, canal 1 (TT)
521; 1; Boucle 2 : Action si rupture capteur regulation VP, canal 1 (BV)
522; 1; Boucle 2 : Libre ()
523; 1; Boucle 2 : Consigne 1 (SL)
524; 1; Boucle 2 : Consigne 2 (S2)
525; 1; Boucle 2 : Consigne auxiliaire (SR)
526; 1; Boucle 2 : Réglage de la consigne locale (LT)
527; 1; Boucle 2 : Intégrale manuelle (MR)
528; 1; Boucle 2 : Temps de cycle, canal 2 (CC)
529; 1; Boucle 2 : Limite haute de puissance, canal 1 (HO)
530; 1; Boucle 2 : Limite haute de puissance, canal 2 (LO)
531; 1; Boucle 2 : Limite haute de la consigne de travail (HS)
532; 1; Boucle 2 : Limite basse de la consigne de travail (LS)
533; 1; Boucle 2 : Puissance en cas de rupture capteur (BP)
534; 1; Boucle 2 : Rampe (RR)
900; 1; Boucle 2 : Valeur mesurée d'entrée de process (1M)
901; 1; Boucle 2 : Résistance de ligne (Sonde RTD) (2M)
902; 1; Boucle 2 : Valeur mesurée de l'entrée auxiliaire (3M)
903; 1; Boucle 2 : Valeur CJC (CJ)
904; 1; Boucle 2 : Valeur linéarisée d'entrée de procss (LI)
905; 1; Boucle 2 : Valeur linéarisée de l'entrée auxiliaire (LR)
2057; 1; Consigne Alarme 1 (A1)
2058; 1; Consigne Alarme 2 (A2)
2059; 1; Consigne Alarme 3 (A3)
2060; 1; Consigne Alarme 4 (A4)
2061; 1; Consigne Alarme 5 (A5)
2062; 1; Consigne Alarme 6 (A6)
2063; 1; Consigne Alarme 7 (A7)
2064; 1; Consigne Alarme 8 (A8)
2065; 1; Temporisation alarme 1 (D1)
2066; 1; Temporisation alarme 2 (D2)
2067; 1; Temporisation alarme 3 (D3)
2068; 1; Temporisation alarme 4 (D4)
2069; 1; Temporisation alarme 5 (D5)
2070; 1; Temporisation alarme 6 (D6)
2071; 1; Temporisation alarme 7 (D7)
2072; 1; Temporisation alarme 8 (D8)
2073; 1; Variable calculée 1
2074; 1; Variable calculée 2
Salutations
EricC
le
01-09-2013
09:39 AM
- dernière modification le
02-27-2024
10:32 AM
par
migration-bot
Salut tu peux regarder
Bibliothèque LabVIEW Modbus le toolkit de NI
ou
avec un lien vers un toolkit de l'équipe Saphir (c'est moi qui fait la pub....)
tu peux aussi rechercher modbus dans le site NI, tu vas trouver beaucoup d'exemple
A+
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 01-10-2013 12:55 PM
Luc_Desruelle a écrit :
avec un lien vers un toolkit de l'équipe Saphir (c'est moi qui fait la pub....
)
Je fais un tour tout les mois sur le forum et tu parles toujours de modbus !
Merci pour la pub 😉
le 03-14-2013 07:52 AM
Merci à vous tous pour vous réponse
Encore une question je souhaite savoir comment déterminer avec la table modbus de l'instrument (lien http://pdf.lu/KF75/ ) pour lire ou écrire un une données. Je vien passer un temps fou à lire le chap (protocoles Jbus et Modbus) et chap 5 (paramétre de communication chap 5) et j’arrive toujours pas comprendre comment je peux faire pour juste récupérer le nom de la machine histoire si le labview communique bien avec la machine.
Merci pour votre compréhension
le 03-14-2013 08:40 AM
Bonjour
Le protocole ModBus ne permet que d'échanger des valeurs numériques, pas des données textes.
Il existe bien une partie de la norme "étendue" qui permet d'envoyé des trames textes, mais il n'existe pas beaucoup d'appareil l'implémente. Ce n'est pas le cas du 900HP.
Ce qui vous intéresse dans la doc : le chapitre 5 : les paramètres de communication.
La liste des registres modbus et leurs signification.
Les autres chapitres expliquent comment écrire un driver modbus, mais avec NI-Modbus.llb ils sont inutiles.
Le plus simple et de lire le mot N°1 pour déterminée si la communication fonctionne (il s'agit de la mesure boucle 1).
Sur le 900HP, il faut configurer le modbus en résolution "full" (sinon pas de décimal) et régler la résolution
Dans ce cas, la valeur est un entier à décimale fixe. Par exemple, pour une température de 12.345°C, avec un réglage à 1 décimal le modbus renvoie 123.
Il ne reste plus qu'a diviser pas 10 coté PC.
Idem pour les écritures Pour écrire 20.000, il faut envoyé 200 (dans mon exemple).
Attention, certain paramètre comme la puissance (ad 3) et la rampe on des décimales fixes (je crois).
Attention 2 : le modbus échange des entier 16bits. Cela peut poser problèmes dans le cas de la rampe. Selon que la grandeur est signée ou non, on vas de 0 - 65535 ou de +/- 32767 avec 0 décimale.
Avec 2 décimales, on vas de 0 - 655.35 ...etc.
EricC.
le 03-14-2013 10:10 AM
Bonjour,
je confirme les propos d'Eric et j'ajoute que si vous n'êtes pas trsè à l'aise avec LabVIEW vous pouvez utiliser la version d'évaluation de notre toolkit http://www.saphir.fr/FR/produits/toolkits/modbusviewsl.html Un fois installé, vous trouverez dans le menu "Outils >> SAPHIR >> ModBusVIEWOverSerial Line" de LabVIEW un utilitaire (ModBusVIEW over seril Line Master) vous permettant de tester très rapidement la connexion avec votre eurotherm sans tirer un seul fil dans un diagrame.
Cordialement,