Tableau 6-7
M17.3 Lire données
M17.4 Transférer niveaux de vitesse
M17.5 Transférer bloc MDI
M17.6 Transférer réglages ponctuels
M17.7 Transférer sélection programme
MB18 Mode (codé)
MB19 Correction
Exemple d'appel pour le DS 162
L'appel des enregistrements 163 et 164 doit être programmé de manière analogue à
l'appel du DS 162.
LIST
VAR_TEMP
R_DS162
: BOOL;
REQ
: BOOL;
IOID
: BYTE;
LADDR
: WORD;
RECNUM
: BYTE;
DSNR
: BYTE;
BUSY
: BOOL;
END_VAR
BEGIN
...
NETWORK
TITLE = DS162 LESEN
UN
DB_FM.CHECKBACK_SIGNALS.OT_ERR;
SPB
NW5E;
U
R_DS162;
SPB
D162;
INI1:
L
162;
T
DSNR;
S
R_DS162;
D162:
CALL
SFC 59 (
REQ
:= TRUE,
IOID
:= B#16#54,
LADDR
:= DB1.DBW12,
RECNUM
:= DSNR,
RECORD
:= P#M30.0 BYTE 4,
BUSY
:= BUSY,
RET_VAL
:= FEHLERCODE_LESEN);
UN
BUSY;
R
R_DS162;
UN
BIE;
S
FEHLER_LESEFKT;
NW5E:
NOP
0;
...
Module de positionnement FM 353 pour moteur pas à pas
Mémentos exemple d'application 2 (suite)
Mémentos d'ENTREE utilisés
Commentaires
// bit auxiliaire pour enregistrement
// paramètres pour SFC 59
//
//
//
//
//
// segment
// lire DS 162 uniquement si erreur de manip.
// sinon saut à la fin du segment.
// si contrat de lecture déjà activé
// saut à l'appel
// numéro absolu enregistrement
// activer contrat de lecture
// lire n erreur manip./déplacement (DS162)
// requête
// IOID
// adresse module
// numéro enregistrement
// pointeur (n erreur dans mot mémentos 30)
// busy
// valeur de retour
// lorsque contrat de lecture terminé,
// désactivation contrat de lecture DS162
// résultat binaire
// signaler erreur fonction de lecture
Programmation du FM 353
Mémentos de SORTIE utilisés
M21.3 Déplacement sens négatif
M21.4 Déplacement sens positif
M21.5 Pas utilisé
M21.6 Position atteinte, arrêt
M21.7 Libre
MB22 Mode actif
MB23 Pas utilisé
6-43