6.4
Exemple de programme SIMATIC STEP 7
Cet exemple est un service gratuit qui montre de manière tout à fait théorique les
principes de création d'un programme API. SEW décline donc toute responsabilité
quant au contenu de cet exemple de programme.
Dans cet exemple, le MOVIDRIVE
d'entrée PEW576... et les adresses de sortie PAW576..., avec la configuration données-
process "3DP".
A cet effet, il faut déclarer un bloc de données DB 3 d'une longueur d'environ 50 mots.
La fonction système SFC14 permet de copier les entrées-process dans les mots 0, 2 et
4 du bloc de données DB3. Après traitement par le programme automate, l'appel de la
fonction SFC15 permet de copier les sorties-process des mots 20, 22 et 24 sur l'adresse
de sortie PAW576.
Vérifier l'information sur la longueur en octets du paramètre RECORD ; celle-ci doit être
identique à la longueur configurée.
Pour plus d'informations concernant les fonctions système, consulter l'aide en ligne de
STEP 7.
//Début du traitement cyclique du programme dans OB1
BEGIN
NETWORK
TITLE =Copier données EP du variateur vers DB3, mots 0/2/4
CALL SFC
NETWORK
TITLE = programme automate pour application d'entraînement
// Le programme automate utilise les données-process du DB3 pour
// le pilotage de l'entraînement
L
L
L
L W#16#0006
T DB3.DBW 20//Ecrire 6hex sur SP1 (mot de commande = marche)
L
T DB3.DBW 22//Ecrire 1500déc sur SP2 (consigne de vitesse = 300 1/min)
L
T DB3.DBW 24//Ecrire 0hex sur SP3 (sans fonction)
//Fin du traitement cyclique du programme dans OB1
NETWORK
TITLE =Copier données SP de DB3, mots 20/22/24 vers le variateur
CALL SFC
Manuel Interface bus de terrain DFP21B pour PROFIBUS DP-V1
Fonctionnement avec PROFIBUS DP
Exemple de programme SIMATIC STEP 7
14 (DPRD_DAT)
LADDR
:= W#16#240
RET_VAL:= MW 30
RECORD := P#DB3.DBX 0.0 BYTE 6 //Pointeur
DB3.DBW 0
//Charger EP1 (mot d'état 1)
DB3.DBW 2
//Charger EP2 (vitesse réelle)
DB3.DBW 4
//Charger EP3 (sans fonction)
1500
W#16#0000
15 (DPWR_DAT)
LADDR
:= W#16#240
RECORD := P#DB3.DBX 20.0 BYTE 6
RET_VAL:= MW 32
®
ou le MOVITRAC
//READ DP Slave Record
//Adresse d'entrée 576
//Résultat dans l'emplacement mémoire 30
//WRITE DP Slave Record
//Adresse de sortie 576 = 240hex
//Pointeur sur DB/DW
//Résultat dans l'emplacement mémoire 32
®
est déclaré sur les adresses
I
6
0 0
55