Title: Configurazione
1Configurazione Programmazione di un PC Master
DP
2Profibus DP Master
- PC connesso a Profibus DP
- Scheda di interfaccia Profibus DP
- Applicom PC1500PFB
3Caratteristiche Scheda Applicom PC1500PFB
- ISA PC board
- Processor Intel 80186 - 24 MHz
- Memory 512 Kbytes dynamic RAM
- Electrical Interface RS485 with galvanic
insulation (500 volts) - Baud Rate from 9.6 to 500 Kbps
- Length per segment
- 9.6 - 19.2 - 93.75 Kbps ?1200 meters
- 187.5 Kbps ? 1000 meters
- 500 Kbps ? 400 meters
4Caratteristiche Scheda Applicom PC1500PFB
- Offre supporto di comunicazione per più
protocolli Profibus DP, FMS - Sono disponibili più canali virtuali di
comunicazione, uno per ogni protocollo
implementato. - La comunicazione è basata sul Data Exchange
- Può essere sfruttata la sincronizzazione, ma solo
per il Server OPC offerto dalla scheda
5Configurazione PC Master DP
- Definizione del bus e delle sue proprietÃ
- Bit rate
- Parametri di Comunicazione
- Definizione Slaves (Files GSD)
6Scambio Dati
- Le funzioni di comunicazione appartengono a tre
differenti modalità operative - Wait Mode
- Database
- Cyclic Mode
7Modalità Operativa Wait Mode
- Ciascuna funzione di comunicazione è trasferita
al Protocol Task del canale di comunicazione
desiderato - Vengono realizzate le dovute preparazioni di
telegrammi Profibus DP e viene realizzata la
trasmissione - La risposta dell'equipment di destinazione viene
ricevuta e processata - Le eventuali variabili ricevute e l'esito della
comunicazione sono ritornate all'Applicazione
8Modalità Operativa Wait Mode
- Vantaggio L'Applicazione evolve in modo sincrono
con l'esito dello scambio informativo - Svantaggio L'esecuzione dell'Applicazione
potrebbe essere rallentata
9Modalità Operativa Data Base
- La modalità operativa Data Base viene utilizzata
- per accedere a variabili che sono lette da un
equipment - per aggiornare variabili che vengono scritte su
un equipment
10Modalità Operativa Data Base
- Il Data Base è suddiviso in due aree
- bit (32Kbits)
- word (32Kwords), che comprende anche byte
- Ciascuna variabile ha un indirizzo relativo
all'area di appartenenza nel Data Base - l'area viene individuata dal tipo di funzione
utilizzata
11Modalità Operativa Cyclic Mode
- E possibile definire delle sequenze di scambio
informativo di tipo ciclico - Le sequenze cicliche possono essere interrotte e
fatte ripartire da programma - Le sequenze cicliche possono essere gestite in
modo automatico da Windows - Le sequenze cicliche possono essere relative sia
alla lettura sia alla scrittura di variabili
da/verso un determinato dispositivo Slave DP
12Modalità Operativa Cyclic Mode
- Ciascuna variabile letta ciclicamente
dall'equipment viene memorizzata nellarea Data
Base - Ciascuna variabile che deve essere scritta
ciclicamente in un equipment viene prelevata
dallarea Data Base - La frequenza di esecuzione di ogni sequenza
(funzione) è definibile in multipli di 100 msec - Il periodo di ripetizione può essere rispettato
solo se lo scambio ciclico avviene in un tempo
inferiore - Possono essere definite al massimo 255 sequenze
cicliche
13Modalità Operativa Data BaseCyclic Mode
- Vantaggio L'Applicazione evolve in modo
asincrono con l'esito dello scambio informativo - Svantaggio Viene persa la freschezza dei dati
- Legata al ciclo di aggiornamento del Data Base
14Funzioni Supportate dalla libreria Applicom
- Le funzioni che si riferiscono allo scambio dati
tra DP Master e DP Slaves implementano tutte il
Data Exchange - Inizializzazione e termine. Esistono le seguenti
funzioni di libreria - Initbus
- Exitbus
15Funzioni Supportate dalla libreria Applicom
16Funzioni Supportate dalla libreria Applicom
- La gestione dei cicli può essere anche demandata
ad un applicativo sotto Windows - PCCYC
17Funzioni Supportate dalla libreria Applicom
18Esempio di Funzionamento Wait Mode ReadPackIBit
- Si supponga di voler leggere 16 bits (i bits 0
fino a 15) dell'equipment numero 20 (SAIA RIO
16I), dal canale 0 (Profibus DP) - I bit si possono simulare in laboratorio
utilizzando un filo e facendo un ponticello - I 16 bit letti vengono compattati in uno short
(16 bit) - Per poter visualizzare il valore di ogni
ingresso, si devono estrarre i singoli bit - Funzione di libreria applicom transwordbit()
19Esempio di Funzionamento Wait Mode ReadPackIBit
short i short nchan0 short neq20 short
nb16 short status long adr0 short
tabl1 short tablbit16
include ltwindows.hgt include ltstdio.hgt include
"applicom.h"
 void main() initbus(status) if
(!status) do  readpackibit(nchan,
neq, nb, adr, tabl, status) if
(!status) transwordbit(nb, tabl, tablbit,
status) for (i0 iltnb i) printf("
hd", tablbiti) else printf("Problemi
con lo Slave numero hd \n ", neq) while
(!status) Â exitbus(status) else
printf("\n Il Software di Comunicazione
Applicom non è Stato Eseguito ")
20Esempio di Funzionamento Wait Mode WritePackQByte
- Si supponga di voler scrivere 1 byte nelle uscite
dell'equipment di indirizzo 30, dall'interfaccia
Applicom relativa al canale 0 (Profibus DP) - Si supponga che l'equipment di indirizzo 30 sia
un SAIA RIO 16O, ossia abbia 16 uscite (2 byte) - I due byte vengono individuati con gli indirizzi
relativi 0 e 1 - Il programma permette di inserire il byte da
scrivere (valori 0-255) e l'indirizzo di byte (0
o 1) - Al fine di facilitare linserimento del byte,
ogni byte è trattato come char (intero senza
segno) - Lutente deve digitare un numero compreso tra
0-255
21Esempio di Funzionamento Wait Mode WritePackQByte
include ltwindows.hgt include ltstdio.hgt include
"applicom.h" void main()
initbus(status) if (!status) do
printf("\n Valore del byte da scrivere
(0-255) ") scanf(" hd",
tabl0) printf("\n Valore
dell'address byte (0-1) ")
scanf(" ld", adr)
writepackqbyte(nchan, neq, nb, adr, tabl,
status) if (status)
printf("Problem on
Equipment no. hd \n ", neq) while
(!status) Â exitbus(status) else
printf(" non-resident applicom
communication software ")
 short i short nchan0 short neq30 short
nb1 short status long adr char tabl1