CM PtP - Configurazioni di accoppiamenti punto a punto

Download Report

Transcript CM PtP - Configurazioni di accoppiamenti punto a punto

Prefazione
SIMATIC
S7-1500 / ET 200MP / ET 200SP
CM PtP - Configurazioni di
accoppiamenti punto a punto
Manuale di guida alle funzioni
09/2016
A5E37509396-AB
Guida alla documentazione
1
Introduzione
2
Principi di base della
comunicazione seriale
3
Configurazione/parametrizza
zione
4
Programmazione comunicazione tramite
istruzioni
5
Avviamento e diagnostica
6
Service & Support
A
Avvertenze di legge
Concetto di segnaletica di avvertimento
Questo manuale contiene delle norme di sicurezza che devono essere rispettate per salvaguardare l'incolumità
personale e per evitare danni materiali. Le indicazioni da rispettare per garantire la sicurezza personale sono
evidenziate da un simbolo a forma di triangolo mentre quelle per evitare danni materiali non sono precedute dal
triangolo. Gli avvisi di pericolo sono rappresentati come segue e segnalano in ordine descrescente i diversi livelli
di rischio.
PERICOLO
questo simbolo indica che la mancata osservanza delle opportune misure di sicurezza provoca la morte o gravi
lesioni fisiche.
AVVERTENZA
il simbolo indica che la mancata osservanza delle relative misure di sicurezza può causare la morte o gravi
lesioni fisiche.
CAUTELA
indica che la mancata osservanza delle relative misure di sicurezza può causare lesioni fisiche non gravi.
ATTENZIONE
indica che la mancata osservanza delle relative misure di sicurezza può causare danni materiali.
Nel caso in cui ci siano più livelli di rischio l'avviso di pericolo segnala sempre quello più elevato. Se in un avviso
di pericolo si richiama l'attenzione con il triangolo sul rischio di lesioni alle persone, può anche essere
contemporaneamente segnalato il rischio di possibili danni materiali.
Personale qualificato
Il prodotto/sistema oggetto di questa documentazione può essere adoperato solo da personale qualificato per il
rispettivo compito assegnato nel rispetto della documentazione relativa al compito, specialmente delle avvertenze
di sicurezza e delle precauzioni in essa contenute. Il personale qualificato, in virtù della sua formazione ed
esperienza, è in grado di riconoscere i rischi legati all'impiego di questi prodotti/sistemi e di evitare possibili
pericoli.
Uso conforme alle prescrizioni di prodotti Siemens
Si prega di tener presente quanto segue:
AVVERTENZA
I prodotti Siemens devono essere utilizzati solo per i casi d’impiego previsti nel catalogo e nella rispettiva
documentazione tecnica. Qualora vengano impiegati prodotti o componenti di terzi, questi devono essere
consigliati oppure approvati da Siemens. Il funzionamento corretto e sicuro dei prodotti presuppone un trasporto,
un magazzinaggio, un’installazione, un montaggio, una messa in servizio, un utilizzo e una manutenzione
appropriati e a regola d’arte. Devono essere rispettate le condizioni ambientali consentite. Devono essere
osservate le avvertenze contenute nella rispettiva documentazione.
Marchio di prodotto
Tutti i nomi di prodotto contrassegnati con ® sono marchi registrati della Siemens AG. Gli altri nomi di prodotto
citati in questo manuale possono essere dei marchi il cui utilizzo da parte di terzi per i propri scopi può violare i
diritti dei proprietari.
Esclusione di responsabilità
Abbiamo controllato che il contenuto di questa documentazione corrisponda all'hardware e al software descritti.
Non potendo comunque escludere eventuali differenze, non possiamo garantire una concordanza perfetta. Il
contenuto di questa documentazione viene tuttavia verificato periodicamente e le eventuali correzioni o modifiche
vengono inserite nelle successive edizioni.
Siemens AG
Division Digital Factory
Postfach 48 48
90026 NÜRNBERG
GERMANIA
A5E37509396-AB
Ⓟ 09/2016 Con riserva di modifiche
Copyright © Siemens AG 2016.
Tutti i diritti riservati
Prefazione
Scopo della documentazione
La presente documentazione contiene informazioni importanti per la progettazione e la
messa in servizio dei moduli di comunicazione punto a punto per i sistemi S7-1500
(ET 200MP) e ET 200SP.
Nozioni di base necessarie
La comprensione della documentazione presuppone le seguenti conoscenze:
● Conoscenze generali nel campo della tecnica di automazione
● Conoscenze del sistema di automazione industriale SIMATIC
● Conoscenze sull'utilizzo di computer con sistema operativo Windows
● Conoscenze nell'utilizzo di STEP 7
Campo di validità della documentazione
La presente documentazione è valida per tutti i moduli di comunicazione punto a punto
dell'S7-1500 (ET 200MP) e dell'ET 200SP impiegati in STEP 7 (TIA Portal) dalla
versione V12.
Convenzioni
La denominazione "CPU" utilizzata nel seguito del manuale indica sia le unità centrali
dell'S7-1500 sia i moduli di interfaccia della periferia decentrata, ad es. IM 155-5.
Osservare anche le avvertenze contrassegnate nel modo seguente:
Nota
Un'avvertenza contiene importanti informazioni sul prodotto descritto nella documentazione,
sulla sua manipolazione o su una parte di documentazione alla quale occorre prestare
particolare attenzione.
Smaltimento e riciclaggio
Grazie al basso contenuto di sostanze nocive i prodotti sono riciclabili. Per il riciclaggio e lo
smaltimento delle apparecchiature usate nel rispetto dell'ambiente rivolgersi a un'azienda
certificata per lo smaltimento di materiale elettronico.
CM PtP - Configurazioni di accoppiamenti punto a punto
4
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Prefazione
Ulteriore supporto
● Per informazioni sui servizi del Technical Support consultare l'appendice Service &
Support (Pagina 200).
● La documentazione tecnica dei singoli prodotti e sistemi SIMATIC è disponibile in Internet
(http://www.siemens.com/simatic-tech-doku-portal).
● Il catalogo e il sistema per le ordinazioni online sono disponibili in Internet
(http://mall.automation.siemens.com).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
5
Indice del contenuto
Prefazione ................................................................................................................................................. 4
1
Guida alla documentazione ....................................................................................................................... 8
2
Introduzione ............................................................................................................................................. 12
3
4
2.1
Panoramica dei moduli di comunicazione ............................................................................. 12
2.2
Panoramica delle fasi di elaborazione ................................................................................... 15
2.3
Panoramica delle istruzioni .................................................................................................... 16
Principi di base della comunicazione seriale ............................................................................................ 18
3.1
Trasmissione di dati seriale ................................................................................................... 18
3.2
Sicurezza di trasmissione ...................................................................................................... 19
3.3
Funzionamento RS232 .......................................................................................................... 22
3.4
Funzionamento RS422 .......................................................................................................... 24
3.5
Funzionamento RS485 .......................................................................................................... 25
3.6
Handshake ............................................................................................................................. 26
Configurazione/parametrizzazione........................................................................................................... 31
4.1
Configurazione/parametrizzazione di un modulo di comunicazione...................................... 31
4.2
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.2.6
Comunicazione tramite Freeport............................................................................................ 32
Procedimento per la configurazione di un collegamento seriale con Freeport ...................... 32
Trasmissione dati con Freeport ............................................................................................. 33
Invio di dati con Freeport ....................................................................................................... 34
Ricezione di dati con Freeport ............................................................................................... 35
Trasparenza di codice............................................................................................................ 39
Buffer di ricezione .................................................................................................................. 40
4.3
4.3.1
4.3.2
4.3.3
4.3.4
4.3.5
4.3.6
Comunicazione tramite 3964(R) ............................................................................................ 41
Procedimento per la configurazione di un collegamento seriale con 3964(R) ...................... 41
Trasmissione dati con la procedura 3964(R) ......................................................................... 42
Carattere di controllo .............................................................................................................. 43
Carattere di controllo blocco .................................................................................................. 44
Invio di dati con 3964(R) ........................................................................................................ 44
Ricezione di dati con 3964(R) ................................................................................................ 45
4.4
4.4.1
4.4.2
4.4.3
Comunicazione tramite Modbus RTU .................................................................................... 47
Procedimento per la configurazione di un collegamento seriale con Modbus RTU .............. 47
Panoramica sulla comunicazione Modbus ............................................................................ 49
Codici funzione....................................................................................................................... 53
4.5
4.5.1
4.5.2
4.5.3
Comunicazione tramite USS .................................................................................................. 55
Procedimento per la configurazione di un collegamento seriale con Modbus USS .............. 55
Panoramica della comunicazione USS .................................................................................. 56
Panoramica funzioni .............................................................................................................. 58
CM PtP - Configurazioni di accoppiamenti punto a punto
6
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Indice del contenuto
5
Programmazione - comunicazione tramite istruzioni ................................................................................ 59
5.1
Panoramica della programmazione PtP .................................................................................59
5.2
Panoramica della programmazione Modbus ..........................................................................63
5.3
Panoramica della programmazione USS ...............................................................................65
5.4
5.4.1
5.4.1.1
5.4.1.2
5.4.1.3
5.4.1.4
5.4.1.5
5.4.1.6
5.4.1.7
5.4.1.8
5.4.1.9
5.4.1.10
5.4.1.11
5.4.1.12
5.4.1.13
5.4.1.14
5.4.1.15
5.4.1.16
5.4.2
5.4.2.1
5.4.2.2
5.4.2.3
5.4.2.4
5.4.2.5
5.4.2.6
5.4.3
5.4.3.1
5.4.3.2
5.4.3.3
5.4.3.4
Istruzioni..................................................................................................................................68
Punto a punto..........................................................................................................................68
Panoramica della comunicazione Freeport ............................................................................68
Utilizzo delle istruzioni ............................................................................................................71
Parametri comuni per operazioni Freeport .............................................................................72
Port_Config: Progetta porta di comunicazione PtP ................................................................74
Send_Config: Progetta mittente PtP .......................................................................................77
Receive_Config: Progetta destinatario PtP ............................................................................79
P3964_Config: Progettazione del protocollo 3964(R) ............................................................85
Send_P2P: Invia dati...............................................................................................................87
Utilizzo dei parametri BUFFER e LENGTH nelle operazioni di comunicazione .....................90
Receive_P2P: Ricevi dati ........................................................................................................91
Receive_Reset: Cancella buffer di ricezione ..........................................................................93
Signal_Get: Leggi stato ...........................................................................................................94
Signal_Set: Imposta segnali addizionali .................................................................................96
Get_Features: Preleva funzioni avanzate ...............................................................................98
Set_Features: Imposta funzioni avanzate ..............................................................................99
Messaggi di errore ................................................................................................................100
MODBUS (RTU) ...................................................................................................................117
Panoramica della comunicazione Modbus RTU...................................................................117
Modbus_Comm_Load: Configura modulo di comunicazione per Modbus ...........................119
Modbus_Master: Comunica come master Modbus ..............................................................124
Modbus_Slave: Comunica come slave Modbus ...................................................................131
Struttura del telegramma ......................................................................................................137
Messaggi di errore ................................................................................................................144
USS .......................................................................................................................................160
Panoramica della comunicazione USS.................................................................................160
Presupposti per l'utilizzo del protocollo USS ........................................................................162
USS_Port_Scan / USS_Port_Scan_31: Elabora comunicazione tramite rete USS ..............165
USS_Drive_Control / USS_Drive_Control_31: preparazione e visualizzazione dei dati
per l'azionamento ..................................................................................................................168
USS_Read_Param / USS_Read_Param_31: Leggi dati dall'azionamento...........................173
USS_Write_Param / USS_Write_Param_31: Modifica dati nell'azionamento ......................175
Informazioni generali sulla configurazione di un azionamento .............................................178
Messaggi di errore ................................................................................................................182
5.4.3.5
5.4.3.6
5.4.3.7
5.4.3.8
6
A
Avviamento e diagnostica ...................................................................................................................... 199
6.1
Comportamento all'avviamento ............................................................................................199
6.2
Funzioni di diagnostica .........................................................................................................199
Service & Support .................................................................................................................................. 200
A.1
Servizi di assistenza e supporto tecnico ...............................................................................200
Glossario ............................................................................................................................................... 204
Indice analitico ....................................................................................................................................... 208
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
7
Guida alla documentazione
1
La documentazione del sistema di automazione SIMATIC S7-1500, della CPU 1516pro-2 PN
basata su SIMATIC S7-1500 e dei sistemi di periferia decentrata SIMATIC ET 200MP,
ET 200SP e ET 200AL è suddivisa in tre parti.
Questa suddivisione consente di accedere in maniera mirata ai contenuti di interesse.
Informazioni di base
I manuali di sistema e il Getting Started descrivono dettagliatamente la progettazione, il
montaggio, il cablaggio e la messa in servizio dei sistemi SIMATIC S7-1500, ET 200MP,
ET 200SP e ET 200AL; per la CPU 1516pro-2 PN occorre utilizzare le istruzioni operative
corrispondenti. La Guida in linea di STEP 7 supporta l'utente nelle fasi di progettazione e
programmazione.
Informazioni sul dispositivo
I manuali di prodotto contengono una descrizione compatta delle informazioni specifiche del
modulo, come proprietà, schemi di collegamento, curve caratteristiche e dati tecnici.
CM PtP - Configurazioni di accoppiamenti punto a punto
8
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Guida alla documentazione
Informazioni generali
I manuali di guida alle funzioni contengono descrizioni dettagliate su argomenti generali
riguardanti per es. la diagnostica, la comunicazione, Motion Control, il server web e
OPC UA.
La documentazione può essere scaricata gratuitamente in Internet
(http://w3.siemens.com/mcms/industrial-automation-systems-simatic/en/manualoverview/Pages/Default.aspx).
Eventuali modifiche e integrazioni dei manuali vengono descritte nelle informazioni sul
prodotto.
Le informazioni sul prodotto sono disponibili in Internet:
● S7-1500/ET 200MP (https://support.industry.siemens.com/cs/it/it/view/68052815)
● ET 200SP (https://support.industry.siemens.com/cs/it/it/view/73021864)
● ET 200AL (https://support.industry.siemens.com/cs/it/it/view/99494757)
Manual Collection
Le Manual Collection raggruppano in un unico file l'intera documentazione relativa ai diversi
sistemi.
Le Manual Collection sono disponibili in Internet.
● S7-1500/ET 200MP (https://support.industry.siemens.com/cs/ww/it/view/86140384)
● ET 200SP (https://support.industry.siemens.com/cs/ww/it/view/84133942)
● ET 200AL (https://support.industry.siemens.com/cs/ww/it/view/95242965)
"mySupport"
"mySupport", l’area di lavoro personale dell’utente, consente di sfruttare al meglio il servizio
Industry Online Support.
La si può usare per creare filtri, preferiti e tag, richiedere dati CAx e assemblare la propria
personale biblioteca di manuali e documentazione. Inoltre nelle richieste di assistenza sono
già preimpostati i dati personali dell’utente, il quale ha modo di controllare in qualsiasi
momento lo stato di elaborazione delle richieste che ha presentato.
Per poter usufruire della funzionalità completa di "mySupport" ci si deve registrare una volta.
"mySupport" è disponibile in Internet (https://support.industry.siemens.com/My/ww/it).
"mySupport" - Documentazione
Nell’area Documentazione di "mySupport" si possono assemblare interi manuali o alcune
loro parti per realizzare un manuale personalizzato.
Il manuale così ottenuto può essere esportato come file PDF o in un formato modificabile.
"mySupport" - Documentazione è disponibile in Internet
(http://support.industry.siemens.com/My/ww/it/documentation).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
9
Guida alla documentazione
"mySupport" - Dati CAx
Nell’area Dati CAx di "mySupport” si può accedere ai dati di prodotto attuali per il proprio
sistema CAx o CAe.
Con pochi clic è possibile configurare il proprio cestino di download.
Si possono selezionare:
● immagini del prodotto, disegni quotati in 2D, modelli in 3D, schemi elettrici
dell'apparecchio, file macro EPLAN
● manuali, curve caratteristiche, istruzioni operative, certificati
● dati di base del prodotto
"mySupport" - Dati CAx è disponibile in Internet
(http://support.industry.siemens.com/my/ww/it/CAxOnline).
Esempi applicativi
Gli esempi applicativi forniscono diversi strumenti ed esempi utili nella soluzione dei
problemi di automazione. In questa sezione vengono illustrate soluzioni che prevedono
l'interazione di più componenti del sistema, senza soffermarsi sui singoli prodotti.
Gli esempi applicativi sono disponibili in Internet
(https://support.industry.siemens.com/sc/ww/it/sc/2054).
TIA Selection Tool
Il TIA Selection Tool consente di selezionare, configurare e ordinare dispositivi per la
Totally Integrated Automation (TIA).
Costituisce la versione successiva del SIMATIC Selection Tool e riunisce in un solo
strumento i configuratori già noti per la tecnica di automazione.
Con il TIA Selection Tool è possibile creare una lista di ordinazione completa tra i prodotti
selezionati o configurati.
Il TIA Selection Tool è disponibile in Internet
(http://w3.siemens.com/mcms/topics/en/simatic/tia-selection-tool).
CM PtP - Configurazioni di accoppiamenti punto a punto
10
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Guida alla documentazione
SIMATIC Automation Tool
Il SIMATIC Automation Tool consente di eseguire, indipendentemente dal TIA Portal,
operazioni di messa in servizio e di service simultaneamente su diverse stazioni
SIMATIC S7.
Il SIMATIC Automation Tool offre diverse funzioni:
● Scansione di una rete di impianto PROFINET/Ethernet e identificazione di tutte le CPU
collegate
● Assegnazione indirizzi (IP, sottorete, gateway) e nome della stazione (PROFINET
Device) ad una CPU
● Inoltro all’unità della data e dell'ora PG/PC convertita secondo UTC
● Download del programma sulla CPU
● Commutazione dei modi di funzionamento RUN/STOP
● Localizzazione della CPU tramite segnalazione ad intermittenza dei LED
● Lettura dell’informazione di errore della CPU
● Lettura del buffer di diagnostica della CPU
● Reset alle impostazioni di fabbrica
● Aggiornamento del firmware della CPU e dei moduli collegati
Il SIMATIC Automation Tool è disponibile in Internet
(https://support.industry.siemens.com/cs/ww/it/view/98161300).
PRONETA
SIEMENS PRONETA (analisi di rete PROFINET) consente di analizzare la rete dell’impianto
nell’ambito della messa in servizio. PRONETA comprende due funzioni principali:
● La panoramica della topologia scansiona automaticamente PROFINET e visualizza tutti i
componenti collegati.
● L’IO Check è un rapido test del cablaggio e della configurazione modulare di un impianto.
SIEMENS PRONETA è disponibile in Internet
(https://support.industry.siemens.com/cs/ww/it/view/67460624).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
11
2
Introduzione
2.1
Panoramica dei moduli di comunicazione
I PLC comprendono diversi componenti tra cui i moduli di comunicazione. Un modo semplice
per realizzare lo scambio dei dati è costituito dalla comunicazione seriale attraverso i
collegamenti punto a punto.
Impostando i parametri di comunicazione sul livello più basso del modello a strati ISO
(vedere il capitolo Sicurezza di trasmissione (Pagina 19)) è possibile adeguarsi ai partner di
comunicazione più diversi.
La comunicazione tramite accoppiamento punto a punto nell'S7-1500, ET 200MP e
ET 200SP avviene esclusivamente attraverso moduli di comunicazione (CM) dotati di
interfacce seriali.
SIMATIC S7 fornisce una serie di moduli che mettono a disposizione l'interfaccia fisica e i
meccanismi di protocollo fondamentali per tale scopo.
● RS232: interfaccia che coordina la comunicazione tra i partner attraverso segnali
addizionali.
● RS422/RS485: interfaccia che, utilizzando delle tensioni differenziali consente di
impiegare come metodo di trasmissione linee più lunghe e che, grazie alle caratteristiche
fisiche del bus (RS485), consente anche strutture con più di due nodi.
Per trasmettere i dati dalla CPU ai diversi moduli si impiegano delle istruzioni che si
occupano di coordinare la CPU e il CM (Communication module), segnalando al programma
utente se la trasmissione è corretta o se vengono ricevuti nuovi dati (nei sistemi senza
CPU SIMATIC queste istruzioni devono essere programmate dall'utente).
Il presente manuale di guida alle funzioni descrive la funzione e l'utilizzo dei moduli di
comunicazione PtP.
Panoramica dei componenti e dei numeri di ordinazione
Panoramica in forma di tabella dei moduli di comunicazione e del loro utilizzo
Modulo di comunicazione
CM PtP RS232 BA
S7-1500
ET 200MP
ET 200SP
Numero articolo
X
X
-
6ES7540-1AD00-0AA0
CM PtP RS422/485 BA
X
X
-
6ES7540-1AB00-0AA0
CM PtP RS232 HF
X
X
-
6ES7541-1AD00-0AB0
CM PtP RS422/485 HF
X
X
-
6ES7541-1AB00-0AB0
CM PtP (ET 200SP)
-
-
X
6ES7137-6AA00-0BA0
1)
2)
1)
2)
BA = Basic
HF = High Feature
CM PtP - Configurazioni di accoppiamenti punto a punto
12
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Introduzione
2.1 Panoramica dei moduli di comunicazione
Panoramica dei componenti e delle interfacce
Panoramica in forma di tabella dei moduli di comunicazione e delle relative funzioni.
Modulo di comunicazione Interfaccia
Protocolli
Tecnica di connessione
Freeport
3964(R)
Modbus
Master
Modbus
Slave
USSMaster
Sub D
a 9 poli
Sub D
a 15 poli
CM PtP RS232 BA
RS232
X
X
-
-
X
X
-
CM PtP RS422/485 BA
RS422
X
X
-
-
X
-
X
RS485
X
-
-
-
X
-
X
CM PtP RS232 HF
RS232
X
X
X
X
X
X
-
CM PtP RS422/485 HF
RS422
X
X
X
X
X
-
X
RS485
X
-
X
X
X
-
X
RS232
X
X
X
X
X
RS422 2)
X
X
X
X
X
RS485
X
-
X
X
X
CM PtP (ET 200SP)
ET 200SP BaseUnit 1)
1) BaseUnit con morsettiera al posto del sub D; l'assegnazione dipende dalle caratteristiche della trasmissione
2) Nel funzionamento RS422 il modulo di comunicazione CM PtP può essere impiegato per l'accoppiamento a più punti:
Panoramica dei componenti e delle velocità di trasmissione
I moduli di comunicazioni sono in grado di trasmettere e ricevere i dati con diverse velocità di
trasmissione. La seguente tabella specifica le velocità di trasmissione assegnate ai diversi
moduli di comunicazione.
Modulo di comunicazione
Velocità di trasmissione in bit/s
300
600
1200
2400
CM PtP RS232 BA
X
X
X
X
CM PtP RS422/485 BA
X
X
X
CM PtP RS232 HF
X
X
X
CM PtP RS422/485 HF
X
X
CM PtP (ET 200SP)
X
X
4800
9600
19200
38400
57600
76800
115200
X
X
X
-
-
-
X
X
X
X
-
-
-
-
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
-
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
13
Introduzione
2.1 Panoramica dei moduli di comunicazione
Panoramica dei componenti e delle dimensioni del buffer di ricezione
Ciascun modulo di comunicazione dispone di un buffer per la memorizzazione temporanea
dei telegrammi ricevuti. La seguente tabella riporta le dimensioni massime del telegramma e
le dimensioni della memoria assegnate ai singoli moduli di comunicazione.
Unità
Dimensione del buffer
di ricezione
kByte
Lunghezza max. del
telegramma
kByte
Telegrammi
bufferizzabili
CM PtP RS232 BA
2
1
255
CM PtP RS422/485 BA
2
1
255
CM PtP RS232 HF
8
4
255
CM PtP RS422/485 HF
8
4
255
CM PtP (ET 200SP)
4
2
255
Segnali addizionali e controllo del flusso dei dati
● Controllo del flusso dati del software con XON/XOFF
Il controllo del flusso dei dati con XON/XOFF nel protocollo Freeport è possibile
attraverso le interfacceRS232 e RS422.
● Controllo del flusso dati dell'hardware con RTS/CTS
Il controllo del flusso dei dati con RTS/CTS nel protocollo Freeport è possibile attraverso
l'interfaccia RS232.
● Gestione automatica dei segnali addizionali
Con i protocolli Freeport, Modbus Master e Modbus Slave è possibile comandare i
segnali addizionali RS232 attraverso l'interfaccia RS232. (Disponibile solo se non è attivo
il controllo del flusso dei dati dell'hardware.)
Protocolli dei moduli di comunicazione
A seconda dei moduli di comunicazione impiegati è possibile creare un collegamento con
diversi protocolli:
● Freeport: Trasmissione di stringhe di caratteri ASCII senza formato definito per il
protocollo
● 3964(R): Comunicazione tra controllori programmabili (comunicazione master/master)
● Modbus RTU: Comunicazione tra controllori programmabili (comunicazione
master/slave). Il modulo di comunicazione può essere sia master che slave.
● USS: Comunicazione tra un controllore programmabile e un azionamento
(comunicazione master/master). La comunicazione è concepita appositamente per
rispondere ai requisiti della tecnica di azionamento. Il modulo di comunicazione può
essere solo un master.
CM PtP - Configurazioni di accoppiamenti punto a punto
14
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Introduzione
2.2 Panoramica delle fasi di elaborazione
2.2
Panoramica delle fasi di elaborazione
Accoppiamento punto a punto
Per lo scambio di dati tra due o più partner di comunicazione esistono diverse possibilità di
collegare i nodi in rete. L'accoppiamento punto a punto tra due partner di comunicazione
rappresenta il caso più semplice.
Il modulo di comunicazione (CM) costituisce l'interfaccia tra un controllore programmabile e
un partner di comunicazione. Con l'accoppiamento punto a punto con il modulo di
comunicazione la trasmissione dei dati è seriale.
Configurazione/parametrizzazione
La configurazione del modulo di comunicazione comprende la disposizione del modulo nella
configurazione del dispositivo di STEP 7 (TIA Portal) e le impostazioni dei parametri specifici
dei protocolli nella finestra delle proprietà del modulo (configurazione statica).
Programmazione
La programmazione comprende l'integrazione del modulo di comunicazione con la rispettiva
CPU attraverso il programma utente La programmazione del modulo di comunicazione viene
effettuata con STEP 7 (TIA Portal).
La comunicazione tra la CPU, il modulo di comunicazione e un partner della comunicazione
avviene tramite apposite istruzioni (Pagina 68). Per i sistemi di automazione S7-1500 e
S7-1200 sono disponibili una serie di istruzioni che consentono di avviare e comandare la
comunicazione nel programma utente e di influire sulla configurazione durante l'esecuzione
(configurazione dinamica).
Per maggiori informazioni, consultare Panoramica delle istruzioni (Pagina 16) e la Guida in
linea di STEP 7 (TIA Portal).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
15
Introduzione
2.3 Panoramica delle istruzioni
2.3
Panoramica delle istruzioni
Nota
Limiti di configurazione della CPU
Le istruzioni punto a punto comunicano con i moduli di comunicazione attraverso la lettura o
la scrittura di set di dati.
Per l'uso delle istruzioni perciò è necessario attenersi ai limiti di configurazione della CPU in
uso per la lettura e la scrittura dei set di dati.
Se diverse istruzioni devono leggere o scrivere contemporaneamente dei set di dati su una
CPU, il programma utente deve eventualmente richiamarle consecutivamente.
Panoramica delle istruzioni
Nel modulo di comunicazione vengono convertiti i protocolli di trasmissione. Attraverso il
protocollo l'interfaccia del modulo di comunicazione viene adeguata a quella del partner.
CPU, modulo di comunicazione e partner della comunicazione comunicano tra loro
attraverso istruzioni speciali e i protocolli che supportano i vari moduli di comunicazione.
Le istruzioni costituiscono l'interfaccia software tra la CPU e il modulo di comunicazione.
Esse devono essere richiamare ciclicamente dal programma utente. La trasmissione dei dati
impiega diversi cicli.
Le istruzioni fanno parte di STEP 7 (TIA Portal). Le istruzioni sono contenute nella task card
"Istruzioni" alla voce Comunicazione > Processore di comunicazione. e valgono per tutti i
moduli di comunicazione citati, purché questi supportino la funzione richiesta.
Tabella 2- 1
Istruzioni per PtP
Istruzione
Significato
Send_P2P (Pagina 87) L'istruzione Send_P2P consente l'invio di dati a un partner di comunicazione.
Receive_P2P
(Pagina 91)
L'istruzione Receive_P2Pconsente di ricevere dati da un partner di comunicazione.
Receive_Reset
(Pagina 93)
L'istruzione Receive_Reset consente di cancellare il buffer di ricezione del
modulo di comunicazione.
Port_Config
(Pagina 74)
L'istruzione Port_Config consente di definire parametri di interfaccia dinamici
fondamentali.
Send_Config
(Pagina 77)
L'istruzione Send_Config (parametrizzazione della trasmissione) consente di
definire parametri di trasmissione seriali dinamici di una porta.
Receive_Config
(Pagina 79)
L'istruzione Receive_Config (parametrizzazione della ricezione) consente di
definire parametri di ricezione seriali dinamici di una porta.
P3964_Config
(Pagina 85)
L'istruzione P3964_Config (progettazione del protocollo) consente di progettare i parametri dinamici della procedura 3964(R).
Signal_Get (Pagina 94)
L'istruzione Signal_Get consente di leggere i segnali addizionali RS232.
Signal_Set (Pagina 96) L'istruzione Signal_Set consente di impostare i segnali addizionali RS232.
CM PtP - Configurazioni di accoppiamenti punto a punto
16
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Introduzione
2.3 Panoramica delle istruzioni
Istruzione
Significato
Get_Features
(Pagina 98)
L'istruzione Get_Features consente di leggere le funzioni avanzate supportate dal modulo di comunicazione.
Set_Features
(Pagina 99)
L'istruzione Set_Features consente di attivare le funzioni avanzate supportate dal modulo di comunicazione.
Tabella 2- 2
Istruzioni per Modbus
Istruzione
Significato
Modbus_Master
(Pagina 124)
L'istruzione Modbus_Master consente di comunicare attraverso la porta PtP
in qualità di master Modbus.
Modbus_Slave
(Pagina 131)
L'istruzione Modbus_Slave consente di comunicare attraverso la porta PtP
in qualità di slave Modbus.
Modbus_Comm_Load
(Pagina 119)
L'istruzione Modbus_Comm_Loadconsente di configurare la porta del modulo di comunicazione per Modbus RTU.
Tabella 2- 3
Istruzioni per USS
Istruzione
Significato
USS_Port_Scan
(Pagina 165)
L'istruzione USS_Port_Scan consente la comunicazione attraverso la rete
USS.
USS_Drive_Control
(Pagina 168)
L'istruzione USS_Drive_Control consente di scambiare dati con l'azionamento.
USS_Read_Param
(Pagina 173)
L'istruzione USS_Read_Param consente di leggere parametri dall'azionamento.
USS_Write_Param
(Pagina 175)
L'istruzione USS_Write_Param consente di modificare parametri nell'azionamento.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
17
Principi di base della comunicazione seriale
3.1
3
Trasmissione di dati seriale
Con la trasmissione seriale i singoli bit di un carattere dell'informazione da trasmettere
vengono trasmessi l'uno dopo l'altro in un ordine fisso.
Modi di funzionamento della comunicazione bidirezionale
Per la comunicazione bidirezionale il modulo di comunicazione supporta due diversi modi di
funzionamento:
● Funzionamento semiduplex
I dati vengono scambiati tra una o più controparti di comunicazione alternativamente in
ambedue le direzioni. "Funzionamento semiduplex" significa che in un dato momento un
partner della comunicazione trasmette e l'altro riceve. La stessa linea viene usata
alternativamente per la trasmissione e la ricezione.
● Funzionamento duplex
I dati vengono scambiati tra una o più controparti di comunicazione
contemporaneamente, perciò si può sia trasmettere che ricevere nello stesso momento.
In questo caso sono necessarie una linea per la trasmissione e una per la ricezione.
Trasmissione di dati asincrona
Nei moduli di comunicazione la trasmissione seriale dei dati è asincrona. Il cosiddetto
sincronismo del reticolo temporale (un reticolo fisso per la trasmissione di una sequenza di
caratteri fissa) viene mantenuto solo durante la trasmissione di un carattere. Ogni carattere
da trasmettere è preceduto da un impulso di sincronizzazione, detto anche bit di start. La
lunghezza della trasmissione del bit di start stabilisce il ciclo. La fine del trasferimento del
carattere è segnata da uno o due bit di stop.
Convenzioni
Per la trasmissione seriale, oltre al bit di start e al bit di stop, sono necessari altri accordi tra i
partner di comunicazione. Tra queste:
● Velocità di trasmissione
● Criteri di inizio e di fine di un telegramma (ad es. tempo di ritardo del carattere)
● Parità
● Numero dei bit di dati (7 o 8 bit/carattere)
● Numero dei bit di stop (1 o 2)
CM PtP - Configurazioni di accoppiamenti punto a punto
18
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.2 Sicurezza di trasmissione
3.2
Sicurezza di trasmissione
La sicurezza di trasmissione gioca un ruolo importante nella trasmissione dati e nella scelta
del modo di trasmissione. In generale vale la regola secondo la quale più livelli del modello
di riferimento vengono attraversati, maggiore sarà la sicurezza di trasmissione.
Posizionamento dei protocolli presenti
Il posizionamento dei protocolli del modulo di comunicazione nel modello di riferimento è
riportato nella figura seguente:
Figura 3-1
Posizionamento dei protocolli del modulo di comunicazione nel modello di riferimento
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
19
Principi di base della comunicazione seriale
3.2 Sicurezza di trasmissione
Sicurezza di trasmissione con Freeport
Sicurezza di trasmissione con il protocollo Freeport:
● Poiché nel caso di una trasmissione di dati con il protocollo Freeport, oltre all'uso del bit
di parità, non vengono usati altri metodi per salvare i dati, il Freeport risulta essere molto
efficiente per quanto riguarda la velocità, ma non assicura i dati. Parametrizzando le
condizioni iniziali e finali del telegramma è già possibile raggiungere una certa sicurezza
dei dati.
● Con l'uso del bit di parità ci si assicura contro la commutazione di un bit nel carattere da
trasmettere. Se due o più bit di uno stesso carattere passano da 0 a 1 o viceversa non è
più possibile garantire che l'errore venga riconosciuto.
● Se la sicurezza dei dati deve essere aumentata, ciò può essere realizzato ad es. tramite
l'uso di una somma di controllo, con l'indicazione della lunghezza di un telegramma o
mediante condizioni finali parametrizzabili. Tali misure devono essere prese dall'utente.
● Un ulteriore aumento della sicurezza dei dati può essere raggiunto tramite l'uso di
telegrammi di conferma dei telegrammi di trasmissione o ricezione. Ciò è realizzato in
protocolli di alta qualità per la comunicazione dati (modello di riferimento ISO a 7 livelli).
Sicurezza di trasmissione con 3964(R)
Il bit di parità migliora la sicurezza dei dati arrotondando il numero dei bit di dati trasmessi a
una cifra pari o dispari a seconda della parametrizzazione.
Utilizzando il bit di parità si evita che il bit passi da 0 a 1 o viceversa nel carattere da
trasmettere. Se due o più bit di uno stesso carattere passano da 0 a 1 o viceversa non è
garantito che gli errori vengano riconosciuti.
Se per la parità si imposta l'opzione "Nessuna" non viene trasmesso alcun bit di parità. Ciò
riduce la sicurezza di trasmissione.
A seconda che la trasmissione avvenga con o senza carattere di controllo del blocco si
differenzia tra:
● Trasmissione dati senza carattere di controllo del blocco: 3964
La sicurezza di trasmissione viene raggiunta tramite una struttura definita, disattivazione
e ripetizioni del telegramma.
● Trasmissione dati con carattere di controllo del blocco: 3964R
L'elevata sicurezza di trasmissione viene raggiunta tramite una struttura definita e la
disattivazione del telegramma, ripetizioni del telegramma e con l'uso contemporaneo di
un carattere di controllo del blocco (BCC).
Nel presente manuale, in presenza di avvertenze e descrizioni che si riferiscono ad entrambi
i modi di trasmissione dati, si ricorre alla denominazione 3964(R).
CM PtP - Configurazioni di accoppiamenti punto a punto
20
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.2 Sicurezza di trasmissione
Sicurezza di trasmissione con Modbus e USS
Il bit di parità migliora la sicurezza della trasmissione arrotondando il numero dei bit di dati
trasmessi a una cifra pari o dispari a seconda della parametrizzazione.
Utilizzando il bit di parità si evita che il bit passi da 0 a 1 o viceversa nel carattere da
trasmettere. Se due o più bit di uno stesso carattere passano da 0 a 1 o viceversa non è
garantito che l'errore venga riconosciuto.
Se per la parità si imposta l'opzione "Nessuna" non viene trasmesso alcun bit di parità. Ciò
riduce la sicurezza di trasmissione.
Nel Modbus viene inoltre utilizzato il controllo ciclico di ridondanza (CRC: cyclic redundancy
check). Prima della trasmissione dei dati, per ogni blocco di dati utili viene aggiunta
un'ulteriore ridondanza sotto forma di valore CRC. Si tratta di un valore di controllo calcolato
secondo un metodo particolare, che consente di rilevare gli eventuali errori durante la
trasmissione.
Nell'USS viene utilizzato anche un carattere di controllo del blocco BCC (block check
character). Durante la ricezione il carattere di controllo del blocco viene formato e
confrontato con il valore BCC ricevuto dopo la lettura del telegramma completo. Se i caratteri
non corrispondono il telegramma non viene valutato (se un carattere viene trasmesso in
modo errato l'errore viene rilevato con sicurezza. Se viene trasmesso in modo errato un
numero pari di caratteri, l'errore non può essere rilevato con sicurezza).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
21
Principi di base della comunicazione seriale
3.3 Funzionamento RS232
3.3
Funzionamento RS232
I seguenti moduli di comunicazione supportano il funzionamento RS232:
● CM PtP RS232 BA
● CM PtP RS232 HF
● CM PtP (ET 200SP)
Nel funzionamento RS232 i dati vengono trasmessi attraverso due linee. È disponibile una
linea per la direzione di trasmissione e una per quella di ricezione. È possibile inviare e
ricevere contemporaneamente (fullduplex).
Segnali RS232
Se si utilizza nell'unità di comunicazione il modulo di interfaccia RS232, oltre ai segnali TXD
(l'interfaccia trasmette; Transmitted Data), RXD (l'interfaccia riceve; Received Data) e GND
(Ground; con separazione di potenziale) sono disponibili i seguenti segnali addizionali
RS232:
DCD
(Ingresso)
Data Carrier detect;
Segnale portante in caso di collegamento di un modem. Il partner della
comunicazione segnala di aver rilevato dati in ingresso.
DTR
(Uscita)
Data terminal ready;
DTR su "ON": modulo di comunicazione attivato, operativo
DTR su "OFF": modulo di comunicazione non attivato, non operativo
DSR
(Ingresso)
Data set ready;
DSR su "ON": il partner di comunicazione segnala di essere pronto al
funzionamento
DSR su "OFF": partner di comunicazione non attivato, non operativo
RTS
(Uscita)
Request to send;
RTS su "ON": modulo di comunicazione pronto alla trasmissione; segnala al partner che sono pronti dati da inviare
RTS su "OFF": modulo di comunicazione non ancora pronto alla trasmissione
CTS
(Ingresso)
Clear to send;
Il partner di comunicazione può ricevere dati dal modulo di comunicazione (risposta su RTS = ON del CM)
CTS su "ON": segnala al partner di comunicazione la disponibilità a
ricevere dati
CTS su "OFF": segnala al partner della comunicazione "non pronto alla
ricezione"
RI
(Ingresso)
Ring Indicator;
Chiamata in entrata in caso di collegamento di un modem
CM PtP - Configurazioni di accoppiamenti punto a punto
22
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.3 Funzionamento RS232
Dopo l'accensione del modulo di comunicazione i segnali di uscita si trovano nello stato OFF
(inattivi).
L'utilizzo dei segnali di comando DTR/DSR e RTS/CTS si può parametrizzare dall'interfaccia
utente del modulo di comunicazione.
Nei seguenti casi non è possibile influenzare i segnali RS232:
● controllo del flusso dati "Hardware RTS sempre attivato" parametrizzato
(corrisponde alla gestione automatica dei segnali addizionali)
● controllo del flusso dati "Hardware RTS sempre ON" parametrizzato
(corrisponde al controllo del flusso hardware con RTS/CTS)
● controllo del flusso dati "Hardware RTS sempre ON, ignora DTR/DSR"
Vedere a questo proposito anche il capitolo Handshake (Pagina 26).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
23
Principi di base della comunicazione seriale
3.4 Funzionamento RS422
3.4
Funzionamento RS422
I seguenti moduli di comunicazione supportano il funzionamento RS422:
● CM PtP RS422/485 BA
● CM PtP RS422/485 HF
● CM PtP (ET 200SP)
Nel funzionamento RS422 la trasmissione dei dati avviene tramite due coppie di linee
(funzionamento a quattro fili). È disponibile una coppia di linee per la direzione di
trasmissione e una per quella di ricezione. È possibile inviare e ricevere
contemporaneamente (fullduplex).
Ogni partner di comunicazione deve essere in grado di utilizzare un dispositivo di
trasmissione/ricezione simultaneamente.
I dati possono essere scambiati contemporaneamente tra uno o più partner di
comunicazione. Nel funzionamento a più punti RS422 può trasmettere sempre solo uno
slave alla volta.
Modi di funzionamento dell'interfaccia
Nella tabella seguente sono riepilogati i modi di funzionamento dell'interfaccia, dei moduli di
comunicazione e dei vari protocolli.
Nel funzionamento RS422 il modulo di comunicazione può essere impiegato nelle seguenti
topologie:
● Accoppiamento tra due nodi: Accoppiamento punto a punto
● Accoppiamento tra più nodi: Accoppiamento a più punti
(disponibile solo per CM PtP (ET 200SP))
Modo di funzionamento
Descrizione
Fullduplex (RS 422) funzionamento a quattro fili In questo modo di funzionamento i due nodi hanno gli stessi diritti.
(Punto a punto)
Fullduplex (RS422) funzionamento a quattro fili
(Master multipoint)
Il modulo di comunicazione può essere utilizzato come master multipoint.
Fullduplex (RS 422) funzionamento a quattro fili Il modulo di comunicazione può essere utilizzato come slave multipoint.
(Slave multipoint)
Con la topologia master/slave multipoint nel funzionamento RS422 vale:
● Il trasmittente del master viene attivato unitamente ai riceventi di tutti gli slave.
● I trasmittenti degli slave vengono attivati unitamente al ricevente del master.
● La preimpostazione avviene nel ricevente del master e nel ricevente di uno slave. Tutti gli
altri slave funzionano senza preimpostazione.
CM PtP - Configurazioni di accoppiamenti punto a punto
24
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.5 Funzionamento RS485
3.5
Funzionamento RS485
I seguenti moduli di comunicazione supportano il funzionamento RS485:
● CM PtP RS422/485 BA
● CM PtP RS422/485 HF
● CM PtP (ET 200SP)
Nel funzionamento RS485 la trasmissione dei dati avviene tramite una coppia di linee
(funzionamento a due fili). La coppia di linee è disponibile, in modo alternato, per la direzione
di trasmissione e per la direzione di ricezione. È possibile inviare o ricevere (semiduplex).
Dopo l'invio di dati avviene automaticamente la commutazione alla ricezione
(predisposizione alla ricezione). Se arriva un nuovo ordine di trasmissione si commuta di
nuovo alla trasmissione.
Funzionamento RS485
Nella tabella seguente sono riepilogati i modi di funzionamento dell'interfaccia, dei moduli di
comunicazione e dei vari protocolli.
Modo di funzionamento
Descrizione
Semiduplex (RS485) funzionamento a 2 fili
Modo di funzionamento per accoppiamento punto a punto oppure accoppiamento a più punti (multipoint) in funzionamento a due fili. Il modulo di
comunicazione può essere sia master che slave.
Se si impiega il Freeport nel funzionamento RS485 (semiduplex, funzionamento a due fili), è
necessario prestare attenzione che nel programma utente sia sempre solo un nodo a
trasmettere. Trasmettendo contemporaneamente, i telegrammi vengono falsati.
Nel Modbus viene garantito automaticamente che possa trasmettere un solo nodo per volta.
Tempi di commutazione per il modulo di comunicazione RS485 in funzionamento semiduplex
Il tempo massimo di commutazione fra trasmissione e ricezione è di 0,1 ms.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
25
Principi di base della comunicazione seriale
3.6 Handshake
3.6
Handshake
Introduzione
I metodi di handshake controllano il flusso di dati tra due partner di comunicazione. Con
l'utilizzo di metodi di handshake si evita la perdita di dati durante la trasmissione, nel caso in
cui due apparecchiature operino a velocità diverse.
In linea di principio si differenzia tra i seguenti metodi:
Tabella 3- 1
Panoramica dei metodi e delle interfacce
Metodo
RS232
RS422
RS485
Controllo del flusso dati del software XON/XOFF
X
X
-
Controllo del flusso dati dell'hardware RTS/CTS
X
-
-
Gestione automatica dei segnali addizionali
X
-
-
Controllo del flusso dati del software
La realizzazione del controllo del flusso dati del software nel modulo di comunicazione viene
eseguita nel modo seguente:
● XON/XOFF
– Non appena il modulo di comunicazione è stato portato mediante parametrizzazione
nel modo di funzionamento "XON/XOFF", esso invia il carattere XON consentendo al
partner di comunicazione di avviare la trasmissione.
– Al raggiungimento del numero massimo di telegrammi parametrizzato o di 16 caratteri
prima dell'overflow del buffer di ricezione, il modulo di comunicazione invia il carattere
XOFF chiedendo così al partner di comunicazione di interrompere la trasmissione. Se
il partner di comunicazione continua comunque la trasmissione, al momento
dell'overflow del buffer viene generato un messaggio di errore. I dati ricevuti dell'ultimo
telegramma vengono respinti.
– Dopo il prelievo di un telegramma da parte della CPU, appena il buffer è di nuovo
pronto per la ricezione, il modulo di comunicazione invia il carattere XON.
– Se nel corso di una trasmissione il modulo di comunicazione riceve il carattere XOFF,
interrompe la trasmissione fino a quando il partner di comunicazione riceve
nuovamente un carattere XON. Se entro un determinato arco di tempo
parametrizzabile non si riceve il carattere XON, la trasmissione viene interrotta e viene
generato un relativo messaggio di errore.
Nota
I caratteri per XON e XOFF possono essere parametrizzati (qualsiasi carattere ASCII).
Per la parametrizzazione del controllo del flusso dati del software XON/XOFF, i dati
utili non devono contenere nessuno dei caratteri XON o XOFF parametrizzati.
CM PtP - Configurazioni di accoppiamenti punto a punto
26
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.6 Handshake
Controllo del flusso dati dell'hardware
Nota
Nella parametrizzazione "Hardware RTS sempre ON, ignora DTR/DSR" non è necessario
cablare i segnali DTR/DSR.
Nella parametrizzazione "Hardware RTS sempre ON" è assolutamente necessario effettuare
un cablaggio completo dei segnali di interfaccia usati. Assicurarsi che l'RTS locale (out) sia
collegato con il CTS (in) del partner di comunicazione e il CTS locale con l'RTS del partner di
comunicazione. Allo stesso modo il DTR locale deve essere collegato al DSR del partner di
comunicazione e il DSR locale con il DTR del partner di comunicazione.
Figura 3-2
Cablaggio dei segnali di interfaccia
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
27
Principi di base della comunicazione seriale
3.6 Handshake
● Hardware RTS sempre ON, ignora DTR/DSR
– Non appena il modulo di comunicazione è stato portato tramite parametrizzazione in
un modo di funzionamento con "Hardware RTS sempre ON", esso segnala al partner
di comunicazione la sua operatività con RTS = ON.
– Al raggiungimento del numero massimo di telegrammi parametrizzato o di 16 caratteri
prima dell'overflow del buffer di ricezione, RTS viene impostato su OFF.
Se il partner di comunicazione continua comunque la trasmissione, in caso di overflow
del buffer di ricezione viene generato un messaggio di errore. I dati ricevuti dell'ultimo
telegramma vengono respinti.
– Dopo il prelievo di un telegramma da parte della CPU, appena il buffer è di nuovo
pronto per la ricezione, RTS viene nuovamente impostato su ON.
– Se nel corso della trasmissione CTS viene commutato su OFF, il modulo di
comunicazione interrompe la trasmissione fino a quando CTS viene nuovamente
impostato su ON. Se entro un arco di tempo parametrizzato CTS non viene
reimpostato su ON, la trasmissione viene interrotta e viene emesso un relativo
messaggio di errore.
● Hardware RTS sempre ON
Il modo di funzionamento "Hardware RTS sempre ON" corrisponde al modo di
funzionamento "Hardware RTS sempre ON, ignora DTR/DSR", tuttavia occorre cablare in
più DTR e DSR.
– Non appena il modulo di comunicazione è stato portato tramite parametrizzazione in
un modo di funzionamento con "Hardware RTS sempre ON", esso segnala al partner
di comunicazione la sua operatività impostando DTR = ON e RTS = ON.
– Al raggiungimento del numero massimo di telegrammi parametrizzato o di 16 caratteri
prima dell'overflow del buffer di ricezione, RTS viene impostato su OFF.
Se il partner di comunicazione continua comunque la trasmissione, in caso di overflow
del buffer di ricezione viene generato un messaggio di errore. I dati ricevuti dell'ultimo
telegramma vengono respinti.
– Dopo il prelievo di un telegramma da parte della CPU, appena il buffer è di nuovo
pronto per la ricezione, RTS viene nuovamente impostato su ON.
– Se nel corso della trasmissione CTS viene commutato su OFF, il modulo di
comunicazione interrompe la trasmissione fino a quando CTS viene nuovamente
impostato su ON. Se entro un arco di tempo parametrizzato CTS non viene
reimpostato su ON, la trasmissione viene interrotta e viene emesso un relativo
messaggio di errore.
– Se si commuta DSR = ON in OFF, un ordine di trasmissione in corso viene interrotto
con un messaggio di errore.
CM PtP - Configurazioni di accoppiamenti punto a punto
28
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Principi di base della comunicazione seriale
3.6 Handshake
Gestione automatica dei segnali addizionali
● Hardware RTS sempre attivato
La realizzazione di "Hardware RTS sempre attivato" nel modulo di comunicazione viene
eseguita nel modo seguente:
– Non appena il modulo di comunicazione viene portato tramite parametrizzazione nel
modo di funzionamento con "Hardware RTS sempre attivato", esso imposta le linee
RTS su OFF e DTR su ON (modulo di comunicazione operativo).
L'invio di telegrammi è possibile solo dopo che la linea DSR è stata posta su ON.
Finché DSR rimane su OFF non vengono inviati dati attraverso l'interfaccia RS232. Un
ordine di trasmissione viene interrotto con il relativo messaggio di errore.
– Se si è in presenza di un ordine di trasmissione, RTS viene posto su ON e viene
avviato il ritardo RTS ON parametrizzato. Decorso questo tempo si verifica se il
partner di comunicazione ha impostato CTS su ON. In caso affermativo i dati vengono
inviati attraverso l'interfaccia RS232.
– Se entro il ritardo RTS ON la linea CTS non viene posta su ON, o se durante la
trasmissione si ha un passaggio di CTS su OFF, l'ordine di trasmissione viene
interrotto e si genera un opportuno messaggio errore.
– Dopo l'invio dei dati, la linea RTS, dopo la scadenza del ritardo RTS OFF
parametrizzato, viene posta a OFF. Non si ha un'attesa del passaggio di CTS su OFF.
– La ricezione di dati tramite l'interfaccia RS232 è sempre possibile. Se il buffer di
ricezione del modulo di comunicazione rischia un overflow, non si ha alcuna reazione.
– Se si commuta DSR = ON in OFF, un ordine di trasmissione in corso viene interrotto
con un messaggio di errore.
Nota
Il "Ritardo RTS OFF" va dimensionato in modo che il partner di comunicazione possa
portarsi in attesa di ricezione prima che il tempo trascorra.
Il "Ritardo RTS OFF" va impostato in modo che il partner di comunicazione sia in
grado, prima che RTS e quindi la volontà di trasmissione sia disattivata, di ricevere gli
ultimi caratteri del telegramma in modo completo.
Nota
Se si parametrizza un comando automatico dei segnali RS232 non è possibile
comandare RTS e DTR utilizzando l'istruzione corrispondente.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
29
Principi di base della comunicazione seriale
3.6 Handshake
Diagramma dei tempi
La figura seguente mostra lo svolgimento temporale di un ordine di trasmissione nel caso sia
stato parametrizzato il controllo del flusso dati "Hardware RTS sempre attivato":
Figura 3-3
Diagramma temporale con hardware RTS sempre attivo
Ulteriori informazioni
Nota
Con le seguenti impostazioni il comando di DTR/DSR o RTS/CTS viene acquisito dal
modulo di comunicazione:
• Hardware RTS sempre ON, ignora DTR/DSR
• Hardware RTS sempre ON
• Hardware RTS sempre attivato
CM PtP - Configurazioni di accoppiamenti punto a punto
30
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.1
4
Configurazione/parametrizzazione di un modulo di comunicazione
I prossimi capitoli illustrano i seguenti protocolli e parametri:
● Comunicazione tramite Freeport (Pagina 32)
● Comunicazione tramite 3964(R) (Pagina 41)
● Comunicazione tramite Modbus RTU (Pagina 47)
● Comunicazione tramite USS (Pagina 55)
Queste informazioni sono indispensabili per poter parametrizzare e successivamente
programmare la comunicazione del protocollo utilizzato.
La configurazione e la parametrizzazione vengono effettuate nella vista dispositivi di STEP 7
(TIA Portal) e nella finestra delle proprietà del modulo di comunicazione. Alcune
configurazioni possono essere modificate con le corrispondenti istruzioni "Config"
(Port_Config, Send_Config, Receive_Config, P3964_Config) anche durante l'esecuzione.
Procedura di configurazione della comunicazione PtP
La procedura è indipendente dal modulo di comunicazione utilizzato.
1. Nella vista dispositivi dell'editor hardware di STEP 7 (TIA Portal) definire una
configurazione per l'S7-1500 con CPU e modulo di comunicazione.
2. Nell'area "Generale", scheda "Proprietà" eseguire la parametrizzazione dell'interfaccia del
modulo di comunicazione (protocollo, parametri del protocollo, indirizzi).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
31
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
4.2
Comunicazione tramite Freeport
4.2.1
Procedimento per la configurazione di un collegamento seriale con Freeport
Presupposti
● L'hardware è stato configurato ed è stato stabilito un collegamento elettrico con il partner
di accoppiamento.
● Il progetto è stato creato in STEP 7 (TIA Portal) e la CPU è stata inserita nella
configurazione hardware.
Procedimento - Configurazione hardware
1. Inserire il modulo di comunicazione CM PtP nella configurazione hardware.
2. Impostare i parametri di comunicazione in base al partner di accoppiamento:
Ad es. la velocità di trasmissione, il frame caratteri, l'inizio e la fine del telegramma
I parametri vengono trasmessi al modulo di comunicazione CM PtP ad ogni avvio della
CPU.
Procedimento - Programmazione
1. Definire la struttura di dati che conterrà i dati da trasmettere.
Invio dei dati
1. Inserire le istruzioni della biblioteca PtP Communication: Send_P2P per l'invio dei dati
2. Collegare i parametri di ingresso e di uscita dell'istruzione, ad es.:
– L'HWID delle variabili di sistema all'ingresso PORT
– La struttura con i dati da inviare all'ingresso BUFFER
Avvertenza: durante il funzionamento l'area dati specificata viene inviata ad ogni fronte di
salita nell'ingresso REQ. Il blocco deve essere richiamato finché DONE non indica che i
dati sono stati trasmessi all'unità.
Se si verifica un errore, ERROR viene impostato una volta e STATUS informa che i dati
non sono stati trasmessi.
CM PtP - Configurazioni di accoppiamenti punto a punto
32
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
Ricezione dei dati:
1. Inserire le istruzioni della biblioteca PtP Communication: Receive_P2P per la ricezione
dei dati
2. Collegare i parametri di ingresso e di uscita dell'istruzione, ad es.:
– L'HWID delle variabili di sistema all'ingresso PORT
– La struttura per la memorizzazione dei dati ricevuti all'ingresso BUFFER
Avvertenza: durante il funzionamento un livello high nell'uscita NDR indica che i dati sono
stati ricevuti e memorizzati nell'area dati specificata. Il blocco deve essere richiamato
finché NDR=TRUE. Quindi è possibile analizzare i dati ricevuti e richiamare nuovamente
RECEIVE_P2P.
Ulteriori opzioni
● Le istruzioni che terminano con _Config possono essere utilizzate in opzione per
modificare i parametri della configurazione hardware durante il funzionamento. Le
modifiche non vengono salvate nella configurazione hardware. Al successivo riavvio
vengono nuovamente sovrascritte.
● Per comandare i segnali addizionali RS232 nel caso in cui il comando automatico non
fosse utilizzabile si possono usare le istruzioni Signal_Set e Signal_Get.
4.2.2
Trasmissione dati con Freeport
Premessa
Freeport è un protocollo liberamente programmabile basato su telegrammi conosciuto anche
come protocollo ASCII.
Il protocollo Freeport gestisce la trasmissione dati in un accoppiamento punto a punto tra il
modulo di comunicazione e un partner di comunicazione. Il protocollo Freeport contiene il
livello fisico (livello 1).
Con il protocollo Freeport possono essere trasmessi e ricevuti messaggi con una struttura
qualsiasi (tutti i caratteri da 00H a FFH (con struttura carattere da 8 bit di dati) o da 00H a
7FH (con struttura carattere da 7 bit di dati).
Sia per la direzione di trasmissione che per quella di ricezione vanno parametrizzati i criteri
iniziali e finali di un telegramma. I criteri iniziali e finali di un telegramma possono essere
parametrizzati in modi diversi.
Per la comunicazione con il partner sono disponibili apposite istruzioni (vedere Panoramica
della programmazione PtP (Pagina 59)).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
33
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
4.2.3
Invio di dati con Freeport
Definizione delle impostazioni per l'invio
Per inviare un messaggio è necessario comunicare al partner l'inizio e la fine dello stesso.
Queste impostazioni possono essere definite nella configurazione hardware in modo
definitivo o modificate durante l'esecuzione con l'istruzione Send_CFG. Si possono scegliere
le seguenti opzioni o una loro combinazione:
● Invia Break prima dell'inizio del telegramma
È possibile specificare che all'inizio di ogni trasmissione di un messaggio venga inviato
anche un Break quando è trascorso il tempo di ritardo RTS ON.
La durata del segnale "Break" è indicata in bit time.
Se la sincronizzazione avviene tramite altri meccanismi, il rispetto della pausa di
trasmissione può essere disattivato.
● Invia Idle Line
Consente di definire che all'inizio di ogni trasmissione di un messaggio venga emesso
anche il segnale "Idle Line".
La durata del segnale "Idle Line" si indica in bit time.
Se la sincronizzazione avviene tramite altri meccanismi, il rispetto della pausa di
trasmissione può essere disattivato.
● Ritardo RTS ON
È possibile parametrizzare il tempo che deve trascorrere dopo la richiesta di trasmissione
RTS (Request to send) prima che inizi la trasmissione dei dati vera e propria (solo
RS232).
● Ritardo RTS OFF
È possibile parametrizzare il tempo che deve trascorrere a trasmissione completata prima
che venga disattivato il segnale RTS (solo RS232).
● Invia fino ai caratteri finali compresi
Consente di parametrizzare il numero dei caratteri finali (1 o 2) e il loro valore.
Vengono inviati i caratteri fino a quello/quelli finale/i, indipendentemente dalla lunghezza
del telegramma selezionato. Il carattere finale deve essere contenuto nei dati da
trasmettere. I dati vengono trasmessi solo fino al carattere finale incluso anche se è
indicata una lunghezza dei dati maggiore.
● Numero di caratteri aggiunti
Permette di specificare il numero di caratteri aggiunti. Vengono inviati dati fino alla
lunghezza parametrizzata. Il/i carattere/i finale/i viene/vengono aggiunto/i
automaticamente. A seconda del numero di caratteri finali vengono trasmessi al partner
da 1 a 5 caratteri in più di quanto indicato nell'istruzione.
Nota
Se si sceglie la combinazione "Invia Break prima dell'inizio del telegramma", "Invia Idle
Line" e "Ritardo RTS ON", le istruzioni vengono eseguite nella sequenza "Ritardo RTS
ON", "Invia Break prima dell'inizio del telegramma" e "Invia Idle Line".
CM PtP - Configurazioni di accoppiamenti punto a punto
34
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
4.2.4
Ricezione di dati con Freeport
Determinazione dell'inizio di un messaggio
Con la trasmissione dati tramite Freeport è possibile scegliere fra vari criteri iniziali. Il criterio
iniziale stabilisce il momento in cui un telegramma inizia. Una volta soddisfatto un criterio
che visualizza l'inizio del messaggio, inizia la ricerca dei criteri per la fine del messaggio nel
flusso dati. Scegliere qui le impostazioni che corrispondono alle proprietà del partner della
comunicazione che trasmette.
Per il riconoscimento dell'inizio di un messaggio si può procedere in due modi diversi:
● Inizia con un carattere qualsiasi
Qualsiasi carattere può definire l'inizio di un messaggio (preimpostazione).
Ciò significa che il primo carattere all'inizio di una comunicazione o dopo la fine
riconosciuta di un telegramma viene riconosciuto come primo carattere di un messaggio.
● Inizia con condizione speciale
L'inizio del messaggio viene riconosciuto sulla base delle seguenti condizioni definite.
– Dopo il riconoscimento di un Line Break
L'inizio del telegramma viene accettato solo se prima è stato ricevuto un Break, vale a
dire che il partner deve assolutamente inviare un Break prima dell'invio del
telegramma.
– Dopo il riconoscimento di un Idle Line
L'inizio del telegramma viene accettato solo se è trascorsa la durata di Idle Line
parametrizzata. Ciò presuppone una pausa minima tra 2 telegrammi.
– Dopo ricezione del carattere iniziale
L'inizio del telegramma viene riconosciuto se è stato riconosciuto il carattere iniziale
parametrizzato.
– Dopo il riconoscimento di una o più sequenze di inizio
L'inizio del telegramma viene riconosciuto se è stata riconosciuta la sequenza di
caratteri parametrizzata che comprende fino a 5 caratteri. Si possono parametrizzare
fino a 4 sequenze di inizio. Le sequenze di inizio che comprendono fino a 5 caratteri
possono contenere anche "don't care characters".
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
35
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
Esempio:
Tabella 4- 1
Condizione iniziale parametrizzata
Condizione inizia- 1. carattere
le
2. carattere
3. carattere
4. carattere
5. carattere
1
0x68
xx
xx
0x68
xx
2
0x10
0xaa
xx
xx
xx
3
0xdc
0xaa
xx
xx
xx
4
0xe5
xx
xx
xx
xx
:
È stato ricevuto il seguente messaggio: 68 10 aa 68 bb 10 aa 16
La valutazione dei criteri di inizio comincia dalla ricezione del 1° carattere 0x68.
Il 2° e il 3° carattere sono caratteri qualsiasi.
Con la ricezione del 4° carattere (secondo 0x68) la 1a condizione iniziale è soddisfatta e
inizia la successiva valutazione del messaggio.
Determinazione della fine di un messaggio
Con la trasmissione dati tramite protocollo Freeport è possibile scegliere fra vari criteri finali.
Il criterio finale stabilisce il momento in cui un telegramma è stato ricevuto completamente.
I criteri finali impostabili sono:
● Rileva la fine del messaggio mediante time out dello stesso
● Rileva la fine del messaggio mediante time out di risposta
● A scadenza del tempo di ritardo del carattere (preimpostazione)
● Dopo la ricezione di una lunghezza fissa del telegramma
● Dopo la ricezione di un numero massimo di caratteri
● Leggi lunghezza messaggio dal messaggio
● Dopo la ricezione di una sequenza di fine
Time out dei messaggi
Nella ricezione di dati, la fine del telegramma viene riconosciuta quando è trascorso il tempo
parametrizzato per la trasmissione di un telegramma. Il rilevamento dei tempi inizia con
l'applicazione del criterio iniziale.
Time out di risposta
Il tempo di risposta controlla il modo in cui il partner della comunicazione risponde. Se, al
termine della trasmissione, non viene rilevato un inizio di telegramma valido, la trasmissione
viene conclusa con un messaggio.
Il criterio finale vero e proprio deve essere parametrizzato separatamente.
CM PtP - Configurazioni di accoppiamenti punto a punto
36
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
Scadenza del tempo di ritardo del carattere
Nella ricezione di dati, la fine del telegramma viene riconosciuta quando viene superato il
tempo massimo impostato tra caratteri consecutivi (tempo di ritardo caratteri). Il valore viene
indicato in bit time.
In questo caso il tempo di ritardo caratteri deve essere impostato in modo che tra due
telegrammi consecutivi esso possa trascorrere con certezza. Esso però deve essere grande
abbastanza da permettere di non confondere erroneamente una pausa di trasmissione del
partner di comunicazione all'interno di un telegramma con la fine del telegramma stesso.
Lunghezza fissa del telegramma
Nella ricezione di dati, la fine del telegramma viene riconosciuta quando viene raggiunta la
lunghezza del telegramma parametrizzata.
Se il tempo di ritardo caratteri (se attivato) decorre prima che venga raggiunta la lunghezza
fissa del telegramma, compare un messaggio di errore e il telegramma viene respinto.
Se la lunghezza del telegramma dei caratteri ricevuti non è uguale a quella fissa
parametrizzata osservare quanto segue:
● Tutti i caratteri ricevuti dopo il raggiungimento della lunghezza fissa parametrizzata per il
telegramma vengono respinti fino al riconoscimento di un nuovo criterio iniziale.
● Se viene soddisfatto un altro criterio finale (attivo) prima che venga raggiunta la
lunghezza fissa parametrizzata per il telegramma, viene emesso un messaggio di errore
e il telegramma viene respinto.
Numero massimo di caratteri
Nella ricezione di dati, la fine del telegramma viene riconosciuta con la ricezione del numero
di caratteri parametrizzato.
Questa impostazione può essere combinata con le impostazioni per "Tempo di ritardo del
carattere". La ricezione del telegramma avviene correttamente anche se si verifica un'altra
condizione finale, a prescindere dal raggiungimento del numero massimo di caratteri.
Se la lunghezza del telegramma dei caratteri ricevuti non è uguale a quella massima
parametrizzata osservare quanto segue:
● Tutti i caratteri che vengono ricevuti dopo il raggiungimento del numero massimo di
caratteri parametrizzato vengono respinti fino al riconoscimento di un nuovo criterio
iniziale (ad es. "Idle Line").
● Se è soddisfatto un altro criterio finale (attivato) prima che venga raggiunto il numero
massimo di caratteri parametrizzato, questa "parte di telegramma" viene considerata
telegramma valido e si attende quindi un nuovo criterio iniziale. Tutti i caratteri ricevuti
prima dell'applicazione di un nuovo criterio iniziale vengono respinti.
Nota
Se non è attivato nessun altro criterio finale, i criteri "Lunghezza fissa del telegramma" e
"Numero massimo di caratteri" si comportano allo stesso modo.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
37
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
Lunghezza nel messaggio
Nella ricezione di dati, la fine del telegramma viene riconosciuta quando viene raggiunta la
lunghezza del telegramma inviata nel telegramma in ricezione.
Quali caratteri vanno utilizzati per l'analisi della lunghezza del messaggio viene definito con i
seguenti parametri:
● Offset del campo di lunghezza nel messaggio
Il valore determina la posizione nel messaggio del carattere che deve essere utilizzato
per la determinazione della lunghezza del messaggio.
A seconda della dimensione del buffer si possono impostare valori da 0 a 4095 caratteri.
● Dimensioni del campo di lunghezza
Il valore indica quanti caratteri a partire dalla prima posizione di analisi devono essere
utilizzati per la determinazione della lunghezza del messaggio.
Si possono impostare valori da 1, 2 e 4 caratteri.
● Numero dei caratteri che non rientrano nella lunghezza indicata
Numero dei caratteri che sono aggiunti al telegramma ma che non rientrano nella
lunghezza del telegramma. Il valore indica il numero dei byte alla fine del telegramma che
non devono essere considerati nell'analisi della lunghezza del messaggio.
Si possono impostare valori da 0 a 255 caratteri.
Esempio:
Parametrizzazioni per "Lunghezza nel messaggio"
Offset del campo di lunghezza nel messaggio:
3. Byte (come offset si deve parametrizzare "2")
Dimensioni del campo di lunghezza:
1 byte
Numero dei caratteri che non rientrano
nella lunghezza indicata:
3 byte
Messaggio
Numero dei caratteri che non rientrano
nella lunghezza indicata
Carattere
iniziale
Indirizzo
Campo di
lunghezza
Byte 1
Byte 2
Byte 3
Byte ...
Byte X
Somma di
controllo
Carattere finale
Byte X+1
Byte X+2
Byte X+3
CM PtP - Configurazioni di accoppiamenti punto a punto
38
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
Sequenza di fine
Nella ricezione di dati, la fine del telegramma viene riconosciuta con la ricezione della
sequenza di fine parametrizzata (max. 5 caratteri). La sequenza di fine che comprende fino
a 5 caratteri può contenere anche "don't care characters". I dati ricevuti, inclusa la sequenza
di fine, vengono acquisiti dalla CPU.
Utilizzando la sequenza di fine, la trasmissione non è a codice trasparente, è pertanto
necessario escludere che il riconoscimento finale sia presente nei dati utili dell'utente.
Nota
Sequenza di fine telegramma
Con 1 solo carattere finale, la registrazione deve avvenire tassativamente nella 5° riga.
Con 2 caratteri finali, le registrazioni devono avvenire nella 4° e 5° riga (senza spazi).
Lo stesso vale con l'impiego di altri caratteri.
4.2.5
Trasparenza di codice
Trasparenza di codice
Trasparenza di codice significa che nei dati utili può presentarsi qualsiasi combinazione di
caratteri senza che venga riconosciuto il criterio di fine.
La trasparenza di codice della procedura dipende dalla scelta del criterio finale
parametrizzato e dal controllo di flusso:
● Con sequenza di fine stabilita o utilizzo del controllo di flusso XON/XOFF
– codice non trasparente
● Criterio finale Tempo di ritardo del carattere, Lunghezza fissa del telegramma,
Lunghezza massima del telegramma, Time out dei messaggi o Time out di risposta e
Lunghezza nel messaggio
– codice trasparente
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
39
Configurazione/parametrizzazione
4.2 Comunicazione tramite Freeport
4.2.6
Buffer di ricezione
Buffer di ricezione dell'unità
I moduli di comunicazione dispongono di un buffer di ricezione che memorizza
temporaneamente i telegrammi ricevuti finché non vengono trasmessi alla CPU. Il buffer di
ricezione è un buffer ad anello, ovvero i telegrammi vengono trasmessi alla CPU nell'ordine
di ricezione finché il buffer non si riempie. Se vengono ricevuti altri telegrammi quello più
vecchio viene sovrascritto. Se è stata parametrizzata l'opzione "Impedisci sovrascrittura"
quando il buffer di ricezione si riempie viene generato un messaggio. Tutti i telegrammi
successivi vengono respinti finché il buffer non è nuovamente pronto a riceverli.
Durante la parametrizzazione si può specificare se il buffer di ricezione deve essere
cancellato o meno durante il funzionamento. È inoltre possibile immettere un valore
(da 1 a 255) per il numero dei telegrammi in ricezione bufferizzati.
Il buffer di ricezione dell'unità comprende, a seconda del modulo di comunicazione
impiegato, fino a 8 byte (vedere il capitolo Introduzione (Pagina 12)). La lunghezza massima
del telegramma è pari a 4 kByte. In questo modo ogni modulo di comunicazione può
bufferizzare almeno due telegrammi.
Se si intende trasmettere alla CPU sempre solo il telegramma più recente, sarà necessario
parametrizzare il valore "1" per il numero dei telegrammi bufferizzati e disattivare la
protezione in scrittura.
Nota
Se la lettura continua dei dati di ricezione nel programma utente viene sospesa per un po',
quando vengono richiesti di nuovo i dati di ricezione è possibile che il modulo di
comunicazione riceva prima un telegramma vecchio e che la CPU riceva il telegramma più
recente solo in seguito. Il vecchio telegramma è già stato acquisito dal buffer di ricezione del
modulo di comunicazione al momento dell'interruzione e predisposto per la trasmissione
sulla CPU.
CM PtP - Configurazioni di accoppiamenti punto a punto
40
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
4.3
Comunicazione tramite 3964(R)
4.3.1
Procedimento per la configurazione di un collegamento seriale con 3964(R)
Presupposti
● L'hardware è stato configurato ed è stato stabilito un collegamento elettrico con il partner
di accoppiamento.
● Il progetto è stato creato in STEP 7 (TIA Portal) e la CPU è stata inserita nella
configurazione hardware.
Procedimento - Configurazione hardware
1. Inserire il modulo di comunicazione CM PtP nella configurazione hardware.
2. Impostare i parametri di comunicazione in base al partner di accoppiamento:
Ad es. la velocità di trasmissione, il frame caratteri, l'inizio e la fine del telegramma
I parametri vengono trasmessi al modulo di comunicazione CM PtP ad ogni avvio della
CPU.
Procedimento - Programmazione
1. Definire la struttura di dati che conterrà i dati da trasmettere.
Invio dei dati:
1. Inserire le istruzioni della biblioteca PtP Communication: Send_P2P per l'invio dei dati
2. Collegare i parametri di ingresso e di uscita dell'istruzione, ad es.:
– L'HWID delle variabili di sistema all'ingresso PORT
– La struttura con i dati da inviare all'ingresso BUFFER
Avvertenza: durante il funzionamento l'area dati specificata viene inviata ad ogni fronte di
salita nell'ingresso REQ. Il blocco deve essere richiamato finché DONE non indica che i
dati sono stati trasmessi all'unità.
Se si verifica un errore, ERROR viene impostato una volta e STATUS informa che i dati
non sono stati trasmessi.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
41
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
Ricezione dei dati:
1. Inserire le istruzioni della biblioteca PtP Communication: Receive_P2P per la ricezione
dei dati
2. Collegare i parametri di ingresso e di uscita dell'istruzione, ad es.:
– L'HWID delle variabili di sistema all'ingresso PORT
– La struttura per la memorizzazione dei dati ricevuti all'ingresso BUFFER
Avvertenza: durante il funzionamento un livello high nell'uscita NDR indica che i dati sono
stati ricevuti e memorizzati nell'area dati specificata. Il blocco deve essere richiamato
finché NDR=TRUE. Quindi è possibile analizzare i dati ricevuti e richiamare nuovamente
RECEIVE_P2P.
Ulteriori opzioni
● Le istruzioni che terminano con _Config possono essere utilizzate in opzione per
modificare i parametri della configurazione hardware durante il funzionamento. Le
modifiche non vengono salvate nella configurazione hardware. Al successivo riavvio
vengono nuovamente sovrascritte.
● Per comandare i segnali addizionali RS232 nel caso in cui il comando automatico non
fosse utilizzabile si possono usare le istruzioni Signal_Set e Signal_Get.
4.3.2
Trasmissione dati con la procedura 3964(R)
Introduzione
La procedura 3964(R) gestisce la trasmissione dati in un accoppiamento punto a punto tra il
modulo di comunicazione e un relativo partner. Oltre al livello fisico (livello 1), la procedura
3964(R) comprende anche il livello di collegamento (livello 2).
Per la comunicazione con il partner sono disponibili apposite istruzioni (vedere Panoramica
della programmazione PtP (Pagina 59)).
CM PtP - Configurazioni di accoppiamenti punto a punto
42
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
4.3.3
Carattere di controllo
Introduzione
La procedura 3964(R) aggiunge alla trasmissione dei dati di informazione un carattere di
comando (livello di collegamento). Esso permette al partner della comunicazione di
controllare se i dati arrivati sono completi e senza errori.
I caratteri di comando della procedura 3964(R)
La procedura 3964(R) analizza i seguenti caratteri di controllo:
STX
Start of Text
Inizio della stringa di caratteri da trasmettere
02H
DLE
Data Link Escape
Commutazione della trasmissione dati
10H
ETX
End of Text
Fine della stringa di caratteri da trasmettere
03H
NAK
Negative acknowledge- Segnalazione di risposta negativa
ment
BCC
BCC Block Check Cha- Carattere di controllo blocco
racter (solo con 3964R)
15H
BCC viene formato e controllato automaticamente nel modulo di comunicazione. Il carattere
di controllo del blocco non viene trasmesso alla CPU all'interno del telegramma.
Nota
Se, all'interno di un telegramma, viene trasmesso come carattere di informazione DLE, per
differenziarlo dal carattere di controllo DLE nell'attivazione e nella disattivazione del
collegamento sulla linea di trasmissione, esso viene inviato due volte (raddoppiamento
DLE). Il ricevente annulla poi il raddoppio del DLE.
Priorità
Con la procedura 3964(R) è necessario assegnare una priorità maggiore a un partner di
comunicazione e una priorità minore all'altro. Se entrambi i partner creano il collegamento
contemporaneamente, il partner con la priorità più bassa deve resettare il proprio ordine di
trasmissione.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
43
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
4.3.4
Carattere di controllo blocco
Carattere di controllo blocco
Nel protocollo di trasmissione 3964R la sicurezza dei dati è maggiore grazie all'invio di un
ulteriore carattere di controllo del blocco (BCC = Block Check Character).
Il carattere di controllo del blocco è la parità longitudinale pari (combinazione logica XOR di
tutti i byte di dati) di un blocco inviato o ricevuto. Essa viene formata iniziando dal primo byte
di dati utili (primo byte del telegramma) dopo l'attivazione del collegamento e termina dopo il
carattere DLE ETX della disattivazione del collegamento.
Nota
Nel caso in cui sia stato raddoppiato, il carattere DLE viene introdotto due volte nella
formazione del BCC.
4.3.5
Invio di dati con 3964(R)
Creazione del collegamento per l'invio
Per creare il collegamento, la procedura 3964(R) invia il carattere di controllo STX. Se il
partner di comunicazione risponde con il carattere DLE prima che trascorra il tempo di
ritardo conferma (QVZ), la procedura entra in fase di invio.
Se il partner di comunicazione risponde con NAK, con un altro carattere qualsiasi (esclusi
DLE o STX) o se il tempo di ritardo conferma trascorre senza reazione, la procedura ripete
la creazione del collegamento. Una volta eseguito inutilmente il numero parametrizzato di
tentativi di collegamento, la procedura interrompe la creazione del collegamento e invia al
partner di comunicazione il carattere NAK. Il modulo di comunicazione emette il relativo
messaggio di errore.
Invio di dati
Se l'attivazione del collegamento ha successo, i dati utili contenuti nel buffer di uscita del
processore di comunicazione vengono trasmessi al partner di comunicazione con i parametri
di trasmissione scelti (l'eventuale DLE rilevato nei dati utili viene raddoppiato nel corso della
trasmissione). Il partner sorveglia l'intervallo di tempo tra l'arrivo di un carattere e l'altro.
L'intervallo tra due caratteri non può superare il tempo di ritardo caratteri (ZVZ). La
sorveglianza del tempo di ritardo caratteri inizia subito dopo l'attivazione del collegamento.
Se il partner di comunicazione invia il carattere NAK nel corso di una trasmissione, la
procedura interrompe il blocco e lo ripete nel modo descritto precedentemente, iniziando con
l'attivazione del collegamento. Con un altro carattere la procedura attende innanzitutto che
trascorra il tempo di ritardo caratteri e quindi invia NAK per portare il partner di
comunicazione in stato di riposo. A questo punto la procedura ricomincia l'invio creando il
collegamento STX.
CM PtP - Configurazioni di accoppiamenti punto a punto
44
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
Disattivazione del collegamento per l'invio
Dopo aver trasmesso il contenuto del buffer, la procedura inserisce i caratteri DLE, ETX e
solo nel caso del 3964R la somma di controllo del blocco BCC come codice finale e attende
un carattere di conferma. Se il partner di comunicazione invia il carattere DLE prima che
trascorra il tempo di ritardo conferma, significa che il blocco è stato ricevuto senza errori. Se
il partner di comunicazione risponde con NAK, con un altro carattere qualsiasi (eccetto DLE),
con un carattere disturbato o se il tempo di ritardo conferma trascorre senza reazione, la
procedura ricomincia la trasmissione con l'attivazione del collegamento STX.
Una volta eseguito il numero parametrizzato di tentativi di trasmissione, la procedura
interrompe l'operazione e invia il carattere NAK al partner di comunicazione. Il modulo di
comunicazione emette il relativo messaggio di errore.
4.3.6
Ricezione di dati con 3964(R)
Creazione del collegamento per la ricezione
In stato di riposo, in assenza di un ordine di trasmissione, la procedura attende la creazione
del collegamento da parte del partner della comunicazione.
Se nel creare il collegamento con STX non è disponibile un buffer di ricezione libero, viene
avviato un tempo di attesa (tempo di attesa = tempo di ritardo conferma - 10 ms, max.
400 ms). Se decorso questo tempo non è ancora disponibile un buffer di ricezione libero,
viene generato un messaggio di errore. La procedura invia il carattere NAK e ritorna nello
stato di riposo. In caso contrario la procedura invia il carattere DLE e riceve i dati come
descritto sopra.
Il tempo di ritardo conferma dovrebbe essere impostato sullo stesso valore nei due partner di
comunicazione.
Se la procedura riceve un carattere qualsiasi (eccetto STX o NAK) durante il tempo di
riposo, essa attende che trascorra il tempo di ritardo caratteri (ZVZ) e quindi invia il carattere
NAK. Il modulo di comunicazione emette il relativo messaggio di errore.
Ricezione di dati
Dopo un'attivazione del collegamento corretta, i caratteri ricevuti vengono depositati nel
buffer di ricezione. Se vengono ricevuti due caratteri DLE consecutivi, nel buffer ne verrà
memorizzato solo uno.
Una volta attivato il collegamento e dopo ogni carattere ricevuto si attende, durante il tempo
di ritardo carattere, il carattere successivo. Se il tempo trascorre senza ricezione, viene
inviato al partner di comunicazione il carattere NAK. Il modulo di comunicazione emette il
relativo messaggio di errore. Si attende quindi una ripetizione.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
45
Configurazione/parametrizzazione
4.3 Comunicazione tramite 3964(R)
Se durante la ricezione si verificano errori di trasmissione (errori di struttura carattere, errori
di parità ecc.), la ricezione continuerà fino alla disattivazione del collegamento, quindi verrà
inviato il carattere NAK al partner di comunicazione. Si attende quindi una ripetizione. Se
non è possibile ricevere il blocco correttamente nemmeno dopo il numero di tentativi di
trasmissione specificati o se il partner di comunicazione non inizia la ripetizione entro un
tempo di attesa del blocco di 4 s, la procedura interrompe la ricezione. Il modulo di
comunicazione segnala la prima trasmissione difettosa e l'interruzione definitiva.
Disattivazione del collegamento in ricezione
Quando la procedura 3964 riconosce la stringa di caratteri DLE ETX, essa termina la
ricezione e invia al partner di comunicazione il carattere DLE, a conferma di un blocco
ricevuto senza errori. In caso di errore di ricezione viene inviato al partner della
comunicazione il carattere NAK Si attende quindi una ripetizione.
Se la procedura 3964R riconosce la sequenza di caratteri DLE ETX BCC, essa termina la
ricezione. Essa confronta il carattere di controllo del blocco BCC ricevuto con la parità
longitudinale generata internamente. Se il carattere di controllo del blocco è corretto e non si
sono verificati altri errori di ricezione, la procedura 3964R invia DLE e si riporta nello stato di
riposo. Il modulo di comunicazione informa il controllore che sono presenti nuovi dati di
ricezione.
In caso di errore del carattere BCC o della ricezione viene inviato al partner della
comunicazione il carattere NAK. Si attende quindi una ripetizione.
CM PtP - Configurazioni di accoppiamenti punto a punto
46
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
4.4
Comunicazione tramite Modbus RTU
4.4.1
Procedimento per la configurazione di un collegamento seriale con
Modbus RTU
Presupposti
● L'hardware è stato configurato ed è stato stabilito un collegamento elettrico con il partner
di accoppiamento.
● Il progetto è stato creato in STEP 7 (TIA Portal) e la CPU è stata inserita nella
configurazione hardware.
Procedimento - Configurazione hardware
1. Inserire il modulo di comunicazione CM PtP nella configurazione hardware.
2. Selezionare il protocollo Modbus RTU.
Avvertenza: nel Modbus RTU la maggior parte dei parametri di comunicazione vengono
impostati all'avvio della CPU con l'istruzione Modbus_Comm_Load.
Procedimento - Programmazione
1. Definire la struttura di dati che conterrà i dati da trasmettere.
2. Collegare l'istruzione Modbus_Comm_Load all'esecuzione ciclica per la
parametrizzazione del modulo di comunicazione.
3. Collegare l'HWID delle variabili di sistema all'ingresso PORT.
4. Richiamare l'istruzione finché l'uscita DONE non indica che è stata eseguita
correttamente. In seguito non richiamarla più, a meno che non si vogliano modificare i
parametri di comunicazione.
Funzionamento come master Modbus:
1. Inserire l'istruzione Modbus_Master della biblioteca MODBUS (RTU).
2. Collegare la struttura di dati con i dati da inviare nell'ingresso BUFFER.
3. Collegare il DB di istanza dell'istruzione Modbus_Master all'ingresso MB_DB di
Modbus_Comm_Load.
Avvertenza: durante il funzionamento ogni fronte di salita nell'ingresso REQ elabora una
volta l'ordine specificato. Il blocco deve essere richiamato finché DONE non indica che i
dati sono stati trasmessi all'unità.
Se si verifica un errore, ERROR viene impostato una volta e STATUS informa che i dati
non sono stati trasmessi.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
47
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
Funzionamento come slave Modbus:
1. inserire l'istruzione Modbus_Slave della biblioteca MODBUS (RTU).
2. Collegare la struttura di dati con i registri di mantenimento Modbus.
3. Specificare l'indirizzo slave Modbus nell'ingresso MB_ADDR.
4. Collegare il DB di istanza dell'istruzione Modbus_Master all'ingresso MB_DB di
Modbus_Comm_Load.
Avvertenza: durante il funzionamento un livello high nell'uscita NDR indica che i dati sono
stati ricevuti e memorizzati nell'area dati specificata.
CM PtP - Configurazioni di accoppiamenti punto a punto
48
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
4.4.2
Panoramica sulla comunicazione Modbus
Comunicazione Modbus RTU
Modbus RTU (Remote Terminal Unit) è un protocollo standard per la comunicazione in rete
che si avvale del collegamento elettrico RS232 o RS422/485 per la trasmissione dei dati
seriale tra i dispositivi Modbus nella rete.
Modbus RTU utilizza una rete master/slave in cui l'intera comunicazione viene attivata da un
unico dispositivo master mentre gli slave possono solo reagire alla richiesta del master. Il
master invia una richiesta a un indirizzo slave e solo questo indirizzo slave risponde al
comando (eccezione: telegrammi broadcast sull'indirizzo slave 0 che non vengono
confermati dagli slave).
Viene impiegata una procedura semiduplex asincrona a codice trasparente. La trasmissione
dei dati avviene senza handshake.
Posizionamento nell'ambiente di sistema
La seguente descrizione Modbus si riferisce all'impiego dei moduli di comunicazione
corrispondenti.
● CM PtP RS232 HF
● CM PtP RS422/485 HF
● CM PtP (ET 200SP)
Funzione dell'accoppiamento
Con i moduli di comunicazione opportuni e le rispettive istruzioni è possibile creare un
collegamento di comunicazione tra un sistema di controllo remoto Modbus e un sistema
SIMATIC S7.
Per la trasmissione viene utilizzato il protocollo GOULD - MODBUS in formato RTU.
Per la comunicazione tra un modulo di comunicazione utilizzato come slave Modbus e un
sistema master è possibile utilizzare i codici funzione 01, 02, 03, 04, 05, 06, 08, 15 e 16
(vedere Codici funzione (Pagina 53)).
Se si utilizza un modulo di comunicazione SIMATIC S7 come master Modbus sono
disponibili anche i codici funzione 11 e 12.
SIMATIC S7 come slave Modbus
Il master ha l'iniziativa della trasmissione, il modulo di comunicazione funge da slave.
Lo scambio di telegrammi da slave a slave non è possibile.
L'istruzione Modbus_Slave mette a disposizione i dati in un'area dati SIMATIC secondo la
relazione di mappatura oppure li memorizza.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
49
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
SIMATIC S7 come master Modbus
Il modulo di comunicazione inizializza la trasmissione in quanto master e dopo l'emissione
del telegramma di richiesta attende un telegramma di risposta dallo slave per il tempo di
controllo risposta parametrizzato. Se lo slave non risponde, prima di restituire un messaggio
di errore il master ripete la richiesta in base alla parametrizzazione.
Struttura del telegramma
Il traffico dei dati "master-slave" o "slave-master" inizia con l'indirizzo slave, seguito dal
codice della funzione. Quindi i dati vengono trasmessi. La struttura dei campi dati dipende
dal codice della funzione utilizzato. Alla fine del telegramma viene trasmesso il check CRC.
ADDRESS
FUNCTION
DATA
CRC-CHECK
Byte/parola
byte
n byte
2 byte
ADDRESS
Indirizzo slave Modbus
• Indirizzo standard: 1 ... 247 (byte)
• Indirizzo esteso della stazione: 1 ... 65535 (parola)
FUNCTION
Modbus Codici funzione (Pagina 53)
DATA
Dati telegramma: dati di gestione e dati netti che dipendono dal codice della funzione
CRC-CHECK
Somma di controllo telegramma
Indirizzo slave
L'indirizzo slave può rientrare nel campo da 1 a 247 (byte) o da 1 a 65535 (parola). Con
l'indirizzo viene interrogato uno slave definito nel bus.
Broadcast Message
Con indirizzo slave zero il master interroga tutti gli slave nel bus.
I messaggi Broadcast sono ammessi solo in combinazione con i codici funzione 05, 06, 15 o
16 in scrittura.
In caso di Broadcast-Message lo slave non invia alcun telegramma di risposta.
Campo dati DATA
Nel campo dati DATA vengono trasmessi i dati specifici del codice funzione:
● Bytecount, Coil_Startaddress, Register_Startaddress; Number_of_Coils,
Number_of_Registers, ...
Vedere in proposito il capitolo "Codici funzione (Pagina 53)".
CM PtP - Configurazioni di accoppiamenti punto a punto
50
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
Controllo CRC
La conclusione del telegramma genera la somma di controllo 16 CRC di due byte, formata in
base al polinomio x16 + x15 + x2 + 1.
Prima viene trasmesso il Low-Byte, quindi l'High-Byte.
Fine del telegramma
La fine del telegramma viene riconosciuta se durante l'intervallo di tempo necessario per la
trasmissione di tre caratteri e mezzo (tempo di ritardo del carattere per 3,5) non avviene
nessuna trasmissione (vedere la Guida di riferimento del protocollo Modbus).
Questo TIME_OUT della fine del telegramma dipende quindi dalla velocità di trasmissione
dei dati e viene indicato in bit time (internamente sono codificati in modo fisso 35 bit time); è
possibile parametrizzare altri bit time nell'istruzione).
Funzionamento normale:all'arrivo del TIME_OUT di fine telegramma, il telegramma Modbus
ricevuto dal partner di collegamento viene analizzato e controllato sul piano della forma.
Exception Responses
Quando lo slave riconosce un errore nel telegramma di richiesta del master, ad esempio, un
indirizzo di registro non ammesso, imposta il bit con valore maggiore nel codice funzione del
telegramma di risposta.
Quindi viene trasmesso un byte Exception Code che descrive la causa dell'errore.
Il significato del parametro citato è riportato nella descrizione "GOULD MODICON Modbus
Protocol" (non fa parte della presente documentazione).
Exception Code Telegramm
L'Exception Code Telegramm dello slave presenta la seguente struttura:
● ad es. indirizzo slave 5, codice funzione 5, Exception Code 2
Telegramma di risposta da slave EXCEPTION_CODE_xx:
05H
Indirizzo slave
85H
Codice di funzione
02H
Exception Code (1...7)
xxH
Codice di controllo CRC "Low"
xxH
Codice di controllo CRC "High"
Quando il driver riceve un Exception Code Telegramm l'ordine corrente con errore viene
terminato.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
51
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
I seguenti codici di errore sono definiti secondo la specifica Modbus:
Codice di
errore
Significato secondo la specifica Modbus
Causa - Descrizione sintetica *
1
Illegal function
Codice funzione non ammesso
2
Illegal data address
Indirizzo dati non ammesso in slave
3
Illegal data value
Valore dati non ammesso in slave
4
Failure in associated device
Errore interno in slave
5
Acknowledge
La funzione viene eseguita
6
Busy, Rejected message
Slave non pronto alla ricezione
7
Negative acknowledgement
Funzione non eseguibile
* Ricercare i dettagli della causa in slave.
Funzionamento RS232
Il funzionamento RS232 è possibile con i seguenti moduli di comunicazione:
● CM PtP RS232 HF
● CM PtP (ET 200SP)
Per informazioni sul funzionamento RS232 vedere il capitolo Funzionamento RS232
(Pagina 22).
Per informazioni sul controllo del flusso dati hardware e l'utilizzo automatico dei segnali
addizionali consultare il capitolo Handshake (Pagina 26).
Funzionamento RS422/485
Il funzionamento RS422/485 è possibile con i seguenti moduli di comunicazione:
● CM PtP RS422/485 HF
● CM PtP (ET 200SP)
Per informazioni sul funzionamento RS422/485 vedere i capitoli Funzionamento RS422
(Pagina 24) e Funzionamento RS485 (Pagina 25).
FAQ
Ulteriori informazioni sono disponibili nelle seguenti FAQ alla sezione Siemens Industry
Online Support:
● ID articolo: 68202723 (https://support.industry.siemens.com/cs/ww/en/view/68202723)
● ID articolo: 58386780 (https://support.industry.siemens.com/cs/ww/en/view/58386780)
CM PtP - Configurazioni di accoppiamenti punto a punto
52
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
4.4.3
Codici funzione
Codici funzione utilizzati
Il codice funzione definisce il significato del telegramma. Tramite il codice funzione viene
stabilita anche la struttura del telegramma.
Il modulo di comunicazione supporta i seguenti codici funzione:
Codice
funzione
Funzione secondo specifica MODBUS
Campo
01
Read Coil Status
1 ... 2000 bit/richiesta
02
Read Input Status
1 ... 2000 bit/richiesta
03
Read Holding Registers
1 ... 124/125 bit/richiesta (124 in caso di
indirizzo di stazione esteso)
04
Read Input Registers
1 ... 124/125 bit/richiesta (124 in caso di
indirizzo di stazione esteso)
05
Force Single Coil
1 bit/richiesta
06
Preset Single Register
1 parola/richiesta
08 *
Loop Back Test
Lettura dello stato dello slave o reset del
contatore degli eventi nello slave
11 *
Fetch Communications Event Counter
(solo master)
-
15
Force Multiple Coils
1 ... 1968 bit/richiesta
16
Preset Multiple Registers
1 ... 123 bit/richiesta
* Informazioni di diagnostica per la comunicazione dello slave
Il codice funzione Modbus 00 invia un messaggio Broadcast a tutti gli slave (senza risposta
dello slave).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
53
Configurazione/parametrizzazione
4.4 Comunicazione tramite Modbus RTU
Assegnazione degli indirizzi Modbus agli indirizzi SIMATIC
La seguente tabella elenca gli indirizzi Modbus assegnati agli indirizzi SIMATIC.
Modbus
FC
S7-1500
Funzione
Dichiarazione
Area di indirizzi
Dichiarazione
Indirizzo CPU
01
Leggi bit
Output
1 - 9999
Immagine di processo delle
uscite
Q0.0 - Q1248.6
02
Leggi bit
Input
10001 - 19999
Immagine di processo degli
ingressi
I0.0 - 1248.6
03 2)
Leggi parole
Holding Register
40001 - 49999
o
400001 - 465535
DW0 - DW19998
o
DW0 - DW131068
L'area di indirizzi M
dipende dalla CPU
04
Leggi parole
Input
30001 - 39999
Immagine di processo degli
ingressi
IW0 - IW19996
05 2)
Scrivi bit
Output
1 - 9999
Immagine di processo delle
uscite
Q0.0 - Q1248.7
06
Scrivi parole
Holding Register
40001 - 49999
o
400001 - 465535
DW0 - DW19998
o
DW0 - DW131068
L'area di indirizzi M
dipende dalla CPU
15
Scrivi bit
Output
1 - 9999
Immagine di processo delle
uscite
Q0.0 - Q1248.6
16 2)
Scrivi parole
Holding Register
40001 - 49999
o
400001 - 465535
DW0 - DW19998
o
DW0 - DW131068
L'area di indirizzi M
dipende dalla CPU
1)
1) FC = codice funzione
2) Il valore di HR_Start_Offset consente di stabilire se gli FC 03, 05 e 16 verranno usati per indirizzare aree di dati o di
merker della CPU SIMATIC.
CM PtP - Configurazioni di accoppiamenti punto a punto
54
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.5 Comunicazione tramite USS
4.5
Comunicazione tramite USS
4.5.1
Procedimento per la configurazione di un collegamento seriale con
Modbus USS
Presupposti
● L'hardware è stato configurato ed è stato stabilito un collegamento elettrico con il partner
di accoppiamento.
● Il progetto è stato creato in STEP 7 (TIA Portal) e la CPU è stata inserita nella
configurazione hardware.
Procedimento - Configurazione hardware
1. Inserire il modulo di comunicazione CM PtP nella configurazione hardware.
2. Selezionare il protocollo Freeport e impostare i parametri di comunicazione.
Avvertenza: la funzionalità USS viene realizzata dalle istruzioni.
Procedimento - Programmazione
1. Inserire l'istruzione USS_Port_Scan della biblioteca USS Communication.
2. Collegare l'HWID delle variabili di sistema all'ingresso PORT.
3. Inserire l'istruzione USS_Drive_Control della biblioteca USS Communication.
4. Collegare la struttura di dati USS_DB del DB di istanza dell'istruzione USS_Drive_Control
all'ingresso USS_DB dell'istruzione USS_Port_Scan. La struttura contiene i dati da
trasmettere per tutti gli azionamenti.
5. Inserire un richiamo dell'istruzione USS_Drive_Control per ogni altro asse che verrà
collegato attraverso questa interfaccia USS.
Utilizzare sempre lo stesso DB di istanza. Per distinguere i DB di istanza indicare
l'indirizzo USS nell'ingresso DRIVE dell'istruzione USS_Drive_Control. In questo modo
nei parametri di ciascun richiamo saranno disponibili i dati di comando e di feedback per i
diversi azionamenti.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
55
Configurazione/parametrizzazione
4.5 Comunicazione tramite USS
4.5.2
Panoramica della comunicazione USS
Posizionamento nell'ambiente di sistema
La seguente descrizione USS si riferisce all'impiego dei moduli di comunicazione
corrispondenti.
● CM PtP RS232 BA
● CM PtP RS422/485 BA
● CM PtP RS232 HF
● CM PtP RS422/485 HF
● CM PtP (ET 200SP)
Introduzione
Il protocollo USS® (Universal Serial Interface Protocol) è un semplice protocollo di
trasmissione dati seriale concepito appositamente per rispondere ai requisiti della tecnica di
azionamento.
Il protocollo USS definisce una tecnica di accesso secondo il principio masterslave per la
comunicazione mediante un bus seriale. Al bus si possono collegare un master e fino a
16 azionamenti (slave). I singoli azionamenti vengono scelti dal master con l'aiuto di un
carattere dell'indirizzo nel telegramma. Un azionamento non può mai trasmettere senza
prima essere stato avviato dal master. Non è quindi possibile una trasmissione diretta dei
dati tra singoli azionamenti. La comunicazione funziona in semiduplex. La funzione di master
non può essere trasferita.
La tecnica di azionamento richiede tempi di reazione ben definiti per i compiti di controllo e
regolazione da gestire e quindi uno scambio di telegrammi rigidamente ciclico.
Il master invia continuamente telegrammi agli azionamenti (telegrammi d'ordine) e attende
sempre un telegramma di risposta da ciascuno degli azionamenti indirizzati.
Un azionamento deve inviare un telegramma di risposta se
● ha ricevuto un telegramma senza errori e se
● era indirizzato in questo telegramma.
Un azionamento non deve rispondere se queste condizioni non sono soddisfatte o se è stato
indirizzato in broadcast.
Il master considera attivo il collegamento con un azionamento se dopo un determinato
tempo di elaborazione (tempo di ritardo risposta) riceve un telegramma di risposta
dall'azionamento.
CM PtP - Configurazioni di accoppiamenti punto a punto
56
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Configurazione/parametrizzazione
4.5 Comunicazione tramite USS
Struttura del telegramma
Ogni telegramma comincia con il carattere iniziale (STX) seguito dall'indicazione della
lunghezza (LGE) e dal byte di indirizzo (ADR). Quindi segue il campo dati. Il telegramma si
conclude con il carattere di controllo blocco (BCC). La lunghezza del telegramma è data dai
dati utili (numero n), dal byte di indirizzo (ADR) e dal carattere di protezione dei dati (BCC).
STX
LGE
ADR
1
2
...
N
BCC
Nel caso dei dati costituiti da una parola (16 bit), viene inviato prima il byte superiore, seguito
da quello inferiore. In base allo stesso principio, nel caso dei dati a doppia parola viene
inviata prima la parola superiore e poi quella inferiore. La lunghezza dei telegrammi viene
indicata in byte.
Cifratura dei dati
I dati vengono cifrati nella maniera seguente:
● STX: 1 byte, inizio testo, 02H
● LGE: 1 byte, contiene la lunghezza del telegramma come numero binario
● ADR: 1 byte, contiene l'indirizzo slave e il tipo di telegramma, a codice binario
● Campi dati: un byte ciascuno, contenuto dipendente dal task
● BCC: 1 byte, carattere di controllo del blocco
Procedura di trasmissione dei dati
Il master provvede alla trasmissione ciclica dei dati in telegrammi. Il master indirizza tutti i
nodi slave uno dopo l'altro con un telegramma di task. I nodi indirizzati rispondono con un
telegramma di risposta. Secondo la procedura masterslave, lo slave deve inviare il
telegramma di risposta al master dopo aver ricevuto il telegramma di task. Solo a quel punto
il master può indirizzare lo slave successivo.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
57
Configurazione/parametrizzazione
4.5 Comunicazione tramite USS
Campo dati nel telegramma
Il campo dati è suddiviso in due aree: Parametri (PKW) e dati di processo (PZD).
STX
LGE
ADR
Parametri (PKW)
Dati di processo (PZD)
BCC
● Area parametri (PKW)
L'area PKW gestisce il trasferimento di parametri tra due partner di comunicazione (p. es.
controllore e azionamento). Ciò comprende p. es. la lettura e la scrittura dei valori dei
parametri, nonché la lettura delle descrizioni dei parametri e il rispettivo testo.
L'interfaccia PKW comprende in generale i task di comando e visualizzazione,
manutenzione e diagnostica.
● Area dati di processo (PZD)
L'area PZD comprende i segnali necessari per l'automazione:
– Parole di comando e valori di riferimento dal master allo slave
– Parole di stato e valori attuali dallo slave al master
Il contenuto dell'area parametri e dell'area dati di processo viene definito dagli
azionamenti slave.
Per maggiori informazioni, consultare la documentazione dell'azionamento.
4.5.3
Panoramica funzioni
Sequenza di trasmissione
Le istruzioni eseguono la trasmissione dei dati ciclicamente con max. 16 azionamenti slave.
Per ogni azionamento è attivo solo un ordine per volta.
Caratteristiche prestazionali:
● Creazione di aree dati per la comunicazione a seconda della configurazione di bus
● Esecuzione e controllo di ordini PKW
● Controllo del sistema complessivo e trattamento degli errori
● Comunicazione con la CPU
● Accesso alle funzioni dell'azionamento
● Lettura dei parametri dell'azionamento
● Scrittura dei parametri dell'azionamento
CM PtP - Configurazioni di accoppiamenti punto a punto
58
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.1
5
Panoramica della programmazione PtP
Scambio di dati tramite comunicazione Freeport o 3964 (R)
I dati di invio devono essere messi a disposizione nei blocchi dati o nell'area di merker del
programma utente della rispettiva CPU. Per i dati di ricezione è disponibile, nel modulo di
comunicazione, un buffer di ricezione. Nella CPU viene configurato un rispettivo blocco dati.
Nel programma utente della CPU le seguenti istruzioni comandano il trasferimento dei dati
tra CPU e modulo di comunicazione.
● Send_P2P
● Receive_P2P
L'istruzione Receive_Reset consente di cancellare il buffer di ricezione.
Progettazione dinamica tramite il programma utente
In alternativa o a completamento della parametrizzazione dell'interfaccia del modulo di
comunicazione descritta nel capitolo Configurazione/parametrizzazione di un modulo di
comunicazione (Pagina 31) in alcuni campi di applicazione può essere utile configurare una
comunicazione dinamica, ovvero una comunicazione comandata da un'applicazione
specifica.
Tutte le parametrizzazione effettuate nella finestra delle proprietà del modulo di
comunicazione possono essere modificate, anche durante l'esecuzione, con l'ausilio di una
delle seguenti istruzioni "Config".
Port_Config, Send_Config, Receive_Config, P3964_Config
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
59
Programmazione - comunicazione tramite istruzioni
5.1 Panoramica della programmazione PtP
Sequenze di richiamo del programma per la comunicazione PtP
Il grafico seguente mostra la funzione delle istruzioni PtP per lo svolgimento della
comunicazione tra programma utente e partner della comunicazione.
CM PtP - Configurazioni di accoppiamenti punto a punto
60
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.1 Panoramica della programmazione PtP
Istruzioni PtP
Applicazione
Istruzione
Descrizione
Scambio dati tra CPU,
modulo di comunicazione e partner di comunicazione
(comunicazione)
Send_P2P
(Pagina 87)
L'istruzione Send_P2P (ricezione dei dati punto a punto) consente di trasmettere i dati al partner della comunicazione.
Per la trasmissione dei dati con il protocollo Freeport si deve richiamare l'istruzione Send_P2P. Il richiamo deve essere ripetuto ciclicamente finché non
si riceve la conferma corrispondente nei parametri di uscita dell'istruzione.
Avvertenza: Con la parametrizzazione del controllo del flusso dati
XON/XOFF, i dati utili non devono contenere nessuno dei caratteri XON o
XOFF parametrizzati. L'impostazione di default è DC1 = 11H per XON e DC3
= 13H per XOFF.
Receive_P2P
(Pagina 91)
L'istruzione Receive_P2P (ricezione dei dati punto a punto) consente di recuperare i messaggi ricevuti da un partner nel modulo di comunicazione.
Per la ricezione dei dati con il protocollo Freeport si deve richiamare ciclicamente l'istruzione Receive_P2P. L'istruzione indica nel parametro NDR se
sono presenti nuovi dati di ricezione.
Per segnalare al ricevente quando inizia e quando finisce la trasmissione di
un messaggio, è necessario definire dei criteri nel protocollo Freeport che
contrassegnano l'inizio e la fine di un messaggio.
Eliminazione del buffer
di ricezione
Receive_Reset
(Pagina 93)
Parametrizzazione
Port_Config
dinamica dell'interfaccia (Pagina 74)
o del protocollo (opzionale)
Send_Config
(Pagina 77)
Receive_Config
(Pagina 79)
L'istruzione Receive_Reset (cancella buffer di ricezione) consente di cancellare il buffer di ricezione del modulo di comunicazione.
L'istruzione Port_Config (configurazione porta) consente di definire attraverso
il programma utente i parametri dinamici basilari dell'interfaccia, quali la velocità di trasmissione, la parità e il controllo del flusso dei dati.
L'istruzione Send_Config (parametrizzazione della trasmissione) consente di
definire dei parametri di trasmissione seriali dinamici per un'interfaccia di
comunicazione PtP, quali Ritardo RTS ON/Ritardo RTS OFF.
L'istruzione Receive_Config (parametrizzazione della ricezione) consente di
definire dei parametri di ricezione seriali dinamici per un moduli di comunicazione.
Questa istruzione parametrizza le condizioni che indicano l'inizio e la fine dei
messaggi ricevuti.
Gestione dei segnali
addizionali RS232
Attiva allarme di diagnostica e supporto
CRC Modbus
P3964_Config
(Pagina 85)
L'istruzione P3964_Config (configurazione del protocollo) consente di parametrizzare con il programma utente i parametri del protocollo della procedura
3964(R), quali il tempo di ritardo intercarattere, la priorità e la verifica blocco.
Signal_Get
(Pagina 94)
L'istruzione Signal_Get (richiamo dei segnali RS232) consente di leggere gli
stati attuali dei segnali RS232.
Signal_Set
(Pagina 96)
L'istruzione Signal_Set (richiamo dei segnali RS232) consente di impostare
gli stati dei segnali RS232 DTR e RTS.
Get_Features
(Pagina 98)
L'istruzione Get_Features(impostazione di funzioni ampliate) consente di
richiamare informazioni mediante il supporto Modbus e informazioni per la
generazione di messaggi di diagnostica.
Set_Features
(Pagina 99)
Con l'istruzione Set_Features (impostazione di funzioni ampliate) è possibile
attivare la generazione di messaggi di diagnostica, se supportata dal modulo.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
61
Programmazione - comunicazione tramite istruzioni
5.1 Panoramica della programmazione PtP
Procedura di configurazione della comunicazione Freeport o 3964 (R)
Presupposto: La configurazione e la parametrizzazione di una CPU e di un modulo di
comunicazione effettuate nella vista dispositivi e nella finestra delle proprietà del modulo di
comunicazione sono terminate.
1. Nella navigazione del progetto selezionare per la CPU la cartella "Blocchi di programma"
in cui aprire l'Main (OB1) con un doppio clic. Si apre l'editor di programma.
2. Nella task card "Istruzioni", area "Comunicazione" selezionare ad es. le istruzioni
Send_P2P und Receive_P2P e trascinarle per drag & drop in una rete dell'Main (OB1).
3. Parametrizzare le istruzioni in base alle preimpostazioni effettuate.
4. Caricare la configurazione hardware e il programma utente nella CPU.
CM PtP - Configurazioni di accoppiamenti punto a punto
62
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.2 Panoramica della programmazione Modbus
5.2
Panoramica della programmazione Modbus
Sequenze di richiamo del programma per la comunicazione Modbus
Il grafico seguente mostra la funzione delle istruzioni Modbus per lo svolgimento della
comunicazione tra programma utente e dispositivo Modbus. (Le istruzioni Send_P2P,
Receive_P2P e l'istruzione Config sono necessarie in via subordinata).
Istruzioni Modbus
Applicazione
Istruzione
Descrizione
Scambio dati tra
programma utente e dispositivo
Modbus (comunicazione)
Modbus_Master (Pagina 124)
L'istruzione Modbus_Master consente di comunicare attraverso la porta PtP in
qualità di master Modbus.
L'istruzione Modbus_Master consente di utilizzare la CPU come dispositivo
master Modbus RTU per la comunicazione con uno o più dispositivi slave
Modbus.
Modbus_Slave
(Pagina 131)
L'istruzione Modbus_Slave consente di comunicare attraverso la porta PtP in
qualità di slave Modbus.
L'istruzione Modbus_Slave consente di utilizzare la CPU come dispositivo
slave Modbus RTU per la comunicazione con un dispositivo master Modbus.
Parametrizzazio- Modbus_Comm_Load
ne dell'interfaccia (Pagina 119)
e del protocollo
(obbligatoria)
L'istruzione Modbus_Comm_Load consente di configurare la porta del modulo
di comunicazione per Modbus RTU.
È necessario eseguire Modbus_Comm_Load per configurare i parametri PtP
della porta come velocità di trasmissione, parità e controllo di flusso. Una
volta configurata, l'interfaccia per il protocollo Modbus RTU può essere utilizzata solo dall'istruzione Modbus_Master o Modbus_Slave .
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
63
Programmazione - comunicazione tramite istruzioni
5.2 Panoramica della programmazione Modbus
Nota
Utilizzo alternativo di Modbus_Slave e Modbus_Master
Un modulo di comunicazione può essere utilizzato come master o come slave.
Procedura di configurazione della comunicazione Modbus
Presupposto: La configurazione e la parametrizzazione di una CPU e di un modulo di
comunicazione effettuate nella vista dispositivi e nella finestra delle proprietà del modulo di
comunicazione sono terminate.
1. Nella navigazione del progetto selezionare per la CPU la cartella "Blocchi di programma"
in cui aprire l'Main (OB1) con un doppio clic. Si apre l'editor di programma.
2. Nella task card "Istruzioni", area "Comunicazione" selezionare le istruzioni per la
comunicazione Modbus in funzione del compito e trascinarle per drag & drop in una rete
del Main (OB1).
– L'istruzione Modbus_Comm_Load consente di configurare la porta del CM per la
comunicazione Modbus.
L'istruzione Modbus_Comm_Load deve essere richiamata nel Main (OB1) finché non
viene segnalato DONE (o ERROR).
– L'istruzione Modbus_Master viene utilizzata per la funzionalità del master Modbus.
– L'istruzione Modbus_Slave viene utilizzata per la funzionalità dello slave Modbus.
3. Parametrizzare le istruzioni in base alle preimpostazioni effettuate.
4. Caricare la configurazione hardware e il programma utente nella CPU.
CM PtP - Configurazioni di accoppiamenti punto a punto
64
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.3 Panoramica della programmazione USS
5.3
Panoramica della programmazione USS
Sequenze di richiamo del programma per la comunicazione USS
Il grafico seguente mostra la funzione delle istruzioni USS per lo svolgimento della
comunicazione tra programma utente e azionamento USS. (Le istruzioni Send_P2P,
Receive_P2P e l'istruzione Config sono necessarie in via subordinata).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
65
Programmazione - comunicazione tramite istruzioni
5.3 Panoramica della programmazione USS
Istruzioni USS
Applicazione
Istruzione
Descrizione
Scambio dati tra CPU,
modulo di comunicazione e azionamento USS
USS_Port_Scan
(Pagina 165)
L'istruzione USS_Port_Scanconsente di comunicare con max. 16 drive
tramite un modulo di comunicazione e una rete USS (deve essere richiamata ciclicamente).
L'istruzione USS_Port_Scan controlla la comunicazione tra la CPU e gli
azionamenti attraverso la porta di comunicazione PtP. A ogni richiamo di
questa funzione viene elaborata una comunicazione con un azionamento. L'istruzione USS_Port_Scan deve essere utilizzata una sola volta.
Poiché la maggior parte degli azionamenti dispone di una funzione interna parametrizzabile che controlla l'integrità della comunicazione mediante un timeout, l'istruzione USS_Port_Scandeve essere richiamata da un
OB comandato a tempo.
Scambio dati con l'azionamento USS
USS_Drive_Control
(Pagina 168)
L'istruzione USS_Drive_Controlconsente di preparare i dati di trasmissione per un azionamento e di visualizzare i dati di ricezione.
Gli ingressi e le uscite dell'istruzione corrispondono agli stati e alle funzioni di comando dell'azionamento. L'istruzione USS_Drive_Controldeve
essere richiamata una volta per ogni azionamento. È necessario un unico DB di istanza comune per tutti i richiami dell'istruzione
USS_Drive_Control relativi a una rete USS. Interconnettere allo stesso
DB di istanza tutti i richiami dell'istruzione USS_Drive_Control per una
rete USS.
L'istruzione USS_Drive_Control deve essere richiamata dal Main (OB1)
ciclico del programma principale.
Lettura o modifica dei
parametri nell'azionamento USS
USS_Read_Param
(Pagina 173)
L'istruzione USS_Read_Param consente di leggere parametri dall'azionamento.
Con l'istruzione USS_Read_Paramsi leggono i parametri di esercizio
dell'azionamento che comandano le funzioni interne dell'azionamento.
L'istruzione USS_Read_Param deve essere richiamata dal Main (OB1)
ciclico del programma principale.
USS_Write_Param
(Pagina 175)
L'istruzione USS_Write_Param consente di modificare parametri nell'azionamento.
L'istruzione deve essere richiamata dal USS_Write_Param ciclico (OB1)
del programma principale.
CM PtP - Configurazioni di accoppiamenti punto a punto
66
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.3 Panoramica della programmazione USS
Procedura di configurazione della comunicazione USS
Presupposto: La configurazione e la parametrizzazione di una CPU e di un modulo di
comunicazione effettuate nella vista dispositivi e nella finestra delle proprietà del modulo di
comunicazione sono terminate.
1. Nella navigazione del progetto selezionare per la CPU la cartella "Blocchi di programma"
in cui aprire con un doppio clic l'OB comandato a tempo desiderato. Si apre l'editor di
programma.
2. Nella task card "Istruzioni", area "Comunicazione" selezionare l'istruzione
USS_Port_Scan e trascinarla per drag & drop in una rete dell'OB comandato a tempo.
L'istruzione USS_Port_Scan consente la comunicazione attraverso la rete USS.
3. Nella navigazione del progetto selezionare per la CPU la cartella "Blocchi di programma"
in cui aprire l'Main (OB1) con un doppio clic. Si apre l'editor di programma.
4. Nella task card "Istruzioni", area "Comunicazione" selezionare le istruzioni per la
comunicazione USS in funzione del compito e trascinarle per drag & drop in una rete del
Main (OB1).
– L'istruzione USS_Drive_Control consente lo scambio di dati con l'azionamento.
– L'istruzione USS_Read_Param consente la lettura dei parametri dell'azionamento.
– L'istruzione USS_Write_Param consente la modifica dei parametri dell'azionamento.
5. Parametrizzare le istruzioni in base alle preimpostazioni effettuate.
6. Caricare la configurazione hardware e il programma utente nella CPU.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
67
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4
Istruzioni
5.4.1
Punto a punto
5.4.1.1
Panoramica della comunicazione Freeport
STEP 7 offre funzioni avanzate con le quali è possibile realizzare la comunicazione Freeport
attraverso un protocollo predefinito nel programma utente. Queste istruzioni si suddividono
in due categorie:
● Istruzioni di configurazione
● Istruzioni di comunicazione
Nota
Limiti di configurazione della CPU
Le istruzioni Freeport comunicano con i moduli di comunicazione attraverso la lettura o la
scrittura di set di dati.
Per l'uso delle istruzioni perciò è necessario attenersi ai limiti di configurazione della CPU in
uso per la lettura e la scrittura dei set di dati.
Se diverse istruzioni devono leggere o scrivere contemporaneamente dei set di dati su una
CPU, il programma utente deve eventualmente richiamarle consecutivamente.
Istruzioni di configurazione
Prima che il programma utente possa avviare la comunicazione Freeport è necessario
configurare l'interfaccia di comunicazione e i parametri per la trasmissione e la ricezione dei
dati.
L'interfaccia e i dati si possono configurare per ciascun CM nella configurazione dispositivi o
con le seguenti istruzioni del programma utente:
● Port_Config (Pagina 74)
● Send_Config (Pagina 77)
● Receive_Config (Pagina 79)
● P3964_Config (Pagina 85)
CM PtP - Configurazioni di accoppiamenti punto a punto
68
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
ATTENZIONE
Configurazione dispositivo <-> istruzioni di configurazione
Con ogni Power On della CPU (ripristino della tensione) i parametri della configurazione del
dispositivo vengono trasferiti al CM.
I parametri delle istruzioni di configurazione vengono trasferiti al CM in base al programma
utente.
I parametri della configurazione del dispositivo non sono sincronizzati con quelli delle
istruzioni della configurazione, in altri termini i parametri delle istruzioni di configurazione
non vengono applicati alla configurazione del dispositivo della CPU.
Attraverso il programma utente è possibile decidere quando e quali parametri devono
essere attivi nel CM.
Istruzioni di comunicazione
Con le istruzioni per la comunicazione Freeport il programma utente può inviare dati alle
interfacce di comunicazione e ricevere dati da queste ultime. I CM inviano e ricevono dati
ai/dai nodi della comunicazione.
● Send_P2P (Pagina 87)
● Receive_P2P (Pagina 91)
Nota
Coerenza dei dati
• Per trasmettere i dati mantenendone la coerenza non è consentito modificarli con
l'istruzione Send_P2P tra il fronte di salita del parametro REQ e l'impostazione di DONE.
• Per leggere i dati di ricezione in modo coerente, i dati devono essere analizzati solo nel
ciclo in cui NDR = TRUE.
Con ulteriori istruzioni è possibile resettare il buffer di ricezione e interrogare e impostare
speciali segnali RS232.
● Receive_Reset (Pagina 93)
● Signal_Get (Pagina 94)
● Signal_Set (Pagina 96)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
69
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Con le seguenti istruzioni è possibile leggere o scrivere funzioni avanzate, se supportate dal
modulo.
● Get_Features (Pagina 98)
● Set_Features (Pagina 99)
Tutte le istruzioni Freeport sono asincrone. Le istruzioni perciò devono essere richiamate
finché il parametro di uscita DONE non indica che l'esecuzione è completata.
Con l'aiuto di un'architettura di interrogazione il programma utente può rilevare lo stato della
trasmissione e della ricezione. Send_P2P e Receive_P2P possono essere eseguite
contemporaneamente. I moduli di comunicazione salvano temporaneamente i dati di
trasmissione e ricezione secondo necessità fino a una dimensione max. del buffer specifica
del modulo.
Nota
Risoluzione in bit time
Per diversi parametri nella velocità di trasmissione dati configurata viene indicato il numero
di bit time. Indicare il parametro in bit time permette di avere un parametro indipendente
dalla velocità di trasmissione dati. Tutti i parametri con l'unità in bit time si possono indicare
con un numero max. di 65535.
CM PtP - Configurazioni di accoppiamenti punto a punto
70
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.2
Utilizzo delle istruzioni
Le istruzioni Freeport devono essere richiamate ciclicamente per rilevare la presenza di dati
ricevuti o la fine della trasmissione.
A seconda della quantità di dati, la trasmissione può richiedere diversi richiami (cicli di
programma).
Se l'ordine è stato eseguito con DONE = TRUE o NDR = TRUE significa che è stato
eseguito senza errori.
Nota
Salvataggio di STATUS
I parametri DONE, NDR, ERROR e STATUS sono presenti solo per un ciclo di blocco. Per
visualizzare STATUS è perciò necessario copiarlo in un'area dati libera.
master
Tipica sequenza per un master:
1. L'istruzione Send_P2P determina una trasmissione al CM.
La trasmissione dati viene avviata con un fronte di salita nell'ingresso REQ.
2. L'istruzione Send_P2P viene eseguita in cicli consecutivi per interrogare lo stato della
trasmissione.
3. Se l'istruzione Send_P2P segnala la fine della trasmissione nell'uscita DONE, il codice
utente può preparare la ricezione della risposta.
4. L'istruzione Receive_P2P viene eseguita ripetutamente per verificare la presenza di una
risposta. Se il CM ha rilevato i dati di risposta l'istruzione Receive_P2P copia la risposta
nella CPU e segnala nell'uscita NDR che sono stati ricevuti nuovi dati.
5. Il programma utente può elaborare la risposta.
6. Ritorno al passo 1 e ripetizione della sequenza.
slave
Tipica sequenza per uno slave:
1. Il programma utente esegue l'istruzione Receive_P2P in ogni ciclo.
2. Se il CM ha ricevuto una richiesta, l'istruzione Receive_P2P segnala nell'uscita NDR che
sono pronti nuovi dati e la richiesta viene copiata nella CPU.
3. Il programma utente elabora la richiesta e genera una risposta.
4. Con l'istruzione Send_P2P viene reinviata la risposta al master.
5. L'istruzione Send_P2P deve essere eseguita ripetutamente per garantire che la
trasmissione abbia luogo.
6. Ritorno al passo 1 e ripetizione della sequenza.
Lo slave deve far sì che l'istruzione Receive_P2P venga richiamata un numero di volte
sufficiente da poter ricevere una trasmissione dal master prima che questo interrompa
l'operazione perché scade il timeout nell'attesa di una risposta. A questo scopo il programma
utente può richiamare Receive_P2P da un OB di ciclo il cui tempo di ciclo sia
sufficientemente breve per ricevere una trasmissione dal master prima che scada il timeout
impostato. Se il tempo di ciclo impostato per l'OB è tale da consentire due esecuzioni entro il
timeout impostato del master il programma utente può ricevere tutte le trasmissioni senza
perdite di dati.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
71
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.3
Tabella 5- 1
Parametri comuni per operazioni Freeport
Parametri di ingresso comuni delle istruzioni Freeport
Parametri
Descrizione
REQ
La trasmissione dati viene avviata con un fronte di salita sull'ingresso REQ. Un ulteriore fronte di
salita su REQ può essere creato solo una volta terminato l'ordine (DONE o ERROR). A seconda
della quantità dei dati, una trasmissione può richiedere diversi richiami (cicli di programma).
Se si inserisce un'istruzione Freeport nel programma, STEP 7 chiederà di indicare il DB di istanza (o di far creare a STEP 7 un opportuno DB di istanza). Utilizzare un DB univoco per ogni richiamo di un'istruzione PtP.
PORT
Un indirizzo di porta viene assegnato durante la configurazione del modulo di comunicazione. Il
parametro PORT comunica all'istruzione l'assegnazione a un determinato modulo di comunicazione.
Dopo la configurazione è possibile selezionare un nome simbolico per la porta standard. Il valore
della porta CM assegnata è la proprietà "ID hardware" della configurazione del dispositivo
nell'S7-1200/1500 o l'"Indirizzo di ingresso" nell'S7-300/400. Il nome simbolico della porta viene
assegnato nella tabella dei simboli.
I parametri di uscita DONE, NDR, ERROR e STATUS delle istruzioni Freeport indicano lo
stato di esecuzione delle funzioni Freeport.
Tabella 5- 2
Parametri di uscita DONE, NDR, ERROR e STATUS
Parametri
Tipo di dati
Standard
Descrizione
DONE
Bool
FALSE
Viene impostato su TRUE per la durata di un ciclo per indicare che
l'ultima richiesta si è conclusa senza errori; altrimenti è FALSE.
NDR
Bool
FALSE
Viene impostato su TRUE per la durata di un ciclo per indicare che
sono stati ricevuti nuovi dati; altrimenti è FALSE.
ERROR
Bool
FALSE
Viene impostato su TRUE per la durata di un ciclo per indicare che
l'ultima richiesta si è conclusa con errori; il codice di errore corrispondente si trova in STATUS; altrimenti è FALSE.
STATUS
Word
16#0000 o
16#7000
Stato risultante:
•
Se è stato impostato il bit DONE o NDR, STATUS viene impostato su 0/16#7000 oppure su un codice di errore specifico.
•
Se viene impostato il bit ERROR, su STATUS viene visualizzato un codice di errore.
Se non viene impostato nessuno di questi bit l'istruzione può
restituire stati che descrivono lo stato attuale della funzione.
Il valore in STATUS è valido fino al richiamo successivo di questa
istruzione (con un unico indirizzo di porta).
•
CM PtP - Configurazioni di accoppiamenti punto a punto
72
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Tabella 5- 3
Parametro di transito COM_RST
Parametri
Tipo di dati
Standard
Descrizione
COM_RST
Bool
FALSE
Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. Quindi COM_RST viene
reimpostato su FALSE.
Avvertenza: COM_RST deve essere impostato su TRUE all'avviamento e successivamente non deve più essere modificato,
ovvero al richiamo dell'istruzione non deve essere assegnato
nessun valore. Dopo l'inizializzazione del DB di istanza COM_RST
viene resettato dall'istruzione.
Nota
Osservare che i parametri DONE, NDR, ERROR e STATUS sono impostati solo per la
durata di un ciclo.
Tabella 5- 4
Codici di errore comuni
Codice di errore
Descrizione
16#0000
Nessun errore
16#7000
Funzione non attiva
16#7001
Primo richiamo dopo l'avvio di una richiesta.
16#7002
Richiamo successivo dopo l'avvio di una richiesta.
16#8x3A
Puntatore non consentito nel parametro x
Tabella 5- 5
Classi di errore comuni del parametro STATUS
Descrizione della classe
Classi di errore
Descrizione
Configurazione della porta
16#81Ax
Per la descrizione di errori frequenti nella configurazione dell'interfaccia
Configurazione della trasmissione
16#81Bx
Per la descrizione di errori nella configurazione della trasmissione
Configurazione della ricezione
16#81Cx
Per la descrizione di errori nella configurazione della ricezione
Invio
16#81Dx
Per la descrizione di errori di runtime durante la trasmissione
Ricezione
16#81Ex
Per la descrizione di errori di runtime durante la ricezione
Segnali addizionali dell'RS232
16#81Fx
Per la descrizione di errori collegati all'elaborazione del segnale
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
73
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.4
Port_Config: Progetta porta di comunicazione PtP
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Port_Config (configurazione della porta) è possibile modificare dal proprio
programma i parametri come la velocità di trasmissione dati. I dati presenti nel CM vengono
cancellati con l'esecuzione di Port_Config.
Le modifiche della configurazione di Port_Config non vengono salvate nella CPU bensì sul
CM. Al ripristino della tensione il CM viene parametrizzato con i dati contenuti nella
configurazione del dispositivo.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
PROTOCOL
IN
Tipo di dati
S71200/1500
S7300/400/
WinAC
Bool
PORT
(UInt)
UInt
Word
Word
Preassegnazione
Descrizione
FALSE
Avvia la trasmissione dei dati al CM in seguito a un
fronte di salita su questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
0
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della
configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso assegnato in HWCN viene assegnato al parametro PORT.
Protocollo
•
0 = protocollo Freeport
•
1 = protocollo 3964(R)
CM PtP - Configurazioni di accoppiamenti punto a punto
74
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
BAUD
PARITY
DATABITS
STOPBITS
FLOWCTRL
Dichiarazione
IN
IN
IN
IN
IN
Tipo di dati
S71200/1500
UInt
UInt
UInt
UInt
UInt
S7300/400/
WinAC
Word
Word
Word
Word
Word
Preassegnazione
Descrizione
6
Velocità di trasmissione dati della porta:
1
1
1
1
•
1 = 300 bit/s
•
2 = 600 bit/s
•
3 = 1200 bit/s
•
4 = 2400 bit/s
•
5 = 4800 bit/s
•
6 = 9600 bit/s
•
7 = 19200 bit/s
•
8 = 38400 bit/s
•
9 = 57600 bit/s
•
10 = 76800 bit/s
•
11 = 115200 bit/s
Parità della porta:
•
1 = nessuna parità
•
2 = parità pari
•
3 = parità dispari
•
4 = parità mark
•
5 = parità space
•
6 = qualsiasi
Bit per carattere:
•
1 = 8 bit di dati
•
2 = 7 bit di dati
Bit di stop:
•
1 = 1 bit di stop
•
2 = 2 bit di stop
Controllo di flusso:
•
1 = nessun controllo di flusso
•
2 = XON/XOFF
•
3 = hardware RTS sempre ON
•
4 = hardware RTS sempre attivato
•
5 = hardware RTS sempre ON, ignora DTR/DSR
XONCHAR
IN
Char
16#0011
Indica il carattere utilizzato per XON. Tipicamente si
tratta di un carattere DC1 (11H). Questo parametro
viene analizzato solo se il controllo del flusso software
è attivo.
XOFFCHAR
IN
Char
16#0013
Indica il carattere utilizzato per XOFF. Tipicamente si
tratta di un carattere DC3 (13H). Questo parametro
viene analizzato solo se il controllo del flusso software
è attivo.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
75
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
S7300/400/
WinAC
Preassegnazione
Descrizione
WAITIME
IN
UInt
Word
2000
Indica il tempo di attesa che deve trascorrere tra la
ricezione di un carattere XOFF e un carattere XON,
ovvero quanto tempo si deve attendere il segnale CTS
= ON dopo CTS = OFF (0 ... 65535 ms). Questo parametro viene analizzato solo se il controllo del flusso
è attivo.
MODE
IN
USInt
Byte
0
Modo di funzionamento
I modi di funzionamento consentiti sono:
LINE_PRE
BRK_DET
IN
USInt
IN
USInt
Byte
Byte
0
0
•
0 = fullduplex (RS232)
•
1 = fullduplex (RS 422) a quattro fili (punto a punto)
•
2 = fullduplex (RS422) funzionamento a quattro fili
(Master multipoint; CM PtP (ET 200SP))
•
3 = fullduplex (RS422) funzionamento a quattro fili
(Slave multipoint; CM PtP (ET 200SP))
•
4 = semiduplex (RS485) a 2 fili 1)
Preimpostazione della linea di ricezione
Le preimpostazioni consentite sono:
•
0 = "nessuna" preimpostazione 1)
•
1 = segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break):
con questa preimpostazione è possibile il riconoscimento break.
È disponibile solo nei seguenti casi: "Fullduplex
(RS422) funzionamento a quattro fili (Punto a punto)" e "Fullduplex (RS422) funzionamento a quattro
fili (Slave multipoint)".
•
2 = segnale R(A)=0V, segnale R(B)=5V:
questa preimpostazione corrisponde allo stato di
riposo (nessuna trasmissione attiva). Questa
preimpostazione non consente il riconoscimento
Break.
Riconoscimento Break
Sono consentiti:
•
0 = riconoscimento Break disattivato
•
1 = riconoscimento Break attivato
DONE
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima
richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima
richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore
(Pagina 100))
1)
Impostazione necessaria per l'uso di cavi PROFIBUS in CM 1241 per RS485
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
76
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.5
Send_Config: Progetta mittente PtP
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Send_Config (configurazione della trasmissione) è possibile modificare i
parametri di trasmissione dal programma utente durante il funzionamento (condizioni che
modificano l'inizio e la fine dei dati da inviare). I dati in coda in un CM vengono cancellati
quando viene eseguita Send_Config.
Le modifiche della configurazione di Send_Config non vengono salvate nella CPU bensì sul
CM. I parametri salvati nella configurazione del dispositivo vengono ripristinati al ritorno della
tensione della CPU o del modulo di comunicazione.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
RTSONDLY
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
UInt
Word
Word
Preassegnazione
Descrizione
FALSE
Attiva la modifica della configurazione in seguito a un
fronte di salita in questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
0
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della
configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso assegnato in HWCN viene assegnato al parametro PORT.
Numero di millisecondi di attesa tra l'attivazione di RTS
e l'avvio della trasmissione dei dati in invio. Questo
parametro è valido solo se è attivo il controllo del flusso
hardware. Il campo valido è compreso tra 0 e
65535 ms. Il valore 0 disattiva la funzione.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
77
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Preassegnazione
Descrizione
RTSOFFDLY
IN
UInt
Word
0
Numero di millisecondi di attesa tra la trasmissione dei
dati di trasmissione e la disattivazione di RTS. Questo
parametro è valido solo se è attivo il controllo del flusso
hardware. Il campo valido è compreso tra 0 e
65535 ms. Il valore 0 disattiva la funzione.
BREAK
IN
UInt
Word
0
Questo parametro indica che prima dell'avvio di ogni
telegramma viene inviato un BREAK per il numero di bit
time specificato. Sono possibili max. 65535 bit time. Il
valore 0 disattiva la funzione.
IDLELINE
IN
UInt
Word
0
Questo parametro indica che prima dell'inizio di ogni
telegramma la linea resta inattiva per il numero di bit
time specificato. Sono possibili max. 65535 bit time. Il
valore 0 disattiva la funzione.
USR_END
IN
STRING[2]
0
Immissione dei caratteri finali.
È possibile progettare al massimo 2 caratteri finali.
La trasmissione include i caratteri finali, indipendentemente dalla lunghezza del telegramma parametrizzata.
APP_END
IN
STRING[5]
0
Immissione caratteri da aggiungere.
Si possono aggiungere max. 5 caratteri.
DONE
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore
(Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
78
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.6
Receive_Config: Progetta destinatario PtP
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla
versione V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Receive_Config (configurazione della ricezione) è possibile modificare i
parametri di ricezione dal programma utente durante il funzionamento. Questa istruzione
configura le condizioni che indicano l'inizio e la fine dei dati ricevuti. I dati in coda in un CM
vengono cancellati quando viene eseguita Receive_Config.
Le modifiche della configurazione di Receive_Config salvate nel CM non sono a ritenzione. I
parametri salvati nella configurazione del dispositivo vengono ripristinati al ritorno della
tensione nella CPU o nel modulo di comunicazione. Si deve quindi richiamare di nuovo
l'istruzione Receive_Config dal programma utente quando torna la tensione nella CPU o nel
modulo di comunicazione, in modo da sovrascrivere nuovamente i parametri memorizzati
nella configurazione del dispositivo.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
RECEIVE_ IN
CONDITIO
NS
DONE
OUT
Tipo di dati
S71200/1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Variant
Word
Any
Bool
Preassegnazione
Descrizione
FALSE
Attiva la modifica della configurazione in seguito a un
fronte di salita in questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della
configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
-
La struttura dei dati di Receive_Conditions indica le
condizioni iniziali e finali in base alle quali riconoscere
l'inizio e la di fine di un telegramma.
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita senza errori
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
79
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
S7300/400/
WinAC
Preassegnazione
Descrizione
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
Condizioni di inizio per l'istruzione Receive_P2P
L'istruzione Receive_P2P utilizza la configurazione definita nella configurazione del
dispositivo o specificata dall'istruzione Receive_Config per determinare l'inizio e la fine dei
telegrammi nella comunicazione Freeport. L'inizio del telegramma è determinato dalle
condizioni iniziali. L'inizio del telegramma può essere determinato in base a una o più
condizioni iniziali.
Se sono attivati sia Break che Idle Line deve essere prima soddisfatta la condizione Break e
in aggiunta anche Idle Line. In seguito è sufficiente una delle condizioni ulteriori (caratteri
iniziali o sequenza di inizio) per avviare la trasmissione dei dati.
La condizione iniziale "Qualsiasi carattere" non può essere combinata con altre condizioni
iniziali.
CM PtP - Configurazioni di accoppiamenti punto a punto
80
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Struttura del tipo di dati del parametro Receive_Conditions, parte 1 (condizioni iniziali)
Tabella 5- 6
Struttura di Receive_Conditions per le condizioni iniziali
Parametri
Dichiarazione
Tipo di
dati
Preassegnazione
Descrizione
START.START
COND
IN
Word
16#0002
Indicazione della condizione iniziale
•
01H - Riconoscimento del carattere iniziale
•
02H - qualsiasi carattere
•
04H - Riconoscimento di un Line Break
•
08H - Riconoscimento di un Idle Line
•
10H - Riconoscimento della sequenza di inizio 1
•
20H - Riconoscimento della sequenza di inizio 2
•
40H - Riconoscimento della sequenza di inizio 3
• 80H - Riconoscimento della sequenza di inizio 4
Le condizioni iniziali si possono combinare sommando i valori.
START.IDLETI
ME
IN
Word
16#0028
Numero dei bit time necessari perché venga riconosciuto l'inizio di un telegramma quando la linea non è attiva (valore standard: W#16#28). Solo in combinazione con la condizione
"Dopo il riconoscimento di un Idle Line".
0 ... FFFF
START.START
CHAR
IN
Byte
16#0002
Carattere iniziale per la condizione "carattere iniziale". (Valore
standard: B#16#2)
START.SEQ[1].
CTL
IN
Byte
0
Sequenza di inizio 1, attiva/disattiva il confronto per ogni carattere: (Valore standard: B#16#0)
Si tratta dei bit di attivazione per ogni carattere della sequenza.
•
01H - carattere 1
•
02H - carattere 2
•
04H - carattere 3
•
08H - carattere 4
• 10H - carattere 5
Se viene disattivato un bit per un determinato carattere, significa che in questa posizione della stringa ogni carattere rappresenta una stringa iniziale valida (ad es. 1FH = tutti e 5 i
caratteri vengono interpretati).
START.SEQ[1].
STR[1] ..
START.SEQ[1].
STR.[5]
IN
Char[5]
0
Sequenza di inizio 1, caratteri iniziali (5 caratteri).
START.SEQ[2].
CTL
IN
Byte
0
Sequenza di inizio 2, attiva/disattiva il confronto per ogni carattere. Valore standard: B#16#0)
START.SEQ[2].
STR[1] ..
START.SEQ[2].
STR.[5]
IN
Char[5]
0
Sequenza di inizio 2, caratteri iniziali (5 caratteri).
START.SEQ[3].
CTL
IN
Byte
0
Sequenza di inizio 3, attiva/disattiva il confronto per ogni carattere. Valore standard: B#16#0
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
81
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di
dati
Preassegnazione
Descrizione
START.SEQ[3].
STR[1] ..
START.SEQ[3].
STR.[5]
IN
Char[5]
0
Sequenza di inizio 3, caratteri iniziali (5 caratteri).
START.SEQ[4].
CTL
IN
Byte
0
Sequenza di inizio 4, attiva/disattiva il confronto per ogni carattere. Valore standard: B#16#0
START.SEQ[4].
STR[1] ..
START.SEQ[4].
STR.[5]
IN
Char[5]
0
Sequenza di inizio 4, caratteri iniziali (5 caratteri).
Esempio
Si considerino i seguenti dati ricevuti in codice esadecimale: "68 10 aa 68 bb 10 aa 16". Le
sequenze di caratteri iniziali configurate sono riportate nella tabella sottostante. Le sequenze
di caratteri iniziali vengono analizzate dopo che è stato ricevuto senza errori il primo
carattere 68H. Dopo aver ricevuto correttamente il quarto carattere (il secondo 68H) la
condizione iniziale 1 è soddisfatta. Una volta soddisfatte le condizioni iniziali comincia la
valutazione delle condizioni finali.
L'elaborazione della sequenza di caratteri iniziali può essere interrotta in seguito a diversi
errori di parità, di framing o di ritardo intercarattere. In seguito a questi errori i dati non
vengono ricevuti perché non è soddisfatta la condizione iniziale (segue un messaggio di
errore).
Tabella 5- 7
Condizioni iniziali
Condizione iniziale
Primo carattere
Primo carattere +1 Primo carattere +2 Primo carattere +3 Primo carattere +4
1
68H
xx
xx
68H
xx
2
10H
aaH
xx
xx
xx
3
dcH
aaH
xx
xx
xx
4
e5H
xx
xx
xx
xx
Condizioni finali per l'istruzione Receive_P2P
Il telegramma termina la prima volta che si presentano una o più condizioni finali configurate.
Le condizioni finali si possono configurare nelle proprietà dell'interfaccia di comunicazione
nella configurazione del dispositivo o con l'istruzione Receive_Config. Al ripristino della
tensione della CPU o del modulo di comunicazione i parametri di ricezione (condizioni iniziali
e finali) vengono resettati alle impostazioni della configurazione del dispositivo. Se il
programma utente STEP 7 esegue Receive_Config le impostazioni vengono impostate ai
parametri di Receive_Config .
CM PtP - Configurazioni di accoppiamenti punto a punto
82
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Struttura del tipo di dati del parametro Receive_Conditions, parte 2 (condizioni finali)
Tabella 5- 8
Struttura di Receive_Conditions per le condizioni finali
Parametri
Dichiarazione
Tipo di
dati
Preassegnazione
Descrizione
END.ENDCOND
IN
Word
0
Questo parametro indica la condizione per la fine del telegramma:
•
01H - Time out di risposta
•
02H - Time out dei messaggi
•
04H - Tempo di ritardo di caratteri
•
08H - Lunghezza massima del telegramma
•
10H - Leggi lunghezza messaggio dal messaggio
(N+LEN+M)
•
20H - Sequenza di fine
•
40H - Lunghezza fissa del telegramma
END.FIXLEN
IN
Word
1
Lunghezza fissa del telegramma: viene utilizzato solo se è
stata selezionata la condizione finale "Lunghezza fissa".
1 ... 4000 byte (fino a 4 kByte in funzione del modulo)
END.MAXLEN
IN
Word
1
Lunghezza massima del telegramma: viene utilizzato solo se è
stata selezionata la condizione finale "Lunghezza massima del
telegramma".
1 ... 4000 byte (fino a 4 kByte in funzione del modulo)
END.N
IN
Word
0
Posizione del byte del campo della lunghezza nel telegramma.
Viene utilizzato solo con la condizione finale N+LEN+M.
1 ... 4000 byte (fino a 4 kByte in funzione del modulo)
END.LENGTHSIZE
IN
Word
0
Dimensioni del campo della lunghezza (1, 2 o 4 byte). Viene
utilizzato solo con la condizione finale N+LEN+M.
END.LENGTHM
IN
Word
0
Numero dei caratteri oltre il campo della lunghezza che non
sono compresi nel valore di tale campo. Questo dato viene
utilizzato solo con la condizione finale N+LEN+M. 0 ... 255
byte
END.RCVTIME
IN
Word
200
Specificare per quanto tempo è necessario attendere la ricezione del primo carattere dopo la trasmissione di un telegramma. Se non si riceve correttamente un carattere entro il tempo
specificato l'istruzione di ricezione si conclude con un messaggio di errore. Questa indicazione viene utilizzata solo se la
condizione è "Time out di risposta". (0 ... 65535 ms).
Avvertenza: Questo parametro non può essere adottato come
criterio finale esclusivo, ma va combinato almeno con un'altra
condizione finale.
END.MSGTIME
IN
Word
200
Indicare quanto tempo è necessario attendere tra la ricezione
del primo carattere e la ricezione del telegramma completo.
Questo parametro viene utilizzato solo se la condizione selezionata è "Time out dei messaggi". (0 ... 65535 ms)
END.CHARGAP
IN
Word
12
Indicare il numero max. di bit time tra i caratteri. Se il numero
dei bit time tra i caratteri supera il valore specificato la condizione finale è soddisfatta. Questa indicazione viene utilizzata
solo se la condizione è "Tempo di ritardo del carattere". (0 ...
65535 bit time)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
83
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di
dati
Preassegnazione
Descrizione
END.SEQ.CTL
IN
Byte
0
Sequenza di caratteri 1, attiva/disattiva il confronto per ogni
carattere:
Si tratta dei bit di attivazione per ogni carattere della sequenza
di caratteri finali. Il carattere 1 è il bit 0, il carattere 2 è il bit 1,
..., il carattere 5 è il bit 4. Se si disattiva un bit per un determinato carattere significa che qualsiasi carattere è adatto in questa posizione della sequenza.
END.SEQ.STR[1] ..
END.SEQ.STR[5]
Tabella 5- 9
IN
Char[5]
0
Sequenza di caratteri 1, caratteri iniziali (5 caratteri)
Parametri generali dell'istruzione Receive_P2P
Parametri
Dichia- Tipo di
razio- dati
ne
Preassegnazione
Descrizione
GENERAL.MBUF_SIZE
IN
Byte
255
Permette di inserire il numero dei telegrammi che devono
essere bufferizzati nel buffer di ricezione del CM.
Se non sono attive altre condizioni che influenzano il comportamento del buffer di ricezione (Impedisci sovrascrittura, Controllo del flusso dei dati), tutti gli ulteriori telegrammi vengono
respinti al raggiungimento del valore limite. (1 ... 255 telegrammi)
GENERAL.OW_PROT
IN
Byte
0
Attiva la "non sovrascrittura" del telegramma bufferizzato
quando il CM riceve un nuovo telegramma e il buffer di ricezione del CM non è ancora stato letto. In questo modo si evita
che telegrammi di ricezione già bufferizzati possano andare
persi.
GENERAL.CLR_MBUF
IN
Byte
0
•
0 - non attivato
•
1 - attivato
Attiva la cancellazione del buffer di ricezione all'avviamento
della CPU.
Se questo parametro è attivato il buffer di ricezione viene cancellato automaticamente al passaggio della CPU da STOP a
RUN. Nel buffer di ricezione si troveranno solo i telegrammi
ricevuti dopo l'avviamento della CPU.
•
0 - non attivato
•
1 - attivato
CM PtP - Configurazioni di accoppiamenti punto a punto
84
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.7
P3964_Config: Progettazione del protocollo 3964(R)
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione P3964_Config (configurazione del protocollo) consente di modificare dal
programma utente i parametri del protocollo 3964(R) come tempo di ritardo intercarattere,
priorità e verifica blocco.
Le modifiche della configurazione di P3964_Config non vengono salvate nella CPU bensì sul
CM. I parametri salvati nella configurazione del dispositivo vengono ripristinati al ritorno della
tensione della CPU o del modulo di comunicazione.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
BCC
Priority
IN
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
USInt
USInt
Word
Byte
Byte
Preassegnazione
Descrizione
FALSE
Avvia l'istruzione in seguito a un fronte di salita in
questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
1
1
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato
nella scheda "Costanti di sistema" della tabella
delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della
configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso assegnato in HWCN viene assegnato al
parametro PORT.
Attiva/disattiva l'utilizzo della verifica blocco
•
0 = senza verifica blocco
•
1 = con verifica blocco
Impostazione della priorità
•
0 = priorità bassa
•
1 = priorità alta
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
85
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
CharacterDelayTime
Dichiarazione
IN
Tipo di dati
S71200/
1500
UInt
S7300/400/
WinAC
Word
Preassegnazione
Descrizione
16#00DC
Impostazione del tempo di ritardo carattere (in funzione della velocità di trasmissione impostata) (valore standard: 220 ms).
1 ... 65535 ms
AcknDelayTime IN
UInt
Word
16#07D0
Impostazione del tempo di ritardo conferma (in funzione della velocità di trasmissione impostata) (valore standard: 2000 ms).
BuildupAttempts
IN
SInt
Byte
16#0006
Impostazione del numero di tentativi di collegamento
(valore predefinito: 6 tentativi di collegamento)
1 ... 255
RepetitionAttempts
IN
USInt
Byte
16#0006
Impostazione del numero di tentativi di trasmissione
(valore predefinito: 6 tentativi di collegamento)
1 ... 255
DONE
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima
richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima
richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
1 ... 65535 ms
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
86
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.8
Send_P2P: Invia dati
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Send_P2P (invio di dati punto a punto) avvia la trasmissione dei dati e
trasferisce al modulo di comunicazione il contenuto del buffer assegnato. Mentre il CM invia i
dati alla velocità di trasmissione, l'esecuzione del programma della CPU prosegue. Può
essere presente solo un'istruzione di trasmissione per modulo di comunicazione. Il CM
segnala un errore se viene eseguita una seconda istruzione Send_P2P mentre il CM sta già
inviando un telegramma.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Word
Preassegnazione
Descrizione
FALSE
Avvia la trasmissione dei dati al CM in seguito a un fronte
di salita su questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
87
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
BUFFER
Dichiarazione
IN
Tipo di dati
S71200/
1500
Variant
S7300/400/
WinAC
Any
Preassegnazione
Descrizione
0
Questo parametro indica l'area di memoria del buffer di
trasmissione.
Note:
•
i dati o i campi booleani non vengono supportati.
•
Se il buffer di trasmissione si trova nell'area di memoria ottimizzata, la lunghezza max. consentita dei dati
inviati ammonta a 1024 byte.
Eccezione: Gli array di byte, Word o DWord vengono
supportati fino ad una lunghezza di 4096 byte.
Se il buffer di trasmissione è uno String o WString, il
contenuto dello string viene trasmesso senza la lunghezza max attuale.
Per ulteriori informazioni consultare la sezione "Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di
comunicazione (Pagina 90)"
•
LENGTH
IN
UInt
Word
0
Lunghezza dei dati da trasferire in byte.
Con LENGTH = 0 l'area di memoria indirizzata nel parametro BUFFER viene trasmessa per intero.
Per ulteriori informazioni consultare la sezione "Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di
comunicazione (Pagina 90)"
COM_RST IN/OUT
---
Bool
FALSE
Inizializzazione dell'istruzione Send_P2P
Con 1 l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a 0 dall'istruzione.
DONE
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
88
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Quando è in corso un'istruzione di trasmissione le uscite DONE e ERROR hanno lo stato
FALSE. Al termine dell'istruzione di trasmissione una delle uscite DONE o ERROR viene
impostata a TRUE per segnalare lo stato dell'istruzione. Se ERROR ha lo stato TRUE il
codice di errore nell'uscita STATUS può essere analizzato.
L'istruzione restituisce lo stato 16#7001 se l'interfaccia di comunicazione accetta i dati di
trasmissione. Le successive esecuzioni di Send_P2P restituiscono il valore 16#7002 se il
CM sta ancora trasmettendo. Al termine dell'istruzione di trasmissione il CM restituisce lo
stato 16#0000 per l'istruzione (se non si sono verificati errori). Le successive esecuzioni di
Send_P2P con REQ = 0 restituiscono lo stato 16#7000 (non occupato).
Il diagramma seguente mostra la relazione tra i valori di uscita e REQ. Si presuppone che
l'istruzione venga richiamata ciclicamente per controllare lo stato della trasmissione
(rappresentato dai valori di STATUS).
La figura seguente mostra che i parametri DONE e STATUS sono validi solo per un ciclo se
sulla linea REQ è presente un impulso (per la durata di un ciclo) per avviare l'istruzione di
trasmissione.
La figura seguente mostra la relazione dei parametri DONE, ERROR e STATUS in caso di
errore.
I valori DONE, ERROR e STATUS sono validi solo finché Send_P2P viene eseguito
nuovamente con lo stesso DB di istanza.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
89
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.9
Utilizzo dei parametri BUFFER e LENGTH nelle operazioni di comunicazione
Utilizzo dei parametri BUFFER e LENGTH per Send_P2P
Le dimensioni minime dei dati che l'istruzione Send_P2P può inviare sono di un byte.
Il parametro BUFFER definisce le dimensioni dei dati da inviare se al momento del richiamo
nel parametro LENTH viene trasmesso uno "0". L'indicazione di una variabile è sufficiente.
Per il parametro BUFFER non è possibile utilizzare né il tipo di dati Bool né array del tipo
Bool. In caso di trasmissione di grandi quantità di dati, si raccomanda la riproduzione nei tipi
di dati Array o nella struttura.
Tabella 5- 10 Parametro BUFFER
BUFFER
Descrizione
Tipo di dati semplici
Per la trasmissione vale quanto segue: il valore LENGTH deve contenere il numero di byte di questo tipo di dati.
Esempio: se il valore è Word, LENGTH deve essere due. Se il valore è DWord o Real, LENGTH
deve essere quattro.
Struttura
Per la memoria ottimizzata vale quanto segue: la lunghezza max. consentita di BUFFER è 1024
Byte; diversamente sono ammessi fino a 4 kByte in funzione del modulo.
Per la trasmissione vale quanto segue: il valore LENGTH può contenere un numero di byte inferiore alla lunghezza complessiva della struttura in byte, nel qual caso vengono inviati solo i primi byte
LENGTH della struttura.
Array
Per la memoria ottimizzata vale quanto segue: Se il tipo di dati dell'array è diverso da Byte, Word o
DWord la lunghezza max. consentita del buffer è 1024 Byte. Se la memoria non è ottimizzata, si
possono trasferire fino a 4 kByte in funzione del modulo, indipendentemente dalla struttura dei dati.
Per la trasmissione vale quanto segue: il valore LENGTH può contenere un numero di byte inferiore alla lunghezza complessiva dell'array in byte e deve essere un multiplo del numero di byte
dell'elemento dati. Esempio: il parametro LENGTH di un array del tipo Word deve essere un multiplo di due e un multiplo di quattro se l'array è del tipo Real.
Quando si specifica LENGTH viene trasferito il numero degli elementi array. Ad esempio, se
BUFFER contiene un array con 15 elementi DWord (in totale 60 Bytes) e si specifica LENGTH =
20, vengono trasferiti i primi cinque elementi DWord dell'array.
String
Il parametro LENGTH contiene il numero dei caratteri da trasmettere. Vengono trasferiti solo i
caratteri di String. I byte con la lunghezza max. e la lunghezza effettiva di String non vengono
inviati.
Tabella 5- 11 Parametri LENGTH
LENGTH
=0
Descrizione
Viene trasferito l'intero contenuto dell'area di memoria specificata in BUFFER.
Se BUFFER indica una stringa, viene trasferito l'intero contenuto della stringa senza i byte con la
lunghezza max. ed effettiva.
>0
Il contenuto viene trasferito fino alla lunghezza parametrizzata dell'area di memoria specificata
tramite BUFFER.
CM PtP - Configurazioni di accoppiamenti punto a punto
90
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.10
Receive_P2P: Ricevi dati
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Receive_P2P (ricezione dei dati tramite comunicazione punto a punto) controlla i
telegrammi ricevuti nel CM. Quando è presente un telegramma, il CM lo trasmette alla CPU.
Gli errori di ricezione vengono visualizzati nel parametro STATUS.
Parametri
Parametri
Dichiarazione
PORT
IN
Tipo di dati
S71200/150
0
PORT
(UInt)
S7300/400/
WinAC
Word
Preassegnazione
Descrizione
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
91
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
BUFFER
IN
Tipo di dati
S71200/150
0
Variant
S7300/400/
WinAC
Any
Preassegnazione
Descrizione
0
Questo parametro indica l'indirizzo iniziale del buffer di
ricezione. Questo buffer deve essere sufficiente per
ricevere la lunghezza max. del telegramma.
Nota:
•
I dati o i campi booleani non sono supportati.
•
Se il buffer di ricezione si trova nell'area di memoria
ottimizzata, la lunghezza max. consentita dei dati ricevuti ammonta a 1024 byte.
Eccezione: Gli array di byte, Word o DWord vengono
supportati fino ad una lunghezza di 4096 byte.
Se il buffer di ricezione è uno String o WString, i dati
ricevuti vengono scritti nel contenuto dello string e la
lunghezza attuale di quest'ultimo viene impostata di
conseguenza.
Per ulteriori informazioni consultare la sezione"Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di
comunicazione (Pagina 90)"
•
LENGTH
OUT
UInt
Word
0
Lunghezza del telegramma ricevuto in byte
Per ulteriori informazioni consultare la sezione"Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di
comunicazione (Pagina 90)"
NDR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo se sono pronti nuovi
dati e l'istruzione si è conclusa senza errori.
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'istruzione si
è conclusa con errori.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
Se ERROR ha lo stato TRUE il codice di errore nell'uscita STATUS può essere analizzato. Il
valore STATUS indica la causa della fine della ricezione nel CM.
In genere è un valore positivo che indica che la ricezione è riuscita e quale criterio di fine del
telegramma è stato riconosciuto.
Se il valore di STATUS è negativo (il bit più significativo del valore esadecimale è impostato)
la ricezione è stata interrotta a causa di una condizione di errore, ad es. di parità, framing o
overflow.
Ogni modulo di comunicazione può bufferizzare un numero di telegrammi specifico del
modulo. Se nel CM sono disponibili diversi telegrammi, l'istruzione Receive_P2P emette il
telegramma disponibile meno recente (FIFO).
CM PtP - Configurazioni di accoppiamenti punto a punto
92
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.11
Receive_Reset: Cancella buffer di ricezione
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Receive_Reset (reset del destinatario) cancella il buffer di ricezione nel CM.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Word
Preassegnazione
Descrizione
FALSE
Avvia la trasmissione dei dati al CM in seguito a un fronte
di salita su questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
DONE
OUT
Bool
FALSE
Se è TRUE per la durata di un ciclo significa che l'ultima
richiesta è stata eseguita senza errori.
ERROR
OUT
Bool
FALSE
TRUE significa che l'ultima richiesta è stata eseguita con
errori. Se questa uscita è TRUE l'uscita STATUS contiene i rispettivi codici di errore.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
93
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.12
Signal_Get: Leggi stato
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Signal_Get (richiamo dei segnali RS232) legge gli stati attuali dei segnali
addizionali RS232 e li visualizza nelle rispettive uscite dell'istruzione.
Nota
Limitazione
• Quest'istruzione è utilizzabile solo con i CM RS232 BA e RS232 HF.
• Se nel modo di funzionamento è impostato RS232C, quest'istruzione può essere
utilizzata anche nel CM PtP (ET200SP).
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Word
Preassegnazione
Descrizione
FALSE
Avvia la trasmissione dei dati al CM in seguito a un fronte di salita su questo ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
NDR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo se i segnali addizionali
RS232 sono stati letti e l'istruzione si è conclusa senza
errori.
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'istruzione si
è conclusa con errori.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
CM PtP - Configurazioni di accoppiamenti punto a punto
94
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Preassegnazione
Descrizione
DTR
OUT
Bool
FALSE
Dispositivo dati pronto, modulo pronto (uscita)
DSR
OUT
Bool
FALSE
Dispositivo dati pronto, partner della comunicazione
pronto (ingresso)
RTS
OUT
Bool
FALSE
Richiesta di trasmissione, modulo pronto alla trasmissione (uscita)
CTS
OUT
Bool
FALSE
Comunicazione pronta, il partner della comunicazione
può ricevere dati (ingresso)
DCD
OUT
Bool
FALSE
Segnale del supporto dati rilevato, livello del segnale
ricevuto
RING
OUT
Bool
FALSE
Indicatore di chiamata, segnalazione di una chiamata in
arrivo
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
95
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.13
Signal_Set: Imposta segnali addizionali
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Signal_Set (impostazione dei segnali RS232) consente di impostare i segnali di
comunicazione RS232.
Nota
Limitazioni
• Quest'istruzione è utilizzabile solo con i CM RS232 BA e RS232 HF.
• Se nel modo di funzionamento è impostato RS232C, quest'istruzione può essere
utilizzata anche nel CM PtP (ET200SP).
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
SIGNAL
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Word
Byte
Preassegnazione
Descrizione
FALSE
Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
0
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
Selezione del segnale da impostare (sono ammessi più
segnali):
•
01H = RTS
•
02H = DTR
•
04H = DSR (vale solo per il tipo di interfaccia DCE)
CM PtP - Configurazioni di accoppiamenti punto a punto
96
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
RTS
Dichiarazione
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
Preassegnazione
Descrizione
FALSE
Richiesta di trasmissione, modulo pronto alla trasmissione
Imposta questo valore nell'uscita (TRUE o FALSE), valore standard: FALSE
DTR
IN
Bool
FALSE
Terminale dati pronto, modulo pronto
Imposta questo valore nell'uscita (TRUE o FALSE), valore standard: FALSE
DSR
IN
Bool
FALSE
Terminale dati pronto (vale solo per il tipo di interfaccia
DCE), non utilizzato.
DONE
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita con errori
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
97
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.14
Get_Features: Preleva funzioni avanzate
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Get_Features (prelievo di funzioni avanzate) è possibile richiamare
informazioni sulle funzioni di supporto del CRC e la generazione dei messaggi di diagnostica
- se supportate dal modulo.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
Tipo di dati
S71200/
1500
S7300/400/
WinAC
Bool
PORT
Word
Preassegnazione
Descrizione
FALSE
Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
NDR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo se sono pronti nuovi
dati e l'istruzione si è conclusa senza errori.
MODBUS_
CRC
OUT
Bool
FALSE
Supporto CRC Modbus
DIAG_ALA
RM
OUT
Bool
FALSE
Generazione di messaggi di diagnostica
SUPPLY_V
OLT
OUT
Bool
FALSE
Diagnostica Tensione di alimentazione mancante L+
disponibile
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'istruzione si
è conclusa con errori.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
98
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.15
Set_Features: Imposta funzioni avanzate
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla
versione V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Set_Features (selezione di funzioni avanzate) è possibile attivare la funzione
di supporto CRC e la generazione di messaggi di diagnostica - se supportate dal modulo.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
Tipo di dati
S71200/1500
S7300/400/
WinAC
Bool
PORT
(UInt)
Word
Preassegnazione
Descrizione
FALSE
L'istruzione per l'impostazione di funzioni avanzate
viene avviata in seguito a un fronte di salita in questo
ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella scheda "Costanti di sistema" della tabella delle
variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della
configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso assegnato in HWCN viene assegnato al
parametro PORT.
EN_MODBUS
_CRC
IN
Bool
FALSE
Attiva il supporto CRC Modbus
EN_DIAG_AL
ARM
IN
Bool
FALSE
Attiva la generazione di messaggi di diagnostica
EN_SUPPLY_
VOLT
IN
Bool
FALSE
Attivazione della diagnostica Tensione di alimentazione mancante L+
DONE
OUT
Bool
FALSE
È TRUE per la durata di un'esecuzione dopo che
l'ultima richiesta è stata eseguita senza errori
ERROR
OUT
Bool
FALSE
È TRUE per la durata di un ciclo dopo che l'istruzione
si è conclusa con errori.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore
(Pagina 100))
Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 72)".
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
99
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.1.16
Messaggi di errore
Panoramica dei messaggi di errore PtP
I messaggi di errore vengono messi a disposizione nell'uscita STATUS di un'istruzione e
possono essere valutati lì o elaborati nel programma utente.
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Stato di RECEIVE e codici di errore
16#0094
Fine del telegramma riconosciuta dalla "ricezione di
una lunghezza fissa/massima del telegramma"
-
16#0095
Fine del telegramma riconosciuta dal "Time out dei
messaggi"
-
16#0096
Fine del telegramma riconosciuta dallo scadere del
"Tempo di ritardo del carattere"
-
16#0097
Il telegramma è stato interrotto poiché è stato raggiunto il tempo di risposta massimo.
-
16#0098
Fine del telegramma riconosciuta perché sono soddisfatte le condizioni per "Rileva la lunghezza dal messaggio"
-
16#0099
Fine del telegramma riconosciuta dalla ricezione della "Sequenza di fine"
Stato di SEND e codici di errore
16#7000
Blocco nel funzionamento a vuoto
16#7001
Primo richiamo di un nuovo telegramma: trasmissione dei dati avviata
-
16#7002
Richiamo intermedio: trasmissione dei dati in corso
-
16#8085
Lunghezza indicata non consentita
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (Byte)
16#8088
La lunghezza indicata è maggiore dell'area impostata
nel buffer di ricezione.
Modificare l'area nel buffer di ricezione o selezionare
una lunghezza del telegramma adeguata all'area
impostata nel buffer di ricezione.
Avvertenza: se nel parametro BUFFER è stato specificato il tipo di dati STRING, questo codice di errore
Sono consentiti (in funzione del modulo):
viene visualizzato anche se la lunghezza della stringa 1-1024/2048/4096 (byte)
attuale è minore del valore indicato nel parametro
LENGTH.
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
CM PtP - Configurazioni di accoppiamenti punto a punto
100
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Stato di RECEIVE e codici di errore
16#8088
Il numero di caratteri ricevuti è maggiore di quanto
indicato nel parametro BUFFER.
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (byte)
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
Codici di segnalazione degli errori delle funzioni speciali
16#818F
Impostazione errata per il numero del parametro (solo Selezionare un numero di parametro adeguato
per USS)
(PARAM).
Sono consentiti: 0-2047
16#8190
Impostazione errata del calcolo CRC
Selezionare un valore adeguato per il calcolo CRC.
Sono consentiti: disattivato o attivato.
Verificare se il modulo indirizzato supporta il calcolo
CRC.
16#8191
Impostazione errata dell'allarme di diagnostica
Selezionare un valore adatto per "Allarme di diagnostica".
Sono consentiti: allarme di diagnostica disattivato o
attivato.
Verificare se il modulo indirizzato supporta la generazione di allarmi di diagnostica.
Codici di segnalazione degli errori di configurazione della porta
16#81A0
Il modulo non supporta questo protocollo.
Selezionare un protocollo (PROTOCOL) consentito
per il modulo.
16#81A1
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione (BAUD)
consentita per il modulo.
16#81A2
Il modulo non supporta questa impostazione per la
parità.
Selezionare un valore adatto per "Parità" (PARITY).
16#81A3
Il modulo non supporta questo numero di bit di dati.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
Selezionare un valore adatto per "Numero di bit di
dati" (DATABITS).
Sono consentiti:
16#81A4
Il modulo non supporta questo numero di bit di stop.
•
7 (2)
•
8 (1)
Selezionare un valore adatto per "Numero di bit di
stop" (STOPBITS).
Sono consentiti:
•
1 (1)
•
2 (2)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
101
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81A5
Il modulo non supporta questo tipo di controllo del
flusso dati.
Selezionare un controllo del flusso dati
(FLOWCTRL) consentito per il modulo.
16#81A7
Valore non consentito per XON o XOFF
Selezionare valori adatti per XON (XONCHAR) e
XOFF(XOFFCHAR).
16#81AA
Modo di funzionamento non consentito
I modi di funzionamento consentiti sono:
Campo di valori ammesso: 0...255
16#81AB
16#81AC
16#81AF
•
Fullduplex (RS232) (0)
•
Fullduplex (RS 422) a quattro fili (punto a punto)
(1) / (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(master multipoint) (2)/ (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(Slave multipoint) (3)
•
Semiduplex (RS485) funzionamento a 2 fili (4)
Preimpostazione della linea di ricezione non consenti- Le preimpostazioni consentite sono:
ta
• "Nessuna" preimpostazione (0)
Valore non consentito per "Riconoscimento Break"
Il modulo non supporta questo protocollo.
•
Segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break) (1):
È disponibile solo nei seguenti casi: "Fullduplex
(RS422) funzionamento a quattro fili (Punto a
punto)" e "Fullduplex (RS422) funzionamento a
quattro fili (Slave multipoint)".
•
Segnale R(A)=0 V, segnale R(B)=5 V (2): questa
preimpostazione corrisponde allo stato di riposo
(nessuna trasmissione attiva).
Selezionare un valore adatto per "Riconoscimento
Break". Sono consentiti:
•
riconoscimento Break disattivato (0)
•
riconoscimento Break attivo (1).
Selezionare un protocollo consentito per il modulo.
Codici di errore di configurazione della trasmissione
16#81B5
Più di 2 caratteri finali -osequenza di fine > 5 caratteri
Selezionare valori adatti per "Carattere finale" e
"Sequenza di fine".
Sono consentiti:
•
disattivato (0),
• 1 (1) o 2 (2) caratteri finali
oppure
16#81B6
Send Configuration respinto perché è selezionato il
protocollo 3964(R)
•
disattivato (0),
•
1 (1) ... 5 (5) caratteri per la sequenza di fine.
Assicurarsi che con il protocollo 3964(R) impostato
non venga inviata la configurazione della trasmissione.
CM PtP - Configurazioni di accoppiamenti punto a punto
102
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81C0
Condizione iniziale non consentita
Selezionare una condizione iniziale adatta.
Sono consentiti:
•
Invia Break prima dell'inizio del telegramma
•
Invia Idle Line.
16#81C1
Condizione finale non consentita o non selezionata
Selezionare una condizione finale adatta (vedere
Invio di dati con Freeport (Pagina 34)).
16#81C3
Valore non consentito per "Lunghezza max. del messaggio"
Selezionare un valore adatto per "Lunghezza max.
del messaggio" (MAXLEN).
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C4
Valore non consentito per "Offset del campo di lunghezza nel messaggio"
Selezionare un valore adatto per "Offset del campo
di lunghezza nel messaggio".
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C5
Valore non consentito per "Dimensioni del campo di
lunghezza"
Selezionare un valore adatto per "Dimensioni del
campo di lunghezza" (LENGTHSIZE).
Campo valori consentito in byte:
16#81C6
Valore non consentito per "Numero dei caratteri che
non rientrano nella lunghezza indicata"
•
1 (1)
•
2 (2)
•
4 (4)
Selezionare un valore adatto per "Nr. dei caratteri
che non rientrano nella lunghezza indicata"
(LENGTHM).
Campo di valori ammesso: 0 ... 255 (byte)
16#81C7
La somma di "Offset del campo di lunghezza nel
messaggio + Dimensioni del campo di lunghezza +
Numero dei caratteri che non rientrano nella lunghezza indicata" supera la lunghezza massima del telegramma.
Selezionare valori adatti per "Offset del campo di
lunghezza nel messaggio", "Dimensioni del campo
di lunghezza" e "Numero dei caratteri che non rientrano nella lunghezza indicata".
Campo di valori ammesso:
•
Offset del campo di lunghezza nel messaggio (in
funzione del modulo):
0-1024/2048/4096 (byte)
•
Dimensioni del campo di lunghezza: 1, 2 o 4
(byte)
•
Numero dei caratteri che non rientrano nella
lunghezza indicata: 0-255 (byte)
16#81C8
Valore non consentito per "Time out di risposta"
Selezionare un valore adatto per "Time out di risposta".
16#81C9
Valore non consentito per "Tempo di ritardo del carat- Selezionare un valore adatto per "Tempo di ritardo
tere"
del carattere".
16#81CB
Sequenza di fine del telegramma attivata ma nessuno Attivare uno o più caratteri per la verifica.
dei caratteri è attivato per la verifica
Campo di valori ammesso: 1-65535 (ms)
Campo di valori ammesso: 1-65535 (bit time)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
103
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81CC
Sequenza di inizio del telegramma attivata ma nessuno dei caratteri è attivato per la verifica
Attivare uno o più caratteri per la verifica.
16#81CD
Valore non consentito per "Impedisci sovrascrittura"
Selezionare un valore adatto per "Impedisci sovrascrittura".
Sono consentiti:
16#81CE
Valore non consentito per "Cancella buffer di ricezione all'avviamento"
•
Impedisci sovrascrittura disattivato (0) oppure
•
Impedisci sovrascrittura attivato (1)
Selezionare un valore adatto per "Cancella buffer di
ricezione all'avviamento".
Sono consentiti:
•
Cancella buffer di ricezione all'avviamento disattivato (0)
•
Cancella buffer di ricezione all'avviamento attivato (1)
Stato di SEND e codici di errore
16#81D0
Ricezione di una richiesta di trasmissione durante
l'esecuzione di un ordine di trasmissione
Assicurarsi che durante l'esecuzione di un ordine di
trasmissione non si verifichino ulteriori richieste di
trasmissione.
16#81D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#81D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#81D3
Overflow del buffer di trasmissione / telegramma di
trasmissione troppo grande
Selezionare una lunghezza del telegramma inferiore.
16#81D5
Trasmissione interrotta per modifica della parametrizzazione, rilevamento della rottura di un conduttore o
CPU in STOP
Verificare la parametrizzazione, la rottura conduttore
e lo stato della CPU.
16#81D6
Trasmissione interrotta per mancata ricezione del
carattere finale
Verificare la parametrizzazione dei caratteri finali e il
telegramma del partner della comunicazione.
16#81D7
Comunicazione disturbata tra programma utente e
modulo
Verificare la comunicazione (ad es. la corrispondenza del numero della sequenza).
16#81D8
Tentativo di trasmissione respinto perché il modulo
non è parametrizzato
Parametrizzare il modulo.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
CM PtP - Configurazioni di accoppiamenti punto a punto
104
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso la funzione di ricezione nel
programma utente o parametrizzare una comunicazione con controllo del flusso dati.
16#81E1
Telegramma interrotto: Errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#81E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#81E3
Telegramma interrotto: errore di overflow dei caratteri
Errore di firmware: rivolgersi al Customer Support.
16#81E4
Telegramma interrotto: lunghezza di "Offset del campo di lunghezza nel messaggio + Dimensioni del
campo di lunghezza + Numero dei caratteri che non
rientrano nella lunghezza indicata" superiore al buffer
di ricezione
Verificare le impostazioni per Offset del campo di
lunghezza nel messaggio, Dimensioni del campo di
lunghezza e Numero dei caratteri che non rientrano
nella lunghezza indicata.
16#81E5
Telegramma interrotto: Break
Linea di ricezione verso il partner interrotta.
16#81E6
Numero massimo di "Telegrammi in ricezione bufferizzati" superato
Richiamare più spesso l'istruzione nel programma
utente, parametrizzare una comunicazione con controllo del flusso dati o aumentare il numero di telegrammi salvati nel buffer.
16#81E7
Errori di sincronizzazione tra il modulo e Receive_P2P
Accertarsi che diverse istanze di Receive_P2P non
accedano allo stesso modulo.
16#81E8
Telegramma interrotto: tempo di ritardo del carattere
scaduto prima che sia stato riconosciuto il criterio di
fine del messaggio
Il dispositivo partner è troppo lento o è disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#81E9
Errore CRC Modbus (solo moduli di comunicazione
che supportano Modbus)
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#81EA
Telegramma Modbus troppo corto (solo moduli di
comunicazione che supportano Modbus)
La lunghezza minima del telegramma Modbus non è
stata raggiunta. Controllare il partner di comunicazione.
16#81EB
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Ripristinare la linea o attivare il partner.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Controllare i parametri del riconoscimento della fine
del telegramma.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
105
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore dei segnali addizionali V24
16#81F0
Il modulo non supporta segnali addizionali V24
Si è tentato di impostare segnali addizionali per un
modulo che non supporta i segnali addizionali V24.
Assicurarsi che si tratti di un modulo RS232 o che
sia impostata la modalità RS232 (ET 200SP).
16#81F1
Nessun comando dei segnali addizionali V24
Se è attivo il controllo del flusso dati hardware non è
possibile comandare manualmente i segnali addizionali V24.
16#81F2
Impossibile impostare il segnale DSR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DTE.
L'unità deve essere di tipo DCE (data communication equipment).
16#81F3
Impossibile impostare il segnale DTR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DCE.
L'unità deve essere di tipo DTE (data terminal equipment).
16#81F4
Errore block header (ad es. tipo di blocco errato oppure lunghezza di blocco errata)
Verificare il DB di istanza e il block header.
Codici di errore di configurazione della ricezione
16#8201 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
16#8225
Receive_Conditionsindica l'area di memoria ottimizza- Inserire un puntatore a un'area con la lunghezza
max. seguente:
ta maggiore di 1 kByte
16#8229 1)
Inserire un puntatore a uno dei seguenti tipi di dati:
DB, BOOL, BYTE, CHAR, WORD, INT, DWORD,
DINT, REAL, DATE, TIME_OF_DAY, TIME,
S5TIME, DATE_AND_TIME, STRING
oppure
•
Receive_Conditions indica l'area di memoria ottimizzata e la lunghezza di ricezione è maggiore dell'area
indirizzata con Receive_Conditions.
• Area di memoria non ottimizzata: 4 kByte
Avvertenza: Se il puntatore indica un'area di memoria ottimizzata, non trasmettere più di 1 kByte.
Receive_Conditions è un puntatore rivolto verso
BOOL con numero di bit diverso da n * 8
Se si utilizza un puntatore rivolto verso BOOL il
numero di bit deve essere un multiplo di 8.
Area di memoria ottimizzata: 1 kByte
Codici di errore generali
16#8280
16#8281
Conferma negativa durante la lettura del modulo
Conferma negativa durante la scrittura del modulo
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici RDREC.STATUS e
nella descrizione dell'SFB RDREC.
•
Controllare quanto immesso nel parametro
PORT
•
Prima del 1° richiamo impostare il parametro
COM_RST.
Controllare quanto immesso nel parametro PORT
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici WRREC.STATUS e
nella descrizione dell'SFB WRREC.
16#8282
Modulo non disponibile
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
106
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#82C1
Valore non consentito per "Telegrammi in ricezione
bufferizzati".
Selezionare un valore adatto per "Telegrammi in
ricezione bufferizzati".
Campo di valori ammesso: 1-255
16#82C2
Receive Configuration respinto perché è selezionato il Assicurarsi che con il protocollo 3964(R) impostato
protocollo 3964(R)
non venga inviata la configurazione della ricezione.
16#8301 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
Selezionare un tipo di dati consentito.
16#8322
Lunghezza dell'area errata per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8324
Errore di area per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8328
Errore di impostazione alla lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
Sono consentiti: DB, BOOL, BYTE, CHAR, WORD,
INT, DWORD, DINT, REAL, DATE, TIME_OF_DAY,
TIME, S5TIME, DATE_AND_TIME, STRING
Stato di SEND e codici di errore
16#8328 1)
BUFFER è un puntatore a BOOL con numero di bit
diverso da n * 8
Se si utilizza un puntatore a BOOL il numero di bit
deve essere un multiplo di 8.
Codici di errore di configurazione della ricezione
16#8332
Blocco dati non consentito nel parametro Receive_Conditions
Controllare quanto immesso nel parametro Receive_Conditions
16#833A
La denominazione del blocco dati nel parametro Receive_Conditions indica un blocco dati non caricato.
Controllare quanto immesso nel parametro Receive_Conditions
16#8351
Tipo di dati non ammesso
Controllare quanto immesso nel parametro Receive_Conditions
16#8352 1)
Receive_Conditions non indica un blocco dati
Controllare il puntatore a Receive_Conditions
16#8353
Receive_Conditions non indica una struttura del tipo
Receive_Conditions
Controllare il puntatore a Receive_Conditions
1)
Codici di errore del protocollo 3964(R)
16#8380
Errore di parametrizzazione: valore non consentito
per "Tempo di ritardo del carattere".
Selezionare un valore adatto per "Tempo di ritardo
del carattere" (CharacterDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8381
Errore di parametrizzazione: valore non consentito
per "Time out di risposta".
Selezionare un valore adatto per "Time out di risposta" (AcknDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8382
Errore di parametrizzazione: valore non consentito
per "Priorità".
Selezionare un valore adatto per "Priorità" (Priority).
Sono consentiti:
•
Elevato (1)
•
Basso (0)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
107
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8383
Errore di parametrizzazione: valore non consentito
per "Verifica blocco".
Selezionare un valore adatto per "Verifica blocco"
(BCC).
Sono consentiti:
16#8384
Errore di parametrizzazione: valore non consentito
per "Tentativi di collegamento".
•
con verifica blocco (1)
•
senza verifica blocco (0)
Selezionare un valore adatto per "Tentativi di collegamento" (BuildupAttempts).
Campo di valori ammesso: 1-255
16#8385
Errore di parametrizzazione: valore non consentito
per "Tentativi di trasmissione".
Selezionare un valore adatto per "Tentativi di trasmissione" (RepetitionAttempts).
Campo di valori ammesso: 1-255
16#8386
Errore di runtime: numero di tentativi di collegamento
superato
Controllare il cavo dell'interfaccia e i parametri di
trasmissione.
Controllare anche sul lato del partner se la funzione
di ricezione è parametrizzata correttamente.
16#8387
Errore di runtime: numero di tentativi di trasmissione
superato
Controllare il cavo dell'interfaccia, i parametri di
trasmissione e la parametrizzazione del partner della
comunicazione.
16#8388
Errore di runtime: errore nel "carattere di verifica
blocco"
Controllare se il collegamento è fortemente disturbato, in questo caso si noteranno occasionalmente
anche codici errati. Verificare il corretto comportamento del dispositivo partner, eventualmente con un
dispositivo di controllo interfaccia da inserire nella
linea di trasmissione.
Il valore del carattere di verifica blocco creato internamente non coincide con quello ricevuto dal partner
alla fine del collegamento.
16#8389
Errore di runtime: in attesa della disponibilità del buffer di ricezione è stato ricevuto un carattere non consentito
La richiesta di trasmissione del partner di comunicazione (STX, 02H) riceve in risposta DLE solo quando
il buffer di ricezione si svuota. Prima non è consentito ricevere altri caratteri (ad eccezione di un altro
STX).
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838A
Errore di runtime: errore logico durante la ricezione.
Dopo la ricezione di DLE è stato ricevuto un altro
carattere qualsiasi (esclusi DLE, ETX).
16#838B
Errore di runtime: tempo di ritardo del carattere superato
Controllare se il partner raddoppia sempre DLE
nell'intestazione del telegramma e nella stringa di
dati o se il collegamento si disattiva con DLE ETX.
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
Il dispositivo partner è troppo lento o disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838C
Errore di runtime: tempo di attesa della disponibilità
del buffer di ricezione avviato
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#838D
Errore di runtime: dopo NAK la ripetizione del telegramma non si avvia entro 4 s
Controllare il partner di comunicazione. Un telegramma ricevuto eventualmente errato deve essere
ripetuto dal partner entro 4 secondi.
CM PtP - Configurazioni di accoppiamenti punto a punto
108
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
16#838E
Errore di runtime: durante il tempo di riposo sono stati Verificare il corretto comportamento del dispositivo
ricevuti uno o più caratteri (esclusi NAK o STX).
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838F
Errore di runtime: conflitto di inizializzazione. Entrambi i partner hanno impostato la priorità alta
Impostare per uno dei partner la priorità "Bassa"
16#8391
Errore di parametrizzazione: dati di parametrizzazione 3964 respinti perché è impostato Freeport
Assicurarsi che con il protocollo Freeport impostato
non vengano inviati i dati di parametrizzazione 3964.
1)
Rimedio
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
109
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Panoramica dei messaggi di errore Modbus
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Errore di configurazione dell'interfaccia - Modbus_Comm_Load
16#8181
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione consentita
per il modulo nel parametro BAUD.
16#8182
Il modulo non supporta questa impostazione per la
parità.
Selezionare un valore adatto per la "Parità" nel parametro PARITY.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
16#8183
Il modulo non supporta questo tipo di controllo del
flusso dati.
Selezionare un controllo del flusso dati consentito
per il modulo nel parametro FLOW_CTRL.
16#8184
valore non consentito per "Time out di risposta".
Selezionare un valore adatto per "Time out di risposta" nel parametro RESP_TO.
Campo di valori ammesso: 1-65535 (ms)
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.RDREC.STATUS, Receive_Config.RDREC.STATUS o RDREC.STATUS e
nella descrizione dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.WRREC.STATUS, Receive_Config.WRREC.STATUS o WRREC.STATUS e
nella descrizione dell'SFB WRREC.
16#8282
Modulo non disponibile
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
110
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Slave
16#8186
Indirizzo slave non consentito
Selezionare un indirizzo di slave adeguato nel parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8187
Valore non consentito nel parametro MB_HOLD_REG Selezionare un valore adatto per l'holding register
nel parametro MB_HOLD_REG.
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per
MODE il valore 1 o scegliere un altro modo di funzionamento.
16#818C
Il puntatore di un'area MB_HOLD_REG deve essere
un blocco dati o un'area merker.
Selezionare un valore adatto per il puntatore all'area
MB_HOLD_REG.
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS o Receive_P2P.WRREC.STATUS e nella descrizione
dell'SFB WRREC.
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456
Errore di esecuzione dell'istruzione. La causa dell'errore si trova nel parametro statico STATUS.
Determinare il valore del parametro SFCSTATUS.
Leggerne il significato nella descrizione dell'SFC51,
parametro STATUS.
1)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
111
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Master
16#8180
Valore non consentito per il parametro MB_DB
Il valore parametrizzato nell'istruzione Modbus_Comm_Load per MB_DB (DB dei dati di istanza) non è consentito.
Controllare l'interconnessione dell'istruzione Modbus_Comm_Load e i relativi messaggi di errore.
16#8186
Indirizzo della stazione non consentito
Selezionare un indirizzo di stazione adeguato nel
parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per MODE il valore 1 o scegliere un altro modo di
funzionamento.
16#8189
Indirizzo dei dati non consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818A
Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata nel
parametro DATA_LEN.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818B
Valore non consentito per DATA_PTR
Selezionare nel parametro DATA_PTR un valore
adeguato per il puntatore dati (indirizzo M o DB).
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818C
Errore di interconnessione del parametro DATA_PTR
Controllare l'interconnessione dell'istruzione.
16#818D
La lunghezza dell'area indirizzata con DATA_PTR
supera la lunghezza del DB o l'area indirizzata è
troppo piccola per il numero di dati da leggere o scrivere.
Controllare il puntatore DATA_PTR
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS, Receive_P2P.WRREC.STATUS o Receive_Reset e nella
descrizione dell'SFB WRREC.
CM PtP - Configurazioni di accoppiamenti punto a punto
112
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di comunicazione - Modbus_Master e Modbus_Slave
16#80D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#80D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#80E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#80E1
Telegramma interrotto: errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#80E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#80E3
Telegramma interrotto: errore di overflow dei caratteri
Controllare il numero di dati del telegramma del
partner della comunicazione.
16#80E4
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Errore di comunicazione - Modbus_Master
16#80C8
Lo slave non risponde entro il tempo impostato
Verificare la velocità di trasmissione, la parità e il
cablaggio dello slave.
16#80C9
Lo slave non risponde entro il tempo impostato tramite Blocked_Proc_Timeout.
Verificare l'impostazione di Blocked_Proc_Timeout.
L'interfaccia è occupata da una richiesta in corso.
Ripetere l'ordine successivamente. Prima di avviare
un nuovo ordine assicurarsi che non siano più in
corso altri ordini.
16#8200
Controllare se il modulo è stato parametrizzato con
l'istruzione Modbus_Comm_Load. Eventualmente,
dopo aver estratto e reinserito il modulo o al ripristino della tensione, è necessario riparametrizzare il
modulo tramite Modbus_Comm_Load.
Errore di protocollo - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Il codice funzione non è supportato o non è supportato per il Broadcast.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
La lunghezza indicata nel telegramma di richiesta non Selezionare una lunghezza dei dati adeguata nel
è consentita
parametro DATA_LEN.
16#8383
L'indirizzo dei dati nel telegramma di richiesta non è
consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Errore nel valore dei dati non consentito nel telegramma di richiesta
Controllare il valore dei dati nel telegramma di richiesta del master Modbus
16#8385
Il valore di diagnostica non è supportato dallo slave
Modbus (codice funzione 08)
Lo slave Modbus supporta solo i valori di diagnostica
16#0000 e 16#000A.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
113
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di protocollo - Modbus_Master (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Telegramma di risposta del Modbus Slave con messaggio di errore: Il codice funzione non è supportato.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
Telegramma di risposta del Modbus Slave con messaggio di errore: Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata.
16#8383
Telegramma di risposta del Modbus Slave con messaggio di errore: L'indirizzo dei dati nel telegramma di
richiesta non è consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Telegramma di risposta del Modbus Slave con messaggio di errore: Errore nel valore dei dati
Controllare il telegramma di richiesta inviato allo
slave Modbus.
16#8385
Telegramma di risposta del Modbus Slave con mesGli slave Modbus supportano solo i valori di diagnosaggio di errore: Il valore di diagnostica non è suppor- stica 16#0000 e 16#000A.
tato dallo slave Modbus
16#8386
Il codice funzione confermato non corrisponde a quel- Controllare il telegramma di risposta e l'indirizzalo richiesto.
mento dello slave.
16#8387
Risponde uno slave che non è stato indirizzato
Controllare il telegramma di risposta dello slave.
Controllare le impostazioni dell'indirizzo dello slave.
16#8388
Errore nella risposta dello slave a una richiesta di
scrittura.
Controllare il telegramma di risposta dello slave.
16#8828 1)
DATA_PTR indica un indirizzo di bit diverso da n * 8
Controllare il puntatore DATA_PTR
16#8852
DATA_PTR non è un puntatore a un DB o un'area
merker
Controllare il puntatore DATA_PTR
16#8853 1)
DATA_PTR non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore DATA_PTR
16#8855 1)
DATA_PTR indica un DB protetto in scrittura
Controllare il puntatore DATA_PTR
16#8856 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Master
1)
Errore - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8428 1)
MB_HOLD_REG indica un indirizzo di bit diverso da
n*8
Controllare il puntatore MB_HOLD_REG
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Slave
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
114
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Panoramica dei messaggi di errore USS
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
16#8180
Lunghezza errata nella risposta dell'azionamento
Controllare il telegramma di risposta dell'azionamento.
16#8181
Errore di tipo di dati
Selezionare un tipo di dati adeguato.
Sono consentiti:
•
Real
•
Parola
•
Doppia parola
16#8182
Errore di tipo di dati: la richiesta "Parola" non deve
essere confermata da "Doppia parola" o "Real".
Controllare il telegramma di risposta dell'azionamento.
16#8183
Errore di tipo di dati: la richiesta "Doppia parola" o
"Real" non deve essere confermata da "Parola".
Controllare il telegramma di risposta dell'azionamento.
16#8184
Errore della somma di controllo nella risposta
dell'azionamento
Verificare l'azionamento e il collegamento di comunicazione.
16#8185
Errore di indirizzamento
Area di indirizzi dell'azionamento consentita: 1 ... 16
16#8186
Errore di setpoint
Campo del setpoint: -200 % ... +200 %
16#8187
Il numero di azionamento confermato è errato
Controllare il telegramma di risposta dell'azionamento.
16#8188
Lunghezza PZD non consentita
Lunghezze PZD consentite: 2, 4, 6, 8 parole
16#8189
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione consentita per
il modulo.
16#818A
Al momento è attiva un'altra richiesta per questo
azionamento.
Ripetere l'ordine di lettura o scrittura dei parametri in
un momento successivo.
16#818B
L'azionamento non risponde.
Controllare l'azionamento.
16#818C
L'azionamento risponde a una richiesta di parametri Controllare il telegramma di risposta dell'azionamento.
con un messaggio di errore.
Verificare la richiesta di parametri.
Verificare se le istruzioni USS_Read_Param,
USS_Write_Param oppure USS_Port_Scan hanno
segnalato un errore. In caso affermativo controllare il
valore della variabile statica USS_DB.
w_USSExtendedError dell'istruzione
USS_Drive_Control.
16#818D
L'azionamento risponde a una richiesta di parametri Controllare il telegramma di risposta dell'azionamento.
segnalando un errore di accesso.
Verificare la richiesta di parametri.
16#818E
L'azionamento non è stato inizializzato.
Controllare il programma utente e assicurarsi che per
questo azionamento venga richiamata l'istruzione
USS_Drive_Control.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
115
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.RDREC.STATUS o
Send_Config.RDREC.STATUS o Receive_Config.RDREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.WRREC.STATUS o
Send_Config.WRREC.STATUS o Receive_Config.WRREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
WRREC.
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
116
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2
MODBUS (RTU)
5.4.2.1
Panoramica della comunicazione Modbus RTU
Comunicazione Modbus RTU
Modbus RTU(Remote Terminal Unit) è un protocollo standard per la comunicazione in rete
che si avvale del collegamento RS232 o RS422/485 per la trasmissione dei dati seriale tra i
dispositivi Modbus nella rete.
Modbus RTU utilizza una rete master/slave in cui l'intera comunicazione viene attivata da un
unico dispositivo master mentre gli slave possono solo reagire alla richiesta del master. Il
master invia una richiesta a un indirizzo slave e solo lo slave con questo indirizzo risponde al
comando.
Eccezione: l'indirizzo slave Modbus 0 invia un telegramma Broadcast a tutti gli slave (senza
risposta dello slave).
Codici funzione Modbus
● Una CPU utilizzata come master Modbus RTU può leggere e scrivere sia i dati che lo
stato degli I/O in uno slave Modbus RTU collegato attraverso un collegamento di
comunicazione.
● Una CPU utilizzata come slave Modbus RTU consente a un master Modbus RTU
collegato attraverso un collegamento di comunicazione di leggere e scrivere sia i dati che
lo stato degli I/O nella propria CPU.
Tabella 5- 12 Funzioni di lettura dei dati: lettura di I/O decentrati e dati di programma
Codice funzione Modbus
Funzioni di lettura dei dati dello slave (server), indirizzamento standard
01
Lettura dei bit di uscita: 1 fino a 2000/19921) bit per richiesta
02
Lettura dei bit di ingresso: 1 fino a 2000/19921) bit per richiesta
03
Lettura del registro di mantenimento: 1 fino a 125/1241) parole per richiesta
04
Lettura delle parole di ingresso: 1 fino a 125/1241) parole per richiesta
1) con indirizzamento ampliato
Tabella 5- 13 Funzioni di scrittura dei dati: scrittura di I/O decentrati e modifica dei dati di programma
Codice funzione Modbus
Funzioni di scrittura di dati nello slave (server), indirizzamento standard
05
Scrittura di un bit di uscita: 1 bit per richiesta
06
Scrittura di un registro di mantenimento: 1 parola per richiesta
15
Scrittura di uno o più bit di uscita: 1 ... 1960 bit per richiesta
16
Scrittura di uno o più registri di mantenimento: 1 ... 122 parole per richiesta
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
117
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
● I codici funzione Modbus 08 e 11 forniscono opzioni di diagnostica per la comunicazione
con il dispositivo slave.
● L'indirizzo slave Modbus 0 invia un telegramma broadcast a tutti gli slave (senza risposta
dello slave; per codici funzione 5, 6, 15, 16).
Tabella 5- 14 Indirizzi delle stazioni della rete Modbus
Stazione
Stazione RTU
Indirizzo
Indirizzo standard della stazione
1 ... 247 e 0 per broadcast
Indirizzo esteso della stazione
1 ... 65535e0 per broadcast
Indirizzi di memoria Modbus
Il numero effettivamente disponibile di indirizzi di memoria Modbus (indirizzi di
ingressi/uscite) dipende dalla versione della CPU e dalla memoria di lavoro disponibile.
Istruzioni Modbus RTU nel programma utente
● Modbus_Comm_Load: è necessario eseguire Modbus_Comm_Load per configurare i
parametri PtP come velocità di trasmissione, parità e controllo del flusso dei dati. Una
volta configurato, il modulo di comunicazione per il protocollo Modbus RTU può essere
utilizzato solo dall'istruzione Modbus_Master o Modbus_Slave.
● Modbus_Master: questa istruzione master Modbus consente di utilizzare la CPU come
dispositivo master Modbus RTU per la comunicazione con uno o più dispositivi slave
Modbus.
● Modbus_Slave: questa istruzione slave Modbus consente di utilizzare la CPU come
dispositivo slave Modbus RTU per la comunicazione con un dispositivo master Modbus.
CM PtP - Configurazioni di accoppiamenti punto a punto
118
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2.2
Modbus_Comm_Load: Configura modulo di comunicazione per Modbus
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
L'istruzione Modbus_Comm_Load configura un modulo per la comunicazione attraverso il
modulo Modbus RTU. Quando si inserisce l'istruzione Modbus_Comm_Load nel programma
utente viene automaticamente creato un blocco dati di istanza.
Le modifiche della configurazione di Modbus_Comm_Load non vengono salvate nella CPU
bensì sul CM. Al ripristino della tensione e dopo aver estratto e inserito il CM, questo viene
parametrizzato con i dati salvati nella configurazione del dispositivo. In questi casi è
necessario richiamare nuovamente l'istruzione Modbus_Comm_Load.
Parametri
Parametri
Dichiarazione
REQ
IN
PORT
IN
BAUD
IN
Tipo di dati
S71200/1500
S7300/400/
WinAC
Bool
Port
UDInt
Standard Descrizione
Laddr
DWord
FALSE
Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
0
Specifica il modulo dal quale si svolge la comunicazione:
9600
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili
PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
Selezione della velocità di trasmissione
I valori consentiti sono: 300, 600, 1200, 2400, 4800, 9600,
19200, 38400, 57600, 76800, 115200 bit/s.
PARITY
IN
UInt
Word
1
Selezione della parità:
•
0 – Nessuna
•
1 – Dispari
•
2 – Pari
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
119
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
FLOW_CTRL
RTS_ON_DLY
Dichiarazione
IN
IN
RTS_OFF_DLY IN
RESP_TO
IN
Tipo di dati
S71200/1500
UInt
UInt
UInt
UInt
Standard Descrizione
S7300/400/
WinAC
Word
Word
Word
Word
0
0
0
1000
Selezione del controllo del flusso:
•
0 – (Standard) Nessun controllo del flusso
•
1 – Controllo del flusso hardware con RTS sempre ON
(non vale per i CM RS422/485)
•
2 – Controllo del flusso hardware con RTS attivato (non
vale per i CM RS422/485)
Selezione del ritardo all'inserzione RTS:
•
0 – Nessun ritardo da "RTS attivo" alla trasmissione del
primo carattere del telegramma.
•
1 ... 65535 – Ritardo in millisecondi da "RTS attivo" alla
trasmissione del primo carattere del telegramma (non
vale per i CM RS422/485). I ritardi RTS devono essere
applicati indipendentemente dalla selezione di
FLOW_CTRL.
Selezione del ritardo alla disinserzione RTS:
•
0 – Nessun ritardo fra la trasmissione dell'ultimo carattere e "RTS non attivo"
•
1 ... 65535 – Ritardo in millisecondi dalla trasmissione
dell'ultimo carattere a "RTS non attivo" (non vale per le
porte RS422/485). I ritardi RTS devono essere applicati
indipendentemente dalla selezione di FLOW_CTRL.
Timeout di risposta:
5 ms ... 65535 ms - Tempo in millisecondi durante il quale
il Modbus_Master attende una risposta dallo slave. Se lo
slave non risponde entro questo intervallo di tempo Modbus_Master ripete la richiesta oppure, nel caso sia stato
raggiunto il numero di tentativi specificato, la interrompe
con un errore (vedere oltre, parametro RETRIES).
MB_DB
IN/OUT
MB_BASE
-
Riferimento al blocco dati di istanza delle istruzioni Modbus_Master o Modbus_Slave.
Il parametro MB_DB deve essere interconnesso con il
parametro MB_DB (statico e perciò non visibile nell'istruzione) dell'istruzione Modbus_Master o Modbus_Slave .
COM_RST
IN/OUT
---
Bool
FALSE
Inizializzazione dell'istruzione Modbus_Comm_Load
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DONE
OUT
Bool
FALSE
Il bit DONE è TRUE per la durata di un ciclo dopo che
l'ultima richiesta è stata eseguita senza errori.
ERROR
OUT
Bool
FALSE
Il bit ERROR è TRUE per la durata di un ciclo dopo che
l'ultima richiesta si è conclusa con errori. Il codice di errore
nel parametro STATUS è valido solo nel ciclo in cui
ERROR = TRUE.
STATUS
OUT
Word
16#7000
Codice di errore (vedere Messaggi di errore (Pagina 144))
CM PtP - Configurazioni di accoppiamenti punto a punto
120
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Modbus_Comm_Load viene eseguita per configurare una porta per il protocollo
Modbus RTU. Una volta configurata, la porta per il protocollo Modbus RTU può essere
utilizzata solo dalle istruzioni Modbus_Mastero Modbus_Slave.
Modbus_Comm_Load deve essere eseguita una volta per ogni porta da configurare per la
comunicazione Modbus. A ogni porta utilizzata si deve assegnare un DB di istanza
Modbus_Comm_Load univoco. Ripetere Modbus_Comm_Load solo se è necessario
modificare parametri di comunicazione come la velocità di trasmissione e la parità o
eventualmente dopo il ripristino della rete.
Quando ad es. si inserisce Modbus_Master o Modbus_Slave nel programma utente, viene
automaticamente assegnato all'istruzione un blocco dati di istanza. Il parametro MB_DB
dell'istruzione Modbus_Comm_Load deve essere collegato con il parametro MB_DB
dell'istruzione Modbus_Master o Modbus_Slave.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
121
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabili del blocco dati Modbus_Comm_Load
La tabella seguente mostra le variabili statiche pubbliche contenute nel DB di istanza di
Modbus_Comm_Load utilizzabili nel programma utente.
Tabella 5- 15 Variabili statiche nel DB di istanza
Variabile
Tipo di dati
S71200/
1500
Standard
Descrizione
S7300/400/
WinAC
ICHAR_GAP
Word
0
Tempo di ritardo max. tra i caratteri. Questo parametro viene specificato in millisecondi e consente di aumentare il tempo di attesa tra i
caratteri ricevuti. Il corrispondente numero di bit time per questo parametro viene sommato al valore standard Modbus di 35 bit time (3,5
tempi di carattere).
RETRIES
Word
2
Numero di tentativi che il master effettua prima di generare il codice
di errore 0x80C8 in assenza di risposta.
EN_SUPPLY_VOL
T
Bool
0
Attivazione della diagnostica Tensione di alimentazione mancante L+
0
Modo di funzionamento
MODE
USInt
Byte
I modi di funzionamento consentiti sono:
LINE_PRE
USInt
Byte
0
•
0 = fullduplex (RS232)
•
1 = fullduplex (RS 422) a quattro fili (punto a punto)
•
2 = fullduplex (RS422) funzionamento a quattro fili (Master multipoint, CM PtP (ET 200SP))
•
3 = fullduplex (RS422) funzionamento a quattro fili (Slave multipoint, CM PtP (ET 200SP))
•
4 = semiduplex (RS485) a 2 fili 1)
Preimpostazione della linea di ricezione
Le preimpostazioni consentite sono:
BRK_DET
USInt
Byte
0
•
0 = "nessuna" preimpostazione 1)
•
1 = segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break):
con questa preimpostazione è possibile il riconoscimento break.
È disponibile solo nei seguenti casi: "Fullduplex (RS422) funzionamento a quattro fili (Punto a punto)" e "Fullduplex (RS422) funzionamento a quattro fili (Slave multipoint)".
•
2 = segnale R(A)=0V, segnale R(B)=5V:
questa preimpostazione corrisponde allo stato di riposo (nessuna
trasmissione attiva). Questa preimpostazione non consente il riconoscimento Break.
Riconoscimento Break
Sono consentiti:
•
0 = riconoscimento Break disattivato
•
1 = riconoscimento Break attivato
CM PtP - Configurazioni di accoppiamenti punto a punto
122
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabile
Tipo di dati
S71200/
1500
EN_DIAG_ALARM
STOP_BITS
1)
Descrizione
0
Attiva allarme di diagnostica:
S7300/400/
WinAC
Bool
USINT
Standard
Byte
1
•
0 - non attivato
•
1 - attivato
Numero di bit di stop;
•
1 = 1 bit di stop,
•
2 = 2 bit di stop,
•
0, 3 ... 255 = riservato
Impostazione necessaria per l'uso di cavi PROFIBUS in CM 1241 per RS485
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
123
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2.3
Modbus_Master: Comunica come master Modbus
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla
versione V2.1 del firmware del modulo.
Descrizione
L'istruzione Modbus_Master comunica come master Modbus attraverso una porta
configurata con l'istruzione Modbus_Comm_Load. Quando si inserisce l'istruzione
Modbus_Master nel programma utente viene automaticamente creato un blocco dati di
istanza. Il parametro MB_DB dell'istruzione Modbus_Comm_Load deve essere collegato con
il parametro MB_DB (statico) dell'istruzione Modbus_Master .
Parametri
Parametri
Dichiarazione
REQ
IN
MB_ADDR
IN
Tipo di dati
S71200/1500
Descrizione
FALSE
FALSE = Nessuna richiesta
TRUE = Richiesta di trasmissione di dati allo slave Modbus
-
Indirizzo della stazione Modbus RTU:
S7300/400/
WinAC
Bool
UInt
Standard
Word
Area di indirizzi standard (1 ... 247 e 0 per Broadcast)
Area di indirizzi ampliata (1 ... 65535 e 0 per Broadcast)
Il valore 0 è riservato per la trasmissione del telegramma
broadcast a tutti gli slave Modbus. Gli unici codici funzione
Modbus supportati per il Broadcast sono 05, 06, 15 e 16.
MODE
IN
USInt
Byte
0
Selezione del modo: indica il tipo di richiesta (lettura,
scrittura o diagnostica). Per maggiori informazioni consultare la tabella delle funzioni Modbus riportata più avanti.
DATA_ADDR
IN
UDInt
DWord
0
Indirizzo iniziale nello slave: indica l'indirizzo iniziale dei
dati a cui accedere nello slave Modbus. Gli indirizzi validi
sono indicati nella tabella delle funzioni Modbus riportata
più avanti.
DATA_LEN
IN
UInt
Word
0
Lunghezza dati: indica il numero di bit o di parole a cui
deve accedere la richiesta. Le lunghezze valide sono
indicate nella tabella delle funzioni Modbus riportata più
avanti.
COM_RST
IN/OUT
---
Bool
FALSE
Inizializzazione dell'istruzione Modbus_Master
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DATA_PTR
IN/OUT
Variant
Any
-
Puntatore dati: punta all'indirizzo merker o DB per i dati da
scrivere o leggere.
CM PtP - Configurazioni di accoppiamenti punto a punto
124
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
S7300/400/
WinAC
DONE
OUT
Bool
FALSE
Il bit DONE è TRUE per la durata di un ciclo dopo che
l'ultima richiesta è stata eseguita senza errori.
BUSY
OUT
Bool
-
•
FALSE – Non sono attivi ordini per Modbus_Master
•
TRUE – Ordine in corso per Modbus_Master
ERROR
OUT
Bool
FALSE
Il bit ERROR è TRUE per la durata di un ciclo dopo che
l'ultima richiesta si è conclusa con errori. Il codice di errore
nel parametro STATUS è valido solo nel ciclo in cui
ERROR = TRUE.
STATUS
OUT
Word
0
Codice di errore (vedere Messaggi di errore (Pagina 144))
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
125
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabili nel blocco dati del master Modbus
La tabella seguente mostra le variabili statiche pubbliche contenute nel DB di istanza di
Modbus_Master utilizzabili nel programma utente.
Tabella 5- 16 Variabili statiche nel DB di istanza
Variabile
Tipo di
dati
Standard
Descrizione
Blocked_Proc_Timeout
Real
3.0
Tempo di attesa (in secondi) prima che un'istanza master Modbus
bloccata venga rimossa come ATTIVA. Ciò può verificarsi ad es.
se è stata emessa una richiesta del master e il programma smette
di richiamare la funzione del master prima di aver completato la
richiesta. Il valore del tempo deve essere maggiore di 0 e minore
di 55 secondi, in caso contrario si verifica un errore.
Vedere anche le sezioni "Regole per la comunicazione del Modbus-Master" e "Richiamo dell'istruzione Modbus_Master con diverse impostazioni dei parametri".
Extended_Addressing
Compatibility_Mode 1)
MB_DB
1)
Bool
Bool
MB_BAS
E
FALSE
FALSE
-
Configura l'indirizzo della stazione slave a byte singolo o doppio.
•
FALSE = indirizzo a un byte; 0 ... 247
•
TRUE = indirizzo a due byte (corrisponde all'indirizzamento
ampliato);
0 ... 65535
Modo di compatibilità con CP 341, CP 441-2 e ET 200SP 1SI con
driver per Modbus RTU e con ET 200SP 1SI per Modbus.
Il valore standard è 0.
•
FALSE = secondo specifica Modbus, non compatibile
•
TRUE = compatibile
–
Per FC1 e FC2 vale: i dati letti dal telegramma di ricezione
vengono scritti parola per parola nella memoria indirizzata
della CPU e scambiati byte per byte.
Se il numero dei bit da trasferire non è un multiplo di 16, i
bit non rilevanti nell'ultima parola vengono impostati a zero.
–
Per FC15 vale: le parole da trasferire vengono lette parola
per parola dalla memoria indirizzata e scritte byte per byte
nel telegramma di trasmissione.
Se il numero dei bit da trasferire non è un multiplo di 8, i bit
non rilevanti nell'ultimo byte vengono letti dalla memoria indirizzata senza essere modificati e registrati nel telegramma di trasmissione.
Il parametro MB_DB dell'istruzione Modbus_Comm_Load deve
essere collegato con questo parametro MB_DB dell'istruzione
Modbus_Master.
I moduli di comunicazione PtP si comportano secondo la specifica Modbus. Per ottenere un comportamento standard
come in CP 341, CP 441-2 e ET 200SP 1SI per Modbus utilizzare il parametro "Compatibility_Mode".
Il programma utente può scrivere valori nelle variabili Blocked_Proc_Timeout e
Extended_Addressing per comandare il funzionamento del master Modbus.
CM PtP - Configurazioni di accoppiamenti punto a punto
126
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Regole per la comunicazione del Modbus-Master
● È necessario eseguire Modbus_Comm_Load per configurare una porta con la quale
possa comunicare l'istruzione Modbus_Master .
● Perché una porta possa essere utilizzata come master Modbus, non deve essere
utilizzata da Modbus_Slave . Con questa porta si possono utilizzare una o più istanze di
Modbus_Master 1). Tuttavia tutte le esecuzioni di Modbus_Master devono utilizzare lo
stesso DB di istanza per la porta.
● Le istruzioni Modbus non fanno uso di eventi di allarme della comunicazione per il
comando del processo di comunicazione. Il programma utente deve interrogare gli ordini
conclusi con l'istruzione Modbus_Master (DONE, ERROR).
● Si consiglia di richiamare tutte le esecuzioni di Modbus_Master per una determinata porta
da un OB di ciclo del programma. Le istruzioni master Modbus possono essere eseguite
solo in un ciclo di programma per volta o in un livello di elaborazione ciclico/temporizzato.
Non è consentito eseguirle in diversi livelli di elaborazione. L'interruzione di un'istruzione
master Modbus da parte di un'altra istruzione master Modbus in un livello di elaborazione
con priorità maggiore causa un funzionamento irregolare. Le istruzioni master Modbus
non devono essere elaborate nei livelli di avviamento, diagnostica o errore temporale.
1) Per "istanza del master Modbus" si intende qui un richiamo dell'istruzione Modbus_Master
con lo stesso collegamento a un'istruzione Modbus_Comm_Load e la stessa impostazione
dei parametri MB_ADDR, MODE, DATA_ADDR e DATA_LEN .
Esempio:
Modbus_Master viene richiamato con MODE=0 e DATA_ADDR=10
Questo ordine è ora attivo finché non si conclude con DONE=1 o ERROR=1 o finché non è
scaduto il tempo di controllo risposta parametrizzato nel parametro Blocked_Proc_Timeout .
Se al termine del tempo di controllo risposta si avvia un nuovo ordine prima che sia concluso
l'ordine precedente, l'ordine precedente si interrompe senza messaggi di errore.
Se ora, mentre questo ordine è in corso, l'istruzione viene richiamata una seconda volta con
gli stessi dati di istanza ma altre impostazioni dei parametri MODE e DATA_ADDR , questo
secondo richiamo viene concluso con ERROR=1 e STATUS=8200.
Richiamo dell'istruzione Modbus_Master con diverse impostazioni dei parametri
Se si devono collocare nel programma utente diversi richiami dell'istruzione Modbus_Master
con diverse impostazioni per MB_ADDR, MODE, DATA_ADDR oppure DATA_LEN , è
necessario assicurarsi che sia attivo sempre solo uno di questi richiami per volta perchè in
caso contrario viene emesso il messaggio di errore 16#8200 (interfaccia occupata da una
richiesta in corso).
Se non è possibile elaborare un richiamo per intero viene attivato il tempo di controllo
risposta attraverso il parametro Blocked_Proc_Timeout e l'ordine in corso si conclude.
Parametro REQ
FALSE = Nessuna richiesta; TRUE = Richiesta di trasmissione dati allo slave Modbus
Abilitazione della trasmissione richiesta. In questo modo il contenuto del buffer viene
trasferito all'interfaccia di comunicazione punto a punto.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
127
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Con i parametri DATA_ADDR e MODE si seleziona il tipo di codice funzione Modbus.
DATA_ADDR (indirizzo Modbus iniziale nello slave): indica l'indirizzo iniziale dei dati a cui
accedere nello slave Modbus.
L'istruzione Modbus_Master utilizza un ingresso MODE anziché un ingresso di codice
funzione. La combinazione di MODE e DATA_ADDR definisce il codice funzione utilizzato
nel telegramma Modbus effettivo. La tabella seguente mostra l'assegnazione tra il parametro
MODE, il codice funzione Modbus e l'area indirizzi Modbus in DATA_ADDR.
Tabella 5- 17 Funzioni Modbus
MODE
DATA_ADDR (indirizzo
Modbus)
0
DATA_LEN
(lunghezza dei dati)
Codice funzione
Modbus
Bit per richiesta
1 ...
9999
0
1 ...
01 Lettura dei bit di uscita:
2000/1992
1
Bit per richiesta
10001 ...
19999
0
1 ...
2000/1992 1
49999
1 ...
125/124 1
400001 ...
465535
1 ...
125/124
1
Parole per richiesta
39999
1
1 ...
9999
1
125/124 1
49999
400001 ...
465535
1
1
9999
1
9998
0 ...
65534
0 ...
9998
9998
06 Scrittura di un registro di mantenimento:
1
1
2 ...
0 ...
0 ...
Bit per richiesta
1 ...
9998
05 Scrittura di un bit di uscita:
1 parola per richiesta
40001 ...
0 ...
04 Lettura delle parole di ingresso:
Bit per richiesta
1 ...
9998
03 Lettura del registro di mantenimento:
40001 ...
30001 ...
0 ...
02 Lettura dei bit di ingresso:
Parole per richiesta
0
Operazione e dati
0 ...
9998
0 ...
65524
15 Scrittura di diversi bit di uscita:
1968/1960 1
Parole per richiesta
0 ...
9998
16 Scrittura di diversi registri di mantenimento:
40001 ...
49999
2 ...
123/122
0 ...
9998
400001 ...
465534
2 ...
123/122 1
0 ...
65534
22
Bit per richiesta
1 ...
9999
22
2 ...
15 Scrittura di uno o più bit di uscita:
1968/1960
1
Parole per richiesta
0 ...
9998
16 Scrittura di uno o più registri di
mantenimento:
40001 ...
49999
1 ...
123
0 ...
9998
400001 ...
465535
1 ...
122 1)
0 ...
65534
CM PtP - Configurazioni di accoppiamenti punto a punto
128
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
MODE
DATA_ADDR (indirizzo
Modbus)
DATA_LEN
(lunghezza dei dati)
11 Lettura della parola di stato e del
contatore di eventi della comunicazione dello slave. La parola di stato
indica 'occupato' (0 – libero,
0xFFFF - occupato). Il contatore di
eventi viene incrementato a ogni
telegramma elaborato senza errori.
80
08 Verifica dello stato dello slave tramite codice di diagnostica dei dati
0x0000 (test di loopback; lo slave
riporta la richiesta in eco)
1 parola per richiesta
1
81
-
1
-
65535
1 ...
-
08 Reset del contatore di eventi dello
slave tramite codice di diagnostica
dei dati 0x000A
-
Parole per richiesta
0 ...
3 ... 10,
12 ...
79,
82 ...
103,
105 ...
255
-
1 parola per richiesta
104
2
Operazione e dati
11 Gli operandi DATA_ADDR e DATA_LEN di Modbus_Master vengono ignorati entrambi in questa funzione.
-
1
Codice funzione
Modbus
04 Lettura parole di ingresso
125/124 1
0 ...
65535
Riservato
Con l'indirizzamento ampliato, vedere il parametro Extended_Adressing, la lunghezza max. dei dati si riduce di 1 byte o
di 1 parola a seconda del tipo di dati della funzione.
MODE 2 consente di scrivere uno o più bit di uscita e uno o più holding register utilizzando le funzioni Modbus 15 e 16.
MODE 1 utilizza le funzioni Modbus 5 e 6 per scrivere 1 bit di uscita e 1 holding register e le funzioni Modbus 15 e 16
per scrivere diversi bit di uscita e diversi holding register.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
129
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametro DATA_PTR
Il parametro DATA_PTR punta all'indirizzo DB o M in cui scrivere o leggere. Se si utilizza un
blocco dati è necessario creare un blocco dati globale che metta a disposizione la memoria
dei dati per le operazioni di letture e scrittura su slave Modbus.
Nota
S7-1200/1500 - Il blocco dati indirizzato tramite DATA_PTR deve consentire l'indirizzamento
diretto
Il blocco dati deve consentire l'indirizzamento diretto (assoluto) e simbolico.
Nota
Utilizzo del codice funzione 5
Il codice funzione 5 consente di impostare o eliminare un singolo bit.
Per impostare un bit, nella prima parola dell'area DB o merker indirizzata tramite DATA_PTR
deve essere indicato il valore "16#FF00".
• In S7-1200 per l'impostazione di un bit può essere indicato anche il valore "16#0100".
• Per resettare un bit, nella prima parola dell'area DB o merker indirizzata tramite
DATA_PTR deve essere indicato il valore "16#0000".
Tutti gli altri valori vengono rifiutati con ERROR = TRUE e STATUS = 16#8384.
Strutture dei blocchi dati per il parametro DATA_PTR
● Questi tipi di dati sono validi per la lettura di parole delle aree di indirizzi Modbus
(DATA_PTR) da 30001 a 39999, da 40001 a 49999 e da 400001 a 465535 oltre che per
la scrittura di parole delle aree di indirizzi Modbus (parametro DATA_PTR) da 40001 a
49999 e da 400001 a 465535.
– Array standard con tipo di dati WORD, UINT o INT
– Struttura di tipo WORD, UINT o INT definita da un nome nella quale ciascun elemento
ha un nome univoco e un tipo di dati a 16 bit.
– Struttura complessa di tipo definita da un nome nella quale ciascun elemento ha un
nome univoco e un tipo di dati a 16 o 32 bit.
● Per la lettura e scrittura di bit per l'area di indirizzi Modbus (parametro DATA_PTR) da
00001 a 09999 e la lettura di bit da 10001 a 19999.
– Campo standard da tipi di dati booleani.
– Struttura booleana definita da variabili definite in modo univoco.
● Benché non sia necessario è tuttavia consigliabile assegnare a ogni istruzione
Modbus_Master un'area di memoria a parte. Questo perché se più istruzioni
Modbus_Master leggono e scrivono nella stessa area di memoria è più probabile che i
dati si corrompano.
● Non è necessario che le aree dati per DATA_PTR si trovino nello stesso blocco dati
globale. È possibile creare un blocco dati con più aree per le operazioni di lettura
Modbus, un blocco dati per le operazioni di scrittura Modbus o un blocco dati per ogni
stazione slave.
Vedere anche
Modbus_Slave: Comunica come slave Modbus (Pagina 131)
CM PtP - Configurazioni di accoppiamenti punto a punto
130
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2.4
Modbus_Slave: Comunica come slave Modbus
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Descrizione
Con l'istruzione Modbus_Slave il programma utente può comunicare come slave Modbus
attraverso un CM (RS422/485 o RS232). STEP 7 crea automaticamente un DB di istanza
quando si inserisce l'istruzione. Il parametro MB_DB dell'istruzione Modbus_Comm_Load
deve essere collegato con il parametro MB_DB (statico) dell'istruzione Modbus_Slave .
Parametri
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
Indirizzo della stazione slave Modbus:
Area di indirizzi standard (1 ... 247)
Area di indirizzi ampliata (0 ... 65535)
S7300/400/
WinAC
MB_ADDR
IN
UInt
Word
-
COM_RST
IN/OUT
---
Bool
FALSE
Avvertenza: 0 è l'indirizzo Broadcast
Inizializzazione dell'istruzione Modbus_Slave
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
MB_HOLD_
REG
IN/OUT
NDR
OUT
Variant
Any
Bool
-
Puntatore al DB del registro di mantenimento Modbus: il
registro di mantenimento Modbus può essere un'area di
memoria dei merker o un blocco dati.
FALSE
Nuovi dati disponibili:
•
FALSE – Non sono disponibili nuovi dati
TRUE – Indica che il master Modbus ha scritto nuovi
dati
Il bit NDR è TRUE per la durata di un ciclo dopo che l'ultima richiesta è stata eseguita senza errori.
•
DR
OUT
Bool
FALSE
Lettura di dati:
•
FALSE – Non sono stati letti dati
TRUE – Indica che l'istruzione ha salvato nell'area di
destinazione i dati ricevuti dal master Modbus.
Il bit DR è TRUE per la durata di un ciclo dopo che l'ultima
richiesta è stata eseguita senza errori.
•
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
131
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
S7300/400/
WinAC
ERROR
OUT
Bool
FALSE
Il bit ERROR è TRUE per la durata di un ciclo dopo che
l'ultima richiesta si è conclusa con errori. Se l'esecuzione
si conclude con un errore, il codice di errore nel parametro
STATUS è valido solo durante il ciclo in cui ERROR =
TRUE.
STATUS
OUT
Word
0
Codice di errore (vedere Messaggi di errore (Pagina 144))
I codici funzione della comunicazione Modbus (1, 2, 4, 5 e 15) possono leggere e scrivere bit
e parole direttamente nell'immagine di processo degli ingressi e delle uscite della CPU. Per
questi codici funzione il parametro MB_HOLD_REG deve essere definito come tipo di dati
maggiore di un byte. La tabella seguente mostra un esempio di assegnazione degli indirizzi
Modbus all'immagine di processo nella CPU.
Tabella 5- 18 Assegnazione degli indirizzi Modbus all'immagine di processo
Funzioni Modbus
Codice
S7-1200
Funzione
Area dati
Area indirizzi
Area dati
Indirizzo CPU
01
Leggi bit
Uscita
0 ...
8191 Immagine di processo delle uscite
02
Leggi bit
Ingresso
0 ...
8191 Immagine di processo degli ingressi
04
Leggi parole Ingresso
0 ...
05
Scrivi bit
Uscita
0 ...
8191 Immagine di processo delle uscite
15
Scrivi bit
Uscita
0 ...
8191 Immagine di processo delle uscite
Q0.0 ...
Q1023.7
511 Immagine di processo degli ingressi
Q0.0 ...
Q1023.7
I0.0 ...
I1023.7
IW0 ...
IW1022
Q0.0 ...
Q1023.7
Tabella 5- 19 Assegnazione degli indirizzi Modbus all'immagine di processo
Funzioni Modbus
S7-1500 / S7-300 / S7-400
Codice di
funzione
Funzione
Area dati
Area indirizzi
Area dati
Indirizzo CPU
01
Leggi bit
Uscita
0 ...
9998 Immagine di processo delle uscite
02
Leggi bit
Ingresso
0 ...
9998 Immagine di processo degli ingressi
04
Leggi parole Ingresso
0 ...
9998 Immagine di processo degli ingressi
05
Scrivi bit
Uscita
0 ...
9998 Immagine di processo delle uscite
15
Scrivi bit
Uscita
0 ...
9998 Immagine di processo delle uscite
Q0.0 ...
Q1248.6
Q0.0 ...
Q1248.6
I0.0 ...
I1248.6
IW0 ...
IW19996
Q0.0 ...
Q1248.6
Nota
A seconda della configurazione di memoria della CPU l'area di indirizzi disponibile può
anche essere più piccola.
CM PtP - Configurazioni di accoppiamenti punto a punto
132
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
I codici funzione della comunicazione Modbus (3, 6, 16) utilizzano un registro di
mantenimento Modbus che può essere un'area di indirizzi della memoria dei merker o un
blocco dati. Il tipo di registro di mantenimento è specificato dal parametro MB_HOLD_REG
dell'istruzione Modbus_Slave.
Nota
S7-1200/1500 - Tipo di blocco dati MB_HOLD_REG
Un blocco dati con registro di mantenimento Modbus deve consentire l'indirizzamento diretto
(assoluto) e simbolico.
Tabella 5- 20 Funzioni di diagnostica
Funzioni di diagnostica Modbus di Modbus_Slave dell'S7-1200
Codici funzione
Sottofunzione
Descrizione
08
0000H
Emette i dati interrogati con il test dell'eco: l'istruzione Modbus_Slave restituisce a un
master Modbus l'eco di una parola dati ricevuta.
08
000AH
Elimina il contatore di eventi di comunicazione: l'istruzione Modbus_Slave elimina il
contatore degli eventi di comunicazione utilizzato per la funzione Modbus 11.
11
Richiama il contatore di eventi di comunicazione: l'istruzione Modbus_Slave utilizza un
contatore interno degli eventi di comunicazione per registrare il numero di richieste di
lettura e scrittura Modbus senza errori che vengono inviate allo slave Modbus. Il contatore non viene incrementato per le funzioni 8 e 11 né per le richieste Broadcast. Il contatore non viene incrementato nemmeno in caso di richieste che causano errori di
comunicazione (ad es. errori di parità o di CRC).
L'istruzione Modbus_Slave supporta le richieste di scrittura Broadcast dei master Modbus
purché prevedano l'accesso a indirizzi validi. Per i codici funzione non supportati dalla
funzione Broadcast Modbus_Slave genera il codice di errore 16#8188.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
133
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabili dello slave Modbus
La tabella mostra le variabili statiche pubbliche contenute nel DB di istanza di Modbus_Slave
utilizzabili nel programma utente.
Tabella 5- 21 Variabili dello slave Modbus
Variabile
Tipo di dati Standard
Descrizione
HR_Start_Offset
Word
0
Indica l'indirizzo iniziale del registro di mantenimento Modbus (standard = 0)
IB_Start
Word
0
Indirizzo iniziale dell'area di indirizzi ammessa degli ingressi (byte 0
... 65535)
IB_Count
Word
0xFFFF
Numero di byte di ingresso indirizzabili tramite il master Modbus.
Esempio:
IB_Start = 0 e IB_Count = 10; byte di ingresso 0 ... 9 indirizzabili
IB_Count = 0; nessun byte di ingresso indirizzabile
QB_Start
Word
0
Indirizzo iniziale dell'area di indirizzi ammessa delle uscite (byte 0 ...
65535)
QB_Count
Word
0xFFFF
Numero di byte di uscita indirizzabili tramite il master Modbus.
Esempio:
IB_Start = 0 e IB_Count = 10; byte di uscita 0 ... 9 indirizzabili
IB_Count = 0; nessun byte di uscita indirizzabile
Extended_Addressing
Bool
FALSE
Indirizzamento ampliato, configura l'indirizzamento dello slave a byte
singolo o doppio
(FALSE = indirizzo a byte singolo, TRUE = indirizzo a doppio byte)
Request_Count
Word
0
Numero di richieste totali ricevute da questo slave
Slave_Message_Count
Word
0
Numero di richieste ricevute per questo slave specifico
Bad_CRC_Count
Word
0
Numero di richieste ricevute che presentano un errore CRC
Broadcast_Count
Word
0
Numero di richieste Broadcast ricevute
Exception_Count
Word
0
Errori specifici di Modbus che vengono confermati al master con un
Exception
Success_Count
Word
0
Numero di richieste ricevute per questo slave specifico senza errori
di protocollo
MB_DB
MB_BASE
-
Il parametro MB_DB dell'istruzione Modbus_Comm_Load deve essere collegato con questo parametro MB_DB dell'istruzione Modbus_Master.
Il programma utente può scrivere valori nelle variabili HR_Start_Offset e
Extended_Addressing e comandare il funzionamento dello slave Modbus. Le altre variabili si
possono leggere per controllare lo stato Modbus.
CM PtP - Configurazioni di accoppiamenti punto a punto
134
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Regole per la comunicazione dello slave Modbus
● È necessario eseguire Modbus_Comm_Load per configurare una porta attraverso la
quale possa comunicare l'istruzione Modbus_Slave .
● La porta che deve rispondere come slave a un master Modbus non può essere
programmata con l'istruzione Modbus_Master .
● Con una determinata porta è consentito utilizzare una sola istanza di Modbus_Slave ; in
caso contrario potrebbe verificarsi un comportamento imprevisto.
● Le istruzioni Modbus non fanno uso di eventi di allarme della comunicazione per il
comando del processo di comunicazione. Per comandare il processo di comunicazione il
programma utente deve interrogare le operazioni di trasmissione e ricezione concluse
utilizzando l'istruzione Modbus_Slave .
● L'istruzione Modbus_Slave deve essere eseguita periodicamente con una frequenza che
consenta di reagire tempestivamente alle richieste provenienti da un master Modbus. Si
consiglia di richiamare Modbus_Slave in ogni ciclo da un OB di ciclo di programma. È
possibile ma non consigliabile eseguire Modbus_Slave da un OB di schedulazione
orologio a causa di eccessivi ritardi nella routine di interrupt che potrebbero bloccare
temporaneamente l'esecuzione di altre routine di interrupt.
Temporizzazione del segnale Modbus
Modbus_Slave deve essere eseguita periodicamente, in modo da ricevere tutte le richieste
dal master Modbus e rispondere in modo adeguato. La frequenza di esecuzione di
Modbus_Slave dipende dal timeout predefinito dal master Modbus per la risposta. Questo
rapporto è rappresentato nella figura seguente.
Il periodo di timeout per la risposta (RESP_TO) indica per quanto tempo un master Modbus
resta in attesa che lo slave Modbus inizi a inviare una risposta. Questo intervallo di tempo
non viene definito dal protocollo Modbus ma da un parametro dell'istruzione
Modbus_Comm_Load. Poiché sia la ricezione che la trasmissione di un telegramma
richiedono diversi richiami dell'istruzione Modbus_Slave (minimo tre ciascuna), è necessario
eseguire Modbus_Slave almeno dodici volte durante il periodo di timeout per la risposta del
master Modbus perché la ricezione e la trasmissione dei dati da parte dello slave Modbus
venga eseguita il doppio di volte di quanto predefinito dal periodo di timeout.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
135
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
HR_Start_Offset
Gli indirizzi del registro di mantenimento Modbus iniziano da 40001 o 400001. Questi
indirizzi corrispondono all'indirizzo iniziale del registro di mantenimento nella memoria del
sistema di destinazione. È comunque possibile configurare la variabile HR_Start_Offset per
configurare un indirizzo iniziale del registro di mantenimento Modbus diverso da 40001 o
400001.
L'indirizzo 0 nel telegramma di ricezione corrisponde all'indirizzo iniziale del registro di
mantenimento nella memoria del sistema di destinazione. La variabile HR_Start_Offset
consente di configurare un indirizzo iniziale diverso da 0 per il registro di mantenimento
Modbus.
Ad es. è possibile configurare un registro di mantenimento che inizia da MW100 e ha una
lunghezza di 100 parole. Con HR_Start_Offset = 20 l'indirizzo 20 nel telegramma di ricezione
corrisponde all'indirizzo iniziale del registro di mantenimento nella memoria di destinazione
(MW100). Ogni indirizzo nel telegramma di ricezione, inferiore a 20 e superiore a 119,
causerà un errore di indirizzamento.
Tabella 5- 22 Esempio di indirizzamento del registro di mantenimento Modbus se DATA_PTR è un puntatore rivolto verso
MW100 con una lunghezza di 100 parole
HR_Start_Offset
0
20
Indirizzo
Minimo
Massimo
Indirizzo Modbus (parola)
0
99
Indirizzo S7-1500
MW100
MW298
Indirizzo Modbus (parola)
20
119
Indirizzo S7-1500
MW100
MW298
HR_Start_Offset è un valore di parola che indica l'indirizzo iniziale del registro di
mantenimento Modbus ed è salvato nel blocco dati di istanza Modbus_Slave . Questa
variabile statica pubblica si può selezionare dalla casella di riepilogo dei parametri dopo aver
inserito Modbus_Slave nel programma utente.
Ad esempio, se Modbus_Slave è inserita in un segmento KOP si può passare a un
segmento precedente e assegnare il valore HR_Start_Offset con il comando MOVE. È
necessario assegnare il valore prima di eseguire Modbus_Slave.
Inserimento di una variabile slave Modbus utilizzando il nome del DB standard:
1. Posizionare il cursore nel campo del parametro OUT1 e scrivere una 'm'.
2. Selezionare nella casella di riepilogo il DB di istanza desiderato dell'istruzione
Modbus_Slave.
3. Posizionare il cursore a destra del nome del DB (dopo le virgolette) e inserire un punto.
4. Selezionare "Modbus_Slave_DB.HR_Start_Offset" nella casella di riepilogo.
CM PtP - Configurazioni di accoppiamenti punto a punto
136
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2.5
Struttura del telegramma
Extended_Addressing
L'accesso alla variabile Extended_Addressing è simile a quello del riferimento
HR_Start_Offset, a parte il fatto che la variabile Extended_Addressing è un valore booleano.
Per l'indirizzamento dello slave Modbus è possibile configurare, con Extended_Adressing =
FALSE, un unico byte (standard Modbus) o un doppio byte (Extended_Adressing = TRUE).
L'indirizzamento ampliato consente di indirizzare più di 247 dispositivi all'interno di un'unica
rete. Extended_Adressing = TRUE consente l'accesso a max. 65535 indirizzi. Qui di seguito
è riportato un esempio di telegramma Modbus.
Tabella 5- 23 Indirizzo slave a un byte (byte 0)
Byte 0
Byte 1
Byte 2
Byte 3
Richiesta
Indirizzo
slave
Codice
funzione
Risposta valida
Indirizzo
slave
Codice
funzione
Lunghezza
Messaggio di
errore
Indirizzo
slave
0xxx
Exception
code
Byte 4
Indirizzo iniziale
Byte 5
Dati
Dati...
Tabella 5- 24 Indirizzo slave a due byte (byte 0 e 1)
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione
Risposta valida
Indirizzo slave
Codice funzione
Lunghezza
Messaggio di
errore
Indirizzo slave
0xxx
Exception
code
Byte 5
Indirizzo iniziale
Byte 6
Dati
Dati...
Descrizione dei telegrammi
Il traffico dei dati tra master e slave ovvero tra slave e master inizia con l'indirizzo slave
seguito dal codice funzione. Successivamente vengono trasmessi i dati. La struttura del
campo dati varia a seconda del codice funzione utilizzato. Alla fine del telegramma viene
trasmessa la somma di controllo (CRC).
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
137
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice funzione 1 - Questa funzione consente di leggere singoli bit di uscita
Tabella 5- 25 FC 1 - Lettura dei bit di uscita
1
2
3
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 1
Risposta valida
Indirizzo slave
Codice funzione 1
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x81
Exception code 2
2
3
Byte 3
Byte 4
Indirizzo iniziale
Byte 5
Numero di uscite
Dati di uscita 3)
---
Lunghezza: se il numero delle uscite diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
I dati di uscita possono comprendere diversi byte
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione 1
Risposta
valida
Indirizzo slave
Codice funzione 1
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x81
Exception code 2
Byte 5
Indirizzo iniziale
Byte 6
Numero di uscite
Dati di uscita
---
Lunghezza: se il numero delle uscite diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
I dati di uscita possono comprendere diversi byte
Codice funzione 2 - Questa funzione consente di leggere singoli bit di ingresso
Tabella 5- 26 FC 2 - Lettura dei bit di ingresso
1
2
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 2
Byte 2
Byte 3
Risposta
valida
Indirizzo slave
Codice funzione 2
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x82
Exception code 2
Indirizzo iniziale
Byte 4
Byte 5
Numero degli ingressi
Dati di ingresso
---
Lunghezza: se il numero degli ingressi diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
138
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Byte 0
1
2
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione 2
Indirizzo iniziale
Risposta
valida
Indirizzo slave
Codice funzione 2
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x82
Exception code 2
Byte 5
Byte 6
Numero degli ingressi
Dati di ingresso
---
Lunghezza: se il numero degli ingressi diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
Codice funzione 3 - Questa funzione consente di leggere singoli registri
Tabella 5- 27 FC 3 - Lettura del registro di mantenimento
1
2
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 3
Risposta valida
Indirizzo slave
Codice funzione 3
Messaggio di
errore
Indirizzo slave
0x83
2
Byte 3
Byte 4
Indirizzo iniziale
Lunghezza 1
Byte 5
Numero di registri
Dati di registro
Exception code
---
2
Lunghezza: numero dei byte
Codice E: 01 o 02 o 03 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione 3
Risposta
valida
Indirizzo slave
Codice funzione 3
Lunghezza 1
Indirizzo iniziale
Messaggio di
errore
Indirizzo slave
0x83
Exception code 2
Byte 5
Byte 6
Numero di registri
Dati di registro
---
Lunghezza: numero dei byte
Codice E: 01 o 02 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
139
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice funzione 4 - Questa funzione consente di leggere singoli registri
Tabella 5- 28 FC 4 - Lettura delle parole di ingresso
1
2
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 4
Risposta valida
Indirizzo slave
Codice funzione 4
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x84
Exception code 2
2
Byte 3
Indirizzo iniziale
Byte 4
Byte 5
Numero di parole di ingresso
Dati di ingresso
---
Lunghezza: 2 * numero di parole di ingresso
Codice E: 01 o 02 o 03 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione 4
Indirizzo iniziale
Risposta
valida
Indirizzo slave
Codice funzione 4
Lunghezza 1
Messaggio di
errore
Indirizzo slave
0x84
Exception code 2
Byte 5
Byte 6
Numero di parole di ingresso
Dati di ingresso
---
Lunghezza: 2 * numero di parole di ingresso
Codice E: 01 o 02 o 03 o 04
Codice funzione 5 - Questa funzione consente di impostare o eliminare un singolo bit
Tabella 5- 29 FC 5 - Scrittura di un bit di uscita
1
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 5
Risposta valida
Indirizzo slave
Codice funzione 5
Lunghezza
Messaggio di
errore
Indirizzo slave
0x85
Exception code
Byte 3
Byte 4
Byte 5
Indirizzo iniziale
Valore
Valore
---
1
Codice E: 01 o 02 o 03 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Richiesta
Indirizzo slave
Codice funzione 5
Risposta
valida
Indirizzo slave
Codice funzione 5
Lunghezza
Messaggio di
errore
Indirizzo slave
0x85
Exception code 1
Byte 5
Indirizzo iniziale
Byte 6
Valore
Valore
---
Codice E: 01 o 02 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
140
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice funzione 6 - Questa funzione consente di scrivere singoli registri
Tabella 5- 30 FC 6 - Scrittura del registro di mantenimento
1
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 6
Risposta valida
Indirizzo slave
Codice funzione 6
Messaggio di
errore
Indirizzo slave
0x86
Byte 3
Byte 4
Byte 5
Indirizzo
Scheda
Indirizzo
Scheda
Exception code 1
---
Codice E: 01 o 02 o 03 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Richiesta
Indirizzo slave
Codice funzione 6
Indirizzo
Scheda
Risposta
valida
Indirizzo slave
Codice funzione 6
Indirizzo
Scheda
Messaggio di
errore
Indirizzo slave
0x86
Exception code 1
---
Codice E: 01 o 02 o 03 o 04
Codice funzione 8 - Questa funzione consente di controllare il collegamento di comunicazione
Tabella 5- 31 FC 8 - Stato dello slave
1
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 8
Codice di diagnostica
Valore di test
Risposta valida
Indirizzo slave
Codice funzione 8
Codice di diagnostica
Valore di test
Messaggio di
errore
Indirizzo slave
0x88
Byte 3
Exception code
Byte 4
Byte 5
---
1
Codice E: 01 o 03 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Richiesta
Indirizzo slave
Codice funzione 8
Codice di diagnostica
Valore di test
Risposta
valida
Indirizzo slave
Codice funzione 8
Codice di diagnostica
Valore di test
Messaggio di
errore
Indirizzo slave
0x88
Exception code 1
---
Codice E: 01 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
141
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice funzione 11 - Questa funzione consente di leggere "Status-Word" di 2 byte e un
"Event-Counter" di 2 byte
Tabella 5- 32 FC 11 - Contatore di eventi della comunicazione slave
1
Byte 0
Byte 1
Richiesta
Indirizzo slave
Codice funzione 11
Risposta valida
Indirizzo slave
Codice funzione 11
Messaggio di
errore
Indirizzo slave
0x8B
Byte 3
Byte 4
Byte 5
--Stato
Contatore di eventi
Exception code 1
---
Codice E: 01 o 04
Byte 0
1
Byte 2
Byte 1
Byte 2
Byte 3
Richiesta
Indirizzo slave
Codice funzione 11
Risposta
valida
Indirizzo slave
Codice funzione 11
Messaggio di
errore
Indirizzo slave
0x8B
Byte 4
Byte 5
Byte 6
--Stato
Contatore di eventi
Exception code 1
---
Codice E: 01 o 04
Codice funzione 15 - Questa funzione consente di scrivere diversi bit
Tabella 5- 33 FC 15 - Scrittura di uno/più bit di uscita
Byte 0
Byte 1
Richiesta
Indirizzo
slave
Codice funzione 15
Indirizzo iniziale
Numero di parole di
uscita
Risposta
valida
Indirizzo
slave
Codice funzione 15
Indirizzo iniziale
Numero di parole di
uscita
Messaggio di Indirizzo
errore
slave
1
2
2
Byte 3
Byte 4
Byte 5
Exception
code 2
Byte 6
Byte 7
Contatore
di byte 1
Byte n
Valore
-----
Contatore di byte: se il numero dei byte diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
Byte 0
1
0x8F
Byte 2
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Richiesta
Indirizzo slave
Codice
funzione 15
Indirizzo iniziale
Numero di parole di
uscita
Risposta
valida
Indirizzo slave
Codice
funzione 15
Indirizzo iniziale
Numero di parole di
uscita
Messaggio di
errore
Indirizzo slave
0x8F
Exception code 2
Byte 7
Byte 8
Contatore
di byte 1
Byte n
Valore
-----
Contatore di byte: se il numero dei byte diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
Codice E: 01 o 02 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
142
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice funzione 16 - Questa funzione consente di scrivere uno o più registri
Tabella 5- 34 FC 16 - Scrittura di uno/più registri di mantenimento
Byte 0
Byte 1
Richiesta
Indirizzo
slave
Codice
funzione 16
Indirizzo iniziale
Numero di registri
Risposta
valida
Indirizzo
slave
Codice
funzione 16
Indirizzo iniziale
Numero di registri
Messaggio di Indirizzo
errore
slave
1
2
2
Byte 3
Byte 4
Byte 5
Exception
code 2
Byte 6
Byte 7
Contatore
di byte 1
Byte n
Valore
-----
Contatore di byte: numero di registri * 2
Codice E: 01 o 02 o 03 o 04
Byte 0
1
0x90
Byte 2
Byte 2
Byte 3
Richiesta
Indirizzo slave
Byte 1
Codice
funzione 16
Indirizzo iniziale
Byte 4
Numero di registri
Risposta
valida
Indirizzo slave
Codice
funzione 16
Indirizzo iniziale
Numero di registri
Messaggio di
errore
Indirizzo slave
0x90
Exception code
2
Byte 5
Byte 6
Byte 7
Byte 8
Contatore
di byte 1
Byte n
Valore
-----
Contatore di byte: numero di registri * 2
Codice E: 01 o 02 o 03 o 04
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
143
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.2.6
Messaggi di errore
Panoramica dei messaggi di errore PtP
I messaggi di errore vengono messi a disposizione nell'uscita STATUS di un'istruzione e
possono essere valutati lì o elaborati nel programma utente.
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Stato di RECEIVE e codici di errore
16#0094
Fine del telegramma riconosciuta dalla "ricezione di
una lunghezza fissa/massima del telegramma"
-
16#0095
Fine del telegramma riconosciuta dal "Time out dei
messaggi"
-
16#0096
Fine del telegramma riconosciuta dallo scadere del
"Tempo di ritardo del carattere"
-
16#0097
Il telegramma è stato interrotto poiché è stato raggiunto il tempo di risposta massimo.
-
16#0098
Fine del telegramma riconosciuta perché sono soddisfatte le condizioni per "Rileva la lunghezza dal messaggio"
-
16#0099
Fine del telegramma riconosciuta dalla ricezione della "Sequenza di fine"
Stato di SEND e codici di errore
16#7000
Blocco nel funzionamento a vuoto
16#7001
Primo richiamo di un nuovo telegramma: trasmissione dei dati avviata
-
16#7002
Richiamo intermedio: trasmissione dei dati in corso
-
16#8085
Lunghezza indicata non consentita
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (Byte)
16#8088
La lunghezza indicata è maggiore dell'area impostata
nel buffer di ricezione.
Modificare l'area nel buffer di ricezione o selezionare
una lunghezza del telegramma adeguata all'area
impostata nel buffer di ricezione.
Avvertenza: se nel parametro BUFFER è stato specificato il tipo di dati STRING, questo codice di errore
Sono consentiti (in funzione del modulo):
viene visualizzato anche se la lunghezza della stringa 1-1024/2048/4096 (byte)
attuale è minore del valore indicato nel parametro
LENGTH.
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
CM PtP - Configurazioni di accoppiamenti punto a punto
144
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Stato di RECEIVE e codici di errore
16#8088
Il numero di caratteri ricevuti è maggiore di quanto
indicato nel parametro BUFFER.
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (byte)
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
Codici di segnalazione degli errori delle funzioni speciali
16#818F
Impostazione errata per il numero del parametro (solo Selezionare un numero di parametro adeguato
per USS)
(PARAM).
Sono consentiti: 0-2047
16#8190
Impostazione errata del calcolo CRC
Selezionare un valore adeguato per il calcolo CRC.
Sono consentiti: disattivato o attivato.
Verificare se il modulo indirizzato supporta il calcolo
CRC.
16#8191
Impostazione errata dell'allarme di diagnostica
Selezionare un valore adatto per "Allarme di diagnostica".
Sono consentiti: allarme di diagnostica disattivato o
attivato.
Verificare se il modulo indirizzato supporta la generazione di allarmi di diagnostica.
Codici di segnalazione degli errori di configurazione della porta
16#81A0
Il modulo non supporta questo protocollo.
Selezionare un protocollo (PROTOCOL) consentito
per il modulo.
16#81A1
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione (BAUD)
consentita per il modulo.
16#81A2
Il modulo non supporta questa impostazione per la
parità.
Selezionare un valore adatto per "Parità" (PARITY).
16#81A3
Il modulo non supporta questo numero di bit di dati.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
Selezionare un valore adatto per "Numero di bit di
dati" (DATABITS).
Sono consentiti:
16#81A4
Il modulo non supporta questo numero di bit di stop.
•
7 (2)
•
8 (1)
Selezionare un valore adatto per "Numero di bit di
stop" (STOPBITS).
Sono consentiti:
•
1 (1)
•
2 (2)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
145
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81A5
Il modulo non supporta questo tipo di controllo del
flusso dati.
Selezionare un controllo del flusso dati
(FLOWCTRL) consentito per il modulo.
16#81A7
Valore non consentito per XON o XOFF
Selezionare valori adatti per XON (XONCHAR) e
XOFF(XOFFCHAR).
16#81AA
Modo di funzionamento non consentito
I modi di funzionamento consentiti sono:
Campo di valori ammesso: 0...255
16#81AB
16#81AC
16#81AF
•
Fullduplex (RS232) (0)
•
Fullduplex (RS 422) a quattro fili (punto a punto)
(1) / (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(master multipoint) (2)/ (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(Slave multipoint) (3)
•
Semiduplex (RS485) funzionamento a 2 fili (4)
Preimpostazione della linea di ricezione non consenti- Le preimpostazioni consentite sono:
ta
• "Nessuna" preimpostazione (0)
Valore non consentito per "Riconoscimento Break"
Il modulo non supporta questo protocollo.
•
Segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break) (1):
È disponibile solo nei seguenti casi: "Fullduplex
(RS422) funzionamento a quattro fili (Punto a
punto)" e "Fullduplex (RS422) funzionamento a
quattro fili (Slave multipoint)".
•
Segnale R(A)=0 V, segnale R(B)=5 V (2): questa
preimpostazione corrisponde allo stato di riposo
(nessuna trasmissione attiva).
Selezionare un valore adatto per "Riconoscimento
Break". Sono consentiti:
•
riconoscimento Break disattivato (0)
•
riconoscimento Break attivo (1).
Selezionare un protocollo consentito per il modulo.
Codici di errore di configurazione della trasmissione
16#81B5
Più di 2 caratteri finali -osequenza di fine > 5 caratteri
Selezionare valori adatti per "Carattere finale" e
"Sequenza di fine".
Sono consentiti:
•
disattivato (0),
• 1 (1) o 2 (2) caratteri finali
oppure
16#81B6
Send Configuration respinto perché è selezionato il
protocollo 3964(R)
•
disattivato (0),
•
1 (1) ... 5 (5) caratteri per la sequenza di fine.
Assicurarsi che con il protocollo 3964(R) impostato
non venga inviata la configurazione della trasmissione.
CM PtP - Configurazioni di accoppiamenti punto a punto
146
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81C0
Condizione iniziale non consentita
Selezionare una condizione iniziale adatta.
Sono consentiti:
•
Invia Break prima dell'inizio del telegramma
•
Invia Idle Line.
16#81C1
Condizione finale non consentita o non selezionata
Selezionare una condizione finale adatta (vedere
Ricezione di dati con Freeport (Pagina 35)).
16#81C3
Valore non consentito per "Lunghezza max. del messaggio"
Selezionare un valore adatto per "Lunghezza max.
del messaggio" (MAXLEN).
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C4
Valore non consentito per "Offset del campo di lunghezza nel messaggio"
Selezionare un valore adatto per "Offset del campo
di lunghezza nel messaggio".
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C5
Valore non consentito per "Dimensioni del campo di
lunghezza"
Selezionare un valore adatto per "Dimensioni del
campo di lunghezza" (LENGTHSIZE).
Campo valori consentito in byte:
16#81C6
Valore non consentito per "Numero dei caratteri che
non rientrano nella lunghezza indicata"
•
1 (1)
•
2 (2)
•
4 (4)
Selezionare un valore adatto per "Nr. dei caratteri
che non rientrano nella lunghezza indicata"
(LENGTHM).
Campo di valori ammesso: 0 ... 255 (byte)
16#81C7
La somma di "Offset del campo di lunghezza nel
messaggio + Dimensioni del campo di lunghezza +
Numero dei caratteri che non rientrano nella lunghezza indicata" supera la lunghezza massima del telegramma.
Selezionare valori adatti per "Offset del campo di
lunghezza nel messaggio", "Dimensioni del campo
di lunghezza" e "Numero dei caratteri che non rientrano nella lunghezza indicata".
Campo di valori ammesso:
•
Offset del campo di lunghezza nel messaggio (in
funzione del modulo):
0-1024/2048/4096 (byte)
•
Dimensioni del campo di lunghezza: 1, 2 o 4
(byte)
•
Numero dei caratteri che non rientrano nella
lunghezza indicata: 0-255 (byte)
16#81C8
Valore non consentito per "Time out di risposta"
Selezionare un valore adatto per "Time out di risposta".
16#81C9
Valore non consentito per "Tempo di ritardo del carat- Selezionare un valore adatto per "Tempo di ritardo
tere"
del carattere".
16#81CB
Sequenza di fine del telegramma attivata ma nessuno Attivare uno o più caratteri per la verifica.
dei caratteri è attivato per la verifica
Campo di valori ammesso: 1-65535 (ms)
Campo di valori ammesso: 1-65535 (bit time)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
147
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81CC
Sequenza di inizio del telegramma attivata ma nessuno dei caratteri è attivato per la verifica
Attivare uno o più caratteri per la verifica.
16#81CD
Valore non consentito per "Impedisci sovrascrittura"
Selezionare un valore adatto per "Impedisci sovrascrittura".
Sono consentiti:
16#81CE
Valore non consentito per "Cancella buffer di ricezione all'avviamento"
•
Impedisci sovrascrittura disattivato (0) oppure
•
Impedisci sovrascrittura attivato (1)
Selezionare un valore adatto per "Cancella buffer di
ricezione all'avviamento".
Sono consentiti:
•
Cancella buffer di ricezione all'avviamento disattivato (0)
•
Cancella buffer di ricezione all'avviamento attivato (1)
Stato di SEND e codici di errore
16#81D0
Ricezione di una richiesta di trasmissione durante
l'esecuzione di un ordine di trasmissione
Assicurarsi che durante l'esecuzione di un ordine di
trasmissione non si verifichino ulteriori richieste di
trasmissione.
16#81D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#81D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#81D3
Overflow del buffer di trasmissione / telegramma di
trasmissione troppo grande
Selezionare una lunghezza del telegramma inferiore.
16#81D5
Trasmissione interrotta per modifica della parametrizzazione, rilevamento della rottura di un conduttore o
CPU in STOP
Verificare la parametrizzazione, la rottura conduttore
e lo stato della CPU.
16#81D6
Trasmissione interrotta per mancata ricezione del
carattere finale
Verificare la parametrizzazione dei caratteri finali e il
telegramma del partner della comunicazione.
16#81D7
Comunicazione disturbata tra programma utente e
modulo
Verificare la comunicazione (ad es. la corrispondenza del numero della sequenza).
16#81D8
Tentativo di trasmissione respinto perché il modulo
non è parametrizzato
Parametrizzare il modulo.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
CM PtP - Configurazioni di accoppiamenti punto a punto
148
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso la funzione di ricezione nel
programma utente o parametrizzare una comunicazione con controllo del flusso dati.
16#81E1
Telegramma interrotto: Errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#81E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#81E3
Telegramma interrotto: errore di overflow dei caratteri
Errore di firmware: rivolgersi al Customer Support.
16#81E4
Telegramma interrotto: lunghezza di "Offset del campo di lunghezza nel messaggio + Dimensioni del
campo di lunghezza + Numero dei caratteri che non
rientrano nella lunghezza indicata" superiore al buffer
di ricezione
Verificare le impostazioni per Offset del campo di
lunghezza nel messaggio, Dimensioni del campo di
lunghezza e Numero dei caratteri che non rientrano
nella lunghezza indicata.
16#81E5
Telegramma interrotto: Break
Linea di ricezione verso il partner interrotta.
16#81E6
Numero massimo di "Telegrammi in ricezione bufferizzati" superato
Richiamare più spesso l'istruzione nel programma
utente, parametrizzare una comunicazione con controllo del flusso dati o aumentare il numero di telegrammi salvati nel buffer.
16#81E7
Errori di sincronizzazione tra il modulo e Receive_P2P
Accertarsi che diverse istanze di Receive_P2P non
accedano allo stesso modulo.
16#81E8
Telegramma interrotto: tempo di ritardo del carattere
scaduto prima che sia stato riconosciuto il criterio di
fine del messaggio
Il dispositivo partner è troppo lento o è disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#81E9
Errore CRC Modbus (solo moduli di comunicazione
che supportano Modbus)
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#81EA
Telegramma Modbus troppo corto (solo moduli di
comunicazione che supportano Modbus)
La lunghezza minima del telegramma Modbus non è
stata raggiunta. Controllare il partner di comunicazione.
16#81EB
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Ripristinare la linea o attivare il partner.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Controllare i parametri del riconoscimento della fine
del telegramma.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
149
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore dei segnali addizionali V24
16#81F0
Il modulo non supporta segnali addizionali V24
Si è tentato di impostare segnali addizionali per un
modulo che non supporta i segnali addizionali V24.
Assicurarsi che si tratti di un modulo RS232 o che
sia impostata la modalità RS232 (ET 200SP).
16#81F1
Nessun comando dei segnali addizionali V24
Se è attivo il controllo del flusso dati hardware non è
possibile comandare manualmente i segnali addizionali V24.
16#81F2
Impossibile impostare il segnale DSR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DTE.
L'unità deve essere di tipo DCE (data communication equipment).
16#81F3
Impossibile impostare il segnale DTR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DCE.
L'unità deve essere di tipo DTE (data terminal equipment).
16#81F4
Errore block header (ad es. tipo di blocco errato oppure lunghezza di blocco errata)
Verificare il DB di istanza e il block header.
Codici di errore di configurazione della ricezione
16#8201 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
16#8225
Receive_Conditionsindica l'area di memoria ottimizza- Inserire un puntatore a un'area con la lunghezza
max. seguente:
ta maggiore di 1 kByte
16#8229 1)
Inserire un puntatore a uno dei seguenti tipi di dati:
DB, BOOL, BYTE, CHAR, WORD, INT, DWORD,
DINT, REAL, DATE, TIME_OF_DAY, TIME,
S5TIME, DATE_AND_TIME, STRING
oppure
•
Receive_Conditions indica l'area di memoria ottimizzata e la lunghezza di ricezione è maggiore dell'area
indirizzata con Receive_Conditions.
• Area di memoria non ottimizzata: 4 kByte
Avvertenza: Se il puntatore indica un'area di memoria ottimizzata, non trasmettere più di 1 kByte.
Receive_Conditions è un puntatore rivolto verso
BOOL con numero di bit diverso da n * 8
Se si utilizza un puntatore rivolto verso BOOL il
numero di bit deve essere un multiplo di 8.
Area di memoria ottimizzata: 1 kByte
Codici di errore generali
16#8280
16#8281
Conferma negativa durante la lettura del modulo
Conferma negativa durante la scrittura del modulo
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici RDREC.STATUS e
nella descrizione dell'SFB RDREC.
•
Controllare quanto immesso nel parametro
PORT
•
Prima del 1° richiamo impostare il parametro
COM_RST.
Controllare quanto immesso nel parametro PORT
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici WRREC.STATUS e
nella descrizione dell'SFB WRREC.
16#8282
Modulo non disponibile
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
150
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#82C1
Valore non consentito per "Telegrammi in ricezione
bufferizzati".
Selezionare un valore adatto per "Telegrammi in
ricezione bufferizzati".
Campo di valori ammesso: 1-255
16#82C2
Receive Configuration respinto perché è selezionato il Assicurarsi che con il protocollo 3964(R) impostato
protocollo 3964(R)
non venga inviata la configurazione della ricezione.
16#8301 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
Selezionare un tipo di dati consentito.
16#8322
Lunghezza dell'area errata per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8324
Errore di area per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8328
Errore di impostazione alla lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
Sono consentiti: DB, BOOL, BYTE, CHAR, WORD,
INT, DWORD, DINT, REAL, DATE, TIME_OF_DAY,
TIME, S5TIME, DATE_AND_TIME, STRING
Stato di SEND e codici di errore
16#8328 1)
BUFFER è un puntatore a BOOL con numero di bit
diverso da n * 8
Se si utilizza un puntatore a BOOL il numero di bit
deve essere un multiplo di 8.
Codici di errore di configurazione della ricezione
16#8332
Blocco dati non consentito nel parametro Receive_Conditions
Controllare quanto immesso nel parametro Receive_Conditions
16#833A
La denominazione del blocco dati nel parametro Receive_Conditions indica un blocco dati non caricato.
Controllare quanto immesso nel parametro Receive_Conditions
16#8351
Tipo di dati non ammesso
Controllare quanto immesso nel parametro Receive_Conditions
16#8352 1)
Receive_Conditions non indica un blocco dati
Controllare il puntatore a Receive_Conditions
16#8353
Receive_Conditions non indica una struttura del tipo
Receive_Conditions
Controllare il puntatore a Receive_Conditions
1)
Codici di errore del protocollo 3964(R)
16#8380
Errore di parametrizzazione: valore non consentito
per "Tempo di ritardo del carattere".
Selezionare un valore adatto per "Tempo di ritardo
del carattere" (CharacterDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8381
Errore di parametrizzazione: valore non consentito
per "Time out di risposta".
Selezionare un valore adatto per "Time out di risposta" (AcknDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8382
Errore di parametrizzazione: valore non consentito
per "Priorità".
Selezionare un valore adatto per "Priorità" (Priority).
Sono consentiti:
•
Elevato (1)
•
Basso (0)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
151
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8383
Errore di parametrizzazione: valore non consentito
per "Verifica blocco".
Selezionare un valore adatto per "Verifica blocco"
(BCC).
Sono consentiti:
16#8384
Errore di parametrizzazione: valore non consentito
per "Tentativi di collegamento".
•
con verifica blocco (1)
•
senza verifica blocco (0)
Selezionare un valore adatto per "Tentativi di collegamento" (BuildupAttempts).
Campo di valori ammesso: 1-255
16#8385
Errore di parametrizzazione: valore non consentito
per "Tentativi di trasmissione".
Selezionare un valore adatto per "Tentativi di trasmissione" (RepetitionAttempts).
Campo di valori ammesso: 1-255
16#8386
Errore di runtime: numero di tentativi di collegamento
superato
Controllare il cavo dell'interfaccia e i parametri di
trasmissione.
Controllare anche sul lato del partner se la funzione
di ricezione è parametrizzata correttamente.
16#8387
Errore di runtime: numero di tentativi di trasmissione
superato
Controllare il cavo dell'interfaccia, i parametri di
trasmissione e la parametrizzazione del partner della
comunicazione.
16#8388
Errore di runtime: errore nel "carattere di verifica
blocco"
Controllare se il collegamento è fortemente disturbato, in questo caso si noteranno occasionalmente
anche codici errati. Verificare il corretto comportamento del dispositivo partner, eventualmente con un
dispositivo di controllo interfaccia da inserire nella
linea di trasmissione.
Il valore del carattere di verifica blocco creato internamente non coincide con quello ricevuto dal partner
alla fine del collegamento.
16#8389
Errore di runtime: in attesa della disponibilità del buffer di ricezione è stato ricevuto un carattere non consentito
La richiesta di trasmissione del partner di comunicazione (STX, 02H) riceve in risposta DLE solo quando
il buffer di ricezione si svuota. Prima non è consentito ricevere altri caratteri (ad eccezione di un altro
STX).
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838A
Errore di runtime: errore logico durante la ricezione.
Dopo la ricezione di DLE è stato ricevuto un altro
carattere qualsiasi (esclusi DLE, ETX).
16#838B
Errore di runtime: tempo di ritardo del carattere superato
Controllare se il partner raddoppia sempre DLE
nell'intestazione del telegramma e nella stringa di
dati o se il collegamento si disattiva con DLE ETX.
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
Il dispositivo partner è troppo lento o disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838C
Errore di runtime: tempo di attesa della disponibilità
del buffer di ricezione avviato
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#838D
Errore di runtime: dopo NAK la ripetizione del telegramma non si avvia entro 4 s
Controllare il partner di comunicazione. Un telegramma ricevuto eventualmente errato deve essere
ripetuto dal partner entro 4 secondi.
CM PtP - Configurazioni di accoppiamenti punto a punto
152
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
16#838E
Errore di runtime: durante il tempo di riposo sono stati Verificare il corretto comportamento del dispositivo
ricevuti uno o più caratteri (esclusi NAK o STX).
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838F
Errore di runtime: conflitto di inizializzazione. Entrambi i partner hanno impostato la priorità alta
Impostare per uno dei partner la priorità "Bassa"
16#8391
Errore di parametrizzazione: dati di parametrizzazione 3964 respinti perché è impostato Freeport
Assicurarsi che con il protocollo Freeport impostato
non vengano inviati i dati di parametrizzazione 3964.
1)
Rimedio
Solo per le istruzioni per le CPU S7-300/400
Panoramica dei messaggi di errore Modbus
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Errore di configurazione dell'interfaccia - Modbus_Comm_Load
16#8181
Il modulo non supporta questa velocità di trasmissione dati.
16#8182
16#8183
Il modulo non supporta questa impostazione per la
parità.
16#8184
Il modulo non supporta questo tipo di controllo del
flusso dati.
valore non consentito per "Time out di risposta".
16#8280
Conferma negativa durante la lettura del modulo
16#8281
Conferma negativa durante la scrittura del modulo
16#8282
Modulo non disponibile
Selezionare una velocità di trasmissione consentita
per il modulo nel parametro BAUD.
Selezionare un valore adatto per la "Parità" nel parametro PARITY.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
Selezionare un controllo del flusso dati consentito
per il modulo nel parametro FLOW_CTRL.
Selezionare un valore adatto per "Time out di risposta" nel parametro RESP_TO.
Campo di valori ammesso: 1-65535 (ms)
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.RDREC.STATUS, Receive_Config.RDREC.STATUS o RDREC.STATUS e
nella descrizione dell'SFB RDREC.
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.WRREC.STATUS, Receive_Config.WRREC.STATUS o WRREC.STATUS e
nella descrizione dell'SFB WRREC.
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
153
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Slave
16#8186
Indirizzo slave non consentito
Selezionare un indirizzo di slave adeguato nel parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8187
Valore non consentito nel parametro MB_HOLD_REG Selezionare un valore adatto per l'holding register
nel parametro MB_HOLD_REG.
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per
MODE il valore 1 o scegliere un altro modo di funzionamento.
16#818C
Il puntatore di un'area MB_HOLD_REG deve essere
un blocco dati o un'area merker.
Selezionare un valore adatto per il puntatore all'area
MB_HOLD_REG.
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS o Receive_P2P.WRREC.STATUS e nella descrizione
dell'SFB WRREC.
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456
Errore di esecuzione dell'istruzione. La causa dell'errore si trova nel parametro statico STATUS.
Determinare il valore del parametro SFCSTATUS.
Leggerne il significato nella descrizione dell'SFC51,
parametro STATUS.
1)
CM PtP - Configurazioni di accoppiamenti punto a punto
154
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Master
16#8180
Valore non consentito per il parametro MB_DB
Il valore parametrizzato nell'istruzione Modbus_Comm_Load per MB_DB (DB dei dati di istanza) non è consentito.
Controllare l'interconnessione dell'istruzione Modbus_Comm_Load e i relativi messaggi di errore.
16#8186
Indirizzo della stazione non consentito
Selezionare un indirizzo di stazione adeguato nel
parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per MODE il valore 1 o scegliere un altro modo di
funzionamento.
16#8189
Indirizzo dei dati non consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818A
Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata nel
parametro DATA_LEN.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818B
Valore non consentito per DATA_PTR
Selezionare nel parametro DATA_PTR un valore
adeguato per il puntatore dati (indirizzo M o DB).
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818C
Errore di interconnessione del parametro DATA_PTR
Controllare l'interconnessione dell'istruzione.
16#818D
La lunghezza dell'area indirizzata con DATA_PTR
supera la lunghezza del DB o l'area indirizzata è
troppo piccola per il numero di dati da leggere o scrivere.
Controllare il puntatore DATA_PTR
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS, Receive_P2P.WRREC.STATUS o Receive_Reset e nella
descrizione dell'SFB WRREC.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
155
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di comunicazione - Modbus_Master e Modbus_Slave
16#80D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#80D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#80E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#80E1
Telegramma interrotto: errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#80E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#80E3
Telegramma interrotto: errore di overflow dei caratteri
Controllare il numero di dati del telegramma del
partner della comunicazione.
16#80E4
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Errore di comunicazione - Modbus_Master
16#80C8
Lo slave non risponde entro il tempo impostato
Verificare la velocità di trasmissione, la parità e il
cablaggio dello slave.
16#80C9
Lo slave non risponde entro il tempo impostato tramite Blocked_Proc_Timeout.
Verificare l'impostazione di Blocked_Proc_Timeout.
L'interfaccia è occupata da una richiesta in corso.
Ripetere l'ordine successivamente. Prima di avviare
un nuovo ordine assicurarsi che non siano più in
corso altri ordini.
16#8200
Controllare se il modulo è stato parametrizzato con
l'istruzione Modbus_Comm_Load. Eventualmente,
dopo aver estratto e reinserito il modulo o al ripristino della tensione, è necessario riparametrizzare il
modulo tramite Modbus_Comm_Load.
Errore di protocollo - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Il codice funzione non è supportato o non è supportato per il Broadcast.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
La lunghezza indicata nel telegramma di richiesta non Selezionare una lunghezza dei dati adeguata nel
è consentita
parametro DATA_LEN.
16#8383
L'indirizzo dei dati nel telegramma di richiesta non è
consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Errore nel valore dei dati non consentito nel telegramma di richiesta
Controllare il valore dei dati nel telegramma di richiesta del master Modbus
16#8385
Il valore di diagnostica non è supportato dallo slave
Modbus (codice funzione 08)
Lo slave Modbus supporta solo i valori di diagnostica
16#0000 e 16#000A.
CM PtP - Configurazioni di accoppiamenti punto a punto
156
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di protocollo - Modbus_Master (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Telegramma di risposta del Modbus Slave con messaggio di errore: Il codice funzione non è supportato.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
Telegramma di risposta del Modbus Slave con messaggio di errore: Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata.
16#8383
Telegramma di risposta del Modbus Slave con messaggio di errore: L'indirizzo dei dati nel telegramma di
richiesta non è consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Telegramma di risposta del Modbus Slave con messaggio di errore: Errore nel valore dei dati
Controllare il telegramma di richiesta inviato allo
slave Modbus.
16#8385
Telegramma di risposta del Modbus Slave con mesGli slave Modbus supportano solo i valori di diagnosaggio di errore: Il valore di diagnostica non è suppor- stica 16#0000 e 16#000A.
tato dallo slave Modbus
16#8386
Il codice funzione confermato non corrisponde a quel- Controllare il telegramma di risposta e l'indirizzalo richiesto.
mento dello slave.
16#8387
Risponde uno slave che non è stato indirizzato
Controllare il telegramma di risposta dello slave.
Controllare le impostazioni dell'indirizzo dello slave.
16#8388
Errore nella risposta dello slave a una richiesta di
scrittura.
Controllare il telegramma di risposta dello slave.
16#8828 1)
DATA_PTR indica un indirizzo di bit diverso da n * 8
Controllare il puntatore DATA_PTR
16#8852
DATA_PTR non è un puntatore a un DB o un'area
merker
Controllare il puntatore DATA_PTR
16#8853 1)
DATA_PTR non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore DATA_PTR
16#8855 1)
DATA_PTR indica un DB protetto in scrittura
Controllare il puntatore DATA_PTR
16#8856 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Master
1)
Errore - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8428 1)
MB_HOLD_REG indica un indirizzo di bit diverso da n Controllare il puntatore MB_HOLD_REG
*8
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Slave
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
157
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Panoramica dei messaggi di errore USS
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
16#8180
Lunghezza errata nella risposta dell'azionamento
Controllare il telegramma di risposta dell'azionamento.
16#8181
Errore di tipo di dati
Selezionare un tipo di dati adeguato.
Sono consentiti:
•
Real
•
Parola
•
Doppia parola
16#8182
Errore di tipo di dati: la richiesta "Parola" non deve
essere confermata da "Doppia parola" o "Real".
Controllare il telegramma di risposta dell'azionamento.
16#8183
Errore di tipo di dati: la richiesta "Doppia parola" o
"Real" non deve essere confermata da "Parola".
Controllare il telegramma di risposta dell'azionamento.
16#8184
Errore della somma di controllo nella risposta
dell'azionamento
Verificare l'azionamento e il collegamento di comunicazione.
16#8185
Errore di indirizzamento
Area di indirizzi dell'azionamento consentita: 1 ... 16
16#8186
Errore di setpoint
Campo del setpoint: -200 % ... +200 %
16#8187
Il numero di azionamento confermato è errato
Controllare il telegramma di risposta dell'azionamento.
16#8188
Lunghezza PZD non consentita
Lunghezze PZD consentite: 2, 4, 6, 8 parole
16#8189
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione consentita per
il modulo.
16#818A
Al momento è attiva un'altra richiesta per questo
azionamento.
Ripetere l'ordine di lettura o scrittura dei parametri in
un momento successivo.
16#818B
L'azionamento non risponde.
Controllare l'azionamento.
16#818C
L'azionamento risponde a una richiesta di parametri Controllare il telegramma di risposta dell'azionamento.
con un messaggio di errore.
Verificare la richiesta di parametri.
Verificare se le istruzioni USS_Read_Param,
USS_Write_Param oppure USS_Port_Scan hanno
segnalato un errore. In caso affermativo controllare il
valore della variabile statica USS_DB.
w_USSExtendedError dell'istruzione
USS_Drive_Control.
16#818D
L'azionamento risponde a una richiesta di parametri Controllare il telegramma di risposta dell'azionamento.
segnalando un errore di accesso.
Verificare la richiesta di parametri.
16#818E
L'azionamento non è stato inizializzato.
Controllare il programma utente e assicurarsi che per
questo azionamento venga richiamata l'istruzione
USS_Drive_Control.
CM PtP - Configurazioni di accoppiamenti punto a punto
158
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.RDREC.STATUS o
Send_Config.RDREC.STATUS o Receive_Config.RDREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.WRREC.STATUS o
Send_Config.WRREC.STATUS o Receive_Config.WRREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
WRREC.
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
159
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3
USS
5.4.3.1
Panoramica della comunicazione USS
Comunicazione USS
Le istruzioni USS controllano il funzionamento di azionamenti che supportano il protocollo
dell'interfaccia seriale universale (USS). Con i moduli di comunicazione PtP è possibile
comunicare con diversi azionamenti tramite i collegamenti RS485 e le istruzioni USS. Ogni
porta RS485 può gestire fino a 16 azionamenti.
Il protocollo USS utilizza una rete master/slave per la comunicazione tramite un bus seriale.
Il master utilizza un parametro di indirizzo per inviare i dati a uno slave selezionato. Uno
slave non può mai trasmettere senza prima aver ricevuto una richiesta. La comunicazione
tra i singoli slave non è possibile. La comunicazione USS funziona in semiduplex. La figura
seguente mostra uno schema di rete per un'applicazione di esempio con 16 azionamenti.
①
②
③
CPU
CM
Azionamenti USS in una rete USS
Figura 5-1
Esempio di interconnessione con modulo di comunicazione S7-1500
Nota
Comunicazione con un azionamento attraverso RS232
In generale per la comunicazione con un azionamento è possibile utilizzare anche il
CM PtP RS232 BA e il CM PtP RS232 HF. Tuttavia, a una porta RS232 può essere
collegato solo un azionamento.
Comunicazione con un azionamento attraverso RS422
In generale anche l'interfaccia RS422 del CM PtP RS422/485 BA e del CM PtP RS422/485
HF può essere utilizzata per la comunicazione con un azionamento. Tuttavia, a una porta
RS422 può essere collegato solo un azionamento.
CM PtP - Configurazioni di accoppiamenti punto a punto
160
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Istruzioni USS nel programma utente
● USS_Port_Scan: L'istruzione USS_Port_Scan consente di comunicare con max. 16 drive
tramite un modulo di comunicazione e una rete USS (deve essere richiamata
ciclicamente).
Nel programma è disponibile solo un'istruzione USS_Port_Scan per ogni porta di
comunicazione PtP che comanda la trasmissione verso tutti gli azionamenti.
● USS_Drive_Control: l'istruzione USS_Drive_Control consente di preparare i dati di
trasmissione di USS_Port_Scan per un azionamento e di visualizzarne i dati di ricezione.
USS_Drive_Control configura i dati da inviare e analizza i dati ricevuti in una richiesta
precedente di USS_Port_Scan.
● USS_Read_Param: l'istruzione USS_Read_Param consente di leggere parametri da un
azionamento.
● USS_Write_Param: l'istruzione USS_Write_Param consente di modificare parametri in un
azionamento.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
161
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.2
Presupposti per l'utilizzo del protocollo USS
Le quattro istruzioni USS utilizzano 2 FB e 2 FC a supporto del protocollo USS. Per ogni rete
USS viene utilizzato un blocco dati di istanza per USS_Port_Scan e un blocco dati di istanza
comune per tutti i richiami di USS_Drive_Conrol.
Figura 5-2
Esecuzione del programma - USS
Tutti gli azionamenti (max. 16) collegati a una porta RS485 fanno parte della stessa rete
USS. Tutti gli azionamenti collegati a un'altra porta RS485 fanno parte di un'altra rete USS.
Ogni rete USS viene gestita con l'aiuto di un blocco dati di istanza univoco per tutte le
istruzioni USS_Drive_Control e un ulteriore blocco dati di istanza per l'istruzione
USS_Port_Scan. Tutte le istruzioni che appartengono a una rete USS devono utilizzare in
comune il blocco dati di istanza per USS_Drive_Conrol. Le istruzioni USS_Port_Scan,
USS_Read_Param e USS_Write_Param hanno il parametro USS_DB che deve essere
collegato con il parametro (statico) USS_DB del DB di istanza dell'istruzione
USS_Drive_Control.
● Le istruzioni USS_Drive_Control e USS_Port_Scan sono blocchi funzionali (FB). Se si
inserisce l'istruzione USS_Drive_Control o USS_Port_Scan nell'editor di programma,
nella finestra di dialogo "Opzioni di richiamo" viene chiesto di assegnare un DB a questo
FB. Se è la prima istruzione USS_Drive_Control in questo programma per questa rete
USS è possibile applicare l'assegnazione del DB standard (o eventualmente modificarne
il nome) e il nuovo DB verrà creato. Se invece non è la prima istruzione
USS_Drive_Control per questo azionamento è necessario scegliere dalla casella di
riepilogo nella finestra di dialogo "Opzioni di richiamo" il DB già assegnato in precedenza
a questa rete USS.
CM PtP - Configurazioni di accoppiamenti punto a punto
162
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
● Le istruzioni USS_Port_Scan e USS_Read_Param sono funzioni (FC). Quando si
inseriscono queste FC nell'editor non vengono assegnati DB. Se si inseriscono nell'editor
queste FC o l'istruzione USS_Port_Scan è necessario assegnare all'ingresso USS_DB di
queste istruzioni il parametro USS_DB del rispettivo DB di istanza di USS_Drive_Control.
Fare doppio clic sul campo del parametro e quindi fare clic sull'icona per visualizzare i DB
disponibili. Inserire un punto "." e selezionare dalla casella di riepilogo il parametro
USS_DB.
● La funzione USS_Port_Scan controlla la comunicazione tra CPU e gli azionamenti
attraverso la porta di comunicazione punto a punto RS485. A ogni richiamo di questa
funzione viene elaborata una comunicazione con un azionamento. Il programma utente
deve richiamare questa funzione abbastanza rapidamente, in modo da evitare che gli
azionamenti segnalino un time out. Per garantire un comportamento costante nel tempo
della trasmissione del telegramma è opportuno richiamare questa istruzione in un OB di
schedulazione orologio.
● L'istruzione USS_Drive_Control consente al programma utente di accedere a un
azionamento indicato nella rete USS. I suoi ingressi e le sue uscite corrispondono agli
stati e alle funzioni di comando dell'azionamento. Se sono disponibili 16 azionamenti
nella rete, USS_Drive_Control deve essere richiamato 16 volte nel programma, ovvero
una volta per azionamento.
L'istruzione USS_Drive_Control deve essere richiamata solo da un OB ciclico.
● Le funzioni USS_Read_Param e USS_Write_Param leggono e scrivono i parametri di
esercizio dell'azionamento. Questi parametri controllano il funzionamento interno
dell'azionamento. La definizione di questi parametri è riportata nel manuale
dell'azionamento. Il programma può contenere qualsiasi numero di funzioni ma può
essere attiva sempre solo una richiesta di lettura o di scrittura per un azionamento per
volta. È consentito richiamare le funzioni USS_Read_Param e USS_Write_Param solo
dall'OB di ciclo di un programma principale.
ATTENZIONE
Richiami delle istruzioni USS
Richiamare USS_Drive_Control, USS_Read_Param e USS_Write_Param solo da un OB di
ciclo del programma principale. L'istruzione USS_Port_Scan può essere richiamata da un
OB qualsiasi, normalmente da un OB di schedulazione orologio.
Non utilizzare le istruzioni USS_Drive_Control, USS_Read_Param e USS_Write_Param in
un OB con una priorità maggiore della corrispondente istruzione USS_Port_Scan. Ad
esempio non inserire USS_Port_Scan nel programma principale e USS_Read_Param in un
OB di schedulazione orologio. Se l'esecuzione di USS_Port_Scan viene interrotta da
un'altra istruzione è possibile che si verifichino errori imprevisti.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
163
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Calcolo del tempo per la comunicazione con l'azionamento
La comunicazione con l'azionamento è asincrona rispetto al ciclo della CPU. La CPU
normalmente esegue diversi cicli prima che la comunicazione con un azionamento sia
conclusa.
Per evitare che si attivi il tempo di controllo risposta impostato per l'azionamento, i
telegrammi di trasmissione all'azionamento devono essere inviati entro il tempo di controllo
risposta. Nel calcolo deve essere incluso anche il numero di tentativi eventualmente
necessari per concludere la transazione a causa di errori di comunicazione. Per default per il
protocollo USS vengono eseguiti fino a 2 tentativi per ogni transazione.
L'intervallo di tempo max. tra due telegrammi di trasmissione si calcola come segue:
N * (5 * tempo di ciclo + tempo di esecuzione del telegramma + timeout del telegramma di
ricezione max.) * (numero di tentativi di trasmissione)
N
Fattore 5
Numero di azionamenti in questa rete
Per la trasmissione e la ricezione di telegrammi in genere sono necessari 5 cicli.
Tempo di ciclo
Tempo di ciclo max. dell'OB di schedulazione orologio in cui viene
richiamata l'istruzione USS_Port_Scan.
Tempo di esecuzione Tempo di esecuzione del telegramma = (numero di caratteri per teledel telegramma
gramma) * (11 Bit per carattere) / (velocità di trasmissione dati in
Bit/s)
Numero di tentativi di Numero di tentativi + 1
trasmissione
Timeout del telegram- RCVTIME (se non viene ricevuta alcuna risposta dall'azionamento)
ma di ricezione
Timeout del telegram- RCVTIME + MSGTIME (se poco prima dello scadere di RCVTIME
ma di ricezione max. viene ricevuta una risposta incompleta e il controllo di MSGTIME è
terminato oppure se allo scadere di RCVTIME è in corso ancora una
risposta, il timeout viene prolungato di MSGTIME)
Per il "timeout del telegramma di ricezione" valgono i seguenti tempi (ms)
Bit/s
115200
57600
38400
19200
9600
4800
2400
1200
Receive_Conditions.END.RCVTIME
25
29
33
56
72
100
100
100
Receive_Conditions.END.MSGTIME
25
29
33
56
72
124
240
460
Timeout del telegramma di ricezione max. = (Receive_Conditions.END.RCVTIME (0,072 s)
+ Receive_Conditions.END.MSGTIME (0,072 s))
Esempio:
5 azionamenti
Velocità di trasmissione dati = 9600 bit/s
28 caratteri per telegramma
Tempo di ciclo = 0.020 s
Numero di tentativi = 2
Intervallo di tempo = 5 * (5 * 0,02 s + 1 * 28 * 11 / 9600 s + 0,072 s + 0,072 s) * 3 = 3 s
Il controllo del tempo dell'azionamento, in questo caso, deve essere impostato su 3 secondi
ca.
CM PtP - Configurazioni di accoppiamenti punto a punto
164
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.3
USS_Port_Scan / USS_Port_Scan_31: Elabora comunicazione tramite rete USS
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Nota
Impiego dell'istruzione USS_Port_Scan_31
L'impiego dell'istruzione USS_Port_Scan_31 è possibile soltanto in una CPU S7-1500.
Descrizione
L'istruzione USS_Port_Scan elabora la comunicazione attraverso una rete USS per max. 16
azionamenti.
L'istruzione USS_Port_Scan_31 elabora la comunicazione attraverso una rete USS per max.
31 azionamenti.
STEP 7 crea automaticamente il DB di istanza quando si inserisce l'istruzione.
Parametri
Parametri
PORT
Dichiarazione
IN
Tipo di dati
S71200/1500
Port
Standard
Descrizione
0
Specifica il modulo dal quale si svolge la comunicazione:
S7300/400/
WinAC
Word
•
Per S7-1500/S7-1200: "ID hardware" della configurazione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabili PLC dalla quale può essere acquisito.
•
Per S7-300/S7-400: “Indirizzo di ingresso" della configurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
165
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
BAUD
Dichiarazione
Tipo di dati
S71200/1500
IN
Standard
Descrizione
9600
Velocità di trasmissione della comunicazione USS
S7300/400/
WinAC
DInt
Sono consentiti:
USS_DB
INOUT
COM_RST INOUT
USS_BASE
---
Bool
•
1200 bit/s
•
2400 bit/s
•
4800 bit/s
•
9600 bit/s
•
19200 bit/s
•
38400 bit/s
•
57600 bit/s
•
115200 bit/s
–
Il parametro USS_DB deve essere collegato con il parametro (statico) USS_DB del DB di istanza che viene creato e inizializzato quando si inserisce un'istruzione
USS_Drive_Control / USS_Drive_Control_31 nel programma.
FALSE
Inizializzazione dell'istruzione USS_Port_Scan /
USS_Port_Scan_31
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
ERROR
OUT
Bool
FALSE
Se TRUE, l'uscita indica che si è verificato un errore e
l'uscita STATUS è valida.
Eventualmente verificare anche il valore della variabile
statica USS_DB. w_USSExtendedError nel DB di istanza
dell'istruzione USS_Drive_Control /
USS_Drive_Control_31.
STATUS
OUT
Word
0
Codice di errore (vedere Messaggi di errore (Pagina 182)).
È disponibile una sola istruzione USS_Port_Scan / USS_Port_Scan_31 per porta di
comunicazione PtP nel programma e ogni richiamo di questa istruzione comanda una
trasmissione verso o da tutti gli azionamenti di questa rete. Tutte le funzioni USS assegnate
a una rete USS e a una porta di comunicazione PtP devono utilizzare lo stesso DB di
istanza.
Il programma deve eseguire l'istruzione USS_Port_Scan / USS_Port_Scan_31 con una
frequenza tale da evitare un timeout nell'azionamento (vedere Presupposti per l'utilizzo del
protocollo USS (Pagina 162) sezione "Calcolo del tempo per la comunicazione con
l'azionamento").
Normalmente l'istruzione USS_Port_Scan / USS_Port_Scan_31 si richiama da un OB di
schedulazione orologio per evitare il time out dell'azionamento e avere a disposizione gli
ultimi aggiornamenti dei dati USS per richiamare USS_Drive_Control /
USS_Drive_Control_31 .
CM PtP - Configurazioni di accoppiamenti punto a punto
166
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabili del blocco dati USS_Port_Scan / USS_Port_Scan_31
La tabella seguente mostra le variabili statiche pubbliche contenute nel DB di istanza di
USS_Port_Scan / USS_Port_Scan_31 utilizzabili nel programma utente.
Tabella 5- 35 Variabili statiche nel DB di istanza
Variabile
Tipo di
dati
Standard Descrizione
MODE
USInt
4
Modo di funzionamento
I modi di funzionamento consentiti sono:
LINE_PRE
USInt
2
•
0 = fullduplex (RS232)
•
1 = fullduplex (RS 422) a quattro fili (punto a punto)
•
2 = fullduplex (RS422) funzionamento a quattro fili (Master multipoint; CM
PtP (ET 200SP))
•
3 = fullduplex (RS422) funzionamento a quattro fili (Slave multipoint; CM
PtP (ET 200SP))
•
4 = semiduplex (RS485) a 2 fili 1)
Preimpostazione della linea di ricezione
Le preimpostazioni consentite sono:
BRK_DET
RETRIES_MAX
EN_DIAG_ALARM
EN_SUPPLY_VOLT
1)
USInt
0
SInt/By 2
te
Bool
Bool
0
0
•
0 = "nessuna" preimpostazione 1)
•
1 = segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break):
con questa preimpostazione è possibile il riconoscimento break.
È disponibile solo nei seguenti casi: "Fullduplex (RS422) funzionamento a
quattro fili (Punto a punto)" e "Fullduplex (RS422) funzionamento a quattro
fili (Slave multipoint)".
•
2 = segnale R(A)=0V, segnale R(B)=5V:
questa preimpostazione corrisponde allo stato di riposo (nessuna trasmissione attiva). Questa preimpostazione non consente il riconoscimento
Break.
Attiva allarme di diagnostica:
•
0 - non attivato
•
1 - attivato
Numero di tentativi al verificarsi di errori di comunicazione.
Con questo parametro si può impostare il numero di tentativi per l'invio di un
telegramma di richiesta se non si riceve il telegramma di risposta entro l'intervallo di tempo impostato.
Attiva allarme di diagnostica:
•
0 - non attivato
•
1 - attivato
Attivazione della diagnostica Tensione di alimentazione mancante L+
•
0 - non attivato
•
1 - attivato
Impostazione necessaria per l'uso di cavi PROFIBUS in CM 1241 per RS485
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
167
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.4
USS_Drive_Control / USS_Drive_Control_31: preparazione e visualizzazione dei dati
per l'azionamento
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla versione
V2.1 del firmware del modulo.
Nota
Impiego dell'istruzione USS_Drive_Control_31
L'impiego dell'istruzione USS_Drive_Control_31 è possibile soltanto in una CPU S7-1500.
Descrizione
L'istruzione USS_Drive_Control prepara i dati di trasmissione per max. 16 azionamenti e
analizza i dati di risposta degli azionamenti.
L'istruzione USS_Drive_Control_31 prepara i dati di trasmissione per max. 31 azionamenti e
analizza i dati di risposta degli azionamenti.
Per ogni azionamento si deve utilizzare un'istruzione diversa, e il blocco dati di istanza deve
essere lo stesso per tutte le funzioni USS assegnate a una rete USS e a una porta di
comunicazione PtP. Il nome del DB deve essere indicato quando si inserisce la prima
istruzione USS_Drive_Control / USS_Drive_Control_31. In seguito si farà riferimento a
questo DB creato nell'inserire la prima istruzione.
STEP 7 crea automaticamente il DB quando si inserisce l'istruzione.
Parametri
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
S7300/400/
WinAC
RUN
IN
Bool
FALSE
Bit di start dell'azionamento: se questo parametro è TRUE
l'ingresso consente il funzionamento dell'azionamento con
il numero di giri preimpostato. Se RUN diventa FALSE
durante il funzionamento dell'azionamento, il motore decelera fino all'arresto. Questo comportamento è diverso dalla
disinserzione dell'alimentazione di tensione (OFF2) e dalla
frenatura del motore (OFF3).
OFF2
IN
Bool
FALSE
Bit di disinserzione dell'alimentazione: se questo parametro è FALSE il bit induce l'arresto graduale dell'azionamento senza frenatura.
OFF3
IN
Bool
FALSE
Bit di arresto rapido: se questo parametro è FALSE il bit
induce un arresto rapido frenando l'azionamento.
CM PtP - Configurazioni di accoppiamenti punto a punto
168
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
S7300/400/
WinAC
F_ACK
IN
Bool
FALSE
Bit di conferma errori: con questo bit si resetta il bit di errore di un azionamento. Il bit viene impostato dopo l'eliminazione dell'errore così l'azionamento riconosce che l'errore
precedente non deve più essere segnalato.
DIR
IN
Bool
FALSE
Comando della direzione dell'azionamento: questo bit
viene impostato se l'azionamento deve funzionare in avanti (se SPEED_SP è positivo; vedere la tabella "Interazione
dei parametri SPEED_SP e DIR").
DRIVE
IN
USInt
Byte
1
Indirizzo dell'azionamento: questo ingresso è l'indirizzo
dell'azionamento USS. Il campo valido è compreso tra
l'azionamento 1 e l'azionamento 16.
PZD_LEN
IN
USInt
Byte
2
Lunghezza in parole: numero delle parole dati PZD. Sono
valori validi 2, 4, 6 o 8 parole.
SPEED_SP
IN
Real
0.0
Setpoint del numero di giri: numero di giri dell'azionamento
in percentuale rispetto alla frequenza configurata. Se il
valore è positivo significa che l'azionamento funziona in
avanti (se DIR è TRUE). Il campo valido è compreso tra
200,00 e -200,00.
CTRL3
IN
Word
0
Parola di comando 3: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
CTRL4
IN
Word
0
Parola di comando 4: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
CTRL5
IN
Word
0
Parola di comando 5: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
CTRL6
IN
Word
0
Parola di comando 6: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
CTRL7
IN
Word
0
Parola di comando 7: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
CTRL8
IN
Word
0
Parola di comando 8: valore che viene scritto in un parametro dell'azionamento configurabile dall'utente. Deve
essere configurato nell'azionamento (parametro opzionale).
COM_RST
IN/OUT
FALSE
Inizializzazione dell'istruzione USS_Drive_Control /
USS_Drive_Control_31
---
Bool
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
169
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
S7300/400/
WinAC
NDR
OUT
Bool
FALSE
Nuovi dati disponibili: se questo parametro è TRUE il bit
segnala che nell'uscita sono pronti i dati di una nuova
richiesta di comunicazione.
ERROR
OUT
Bool
FALSE
Si è verificato un errore: Se TRUE, significa che si è verificato un errore e l'uscita STATUS è valida. In caso di errore
tutte le altre uscite vengono impostate a 0. Gli errori di
comunicazione vengono segnalati solo nelle uscite
ERROR e STATUS dell'istruzione USS_Port_Scan /
USS_Port_Scan_31.
STATUS
OUT
Word
0
Codice di errore (vedere Messaggi di errore (Pagina 182)).
RUN_EN
OUT
Bool
FALSE
Funzionamento abilitato: questo bit indica se l'azionamento è in funzione.
D_DIR
OUT
Bool
FALSE
Direzione dell'azionamento: questo bit indica se l'azionamento funziona in avanti.
INHIBIT
OUT
Bool
FALSE
•
FALSE – in avanti
•
TRUE – all'indietro
Azionamento disabilitato: questo bit indica lo stato del bit
di disabilitazione per l'azionamento.
•
FALSE – non disabilitato
•
TRUE – disabilitato
FAULT
OUT
Bool
FALSE
Errore di azionamento: questo bit indica che si è verificata
un errore nell'azionamento. Per resettare questo bit occorre eliminare il guasto e impostare il bit F_ACK.
SPEED
OUT
Real
0.0
Valore istantaneo del numero di giri dell'azionamento (valore in scala di STATUS 2 dell'azionamento): numero di
giri dell'azionamento in percentuale rispetto al numero di
giri configurato.
STATUS1
OUT
Word
0
STATUS 1 dell'azionamento
questo valore contiene bit di stato fissi di un azionamento.
STATUS3
OUT
Word
0
STATUS 3 dell'azionamento
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
STATUS4
OUT
Word
0
STATUS 4 dell'azionamento
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
STATUS5
OUT
Word
0
STATUS 5 dell'azionamento
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
STATUS6
OUT
Word
0
STATUS 6 dell'azionamento
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
CM PtP - Configurazioni di accoppiamenti punto a punto
170
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
STATUS7
Dichiarazione
Tipo di dati
S71200/1500
OUT
Standard
Descrizione
0
STATUS 7 dell'azionamento
S7300/400/
WinAC
Word
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
STATUS8
OUT
Word
0
STATUS 8 dell'azionamento
Questo valore contiene una parola di stato dell'azionamento configurabile dall'utente.
Quando USS_Drive_Control / USS_Drive_Control_31 viene eseguita per la prima volta viene
inizializzato nel DB di istanza l'azionamento indicato nell'indirizzo USS (parametro DRIVE).
Dopo l'inizializzazione le istruzioni USS_Port_Scan / USS_Port_Scan_31 successive
possono iniziare la comunicazione con l'azionamento da questo numero di azionamento.
Se si modifica il numero di azionamento è necessario portare prima la CPU in STOP e poi di
nuovo in RUN per inizializzare il DB di istanza. I parametri di ingresso vengono configurati
nel buffer di trasmissione USS e le uscite - se disponibili - vengono lette da un "precedente"
buffer per le risposte valido. USS_Drive_Control / USS_Drive_Control_31 configura solo i
dati da trasmettere e analizza i dati ricevuti in una precedente richiesta.
Il senso di rotazione dell'azionamento si può comandare dall'ingresso DIR (Bool) o tramite il
segno (positivo o negativo) nell'ingresso SPEED_SP (Real). La tabella seguente spiega
come questi ingressi interagiscono per determinare il senso di rotazione dell'azionamento,
presupponendo che il senso di rotazione del motore sia in avanti.
Tabella 5- 36 Interazione dei parametri SPEED_SP e DIR
SPEED_SP
DIR
Senso di rotazione dell'azionamento
Valore > 0
0
All'indietro
Valore > 0
1
In avanti
Valore < 0
0
In avanti
Valore < 0
1
All'indietro
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
171
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Variabili del blocco dati USS_Drive_Control / USS_Drive_Control_31
La tabella seguente mostra le variabili statiche pubbliche contenute nel DB di istanza di
USS_Drive_Control / USS_Drive_Control_31 utilizzabili nel programma utente.
Tabella 5- 37 Variabili statiche nel DB di istanza
Variabile
Tipo di dati Standard
Descrizione
USS_DB.
w_USSExtended
Error
Word
USS Drive Extended Error Code - valore specifico dell'azionamento
16#0
Il significato del messaggio di errore dipende da quale istruzione precedentemente ha segnalato un errore (ERROR = TRUE). Si distinguono i casi seguenti:
•
USS_Write_Param / USS_Write_Param_31: il significato del codice di
errore è indicato nella descrizione dell'azionamento.
•
USS_Read_Param / USS_Read_Param_31: il significato del codice di
errore è indicato nella descrizione dell'azionamento.
•
USS_Port_Scan / USS_Port_Scan_31: numero dell'azionamento interessato dal messaggio di errore.
CM PtP - Configurazioni di accoppiamenti punto a punto
172
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.5
USS_Read_Param / USS_Read_Param_31: Leggi dati dall'azionamento
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla
versione V2.1 del firmware del modulo.
Nota
Impiego dell'istruzione USS_Read_Param_31
L'impiego dell'istruzione USS_Read_Param_31 è possibile soltanto in una CPU S7-1500.
Descrizione
L'istruzione USS_Read_Param legge un parametro di un azionamento tra max.
16 azionamenti.
L'istruzione USS_Read_Param_31 legge un parametro di un azionamento tra max.
31 azionamenti.
Tutte le funzioni USS assegnate a una rete USS e a una porta di comunicazione PtP devono
utilizzare lo stesso blocco dati di istanza dell'istruzione USS_Drive_Control /
USS_Drive_Control_31 . USS_Read_Param / USS_Read_Param_31 deve essere richiamato
da un OB di ciclo del programma principale.
Parametri
Parametri
Dichiarazione
REQ
IN
DRIVE
IN
PARAM
IN
Tipo di dati
S71200/1500
Descrizione
–
Con un fronte di salita in REQ viene impostata una nuova
richiesta di lettura.
–
Indirizzo dell'azionamento: DRIVE è l'indirizzo dell'azionamento USS. Il campo valido è compreso tra l'azionamento 1 e l'azionamento 16.
–
Numero del parametro: PARAM indica quale parametro
dell'azionamento viene scritto. Il campo per questo parametro è compreso tra 0 e 2047. In alcuni azionamenti è
possibile accedere attraverso il byte più significativo del
parametro INDEX ai valori dei parametri maggiori di 2047.
Per maggiori informazioni sull'accesso a un campo maggiore consultare il manuale dell'azionamento.
S7300/400/
WinAC
Bool
USInt
Standard
Byte
UInt
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
173
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Dichiarazione
Tipo di dati
Standard
Descrizione
UInt
–
Indice del parametro: INDEX indica in quale indice del
parametro dell'azionamento si deve scrivere. È un valore
a 16 bit in cui il byte meno significativo è il valore effettivo
dell'indice (compreso in un campo da 0 a 255). Il byte più
significativo può essere usato anche dall'azionamento ed
è specifico di quest'ultimo. Per maggiori informazioni consultare il manuale dell'azionamento.
USS_BASE
–
Il parametro USS_DB deve essere collegato con il parametro (statico) USS_DB del DB di istanza che viene creato e inizializzato quando si inserisce un'istruzione
USS_Drive_Control / USS_Drive_Control_31 nel programma.
S71200/1500
S7300/400/
WinAC
INDEX
IN
USS_DB
INOUT
DONE1
OUT
Bool
FALSE
Se questo parametro è TRUE, nell'uscita VALUE si trova il
valore del parametro di lettura richiesto precedentemente.
Questo bit viene impostato quando l'istruzione
USS_Drive_Control / USS_Drive_Control_31 rileva la
risposta di lettura dell'azionamento. Questo bit viene resettato al successivo richiamo di USS_Read_Param /
USS_Read_Param_31 .
ERROR
OUT
Bool
FALSE
ERROR = TRUE: si è verificato un errore e l'uscita
STATUS è valida. In caso di errore tutte le altre uscite
vengono impostate a 0. Gli errori di comunicazione vengono segnalati solo nelle uscite ERROR e STATUS dell'istruzione USS_Port_Scan / USS_Port_Scan_31.
Eventualmente verificare anche il valore della variabile
statica USS_DB. w_USSExtendedError nel DB di istanza
dell'istruzione USS_Drive_Control /
USS_Drive_Control_31.
1
STATUS
OUT
VALUE
OUT
Word
Variant
Any
(Word, Int,
UInt,
DWord,
DInt,
UDInt,
Real)
(Word,
Int, UInt,
DWord,
DInt,
UDInt,
Real)
0
Codice di errore (vedere Messaggi di errore (Pagina 182)).
–
È il valore del parametro letto ed è valido solo se il bit
DONE è TRUE.
Il bit DONE indica che dei dati validi sono stati letti dall'azionamento motore indirizzato e forniti alla CPU. Non indica che
l'istruzione è in grado di leggere direttamente un ulteriore parametro. Prima che il canale del parametro sia libero e utilizzabile dall'azionamento, deve essere inviata all'azionamento motore una richiesta di lettura vuota che deve anche essere confermata dall'istruzione. Se si richiama direttamente USS_Read_Param / USS_Read_Param_31 o
USS_Write_Param / USS_Write_Param_31 per l'azionamento motore specifico viene generato l'errore 16#818A.
CM PtP - Configurazioni di accoppiamenti punto a punto
174
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.6
USS_Write_Param / USS_Write_Param_31: Modifica dati nell'azionamento
Nota
Impiego con CM1241
L'impiego di quest'istruzione con un CM1241 è possibile soltanto a partire dalla
versione V2.1 del firmware del modulo.
Nota
Impiego dell'istruzione USS_Write_Param_31
L'impiego dell'istruzione USS_Write_Param_31 è possibile soltanto in una CPU S7-1500.
Nota
Per le istruzioni di scrittura EEPROM (EEPROM in un azionamento USS) vale:
Ridurre al minimo il numero delle operazioni di scrittura nella EEPROM per garantire la
massima durata possibile della EEPROM.
Descrizione
L'istruzione USS_Write_Param modifica un parametro di un azionamento tra max. 16
azionamenti.
L'istruzione USS_Write_Param_31 modifica un parametro di un azionamento tra max. 31
azionamenti.
Tutte le funzioni USS assegnate a una rete USS e a una porta di comunicazione PtP devono
utilizzare lo stesso blocco dati di istanza di USS_Drive_Control / USS_Drive_Control_31.
USS_Write_Param / USS_Write_Param_31 deve essere richiamato dall'OB di ciclo di un
programma principale.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
175
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
Tabella 5- 38 Tipi di dati per i parametri
Parametri
Dichiarazione
Tipo di dati
S71200/1500
Standard
Descrizione
–
Con un fronte di salita in REQ viene impostata una nuova
richiesta di scrittura.
–
Indirizzo dell'azionamento: DRIVE è l'indirizzo dell'azionamento USS. Il campo valido è compreso tra l'azionamento 1 e l'azionamento 16.
S7300/400/
WinAC
REQ
IN
DRIVE
IN
PARAM
IN
UInt
–
Numero del parametro: PARAM indica quale parametro
dell'azionamento viene scritto. Il campo per questo parametro è compreso tra 0 e 2047. In alcuni azionamenti è
possibile accedere attraverso il byte più significativo del
parametro INDEX ai valori dei parametri maggiori di 2047.
Per maggiori informazioni sull'accesso a un campo maggiore consultare il manuale dell'azionamento.
INDEX
IN
UInt
–
Indice del parametro: INDEX indica in quale indice del
parametro dell'azionamento si deve scrivere. È un valore
a 16 bit in cui il byte meno significativo è il valore effettivo
dell'indice (compreso in un campo da 0 a 255). Il byte più
significativo può essere usato anche dall'azionamento ed
è specifico di quest'ultimo. Per maggiori informazioni
consultare il manuale dell'azionamento.
EEPROM
IN
Bool
–
Salvataggio nella EEPROM dell'azionamento: se TRUE,
la scrittura di un parametro nell'azionamento viene salvata
nella EEPROM dell'azionamento. Se FALSE, il valore
scritto viene salvato solo temporaneamente e va perso
alla successiva inserzione dell'azionamento.
VALUE
IN
–
Valore del parametro nel quale scrivere. Deve essere
valido in caso di fronte di salita di REQ.
–
Il parametro USS_DB deve essere collegato con il parametro (statico) USS_DB del DB di istanza che viene creato e inizializzato quando si inserisce un'istruzione
USS_Drive_Control / USS_Drive_Control_31 nel programma.
FALSE
Se TRUE, l'ingresso VALUE è stato scritto nell'azionamento. Questo bit viene impostato quando l'istruzione
USS_Drive_Control / USS_Drive_Control_31 rileva la
risposta di scrittura dell'azionamento. Questo bit viene
resettato al successivo richiamo di USS_Write_Param /
USS_Write_Param_31.
USS_DB
INOUT
DONE1
OUT
Bool
USInt
Byte
Variant
Any
(Word, Int,
UInt,
DWord,
DInt,
UDInt,
Real)
(Word, Int,
UInt,
DWord,
DInt,
UDInt,
Real)
USS_BASE
Bool
CM PtP - Configurazioni di accoppiamenti punto a punto
176
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Parametri
ERROR
Dichiarazione
OUT
Tipo di dati
S71200/1500
Standard
Descrizione
FALSE
Se TURE, si è verificato un errore e l'uscita STATUS è
valida. In caso di errore tutte le altre uscite vengono impostate a 0. Gli errori di comunicazione vengono segnalati
solo nelle uscite ERROR e STATUS dell'istruzione
USS_Port_Scan / USS_Port_Scan_31 .
S7300/400/
WinAC
Bool
Eventualmente verificare anche il valore della variabile
statica USS_DB. w_USSExtendedError nel DB di istanza
dell'istruzione USS_Drive_Control /
USS_Drive_Control_31.
STATUS
1
OUT
Word
0
Codice di errore (vedere Messaggi di errore (Pagina 182)).
Il bit DONE indica che dei dati validi sono stati letti dall'azionamento motore indirizzato e forniti alla CPU. Ciò non significa che la biblioteca USS sia in grado di leggere immediatamente un altro parametro. Prima che il canale del parametro
sia libero e utilizzabile dall'azionamento, deve essere inviata all'azionamento motore una richiesta di scrittura vuota che
deve anche essere confermata dall'istruzione. Se si richiama direttamente USS_Read_Param / USS_Read_Param_31
oder USS_Write_Param / USS_Write_Param_31 per l'azionamento motore specifico viene generato l'errore 0x818A.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
177
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.7
Informazioni generali sulla configurazione di un azionamento
Requisiti per la configurazione di un azionamento
● Per gli azionamenti è necessario configurare l'utilizzo di 4 parole PKW
(Valorediidentificazioneparametro).
● Configurare gli azionamenti per 2, 4, 6 o 8 parole PZD (areadatidiprocesso).
● Il numero delle parole PZD nell'azionamento deve corrispondere all'ingresso PZD_LEN
nell'istruzione USS_Drive_Control dell'azionamento.
● La velocità di trasmissione di tutti gli azionamenti deve corrispondere all'ingresso BAUD
dell'istruzione USS_Port_Scan.
● Accertarsi che l'azionamento sia stato configurato per la comunicazione USS.
● Definire nell'azionamento che il setpoint della frequenza venga approntato tramite
l'interfaccia USS.
● Accertarsi che sia stato definito l'indirizzo dell'azionamento (aree: 1-16).
L'indirizzo deve corrispondere all'ingresso DRIVE nel blocco USS_Drive_Control
dell'azionamento.
● Accertarsi che la rete RS485 sia chiusa correttamente.
Collegamento e configurazione dell'azionamento SINAMICS V20
Un esempio applicativo sul funzionamento di un azionamento SINAMICS V20 in un S7-1200
è disponibile in Internet. (http://support.automation.siemens.com/WW/view/it/63696870)
Collegamento dell'azionamento SINAMICS V20
Esempio di collegamento di un azionamento SIEMENS G120(C) ad una rete USS. Esempi
di collegamento di altri azionamenti si trovano nei rispettivi manuali.
Il collegamento di un azionamento SINAMICS G120(C) alla rete USS avviene con l'impiego
di un connettore. Il collegamento è resistente ai cortocircuiti e separato galvanicamente.
1
Potenziale di riferimento 0 V
2
RS485N, ricezione e invio (-)
3
RS485N, ricezione e invio (+)
4
Schermatura del cavo
5
Non utilizzato
Figura 5-3
Collegamento USS
CM PtP - Configurazioni di accoppiamenti punto a punto
178
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
ATTENZIONE
Potenziali di riferimento diversi
Se si collegano tra loro dispositivi con potenziale di riferimento diverso si possono causare
flussi di corrente pericolosi nel cavo di connessione. Tali flussi di corrente possono
determinare errori di comunicazione e danneggiare i dispositivi.
Per prevenire il formarsi di flussi di corrente pericolosi accertarsi che i dispositivi da
collegare tramite il cavo di connessione abbiano lo stesso circuito di riferimento o che siano
isolati.
Accertarsi che la schermatura sia collegata alla massa o al pin 1 del connettore di bus
sull'azionamento.
Accertarsi che il morsetto 2 (GND) di G120(C) sia collegato alla massa.
Se il master RS485 (ad es. CPU S7-1200 con modulo di comunicazione CM1241) è
collegato tramite un connettore PROFIBUS, cablare il bus come indicato nel seguito:
Figura 5-4
Collegamento del modulo di comunicazione
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
179
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Se il master RS485 è un nodo finale della rete o se il collegamento è di tipo punto a punto,
utilizzare i morsetti A1 e B1 (non A2 e B2) del connettore PROFIBUS in quanto questi ultimi
consentono la terminazione della rete (ad es. con un connettore DP 6ES7972-0BB52-0XA0).
Se G120(C) è stato configurato come nodo di chiusura nella rete, posizionare su "ON"
l'interruttore per la resistenza terminale del bus.
Figura 5-5
Collegamento di nodi di chiusura
Configurazione di un azionamento G120(C)
Prima di collegare un azionamento all'S7-1500 o ET 200SP verificare che abbia i parametri
di sistema descritti qui di seguito.
Fase
Istruzione
Istruzioni operative
G120 1)
1
Eseguire la messa in servizio di base dell'azionamento con il pannello operato- Cap. 4.4.3
re BOP-2.
G120C 2)
Cap. 6.4.1
Il convertitore offre diverse preimpostazioni (macro) per i relativi ingressi e
uscite e per l'interfaccia per il bus di campo. Nel 9° passo della messa in servizio di base (MAC PAR p15) selezionare la macro 21 per la comunicazione
USS. Sono così preimpostati anche i seguenti parametri:
•
Velocità di trasmissione dati (p2020): 38400 bit/s
•
Numero PZD (p2022): 2
• Numero PKW (p2023): variabile
Avvertenza:
L'esecuzione della messa in servizio di base è possibile anche con il software
STARTER oppure con SINAMICS Startdrive.
2
Dall'interruttore per l'impostazione dell'indirizzo sulla Control Unit di G120 o di
G120(C), definire l'indirizzo USS del convertitore.
Cap. 6.2.2.1
Cap. 8.4.2.1
Cap. 4.4.2
Cap. 6.4.2
• Area di indirizzi valida: 1 … 30
Avvertenza:
L'impostazione dell'indirizzo USS può essere eseguita anche dal parametro
p2021 o da STARTER o SINAMICS Startdrive.
I seguenti passi consentono al pannello operatore BOP-2 l'accesso diretto ai
parametri, selezionando i numeri degli stessi e modificando i relativi valori.
CM PtP - Configurazioni di accoppiamenti punto a punto
180
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Fase
3
4
Istruzione
Istruzioni operative
Adeguare alla propria applicazione i seguenti parametri del convertitore riferiti
alla comunicazione:
•
Velocità di trasmissione dati (p2020), se ≠ 38400 bit/s
(accertare la corrispondenza con il parametro BAUD dell'istruzione di comunicazione USS_Port_Scan.)
•
Numero PZD (p2022), se ≠ 2
(accertare la corrispondenza con il parametro PZD_LEN dell'istruzione di
comunicazione USS_Drive_Control.)
•
Numero PKW (p2023) = 4
(modificare, impostandolo su "4", il valore definito per default sulla "variabile" (127) tramite la macro 21, (lo richiedono le istruzioni USS_Read_Param
e USS_Write_Param)
•
Tempo di controllo [ms] (p2040) bus di campo SS
G120 1)
G120C 2)
Cap. 6.2.2.2
Cap. 8.4.2.1
Stabilisce la sorgente per il setpoint del numero di giri.
• n_soll Ausw (p1000[0]) = 6
(Il setpoint del numero di giri viene approntato tramite il bus USS.)
5
Impostare la grandezza di riferimento per numero di giri e frequenza.
• n_riferimento f_riferimento (p2000) = (6.00 min-1 fino a 210000.00 min-1)
(Tutti i valori relativi indicati per i numeri di giri o per le frequenze si rifanno a
questa grandezza di riferimento. La grandezza di riferimento corrisponde a
100 % o 4000esadec. (parola) o 4000 0000esadec. (doppia parola). In questo caso
vale quanto segue:
fgrandezza di riferimento (in Hz) = ngrandezza di riferimento (in ((min-1) / 60) x numero coppie
di poli))
6
Trasferire i parametri nella memoria non volatile.
•
Salvare i parametri (p0971) = 1
1) G120 (http://support.automation.siemens.com/CN/view/it/62089662)
2) G120(C) (http://support.automation.siemens.com/WW/view/it/61462568)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
181
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
5.4.3.8
Messaggi di errore
Panoramica dei messaggi di errore PtP
I messaggi di errore vengono messi a disposizione nell'uscita STATUS di un'istruzione e
possono essere valutati lì o elaborati nel programma utente.
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Stato di RECEIVE e codici di errore
16#0094
Fine del telegramma riconosciuta dalla "ricezione di
una lunghezza fissa/massima del telegramma"
-
16#0095
Fine del telegramma riconosciuta dal "Time out dei
messaggi"
-
16#0096
Fine del telegramma riconosciuta dallo scadere del
"Tempo di ritardo del carattere"
-
16#0097
Il telegramma è stato interrotto poiché è stato raggiunto il tempo di risposta massimo.
-
16#0098
Fine del telegramma riconosciuta perché sono soddisfatte le condizioni per "Rileva la lunghezza dal messaggio"
-
16#0099
Fine del telegramma riconosciuta dalla ricezione della "Sequenza di fine"
Stato di SEND e codici di errore
16#7000
Blocco nel funzionamento a vuoto
16#7001
Primo richiamo di un nuovo telegramma: trasmissione dei dati avviata
-
16#7002
Richiamo intermedio: trasmissione dei dati in corso
-
16#8085
Lunghezza indicata non consentita
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (Byte)
16#8088
La lunghezza indicata è maggiore dell'area impostata
nel buffer di ricezione.
Modificare l'area nel buffer di ricezione o selezionare
una lunghezza del telegramma adeguata all'area
impostata nel buffer di ricezione.
Avvertenza: se nel parametro BUFFER è stato specificato il tipo di dati STRING, questo codice di errore
Sono consentiti (in funzione del modulo):
viene visualizzato anche se la lunghezza della stringa 1-1024/2048/4096 (byte)
attuale è minore del valore indicato nel parametro
LENGTH.
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
CM PtP - Configurazioni di accoppiamenti punto a punto
182
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Stato di RECEIVE e codici di errore
16#8088
Il numero di caratteri ricevuti è maggiore di quanto
indicato nel parametro BUFFER.
Selezionare una lunghezza del telegramma appropriata.
Sono consentiti (in funzione del modulo):
1-1024/2048/4096 (byte)
16#8090
Errore di configurazione: Numero dispari di byte in
WString
Scegliere un numero pari di byte.
Codici di segnalazione degli errori delle funzioni speciali
16#818F
Impostazione errata per il numero del parametro (solo Selezionare un numero di parametro adeguato
per USS)
(PARAM).
Sono consentiti: 0-2047
16#8190
Impostazione errata del calcolo CRC
Selezionare un valore adeguato per il calcolo CRC.
Sono consentiti: disattivato o attivato.
Verificare se il modulo indirizzato supporta il calcolo
CRC.
16#8191
Impostazione errata dell'allarme di diagnostica
Selezionare un valore adatto per "Allarme di diagnostica".
Sono consentiti: allarme di diagnostica disattivato o
attivato.
Verificare se il modulo indirizzato supporta la generazione di allarmi di diagnostica.
Codici di segnalazione degli errori di configurazione della porta
16#81A0
Il modulo non supporta questo protocollo.
Selezionare un protocollo (PROTOCOL) consentito
per il modulo.
16#81A1
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione (BAUD)
consentita per il modulo.
16#81A2
Il modulo non supporta questa impostazione per la
parità.
Selezionare un valore adatto per "Parità" (PARITY).
16#81A3
Il modulo non supporta questo numero di bit di dati.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
Selezionare un valore adatto per "Numero di bit di
dati" (DATABITS).
Sono consentiti:
16#81A4
Il modulo non supporta questo numero di bit di stop.
•
7 (2)
•
8 (1)
Selezionare un valore adatto per "Numero di bit di
stop" (STOPBITS).
Sono consentiti:
•
1 (1)
•
2 (2)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
183
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81A5
Il modulo non supporta questo tipo di controllo del
flusso dati.
Selezionare un controllo del flusso dati
(FLOWCTRL) consentito per il modulo.
16#81A7
Valore non consentito per XON o XOFF
Selezionare valori adatti per XON (XONCHAR) e
XOFF(XOFFCHAR).
16#81AA
Modo di funzionamento non consentito
I modi di funzionamento consentiti sono:
Campo di valori ammesso: 0...255
16#81AB
16#81AC
16#81AF
•
Fullduplex (RS232) (0)
•
Fullduplex (RS 422) a quattro fili (punto a punto)
(1) / (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(master multipoint) (2)/ (CM PtP (ET 200SP))
•
Fullduplex (RS422) funzionamento a quattro fili
(Slave multipoint) (3)
•
Semiduplex (RS485) funzionamento a 2 fili (4)
Preimpostazione della linea di ricezione non consenti- Le preimpostazioni consentite sono:
ta
• "Nessuna" preimpostazione (0)
Valore non consentito per "Riconoscimento Break"
Il modulo non supporta questo protocollo.
•
Segnale R(A)=5V, segnale R(B)=0 V (riconoscimento Break) (1):
È disponibile solo nei seguenti casi: "Fullduplex
(RS422) funzionamento a quattro fili (Punto a
punto)" e "Fullduplex (RS422) funzionamento a
quattro fili (Slave multipoint)".
•
Segnale R(A)=0 V, segnale R(B)=5 V (2): questa
preimpostazione corrisponde allo stato di riposo
(nessuna trasmissione attiva).
Selezionare un valore adatto per "Riconoscimento
Break". Sono consentiti:
•
riconoscimento Break disattivato (0)
•
riconoscimento Break attivo (1).
Selezionare un protocollo consentito per il modulo.
Codici di errore di configurazione della trasmissione
16#81B5
Più di 2 caratteri finali -osequenza di fine > 5 caratteri
Selezionare valori adatti per "Carattere finale" e
"Sequenza di fine".
Sono consentiti:
•
disattivato (0),
• 1 (1) o 2 (2) caratteri finali
oppure
16#81B6
Send Configuration respinto perché è selezionato il
protocollo 3964(R)
•
disattivato (0),
•
1 (1) ... 5 (5) caratteri per la sequenza di fine.
Assicurarsi che con il protocollo 3964(R) impostato
non venga inviata la configurazione della trasmissione.
CM PtP - Configurazioni di accoppiamenti punto a punto
184
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81C0
Condizione iniziale non consentita
Selezionare una condizione iniziale adatta.
Sono consentiti:
•
Invia Break prima dell'inizio del telegramma
•
Invia Idle Line.
16#81C1
Condizione finale non consentita o non selezionata
Selezionare una condizione finale adatta (vedere
Ricezione di dati con Freeport (Pagina 35)).
16#81C3
Valore non consentito per "Lunghezza max. del messaggio"
Selezionare un valore adatto per "Lunghezza max.
del messaggio" (MAXLEN).
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C4
Valore non consentito per "Offset del campo di lunghezza nel messaggio"
Selezionare un valore adatto per "Offset del campo
di lunghezza nel messaggio".
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)
16#81C5
Valore non consentito per "Dimensioni del campo di
lunghezza"
Selezionare un valore adatto per "Dimensioni del
campo di lunghezza" (LENGTHSIZE).
Campo valori consentito in byte:
16#81C6
Valore non consentito per "Numero dei caratteri che
non rientrano nella lunghezza indicata"
•
1 (1)
•
2 (2)
•
4 (4)
Selezionare un valore adatto per "Nr. dei caratteri
che non rientrano nella lunghezza indicata"
(LENGTHM).
Campo di valori ammesso: 0 ... 255 (byte)
16#81C7
La somma di "Offset del campo di lunghezza nel
messaggio + Dimensioni del campo di lunghezza +
Numero dei caratteri che non rientrano nella lunghezza indicata" supera la lunghezza massima del telegramma.
Selezionare valori adatti per "Offset del campo di
lunghezza nel messaggio", "Dimensioni del campo
di lunghezza" e "Numero dei caratteri che non rientrano nella lunghezza indicata".
Campo di valori ammesso:
•
Offset del campo di lunghezza nel messaggio (in
funzione del modulo):
0-1024/2048/4096 (byte)
•
Dimensioni del campo di lunghezza: 1, 2 o 4
(byte)
•
Numero dei caratteri che non rientrano nella
lunghezza indicata: 0-255 (byte)
16#81C8
Valore non consentito per "Time out di risposta"
Selezionare un valore adatto per "Time out di risposta".
16#81C9
Valore non consentito per "Tempo di ritardo del carat- Selezionare un valore adatto per "Tempo di ritardo
tere"
del carattere".
16#81CB
Sequenza di fine del telegramma attivata ma nessuno Attivare uno o più caratteri per la verifica.
dei caratteri è attivato per la verifica
Campo di valori ammesso: 1-65535 (ms)
Campo di valori ammesso: 1-65535 (bit time)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
185
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#81CC
Sequenza di inizio del telegramma attivata ma nessuno dei caratteri è attivato per la verifica
Attivare uno o più caratteri per la verifica.
16#81CD
Valore non consentito per "Impedisci sovrascrittura"
Selezionare un valore adatto per "Impedisci sovrascrittura".
Sono consentiti:
16#81CE
Valore non consentito per "Cancella buffer di ricezione all'avviamento"
•
Impedisci sovrascrittura disattivato (0) oppure
•
Impedisci sovrascrittura attivato (1)
Selezionare un valore adatto per "Cancella buffer di
ricezione all'avviamento".
Sono consentiti:
•
Cancella buffer di ricezione all'avviamento disattivato (0)
•
Cancella buffer di ricezione all'avviamento attivato (1)
Stato di SEND e codici di errore
16#81D0
Ricezione di una richiesta di trasmissione durante
l'esecuzione di un ordine di trasmissione
Assicurarsi che durante l'esecuzione di un ordine di
trasmissione non si verifichino ulteriori richieste di
trasmissione.
16#81D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#81D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#81D3
Overflow del buffer di trasmissione / telegramma di
trasmissione troppo grande
Selezionare una lunghezza del telegramma inferiore.
16#81D5
Trasmissione interrotta per modifica della parametrizzazione, rilevamento della rottura di un conduttore o
CPU in STOP
Verificare la parametrizzazione, la rottura conduttore
e lo stato della CPU.
16#81D6
Trasmissione interrotta per mancata ricezione del
carattere finale
Verificare la parametrizzazione dei caratteri finali e il
telegramma del partner della comunicazione.
16#81D7
Comunicazione disturbata tra programma utente e
modulo
Verificare la comunicazione (ad es. la corrispondenza del numero della sequenza).
16#81D8
Tentativo di trasmissione respinto perché il modulo
non è parametrizzato
Parametrizzare il modulo.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
CM PtP - Configurazioni di accoppiamenti punto a punto
186
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#81E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso la funzione di ricezione nel
programma utente o parametrizzare una comunicazione con controllo del flusso dati.
16#81E1
Telegramma interrotto: Errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#81E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#81E3
Telegramma interrotto: errore di overflow dei caratteri
Errore di firmware: rivolgersi al Customer Support.
16#81E4
Telegramma interrotto: lunghezza di "Offset del campo di lunghezza nel messaggio + Dimensioni del
campo di lunghezza + Numero dei caratteri che non
rientrano nella lunghezza indicata" superiore al buffer
di ricezione
Verificare le impostazioni per Offset del campo di
lunghezza nel messaggio, Dimensioni del campo di
lunghezza e Numero dei caratteri che non rientrano
nella lunghezza indicata.
16#81E5
Telegramma interrotto: Break
Linea di ricezione verso il partner interrotta.
16#81E6
Numero massimo di "Telegrammi in ricezione bufferizzati" superato
Richiamare più spesso l'istruzione nel programma
utente, parametrizzare una comunicazione con controllo del flusso dati o aumentare il numero di telegrammi salvati nel buffer.
16#81E7
Errori di sincronizzazione tra il modulo e Receive_P2P
Accertarsi che diverse istanze di Receive_P2P non
accedano allo stesso modulo.
16#81E8
Telegramma interrotto: tempo di ritardo del carattere
scaduto prima che sia stato riconosciuto il criterio di
fine del messaggio
Il dispositivo partner è troppo lento o è disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#81E9
Errore CRC Modbus (solo moduli di comunicazione
che supportano Modbus)
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#81EA
Telegramma Modbus troppo corto (solo moduli di
comunicazione che supportano Modbus)
La lunghezza minima del telegramma Modbus non è
stata raggiunta. Controllare il partner di comunicazione.
16#81EB
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Ripristinare la linea o attivare il partner.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Controllare i parametri del riconoscimento della fine
del telegramma.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
187
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore dei segnali addizionali V24
16#81F0
Il modulo non supporta segnali addizionali V24
Si è tentato di impostare segnali addizionali per un
modulo che non supporta i segnali addizionali V24.
Assicurarsi che si tratti di un modulo RS232 o che
sia impostata la modalità RS232 (ET 200SP).
16#81F1
Nessun comando dei segnali addizionali V24
Se è attivo il controllo del flusso dati hardware non è
possibile comandare manualmente i segnali addizionali V24.
16#81F2
Impossibile impostare il segnale DSR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DTE.
L'unità deve essere di tipo DCE (data communication equipment).
16#81F3
Impossibile impostare il segnale DTR in quanto l'unità Controllare il tipo parametrizzato dell'unità.
è di tipo DCE.
L'unità deve essere di tipo DTE (data terminal equipment).
16#81F4
Errore block header (ad es. tipo di blocco errato oppure lunghezza di blocco errata)
Verificare il DB di istanza e il block header.
Codici di errore di configurazione della ricezione
16#8201 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
16#8225
Receive_Conditionsindica l'area di memoria ottimizza- Inserire un puntatore a un'area con la lunghezza
max. seguente:
ta maggiore di 1 kByte
16#8229 1)
Inserire un puntatore a uno dei seguenti tipi di dati:
DB, BOOL, BYTE, CHAR, WORD, INT, DWORD,
DINT, REAL, DATE, TIME_OF_DAY, TIME,
S5TIME, DATE_AND_TIME, STRING
oppure
•
Receive_Conditions indica l'area di memoria ottimizzata e la lunghezza di ricezione è maggiore dell'area
indirizzata con Receive_Conditions.
• Area di memoria non ottimizzata: 4 kByte
Avvertenza: Se il puntatore indica un'area di memoria ottimizzata, non trasmettere più di 1 kByte.
Receive_Conditions è un puntatore rivolto verso
BOOL con numero di bit diverso da n * 8
Se si utilizza un puntatore rivolto verso BOOL il
numero di bit deve essere un multiplo di 8.
Area di memoria ottimizzata: 1 kByte
Codici di errore generali
16#8280
16#8281
Conferma negativa durante la lettura del modulo
Conferma negativa durante la scrittura del modulo
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici RDREC.STATUS e
nella descrizione dell'SFB RDREC.
•
Controllare quanto immesso nel parametro
PORT
•
Prima del 1° richiamo impostare il parametro
COM_RST.
Controllare quanto immesso nel parametro PORT
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici WRREC.STATUS e
nella descrizione dell'SFB WRREC.
16#8282
Modulo non disponibile
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
188
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Codici di errore di configurazione della ricezione
16#82C1
Valore non consentito per "Telegrammi in ricezione
bufferizzati".
Selezionare un valore adatto per "Telegrammi in
ricezione bufferizzati".
Campo di valori ammesso: 1-255
16#82C2
Receive Configuration respinto perché è selezionato il Assicurarsi che con il protocollo 3964(R) impostato
protocollo 3964(R)
non venga inviata la configurazione della ricezione.
16#8301 1)
Receive_Conditions è un puntatore a un tipo di dati
non consentito
Selezionare un tipo di dati consentito.
16#8322
Lunghezza dell'area errata per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8324
Errore di area per la lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
16#8328
Errore di impostazione alla lettura di un parametro
Controllare quanto immesso nel parametro Receive_Conditions
Sono consentiti: DB, BOOL, BYTE, CHAR, WORD,
INT, DWORD, DINT, REAL, DATE, TIME_OF_DAY,
TIME, S5TIME, DATE_AND_TIME, STRING
Stato di SEND e codici di errore
16#8328 1)
BUFFER è un puntatore a BOOL con numero di bit
diverso da n * 8
Se si utilizza un puntatore a BOOL il numero di bit
deve essere un multiplo di 8.
Codici di errore di configurazione della ricezione
16#8332
Blocco dati non consentito nel parametro Receive_Conditions
Controllare quanto immesso nel parametro Receive_Conditions
16#833A
La denominazione del blocco dati nel parametro Receive_Conditions indica un blocco dati non caricato.
Controllare quanto immesso nel parametro Receive_Conditions
16#8351
Tipo di dati non ammesso
Controllare quanto immesso nel parametro Receive_Conditions
16#8352 1)
Receive_Conditions non indica un blocco dati
Controllare il puntatore a Receive_Conditions
16#8353
Receive_Conditions non indica una struttura del tipo
Receive_Conditions
Controllare il puntatore a Receive_Conditions
1)
Codici di errore del protocollo 3964(R)
16#8380
Errore di parametrizzazione: valore non consentito
per "Tempo di ritardo del carattere".
Selezionare un valore adatto per "Tempo di ritardo
del carattere" (CharacterDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8381
Errore di parametrizzazione: valore non consentito
per "Time out di risposta".
Selezionare un valore adatto per "Time out di risposta" (AcknDelayTime).
Campo di valori ammesso: 1-65535 (ms)
16#8382
Errore di parametrizzazione: valore non consentito
per "Priorità".
Selezionare un valore adatto per "Priorità" (Priority).
Sono consentiti:
•
Elevato (1)
•
Basso (0)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
189
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8383
Errore di parametrizzazione: valore non consentito
per "Verifica blocco".
Selezionare un valore adatto per "Verifica blocco"
(BCC).
Sono consentiti:
16#8384
Errore di parametrizzazione: valore non consentito
per "Tentativi di collegamento".
•
con verifica blocco (1)
•
senza verifica blocco (0)
Selezionare un valore adatto per "Tentativi di collegamento" (BuildupAttempts).
Campo di valori ammesso: 1-255
16#8385
Errore di parametrizzazione: valore non consentito
per "Tentativi di trasmissione".
Selezionare un valore adatto per "Tentativi di trasmissione" (RepetitionAttempts).
Campo di valori ammesso: 1-255
16#8386
Errore di runtime: numero di tentativi di collegamento
superato
Controllare il cavo dell'interfaccia e i parametri di
trasmissione.
Controllare anche sul lato del partner se la funzione
di ricezione è parametrizzata correttamente.
16#8387
Errore di runtime: numero di tentativi di trasmissione
superato
Controllare il cavo dell'interfaccia, i parametri di
trasmissione e la parametrizzazione del partner della
comunicazione.
16#8388
Errore di runtime: errore nel "carattere di verifica
blocco"
Controllare se il collegamento è fortemente disturbato, in questo caso si noteranno occasionalmente
anche codici errati. Verificare il corretto comportamento del dispositivo partner, eventualmente con un
dispositivo di controllo interfaccia da inserire nella
linea di trasmissione.
Il valore del carattere di verifica blocco creato internamente non coincide con quello ricevuto dal partner
alla fine del collegamento.
16#8389
Errore di runtime: in attesa della disponibilità del buffer di ricezione è stato ricevuto un carattere non consentito
La richiesta di trasmissione del partner di comunicazione (STX, 02H) riceve in risposta DLE solo quando
il buffer di ricezione si svuota. Prima non è consentito ricevere altri caratteri (ad eccezione di un altro
STX).
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838A
Errore di runtime: errore logico durante la ricezione.
Dopo la ricezione di DLE è stato ricevuto un altro
carattere qualsiasi (esclusi DLE, ETX).
16#838B
Errore di runtime: tempo di ritardo del carattere superato
Controllare se il partner raddoppia sempre DLE
nell'intestazione del telegramma e nella stringa di
dati o se il collegamento si disattiva con DLE ETX.
Verificare il corretto comportamento del dispositivo
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
Il dispositivo partner è troppo lento o disturbato.
Verificare eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838C
Errore di runtime: tempo di attesa della disponibilità
del buffer di ricezione avviato
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#838D
Errore di runtime: dopo NAK la ripetizione del telegramma non si avvia entro 4 s
Controllare il partner di comunicazione. Un telegramma ricevuto eventualmente errato deve essere
ripetuto dal partner entro 4 secondi.
CM PtP - Configurazioni di accoppiamenti punto a punto
190
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
16#838E
Errore di runtime: durante il tempo di riposo sono stati Verificare il corretto comportamento del dispositivo
ricevuti uno o più caratteri (esclusi NAK o STX).
partner, eventualmente con un dispositivo di controllo interfaccia da inserire nella linea di trasmissione.
16#838F
Errore di runtime: conflitto di inizializzazione. Entrambi i partner hanno impostato la priorità alta
Impostare per uno dei partner la priorità "Bassa"
16#8391
Errore di parametrizzazione: dati di parametrizzazione 3964 respinti perché è impostato Freeport
Assicurarsi che con il protocollo Freeport impostato
non vengano inviati i dati di parametrizzazione 3964.
1)
Rimedio
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
191
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Panoramica dei messaggi di errore Modbus
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
Errore di configurazione dell'interfaccia - Modbus_Comm_Load
16#8181
Il modulo non supporta questa velocità di trasmissione dati.
Selezionare una velocità di trasmissione consentita
per il modulo nel parametro BAUD.
16#8182
Il modulo non supporta questa impostazione per la
parità.
Selezionare un valore adatto per la "Parità" nel parametro PARITY.
Sono consentiti:
•
Nessuna (1)
•
Pari (2)
•
Dispari (3)
•
Mark (4)
•
Space (5)
•
Qualsiasi (6)
16#8183
Il modulo non supporta questo tipo di controllo del
flusso dati.
Selezionare un controllo del flusso dati consentito
per il modulo nel parametro FLOW_CTRL.
16#8184
valore non consentito per "Time out di risposta".
Selezionare un valore adatto per "Time out di risposta" nel parametro RESP_TO.
Campo di valori ammesso: 1-65535 (ms)
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.RDREC.STATUS, Receive_Config.RDREC.STATUS o RDREC.STATUS e
nella descrizione dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_Config.WRREC.STATUS, Receive_Config.WRREC.STATUS o WRREC.STATUS e
nella descrizione dell'SFB WRREC.
16#8282
Modulo non disponibile
Verificare l'immissione nel parametro PORT e accertarsi che il modulo sia accessibile.
CM PtP - Configurazioni di accoppiamenti punto a punto
192
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Slave
16#8186
Indirizzo slave non consentito
Selezionare un indirizzo di slave adeguato nel parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8187
Valore non consentito nel parametro MB_HOLD_REG Selezionare un valore adatto per l'holding register
nel parametro MB_HOLD_REG.
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per
MODE il valore 1 o scegliere un altro modo di funzionamento.
16#818C
Il puntatore di un'area MB_HOLD_REG deve essere
un blocco dati o un'area merker.
Selezionare un valore adatto per il puntatore all'area
MB_HOLD_REG.
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS o Receive_P2P.WRREC.STATUS e nella descrizione
dell'SFB WRREC.
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456
Errore di esecuzione dell'istruzione. La causa dell'errore si trova nel parametro statico STATUS.
Determinare il valore del parametro SFCSTATUS.
Leggerne il significato nella descrizione dell'SFC51,
parametro STATUS.
1)
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
193
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di configurazione - Modbus_Master
16#8180
Valore non consentito per il parametro MB_DB
Il valore parametrizzato nell'istruzione Modbus_Comm_Load per MB_DB (DB dei dati di istanza) non è consentito.
Controllare l'interconnessione dell'istruzione Modbus_Comm_Load e i relativi messaggi di errore.
16#8186
Indirizzo della stazione non consentito
Selezionare un indirizzo di stazione adeguato nel
parametro MB_ADDR.
Sono consentiti: 1-247 per l'area di indirizzi standard;
1-65535 per l'area di indirizzi estesa
(0 è riservato per il broadcast)
16#8188
Modo di funzionamento non consentito o Broadcast
(MB_ADDR = 0) e parametro MODE ≠ 1
Con il modo di funzionamento Broadcast selezionare
per MODE il valore 1 o scegliere un altro modo di
funzionamento.
16#8189
Indirizzo dei dati non consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818A
Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata nel
parametro DATA_LEN.
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818B
Valore non consentito per DATA_PTR
Selezionare nel parametro DATA_PTR un valore
adeguato per il puntatore dati (indirizzo M o DB).
Vedere la descrizione Modbus_Master (Pagina 124)
nel sistema di informazione
16#818C
Errore di interconnessione del parametro DATA_PTR
Controllare l'interconnessione dell'istruzione.
16#818D
La lunghezza dell'area indirizzata con DATA_PTR
supera la lunghezza del DB o l'area indirizzata è
troppo piccola per il numero di dati da leggere o scrivere.
Controllare il puntatore DATA_PTR
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione
dell'SFB RDREC.
16#8281
Conferma negativa durante la scrittura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Send_P2P.WRREC.STATUS, Receive_P2P.WRREC.STATUS o Receive_Reset e nella
descrizione dell'SFB WRREC.
CM PtP - Configurazioni di accoppiamenti punto a punto
194
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di comunicazione - Modbus_Master e Modbus_Slave
16#80D1
Il tempo di attesa di XON o CTS = ON è scaduto.
Il partner di comunicazione è disturbato, troppo lento
oppure offline. Controllare il partner di comunicazione o modificare eventualmente la parametrizzazione.
16#80D2
"Hardware RTS sempre ON": ordine di trasmissione
interrotto a causa della commutazione da DSR = ON
a OFF
Controllare il partner di comunicazione. Assicurarsi
che DSR sia impostato su ON per l'intera trasmissione.
16#80E0
Telegramma interrotto: overflow del buffer di trasmissione / telegramma di trasmissione troppo grande
Richiamare più spesso l'istruzione nel programma
utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#80E1
Telegramma interrotto: errore di parità
Verificare la linea di collegamento dei partner di
comunicazione ovvero che velocità di trasmissione,
parità e numero di bit di stop siano gli stessi su entrambi i dispositivi.
16#80E2
Telegramma interrotto: errore di frame
Verificare le impostazioni per bit di start, bit di dati,
bit di parità, velocità di trasmissione e bit di stop.
16#80E3
Telegramma interrotto: errore di overflow dei caratteri
Controllare il numero di dati del telegramma del
partner della comunicazione.
16#80E4
Telegramma interrotto: lunghezza massima del telegramma raggiunta
Selezionare una lunghezza del telegramma inferiore
per il partner di comunicazione.
Sono consentiti (in funzione del modulo): 11024/2048/4096 (byte)
Errore di comunicazione - Modbus_Master
16#80C8
Lo slave non risponde entro il tempo impostato
Verificare la velocità di trasmissione, la parità e il
cablaggio dello slave.
16#80C9
Lo slave non risponde entro il tempo impostato tramite Blocked_Proc_Timeout.
Verificare l'impostazione di Blocked_Proc_Timeout.
16#8200
L'interfaccia è occupata da una richiesta in corso.
Controllare se il modulo è stato parametrizzato con
l'istruzione Modbus_Comm_Load. Eventualmente,
dopo aver estratto e reinserito il modulo o al ripristino della tensione, è necessario riparametrizzare il
modulo tramite Modbus_Comm_Load.
Ripetere l'ordine successivamente. Prima di avviare
un nuovo ordine assicurarsi che non siano più in
corso altri ordini.
Errore di protocollo - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Il codice funzione non è supportato o non è supportato per il Broadcast.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
La lunghezza indicata nel telegramma di richiesta non Selezionare una lunghezza dei dati adeguata nel
è consentita
parametro DATA_LEN.
16#8383
L'indirizzo dei dati nel telegramma di richiesta non è
consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Errore nel valore dei dati non consentito nel telegramma di richiesta
Controllare il valore dei dati nel telegramma di richiesta del master Modbus
16#8385
Il valore di diagnostica non è supportato dallo slave
Modbus (codice funzione 08)
Lo slave Modbus supporta solo i valori di diagnostica
16#0000 e 16#000A.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
195
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
Errore di protocollo - Modbus_Master (solo moduli di comunicazione che supportano Modbus)
16#8380
Errore CRC
Errore nella somma di controllo del telegramma
Modbus. Controllare il partner di comunicazione.
16#8381
Telegramma di risposta del Modbus Slave con messaggio di errore: Il codice funzione non è supportato.
Controllare il partner della comunicazione e assicurarsi che venga inviato un codice funzione valido.
16#8382
Telegramma di risposta del Modbus Slave con messaggio di errore: Lunghezza indicata non consentita
Selezionare una lunghezza dei dati adeguata.
16#8383
Telegramma di risposta del Modbus Slave con messaggio di errore: L'indirizzo dei dati nel telegramma di
richiesta non è consentito
Selezionare un valore adatto per l'indirizzo dei dati
nel parametro DATA_ADDR.
16#8384
Telegramma di risposta del Modbus Slave con messaggio di errore: Errore nel valore dei dati
Controllare il telegramma di richiesta inviato allo
slave Modbus.
16#8385
Telegramma di risposta del Modbus Slave con mesGli slave Modbus supportano solo i valori di diagnosaggio di errore: Il valore di diagnostica non è suppor- stica 16#0000 e 16#000A.
tato dallo slave Modbus
16#8386
Il codice funzione confermato non corrisponde a quel- Controllare il telegramma di risposta e l'indirizzalo richiesto.
mento dello slave.
16#8387
Risponde uno slave che non è stato indirizzato
Controllare il telegramma di risposta dello slave.
Controllare le impostazioni dell'indirizzo dello slave.
16#8388
Errore nella risposta dello slave a una richiesta di
scrittura.
Controllare il telegramma di risposta dello slave.
16#8828 1)
DATA_PTR indica un indirizzo di bit diverso da n * 8
Controllare il puntatore DATA_PTR
16#8852
DATA_PTR non è un puntatore a un DB o un'area
merker
Controllare il puntatore DATA_PTR
16#8853 1)
DATA_PTR non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore DATA_PTR
16#8855 1)
DATA_PTR indica un DB protetto in scrittura
Controllare il puntatore DATA_PTR
16#8856 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Master
1)
Errore - Modbus_Slave (solo moduli di comunicazione che supportano Modbus)
16#8428 1)
MB_HOLD_REG indica un indirizzo di bit diverso da n Controllare il puntatore MB_HOLD_REG
*8
16#8452 1)
MB_HOLD_REG non è un puntatore a un DB o un'area merker
Controllare il puntatore MB_HOLD_REG
16#8453 1)
MB_HOLD_REG non è un puntatore del tipo BOOL o
WORD
Controllare il puntatore MB_HOLD_REG
16#8454 1)
La lunghezza dell'area indirizzata con
MB_HOLD_REG supera la lunghezza del DB o l'area
indirizzata è troppo piccola per il numero di dati da
leggere o scrivere.
Controllare il puntatore MB_HOLD_REG
16#8455 1)
MB_HOLD_REG indica un DB protetto in scrittura
Controllare il puntatore MB_HOLD_REG
16#8456 1)
Errore al richiamo dell'SFC51
Ripetere il richiamo dell'istruzione Modbus_Slave
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
196
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Panoramica dei messaggi di errore USS
Codice di
errore
Descrizione
Rimedio
16#0000
Nessun errore
-
16#8180
Lunghezza errata nella risposta dell'azionamento
Controllare il telegramma di risposta dell'azionamento.
16#8181
Errore di tipo di dati
Selezionare un tipo di dati adeguato.
Sono consentiti:
•
Real
•
Parola
•
Doppia parola
16#8182
Errore di tipo di dati: la richiesta "Parola" non
deve essere confermata da "Doppia parola" o
"Real".
Controllare il telegramma di risposta dell'azionamento.
16#8183
Errore di tipo di dati: la richiesta "Doppia parola" o Controllare il telegramma di risposta dell'azionamento.
"Real" non deve essere confermata da "Parola".
16#8184
Errore della somma di controllo nella risposta
dell'azionamento
Verificare l'azionamento e il collegamento di comunicazione.
16#8185
Errore di indirizzamento
Area di indirizzi dell'azionamento consentita: 1 ... 16
16#8186
Errore di setpoint
Campo del setpoint: -200 % ... +200 %
16#8187
Il numero di azionamento confermato è errato
Controllare il telegramma di risposta dell'azionamento.
16#8188
Lunghezza PZD non consentita
Lunghezze PZD consentite: 2, 4, 6, 8 parole
16#8189
Il modulo non supporta questa velocità di trasmis- Selezionare una velocità di trasmissione consentita per il
sione dati.
modulo.
16#818A
Al momento è attiva un'altra richiesta per questo
azionamento.
Ripetere l'ordine di lettura o scrittura dei parametri in un
momento successivo.
16#818B
L'azionamento non risponde.
Controllare l'azionamento.
16#818C
L'azionamento risponde a una richiesta di parametri con un messaggio di errore.
Controllare il telegramma di risposta dell'azionamento.
Verificare la richiesta di parametri.
Verificare se le istruzioni USS_Read_Param,
USS_Write_Param oppure USS_Port_Scan hanno segnalato un errore. In caso affermativo controllare il valore della variabile statica USS_DB. w_USSExtendedError
dell'istruzione USS_Drive_Control.
16#818D
16#818E
L'azionamento risponde a una richiesta di parametri segnalando un errore di accesso.
Controllare il telegramma di risposta dell'azionamento.
L'azionamento non è stato inizializzato.
Controllare il programma utente e assicurarsi che per
questo azionamento venga richiamata l'istruzione
USS_Drive_Control.
Verificare la richiesta di parametri.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
197
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni
Codice di
errore
Descrizione
Rimedio
16#8280
Conferma negativa durante la lettura del modulo
Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.RDREC.STATUS o
Send_Config.RDREC.STATUS o Receive_Config.RDREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
RDREC.
16#8281
Conferma negativa durante la scrittura del modulo Controllare quanto immesso nel parametro PORT.
Informazioni più precise sulla causa dell'errore sono
indicate nei parametri statici
Port_Config.WRREC.STATUS o
Send_Config.WRREC.STATUS o Receive_Config.WRREC.STATUS o
Send_P2P.RDREC.STATUS o Receive_P2P.RDREC.STATUS e nella descrizione dell'SFB
WRREC.
1)
Solo per le istruzioni per le CPU S7-300/400
CM PtP - Configurazioni di accoppiamenti punto a punto
198
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Avviamento e diagnostica
6.1
6
Comportamento all'avviamento
Commutazioni nei vari stati di funzionamento
Dopo l'avviamento del modulo di comunicazione la CPU e il modulo si scambiano tutti i dati
tramite istruzioni.
STOP della CPU
Durante la trasmissione dei dati tra il modulo di comunicazione e la
CPU gli ordini di trasmissione e di ricezione vengono annullati.
CPU in RUN
Lo stato RUN della CPU consente il funzionamento di trasmissione
e ricezione.
Con la parametrizzazione opportuna nella finestra delle proprietà
del modulo di comunicazione è possibile cancellare automaticamente il buffer di ricezione sul modulo all'avviamento della CPU.
Dal punto di vista del modulo di comunicazione non ci sono altri stati di funzionamento/altre
commutazioni nei vari stati di funzionamento.
6.2
Funzioni di diagnostica
Introduzione
Le funzioni di diagnostica del modulo di comunicazione consentono una rapida
localizzazione degli errori che si sono verificati. Le possibilità di diagnostica sono le seguenti:
Diagnostica tramite elementi di visualizzazione del modulo di comunicazione
Gli elementi di visualizzazione forniscono informazioni sullo stato di funzionamento e su possibili stati di errore del modulo di comunicazione. Gli elementi di
visualizzazione forniscono una prima visione generale degli errori interni, esterni
e specifici dell'interfaccia che si sono verificati. Per maggiori informazioni consultare il manuale del modulo di comunicazione.
Diagnostica tramite uscita STATUS
delle istruzioni
Per la diagnostica degli errori le istruzioni dispongono di un'uscita STATUS che
fornisce informazioni sugli errori di comunicazione tra modulo di comunicazione
e CPU. Il parametro STATUS può essere valutato nel programma utente (è
presente esattamente per un ciclo).
Allarme di diagnostica
Il modulo di comunicazione può generare un allarme di diagnostica sulla CPU
assegnata. Il modulo di comunicazione mette a disposizione un'informazione di
diagnostica. Questa informazione si analizza nel programma utente o leggendo
il buffer di diagnostica della CPU.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
199
A
Service & Support
A.1
Servizi di assistenza e supporto tecnico
Offerta eccezionale e completa lungo tutto il ciclo di vita
Sia che siate costruttori di macchine, fornitori di soluzioni o gestori di impianti: l'offerta di
servizi di Siemens Industry Automation and Drive Technologies comprende prestazioni di
assistenza complete per gli utenti più diversi e in tutti i settori dell'industria manifatturiera e di
processo.
Per tutti i nostri prodotti e sistemi offriamo servizi omogenei e strutturati, che garantiscono un
supporto valido in ogni fase del ciclo di vita della vostra macchina o del vostro impianto –
dalla pianificazione alla realizzazione, attraverso la messa in servizio, fino alla manutenzione
e alla modernizzazione.
Il nostro Service & Support vi assiste in tutto il mondo e in tutte le questioni relative alla
tecnica di automazione e di azionamento. In più di 100 Paesi, direttamente sul posto,
attraverso tutte le fasi del ciclo di vita delle macchine e degli impianti.
Un'équipe di esperti e specialisti vi assicura un'assistenza efficiente e un know-how
completo. La frequenza regolare di corsi di formazione e il contatto costante tra i nostri
collaboratori – anche intercontinentali – assicurano un service affidabile nei settori più
disparati.
CM PtP - Configurazioni di accoppiamenti punto a punto
200
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Service & Support
A.1 Servizi di assistenza e supporto tecnico
Online Support
La piattaforma informativa online e completa sul nostro Service & Support vi fornisce in ogni
momento una valida assistenza tecnica ovunque nel mondo.
L'Online Support si trova al seguente indirizzo in Internet
(http://www.siemens.com/automation/service&support).
Technical Consulting
Supporto per la pianificazione e la concezione del vostro progetto: dall'analisi dettagliata
della situazione in essere e la definizione dell'obiettivo, attraverso la consulenza su prodotti e
sistemi fino all'elaborazione di una soluzione di automazione.
Technical Support
La consulenza competente per domande tecniche con un'ampia gamma di prestazioni
rispondenti alle necessità per tutti i nostri prodotti e sistemi.
Il Technical Support si trova al seguente indirizzo in Internet
(http://www.siemens.com/automation/support-request).
Training
Assicuratevi un vantaggio sulla concorrenza – grazie al know-how orientato alla pratica e
fornito direttamente dal produttore.
La nostra offerta di training si trova al seguente indirizzo in Internet
(http://www.siemens.com/sitrain).
Engineering Support
Supporto alla progettazione e allo sviluppo con servizi orientati alle necessità, dalla
configurazione alla realizzazione di un progetto di automazione.
Field Service
Il nostro Field Service vi assiste nella messa in servizio e nella manutenzione, garantendovi
così la disponibilità delle macchine e degli impianti in ogni caso.
Ricambi
Impianti e sistemi devono assicurare una disponibilità sempre maggiore in tutti i settori e in
tutto il mondo. Noi vi assistiamo per prevenire qualsiasi fuori servizio fin dall'inizio: grazie a
una rete mondiale di esperti e catene di logistica ottimizzate.
Riparazioni
I tempi di fuori servizio sono causa di problemi in azienda e di costi inutili. Noi vi aiutiamo a
contenere il più possibile questi due fattori e vi offriamo possibilità di riparazione in tutto il
mondo.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
201
Service & Support
A.1 Servizi di assistenza e supporto tecnico
Ottimizzazione
Durante l'esercizio di macchine e impianti si verifica spesso un notevole potenziale per
l'aumento della produttività o il contenimento dei costi.
Per l'individuazione mirata del potenziale vi offriamo tutta una serie di servizi di
ottimizzazione.
Modernizzazione
Potete contare sul nostro supporto anche nel caso di modernizzazioni – grazie ad un'ampia
gamma di servizi dalla pianificazione fino alla messa in servizio.
Programmi di service
I nostri programmi di service sono pacchetti selezionati di prestazioni per gruppi di sistemi o
di prodotti della tecnica di automazione e di azionamento. I singoli servizi sono armonizzati
tra loro per l'intero ciclo di vita e supportano un impiego ottimale dei vostri prodotti e sistemi.
Inoltre, le prestazioni di un programma di service possono essere adattate in ogni momento
con flessibilità e indipendentemente l'una dall'altra.
Esempi di programmi di service:
● Contratti di service
● Plant IT Security Services
● Life Cycle Services per la tecnica di azionamento
● SIMATIC PCS 7 Life Cycle Services
● SINUMERIK Manufacturing Excellence
● SIMATIC Remote Support Services
I vantaggi in sintesi:
● Tempi di fuori servizio minimizzati per una maggiore produttività
● Costi di manutenzione ottimizzati grazie a un pacchetto di prestazioni su misura
● Costi calcolabili e quindi pianificabili
● Assistenza garantita grazie a tempi di reazione e fornitura dei ricambi sicuri
● Integrazione e alleggerimento del lavoro del proprio personale di service
● Service completo e fornito da un unico produttore, meno interfacce e più know-how
CM PtP - Configurazioni di accoppiamenti punto a punto
202
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Service & Support
A.1 Servizi di assistenza e supporto tecnico
Partner di riferimento
Sempre vicini a voi, in tutto il mondo: partner di consulenza, vendita, training, assistenza,
supporto, ricambi ... per l'intera offerta del settore Industry Automation and Drive
Technologies.
Troverete il vostro interlocutore personale in Internet
(http://www.siemens.com/automation/partner) nella nostra banca dati dei partner di
riferimento.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
203
Glossario
Accoppiamento punto a punto
Nell'accoppiamento punto a punto, il modulo di comunicazione costituisce l'interfaccia tra un
controllore programmabile e un partner di comunicazione.
Buffer di diagnostica
Area di memoria nella quale vengono registrate informazioni dettagliate su tutti gli eventi di
diagnostica nello stesso ordine in cui essi si sono verificati.
Configurazione
Per configurazione si intende la combinazione di singole unità di un sistema di automazione
nella tabella di configurazione.
CPU
Central Processing Unit = unità centrale del sistema di automazione con unità di controllo e
di calcolo, memoria, programma di sistema e interfacce con unità di periferia.
CTS
Clear to send. Il partner di comunicazione è pronto alla ricezione dati.
DCD
Data carrier detect. Il partner della comunicazione segnala di aver rilevato dati in ingresso.
DSR
Data set ready. Il partner della comunicazione è pronto.
DTR
Data terminal ready. Il modulo di comunicazione è pronto.
Elaborazione ciclica del programma
Nell’elaborazione ciclica del programma il programma gira in un loop che si ripete
continuamente e che viene definito ciclo.
CM PtP - Configurazioni di accoppiamenti punto a punto
204
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Glossario
Eventi di diagnostica
Gli eventi di diagnostica possono essere guasti di un'unità, errori di sistema della CPU,
causati ad esempio da un errore del programma.
Funzioni di diagnostica
Le funzioni di diagnostica comprendono l’intera diagnostica di sistema e contengono il
riconoscimento, l’analisi e la segnalazione di errori all’interno del sistema di automazione.
Hardware
Per hardware si intende l'intero equipaggiamento fisico e tecnico di un sistema di
automazione.
Impostazione di default
L'impostazione di default è un'impostazione di base logica che viene sempre utilizzata nel
caso in cui non si siano indicati altri valori.
Modulo di comunicazione
I moduli di comunicazione sono unità per accoppiamenti punto a punto e di bus.
Online/Offline
In modalità online è in corso un collegamento di dati tra il sistema di automazione e il
dispositivo di programmazione, in modalità offline questo collegamento non è attivo.
Parametri
I parametri sono valori che possono essere assegnati. I parametri si suddividono in
parametri del blocco e parametri dell'unità.
Parametri dell'unità
I parametri dell'unità sono valori con i quali si può impostare il comportamento dell'unità.
Parametrizzazione
Per parametrizzazione si intende l’impostazione del comportamento di un'unità.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
205
Glossario
Preimpostazione della linea di ricezione
La preimpostazione della linea di ricezione nel funzionamento RS422 o RS485 consente:
● il riconoscimento di un break (rottura conduttore)
● garantisce un livello definito sulla linea di ricezione fintantoché la trasmissione non ha
luogo.
Procedura
Lo svolgimento della trasmissione dati secondo un determinato protocollo viene definito
procedura.
Programma utente
Il programma utente contiene tutte le istruzioni e le convenzioni per l'elaborazione dei
segnali che consentono il comando di un impianto o di un processo. In SIMATIC S7 il
programma utente viene creato con una struttura formata da piccole unità: i blocchi.
Protocollo
Nella trasmissione dei dati, i partner di comunicazione devono attenersi a regole fisse per la
gestione e l'esecuzione del traffico dei dati. Tali regole vengono definite come protocolli.
RI
Ring indicator. Chiamata in entrata in caso di collegamento di un modem.
RTS
Request to send. Il modulo di comunicazione è pronto all'invio di dati.
Sistema di automazione
Un sistema di automazione consiste in un controllore programmabile costituito almeno da
un'unità centrale, diverse unità di ingresso/uscita nonché da apparecchiature di servizio e di
supervisione.
Software
Il complesso di tutti i programmi che vengono utilizzati in un sistema di calcolo si definisce
software. Esso comprende il sistema operativo e i programmi utente.
CM PtP - Configurazioni di accoppiamenti punto a punto
206
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Glossario
Tempi di bit
I "Tempi di bit" vengono sempre indicati come numero di bit.
Il "Tempo" così impostato dipende dalla velocità di trasmissione dati selezionata,
considerata automaticamente.
Esempio:
La fine del telegramma deve essere riconosciuta dopo due spazi vuoti.
La velocità di trasmissione dati impostata è di 9600 bit/s.
La griglia carattere impostata è di 10 bit.
10 x 2 = 20 tempi di bit
Ciò corrisponde ad un tempo di:
20 x 1/9600 ≈ 0,0021 s
Tempo di ciclo
Tempo impiegato dalla CPU per elaborare una volta il programma utente.
USS
Il protocollo USS® (Universal Serial Interface Protocol) definisce un metodo di accesso
secondo il principio masterslave per la comunicazione mediante un bus seriale. Come
sottoinsieme comprende anche il collegamento punto a punto.
XON/XOFF
Controllo del flusso dati software con XON/XOFF I caratteri per XON e XOFF possono
essere parametrizzati (qualsiasi carattere ASCII). I dati utili non devono contenere questi
caratteri.
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
207
Indice analitico
3
3964(R)
Invio di dati, 44
Ricezione di dati, 45
A
Accoppiamento punto a punto, 15
Architettura di interrogazione, 71
Architettura di interrogazione master, 71
Architettura di interrogazione slave, 71
Avvio della trasmissione dati, 87
B
BCC, 43
Biblioteca globale
Panoramica del protocollo USS, 160
Biblioteca per il protocollo USS
Informazioni generali sulla configurazione di un
azionamento, 178
Panoramica, 160
Presupposti per l'utilizzo, 162
USS_Drive_Control / USS_Drive_Control_31, 168
USS_Port_Scan, 165
USS_Port_Scan_31, 165
USS_Read_Param / USS_Read_Param_31, 173
USS_Write_Param / USS_Write_Param_31, 175
Broadcast, 50
Buffer di ricezione, 40
C
Carattere di controllo blocco, 44
Carattere iniziale, 35
Classi di errore PtP, 73
Commutazioni nei vari stati di funzionamento, 199
Comunicazione
Architettura di interrogazione, 71
Comunicazione bidirezionale, 18
Comunicazione Modbus, 49
Comunicazione PtP
Programmazione, 68
Comunicazione USS, 56
Configurazione dei parametri
LENGH e BUFFER per Send_P2P, 90
Configurazione del telegramma
Istruzioni, 68
Configurazione interfaccia
Istruzioni, 68
Controllo del flusso dati, 14, 23, 26
Hardware, 27
Software, 26
Controllo del flusso dati del software, 26
Controllo del flusso dati dell'hardware, 27
CPU in RUN, 199
CRC, 51
CTS, 22
D
DCD, 22
Diagnostica, 199
Dimensioni del buffer di ricezione, 14
DLE, 43
DSR, 22
DTR, 22
E
Errori dei parametri PtP comuni, 73
ETX, 43
F
Freeport, 61, 61
Buffer di ricezione, 40
Criteri finali, 36
Criteri iniziali, 35
Fine del messaggio, 34
Inizio del messaggio, 34
Trasparenza di codice, 39
Funzionamento duplex, 18
Funzionamento RS232, 22
Funzionamento RS422, 24
Funzionamento RS485, 25
Funzionamento semiduplex, 18
Funzioni di diagnostica, 199
CM PtP - Configurazioni di accoppiamenti punto a punto
208
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Indice analitico
G
Gestione automatica dei segnali addizionali, 29
Get_Features, 17, 61
H
Hardware RTS sempre attivato, 29
Hardware RTS sempre ON, 28
Hardware RTS sempre ON, ignora DTR/DSR, 28
I
Idle Line, 35
Interfacce, 13
Interfacce di comunicazione
Programmazione, 68
Invio di dati, 61
Istruzioni
P3964_Config (configurazione del protocollo), 85
Port_Config (configurazione della porta), 74
Receive_Config (configurazione della ricezione), 79
Receive_P2P (ricezione dei dati punto a punto), 91
Receive_Reset (reset del destinatario), 93
Send_Config (configurazione della
trasmissione), 77
Send_P2P (invio di dati punto a punto), 87
Signal_Get (richiamo dei segnali RS232), 94
Signal_Set (impostazione dei segnali RS232), 96
USS_Drive_Control / USS_Drive_Control_31, 168
USS_Port_Scan, 165
USS_Port_Scan_31, 165
USS_Read_Param / USS_Read_Param_31, 173
USS_Write_Param / USS_Write_Param_31, 175
Istruzioni Modbus, 63
Istruzioni PtP, 61
Istruzioni USS, 66
L
Line Break, 35
Lunghezza fissa del telegramma, 36
Lunghezza nel messaggio, 36
M
Master USS
Panoramica funzioni, 58
Protocollo USS, 56
Protocollo USS: Campo dati,
Protocollo USS: cifratura dei dati,
Protocollo USS: procedura di trasmissione dei dati,
Protocollo USS: struttura del telegramma,
Modbus
Exception Code, 51
Fine del telegramma, 51
Modbus_Comm_Load, 119
Modbus_Slave, 124, 131
Segnali RS232, 29
Modbus_Comm_Load, 17, 63, 119
Modbus_Master, 17, 63
Modbus_Slave, 17, 63, 124, 131
Modulo di comunicazione (CM)
Programmazione, 68
Ricezione dei dati, 91
N
NAK, 43
Numeri di ordinazione, 12
Numero massimo di caratteri, 36
P
P3964_Config, 16
P3964_Config (configurazione del protocollo), 85
Parametro BUFFER, Send_P2P, 90
Parametro LENGTH, Send_P2P, 90
Port_Config, 16, 61
Port_Config (configurazione della porta), 74
Preimpostazione della linea di ricezione, 24
Procedimento di conferma, 26
Procedura 3964(R), 42
Carattere di controllo, 43
Priorità, 43
Procedura 3964R
Carattere di controllo blocco, 44
Programmazione
Istruzioni PtP, 68
Modbus, 63
PtP, 59
USS, 65
Programmazione punto a punto, 68
Protocolli dei moduli di comunicazione, 14
Protocollo ASCII, 33
Protocollo Freeport, 33
Protocollo USS
Struttura generale del blocco dati:area dati di
processo (PZD), 58
Struttura generale del blocco dati:area parametri
(PKW), 58
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
209
Indice analitico
R
U
Receive_Config, 16, 61
Receive_Config (configurazione della ricezione), 79
Receive_P2P, 16, 61
Receive_P2P (ricezione dei dati punto a punto), 91
Receive_Reset, 16, 61
Receive_Reset, 16, 61
Receive_Reset (reset del destinatario), 93
RI, 22
Ricezione di dati, 61
RTS, 22
USS_Drive_Control, 17, 66, 161
USS_Drive_Control / USS_Drive_Control_31, 168
USS_Port_Scan, 17, 66, 161, 165
USS_Port_Scan_31, 165
USS_Read_Param, 17, 66, 161
USS_Read_Param / USS_Read_Param_31, 173
USS_Write_Param, 17, 66, 161
USS_Write_Param / USS_Write_Param_31, 175
S
Valori di ritorno
Istruzioni PtP, 72
Valori di ritorno del runtime in ricezione, 91
Valori di ritorno delle istruzioni PtP, 72
Velocità di trasmissione, 13
Voce principale, 61
Scambio dati uni/bidirezionale, 23
Segnali addizionali, 14
Segnali addizionali dell'RS232
Gestione automatica, 29
Segnali RS232, 22
Send_Config, 16, 61
Send_Config (configurazione della trasmissione), 77
Send_P2P, 16, 61
Send_P2P (invio di dati punto a punto)
Parametri LENGH e BUFFER, 90
Send_P2P (invio di dati punto a punto), 87
Sequenza di fine, 36
Sequenze di inizio, 35
Set_Features, 17, 61
Sicurezza di trasmissione, 19
con 3964(R), 20
con Freeport, 20
Con Modbus e USS, 21
Signal_Get, 16, 61
Signal_Get (richiamo dei segnali RS232), 94
Signal_Set, 16, 61
Signal_Set (impostazione dei segnali RS232), 96
STOP della CPU, 199
Struttura del telegramma, 50
STX, 43
V
X
XON/XOFF, 26
T
Tempo di ritardo del carattere, 36
Tempo di ritardo del carattere ZVZ, 51
Time out dei messaggi, 36
Time out di risposta, 36
Trasmissione di dati asincrona, 18
Trasmissione di dati seriale, 18
Trasparenza di codice, 39
CM PtP - Configurazioni di accoppiamenti punto a punto
210
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
Indice analitico
CM PtP - Configurazioni di accoppiamenti punto a punto
Manuale di guida alle funzioni, 09/2016, A5E37509396-AB
211