View
227
Download
5
Category
Preview:
Citation preview
Programmazione di un PLC (Slave “Intelligente”) connesso a Profibus DP
Ruolo Slave Master: PC o PLC
Scheda di interfaccia Profibus DP Saia-Burgess
Programmazione in Ambiente Profibus DP
Slave
Definizione dei Master presenti nel Bus Utilizzo dei file *.GSD
Definizione del Baud rate del Bus Assegnazione Indirizzo allo Slave e al/ai Master
che lo utilizzano
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Assegnazione del programma eseguito dallo Slave
Definizione degli indirizzi di Flag di diagnostica (obbligatorio)
Definizione del nome della configurazione del device "SASI Text Number" (obbligatorio). Il nome viene utilizzato nell'inizializzazione della
comunicazione per il device (XOB)
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Definizione degli scambi di comunicazione tra Master/Slave
E' possibile definire i seguenti scambi: Registro (32 bit) Master Registro (32 bit) Slave Flag (da 1 a 8 bit) Master Flag (da 1 a 8 bit) Slave Flag (da 1 a 8 bit) Master Uscita (da 1 a 8 bit)
Slave Registro (32 bit) Slave Registro (32 bit) Master Flag (da 1 a 8 bit) Slave Flag (da 1 a 8 bit) Master Ingressi (da 1 a 8 bit) Slave Flag (da 1 a 8 bit)
Master
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Una volta scelta la tipologia dello scambio informativo, vengono specificati gli indirizzi dei flag e/o i registri interessati allo scambio informativo
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Inizializzazione della Comunicazione: SASI Sintassi:
SASI canale;
testo;
Canale Profibus DP=9
Il testo è il SASI Text Number contiene la definizione parametri di comunicazione del device
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Programma di Inizializzazione della Comunicazione Profibus DP
XOB 16
SASI 9
text_name
EXOB
Nota: il text name contiene tutte le configurazioni di comunicazione relative al PLC locale
Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)
Esempio di Interazione tra PC e PLC
Scrittura di 1 byte dal PC Master su 8 Flag Interni del PLC Slave
#include <windows.h>#include <stdio.h>#include "applicom.h" short i; /* For loop counter */short nchan; /* Channel number */short neq; /* Equipment number */short nb; /* Number of bytes */short status; /* Interchange status */long adr; /* First byte address */char tabl[1]; /* Table containing the data */
Il programma in C (lato PC Master):
Esempio di Interazione tra PC e PLC
Scrittura di 1 byte dal PC Master su 8 Flag Interni del PLC Slave void main()
{initbus(&status);if (!status) {
nchan=0; nb=1;neq=10;adr=0;
printf("\n Valore del byte che devo scrivere (0-255) = ");scanf(" %hd", &tabl[adr]);writepackqbyte(&nchan, &neq, &nb, &adr, tabl, &status);if (status)
printf("\n problemi relativi all'equipment numero %hd \n",neq); exitbus(&status);}else printf(" non-resident applicom® communication software ");}
Supponiamo di aver impostato lo scambio dati Flag (da 1 a 8 bit) Master Flag (da 1 a 8 bit) Slave
Supponiamo che i Flag in cui il Master scrive sono quelli da 0 a 7 (F0,..., F7)
Supponiamo di volere che il PLC ponga l'uscita O 50 alta se tutti i flag F0,...,F7 sono posti alti (ossia se il PC scrive 255)
Esempio di Interazione tra PC e PLC
Scrittura di 1 bytes dal PC ai flag Interni del PLC
Il programma in IL SAIA diviene:
XOB 16
SASI 9
text_name
EXOB
Esempio di Interazione tra PC e PLC
Scrittura di 1 bytes dal PC ai flag Interni del PLC
Il programma in Ladder SAIA diviene:
Esempio di Interazione tra PC e PLC
Scrittura di 1 bytes dal PC ai flag Interni del PLC
F0
F1
F2
F7
……
A
N
D
O50
Recommended