siemens 01 mdbtcp3 commun.universal v02 iw5.siemens.com/italy/web/ad/prodottiesoluzioni/... ·  ·...

40
Siemens S.p.A. I_IA&DT S&A PLC-based Competence Center Milano Software Application SIMATIC S7 Software Application SIMATIC S7 “Modbus TCP/IP“ communication via CP343-1 MANUALE Applicazione Software „Driver Modbus TCP/IP“

Upload: lamthu

Post on 15-Mar-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

 

 

Siemens S.p.A. I_IA&DT S&A

 

 

PLC-based Competence Center Milano 

Software Application SIMATIC S7Software Application SIMATIC S7

“Modbus TCP/IP“ communication via CP343-1

MANUALE

Applicazione Software „Driver Modbus TCP/IP“

 

 

  CCMilano                                                    28/01/2008                                                                2/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Copyright Reproduction, transmission or use of this document or its contents is not permitted without express written authority. Offenders will be liable for damages. All rights, including rights created by patent grant or registration or a utility model or design, are reserved.

Definitions and Warnings

Qualified personnel In the sense of this documentation qualified personnel are those who are knowledgeable and qualified to mount/install, commission, operate and service/maintain the products which are to be used. He or she must have the appropriate qualifications to carry-out these activities

e.g.:

1. Trained and authorized to energize and de-energize, ground and tag circuits and equipment according to applicable safety standards.

2. Trained or instructed according to the latest safety standards in the care and use of the appropriate safety equipment.

3. Trained in rendering first aid.

There is no explicit warning information in this documentation. However, reference is made to warning information and instructions in the Operating Instructions for the particular product.

Exclusion of liability The application software and the application example were developed to be integrated into user programs for machines or plants by qualified Siemens AG personnel. Siemens AG wants to expressly point-out the potential hazards that can occur when incorrectly handling the application software and/or the application examples – especially when changing their parameterization or sources. Danger in this sense means that death, severe personal injury, or substantial property damage can result if the warning information has not been appropriately observed. This is the reason that the application may only be used, strictly maintaining the information and instructions specified in the Operating Instructions as well as other documents associated with all of the products used in the application. Only qualified personnel may make changes to the parameterization or sources of the application software. Before being used on a productive system, the software must be completely tested on a trial system. Siemens AG is not liable for any damage – no matter what legal background – that occurs because the previously mentioned warning information is not observed. When transferring/selling application software that is not integrated into the overall project, to persons/companies outside of Siemens AG, then the party passing-on the software carries the full responsibility for any claims relating to defects or liability. In order to protect Siemens AG regarding this subject, the party transferring the application software/application example must get the recipient to sign the sheet "warning information, exclusion of liability and declaration of agreement.

 

 

  CCMilano                                                    28/01/2008                                                                3/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Applicable conditions / Alternative 1: (internal business) If nothing else has been negotiated, then the "General Conditions for the Supply of Products and Services in Siemens Internal Business", valid at the time of sale, are applicable.

/ Alternative 2: (domestic business of Siemens AG) If nothing else has been negotiated, then the "General License Conditions for Software for Automation and Drives for Customers with a Seat or Registered Office in Germany", valid at the time of sale, are applicable.

/ Alternative 3: (direct export business of Siemens AG) If nothing else has been negotiated, then the "General License Conditions for Software Products for Automation and Drives for Customers with a Seat or Registered Office outside Germany", valid at the time of sale, are applicable.

/ Alternative 4: (conditions of the particular regional office for the regional office business) If nothing else has been negotiated, then the "...", valid at the time of sale, are applicable.

Reference regarding export codes AL: N

ECCN: N

We reserve the right to make technical changes to this product.

 

 

  CCMilano                                                    28/01/2008                                                                4/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Modbus TCP/IP SERVER Universale V0.2 Italiano

***.***

SIMATIC S7 300

KCproject KCproject

 

 

  CCMilano                                                    28/01/2008                                                                5/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Revisioni

Versione Data Progetto di Note

V0.1 28-08-2006 Robert Reggiani Modbus TCP/IP Server per singola scheda di rete

V0.2 28-01-2008 Robert Reggiani Modbus TCP/IP Server multischeda

 

 

  CCMilano                                                    28/01/2008                                                                6/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Indice

Prefazione  1 

  Protocollo  2 

APPLICAZIONE SOFTWARE Config. Rete  3 

DRIVER TCP/IP    Config. Sw  4 

Communication via CP 343‐1 Test  5 

   

Manuale   

 

 

 

 

  CCMilano                                                    28/01/2008                                                                7/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

1. PREFAZIONE     

 

Il seguente documento vuole riassumere brevemente le caratteristiche funzionali e di interfaccia del driver di comunicazione sviluppato per la comunicazione di PLC S7300 e dotati di CP di comunicazione CP343-1. I sistemi S7300 dovranno essere muniti di CP 343-1 Ethernet preferibilmente del tipo 6GK7-343-1EX21 e potranno installare 1 sola comunicazione per ogni CP343-1 installata . I test di comunicazione sono stati effettuati presso con sistema DCS “Client” e sistema S7300 in versione a doppia CP 343-1 “Server” . I test di comunicazione hanno coperto la totalità delle tipologie di comunicazione e sono stati effettuati in configurazione sia a singolo collegamento che in configurazione ridondata .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  CCMilano                                                    28/01/2008                                                                8/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

 

NOTE :

L’applicazione software descritta nel presente manuale, è stata realizzata dal reparto italiano di A&D Solutions & Applications.

 

 

 

 

 

 

 

 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                9/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

2. PROTOCOLLO     

Il protocollo di comunicazione adottato, si basa sullo standard MODBUS TCP/IP applicato utilizzando supporto hardware di tipo ethernet. I controllori PLC che svolgono funzionalità di “Server” devono necessariamente essere del tipo S7-300, dotati di scheda di comunicazione di tipo CP343-1, mentre il DCS deve eseguire funzionalità di “Client”. Le funzionalità specifiche del MODBUS in genere ,prevedono la trasmissione dei dati in entrambe le direzioni , classificandole in classi definite che tecnicamente vengono numerate in “Function Code” (FNC). Nello specifico, per questa applicazione, sono sviluppati i seguenti FNC :

a) FNC 1 e FNC 2 => Per la gestione della lettura di variabili booleane.

b) FNC 3 e FNC 4 => Per la gestione della lettura di variabili a registro intero o float.

c) FNC 5 => Per la gestione della scrittura singola di variabili booleane.

d) FNC 6 => Per la gestione della scrittura singola di variabili a registro intero.

e) FNC 15 => Per la gestione della scrittura multipla di variabili booleane.

f) FNC 16 => Per la gestione della scrittura multipla di variabili a registro intero o float.

Da un test di funzionalità con il DCS si e’ stabilito l’utilizzo esclusivo di alcuni “Function Code” specifici al fine di ottimizzarne la comunicazione e soprattutto la gestione del database del driver . Si elencano qui di seguito i “Function Code” che verranno richiesti dal DCS con le caratteristiche di rappresentazione :

 

 

  CCMilano                                                    28/01/2008                                                                10/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

2.1 Lettura di registri a BIT

  LETTURA DI BIT  

FNC1 e FNC2 non sono utilizzate perchè la lettura delle variabili a BIT viene fatta attraverso letture di registri interi dove le variabili a BIT devono necessariamente essere allineate . A titolo di esempio vengono di seguito mostrati gli ordinamenti e le successive interpretazioni dei bit letti con FNC3 o FNC4 dal DCS supponendo di leggere consecutivamente i primi 2 registri interi ; per gli altri registri l’ordinamento e’ identico : Registro intero X

Riferimento Address PLC Byte 0 (MSB) Byte 1 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01

Registro intero X+1

Riferimento Address PLC Byte 2 (MSB) Byte 3 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01

 

  

   

 

 

  CCMilano                                                    28/01/2008                                                                11/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

2.2 Lettura di registri INTERI (16bit) LONG (32bit) e REAL (32BIT)

 LETTURA DI INTERI E FLOAT

 

FNC3 e FNC 4 per la gestione della lettura di variabili a registro intero doppio intero o float. Con Le variabili tipo intero (16 Bit) vengono lette direttamente registro per registro, le variabili di tipo doppio sono lette da DCS il quale preleva per ogni variabile a 32 Bit due registri interi consecutivi e li ordina in questo modo :

Riferimento Address PLC Byte 0 Byte 1 Byte 2 Byte 3

INT, WORD 0 INT, WORD 2 DINT , DWORD , REAL 0 Riferimento Address DCS

REGISTER 1 REGISTER 2 LONG, FLOAT 1

Le variabili a 32 bit del PLC devono essere semplicemente trasferite senza conversioni intermedie nei due registri

 

  

   

 

 

  CCMilano                                                    28/01/2008                                                                12/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

 

2.3 Scrittura di singoli BIT

  SCRITTURA

SINGOLI BIT

 

FNC5 per la gestione della scrittura dei singoli bit. Le variabili nell’area bit specificata vengono scritte una per una senza alterazione delle variabili adiacenti .La numerazione dei bit nell’area di scrittura segue questa regola : Registro intero X

Riferimento Address PLC Byte 0 (MSB) Byte 1 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 07 06 05 04 03 02 01 00 15 14 13 12 11 10 09 08

Registro intero X+1

Riferimento Address PLC Byte 2 (MSB) Byte 3 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 23 22 21 20 19 18 17 16 31 30 29 28 27 26 25 24

Registro intero X+2

Riferimento Address PLC Byte 4 (MSB) Byte 5 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 39 38 37 36 35 34 33 32 47 46 45 44 43 42 41 40

L’indirizzo del primo bit DCS corrispondente ad un determinato byte di indirizzo PLC si ricava come : BIT DCS = N° BYTE PLC * 8  

  

 

 

 

 

 

 

  CCMilano                                                    28/01/2008                                                                13/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

2.4 Scrittura di registri a BIT

 SCRITTURA

DI BIT IN REGISTRO

 

FNC6 per la gestione della scrittura dei singoli bit in un intero registro. Le variabili nell’area bit specificata vengono scritte contemporaneamente nel registro; in caso di scrittura di un solo bit gli altri vengono necessariamente sovrascritti. La numerazione dei bit nell’area di scrittura segue questa regola per gli altri registri l’ordinamento e’ identico : Registro intero X

Riferimento Address PLC Byte 0 (MSB) Byte 1 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01

Registro intero X+1

Riferimento Address PLC Byte 2 (MSB) Byte 3 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01

 

    

 

 

  CCMilano                                                    28/01/2008                                                                14/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

2.5 Scrittura di singoli INTERI (16bit) LONG (32bit) e REAL (32BIT)

 

SCRITTURA DI SINGOLI

INTERI E FLOAT

 

Per la gestione della scrittura di variabili a registro intero doppio intero float. Le variabili tipo intero (16 Bit) vengono scritte direttamente registro per registro , le variabili da 32 bit sono gestite da DCS il quale scrive per ogni variabile due registri interi consecutivi e li ordina in questo modo :

Riferimento Address PLC Byte 0 Byte 1 Byte 2 Byte 3

INT, WORD 0 INT, WORD 2 DINT , DWORD , REAL 0 Riferimento Address DCS

REGISTER 1 REGISTER 2 LONG, FLOAT 1

Le variabili DINT DWORD REAL del PLC devono essere semplicemente lette senza conversioni intermedie dai due registri  

  

   

 

 

  CCMilano                                                    28/01/2008                                                                15/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

2.6 Scrittura multipla di BIT

 SCRITTURA MULTIPLA

DI BIT  

FNC15 per la gestione della scrittura di più bit . Le variabili nell’area bit specificata vengono scritte insieme contemporaneamente per un massimo di 32 Bit alla volta senza alterazione delle variabili adiacenti . La numerazione dei bit nell’area di scrittura segue questa regola :   Registro intero X

Riferimento Address PLC Byte 0 (MSB) Byte 1 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 07 06 05 04 03 02 01 00 15 14 13 12 11 10 09 08

Registro intero X+1

Riferimento Address PLC Byte 2 (MSB) Byte 3 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 23 22 21 20 19 18 17 16 31 30 29 28 27 26 25 24

Registro intero X+2

Riferimento Address PLC Byte 4 (MSB) Byte 5 (LSB)

07 06 05 04 03 02 01 00 07 06 05 04 03 02 01 00

Riferimento Address DCS 39 38 37 36 35 34 33 32 47 46 45 44 43 42 41 40

L’indirizzo del primo bit DCS corrispondente ad un determinato byte di indirizzo PLC si ricava come : BIT DCS = N° BYTE PLC * 8  

  

   

 

 

  CCMilano                                                    28/01/2008                                                                16/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

2.7 Scrittura multipla di INTERI (16bit) LONG (32bit) e REAL (32BIT)

 

SCRITTURA MULTIPLA

DI INTERI E FLOAT

 

FNC 16 Per la gestione della scrittura multipla di variabili a registro intero doppio intero float. Le variabili tipo intero (16 Bit) vengono scritte contemporaneamente nei registri , le variabili a 32 bit sono gestite da DCS il quale scrive per ogni variabile due registri interi consecutivi e li ordina in questo modo :

Riferimento Address PLC Byte 0 Byte 1 Byte 2 Byte 3

INT, WORD 0 INT, WORD 2 DINT , DWORD , REAL 0 Riferimento Address DCS

REGISTER 1 REGISTER 2 LONG, FLOAT 1

Le variabili DINT DWORD REAL del PLC devono essere semplicemente lette senza conversioni intermedie dai due registri  

       

 

 

  CCMilano                                                    28/01/2008                                                                17/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

  

3. CONFIGURAZIONE DI RETE     

 

3.1 Configurazione Hardware

La configurazione HW del sistema S7300 presuppone l’alloggiamento della scheda CP343-1 in uno slot qualsiasi a disposizione . Nel caso di configurazioni multiple ad esempio su S7300Rid la configurazione delle varie CP343-1 alloggiate non cambia : le diversità sono rappresentate eventualmente dai soli indirizzamenti IP e dai riferimenti di collegamento NET-PRO che vengono a generarsi (Fig. 05)  

 

 

Fig. 01

 

 

  CCMilano                                                    28/01/2008                                                                18/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

I parametri della scheda da configurare sono esclusivamente quelli riferiti all’indirizzo IP (es.: 192.168.71.123) e alla maschera di sottorete (es.: 255.255.255.0 ) tutto in accordo agli indirizzi e alle impostazioni di rete dove si trova il DCS. L’indirizzo e/o abilitazione del router e’ facoltativa e dipende solo dalla presenza di una o piu’ sottoreti alle quali e’ necessario accedere tramite gateway .  

 

 

Fig. 02

 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                19/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

3.2 Configurazione della rete (NET-PRO)

Il software che costituisce il driver PLC presuppone la realizzazione di collegamenti progettati nel “NET PRO” tra la stazione S7300 (CP343-1) dispositivo DCS remoto “Sconosciuto” . Nel caso di connessioni plurime (es. S7300Red) e’ necessaria la realizzazione di un collegamento per ciascuna scheda di rete progettata ; in tal caso e’ vincolante che ciascun collegamento progettato di scheda abbia sempre e comunque l’impostazione della porta “GATE” al valore di 502 (Fig. 06). Per la progettazione del collegamento , entrare nel programma di rete NET-PRO , selezionare con il tasto destro del mouse la singola CPU S7-300 e inserire nuovo collegamento (Ctrl+N)  

 

 

 

 

Fig. 03

   

 

 

  CCMilano                                                    28/01/2008                                                                20/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

 Il collegamento deve essere del tipo TCP verso un partner “ non specificato” :    

 

 

 

Fig. 04

   

 

 

  CCMilano                                                    28/01/2008                                                                21/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 Visualizzando le proprietà del collegamento e’ necessario verificare su “ GENERALE” : punto 1 : address ID da riportare poi come parametro in FB186 punto 2 : address LADDR da riportare poi come parametro in FB186 punto 3 : l’assenza della selezione “realizzazione attiva del collegamento premendo poi il pulsante “Selez.percorso” verificare la corretta impostazione dei dati    

 

 

Fig. 05

 

 

 

 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                22/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 Visualizzando le proprietà del collegamento e’ necessario verificare su “ INDIRIZZI” : punto 4 : l’impostazione della porta “GATE” al valore di 502 Ogni singolo collegamento se plurimo (es. S7300Red) deve avere sempre “GATE” 502   

 

 

 

 

Fig. 06

 

 

 

  CCMilano                                                    28/01/2008                                                                23/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 Visualizzando le proprietà del collegamento e’ necessario verificare su “ OPZIONI” la seguente impostazione :    

 

 

Fig. 07

 

 

 

 

 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                24/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

Visualizzando le proprietà del collegamento e’ necessario verificare su “ PANORAMICA” il riassunto di tutte le impostazioni. Il nome (es Yokogawa) e’ solo indicativo ed e’ riportato dall’ impostazione fatta in fig. 05 :    

 

 

Fig. 08

 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                25/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Compilare tutto il sistema “NET-PRO” verificandone l’esito positivo 

 

 

 

Fig. 09

   

 

 

  CCMilano                                                    28/01/2008                                                                26/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

4. CONFIGURAZIONE SOFTWARE    

Il file di riferimento compresso dal nome mdb_comunication_xx. zip e’ esclusivamente di riferimento : esso contiene tutti i blocchi funzionali di comunicazione necessari e viene qui usato per evidenziare le caratteristiche di funzionamento . La struttura del software del drive da integrare negli applicativi delle CPU S7300 e’ costituito fondamentalmente da questi componenti :

a) FB 186 => Per la gestione dell’intero driver di comunicazione . b) DB 186 => Per la gestione area dati di istanza del driver di comunicazione

c) FC 186 => Per la gestione della distribuzione delle variabili in aree “UTENTE”

L’FB186 del driver di comunicazione contiene al proprio interno due altri FC di comunicazione standard SIEMENS i cui numeri sono definiti come FC5 e FC6 non rinominabili .

d) FC 5 => Trasmissione AG-SEND e) FC 6 => Ricezione AG-RECEIVE

Le aree di residenza registri originali omogenei e compattati sono state definite come DB7 & DB8 tranquillamente rinominabili

f) DB 7 => Area dati residenza originaria registri di comunicazione read/write

g) DB 8 => Area dati residenza coil (BIT ) di comando da DCS E’ presente inoltre un file di struttura UDB186 che contiene il formato di lettura bit da parte del DCS in modalità rappresentata al paragrafo 2.1

h) UDT186 => Formato lettura a bit del DCS Le dimensioni di questi blocchi sono evidenziate nella figura sottostante fig.10  

   

 

 

  CCMilano                                                    28/01/2008                                                                27/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

Fig. 10

 

 

 

 A livello di applicativo d’esempio e’ stata realizzata la seguente struttura di lancio :     

OB1 Main Block

--------- FC 187 Go Driver

-------------------- FB 186 Driver DB 186 Istance Driver DB7 & DB8 UDT186

-------------------- FC 186 Register Distributor

DB 187 Area register USER 1’ USER area

-------------------- FC 186 Register Distributor

DB 187 Area register USER 2’ USER area

--------------------

-------------------- FC 186 Register Distributor

DB xxx Area register USER n’ USER area

    

   

 

 

  CCMilano                                                    28/01/2008                                                                28/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

Il blocco di esempio OB1 effettua esclusivamente il lancio del blocco FC187 “COMUNICAZ_DCS” dove risiede la logica di lancio di tutto il driver di comunicazione :  

 

 

 

 

Fig. 11

   

 

 

  CCMilano                                                    28/01/2008                                                                29/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 Il blocco di esempio FC187 Lancia al suo interno I blocchi FB186 “COMM_MDBTCP” istanziato con DB186 “Data_COMM_Y” , Lancia N° volte IL blocco FC186 “ DISTRIB_DATA_MDB” quante sono le aree UTENTE discontinue nelle quali e’ necessario distribuire e/o raccogliere i registri :  

 

Fig. 12

 

   

 

 

  CCMilano                                                    28/01/2008                                                                30/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

Parametri di FB186 “COMM_MDBTCP”

N° Nome Valore tipico Descrizione 1 ID_COLLEG 1 Identificazione numero di collegamento in NET-

PRO creato in precedenza .(vedi figura 04 punto 1)

2 LADDR W#16#1FF7 Identificativo address card collegamento in NET-PRO creato in precedenza .(vedi figura 04 punto 2)

3 RIT_RESP S5T#10MS

Tempo di attesa prima che il SERVER PLC risponda ad una chiamata del Client DCS . Il tempo si rende necessario per determinare una cadenza di polling e/o in fase di test per avere il tempo di esaminare visivamente nelle aree dati le richieste del DCS

4 TIMER_RESP T80 E’ il timer necessario alla temporizzazione di “RIT_RESP”

5 N_SLAVE 1 Identificativo del numero di slave PLC (Server Identification) In realtà questo indirizzo e’ un sottoindirizzo che viene a valle dell’indirizzo IP della rete TCP/IP

6

DB_WORD DB7 Area dati residenza originaria registri di comunicazione read/write Questa area contiene registri di comunicazione . Se l’utente non ha già realizzato il proprio programma suddividendo i registri in diverse aree ,risulterebbe conveniente, a livello di velocità, inserire in questa area in modo raggruppato e contiguo tutte le variabili da trasmettere e ricevere dal DCS .

7 OFFS_WORD 0 E’ un correttore di offset sugli indirizzi dei registri a Word Nel nostro specifico caso tale valore deve rigorosamente essere a “0”

 

   

 

 

  CCMilano                                                    28/01/2008                                                                31/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

N° Nome Valore tipico Descrizione 8 LIM_REG_INT 1000 Rappresenta il limite fisico dei registri gestiti dal

sistema . Serve per definire la lunghezza massima in Word dell’area “DB_WORD” affinché ad una richiesta da parte del DCS al di fuori di questa area corrisponda un messaggio di anomalia e non un blocco del sistema

9

DB_BIT DB8 Area dati residenza coil (booleani ) di comando da DCS Questa area contiene registri di comunicazione che rappresenteranno i singoli comandi provenienti dal DCS . L’utente dovrà prelevare i singoli comandi booleani che risiedono in questa area e distribuirli in tutti i punti del programma UTENTE dove e’ necessario . I comandi NON VENGONO RILETTI DAL DCS ; eventuali stati di memoria modificati da questi comandi devono essere riportati in area registri “DB_WORD” affinché il DCS li possa visualizzare .

10 OFFS_BIT 0 E’ un correttore di offset sugli indirizzi dei registri a BIT Nel nostro caso tale valore deve rigorosamente essere a “0”

11 LIM_REG_BIT 3000 Rappresenta il limite fisico dei comandi gestiti dal sistema . Serve per definire la lunghezza massima in BIT dell’area “DB_BIT” affinché ad un comando da parte del DCS al di fuori di questa area corrisponda un messaggio di anomalia e non un blocco del sistema

12 ACK FALSE Il comando impulsivo di ACK determina il reset delle memorie di allarme di comunicazione

13 ERRORE R,F,A,S Il codice visualizzato rappresentala memoria del il tipo di errore avvenuto : R = errore di ricezione F=codice funzione FCN errato A=address registro/bit errato S= errore di trasmissione

14 ERR FALSE Stato di errore

   

 

 

  CCMilano                                                    28/01/2008                                                                32/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 L’area “DB_WORD” rappresentata qui come esempio in DB 7 contiene tutti i registri read/write INTERI originali . La combinazione o la suddivisione dei registri interi come evidenziato nel paragrafo “Protocolli” permetteranno la visualizzazione e scrittura di INTERI , REALI , BIT di STATO    

 

 

Fig. 13

 

   

 

 

  CCMilano                                                    28/01/2008                                                                33/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 

L’area “DB_BIT” rappresentata qui come esempio in DB 8 contiene tutti i comandi a BIT da DCS . In questa area il DCS e’ in grado di scrivere comandi a BIT senza alterare lo stato dei bit adiacenti .  

 

 

Fig.  14 

 

   

 

 

  CCMilano                                                    28/01/2008                                                                34/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

L’area “DB_WORD” e L’area “DB_BIT” parametrizzate nell FB186 possono essere sovrapposte costituendo una sola area comune e mista . Questa sovrapposizione la si ottiene parametrizzando ai parametri (6) “DB_WORD” e (9) “DB_BIT” dell’ FB186 lo stesso DB . Definiamo un’area di 20 registri ed evidenziamo qui di seguito la corrispondenza delle varie aree e indirizzamenti derivanti :  

 

 

 

Fig. 15

 

 

  CCMilano                                                    28/01/2008                                                                35/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

L’ FC186 “DISTRID_DATA_MDB” è un blocco funzionale ausiliario in grado di trasferire parti di registri originali presenti nell’area “DB_WORD” in altre aree DB Utente . Il trasferimento avviene in modo bidirezionale , per cui tutte le variabili in lettura da DCS verranno prelevate dall’area DB Utente e trasferite nell’area di base “DB_WORD” , mentre le variabili scritte dal DCS verranno prelevate dal db base “DB_WORD” e trasferite nell’ area DB Utente (solo per i codici funzione FCN6-16) Parametri di FC186 “DISTRID_DATA_MDB”

N° Nome Valore d’esempio

Descrizione

21 INTERLOCK False Serve solo ad interbloccare le funzioni di lettura/scrittura da parte di una seconda linea di protocollo in ridondanza

22 Data_MDB_Y DB186 Identifica il DB di istanza dell’ FB186 driver di comunicazione qui rappresentato dal DB 186 “Data_COMM_Y”

23 REGISTER_START L#40001 L#40011

Identifica il primo indirizzo DCS che e’ contenuto nella AREA UTENTE che stiamo configurando

24 QTA_REGISTER _AREA

10 6

Quantità di registri INTERI ( word) che costituiscono l’ AREA UTENTE che stiamo configurando

25 DB_AREA DB187 Identifica il DB dove risiede l’ AREA UTENTE che stiamo configurando

26 BY_START_AREA 30 70

Identifica il numero di byte del “DB_AREA” da cui parte l’ AREA UTENTE che stiamo configurando

 

Fig.16

 

 

  CCMilano                                                    28/01/2008                                                                36/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

 L’area “DB_AREA ” nei due esempi e’ sempre nel DB187 dove sono state create (casualmente) due aree UTENTE che potrebbero rappresentare le aree Cliente dove risiedono I dati da ricevere e trasmettere    

 

 

Fig. 17

   

 

 

  CCMilano                                                    28/01/2008                                                                37/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

In caso di coesistenza di due linee Modbus TCP/IP su due schede ethernet necessariamente differenti e’ necessario il lancio di due FB186 che dovranno avere DB di istanza differenti. Nel caso si utilizzi il blocco FC186 “DISTRID_DATA_ MDB” ,questo dovrà essere lanciato due volte uno per ogni area di provenienza dei dati (es: Data_COMM_Y1 e Data_COMM_Y2)E’ necessario inoltre interbloccare vicendevolmente le due funzioni tramite il parametro “INTERLOCK” inserendo la variabile “C_WRITE” residente in ciascun DB di istanza dell’ FB186 di gestione protocollo (Dbx 870.0)

 

Fig.  18 

   

 

 

  CCMilano                                                    28/01/2008                                                                38/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

5. TEST     

 Attraverso la VAT “ Test_Register_DCS” presente nel progetto di esempio e’ possibile visualizzare e testare le due USER aree definite prima evidenziano la contemporaneità di tutti i registri ad essere Letti e scritti da DCS   

 

 

Fig.  19 

 

 

 

  CCMilano                                                    28/01/2008                                                                39/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

 

NOTE : 

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

....................................................................................................................................

................................................................................................... 

 

 

 

  

 

 

  CCMilano                                                    28/01/2008                                                                40/40  

Cop

yrig

ht ©

Sie

men

s A

G A

ll rig

hts

rese

rved

S

iem

ens_

01_M

DB

TCP

3_C

omm

un.U

NIV

ER

SA

L_V

02_i

.doc

x

ULTIMA PAGINA VUOTA