You are on page 1of 26

Cat. N STA-05 Fich. CQM1_CPU.

HLP
1 mars 99
J P VISKOVIC/STA
LES FONCTIONS
EVOLUEES DU
CQM1
CQM1-CPU43
2
TABLE DES MATIERES
1. LE COMPTAGE RAPIDE......................................................................................................................... 3
1.1. LE COMPTAGE AVEC LES ENTREES INTERRUPTIVES........................................................................................ 4
1.2. LE COMPTEUR RAPIDE N0........................................................................................................................... 6
1.2.1. Linstruction CTBL............................................................................................................................. 6
1.3. LES COMPTEURS RAPIDES 1 ET 2 .................................................................................................................. 8
2. LES ENTREES INTERRUPTIVES........................................................................................................... 9
3. INTERRUPTIONS SUR TEMPORISATIONS RAPIDES......................................................................11
3.1. LE MODE MONO-COUP................................................................................................................................11
3.2. LE MODE CYCLIQUE ...................................................................................................................................11
3.3. LECTURE DU TEMPS ECOULE.......................................................................................................................12
3.4. DESACTIVATION DE TEMPO RAPIDE.............................................................................................................12
4. LA GENERATION DIMPULSIONS ......................................................................................................13
4.1. GENERATION DIMPULSIONS SUR SORTIE STANDARD....................................................................................13
4.2. GENERATION DIMPULSIONS SUR LES PORTS 1 ET 2 ......................................................................................14
4.3. LES INSTRUCTIONS DE GESTION DAXE........................................................................................................15
4.3.1. Linstruction PULS............................................................................................................................16
4.3.2. Linstruction SPED............................................................................................................................16
4.3.3. Linstruction ACC..............................................................................................................................16
4.3.4. Linstruction PLS2.............................................................................................................................17
4.3.5. Linstruction INI................................................................................................................................17
5. LA COMMUNICATION RS232C............................................................................................................19
5.1. LE PROTOCOLE SYSMAC-WAY................................................................................................................20
5.2. LE PROTOCOLE LIBRE (RS232C).................................................................................................................22
5.2.1. Transmission dune trame ASCII........................................................................................................22
5.2.2. Reception dune trame ASCII.............................................................................................................22
6. SAUVEGARDE SUR CARTOUCHE MEMOIRE..................................................................................23
7. LHORLOGE............................................................................................................................................24
8. LA REGULATION PID............................................................................................................................25
CQM1-CPU43
3
1. Le comptage rapide
La CPU43 est quipe de plusieurs types de compteur :
le compteur numro 0 sur le bornier intgr lUC
les compteurs 1 et 2 sur les connecteurs DB15.
les entres interruptives utilises en comptage
entres
interruptives
Compteurs rapides
Mode 0, 1, 2, et 3 0 1 2
1 kHz 5 kHz 50 kHz 50 kHz
50 kHz 50 kHz
50 kHz 50 kHz
2.5 kHz 25 kHz 25 kHz
Le dernier mode tient compte de la diffrence de phase entre les voies A et B dun
codeur incrmental.
Note: En mode diffrence de phase, la valeur courante de comptage par rvolution sera
gale la rsolution du codeur x 4.
CQM1-CPU43
4
1.1. Le comptage avec les entres interruptives
Les entres interruptives de lUC (IR00000 IR00003) peuvent tre utilises pour
raliser des compteurs en anneau condition quelles aient t dclares dans le
DM6628.
Les canaux IR244 247 contiennent les prslections 0000 FFFF
(hexadcimale) et les canaux IR248 251, les valeurs courantes du compteur
(FFFE 0000). La prslection moins un est charge dans le compteur ds
lexcution de linstruction INT. Lorsque la valeur courante atteint zro, limpulsion
suivante dclenche le sous programme associ et le compteur est rinitialis la
prslection moins un.
Note: Les numros de sous programme 0, 1, 2 et 3 sont automatiquement associs aux
entres interruptives 0, 1, 2 et 3 (valid par le DM6628).
Les sorties actives dans le sous programme sont immdiatement rafrachies.
Pour raffrachir des entres, il faut dclarer le/les canaux utiliss dans les DM6630
DM6633.
Pour utiliser une entre interruptive en mode compteur rapide, il est ncessaire de
dclarer, laide de linstruction INT, le mode et lentre qui doit tre dmasque,
les autres demandes dinterruption resteront masques.
CC = 003 mode compteur
2me oprande toujours 000 (inutilise)
D: donne (entres masquer/dmasquer)
CQM1-CPU43
5
Exemple: Lentre interruptive 0 est utilise pour compter les impulsions en provenance
dun codeur. Aprs 7000 impulsions (1B58 en hxa) le sous programme associ
(0) active la sortie IR10015 condition que lentre IR00104 soit active.
Lorsque la valeur courante du canal IR248 atteint zro, limpulsion suivante
provoque lexcution du sous programme 0 et le compteur est recharg avec la
prslection de lIR244.
entre 0 configure en entre interruptive
rafrachissement des canaux dentr 0 et 1
Chargement de la prslection
#1B58 dans le compteur 0
@: INT nest excut quune fois
entre 0 en mode compteur
1110 = dmasquage de lentre 0
dbut du sous programme associ
linterruption 0
si 104 vrai, alors sortie 10015 active
fin du SP
CQM1-CPU43
6
1.2. Le compteur rapide n0
Le compteur rapide 0 utilise les entres 4, 5 et 6 du bornier de 16 entres
intgres lUC et fonctionne en mode incrmental ou bien compteur/dcompteur
(diffrence de phase) suivant le paramtrage du DM6642.
La valeur courante de comptage est sauvegarde dans les canaux IR230 et IR231
mais nest rafrachie qu chaque tour de scrutation. La remise zro seffectue
laide du bit IR25200.
Pour obtenir la valeur courante instantane, utilisez linstruction PRV.
P: port numro 000
C: fonction valeur courante 000
D: adresse de destination
La valeur courante peut tre compare en permanence une table de donnes
grce linstruction CTBL.
1.2.1. Linstruction CTBL
Cette instruction permet denregistrer une table de valeurs comparer la valeur
courante des compteurs rapides 0, 1 ou 2. Lorsquune valeur ou bien une zone est
atteinte, le programme principal est drout vers un sous programme.
P: port numro 000
C: mthode de comparaison (valeurs ou bien zones)
000: valeurs et dpart automatique
001: zones et dpart automatique
002: valeurs (dpart avec linstruction INI)
003: zones (dpart avec linstruction INI)
TB: adresse de la table contenant les valeurs (ou les zones)
La structure de la table TB dpend du mode de comparaison (paramtre C):
Table contenant des valeurs (C=000 ou 002)
TB nbre de valeurs comparer
TB + 1 4 digits de poids faible
TB + 2 4 digits de poids fort
TB + 3 n de sous programme associ
TB + 4 4 digits de poids faible
TB + 5 4 digits de poids fort
TB + 6 n de sous programme associ
16 valeurs
maximum
1re valeur
2me valeur
CQM1-CPU43
7
Table contenant des zones (C=001 ou 003)
TB 4 digits de poids faible seuil
TB + 1 4 digits de poids fort infrieur
TB + 2 4 digits de poids faible seuil
TB + 3 4 digits de poids fort suprieur
TB + 4 n de sous programme associ
TB + 5 4 digits de poids faible seuil
TB + 6 4 digits de poids fort infrieur
TB + 7 4 digits de poids faible seuil
TB + 8 4 digits de poids fort suprieur
TB + 9 n de sous programme associ
TB+35 4 digits de poids faible seuil
TB+36 4 digits de poids fort infrieur
TB+37 4 digits de poids faible seuil
TB+38 4 digits de poids fort suprieur
TB+39 n de sous programme associ
Note: Les bits activs dans un sous programme et non utiliss dans le programme
principal restent activs.
Exemple: Le compteur 0 est utilis en mode incrmental.
Lorsque la valeur courante atteint 2000, le sous programme dinterruption
interrompt la gnration dimpulsions.
Paramtrage: DM6642=0114 mode incrmental et RAZ soft
DM0000=0001 une seul valeur comparer
DM0001=2000 valeur atteindre
DM0002=0000
DM0003=0101 n sous programme
Enregistre la table de valeur partir du DM0000 et
enclenche les comparaisons avec le compteur n0
Gnre des impulsions en direction de la sortie
IR10002 la frquence de 500Hz.
Dbut du sous programme n101
Stop la gnration dimpulsions
1re zone
2me zone
8me zone
CQM1-CPU43
8
1.3. Les compteurs rapides 1 et 2
Les compteurs rapides 1 et 2 utilisent les ports DB15 1 et 2. Pour utiliser ces
compteurs, configurez le DM6611 en mode compteur rapide (DM6611=0000) et
paramtrez leur mode de fonctionnement dans les DM6643 et DM6644.
Le mode linaire permet de compter/dcompter entre -8 388 607 et + 8 388
607, tandis que le mode compteur en anneau ne peut excder 65000.
Les valeurs courantes des compteurs sont indiques dans les canaux IR232 et
IR233 pour le compteur 1 et dans les canaux IR234 et IR235 pour le compteur 2,
mais elles ne sont rafrachies qu chaque tour de scrutation. Pour obtenir la
valeur courante dun compteur de manire instantane, utilisez linstruction PRV
(voir chapitre 1.2).
La RAZ des compteurs 1 et 2 seffectue laide des bits IR25201 et IR25202
respectivement. Celle-ci nest excute qu la fin du tour de scrutation.
Pour effectuer une RAZ de manire instantane, utiliser linstruction INI.
P: port numro 001 ou 002
002: changement de valeur courante
D: adresse contenant les donnes (2 mots)
Pour excuter en permanence des comparaisons sur valeurs ou bien sur zones,
utilisez linstruction CTBL (voir chapitre 1.2.1).
CQM1-CPU43
9
2. Les entres interruptives
Les entres 0, 1, 2 et 3 des automates CQM1 (toutes les CPU), peuvent tre
utilises en entres interruptives activant respectivement les sous programmes
dinterruptions 0, 1 ,2 et 3. Ces entres peuvent aussi tre utilises en comptage
rapide (voir chapitre 1.1). Les entres de type interruptive doivent tre dclares
dans le DM6628.
Les sorties actives dans le sous programme sont immdiatement rafrachies.
Pour raffrachir des entres, il faut dclarer dans les DM6630 DM6633, le/les
canaux utiliss par le sous programme.
Linstruction INT permet de dclarer les demandes dinterruption qui doivent tre
prise en compte. Les autres demandes dinterruption resteront masques.
000: validation dentres interruptives
000: non utilis
D: entres masquer/dmasquer (0000 000F)

Ds que, une ou plusieurs entres interruptives dmasques sont actives, le
programme principal est drout vers le sous programme dinterruption ayant la
plus haute priorit. Celles-ci sont dfinies comme suit:
Interruption n 0 > n 1 > n 2 > n 3.
Si linterruption n 0 survient pendant lexcution du sous programme dinterruption
n 2, ce dernier est interrompu pour excuter le SP n 0.
Toute modification du masque (INT mode 000) au cours du programme devra tre
prcde dune RAZ des demandes dinterruption (INT mode 001). Le mode 002
de linstruction INT permet de lire ltat du masque.
INT en mode 100 permet dinhiber momentanment toutes les interruptions et INT
mode 200, de rtablir le masquage/dmasquage des entres interruptives.
CQM1-CPU43
10
Exemple: Lentre 0 est utilise en entre interruptive pour modifier la valeur de prslection
du compteur rapide associ lentre interruptive n1.
DM6628 = 0011
DM6630 = 0000 aucune entre de carte dentre
DM6631 = 0000 nest utilise dans les sous programmes
Programmation:
CQM1-CPU43
11
3. Interruptions sur temporisations rapides
Toutes les UC de CQM1 disposent de 3 tempo. rapide 0, 1 et 2 programmables en
mode mono-coup ou bien en mode cyclique.
Note: La tempo n 0 nest pas disponible lorsque linstruction SPED est utilise pour
gnrer des impulsions vers une carte de sorties transistors
La tempo n 2 nest pas disponible lorsque le compteur rapide n 0 est utilis
(entres 4, 5 et 6 sur lUC)
A lchance dune tempo rapide, le programme principal est drout vers le sous
programme associ. Les sorties actives dans le sous programme sont
immdiatement rafrachies. Pour rafrachir des entres, il faut dclarer dans les
DM6636 DM6638 le/les canaux utiliss.
3.1. Le mode mono-coup
Linstruction STIM permet, en mode mono-coup, denclencher lexcution dun
sous programme aprs un intervalle de temps trs prcis.
T=000: tempo rapide 0 en mode mono-coup
001: tempo rapide 1 en mode mono-coup
002: tempo rapide 2 en mode mono-coup
D : adresse du mot contenant le nombre dintervalles temps
D+1 : intervalle de temps (4 chiffres BCD x 0.1 ms) 0005
0320 (0.5ms 32ms).
Sp :sous programme associ linterruption.
Intervalle de temps = contenu de D x contenu de D+1 x 0.1ms (0.5 319 968ms)
Si D est une valeur immdiate (#0001 #9999), il sagit alors du nombre
intervalles de 1 ms.
3.2. Le mode cyclique
Dans ce mode, le sous programme est excut chaque cycle de la temporisation
rapide.
T = 003: tempo rapide 0 en mode cyclique
004: tempo rapide 1 en mode cyclique
005: tempo rapide 2 en mode cyclique
D : adresse du mot contenant le nombre dintervalles de temps
D+1: contenant intervalle de temps (4 chiffres BCD x 0.1 ms)
0005 0320 (0.5ms 32ms).
Sp :sous programme associ linterruption.
Intervalle de temps = contenu de D x contenu de D+1 x 0.1ms (0.5 319 968ms)
Si D est une valeur immdiate (#0001 #9999) il sagit alors du nombre intervalle
de 1 ms.
CQM1-CPU43
12
3.3. Lecture du temps coul
T = 006: temps coul sur la tempo rapide 0
007: temps coul sur la tempo rapide 1
008: temps coul sur la tempo rapide 2
D : nombre dintervalles de temps comptabilis
D+1: intervalle de temps en 0.1ms
C :Temps coul depuis la dernire dcrmentation
3.4. Dsactivation de tempo rapide
T = 010: dsactive la tempo rapide 0
011: dsactive la tempo rapide 1
012: dsactive la tempo rapide 2
Exemple: Le programme ci-dessous utilise une interruption sur temporisation cyclique pour
faire clignoter la sortie 100.00 toutes les 30ms.
CQM1-CPU43
13
4. La gnration dimpulsions
Toutes les UC de CQM1 sont capables de gnrer des trains dimpulsions
standard une frquence maximale de 1 kHz sur une carte de sortie transistor.
La CPU43 dispose de 2 ports permettant de gnrer des impulsions jusqu une
frquence de 50 kHz avec des rampes dacclration/dclration. Ces 2 ports
peuvent aussi tre utiliss en comptage rapide mais dans ce cas, certaines
fonctions de gnrations dimpulsions ne peuvent plus tre utilises.
4.1. Gnration dimpulsions sur sortie standard
Les instructions SPED et PULS permettent denvoyer sur une carte de sortie
dfinie dans le DM6615, une srie dimpulsions avec un rapport cyclique de 0.5
(non modifiable).
Note: Linterruption cyclique n 0 nest plus disponible lorsque lon utilise une sortie en
gnrateur dimpulsion.
SPED paramtre la frquence (ou la modifie pendant lexcution), tandis que
PULS dtermine le nombre dimpulsions gnrer.
P = 010 150 dsigne le bit 1 15 du canal de destination
000 dsigne le bit 00 (1 ou 2 dsigne le port 1 ou 2)
M = 000 : mode de sortie continue
001 : le nombre dimpulsions dfini par PULS
F = 0002 0100 : frquence x 10Hz
Si SPED nest pas en mode continu, il faut dterminer le nombre dimpulsions
laide de linstruction PULS.
P = 000 : carte de sortie (001 port 1, 002 port 2)
C = 000 : (oprande rserve lutilisation des ports 1 et 2)
N : adresse des 2 mots contenant le nombre dimpulsions
(00000001 16777215)
CQM1-CPU43
14
4.2. Gnration dimpulsions sur les ports 1 et 2
La CPU43 peut grer deux axes en boucle ouverte ou ferme suivant le DM6611.
En mode sortie impulsions, les ports 1 et 2 peuvent piloter des moteurs pas
pas en gnrant des rampes dimpulsions, programmes laide des instructions
SPED, PULS, PLS2 et ACC. Linstruction CTBL nest pas disponible.
En mode comptage rapide, les ports 1 et 2 peuvent compter des impulsions
(CTBL) et gnrer des impulsions laide des instructions SPED, PULS et ACC
(PLS2 et ACC en mode 0 ne sont plus disponibles).
Note: Les modifications dans le DM6611 ne sont prises en compte qu la mise sous
tension de lautomate.
Le rapport cyclique du train dimpulsions gnr peut tre diffrent de 0.5 suivant
le DM6643 (port 1) et DM6644 (port 2).
Dans le cas dun rapport cyclique variable, celui-ci est dtermin lors de
lexcution de linstruction PWM
P : 001 ou 002 dsigne le port 1 ou 2
F = 000 : frquence = 5.9 kHz
001 : frquence = 1.5 kHz
002 : frquence = 91.6 kHz
R = 0001 0099: rapport cyclique (1% 99%)
ou adresse du mot contenant le rapport cyclique
Le nombre total dimpulsions envoyes est sauvegard dans les canaux IR236-
IR237 pour le port 1 (IR238-239 pour le port 2) et le statut des ports dans les
canaux AR 4, 5 et 6 mais leur contenu nest rafrachi qu chaque tour de
scrutation. Le statut du port indique si la dclration et la gnration dimpulsions
sont termins. Linstruction PRV permet dobtenir ces informations de manire
instantane.
Note: En mode sortie impulsion, linstruction PRV ne peut pas fournir le nombre
dimpulsions dj gnres.
CQM1-CPU43
15
4.3. Les instructions de gestion daxe
signal de sortie instructions oprandes
port
direction
nombre dimpulsions
port
mode = 000
frquence
port
direction
port
mode = 001
frquence
port
mode=003 stop
000
port
mode=000
frquence=#0000
port
direction + nbre dimpulsions +point de
dclration
port
mode =0
accl +frquence + dcl +frquence
port
direction
port
mode =1
acclration + frquence
port
direction + nombre dimpulsions
port
mode =2
dclration + frquence
port
direction
port
mode =3
dclration + frquence
port
direction
accl/dcl + frquence + qt impulsion
Note: En mode sortie impulsion, linstruction CTBL nest pas disponible.
En mode comptage rapide, PLS2 et ACC en mode 0 ne sont pas disponibles
CQM1-CPU43
16
4.3.1. Linstruction PULS
Linstruction PULS dtermine la direction et le nombre dimpulsions gnrer
avec linstruction SPED ou ACC.
P = 000 : carte de sortie
001 : port 1
002 : port 2
C = 000 : sens H et nbre dimpulsions dans N et N+1
001 : sens AH et nbre dimpulsions dans N et N+1
002 : sens H et nbre dimpulsions dans N et N+1
point de dclration dans N+2 et N+3
003 : sens AH et nbre dimpulsions dans N et N+1
point de dclration dans N+2 et N+3
004 : sens H (sortie continue)
005 : sens AH (sortie continue)
N : adresse des mots de donnes (dfinies par C)
4.3.2. Linstruction SPED
SPED permet, aprs lexcution de PULS, de dbuter/arrter la gnration
dimpulsions.
P = 001 : port 1
002 : port 2
000 ou 010 150: sortie standard (voir chapitre 2.1)
M = 000 : le nombre dimpulsions est dfinit par PULS
001 : mode de sortie continue
F : valeur ou adresse contenant la frquence x 10Hz
Si SPED nest pas en mode continu, il faut dterminer le nombre dimpulsions
dans linstruction PULS.
4.3.3. Linstruction ACC
ACC permet, aprs lexcution de PULS, de dbuter/arrter la gnration
dimpulsions avec des paramtres dacclration/dclration spcifiques.
P = 001 : port 1
002 : port 2
M = 000: accl, frq, dcl, frq. dans C, C+1, C+2, C+3
001: accl, frquence dans C, C+1
002: dclration, frquence dans C, C+1
003: dclration, frquence dans C, C+1 (continue)
C : adresse de C
Note: Les paramtres dacclration et dclration sont dtermins en nombre
dimpulsions ajouts la frquence de sortie toute les 4.08ms.
CQM1-CPU43
17
4.3.4. Linstruction PLS2
PLS2 permet de gnrer un trapze avec une acclration et une dclration
identique.
P = 001 : port 1
002 : port 2
D = 000: sens Horaire
001: sens Anti-Horaire
C : adresse contenant lacclration/dclration
C+1 contient la frquence
C+2 et C+3 le nombre dimpulsions
100Hz
T1 T2 T1
Note: La fonction PLS2 arrte de gnrer des impulsions lorsque la frquence atteind
100Hz durant la priode de dclration.
Lorsque la valeur dacc./dcl. est faible, les drapeaux des AR5 et AR6 peuvent
donner un statut des sorties (fin du mouvement) dcal dans le temps, mais le
nombre dimpulsions gnres sera respect.
En mode comptage rapide, linstruction PLS2 nest pas disponible.
4.3.5. Linstruction INI
INI en mode 003 est destin stopper la gnration dimpulsion. Les autres
modes sont utiliss pour le comptage rapide.
P = 001 : port 1
002 : port 2
003: stop la gnration dimpulsions
Exemple: Pilotage en boucle ferme dun moteur pas pas coupl un codeur
incrmental.
1. acclration de 160 impulsions toutes les 4ms pour atteindre 8kHz
2. 5000 impulsions, dclration vers 200Hz
3. 200Hz activer la sortie 10000
4. 10000 impulsions fin du dplacement
DM6611 = 0000
DM6643 = 0002
8kHz
vitesse lente
200Hz
10Hz
T1 = 0.004 x frquence .
acc/dcl.
T2 = nbre dimpulsions - (T1 x frquence)
frquence
CQM1-CPU43
18
5000 7000 10 000
Programmation:
CQM1-CPU43
19
5. La communication RS232C
Le CQM1-CPU43 est uip dun port RS232C et dun port priphrique rserv en
principe la console de programmation mais qui peut tre transform en RS232C
par lintermdiaire dun cordon adaptateur CQM1-CIF01.
Il existe 2 manires de communiquer via les ports RS232C.
par protocole SYSMAC-WAY (Host Link)
par protocole libre (RS232C)
Le protocole SYSMAC-WAY impose un format de trame particulier et ne permet
pas lautomate dtre linitiative de la communication. Il ne fait quexcuter des
commandes (criture de donnes) ou rpondre des questions (lecture de
donnes).
Le protocole libre utilise les fonctions TXD et RXD pour mettre ou bien recevoir
des trames de code ASCII.
Note: En mode SYSMAC-WAY (Host Link), il est malgr tout possible dutiliser
linstruction TXD pour permettre lautomate dtre linitiative dune
communication. Dans ce cas, la trame ASCII est encapsule dans une trame
SYSMAC-WAY @EX trame ASCII fcs .
Par dfaut lautomate est en mode SYSMAC-WAY.
Configuration du mode de communication:
Le format de communication standard correspond au format :
SYSMAC-WAY 7 bits de donnes, parit paire, 2 bits de stop, 9600 bps
Un format diffrent pourra tre spcifi dans les DM6646 pour le port RS232C et
DM6651 pour le port priphrique.
Vitesse donnes stop parit
00 1.2k 00 7 1 paire
01 2.4k 01 7 1 impaire
02 4.8k 02 7 1 sans
03 9.6k 03 7 2 paire
04 19.2k 04 7 2 impaire
05 7 2 sans
06 8 1 paire
07 8 1 impaire
08 8 1 sans
09 8 2 paire
10 8 2 impaire
11 8 2 sans
Exemple : DM6645 = 0001 Port RS232C au protocole SYSMAC-WAY, format dans DM6646
DM6646 = 0304 format 7, 2, paire, 19 200bps
CQM1-CPU43
20
DM6650 = 1000 Port priphrique au protocole libre format standard.
5.1. Le protocole SYSMAC-WAY
Lautomate est esclave et rpond aux commandes de lecture/criture (provenant
dun PC par exemple).
La trame est constitue de la manire suivante:
entte esclave code commande adresse qt FCS fin de trame retour chariot
code
RR: lecture IR
RL: lecture LR
RH: lecture HR
RD: lecture DM
RC: lecture T/C
WR: criture IR
WL: criture LR
WH: criture HR
WD: criture DM
RP: lecture programme
WP: criture programme
MS: lecture du mode de lAPI
SC: change le mode de lAPI
KS: forage 1
KR: forage 0
KC: annulation de forage
SYSMAC-WAY dispose dune
quarantaine de codes commande.
Exemple: Lecture du DM0001 dans lautomate n4; TEXT$ = @04RD00010001
routine BASIC de calcul du FCS.
100 OPEN COM1:9600,E,7,2,RS,CS,DS,CD AS #1
110 INPUT TEXT$
120 GOSUB 1000
130 PRINT#1, TEXT$ + FCS$ + + CHR$(13);
140 LINE INPUT#1, REPONSE$
.
. traitement de la rponse
.
150 GOTO 110
sous programme de calcul du FCS
1000 Q=0
1010 for J = 1 to LEN(TEXT$)
1020 Q = Q XOR ASC(MID$(TEXT$), J, 1)
1030 NEXT J
Rsultat dun OU exclusif sur le
code ASCII de chaque caractre
code
ASCII hexa binaire
@ 40 0100 0000
0 30 0011 0000
0111 0000
4 34 0011 0100
0100 0100
R 52 0101 0010
0001 0110
D 44 0100 0100
0101 0010
0 30 0011 0000
0110 0010
0 30 0011 0000
0101 0010
0 30 0011 0000
0110 0010
1 31 0011 0001
0101 0011
0 30 0011 0000
0110 0011
0 30 0011 0000
0101 0011
0 30 0011 0000
0110 0011
1 31 0011 0001
0101 0010
5 2
CQM1-CPU43
21
1040 FCS$ = RIGHT$(00 + HEX$(Q) , 2)
1050 RETURN
CQM1-CPU43
22
5.2. Le protocole libre (RS232C)
5.2.1. Transmission dune trame ASCII
Linstruction TXD permet denvoyer une trame contenant jusqu 256 octets de
codes ASCII.
S: adresse du bloc de donnes
C= #0000: port RS232C #0001 lecture de droite gauche
#1000: port priphrique #1001 lecture de droite gauche
N: nombre doctets transmettre
5.2.2. Reception dune trame ASCII
LAR09 (AR10 port priph.) contient le nombre doctets en attente de lecture.
Si le nombre doctets dune trame ou bien des dlimiteurs sont dclars dans les
DM6648 et 6649 (DM6653 et 6654), le drapeau AR806 (AR814) passera 1 ds
quune trame sera complte.
D: adresse du bloc mmoire destin recevoir la trame
C= #0000: port RS232C #0001 criture de droite gauche
#1000: port priphrique #1001 criture de droite gauche
N: nombre doctets lire
Exemple: Lautomate envoi lheure (16h53) un PC raccord au port RS232C, puis le PC
renvoie un message de confirmation.
(lhorloge nest disponible quavec le cartouche mmoire CQM1-MxxxR)
CQM1-CPU43
23
6. Sauvegarde sur cartouche mmoire
Les cartouches mmoire 4 et 8 kmots permettent de sauvegarder et transfrer
dans la RAM de lautomate:
le programme
la configuration systme (DM6600 DM6655)
la table des instructions tendues
la zone de DM qui ne peut tre crite par le programme lui-mme
(DM6144 DM6568).
Pour excuter une sauvegarde :
1. vrifiez que la cartouche mmoire est reconnue par lUC (bien enfiche)
2. vrifiez que le Dip switch n2 en faade de lAPI est bien sur OFF
(pas de transfert automatique cartouche ->RAM)
3. passez 1 le bit de sauvegarde AR1400 qui doit revenir automatiquement 0
aprs une demi seconde.

Note: LAR1402 permet denclencher une comparaison entre le programme de la
cartouche et celui de la RAM de lAPI. Une diffrence passe lAR1403 1.
Dans le cas dune cartouche de 4k, vrifiez que le programme nexde pas cette
taille (AR15).
En cas derreur, vrifiez ltat des drapeaux derreur situs dans les AR14 et 16.
Pour transfrer le contenu de la cartouche dans lautomate ds la mise sous
tension, basculez le dip switch n2 en faade de lautomate sur ON.
En cas dabsence de cartouche ou de programme non valide, lautomate se met
en erreur.
CQM1-CPU43
24
7. Lhorloge
La fonction horloge nest disponible quavec les cartouches mmoire RAM
MR433/833 et EEPROM ME432/832. Les informations dhorodatage sont
consignes dans les AR 17 21:
canal 2 digits de gauche 2 digits de droite
AR 17 heure minute
AR 18 minute (0 59) seconde (0 59)
AR 19 date (0 31) heure (0 23)
AR 20 anne (00 99) mois (1 12)
AR 21 bit de rglage jour (00 06)
Rglage
1. arrtez lhorloge en activant le bit AR 2114.
2. modifiez les valeurs des AR 18 AR 21 (lAR 17 nest pas modifiable). En cas
de modification du jour AR 21, veillez ne pas faire retomber le bit AR 2114.
3. Relancez lhorloge en activant le bit AR 2115. LAR 2114 retombe
automatiquement en mme temps que lAR 2115.
Exemple: Lheure et la date du CQM1 sont modifies par un terminal de dialogue

Programme automate
CQM1-CPU43
25
8. La rgulation PID
Les CQM1-CPU4x disposent de linstruction PID
Source: mot dentre (valeur analogique de la mesure)
Contrle: adresse du bloc de mots contenant les paramtres
Destination: mot de sortie (valeur analogique de la sortie)
Loprande C dfini ladresse du 1er mot du bloc de mot contenant les paramtres
de rgulation.
Paramtres de rgulation
canal Fonction
C consigne en Hexa 0 FFFF (compatible avec la rsolution de C+ 6)
C+1 bande Proportionnelle 000.1 999.9 % (de la pleine chelle)
C+2 Intgrale en nombre dchantillons 1 8191 (9999 = pas dintgrale)
C+3 Drive en nombre dchantillons 0 8191
C+4 priode dchantillonage 000.1 102.3 secondes
C+5
C+6
C+7 Ces canaux doivent rests
: disponibles pour les
C+32 calcul PID
Note: La rgulation PID nest effective que si la condition dexcution est vrai tandis que
les paramtres de rgulation sont pris en compte au front montant de cette
condition excpt le DM contenant la consigne qui peut tre modifi en cours de
fonctionnement.
CQM1-CPU43
26
Exemple: Le programme ci-dessous se propose de rguler la sortie transistor IR 100.00
suivant la consigne BCD spcifie dans le DM0009. La mesure de temprature
provient dun transmetteur 4-20 mA et est convertit par une carte AD041 (canal
IR 01).
Programme automate:

You might also like