Você está na página 1de 28

Utilisation de la librairie TcPlcHydraulics

Commentaires Version TwinCAT : 2.10.0 build 1235 Version TcPlcHydraulics V3.0

V !"#$% : 1.0 & '() *AT : 31 $ctobre 2005

"ommaire 1 #nt+,ration d-a.e/s0 dans l-a11lication P)C :............................2 2 *onn+es n+cessaires 3 l-a.e 4ydrauli5ue :...............................2
2.1 Variable de ty1e A.is6!e7689Plc:c :.......................................................................2 2.2 Ty1e "T6TcPlc*e;ice#n1ut :......................................................................................<

..........................................................................................................=
2.3 Ty1e "T6TcPlc*e;ice$ut1ut :.................................................................................10

3 #nitialisation des donn+es :.......................................................10 2 Utilisation de l-utilitaire :ana,er.e.e :.....................................11


2.1 *+marra,e de l-a11lication :....................................................................................11 2.2 :odi7ication des 1aram>tres de l-a.e :...................................................................13

5 ?+n+ration de la ;aleur de consi,ne :.....................................15


5.1 .em1le iTc:c6Pro7ileCtrl8ased :.........................................................................15 5.2 #m1l+mentation dans le 1ro,ramme P)C :............................................................1@

A ContrBle de l-+ta,e de 1uissance d-une ;al;e :......................1=


.em1le :........................................................................................................................21

@ .em1les :...................................................................................22
@.1 .em1le 1 :................................................................................................................22 @.2 .em1le 2 :................................................................................................................25 @.3 .em1le 3 :................................................................................................................25

Page 3

Lib TcPlcHydraulics

1 #nt+,ration d-a.e/s0 dans l-a11lication P)C :


La procdure diffre fondamentalement de celle utilise lors de la cration dune tche NC !n effet" les diffrentes actions ralises par la tche NC doi#ent $tre effectues par le programme PLC Cependant" leffort de programmation est rduit au ma%imum par lutilisation de blocs de fonction prdfinis Ces blocs de fonction PLCopen sont regroups dans la librairie T&inC'T TcPlcHydraulics disponible en supplment Les points sui#ants doi#ent $tre pris en considration ( ) *onnes relati#es + la%e dans lapplication PLC ) ,nitialisation et chargement des paramtres au dmarrage de lapplication PLC ) 'c-uisition des #aleurs actuelles ) Traitement des #aleurs de contr.le ) /ise en ser#ice des a%es ) 0rganisation de la procdure de mou#ement

2 *onn+es n+cessaires 3 l-a.e 4ydrauli5ue :


1ne #ariable des types sui#ants doit $tre cre pour cha-ue a%e ( ) '%is23ef245Plc/c ) 6T2TcPlc*e#ice,nput ) 6T2TcPlc*e#ice0utput

2.1 Variable de ty1e A.is6!e7689Plc:c :

Lib TcPlcHydraulics

Page 7

sA.is%ame

( nom de la%e

1"tA.)o,8u77er ( adresse dune #ariable de type 6T2TcPlc/cLog4uffer Cette #ariable contient le Log4uffer de la librairie La gnration en sortie de messages depuis les blocs de fonction de la librairie pro#o-uerait des temps de rponse non contr.ls Pour #iter tout dsagrment" les messages sont stoc5s dans un buffer et transmis au logger d#nements 8indo&s "T6TcPlc:c)o,8u77er (

3ead,d% ( ,nde% dcriture du buffer 8rite,d% ( ,nde% de lecture du buffer /essage'rr ( tableau courant des messages "T6TcPlc:c)o, ntry (

1ne #ariable de ce type permet de renseigner cha-ue entre du buffer ( TimeLo&" TimeHigh ( le temps de cration du message est enregistr ici LogLe#el ( ni#eau dimportance du message" 7 ni#eau% sont disponibles (

6ource ( information code + propos de la source du message 9 sources sont disponibles (

/essage ( Te%te du message

Page :

Lib TcPlcHydraulics

'rgType ( Type de la partie #ariable du message ;optionnel< di'rg ( partie #ariable de type *,NT du message lr'rg ( partie #ariable de type L3!'L du message s'rg ( partie #ariable de type 6T3,N= du message 1"t*e;ice#n1ut : Voir c4a1itre 2.2 1"t*e;ice$ut1ut : Voir c4a1itre 2.3 1"tA.Au.)abels :

Ladresse de cette structure contient des labels te%te pour les paramtres spcifi-ues clients de la%e 1"ta.AutoParams :

nable nd$7Tra;el : #alide lidentification automati-ue des butes mcani-ues

nActi;e!e5uest :

Lib TcPlcHydraulics

Page >

Cha-ue bloc fournit un code -ui permet de dmarrer une fonction de la%e 'prs cela" le bloc sur#eille un changement de cette #ariable afin d$tre a#erti si un autre bloc de fonction prend le contr.le *e cette fa?on" il est possible pour cha-ue bloc de sa#oir si une fonction dmarre a t interrompue par un autre bloc de fonction bParams nable: Cette #ariable passe + ltat T31! si les paramtres ont t chargs correctement depuis le fichier dinitialisation La sau#egarde des paramtres #a elle aussi affecter ce signal" celui ci assure une consistance entre les paramtres de la structure et le fichier dinitialisation La%e nest pas pr$t pour dautres oprations tant -ue cette #ariable nest pas + ltat T31! %ote( lors du droulement programme" un accs en criture + la structure de paramtres #a temporairement passer la #ariable + ltat @'L6!" aprs celle ci retourne + ltat prcdent lcriture bParamsUnsa;e: Cette #ariable passe + ltat T31! lors-ue des paramtres ont t modifis mais non sau#egards n"tate : Cette #ariable renseigne ltat courant de la%e (

:c"tate6"tandstill( la%e na pas de commande de mou#ement :c"tate6*iscrete:otion( la%e e%cute un mou#ement a#ec une position cible et une #itesse dfinies :c"tate6Continousmotion( la%e e%cute un mou#ement sans position cible dfinie 6eule la #itesse de dplacement est spcifie :c"tate6"ync4roniCedmotion( la%e e%cute un mou#ement dpendant du mou#ement dun autre a%e :c"tate6"to11in,( la%e est en cours darr$t :c"tate6 rrorsto1( la%e a t stopp suite + un problme ,l ne peut pas $tre de nou#eau dmarr et re-uiert un reset n#nit"tate : !tat courant de ltape dinitialisation n#nit rror: Code derreur lors de la phase dinitialisation

Page A

Lib TcPlcHydraulics

n#nter7aceTy1e: Code du type de structure utilis n*e;ice#nTy1e: Code du type de structure utilis n*e;ice$utTy1e : Code du type de structure utilis n!t*ataTy1e : Code du type de structure utilis nParamTy1e : Code du type de structure utilis n)o,8u77erTy1e: Code du type de structure utilis nA.Auto#dentTy1e: Code du type de structure utilis n*ebu,Ta,: stA.Params: 'dresse dune #ariable de type 6T2TcHyd'%Param Cette #ariable contient tous les paramtres de la%e !%emple ( Type de codeur raccord" Prise dorigine utilise" B Cf aide en ligne pour le dtail complet des paramtres stA.!t*ata: 'dresse dune #ariable de type 6T2TcHyd'%3t*ata Cette #ariable contient les donnes du runtime de la%e !%emple ( Position de consigne" pression actuelle" B Cf aide en ligne pour le dtail complet des paramtres

2.2 Ty1e "T6TcPlc*e;ice#n1ut :


Les donnes de la structure sont utilises pour interfacer les donnes dentre dun systme e%terne (

Lib TcPlcHydraulics

Page C

Page D

Lib TcPlcHydraulics

2.3 Ty1e "T6TcPlc*e;ice$ut1ut :


Les donnes de la structure sont utilises pour interfacer les donnes de sortie dun systme e%terne (

3 #nitialisation des donn+es :


1n certain nombre dinitialisations doi#ent $tre ralises a#ant le dmarrage de la%e Le bloc de fonction /C2'%1ti6tandard,nit245Plc/c permet de raliser les diffrentes tapes de linitialisation ( ) Les pointeurs renseignant les structures de la%e doi#ent points au% emplacements mmoires correspondants afin de lier les diffrents composants de la structure (

Lib TcPlcHydraulics

Page EF

Les paramtres de la%e sont stoc5s dans un fichier de donnes dat Le chargement de ce fichier est ralis lors de lappel du bloc de fonction

'prs une initialisation russie" la #ariable n,nit6tate de la structure '%is23ef245Plc/c de la%e est gale + 9" dans le cas contraire" celle ci est gale + )9 *ans le cas dune initialisation russie" les #ariables :C6A.Uti"tandard#nit689Plc:c.!eady et bParams nable de la #ariable de type '%is23ef245Plc/c sont gales + T31!

2 Utilisation de l-utilitaire :ana,er.e.e :


Lapplication /anager e%e permet de #isualiser et de modifier les diffrents paramtres de la%e

2.1 *+marra,e de l-a11lication :


Cet utilitaire peut $tre charg + partir de laide en ligne de la librairie TcPlcHydraulics (

Page EE

Lib TcPlcHydraulics

!%cuter le fichier PLc/anager e%e 6e Logger ensuite

Lapplication Plc /anager accde au% donnes du 3untime #ia '*6 Le fichier de donnes dat nest pas directement lu par lapplication Plc/c/anager ,l est donc ncessaire -ue le programme PLC inclut un bloc de fonction /C2'%'dsComm6er#er245Plc/c" celui)ci permettant de donner + lapplication les fonctionnalits dun ser#eur '*6

1ne fois la conne%ion tablie" les donnes de la%e peu#ent $tre #isualises (

Lib TcPlcHydraulics

Page E9

2.2 :odi7ication des 1aram>tres de l-a.e :


Lapplication TcPlc/c/anager fait appel #ia les fonctions '*6 au% donnes utilises par le runtime Ces donnes telles -ue les paramtres de la%e peu#ent $tre modifies et sau#egardes dans le fichier de donnes dat + laide de lapplication !%emple ( modification du systme de mesure de position

Le type de mesure de position actuellement utilise est ici un codeur de simulation 0n #oit -ue celui)ci est utilis par la%e hydrauli-ue dans le programme PLC (

Page E3

Lib TcPlcHydraulics

Choi% du nou#eau capteur de mesure de position (

Chargement du nou#eau type (

Lcriture dans le runtime de la nou#elle #aleur de la #ariable n!nc2Type est ralise directement grce au% fonctions '*6 (

La #aleur peur $tre au besoin sau#egarde par la commande 6a#e" la #aleur modifie sera alors automati-uement charge au dmarrage de lapplication

Lib TcPlcHydraulics

Page E7

5 ?+n+ration de la ;aleur de consi,ne :


Lapplication PLC doit appeler un bloc de type /C2'%3untime245Plc/c + cha-ue cycle pour cha-ue a%e Le paramtre nProfilType de la structure 6T2TcHyd'%Param spcifie le type de procdure utilise pour gnrer la #aleur de consigne 3emar-ue ( dans le cas oG seuls des blocs usuels ;!ncoder" *ri#e" =enerator< seront utiliss" un bloc de fonction de type /C2'%6tandard4ody245Plc/c doit $tre utilis pour des raisons de simplicit Les diffrents profils disponibles sont lists dans la documentation de la librairie TcPlcHydraulics Hoir le type !2Tc/cProfileType (

iTc:c6Pro7ileConstAcc : Profil + acclration constante iTc:c6Pro7ileTimePosCtrl : La #aleur de consigne est constitue de sections a#ec acclration et dclrations constantes Les temps ;acclration" stop< et la distance ;acclration" positionnement< sont les #aleurs de contr.le iTc:c6Pro7ileCosine : La #aleur de consigne est constitue de sections a#ec acclration et dclrations + profils cosinusoidales Les temps ;acclration" stop< et la distance ;acclration" positionnement< sont les #aleurs de contr.le iTc:c6Pro7ileCtrl8ased : La #aleur de consigne est constitue de sections a#ec acclration et dclrations constantes Les temps ;acclration" changement de #itesse" stop< et la distance ;positionnement< sont les #aleurs de contr.le iTc:c6Pro7ileTime!am1 : La #aleur de consigne est constitue de fonctions rampe Le temps ;acclration" changement de #itesse" stop< et la distance ;freinage" arr$t< sont les #aleurs de contr.le

5.1 .em1le iTc:c6Pro7ileCtrl8ased :

Page E:

Lib TcPlcHydraulics

Les flches sur le profil montrent comment la forme de la courbe peut $tre modifie + laide des paramtres de la commande de mou#ement de la%e Pour commencer" lacclration suit une rampe contr.le en temps ;section E< Ius-u+ ce -ue la #itesse de parcours choisie soit atteinte ;section 9< Cette #itesse est maintenue Ius-u+ ce -ue le dplacement" calcul a#ant le dpart du mou#ement" soit ralis !nsuite" une rampe de dclration est sui#ie ;section 3< dune phase de freinage ;section :<" la #itesse dapproche est atteinte + la distance spcifie du point cible ;7< Cette #aleur de consigne est alors maintenue Ius-u+ ce -ue la distance restante ;>< du point cible soit atteinte

Paramtres actifs lors du profil de dplacement ( *+marra,e section 1 : rampe dacclration" la #aleur la plus faible des paramtres sui#ants f/a%'cc et f'cc de la structure A.is p6t'%Param est prise en compte Lacclration spcifie dans le bloc de fonction est utilise pour dmarrer la%e ;e% ( /C2/o#e'bsolute245Plc/c< *+1lacement section 2 : la #aleur la plus faible des paramtres sui#ants f3efHelo et @/a#Helo de la structure A.is p6t'%Param est prise en compte La #itesse spcifie dans le bloc de fonction est utilise pour dmarrer la%e ;e% ( /C2/o#e'bsolute245Plc/c< Dreina,e section 3 : la #aleur la plus faible des paramtres sui#ants f/a%*ec et f*ec de la structure A.is p6t'%Param est prise en compte La dclration spcifie dans le bloc de fonction est utilise pour freiner la%e ;e% ( /C2/o#e'bsolute245Plc/c<

Lib TcPlcHydraulics

Page E>

P4ase d-a11roc4e section 2 et 5 : Les #aleurs fCreep6peed et fCreep*istance de la%e A.is p6t'%Param sont utilises Trans7ert sur 1oint cibleE section A : Les #aleurs f4ra5e*istance etJou f4ra5e*eadTime de la%e A.is p6t'%Param sont utlises

5.2 #m1l+mentation dans le 1ro,ramme P)C :

Le bloc de fonction /C2'%6tandard4ody245Plc/c fait appel + chacun des blocs sui#ants ( /C2'%3t!ncoder245Plc/c" /C2'%3untime245Plc/c" /C2'%3t@inish245Plc/c et /C2'%3t*ri#e245Plc/c

5.2.1 :C6A.!t ncoder689Plc:c :


Le bloc de fonction /C2'%3t!ncoder245Plc/c permet de lire la position actuelle dun a%e + partir des donnes dentre dun module Comportement du bloc de fonction /C2'%3t!ncoder245Plc/c ( Le bloc de fonction recherche cycli-uement dans linterface de la%e le type de codeur spcifi (

Page EA

Lib TcPlcHydraulics

5.2.2 :C6A.!untime689Plc:c :
Le bloc de fonction /C2'%3untime245Plc/c permet de gnrer la #aleur de consigne Pour cela" un type de profil spcifi-ue est utilis" ce type dpend du paramtre nProfil2Type de la%e

5.2.3 :C6A.!tDinis4689Plc:c :
Le bloc de fonction adapte la #aleur de consigne gnre au% caractristi-ues spcifi-ues de la%e A;ertissement ( ce bloc ne doit pas $tre appel dans le cas oG la%e utilise un bloc de type /C2'%CtrlPressureCompensation245Plc/c

5.2.2 :C6A.!t*ri;e689Plc:c :
Le bloc de fonction prpare la #aleur de contr.le de la%e afin -ue celle)ci soit KsortieK sur un module matriel 1n module matriel spcifi-ue est appel" le type de module est renseign par les paramtres de la%e (

Lib TcPlcHydraulics

Page EC

5.2.5 Pro,ramme P)C :

'prs une initialisation russie" le bloc de fonction doit $tre appel cycli-uement dans le programme PLC pour gnrer les #aleurs de consigne

A ContrBle de l-+ta,e de 1uissance d-une ;al;e :


Les lments bPower$n et b nable de la structure de sortie 6T2TcPlc*e#ice0utput permettent de contr.ler lalimentation et la #alidation de ltage de puissance Ces 9 signau% sont mis + la #aleur T31! lors-ue lentre nable des blocs de type /C2Po&er245Plc/c est acti#e *ans le m$me temps" le bloc #a acti#er les #alidations logicielles dans le mot de contr.le 6T2TcHyd'%3t*ata n*eCtrl*8ord *ans le cas oG cette relation directe ne correspond pas + lapplication" le bloc de fonction /C2Po&er245Plc/c ne doit alors

Page ED

Lib TcPlcHydraulics

pas $tre utilis *ans ce cas" les signau% de la structure 6T2TcPlc*e#ice0utput doi#ent $tre contr.ls directement depuis lapplication Les lments bPower$9" b nAc9 et b!eady de la structure dentre permettent de sur#eiller la mise sous puissance" la #alidation de la contre raction et ltat de ltage de puissance Ces signau% peu#ent diffrer sui#ant les produits proposs par les diffrents constructeurs 'ctuellement" seul le signal bPower$9 est utilis pour dfinir le "tatus fourni en sortie du bloc de fonction /C2Po&er245Plc/c

.em1le de con7i,uration sous TwinCAT "ystem :ana,er : Les #ariables dentre et de sortie doi#ent $tre dfinies pour cha-ue a%e dans le programme PLC (

Ces #ariables doi#ent $tre dfinies en global

Lib TcPlcHydraulics

Page 9F

Cration du lien #ers les sorties physi-ues (

.em1le :
0n dsire mettre sous puissance un #ariateur Light4us + laide du bloc de fonction /cPo&er de la librairie TcPlcHydaulics et de lLutilitaire Plc/anager La librairie TcPLcHydraulics inclut un bloc de fonction relatif + lasser#issement de dri#e 'M9FFF)49FF ,ntgration du bloc de fonction dans T&inC'T PLC Control (

La mise + E de la #aleur !nable du bloc /cPo&er pro#o-ue la demande de mise sous asser#issement du contr.leur ,l est possible + laide de ce bloc de fonction de commander le contacteur de puissance ou le

Page 9E

Lib TcPlcHydraulics

relais permettant dalimenter le #ariateur" dans ce cas la #ariable boolenne bPo&er0n de la structure 6T2Pc*e#ice0utput doit $tre lie + la sortie physi-ue pilotant llment de puissance Le lien est ralis + laide de T&inC'T 6ystem /anager (

Ltat de llment de puissance peut $tre sur#eill + laide de la #ariable bPo&er05 de la structure dentre 6T2Pc*e#ice,ntput

Lib TcPlcHydraulics

Page 99

!emar5ue : Le bloc /cPo&er possde un timeout interne" dans le cas oG aucun contr.le des lments de puissance nest ralis #ia lapplication PLC" il est alors ncessaire de spcifier -ue lon ne souhaite pas sur#eiller ces lments Lerreur sui#ante apparaNt alors dans le cas contraire (

Page 93

Lib TcPlcHydraulics

La dsacti#ation de la sur#eillance est ralise + laide de loption sui#ante dans lapplication Plc/anager (

@ .em1les :
Les e%emples sont tirs de laide en ligne de la librairie TcPlcHydraulics

@.1 .em1le 1 :
Utilisation des blocs de fonction suivants : ) ) ) ) MC_AxUtiStandardInit : initialisation de laxe et de ses diffrents pointeurs partir du fichier param tres! dat MC_"o#er_$%"lcMc : mise sous puissance dun lment extrieur! MC_AxStandard$od&_$%"lcMc : appel des diffrents blocs ncessaires au contr'le de lapplication MC_AxAdsCommServer_$%"lcMc : fonctionnalits serveur A(S pour lapplication

Lib TcPlcHydraulics

Page 97

@.2 .em1le 2 :
,nitialisation de : a%es hydrauli-ues (

@.3 .em1le 3 :
3gulation de pression" utilisation du bloc de fonction ( ) /C2'%Ctrl6lo&*o&n0nPressure245Plc/c ( gestion de la #itesse de la%e afin de conser#er la pression de consigne + laide de la lecture de la pression actuelle ;paramtre 6T2TcHyd'%3t*ata f'ctPressure<

Page 9:

Lib TcPlcHydraulics

!n#oi dune commande de mou#ement (

Le systme #a alors rguler la #itesse de consigne afin de conser#er au mieu% la pression de consigne 0n peut enregistrer le comportement des diffrents paramtres de la%e + laide de T&inC'T 6copeHie& (

Lib TcPlcHydraulics

Page 9>

Cration du signal de sortie (

Page 9A

Lib TcPlcHydraulics

8 CFH$DD AUT$:AT#$% 6arl

#mmeuble G)e :ontr+alG HA de Courtaboeu7 1= bisE A;enue du Iu+bec =1=51 C$U!TA8$ UD Cede.

T+l : 01 A= 2= <3 @0 Da. : 01 A= 2< 20 55

www.bec94o77.7r in7oJbec94o77.7r

Lib TcPlcHydraulics

Page 9C

Você também pode gostar