Sei sulla pagina 1di 199

Prefazione

Guida alla documentazione 1

2
SIMATIC Introduzione

Principi di base della


comunicazione seriale 3
S7-1500 / ET 200MP / ET 200SP
CM PtP - Configurazioni di Configurazione/parametrizz
4
accoppiamenti punto a punto azione

Programmazione -
Manuale di guida alle funzioni
comunicazione tramite 5
istruzioni

Avviamento e diagnostica 6

05/2021
A5E37509396-AE
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 A5E37509396-AE Copyright © Siemens AG 2021.


Digital Industries Ⓟ 02/2021 Con riserva di modifiche Tutti i diritti riservati
Postfach 48 48
90026 NÜRNBERG
GERMANIA
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 nell'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
Per il riciclaggio e lo smaltimento ecocompatibile dei vecchi dispositivi, rivolgersi ad un ente
certificato per lo smaltimento di dispositivi elettronici usati e smaltire il dispositivo in
conformità delle norme vigenti nel proprio paese.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 3
Prefazione

Ulteriore supporto
La documentazione tecnica dei singoli prodotti e sistemi SIMATIC è disponibile in Internet
(http://www.siemens.com/simatic-tech-doku-portal).

Siemens Industry Online Support


Sui seguenti argomenti possono essere reperite facilmente e rapidamente informazioni
attuali:
• Product Support
Tutte le informazioni e un notevole know-how sul prodotto specifico, dati tecnici, FAQ,
certificati, download e manuali.
• Esempi di applicazione
Applicazioni ed esempi per la soluzione di compiti di automazione - inoltre blocchi
funzionali, informazioni sulla performance e video.
• Servizi
Informazioni sui servizi industriali, assistenza tecnica, pezzi di ricambio e offerte
didattiche.
• Forum
Per risposte e soluzioni sulla tecnica di automazione.
• mySupport
Il campo di lavoro personale nel Siemens Industry Online Support per notifiche, richieste
di supporto e documenti configurabili.
Siemens Industry Online Support vi offre queste informazioni in Internet
(https://support.industry.siemens.com).

Industry Mall
L'Industry Mall è il catalogo prodotti e il sistema di ordinazione della Siemens AG per le
soluzioni di automazione e azionamento sulla base di Totally Integrated Automation (TIA) e
Totally Integrated Power (TIP).
I cataloghi di tutti i prodotti della tecnica di automazione e azionamento si trovano in Internet
(https://mall.industry.siemens.com) nonché alla sezione Information and Download Center
(https://www.siemens.com/automation/infocenter).

CM PtP - Configurazioni di accoppiamenti punto a punto


4 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Prefazione

Indicazioni di sicurezza
Siemens commercializza prodotti e soluzioni dotati di funzioni Industrial Security che
contribuiscono al funzionamento sicuro di impianti, soluzioni, macchine e reti.
La protezione di impianti, sistemi, macchine e reti da minacce cibernetiche, richiede
l'implementazione e la gestione continua di un concetto globale di Industrial Security che
corrisponda allo stato attuale della tecnica. I prodotti e le soluzioni di Siemens costituiscono
un componente di un concetto di questo tipo.
È responsabilità dei clienti evitare accessi non autorizzati ai propri impianti, sistemi, macchine
e reti. Questi sistemi, macchine e componenti possono essere collegate solo alla rete
aziendale o a Internet solo in caso di necessità e solo se sono state adottate misure di
sicurezza corrispondenti (ad es. firewall e/o segmentazione della rete).
Per ulteriori informazioni relative alle misure di protezione possibili nel settore Industrial
Security vedere in (http://www.siemens.com/industrialsecurity).
I prodotti e le soluzioni Siemens vengono costantemente perfezionati per incrementarne la
sicurezza. Siemens raccomanda espressamente di utilizzare gli update del prodotto non
appena disponibili, nonché sempre solo le versioni attuali del prodotto. L’uso di prodotti non
più attuali o di versioni non più supportate incrementa il rischio di attacchi cibernetici.
Per essere costantemente aggiornati sugli update dei prodotti, abbonarsi a Siemens Industrial
Security RSS Feed al sito (http://www.siemens.com/industrialsecurity).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 5
Indice del contenuto

Prefazione .............................................................................................................................................. 3
1 Guida alla documentazione ................................................................................................................... 9
2 Introduzione ........................................................................................................................................ 14
2.1 Panoramica dei moduli di comunicazione ........................................................................... 14
2.2 Panoramica delle fasi di elaborazione ................................................................................. 18
2.3 Panoramica delle istruzioni ................................................................................................ 19
3 Principi di base della comunicazione seriale ....................................................................................... 22
3.1 Trasmissione di dati seriale ................................................................................................ 22
3.2 Sicurezza di trasmissione ................................................................................................... 23
3.3 Funzionamento RS232 ....................................................................................................... 26
3.4 Funzionamento RS422 ....................................................................................................... 29
3.5 Funzionamento RS485 ....................................................................................................... 32
3.6 Handshake ........................................................................................................................ 35
4 Configurazione/parametrizzazione ..................................................................................................... 40
4.1 Configurazione/parametrizzazione di un modulo di comunicazione .................................... 40
4.2 Particolarità dell'utilizzo dell'opzione di ottimizzazione delle prestazioni .............................. 41
4.3 Comunicazione tramite Freeport ........................................................................................ 42
4.3.1 Procedimento per la configurazione di un collegamento seriale con Freeport ...................... 42
4.3.2 Trasmissione dati con Freeport........................................................................................... 44
4.3.3 Invio di dati con Freeport ................................................................................................... 44
4.3.4 Ricezione di dati con Freeport ............................................................................................ 46
4.3.5 Trasparenza di codice ........................................................................................................ 51
4.3.6 Buffer di ricezione .............................................................................................................. 51
4.3.7 Comunicazione tramite DMX512........................................................................................ 52
4.4 Comunicazione tramite 3964(R)......................................................................................... 53
4.4.1 Procedimento per la configurazione di un collegamento seriale con 3964(R) ...................... 53
4.4.2 Trasmissione dati con la procedura 3964(R) ....................................................................... 55
4.4.3 Carattere di controllo ......................................................................................................... 55
4.4.4 Carattere di controllo blocco .............................................................................................. 56
4.4.5 Invio di dati con 3964(R) .................................................................................................... 56
4.4.6 Ricezione di dati con 3964(R) ............................................................................................. 58
4.5 Comunicazione tramite Modbus RTU .................................................................................. 59
4.5.1 Procedimento per la configurazione di un collegamento seriale con Modbus RTU................ 59
4.5.2 Panoramica sulla comunicazione Modbus........................................................................... 61
4.5.3 Codici funzione .................................................................................................................. 65

CM PtP - Configurazioni di accoppiamenti punto a punto


6 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Indice del contenuto

4.6 Comunicazione tramite USS ............................................................................................... 67


4.6.1 Procedimento per la configurazione di un collegamento seriale con USS ............................. 67
4.6.2 Panoramica della comunicazione USS................................................................................. 68
4.6.3 Panoramica funzioni .......................................................................................................... 71
5 Programmazione - comunicazione tramite istruzioni.......................................................................... 72
5.1 Panoramica della programmazione PtP ............................................................................... 72
5.2 Panoramica della programmazione Modbus ....................................................................... 75
5.3 Panoramica della programmazione USS.............................................................................. 77
5.4 Istruzioni ........................................................................................................................... 80
5.4.1 Punto a punto .................................................................................................................... 80
5.4.1.1 Panoramica della comunicazione Freeport.......................................................................... 80
5.4.1.2 Utilizzo delle istruzioni ....................................................................................................... 83
5.4.1.3 Parametri comuni per operazioni Freeport .......................................................................... 85
5.4.1.4 Port_Config: Progetta porta di comunicazione PtP .............................................................. 87
5.4.1.5 Send_Config: Progetta mittente PtP.................................................................................... 91
5.4.1.6 Receive_Config: Progetta destinatario PtP ........................................................................... 93
5.4.1.7 P3964_Config: Progettazione del protocollo 3964(R).......................................................... 99
5.4.1.8 Send_P2P: Invia dati......................................................................................................... 101
5.4.1.9 Utilizzo dei parametri BUFFER e LENGTH nelle operazioni di comunicazione ...................... 104
5.4.1.10 Receive_P2P: Ricevi dati ................................................................................................... 105
5.4.1.11 Receive_Reset: Cancella buffer di ricezione ....................................................................... 108
5.4.1.12 Signal_Get: Leggi stato .................................................................................................... 109
5.4.1.13 Signal_Set: Imposta segnali addizionali ............................................................................ 111
5.4.1.14 Get_Features: Preleva funzioni avanzate .......................................................................... 113
5.4.1.15 Set_Features: Imposta funzioni avanzate .......................................................................... 114
5.4.1.16 Messaggi di errore ........................................................................................................... 116
5.4.2 MODBUS (RTU) ................................................................................................................ 126
5.4.2.1 Dipendenza tra le versioni della biblioteca ........................................................................ 126
5.4.2.2 Panoramica della comunicazione Modbus RTU ................................................................. 126
5.4.2.3 Modbus_Comm_Load: Configura modulo di comunicazione per Modbus .......................... 129
5.4.2.4 Modbus_Master: Comunica come master Modbus ............................................................ 133
5.4.2.5 Modbus_Slave ................................................................................................................. 141
5.4.2.6 Struttura del telegramma ................................................................................................. 151
5.4.2.7 Messaggi di errore ........................................................................................................... 159
5.4.3 USS ................................................................................................................................. 164
5.4.3.1 Dipendenza tra le versioni della biblioteca ........................................................................ 164
5.4.3.2 Panoramica della comunicazione USS............................................................................... 164
5.4.3.3 Presupposti per l'utilizzo del protocollo USS ...................................................................... 166
5.4.3.4 USS_Port_Scan / USS_Port_Scan_31: Elabora comunicazione tramite rete USS .................. 170
5.4.3.5 USS_Drive_Control / USS_Drive_Control_31: preparazione e visualizzazione dei dati per
l'azionamento .................................................................................................................. 174
5.4.3.6 USS_Read_Param / USS_Read_Param_31: Leggi dati dall'azionamento .............................. 179
5.4.3.7 USS_Write_Param / USS_Write_Param_31: Modifica dati nell'azionamento ........................ 181
5.4.3.8 Informazioni generali sulla configurazione di un azionamento .......................................... 184
5.4.3.9 Messaggi di errore ........................................................................................................... 188

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 7
Indice del contenuto

6 Avviamento e diagnostica ................................................................................................................. 190


6.1 Comportamento all'avviamento ....................................................................................... 190
6.2 Funzioni di diagnostica .................................................................................................... 190
6.3 Allarmi di diagnostica ...................................................................................................... 191
Glossario ............................................................................................................................................ 192
Indice analitico .................................................................................................................................. 196

CM PtP - Configurazioni di accoppiamenti punto a punto


8 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Guida alla documentazione 1
La documentazione del sistema di automazione SIMATIC S7-1500, della CPU 1513/
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 1513/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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 9
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/manual-
overview/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)

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).

CM PtP - Configurazioni di accoppiamenti punto a punto


10 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Guida alla documentazione

"mySupport" - Documentazione
"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
(http://support.industry.siemens.com/My/ww/it/documentation).

"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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 11
Guida alla documentazione

SIMATIC Automation Tool


Con SIMATIC Automation Tool è possibile eseguire contemporaneamente interventi di
attivazione e di Service come operazioni di massa su diverse stazioni SIMATIC S7,
indipendentemente da TIA Portal.
SIMATIC Automation Tool offre tutta una serie di 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) a
una CPU
• Trasmissione della data e dell'ora del PG/PC convertita in formato UTC all'unità
• Download del programma sulla CPU
• Commutazione del modo di funzionamento RUN/STOP
• Localizzazione della CPU tramite segnalazione ad intermittenza dei LED
• Lettura delle informazioni 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
SIMATIC Automation Tool è disponibile in Internet
(https://support.industry.siemens.com/cs/ww/it/view/98161300).

PRONETA
Con SIEMENS PRONETA (analisi della rete PROFINET) si analizza 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


12 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Guida alla documentazione

SINETPLAN
SINETPLAN, il Network Planner di Siemens, supporta l'utente nella pianificazione degli
impianti e delle reti di automazione basate su PROFINET. Questo tool facilita il
dimensionamento professionale e predittivo dell'installazione PROFINET già nella fase di
pianificazione. Inoltre SINETPLAN fornisce all'utente strumenti utili per ottimizzare la rete,
sfruttare al meglio le risorse di rete e pianificare le riserve. In questo modo, già prima
dell'impiego pianificato si evitano problemi durante la messa in servizio e interruzioni nella
fase produttiva. Questo aumenta la disponibilità dell'impianto produttivo e contribuisce a
migliorare la sicurezza operativa.
I vantaggi in sintesi
• ottimizzazione della rete grazie al calcolo del carico di rete per le singole porte
• maggiore disponibilità della produzione grazie alla scansione online e alla verifica degli
impianti esistenti
• trasparenza prima della messa in servizio mediante importazione e simulazione di progetti
STEP 7 esistenti
• efficienza grazie alla protezione degli investimenti nel lungo periodo e allo sfruttamento
ottimale delle risorse
SINETPLAN è disponibile in Internet (https://www.siemens.com/sinetplan).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 13
Introduzione 2
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 23)) è 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 la
funzione di queste istruzioni deve essere programmata dall'utente
(https://support.industry.siemens.com/cs/ww/it/view/59062563).
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 S7-1500 ET 200MP ET 200SP Numero articolo


CM PtP RS232 BA 1) X X - 6ES7540-1AD00-0AA0
CM PtP RS422/485 BA X X - 6ES7540-1AB00-0AA0
CM PtP RS232 HF 2) X X - 6ES7541-1AD00-0AB0
CM PtP RS422/485 HF X X - 6ES7541-1AB00-0AB0
CM PtP (ET 200SP) - - X 6ES7137-6AA01-0BA0
1) BA = Basic
2) HF = High Feature

CM PtP - Configurazioni di accoppiamenti punto a punto


14 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Introduzione
2.1 Panoramica dei moduli di comunicazione

Nota
CM PtP (ET 200SP) con IM 155-6 MF HF
Con il modulo di interfaccia IM 155-6 MF HF (6ES7155-6MU00-0CN0) si possono utilizzare
diversi protocolli per bus di campo ad eccezione di Profibus/Profinet. In questo caso la
biblioteca di istruzioni PtP Communication non è utilizzabile. Considerare in proposito le
informazioni riportate nel manuale di programmazione CM PtP nel funzionamento con
PROFINET Controller (https://support.industry.siemens.com/cs/ww/it/view/59062563). Vedere
inoltre il manuale del prodotto relativo al modulo di interfaccia scaricabile in questa pagina
Internet (https://support.industry.siemens.com/cs/ww/it/view/109773210).

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 con-


nessione
Freeport 3964(R) Modbus Modbus USS-Master Sub D Sub D
Master Slave a 9 poli 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
CM PtP (ET 200SP) RS232 X X X X X ET 200SP BaseUnit
1)
RS422 2) X X X X X
RS485 X - X X X
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:

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 15
Introduzione
2.1 Panoramica dei moduli di comunicazione

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 Velocità di trasmissione in bit/s


comunicazione
300 600 1200 2400 4800 9600 19200 38400 57600 76800 115200 2500001)
CM PtP RS232 BA X X X X X X X - - - - -
CM PtP RS422/485 BA X X X X X X X - - - - -
CM PtP RS232 HF X X X X X X X X X X X -
CM PtP RS422/485 HF X X X X X X X X X X X -
CM PtP (ET 200SP) X X X X X X X X X X X X
1) Soprattutto per l'utilizzo del protocollo DMX512 con RS 485

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 Lunghezza max. del Telegrammi


di ricezione telegramma bufferizzabili
kByte kByte
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 è attivo il controllo
del flusso dei dati dell'hardware.)

CM PtP - Configurazioni di accoppiamenti punto a punto


16 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Introduzione
2.1 Panoramica dei moduli di comunicazione

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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 17
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 80). 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 19) e la Guida in
linea di STEP 7 (TIA Portal).

CM PtP - Configurazioni di accoppiamenti punto a punto


18 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Introduzione
2.3 Panoramica delle istruzioni

2.3 Panoramica delle istruzioni

Comunicazione di dati
Nel caso dei moduli di comunicazione, lo scambio dei dati tra la CPU e il modulo può avvenire
in due modi:
• Scambio dati aciclico (Universal)
Le istruzioni punto a punto comunicano in modo asincrono con il modulo di
comunicazione leggendo e scrivendo i set di dati.
La trasmissione dei dati impiega diversi cicli.

Nota
Limiti di configurazione della CPU
Quando si utilizzano le istruzioni con la comunicazione asincrona è necessario considerare
le limitazioni di configurazione della CPU per la lettura e la scrittura dei set di dati. Se
diverse istruzioni devono leggere o scrivere contemporaneamente dei set di dati in una
CPU, il programma utente le deve richiamare in momenti diversi.

• Comunicazione ciclica dei dati (prestazioni ottimizzate per molti telegrammi brevi)
(Pagina 41))
Le istruzioni punto a punto comunicano con il modulo di comunicazione in modo sincrono
rispetto al ciclo dell'applicazione tramite i dati IO del modulo di comunicazione.
I dati di ingresso includono 32 byte, 24 dei quali sono disponibili per il telegramma. I dati
di uscita includono 32 byte, 30 dei quali sono disponibili per il telegramma. Con l'impiego
dei dati ciclici si ottimizza il tempo di reazione, in particolare se si utilizzano più CM PtP
parallelamente.

Nota
Lo scambio dati ciclico è disponibile con la biblioteca delle istruzioni PtP-Communication
dalla versione V4.0.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 19
Introduzione
2.3 Panoramica delle istruzioni

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. Dalla versione V4.0, le
istruzioni della biblioteca PtP-Communication riconoscono autonomamente se l'opzione di
ottimizzazione delle prestazioni è attiva e adattano il metodo alla comunicazione.
Le istruzioni sono incluse in 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 101) Invio di dati a un partner di comunicazione.
Receive_P2P Ricezione dei dati da un partner di comunicazione.
(Pagina 105)
Receive_Reset Cancellazione del buffer di ricezione del modulo di comunicazione.
(Pagina 108)
Port_Config Parametrizzazione dei principali parametri di interfaccia.
(Pagina 87)
Send_Config Parametrizzazione della trasmissione; parametrizzazione dinamica dei para-
(Pagina 91) metri di trasmissione seriali di una porta.
Receive_Config Parametrizzazione della ricezione; parametrizzazione dinamica dei parametri
(Pagina 93) di ricezione seriali di una porta.
P3964_Config Registrazione del protocollo; progettazione dinamica dei parametri della
(Pagina 99) procedura 3964(R).
Signal_Get Lettura dei segnali addizionali dell'RS232.
(Pagina 109)
Signal_Set Impostazione dei segnali addizionali dell'RS232.
(Pagina 111)
Get_Features Lettura di funzioni avanzate supportate dal modulo di comunicazione.
(Pagina 113)
Set_Features Attivazione di funzioni avanzate supportate dal modulo di comunicazione.
(Pagina 114)

CM PtP - Configurazioni di accoppiamenti punto a punto


20 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Introduzione
2.3 Panoramica delle istruzioni

Tabella 2- 2 Istruzioni per Modbus

Istruzione Significato
Modbus_Master Comunicazione come master Modbus attraverso la porta PtP.
(Pagina 133)
Modbus_Slave Comunicazione come slave Modbus attraverso la porta PtP.
(Pagina 141)
Modbus_Comm_Load Configurazione della porta del modulo di comunicazione per Modbus RTU.
(Pagina 129)

Tabella 2- 3 Istruzioni per USS

Istruzione Significato
USS_Port_Scan Comunicazione tramite rete USS.
(Pagina 170)
USS_Drive_Control Scambio di dati con l'azionamento.
(Pagina 174)
USS_Read_Param Lettura dei parametri dall'azionamento.
(Pagina 179)
USS_Write_Param Modifica dei parametri nell'azionamento.
(Pagina 181)

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 21
Principi di base della comunicazione seriale 3
3.1 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 dati
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


22 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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, 05/2021, A5E37509396-AE 23
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


24 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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ò più essere rilevato con sicurezza.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 25
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 la fisica RS232, sul modulo di comunicazione saranno presenti, oltre ai segnali
TXD, RXD e GND, anche altri segnali dell'RS232:

TXD Uscita Dati di trasmissione (Transmitted Data);


Trasmissione in corso nell'interfaccia
RXD Ingresso Dati di ricezione (Received Data);
Ricezione in corso nell'interfaccia
GND Terra funzionale (Ground);
a potenziale libero
DCD Ingresso Livello del segnale di ricezione (Data Carrier Detect);
Segnale portante in caso di collegamento di un modem. Il partner della comu-
nicazione segnala di aver rilevato dati in ingresso.
DTR Uscita Terminale pronto (Data terminal ready);
DTR su "ON": modulo di comunicazione attivato, operativo
DTR su "OFF": modulo di comunicazione non attivato, non operativo
DSR Ingresso Pronto al funzionamento (Data Set Ready);
DSR su "ON": il partner di comunicazione segnala di essere pronto al funzio-
namento
DSR su "OFF": partner di comunicazione non attivato, non operativo
RTS Uscita Attivazione trasmettitore (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 Pronto alla trasmissione (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 ricezio-
ne"
RI Ingresso Chiamata in entrata in caso di collegamento di un modem (Ring Indicator)

CM PtP - Configurazioni di accoppiamenti punto a punto


26 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 35).

Cavi con connettore


Per il collegamento a un partner di comunicazione che a sua volta è dotato di spinotto Sub-D
a 9 poli sono disponibili i seguenti cavi standard con connettore in diverse lunghezze:

Numero di articolo 6ES7902-1AB00-0AA0 6ES7902-1AC00-0AA0 6ES7902-1AD00-0AA0


Denominazione Cavo con connettore S7 RS232
tipo di prodotto
Lunghezza cavo 5m 10 m 15 m

Nella tabella seguente è riportata la piedinatura del connettore maschio sub D a 9 poli del
rispettivo modulo di comunicazione.

Connettore maschio* Pin Denominazio- Ingresso/ Necessario/Opzionale in


ne uscita caso di preparazione auto-
noma
1 DCD Ingresso Opzionale
2 RXD Ingresso Necessario
3 TXD Uscita Necessario
4 DTR Uscita Opzionale
5 GND — Necessario
6 DSR Ingresso Opzionale
7 RTS Uscita Opzionale
8 CTS Ingresso Opzionale
9 RI Ingresso Opzionale

* Vista anteriore

Il cavo o il connettore dei cavi con connettore indicati non sono disponibili come articolo
singolo. Se i cavi con connettore vengono preparati autonomamente, occorre fare in modo
che nel partner di comunicazione gli ingressi non collegati vengano messi possibilmente a
potenziale di riposo.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 27
Principi di base della comunicazione seriale
3.3 Funzionamento RS232

Tenere presente che è ammesso esclusivamente l'uso di custodie schermate. Lo schermo del
cavo deve essere collegato con la custodia del connettore da entrambe le estremità e su
ampia superficie.

CAUTELA
Non collegare mai lo schermo del cavo con GND
Non collegare mai tra loro lo schermo del cavo e GND perché si potrebbero danneggiare le
interfacce irrimediabilmente. GND deve essere in ogni caso collegato su entrambi i lati (pin
5), altrimenti si potrebbe arrecare un danno irreparabile ai moduli dell'interfaccia.

Nella seguente figura è rappresentato il cavo con connettore per l'accoppiamento punto a
punto tra un modulo di comunicazione e un partner di comunicazione.

CM PtP - Configurazioni di accoppiamenti punto a punto


28 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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
(full-duplex).
Ogni partner di comunicazione deve essere in grado di utilizzare un dispositivo di
trasmissione/ricezione simultaneamente.
I dati possono essere scambiati contemporaneamente tra due 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


Full-duplex (RS422) funzionamen- In questo modo di funzionamento i due nodi hanno gli stessi
to a quattro fili (punto a punto) diritti.
Full-duplex (RS422) funzionamen- Il modulo di comunicazione può essere utilizzato come master
to a quattro fili (master multipoint) multipoint.
Full-duplex (RS422) funzionamen- Il modulo di comunicazione può essere utilizzato come slave
to a quattro fili (slave multipoint) 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 29
Principi di base della comunicazione seriale
3.4 Funzionamento RS422

Segnali RS422
Se si utilizza l’RS422 fisica, sul modulo di comunicazione sono presenti i seguenti segnali:

T (A) - Uscita Dati di trasmissione (Transmitted Data)


T (B) + Uscita Dati di trasmissione (Transmitted Data)
R (A) - Ingresso Dati di ricezione (Received Data)
R (B) + Ingresso Dati di ricezione (Received Data)
GND Terra funzionale (Ground); a potenziale libero

Cavi con connettore


Per il collegamento a un partner di comunicazione che a sua volta è dotato di presa Sub-D a
15 poli sono disponibili i seguenti cavi standard con connettore in diverse lunghezze:

Numero di articolo 6ES7902-3AB00-0AA0 6ES7902-3AC00-0AA0 6ES7902-3AG00-0AA0


Denominazione Cavo con connettore S7 RS422
tipo di prodotto
Lunghezza cavo 5m 10 m 50 m

La tabella seguente mostra l'assegnazione dei pin del connettore femmina sub D a 15 poli del
rispettivo modulo di comunicazione.

Connettore femmina* Pin Denominazione Ingresso/uscita


1 - -
2 T (A) - Uscita
3 - -
4 R (A) - Ingresso
5 - -
6 - -
7 - -
8 GND -
9 T (B) + Uscita
10 - -
11 R (B) + Ingresso
12 - -
13 - -
14 - -
15 - -

* Vista anteriore

Il cavo o il connettore dei cavi con connettore indicati non sono disponibili come articolo
singolo. Se i cavi con connettore vengono preparati autonomamente, occorre fare in modo
che nel partner di comunicazione gli ingressi non collegati vengano messi possibilmente a
potenziale di riposo.

CM PtP - Configurazioni di accoppiamenti punto a punto


30 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Principi di base della comunicazione seriale
3.4 Funzionamento RS422

Tenere presente che è ammesso esclusivamente l'uso di custodie schermate. Lo schermo del
cavo deve essere collegato con la custodia del connettore da entrambe le estremità e su
ampia superficie.

CAUTELA
Non collegare mai lo schermo del cavo con GND
Non collegare mai tra loro lo schermo del cavo e GND perché si potrebbero danneggiare le
interfacce irrimediabilmente. GND deve essere in ogni caso collegato su entrambi i lati (pin
8), altrimenti si potrebbero danneggiare in modo irreparabile i moduli dell'interfaccia.

Nella seguente figura è rappresentato il cavo con connettore per l'accoppiamento punto a
punto tra un modulo di comunicazione e un partner di comunicazione.

Nota
Per il tipo di cavo usato sono possibili per un modulo di comunicazione come partner di
comunicazione le seguenti lunghezze: max. 1200 m a 19200 baud, max. 500 m a 38400
baud, max. 350 m a 76800 baud, max. 250 m a 115200 baud.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 31
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). Non appena perviene un nuovo ordine di trasmissione si
commuta di nuovo alla trasmissione.

Modi di funzionamento dell'interfaccia


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) funzio- Modo di funzionamento per accoppiamento punto a punto oppure
namento a 2 fili 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.

Segnali RS485
Se si utilizza l’RS485 fisica, sul modulo di comunicazione sono presenti i seguenti segnali:

R (A)/T (A) - Ingresso/uscita Dati di ricezione/trasmissione (Received/Transmitted Data)


R (B)/T (B) + Ingresso/uscita Dati di ricezione/trasmissione (Received/Transmitted Data)
GND Terra funzionale (Ground); a potenziale libero

CM PtP - Configurazioni di accoppiamenti punto a punto


32 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Principi di base della comunicazione seriale
3.5 Funzionamento RS485

Cavi con connettore


La tabella seguente mostra l'assegnazione dei pin del connettore femmina sub D a 15 poli del
rispettivo modulo di comunicazione.

Connettore femmina* Pin Denominazione Ingresso/uscita


1 - -
2 - -
3 - -
4 R (A)/T (A) - Ingresso/uscita
5 - -
6 - -
7 - -
8 GND -
9 - -
10 - -
11 R (B)/T (B) + Ingresso/uscita
12 - -
13 - -
14 - -
15 - -

* Vista anteriore

Quando si confezionano i cavi con connettore si devono mettere possibilmente a potenziale


di riposo gli ingressi non collegati dal lato del partner di comunicazione.
Tenere presente che è ammesso esclusivamente l'uso di custodie schermate. Lo schermo del
cavo deve essere collegato con la custodia del connettore da entrambe le estremità e su
ampia superficie.

CAUTELA
Non collegare mai lo schermo del cavo con GND
Non collegare mai tra loro lo schermo del cavo e GND perché si potrebbero danneggiare le
interfacce irrimediabilmente. GND deve essere in ogni caso collegato su entrambi i lati (pin
8), altrimenti si potrebbero danneggiare in modo irreparabile i moduli dell'interfaccia.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 33
Principi di base della comunicazione seriale
3.5 Funzionamento RS485

Nella seguente figura è rappresentato il cavo con connettore per l'accoppiamento punto a
punto tra un modulo di comunicazione e un partner di comunicazione.

Nota
Se il partner di comunicazione è costituito da un CM, il tipo di cavo impiegato può avere le
seguenti lunghezze: max. 1200 m a 19200 baud, max. 500 m a 38400 baud, max. 350 m a
76800 baud, max. 250 m a 115200 baud, max. 200 m a 250000 baud.

CM PtP - Configurazioni di accoppiamenti punto a punto


34 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 35
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


36 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 37
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


38 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 39
Configurazione/parametrizzazione 4
4.1 Configurazione/parametrizzazione di un modulo di
comunicazione
I prossimi capitoli illustrano i seguenti protocolli e parametri:
• Comunicazione tramite Freeport (Pagina 42)
• Comunicazione tramite 3964(R) (Pagina 53)
• Comunicazione tramite Modbus RTU (Pagina 59)
• Comunicazione tramite USS (Pagina 67)
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 una CPU e un 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


40 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.2 Particolarità dell'utilizzo dell'opzione di ottimizzazione delle prestazioni

4.2 Particolarità dell'utilizzo dell'opzione di ottimizzazione delle


prestazioni
A partire dalla versione V2.0 del firmware dei moduli di comunicazione è disponibile
un'opzione di ottimizzazione delle prestazioni. L'opzione è utile se si trasmettono e si
ricevono solamente telegrammi brevi.
La seguente tabella descrive le differenze più importanti tra i casi in cui viene impiegata
l'opzione di ottimizzazione e quelli in cui non viene impiegata:

Senza ottimizzazione delle prestazioni (Univer- Con ottimizzazione delle prestazioni


sal)
Limitazione della lunghezza dei telegrammi a 1, 2 Limitazione della lunghezza a 24 byte per i tele-
o 4 kByte in funzione del modulo di comunicazio- grammi di ricezione e a 30 byte per quelli di tra-
ne smissione. I telegrammi con una lunghezza
maggiore vengono respinti.
La trasmissione di un telegramma richiede più La trasmissione di un telegramma richiede un
cicli della CPU. Il numero aumenta con l'aumenta- ciclo dell'applicazione della CPU e si possono uti-
re del numero dei moduli di comunicazione che lizzare parallelamente più moduli di comunicazio-
comunicano tramite set di dati. ne (il tempo di reazione viene ottimizzato, il
comportamento di timing migliora).
Assegnazione di un'area di indirizzi di 8 byte di Assegnazione di un'area di indirizzi di 32 byte di
dati di ingresso e 0 byte di dati di uscita dati di ingresso e 32 byte di dati di uscita
Disponibile dalla versione firmware V1.0 dei mo- Disponibile dalla versione firmware V2.0 dei mo-
duli di comunicazione duli di comunicazione
La configurazione e la parametrizzazione vengono effettuate nella vista dispositivi di STEP 7
(TIA Portal) e nella finestra delle proprietà del modulo di comunicazione. L'opzione di ottimizzazione
delle prestazioni non può essere modificata con le istruzioni "Config" (Port_Config,
Send_Config,Receive_Config, P3964_Config).
Disponibile dalla versione V1.0 delle biblioteche di Disponibile dalla versione V4.0 della biblioteca di
istruzioni PtP Communication, USS Communica- istruzioni PtP Communication e dalla V5.0 delle
tion e MODBUS (RTU) biblioteche di istruzioni USS Communication e
MODBUS (RTU)

Nota
Modbus RTU
Nel caso della comunicazione Modbus RTU, l'ottimizzazione delle prestazioni pone limitazioni
alla configurazione dei dati trasmessi (Pagina 65).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 41
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

4.3 Comunicazione tramite Freeport

4.3.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


42 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.3 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 43
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

4.3.2 Trasmissione dati con Freeport

Introduzione
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).

4.3.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_Config. 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).

CM PtP - Configurazioni di accoppiamenti punto a punto


44 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

• 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 45
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

4.3.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


46 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

Esempio:

Tabella 4- 1 Condizione iniziale parametrizzata

Condizione ini- 1° carattere 2° carattere 3° carattere 4° carattere 5° carattere


ziale
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

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 47
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

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.

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.

Nota
In presenza di elevate velocità di trasmissione dati si raccomanda un valore di almeno 100 bit
time.

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.

CM PtP - Configurazioni di accoppiamenti punto a punto


48 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

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.

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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 49
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

Esempio:
Parametrizzazioni per "Lunghezza nel messaggio"

Offset del campo di lunghezza nel messag- 3º byte (come offset si deve parametrizzare "2")
gio:
Dimensioni del campo di lunghezza: 1 byte
Numero dei caratteri che non rientrano 3 byte
nella lunghezza indicata:

Messaggio Numero dei caratteri che non rien-


trano nella lunghezza indicata
Carattere Indirizzo Campo di Somma di Carattere finale
iniziale lunghezza controllo
Byte 1 Byte 2 Byte 3 Byte ... Byte X Byte X+1 Byte X+2 Byte X+3

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.

CM PtP - Configurazioni di accoppiamenti punto a punto


50 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

4.3.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

4.3.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 14)). 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 51
Configurazione/parametrizzazione
4.3 Comunicazione tramite Freeport

4.3.7 Comunicazione tramite DMX512


Il modulo di comunicazione ET 200SP CM PtP (dalle versione firmware V1.0.5) può essere
utilizzato per la comunicazione tramite DMX512 (Digital Multiplex). Questo tipo di
comunicazione consente di utilizzare l'opzione di ottimizzazione delle prestazioni, sempre che
si imposti come indirizzo massimo il valore 29D.
Ulteriori informazioni su come creare un collegamento DMX512 sono disponibili nelle FAQ
con l'ID contributo 109778975
(https://support.industry.siemens.com/cs/ww/it/view/109778975) nel sito Siemens Industry
Online Support.

CM PtP - Configurazioni di accoppiamenti punto a punto


52 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.4 Comunicazione tramite 3964(R)

4.4 Comunicazione tramite 3964(R)

4.4.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, 05/2021, A5E37509396-AE 53
Configurazione/parametrizzazione
4.4 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


54 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.4 Comunicazione tramite 3964(R)

4.4.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).

4.4.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 15H
ment
BCC BCC Block Check Charac- Carattere di controllo blocco
ter (solo con 3964R)
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, 05/2021, A5E37509396-AE 55
Configurazione/parametrizzazione
4.4 Comunicazione tramite 3964(R)

4.4.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.4.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


56 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.4 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 57
Configurazione/parametrizzazione
4.4 Comunicazione tramite 3964(R)

4.4.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.
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


58 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.5 Comunicazione tramite Modbus RTU

4.5 Comunicazione tramite Modbus RTU

4.5.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 Freeport/Modbus.
Avvertenza: nel Modbus RTU la maggior parte dei parametri di comunicazione vengono
impostati all'avvio della CPU con l'istruzione Modbus_Comm_Load.
3. In funzione della lunghezza dei telegrammi, scegliere se attivare o meno il parametro
"Prestazioni ottimizzate per molti telegrammi brevi".

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, 05/2021, A5E37509396-AE 59
Configurazione/parametrizzazione
4.5 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


60 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.5 Comunicazione tramite Modbus RTU

4.5.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 65)).
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, 05/2021, A5E37509396-AE 61
Configurazione/parametrizzazione
4.5 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 65)
DATA Dati telegramma: dati di gestione e dati netti che dipendono dal codi-
ce 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 65)".

CM PtP - Configurazioni di accoppiamenti punto a punto


62 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.5 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, 05/2021, A5E37509396-AE 63
Configurazione/parametrizzazione
4.5 Comunicazione tramite Modbus RTU

I seguenti codici di errore sono definiti secondo la specifica Modbus:

Codice di Significato secondo la specifica Modbus Causa - Descrizione sintetica *


errore
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 26).
Per informazioni sul controllo del flusso dati hardware e l'utilizzo automatico dei segnali
addizionali consultare il capitolo Handshake (Pagina 35).

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 29) e Funzionamento RS485 (Pagina 32).

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


64 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.5 Comunicazione tramite Modbus RTU

4.5.3 Codici funzione

Codici funzione utilizzati ottimizzazione delle prestazioni


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 fun- Funzione secondo specifica MODBUS Campo


zione
01 Read Coil Status 1 ... 2000 bit/richiesta
02 Read Input Status 1 ... 2000 bit/richiesta
03 Read Holding Registers 1 ... 124/125 parola/richiesta
(124 in caso di indirizzo di sta-
zione esteso)
04 Read Input Registers 1 ... 124/125 parola/richiesta
(124 in caso di indirizzo di sta-
zione 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 ma- —
ster)
15 Force Multiple Coils 1 ... 1968 bit/richiesta
16 Preset Multiple Registers 1 ... 123 parola/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, 05/2021, A5E37509396-AE 65
Configurazione/parametrizzazione
4.5 Comunicazione tramite Modbus RTU

Codici funzione utilizzati con ottimizzazione delle prestazioni


Se l'opzione di ottimizzazione delle prestazioni (Pagina 41) è attiva, la configurazione dei dati
trasmessi è soggetta alle seguenti limitazioni:

Codice Funzione secondo specifi- CM PtP è il master Modbus CM PtP è lo slave Modbus
funzione ca MODBUS
01 Read Coil Status 1 ... 168/160 bit/richiesta (160 in 1 ... 216/208 bit/richiesta (208 in caso
caso di indirizzo di stazione esteso) di indirizzo di stazione esteso)
02 Read Input Status 1 ... 168/160 bit/richiesta (160 in 1 ... 216/208 bit/richiesta (208 in caso
caso di indirizzo di stazione esteso) di indirizzo di stazione esteso)
03 Read Holding Registers 1 ... 10 parola/richiesta 1 ... 13 parola/richiesta
04 Read Input Registers 1 ... 10 parola/richiesta 1 ... 13 parola/richiesta
05 Force Single Coil 1 bit/richiesta 1 bit/richiesta
06 Preset Single Register 1 parola/richiesta 1 parola/richiesta
15 Force Multiple Coils 1 ... 184/176 bit/richiesta (176 in 1 ... 136/128 bit/richiesta (128 in caso
caso di indirizzo di stazione esteso) di indirizzo di stazione esteso)
16 Preset Multiple Registers 1 ... 11 parola/richiesta 1 ... 8 parola/richiesta

Il codice funzione Modbus 00 invia un messaggio Broadcast a tutti gli slave (senza risposta
dello slave).

Assegnazione degli indirizzi Modbus agli indirizzi SIMATIC


La seguente tabella elenca gli indirizzi Modbus assegnati agli indirizzi SIMATIC.

Modbus S7-1500
FC 1) Funzione Dichiarazione Area di indirizzi Dichiarazione Indirizzo CPU
01 Leggi bit Output 1 - 9999 Immagine di processo delle A0.0 - A1249.6
uscite
02 Leggi bit Input 10001 - 19999 Immagine di processo degli I0.0 - E1249.6
ingressi
03 2) Leggi parole Holding Register 40001 - 49999 DW0 - DW19998 L'area di indirizzi M
oppure o dipende dalla CPU
400001 - 465535 DW0 - DW131068
04 Leggi parole Input 30001 - 39999 Immagine di processo degli IW0 - IW19996
ingressi
05 2) Scrivi bit Output 1 - 9999 Immagine di processo delle Q0.0 - Q1248.7
uscite
06 Scrivi parole Holding Register 40001 - 49999 DW0 - DW19998 L'area di indirizzi M
oppure o dipende dalla CPU
400001 - 465535 DW0 - DW131068
15 Scrivi bit Output 1 - 9999 Immagine di processo delle A0.0 - A1249.6
uscite
16 2) Scrivi parole Holding Register 40001 - 49999 DW0 - DW19998 L'area di indirizzi M
oppure o dipende dalla CPU
400001 - 465535 DW0 - DW131068

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


66 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.6 Comunicazione tramite USS

4.6 Comunicazione tramite USS

4.6.1 Procedimento per la configurazione di un collegamento seriale con 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.
3. In funzione della lunghezza dei telegrammi, scegliere se attivare o meno il parametro
"Prestazioni ottimizzate per molti telegrammi brevi".

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, 05/2021, A5E37509396-AE 67
Configurazione/parametrizzazione
4.6 Comunicazione tramite USS

4.6.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


68 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.6 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, 05/2021, A5E37509396-AE 69
Configurazione/parametrizzazione
4.6 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


70 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Configurazione/parametrizzazione
4.6 Comunicazione tramite USS

4.6.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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 71
Programmazione - comunicazione tramite
istruzioni 5
5.1 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 40) 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


72 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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.

Istruzioni PtP

Applicazione Istruzione Descrizione


Scambio dati tra CPU, Send_P2P L'istruzione Send_P2P (ricezione dei dati punto a punto) consente di trasmet-
modulo di comunica- (Pagina 101) tere i dati al partner della comunicazione.
zione e partner di co- Per la trasmissione dei dati con il protocollo Freeport si deve richiamare l'istru-
municazione zione Send_P2P. Il richiamo deve essere ripetuto ciclicamente finché non si
(comunicazione) 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 parametriz-
zati. L'impostazione di default è DC1 = 11H per XON e DC3 = 13H per XOFF.
Receive_P2P L'istruzione Receive_P2P (ricezione dei dati punto a punto) consente di recu-
(Pagina 105) perare i messaggi ricevuti da un partner nel modulo di comunicazione.
Per la ricezione dei dati con il protocollo Freeport si deve richiamare ciclica-
mente 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 con-
trassegnano l'inizio e la fine di un messaggio.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 73
Programmazione - comunicazione tramite istruzioni
5.1 Panoramica della programmazione PtP

Applicazione Istruzione Descrizione


Eliminazione del buffer Receive_Reset L'istruzione Receive_Reset (cancella buffer di ricezione) consente di cancellare
di ricezione (Pagina 108) il buffer di ricezione del modulo di comunicazione.
Parametrizzazione di- Port_Config L'istruzione Port_Config (configurazione porta) consente di definire attraverso
namica dell'interfaccia o (Pagina 87) il programma utente i parametri dinamici basilari dell'interfaccia, quali la velo-
del protocollo (opziona- cità di trasmissione, la parità e il controllo del flusso dei dati.
le) Send_Config L'istruzione Send_Config (parametrizzazione della trasmissione) consente di
(Pagina 91) definire dei parametri di trasmissione seriali dinamici per un'interfaccia di
comunicazione PtP, quali Ritardo RTS ON/Ritardo RTS OFF.
Receive_Config L'istruzione Receive_Config (parametrizzazione della ricezione) consente di
(Pagina 93) definire dei parametri di ricezione seriali dinamici per un moduli di comunica-
zione.
Questa istruzione parametrizza le condizioni che indicano l'inizio e la fine dei
messaggi ricevuti.
P3964_Config L'istruzione P3964_Config (configurazione del protocollo) consente di para-
(Pagina 99) metrizzare con il programma utente i parametri del protocollo della procedura
3964(R), quali il tempo di ritardo intercarattere, la priorità e la verifica blocco.
Gestione dei segnali Signal_Get L'istruzione Signal_Get (richiamo dei segnali RS232) consente di leggere gli
addizionali RS232 (Pagina 109) stati attuali dei segnali RS232.
Signal_Set L'istruzione Signal_Set (richiamo dei segnali RS232) consente di impostare gli
(Pagina 111) stati dei segnali RS232 DTR e RTS.
Attiva allarme di dia- Get_Features L'istruzione Get_Features(impostazione di funzioni ampliate) consente di
gnostica e supporto CRC (Pagina 113) richiamare informazioni mediante il supporto Modbus e informazioni per la
Modbus generazione di messaggi di diagnostica.
Set_Features Con l'istruzione Set_Features (impostazione di funzioni ampliate) è possibile
(Pagina 114) attivare la generazione di messaggi di diagnostica, se supportata dal modulo.

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


74 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Modbus_Master L'istruzione Modbus_Master consente di comunicare attraverso la porta PtP in
programma utente (Pagina 133) qualità di master Modbus.
e dispositivo Mod- L'istruzione Modbus_Master consente di utilizzare la CPU come dispositivo
bus (comunicazio- master Modbus RTU per la comunicazione con uno o più dispositivi slave Mod-
ne) bus.
Modbus_Slave L'istruzione Modbus_Slave consente di comunicare attraverso la porta PtP in
(Pagina 141) 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.
Parametrizzazione Modbus_Comm L'istruzione Modbus_Comm_Load consente di configurare la porta del modulo
dell'interfaccia e del _Load (Pagina 129) di comunicazione per Modbus RTU.
protocollo (obbliga- È necessario eseguire Modbus_Comm_Load per configurare i parametri PtP
toria) 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 .

Nota
Utilizzo alternativo di Modbus_Slave e Modbus_Master
Un modulo di comunicazione può essere utilizzato come master o come slave.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 75
Programmazione - comunicazione tramite istruzioni
5.2 Panoramica della programmazione Modbus

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


76 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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, 05/2021, A5E37509396-AE 77
Programmazione - comunicazione tramite istruzioni
5.3 Panoramica della programmazione USS

Istruzioni USS

Applicazione Istruzione Descrizione


Scambio dati tra CPU, USS_Port_Scan (Pa- L'istruzione USS_Port_Scanconsente di comunicare con max. 16 drive
modulo di comunica- gina 170) tramite un modulo di comunicazione e una rete USS (deve essere richia-
zione e azionamento mata ciclicamente).
USS 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 inter-
na parametrizzabile che controlla l'integrità della comunicazione median-
te un timeout, l'istruzione USS_Port_Scandeve essere richiamata da un OB
comandato a tempo.
Scambio dati con l'azio- USS_Drive_Control L'istruzione USS_Drive_Controlconsente di preparare i dati di trasmissione
namento USS (Pagina 174) per un azionamento e di visualizzare i dati di ricezione.
Gli ingressi e le uscite dell'istruzione corrispondono agli stati e alle funzio-
ni 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 USS_Read_Param L'istruzione USS_Read_Param consente di leggere parametri dall'aziona-
parametri nell'aziona- (Pagina 179) mento.
mento USS Con l'istruzione USS_Read_Paramsi leggono i parametri di esercizio dell'a-
zionamento che comandano le funzioni interne dell'azionamento.
L'istruzione USS_Read_Param deve essere richiamata dal Main (OB1) cicli-
co del programma principale.
USS_Write_Param L'istruzione USS_Write_Param consente di modificare parametri nell'azio-
(Pagina 181) namento.
L'istruzione deve essere richiamata dal USS_Write_Param ciclico (OB1) del
programma principale.

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.

CM PtP - Configurazioni di accoppiamenti punto a punto


78 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.3 Panoramica della programmazione USS

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, 05/2021, A5E37509396-AE 79
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

Comunicazione di dati
Nel caso dei moduli di comunicazione, lo scambio dei dati tra la CPU e il modulo può avvenire
in due modi:
• Scambio aciclico dei dati (Universal)
Le istruzioni Freeport comunicano in modo asincrono con il modulo di comunicazione
leggendo e scrivendo i set di dati.
La trasmissione dei dati impiega diversi cicli.

Nota
Limiti di configurazione della CPU
Quando si utilizzano le istruzioni con la comunicazione asincrona è necessario considerare
le limitazioni di configurazione della CPU per la lettura e la scrittura dei set di dati. Se
diverse istruzioni devono leggere o scrivere contemporaneamente dei set di dati in una
CPU, il programma utente le deve richiamare in momenti diversi.

• Comunicazione ciclica dei dati (prestazioni ottimizzate per molti telegrammi brevi)
(Pagina 41))
Le istruzioni Freeport comunicano con il modulo di comunicazione in modo sincrono
rispetto al ciclo dell'applicazione tramite i dati IO del modulo di comunicazione. L'impiego
dei dati ciclici consente di ottimizzare il tempo di reazione, in particolare se si utilizzano
più CM PtP parallelamente.

Nota
Lo scambio dati ciclico è disponibile con la biblioteca delle istruzioni PtP-Communication
dalla versione V4.0.

CM PtP - Configurazioni di accoppiamenti punto a punto


80 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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 87)
• Send_Config (Pagina 91)
• Receive_Config (Pagina 93)
• P3964_Config (Pagina 99)

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 101)
• Receive_P2P (Pagina 105)

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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 81
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Con ulteriori istruzioni è possibile resettare il buffer di ricezione e interrogare e impostare


speciali segnali RS232.
• Receive_Reset (Pagina 108)
• Signal_Get (Pagina 109)
• Signal_Set (Pagina 111)
Con le seguenti istruzioni è possibile leggere o scrivere funzioni avanzate, se supportate dal
modulo.
• Get_Features (Pagina 113)
• Set_Features (Pagina 114)
Tutte le istruzioni Freeport sono asincrone. Le istruzioni perciò devono essere richiamate
finché il parametro di uscita DONE e NDR 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


82 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 e dell'attivazione o disattivazione dell'opzione per le
prestazioni, 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 se è presente 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

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 83
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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


84 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.1.3 Parametri comuni per operazioni Freeport

Tabella 5- 1 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'istru-
zione PtP.
PORT Un indirizzo di porta viene assegnato durante la configurazione del modulo di comunicazione. Il para-
metro 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.
UNIVERSAL 1) Bool FALSE Tipo di comunicazione di dati tra la CPU e il CM specificato da
PORT:
FALSE: Ottimizzazione delle prestazioni (ciclica)
• Telegrammi di ricezione max. 24 byte
• Telegrammi di trasmissione max. 30 byte
TRUE: Universale (aciclico)
• Limitazione della lunghezza dei telegrammi a 1, 2 o 4 kByte in
funzione del CM
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 corri-
spondente si trova in STATUS; altrimenti è FALSE.
STATUS Word 16#0000 o Stato risultante:
16#7000
• Se è stato impostato il bit DONE o NDR, STATUS viene imposta-
to su 0/16#7000 oppure su un codice di stato 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).
1) Disponibile dalla versione di biblioteca V4.0

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 85
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'avviamen-
to 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'in-
terfaccia
Configurazione della trasmissio- 16#81Bx Per la descrizione di errori nella configurazione della trasmissione
ne
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

Vedere anche
Particolarità dell'utilizzo dell'opzione di ottimizzazione delle prestazioni (Pagina 41)

CM PtP - Configurazioni di accoppiamenti punto a punto


86 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia la trasmissione dei dati al CM in seguito a un
fronte di salita su questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazio-
(UInt) ne:
• Per S7-1500/S7-1200: "ID hardware" della configu-
razione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle va-
riabili 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 ingres-
so assegnato in HWCN viene assegnato al parame-
tro PORT.
PROTOCOL IN UInt Word 0 Protocollo
• 0 = protocollo Freeport
• 1 = protocollo 3964(R)

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 87
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
BAUD IN UInt Word 6 Velocità di trasmissione dati della porta:
• 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
• 12 = 250000 bit/s
PARITY IN UInt Word 1 Parità della porta:
• 1 = nessuna parità
• 2 = parità pari
• 3 = parità dispari
• 4 = parità mark
• 5 = parità space
• 6 = qualsiasi
DATABITS IN UInt Word 1 Bit per carattere:
• 1 = 8 bit di dati
• 2 = 7 bit di dati
STOPBITS IN UInt Word 1 Bit di stop:
• 1 = 1 bit di stop
• 2 = 2 bit di stop
FLOWCTRL IN UInt Word 1 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

CM PtP - Configurazioni di accoppiamenti punto a punto


88 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
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.
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 parame-
tro viene analizzato solo se il controllo del flusso è
attivo.
MODE IN USInt Byte 0 Modo di funzionamento
I modi di funzionamento consentiti sono:
• 0 = fullduplex (RS232)
• 1 = fullduplex (RS 422) a quattro fili (punto a pun-
to)
• 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)
LINE_PRE IN USInt Byte 0 Preimpostazione della linea di ricezione
Le preimpostazioni consentite sono:
• 0 = "nessuna" preimpostazione 1)
• 1 = segnale R(A)=5V, segnale R(B)=0 V (riconosci-
mento Break):
con questa preimpostazione è possibile il ricono-
scimento break.
È disponibile solo nei seguenti casi: "Fullduplex
(RS422) funzionamento a quattro fili (Punto a pun-
to)" e "Fullduplex (RS422) funzionamento a quattro
fili (Slave multipoint)".
• 2 = segnale R(A)=0V, segnale R(B)=5V:
questa preimpostazione corrisponde allo stato di ri-
poso (nessuna trasmissione attiva). Questa preim-
postazione non consente il riconoscimento Break.
BRK_DET IN USInt Byte 0 Riconoscimento Break
Sono consentiti:
• 0 = riconoscimento Break disattivato
• 1 = riconoscimento Break attivato

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 89
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DONE OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima ri-
chiesta è stata eseguita senza errori
ERROR OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima ri-
chiesta è stata eseguita con errori
STATUS OUT Word 16#7000 Codice di errore (vedere Messaggi di errore (Pagi-
na 116))
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 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


90 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Attiva la modifica della configurazione in seguito a un
fronte di salita in questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle varia-
bili PLC dalla quale può essere acquisito.
• Per S7-300/S7-400: “Indirizzo di ingresso" della con-
figurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
RTSONDLY IN UInt Word 0 Numero di millisecondi di attesa tra l'attivazione di RTS e
l'avvio della trasmissione dei dati in invio. Questo para-
metro è valido solo se è attivo il controllo del flusso
hardware. Il campo valido è compreso tra 0 e 65535 ms.
Il valore 0 disattiva la funzione.
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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 91
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
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, indipendente-
mente dalla lunghezza del telegramma parametrizzata.
APP_END IN STRING[5] 0 Immissione caratteri da aggiungere.
Si possono aggiungere max. 5 caratteri.
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DONE OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima richie-
sta è stata eseguita senza errori
ERROR OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima richie-
sta è stata eseguita con errori
STATUS OUT Word 16#7000 Codice di errore (vedere Messaggi di errore (Pagi-
na 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


92 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichia- Tipo di dati Preassegna- Descrizione


razione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Attiva la modifica della configurazione in seguito a un
fronte di salita in questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle varia-
bili PLC dalla quale può essere acquisito.
• Per S7-300/S7-400: "Indirizzo di ingresso" della confi-
gurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
RECEIVE IN Variant Any - La struttura dei dati di Receive_Conditions indica le con-
_CONDITIONS dizioni iniziali e finali in base alle quali riconoscere l'inizio
e la di fine di un telegramma.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 93
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichia- Tipo di dati Preassegna- Descrizione


razione zione
S7- S7-
1200/ 300/400/
1500 WinAC
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DONE OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima richie-
sta è stata eseguita senza errori
ERROR OUT Bool FALSE È TRUE per la durata di un ciclo dopo che l'ultima richie-
sta è stata eseguita con errori
STATUS OUT Word 16#7000 Codice di errore (vedere Messaggi di errore
(Pagina 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

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


94 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di Preassegna- Descrizione


zione dati zione
START IN Word 16#0002 Indicazione della condizione iniziale
.STARTCOND
• 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.IDLETIME IN Word 16#0028 Numero dei bit time necessari perché venga riconosciuto l'ini-
zio di un telegramma quando la linea non è attiva (valore stan-
dard: W#16#28). Solo in combinazione con la condizione
"Dopo il riconoscimento di un Idle Line".
0 ... FFFF
START IN Byte 16#0002 Carattere iniziale per la condizione "carattere iniziale". (Valore
.STARTCHAR standard: B#16#2)
START.SEQ[1] IN Byte 0 Sequenza di inizio 1, attiva/disattiva il confronto per ogni carat-
.CTL tere: (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, signi-
fica che in questa posizione della stringa ogni carattere rappre-
senta una stringa iniziale valida (ad es. 1FH = tutti e 5 i caratteri
vengono interpretati).
START.SEQ[1] IN Char[5] 0 Sequenza di inizio 1, caratteri iniziali (5 caratteri).
.STR[1] ..
START.SEQ[1]
.STR.[5]
START.SEQ[2] IN Byte 0 Sequenza di inizio 2, attiva/disattiva il confronto per ogni carat-
.CTL tere. Valore standard: B#16#0)
START.SEQ[2] IN Char[5] 0 Sequenza di inizio 2, caratteri iniziali (5 caratteri).
.STR[1] ..
START.SEQ[2]
.STR.[5]
START.SEQ[3] IN Byte 0 Sequenza di inizio 3, attiva/disattiva il confronto per ogni carat-
.CTL tere. Valore standard: B#16#0

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 95
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di Preassegna- Descrizione


zione dati zione
START.SEQ[3] IN Char[5] 0 Sequenza di inizio 3, caratteri iniziali (5 caratteri).
.STR[1] ..
START.SEQ[3]
.STR.[5]
START.SEQ[4] IN Byte 0 Sequenza di inizio 4, attiva/disattiva il confronto per ogni carat-
.CTL tere. Valore standard: B#16#0
START.SEQ[4] IN Char[5] 0 Sequenza di inizio 4, caratteri iniziali (5 caratteri).
.STR[1] ..
START.SEQ[4]
.STR.[5]

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 Primo carattere Primo carattere Primo carattere
+1 +2 +3 +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


96 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di Preassegna- Descrizione


zione dati zione
END.ENDCOND IN Word 0 Questo parametro indica la condizione per la fine del tele-
gramma:
• 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 IN Word 0 Dimensioni del campo della lunghezza (1, 2 o 4 byte). Viene
.LENGTHSIZE 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 ricezio-
ne 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 messag-
gio di errore. Questa indicazione viene utilizzata solo se la con-
dizione è "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 sele-
zionata è "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 condi-
zione finale è soddisfatta. Questa indicazione viene utilizzata
solo se la condizione è "Tempo di ritardo del carattere". (0 ...
65535 bit time)
Avvertenza:
In presenza di elevate velocità di trasmissione dati si racco-
manda un valore di almeno 100 bit time.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 97
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di Preassegna- Descrizione


zione dati zione
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 determi-
nato carattere significa che qualsiasi carattere è adatto in que-
sta posizione della sequenza.
END.SEQ.STR[1] IN Char[5] 0 Sequenza di caratteri 1, caratteri iniziali (5 caratteri)
..
END.SEQ.STR[5]

Tabella 5- 9 Parametri generali dell'istruzione Receive_P2P

Parametri Dichiara- Tipo di Preassegna- Descrizione


zione dati zione
GENERAL.MBUF IN Byte 255 Permette di inserire il numero dei telegrammi che devono esse-
_SIZE re bufferizzati nel buffer di ricezione del CM.
Se non sono attive altre condizioni che influenzano il compor-
tamento del buffer di ricezione (Impedisci sovrascrittura, Con-
trollo del flusso dei dati), tutti gli ulteriori telegrammi vengono
respinti al raggiungimento del valore limite. (1 ... 255 tele-
grammi)
GENERAL.OW IN Byte 0 Attiva la "non sovrascrittura" del telegramma bufferizzato
_PROT quando il CM riceve un nuovo telegramma e il buffer di ricezio-
ne del CM non è ancora stato letto. In questo modo si evita che
telegrammi di ricezione già bufferizzati possano andare persi.
• 0 - non attivato
• 1 - attivato
GENERAL.CLR IN Byte 0 Attiva la cancellazione del buffer di ricezione all'avviamento
_MBUF della CPU.
Se questo parametro è attivato il buffer di ricezione viene can-
cellato 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


98 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preasse- Descrizione


zione gnazione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia l'istruzione in seguito a un fronte di salita in
questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunica-
(UInt) zione:
• Per S7-1500/S7-1200: "ID hardware" della confi-
gurazione dispositivi.
Il nome simbolico della porta viene assegnato nel-
la 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 in-
gresso assegnato in HWCN viene assegnato al pa-
rametro PORT.
BCC IN USInt Byte 1 Attiva/disattiva l'utilizzo della verifica blocco
• 0 = senza verifica blocco
• 1 = con verifica blocco
Priority IN USInt Byte 1 Impostazione della priorità
• 0 = priorità bassa
• 1 = priorità alta

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 99
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preasse- Descrizione


zione gnazione
S7- S7-
1200/ 300/400/
1500 WinAC
CharacterDelay- IN UInt Word 16#00DC Impostazione del tempo di ritardo carattere (in fun-
Time zione 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 fun-
zione della velocità di trasmissione impostata) (valore
standard: 2000 ms).
1 ... 65535 ms
BuildupAttem- IN USInt Byte 16#0006 Impostazione del numero di tentativi di collegamento
pts (valore predefinito: 6 tentativi di collegamento)
1 ... 255
Repetition- IN USInt Byte 16#0006 Impostazione del numero di tentativi di trasmissione
Attempts (valore predefinito: 6 tentativi di collegamento)
1 ... 255
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE 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 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


100 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia la trasmissione dei dati al CM in seguito a un fronte
di salita su questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione 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 confi-
gurazione 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, 05/2021, A5E37509396-AE 101
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
BUFFER IN Variant Any 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 memo-
ria 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 lun-
ghezza max attuale.
Per ulteriori informazioni consultare la sezione "Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di co-
municazione (Pagina 104)"
LENGTH IN UInt Word 0 Lunghezza dei dati da trasferire in byte.
Con LENGTH = 0 l'area di memoria indirizzata nel parame-
tro BUFFER viene trasmessa per intero.
Per ulteriori informazioni consultare la sezione "Utilizzo
dei parametri BUFFER e LENGTH nelle operazioni di co-
municazione (Pagina 104)"
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.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.
UNIVERSAL OUT Bool --- FALSE Tipo di comunicazione di dati tra la CPU e il CM specifica-
1) to da PORT:
FALSE: Ottimizzazione delle prestazioni (ciclica)
(Pagina 41)
• Telegrammi di ricezione max. 24 byte
• Telegrammi di trasmissione max. 30 byte
TRUE: Universal (aciclica)
• Limitazione della lunghezza dei telegrammi a 1, 2 o 4
kByte in funzione del CM
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 116))
1) Disponibile dalla versione di biblioteca V4.0

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


102 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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, 05/2021, A5E37509396-AE 103
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 Se l'opzione per l'ottimizzazione delle prestazioni non è attiva:
• Per la memoria ottimizzata vale quanto segue: la lunghezza max. consentita per il BUFFER è di
1024 Byte; altrimenti 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 infe-
riore alla lunghezza complessiva della struttura in byte, nel qual caso vengono inviati solo i primi
byte LENGTH della struttura.
Se l'opzione per l'ottimizzazione delle prestazioni è attiva:
• la lunghezza max. consentita per il BUFFER è di 30 byte.
Array Per la memoria ottimizzata vale quanto segue: Se il tipo di dati array è diverso da Byte, Word o
DWord, la lunghezza max. consentita del buffer è di 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'ele-
mento 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.
Ad esempio, se BUFFER contiene un array con 15 elementi (in totale 60 byte) e si specifica LENGTH
= 20, vengono trasferiti i primi cinque elementi DWord dell'array. Se LENGTH non viene specificato
o ha lunghezza 0 viene trasferito l'array completo.
String Il parametro LENGTH contiene il numero dei caratteri da trasmettere. Vengono trasferiti solo i carat-
teri di String. I byte con la lunghezza max. e la lunghezza effettiva di String non vengono inviati.

Tabella 5- 11 Parametri LENGTH

LENGTH Descrizione
=0 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


104 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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

Dichiara- Tipo di dati Preassegna- Descrizione


Parametri zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabi-
li PLC dalla quale può essere acquisito.
• Per S7-300/S7-400: “Indirizzo di ingresso" della confi-
gurazione 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, 05/2021, A5E37509396-AE 105
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Dichiara- Tipo di dati Preassegna- Descrizione


Parametri zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
BUFFER IN Variant Any 0 Questo parametro indica l'indirizzo iniziale del buffer di
ricezione. Questo buffer deve essere sufficiente per rice-
vere 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 ri-
cevuti 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 co-
municazione (Pagina 104)"
UNIVERSAL OUT Bool --- FALSE Tipo di comunicazione di dati tra la CPU e il CM specifica-
1) to da PORT:
FALSE: Ottimizzazione delle prestazioni (ciclica)
(Pagina 41)
• Telegrammi di ricezione max. 24 byte
• Telegrammi di trasmissione max. 30 byte
TRUE: Universal (aciclica)
• Limitazione della lunghezza dei telegrammi a 1, 2 o 4
kByte in funzione del CM
NDR OUT Bool FALSE È TRUE per la durata di un ciclo se sono pronti nuovi dati
e l'istruzione si è conclusa senza errori.
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
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 116))
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 co-
municazione (Pagina 104)"
1) Disponibile dalla versione di biblioteca V4.0

CM PtP - Configurazioni di accoppiamenti punto a punto


106 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".
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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 107
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia la trasmissione dei dati al CM in seguito a un fronte
di salita su questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione 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 confi-
gurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
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 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


108 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia la trasmissione dei dati al CM in seguito a un fronte
di salita su questo ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabi-
li PLC dalla quale può essere acquisito.
• Per S7-300/S7-400: “Indirizzo di ingresso" della confi-
gurazione 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 109
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
STATUS OUT Word 16#7000 Codice di errore (vedere Messaggi di errore (Pagina 116))
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 trasmissio-
ne (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 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


110 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
(UInt)
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione 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 confi-
gurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
SIGNAL IN Byte 0 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 111
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preassegna- Descrizione


zione zione
S7- S7-
1200/ 300/400/
1500 WinAC
RTS IN Bool 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.
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE 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 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


112 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Dichiara- Tipo di dati Preasse- Descrizione


zione S7- S7- gnazione
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazione:
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione dispositivi.
Il nome simbolico della porta viene assegnato nella
scheda "Costanti di sistema" della tabella delle variabi-
li PLC dalla quale può essere acquisito.
• Per S7-300/S7-400: “Indirizzo di ingresso" della confi-
gurazione 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 OUT Bool FALSE Supporto CRC Modbus
_CRC
DIAG OUT Bool FALSE Generazione di messaggi di diagnostica
_ALARM
SUPPLY OUT Bool FALSE Diagnostica Tensione di alimentazione mancante L+
_VOLT disponibile
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
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 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 113
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 Dichiara- Tipo di dati Preasse- Descrizione


zione gnazione
S7- S7-
1200/ 300/400/
1500 WinAC
REQ IN Bool FALSE L'istruzione per l'impostazione di funzioni avanzate
viene avviata in seguito a un fronte di salita in questo
ingresso.
PORT IN PORT Word 0 Specifica il modulo dal quale si svolge la comunicazio-
(UInt) ne:
• Per S7-1500/S7-1200: "ID hardware" della configu-
razione dispositivi.
Il nome simbolico della porta viene assegnato nel-
la 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 in-
gresso assegnato in HWCN viene assegnato al pa-
rametro PORT.
EN_MODBUS IN Bool FALSE Attiva il supporto CRC Modbus
_CRC
EN_DIAG IN Bool FALSE Attiva la generazione di messaggi di diagnostica
_ALARM
EN_SUPPLY IN Bool FALSE Attivazione della diagnostica Tensione di alimentazio-
_VOLT ne mancante L+
Avvertenza:
questa diagnostica non è supportata dai moduli di
comunicazione S7-1500 / ET 200MP. Lo stesso vale
anche se il parametro può essere impostato in combi-
nazione con MODBUS_CRC.

CM PtP - Configurazioni di accoppiamenti punto a punto


114 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Preasse- Descrizione


zione gnazione
S7- S7-
1200/ 300/400/
1500 WinAC
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
DONE OUT Bool FALSE È TRUE per la durata di un'esecuzione dopo che l'ulti-
ma 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 116))

Per maggiori informazioni sui parametri generali consultare la sezione "Parametri comuni per
operazioni Freeport (Pagina 85)".

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 115
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 Descrizione Rimedio


errore
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 rag- -
giunto il tempo di risposta massimo.
16#0098 Fine del telegramma riconosciuta perché sono soddi- -
sfatte le condizioni per "Rileva la lunghezza dal mes-
saggio"
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: Trasferimento dati in corso -
16#8085 Lunghezza indicata non consentita Selezionare una lunghezza del telegramma appro-
priata.
• UNIVERSAL = 1 (comunicazione aciclica dei dati
tramite set di dati): Sono consentiti, in funzione
del modulo, 1 ... 1024/2048/4096 byte
• UNIVERSAL = 0 (comunicazione ciclica dei dati
tramite dati IO; Prestazioni ottimizzate per molti
telegrammi brevi (Pagina 41)): Lunghezza mas-
sima 30 byte (istruzione Send_P2P)
16#8087 Il numero di caratteri ricevuto dal modulo CM PtP Selezionare una lunghezza di telegramma appropria-
supera il numero supportato se UNIVERSAL = 0 (otti- ta oppure utilizzare l'impostazione UNIVERSAL = 1
mizzazione delle prestazioni). (comunicazione dei dati tramite set di dati).
Se UNIVERSAL = 0 (ottimizzazione delle prestazioni
(Pagina 41)), la lunghezza massima è di 24 byte
(istruzione Receive_P2P).

CM PtP - Configurazioni di accoppiamenti punto a punto


116 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#8088 La lunghezza indicata è maggiore dell'area impostata Modificare l'area nel buffer di ricezione o selezionare
nel buffer di ricezione. una lunghezza del telegramma adeguata all'area
Avvertenza: se nel parametro BUFFER è stato specifi- impostata nel buffer di ricezione.
cato il tipo di dati STRING, questo codice di errore Sono consentiti, in funzione del modulo, 1 ...
viene visualizzato anche se la lunghezza della stringa 1024/2048/4096 byte
attuale è minore del valore indicato nel parametro
LENGTH.
16#8090 Errore di configurazione: Numero dispari di byte in Scegliere un numero pari di byte.
WString
16#8091 Nella comunicazione ciclica dei dati, i set di dati 48, 49 Disattivare il parametro "Prestazioni ottimizzate per
e 50 non sono supportati se UNIVERSAL = 0 (ottimiz- molti telegrammi brevi".
zazione delle prestazioni). oppure
Accedere ai dati di ricezione e invio tramite i dati IO.
oppure
Utilizzare almeno la versione V4.0 della biblioteca di
istruzioni PtP Communication.
Stato di RECEIVE e codici di errore
16#7001 Primo richiamo di un nuovo telegramma: Trasmissione -
dei dati avviata
16#7002 Richiamo intermedio: Trasferimento dati in corso -
16#8088 Il numero di caratteri ricevuti è maggiore di quanto Selezionare una lunghezza del telegramma appro-
indicato nel parametro BUFFER. priata.
Sono consentiti, in funzione del modulo, 1 ...
1024/2048/4096 byte
16#8090 Errore di configurazione: Numero dispari di byte in Scegliere un numero pari di byte.
WString
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 diagno-
stica".
Sono consentiti: allarme di diagnostica disattivato o
attivato.
Verificare se il modulo indirizzato supporta la gene-
razione di allarmi di diagnostica.
16#8193 Il modulo non supporta la diagnostica della tensione Selezionare un valore adatto per "Allarme di diagno-
di alimentazione L+. stica".
Sono consentiti: allarme di diagnostica disattivato o
attivato.
Verificare se il modulo indirizzato supporta la gene-
razione degli allarmi di diagnostica.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 117
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
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 Selezionare una velocità di trasmissione (BAUD)
dati. consentita per il modulo.
16#81A2 Il modulo non supporta questa impostazione per la Selezionare un valore adatto per "Parità" (PARITY).
parità. Sono consentiti:
• Nessuna (1)
• Pari (2)
• Dispari (3)
• Mark (4)
• Space (5)
• Qualsiasi (6)
16#81A3 Il modulo non supporta questo numero di bit di dati. Selezionare un valore adatto per "Numero di bit di
dati" (DATABITS).
Sono consentiti:
• 7 (2)
• 8 (1)
16#81A4 Il modulo non supporta questo numero di bit di stop. Selezionare un valore adatto per "Numero di bit di
stop" (STOPBITS).
Sono consentiti:
• 1 (1)
• 2 (2)
16#81A5 Il modulo non supporta questo tipo di controllo del Selezionare un controllo del flusso dati (FLOWCTRL)
flusso dati. consentito per il modulo.
16#81A7 Valore non consentito per XON o XOFF Selezionare valori adatti per XON (XONCHAR) e
XOFF(XOFFCHAR).
Campo di valori ammesso: 0...255
16#81AA Modo di funzionamento non consentito I modi di funzionamento consentiti sono:
• Fullduplex (RS232) (0)
• Fullduplex (RS422) a quattro fili (punto a punto)
(1)
• Fullduplex (RS422) funzionamento a quattro fili
(master multipoint) (2)/ (CM PtP (ET 200SP))
• Fullduplex (RS422) funzionamento a quattro fili
(Slave multipoint) (3)/ (CM PtP (ET 200SP)
• Semiduplex (RS485) funzionamento a 2 fili (4)

CM PtP - Configurazioni di accoppiamenti punto a punto


118 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#81AB Preimpostazione della linea di ricezione non consenti- Le preimpostazioni consentite sono:
ta
• "Nessuna" preimpostazione (0)
• Segnale R(A)=5V, segnale R(B)=0 V (riconosci-
mento 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).
16#81AC Valore non consentito per "Riconoscimento Break" Selezionare un valore adatto per "Riconoscimento
Break". Sono consentiti:
• riconoscimento Break disattivato (0)
• riconoscimento Break attivo (1).
16#81AF Il modulo non supporta questo protocollo. Selezionare un protocollo consentito per il modulo.
Codici di errore di configurazione della trasmissione
16#81B5 Più di 2 caratteri finali -o- Selezionare valori adatti per "Carattere finale" e "Se-
sequenza di fine > 5 caratteri quenza di fine".
Sono consentiti:
• disattivato (0),
• 1 (1) o 2 (2) caratteri finali
oppure
• disattivato (0),
• 1 (1) ... 5 (5) caratteri per la sequenza di fine.
16#81B6 Send Configuration respinto perché è selezionato il Assicurarsi che con il protocollo 3964(R) impostato
protocollo 3964(R) non venga inviata la configurazione della trasmissio-
ne.
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 44)).
16#81C3 Valore non consentito per "Lunghezza max. del mes- Selezionare un valore adatto per "Lunghezza max.
saggio" 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 lun- Selezionare un valore adatto per "Offset del campo di
ghezza nel messaggio" lunghezza nel messaggio".
Campo di valori consentito (in funzione del modulo):
1-1024/2048/4096 (byte)

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 119
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#81C5 Valore non consentito per "Dimensioni del campo di Selezionare un valore adatto per "Dimensioni del
lunghezza" campo di lunghezza" (LENGTHSIZE).
Campo valori consentito in byte:
• 1 (1)
• 2 (2)
• 4 (4)
16#81C6 Valore non consentito per "Numero dei caratteri che Selezionare un valore adatto per "Nr. dei caratteri che
non rientrano nella lunghezza indicata" non rientrano nella lunghezza indicata" (LENGTHM).
Campo di valori ammesso: 0 ... 255 (byte)
16#81C7 La somma di "Offset del campo di lunghezza nel mes- Selezionare valori adatti per "Offset del campo di
saggio + Dimensioni del campo di lunghezza + Nume- lunghezza nel messaggio", "Dimensioni del campo di
ro dei caratteri che non rientrano nella lunghezza lunghezza" e "Numero dei caratteri che non rientrano
indicata" supera la lunghezza massima del telegram- nella lunghezza indicata".
ma. 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 rispo-
sta".
Campo di valori ammesso: 1-65535 (ms)
16#81C9 Valore non consentito per "Tempo di ritardo del carat- Selezionare un valore adatto per "Tempo di ritardo
tere" del carattere".
Campo di valori ammesso: 1-65535 (bit time)
16#81CB Sequenza di fine del telegramma attivata ma nessuno Attivare uno o più caratteri per la verifica.
dei caratteri è attivato per la verifica
16#81CC Sequenza di inizio del telegramma attivata ma nessu- Attivare uno o più caratteri per la verifica.
no dei caratteri è attivato per la verifica
16#81CD Valore non consentito per "Impedisci sovrascrittura" Selezionare un valore adatto per "Impedisci sovra-
scrittura".
Sono consentiti:
• Impedisci sovrascrittura disattivato (0) oppure
• Impedisci sovrascrittura attivato (1)
16#81CE Valore non consentito per "Cancella buffer di ricezione Selezionare un valore adatto per "Cancella buffer di
all'avviamento" ricezione all'avviamento".
Sono consentiti:
• Cancella buffer di ricezione all'avviamento disat-
tivato (0)
• Cancella buffer di ricezione all'avviamento attiva-
to (1)

CM PtP - Configurazioni di accoppiamenti punto a punto


120 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
Stato di SEND e codici di errore
16#81D0 Ricezione di una richiesta di trasmissione durante Assicurarsi che durante l'esecuzione di un ordine di
l'esecuzione di un ordine di trasmissione 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 comu-
nicazione o modificare eventualmente la parametriz-
zazione.
16#81D2 "Hardware RTS sempre ON": ordine di trasmissione Controllare il partner di comunicazione. Assicurarsi
interrotto a causa della commutazione da DSR = ON a che DSR sia impostato su ON per l'intera trasmissio-
OFF ne.
16#81D3 Overflow del buffer di trasmissione / telegramma di Selezionare una lunghezza del telegramma inferiore.
trasmissione troppo grande Sono consentiti (in funzione del modulo): 1 ...
1024/2048/4096 (byte)
16#81D5 Trasmissione interrotta per modifica della parametriz- Verificare la parametrizzazione, la rottura conduttore
zazione, rilevamento della rottura di un conduttore o e lo stato della CPU.
CPU in STOP
16#81D6 Trasmissione interrotta per mancata ricezione del Verificare la parametrizzazione dei caratteri finali e il
carattere finale telegramma del partner della comunicazione.
16#81D7 Comunicazione disturbata tra programma utente e Verificare la comunicazione (ad es. la corrispondenza
modulo del numero della sequenza).
16#81D8 Tentativo di trasmissione respinto perché il modulo Parametrizzare il modulo.
non è parametrizzato
16#81DF Per uno dei seguenti motivi, il modulo ha resettato —
l'interfaccia del FB:
• Il modulo è stato riavviato
• Il modulo è stato nuovamente parametrizzato
• STOP della CPU
Codici di errore di configurazione della ricezione
16#81E0 Telegramma interrotto: Overflow del buffer di ricezio- Richiamare più spesso la funzione di ricezione nel
ne / telegramma di ricezione troppo grande programma utente o parametrizzare una comunica-
zione 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 en-
trambi 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 cam- Verificare le impostazioni per Offset del campo di
po di lunghezza nel messaggio + Dimensioni del cam- lunghezza nel messaggio, Dimensioni del campo di
po di lunghezza + Numero dei caratteri che non lunghezza e Numero dei caratteri che non rientrano
rientrano nella lunghezza indicata" superiore al buffer nella lunghezza indicata.
di ricezione
16#81E5 Telegramma interrotto: Break Linea di ricezione verso il partner interrotta.
Ripristinare la linea o attivare il partner.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 121
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#81E6 Numero massimo di "Telegrammi in ricezione buffe- Richiamare più spesso l'istruzione nel programma
rizzati" superato utente, parametrizzare una comunicazione con con-
trollo del flusso dati o aumentare il numero di tele-
grammi 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 Il dispositivo partner è troppo lento o è disturbato.
scaduto prima che sia stato riconosciuto il criterio di Verificare eventualmente con un dispositivo di con-
fine del messaggio trollo interfaccia da inserire nella linea di trasmissio-
ne.
16#81E9 Errore CRC Modbus (solo moduli di comunicazione che Errore nella somma di controllo del telegramma
supportano Modbus) Modbus. Controllare il partner di comunicazione.
16#81EA Telegramma Modbus troppo corto (solo moduli di La lunghezza minima del telegramma Modbus non è
comunicazione che supportano Modbus) stata raggiunta. Controllare il partner di comunica-
zione.
16#81EB Telegramma interrotto: lunghezza massima del tele- Selezionare una lunghezza del telegramma inferiore
gramma raggiunta per il partner di comunicazione.
Sono consentiti (in funzione del modulo): 1-
1024/2048/4096 (byte)
Controllare i parametri del riconoscimento della fine
del telegramma.
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 addizio-
nali 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 equip-
ment).
16#81F4 Errore block header (ad es. tipo di blocco errato oppu- Verificare il DB di istanza e il block header.
re lunghezza di blocco errata)
Codici di errore di configurazione della ricezione
16#8201 1) Receive_Conditions è un puntatore a un tipo di dati Inserire un puntatore a uno dei seguenti tipi di dati:
non consentito DB, BOOL, BYTE, CHAR, WORD, INT, DWORD, DINT,
REAL, DATE, TIME_OF_DAY, TIME, S5TIME,
DATE_AND_TIME, STRING
16#8225 Receive_Conditionsindica l'area di memoria ottimizza- Inserire un puntatore a un'area con la lunghezza
ta maggiore di 1 kByte max. seguente:
oppure • Area di memoria ottimizzata: 1 kByte
Receive_Conditions indica l'area di memoria ottimizza-
• Area di memoria non ottimizzata: 4 kByte
ta e la lunghezza di ricezione è maggiore dell'area
indirizzata con Receive_Conditions. Avvertenza: Se il puntatore indica un'area di memo-
ria ottimizzata, non trasmettere più di 1 kByte.
16#8229 1) Receive_Conditions è un puntatore rivolto verso BOOL Se si utilizza un puntatore rivolto verso BOOL il nu-
con numero di bit diverso da n * 8 mero di bit deve essere un multiplo di 8.

CM PtP - Configurazioni di accoppiamenti punto a punto


122 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
Codici di errore generali
16#8280 Conferma negativa durante la lettura 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.
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 WRREC.STATUS e nella
descrizione dell'SFB WRREC.
16#8282 Modulo non disponibile Verificare l'immissione nel parametro PORT e accer-
tarsi che il modulo sia accessibile.
Codici di errore di configurazione della ricezione
16#82C1 Valore non consentito per "Telegrammi in ricezione Selezionare un valore adatto per "Telegrammi in
bufferizzati". 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 Selezionare un tipo di dati consentito.
non consentito Sono consentiti: DB, BOOL, BYTE, CHAR, WORD, INT,
DWORD, DINT, REAL, DATE, TIME_OF_DAY, TIME,
S5TIME, DATE_AND_TIME, STRING
16#8322 Lunghezza dell'area errata per la lettura di un parame- Controllare quanto immesso nel parametro Recei-
tro ve_Conditions
16#8324 Errore di area per la lettura di un parametro Controllare quanto immesso nel parametro Recei-
ve_Conditions
16#8328 Errore di impostazione alla lettura di un parametro Controllare quanto immesso nel parametro Recei-
ve_Conditions
Stato di SEND e codici di errore
16#8328 1) BUFFER è un puntatore a BOOL con numero di bit Se si utilizza un puntatore a BOOL il numero di bit
diverso da n * 8 deve essere un multiplo di 8.
Codici di errore di configurazione della ricezione
16#8332 Blocco dati non consentito nel parametro Recei- Controllare quanto immesso nel parametro Recei-
ve_Conditions ve_Conditions
16#833A La denominazione del blocco dati nel parametro Re- Controllare quanto immesso nel parametro Recei-
ceive_Conditions indica un blocco dati non caricato. ve_Conditions
16#8351 Tipo di dati non ammesso Controllare quanto immesso nel parametro Recei-
ve_Conditions
16#8352 1) Receive_Conditions non indica un blocco dati Controllare il puntatore a Receive_Conditions
16#8353 1) Receive_Conditions non indica una struttura del tipo Controllare il puntatore a Receive_Conditions
Receive_Conditions

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 123
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
Codici di errore del protocollo 3964(R)
16#8380 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Tempo di ritardo
"Tempo di ritardo del carattere". del carattere" (CharacterDelayTime).
Campo di valori ammesso: 1 - 65535 ms
16#8381 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Time out di rispo-
"Time out di risposta". sta" (AcknDelayTime).
Campo di valori ammesso: 1 - 65535 ms
16#8382 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Priorità" (Priority).
"Priorità". Sono consentiti:
• Elevato (1)
• Basso (0)
16#8383 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Verifica blocco"
"Verifica blocco". (BCC).
Sono consentiti:
• con verifica blocco (1)
• senza verifica blocco (0)
16#8384 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Tentativi di colle-
"Tentativi di collegamento". gamento" (BuildupAttempts).
Campo di valori ammesso: 1 ... 255
16#8385 Errore di parametrizzazione: valore non consentito per Selezionare un valore adatto per "Tentativi di tra-
"Tentativi di trasmissione". smissione" (RepetitionAttempts).
Campo di valori ammesso: 1 ... 255
16#8386 Errore di runtime: numero di tentativi di collegamento Controllare il cavo dell'interfaccia e i parametri di
superato trasmissione.
Controllare anche sul lato del partner se la funzione
di ricezione è parametrizzata correttamente.
16#8387 Errore di runtime: numero di tentativi di trasmissione Controllare il cavo dell'interfaccia, i parametri di
superato trasmissione e la parametrizzazione del partner della
comunicazione.
16#8388 Errore di runtime: errore nel "carattere di verifica bloc- Controllare se il collegamento è fortemente disturba-
co" to, in questo caso si noteranno occasionalmente
Il valore del carattere di verifica blocco creato inter- anche codici di errore. Verificare il corretto compor-
namente non coincide con quello ricevuto dal partner tamento del dispositivo partner, eventualmente con
alla fine del collegamento. un dispositivo di controllo interfaccia da inserire nella
linea di trasmissione.
16#8389 Errore di runtime: in attesa della disponibilità del buf- La richiesta di trasmissione del partner di comunica-
fer di ricezione è stato ricevuto un carattere non con- zione (STX, 02H) riceve in risposta DLE solo quando il
sentito 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 control-
lo interfaccia da inserire nella linea di trasmissione.
16#838A Errore di runtime: errore logico durante la ricezione. Controllare se il partner raddoppia sempre DLE
Dopo la ricezione di DLE è stato ricevuto un altro ca- nell'intestazione del telegramma e nella stringa di
rattere qualsiasi (esclusi DLE, ETX). dati o se la disattivazione del collegamento viene
fatta con DLE ETX. Verificare il corretto comporta-
mento del dispositivo partner, eventualmente con un
dispositivo di controllo interfaccia da inserire nella
linea di trasmissione.

CM PtP - Configurazioni di accoppiamenti punto a punto


124 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#838B Errore di runtime: tempo di ritardo del carattere supe- Il dispositivo partner è troppo lento o disturbato.
rato Verificare eventualmente con un dispositivo di con-
trollo interfaccia da inserire nella linea di trasmissio-
ne.
16#838C Errore di runtime: tempo di attesa della disponibilità Richiamare più spesso l'istruzione nel programma
del buffer di ricezione avviato utente o parametrizzare una comunicazione con
controllo del flusso dati.
16#838D Errore di runtime: dopo NAK la ripetizione del tele- Controllare il partner di comunicazione. Un tele-
gramma non si avvia entro 4 s gramma ricevuto eventualmente errato deve essere
ripetuto dal partner entro 4 secondi.
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 control-
lo interfaccia da inserire nella linea di trasmissione.
16#838F Errore di runtime: conflitto di inizializzazione. Entram- Impostare per uno dei partner la priorità "Bassa"
bi i partner hanno impostato la priorità alta
16#8391 Errore di parametrizzazione: dati di parametrizzazione Assicurarsi che con il protocollo Freeport impostato
3964 respinti perché è impostato Freeport non vengano inviati i dati di parametrizzazione 3964.
Codici di errore generali
16#8FFF A causa di un reset il modulo non è momentaneamen- Ripetere la richiesta.
te operativo.
1) Solo per le istruzioni per le CPU S7-300/400

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 125
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2 MODBUS (RTU)

5.4.2.1 Dipendenza tra le versioni della biblioteca


Utilizzare le biblioteche delle istruzioni "MODBUS (RTU)” e “Punto a punto" solo in una delle
seguenti combinazioni delle versioni:

Versione di biblioteca "MODBUS (RTU)" Versione della biblioteca “Punto a punto"


V1.1 V1.1
V2.1 V2.4
V3.1 V2.4
V4.4 V3.2
V5.0 V4.0

5.4.2.2 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).

CM PtP - Configurazioni di accoppiamenti punto a punto


126 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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 stan-
dard
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

• 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 Indirizzo
Stazione RTU Indirizzo standard della stazione 1 ... 247 e 0 per broadcast
Indirizzo esteso della stazione 1 ... 65535e0 per broadcast

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 127
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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


128 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2.3 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 Dichiara- Tipo di dati Stan- Descrizione


zione S7- S7- dard
1200 300/400/
/1500 WinAC
REQ IN Bool FALSE Avvia l'istruzione in seguito a un fronte di salita di questo
ingresso.
PORT IN Port Word 0 Specifica il modulo dal quale si svolge la comunicazione:
• Per S7-1500/S7-1200: "ID hardware" della configurazio-
ne 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 configu-
razione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro PORT.
BAUD IN UDInt DInt 9600 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 0 Selezione della parità:
• 0 – Nessuna
• 1 – Dispari
• 2 – Pari

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 129
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Stan- Descrizione


zione S7- S7- dard
1200 300/400/
/1500 WinAC
FLOW_CTRL IN UInt Word 0 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)
RTS_ON_DLY IN UInt Word 0 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.
RTS_OFF IN UInt Word 0 Selezione del ritardo alla disinserzione RTS:
_DLY • 0 – Nessun ritardo fra la trasmissione dell'ultimo carat-
tere 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.
RESP_TO IN UInt Word 1000 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 Mod-
bus_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 Mod-
bus_Master o Modbus_Slave.
Il parametro MB_DB deve essere interconnesso con il pa-
rametro 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.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.
DONE OUT Bool FALSE Il bit DONE è TRUE per la durata di un ciclo dopo che l'ulti-
ma richiesta è stata eseguita senza errori.
ERROR OUT Bool FALSE Il bit ERROR è TRUE per la durata di un ciclo dopo che l'ulti-
ma 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 159))

CM PtP - Configurazioni di accoppiamenti punto a punto


130 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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.

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 Stan- Descrizione


dard
S7- S7-
1200 300/400/
/1500 WinAC
ICHAR_GAP Word 0 Tempo di ritardo max. tra i caratteri. Questo parametro viene specifi-
cato 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_VOLT Bool 0 Attivazione della diagnostica Tensione di alimentazione mancante L+
MODE USInt Byte 0 Modo di funzionamento
I modi di funzionamento consentiti sono:
• 0 = fullduplex (RS232)
• 1 = fullduplex (RS 422) a quattro fili (punto a punto)
• 2 = fullduplex (RS422) funzionamento a quattro fili (Master multi-
point, CM PtP (ET 200SP))
• 3 = fullduplex (RS422) funzionamento a quattro fili (Slave multi-
point, CM PtP (ET 200SP))
• 4 = semiduplex (RS485) a 2 fili 1)

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 131
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Variabile Tipo di dati Stan- Descrizione


dard
S7- S7-
1200 300/400/
/1500 WinAC
LINE_PRE USInt Byte 0 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) funziona-
mento a quattro fili (Punto a punto)" e "Fullduplex (RS422) funzio-
namento 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 rico-
noscimento Break.
BRK_DET USInt Byte 0 Riconoscimento Break
Sono consentiti:
• 0 = riconoscimento Break disattivato
• 1 = riconoscimento Break attivato
EN_DIAG_ALARM Bool 0 Attiva allarme di diagnostica:
• 0 - non attivato
• 1 - attivato
STOP_BITS USINT Byte 1 Numero di bit di stop;
• 1 = 1 bit di stop,
• 2 = 2 bit di stop,
• 0, 3 ... 255 = riservato

1) Impostazione necessaria per l'uso di cavi PROFIBUS in CM 1241 per RS485

Versioni dell’istruzione
La versione 3.1 presenta le stesse funzioni della versione 3.0 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


132 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2.4 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 .

Nota
Per il DB di istanza è necessario attivare l’istruzione Modbus_Master nessuno ritenzione
(Retain).

Parametri

Parametri Dichiara- Tipo di dati Standard Descrizione


zione S7- S7-
1200 300/400/
/1500 WinAC
REQ IN Bool FALSE FALSE = Nessuna richiesta
TRUE = Richiesta di trasmissione di dati allo slave Modbus
MB_ADDR IN UInt Word - Indirizzo della stazione Modbus RTU:
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, scrit-
tura o diagnostica). Per maggiori informazioni consultare
la tabella delle funzioni Modbus riportata più avanti.
DATA IN UDInt DWord 0 Indirizzo iniziale nello slave: indica l'indirizzo iniziale dei
_ADDR 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 indi-
cate nella tabella delle funzioni Modbus riportata più avan-
ti.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 133
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 WinAC
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.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.
DATA_PTR IN/OUT Variant Any - Puntatore dati: punta all'indirizzo merker o DB per i dati da
scrivere o leggere.
A partire dalla versione V3.0 dell’istruzione:
il parametro può puntare a un’area di memoria ottimizza-
ta. Nell’area di memoria ottimizzata è consentito un ele-
mento Single o un array con i seguenti tipi di dati: Bool,
Byte, Char, Word, Int, DWord, DInt, Real, USInt, UInt,
UDInt, SInt, WChar. Ogni altro tipo di dati genera il mes-
saggio di errore 16#818C.
DONE OUT Bool FALSE Il bit DONE è TRUE per la durata di un ciclo dopo che l'ulti-
ma 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'ul-
tima 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 159))

CM PtP - Configurazioni di accoppiamenti punto a punto


134 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Standard Descrizione


dati
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 ri-
chiesta. 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 Bool 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
Compatibility_Mode 1) Bool FALSE Modo di compatibilità con CP 341, CP 441-2 e ET 200S 1SI con
driver per Modbus RTU e con ET 200S 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 telegram-
ma di trasmissione.
MB_DB MB_BASE - Il parametro MB_DB dell'istruzione Modbus_Comm_Load deve
essere collegato con questo parametro MB_DB dell'istruzione Mod-
bus_Master.
1) 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 135
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


136 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 DATA_LEN Codice funzione Operazione e dati


Modbus) (lunghezza dei dati) Modbus
0 Bit per richiesta 01 Lettura dei bit di uscita:
1 ... 9999 1 ... 2000/1992 1 0 ... 9998
0 Bit per richiesta 02 Lettura dei bit di ingresso:
10001 ... 19999 1 ... 2000/1992 1 0 ... 9998
0 Parole per richiesta 03 Lettura del registro di mantenimen-
to:
40001 ... 49999 1 ... 125/124 1 0 ... 9998
400001 ... 465535 1 ... 125/124 1 0 ... 65534
0 Parole per richiesta 04 Lettura delle parole di ingresso:
30001 ... 39999 1 ... 125/124 1 0 ... 9998
1 Bit per richiesta 05 Scrittura di un bit di uscita:
1 ... 9999 1 0 ... 9998
1 1 parola per richiesta 06 Scrittura di un registro di manteni-
mento:
40001 ... 49999 1 0 ... 9998
400001 ... 465535 1 0 ... 65524
1 Bit per richiesta 15 Scrittura di diversi bit di uscita:
1 ... 9999 2 ... 1968/1960 1 0 ... 9998
1 Parole per richiesta 16 Scrittura di diversi registri di mante-
nimento:
40001 ... 49999 2 ... 123/122 0 ... 9998
400001 ... 465534 2 ... 123/122 1 0 ... 65534
22 Bit per richiesta 15 Scrittura di uno o più bit di uscita:
1 ... 9999 1 ... 1968/1960 1 0 ... 9998
22 Parole per richiesta 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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 137
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

MODE DATA_ADDR (indirizzo DATA_LEN Codice funzione Operazione e dati


Modbus) (lunghezza dei dati) Modbus
11 Gli operandi DATA_ADDR e DATA_LEN di Mod- 11 Lettura della parola di stato e del
bus_Master vengono ignorati entrambi in questa fun- contatore di eventi della comunica-
zione. zione dello slave. La parola di stato
indica 'occupato' (0 – libero, 0xFFFF
- occupato). Il contatore di eventi
viene incrementato a ogni tele-
gramma elaborato senza errori.

80 1 parola per richiesta 08 Verifica dello stato dello slave trami-


te codice di diagnostica dei dati
0x0000 (test di loopback; lo slave
riporta la richiesta in eco)

- 1 -
81 1 parola per richiesta 08 Reset del contatore di eventi dello
slave tramite codice di diagnostica
dei dati 0x000A
- 1 -
104 3 Parole per richiesta 04 Lettura parole di ingresso
0 ... 65535 1 ... 125/124 1 0 ... 65535
3 ... - - Riservato
10,
12 ...
79,
82 ...
103,
105 ...
255
1 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.
2 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.
3 Per S7-300/400/WinAC vale quanto segue: La non è supportata

CM PtP - Configurazioni di accoppiamenti punto a punto


138 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 139
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

• 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.

Versioni dell’istruzione
La versione 3.0 presenta le stesse funzioni della versione 2.4 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


140 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2.5 Modbus_Slave

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 .

Nota
Per il DB di istanza è necessario attivare l’istruzione Modbus_Slave nessuno ritenzione
(Retain).

Parametri

Parametri Dichiara- Tipo di dati Standard Descrizione


zione S7- S7-
1200/1500 300/400/
WinAC
MB_ADDR IN UInt Word - Indirizzo della stazione slave Modbus:
Area di indirizzi standard (1 ... 247)
Area di indirizzi ampliata (0 ... 65535)
Avvertenza: 0 è l'indirizzo Broadcast
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione Modbus_Slave
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 141
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200/1500 300/400/
WinAC
MB_HOLD IN/OUT Variant Any - Puntatore al DB del registro di mantenimento Modbus: il
_REG registro di mantenimento Modbus può essere un'area di
memoria dei merker o un blocco dati.
A partire dalla versione dell’istruzione V4.0:
Il parametro deve puntare a un’area di memoria con una
lunghezza minima di 16 bit. Se la lunghezza è inferiore
viene generato il messaggio di errore 16#8187. Ciò riguar-
da elementi Single, array, STRUCT e UDT. Il messaggio
viene ad es. generato da un Single Bool o da un array costi-
tuito da meno di 16 elementi Bool.
Se la lunghezza non è un multiplo di 16 bit, i bit rimanenti
alla fine dell’area di memoria dell’istruzione Modbus_Slave
non possono essere letti né scritti.
il parametro può puntare a un’area di memoria ottimizzata.
Nell’area di memoria ottimizzata è consentito un elemento
Single o un array con i seguenti tipi di dati: Bool, Byte,
Char, Word, Int, DWord, DInt, Real, USInt, UInt, UDInt, SInt,
WChar. Ogni altro tipo di dati genera il messaggio di errore
16#818C.
NDR OUT Bool 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.
ERROR OUT Bool FALSE Il bit ERROR è TRUE per la durata di un ciclo dopo che l'ul-
tima 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 159))

CM PtP - Configurazioni di accoppiamenti punto a punto


142 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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 S7-1200


Codice Funzione Area dati Area indirizzi Area dati Indirizzo CPU
01 Leggi bit Uscita 0 ... 8191 Immagine di processo delle Q0.0 ... Q1023.7
uscite
02 Leggi bit Ingresso 0 ... 8191 Immagine di processo I0.0 ... I1023.7
degli ingressi
04 Leggi parole Ingresso 0 ... 511 Immagine di processo IW0 ... IW1022
degli ingressi
05 Scrivi bit Uscita 0 ... 8191 Immagine di processo delle Q0.0 ... Q1023.7
uscite
15 Scrivi bit Uscita 0 ... 8191 Immagine di processo delle Q0.0 ... Q1023.7
uscite

Tabella 5- 19 Assegnazione degli indirizzi Modbus all'immagine di processo

Funzioni Modbus S7-1500 / S7-300 / S7-400


Codice di fun- Funzione Area dati Area indirizzi Area dati Indirizzo CPU
zione
01 Leggi bit Uscita 0 ... 9998 Immagine di processo delle Q0.0 ... A1249.6
uscite
02 Leggi bit Ingresso 0 ... 9998 Immagine di processo degli I0.0 ... E1249.6
ingressi
04 Leggi Ingresso 0 ... 9998 Immagine di processo degli IW0 ... IW19996
parole ingressi
05 Scrivi bit Uscita 0 ... 9998 Immagine di processo delle Q0.0 ... A1249.6
uscite
15 Scrivi bit Uscita 0 ... 9998 Immagine di processo delle Q0.0 ... A1249.6
uscite

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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 143
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 Sottofun- Descrizione
zione
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 conta-
tore non viene incrementato per le funzioni 8 e 11 né per le richieste Broadcast. Il conta-
tore 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


144 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Variabili dello slave Modbus nella versione V3.0 dell’istruzione


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 Standard Descrizione


dati
HR_Start_Offset Word 0 Indica l'indirizzo iniziale del registro di mantenimento Modbus (stan-
dard = 0)
QB_Start Word 0 Indirizzo iniziale dell'area di indirizzi editabile ammessa delle uscite
(byte 0 ... 65535)
Nota:
questa variabile non è disponibile per S7-300, S7-400 e WinAC.
QB_Count Word 0xFFFF Numero di byte di uscita editabili tramite il master Modbus.
Nota:
questa variabile non è disponibile per S7-300, S7-400 e WinAC.
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 Mod-
bus_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


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 145
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


146 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 Indirizzo Minimo Massimo


0 Indirizzo Modbus (parola) 0 99
Indirizzo S7-1500 MW100 MW298
20 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.

Versioni dell’istruzione
La versione 4.0 presenta le stesse funzioni della versione 3.0 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 147
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Accesso alle aree dati nei DB al posto dell’accesso diretto agli indirizzi MODBUS a partire dalla
versione V4.0

Accesso alle aree dati nei DB al posto dell’accesso diretto agli indirizzi MODBUS a partire dalla
versione V4.0
A partire dalla versione V4.0 dell’istruzione Modbus_Slave e dalle versioni del firmware V2.5
(CPU S7-1500) e V4.2 (CPU S7-1200), anziché accedere direttamente alle immagini di
processo e ai registri di mantenimento è possibile accedere alle aree dati nei DB. In questo
caso l’attributo "Accesso al blocco ottimizzato" deve essere disattivato per il DB e il DB non
deve trovarsi soltanto nella memoria di caricamento.
Se si riceve una richiesta MODBUS e non è stata definita l'area dati per il tipo di dati MODBUS
del codice di errore corrispondente, la richiesta viene gestita come nelle versioni precedenti
dell'istruzione, ovvero l'istruzione accede direttamente alle immagini di processo e ai registri
di mantenimento.
Se è stata invece definita un’area dati per il tipo di dati MODBUS del codice funzione,
l’istruzione Modbus_Slave legge o scrive i dati in questa area, a seconda del tipo di ordine.
Una singola richiesta MODBUS può leggere e scrivere in una sola area dati. Per poter leggere
o scrivere ad esempio in registri di mantenimento che comprendono più aree dati, si devono
quindi utilizzare più richieste MODBUS.

Regole per la definizione delle aree dati


È possibile definire fino a un massimo di otto aree dati in DB diversi, ciascun DB può
contenere un'unica area dati. Una singola richiesta MODBUS può essere letta soltanto da
un'area dati definita o scrivere soltanto in un'area dati definita Ogni area dati corrisponde a
un'area di indirizzi MODBUS. La definizione viene effettuata nella variabile statica
Data_Area_Array del DB di istanza; Data_Area_Array è un campo costituito da otto elementi.
Se si intende utilizzare meno di otto aree dati, queste ultime devono trovarsi in una sequenza
priva di spazi vuoti. L'ultima casella vuota nell'area dati chiude la ricerca durante
l'elaborazione. Ad esempio, se si definiscono gli elementi 1, 2, 4 e 5 del campo, vengono
rilevati solo gli elementi 1 e 2 perché il 3 è vuoto.
Il campo Data_Area_Array è costituito da 8 elementi: Data_Area_Array[1] …
Data_Area_Array[8]

CM PtP - Configurazioni di accoppiamenti punto a punto


148 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Ogni elemento del campo Data_Area_Array[x], 1 <= x <= 8, è un UDT di tipo MB_DataArea e
ha la seguente struttura:

Parame- Tipo di Significato


tri dati
Data UInt Identificativo del tipo di dati MODBUS rappresentato in questa area dati:
_type
• 0: identificativo degli elementi vuoti ovvero delle aree dati inutilizzate. In questo caso i valori db,
start e length sono irrilevanti.
• 1: immagine di processo delle uscite (utilizzata dai codici funzione 1, 5 e 15)
• 2: immagine di processo degli ingressi (utilizzata dal codice funzione 2)
• 3: registro di mantenimento (utilizzato dai codici funzione 3, 6 e 16)
• 4: registro degli ingressi (utilizzato dal codice funzione 4)
Avvertenza: se è stata definita un'area dati per un tipo di dati MODBUS l'istruzione MB_SERVER non può
più accedervi direttamente. Se l'indirizzo della richiesta MODBUS per il tipo di dati non corrisponde a
un'area dati definita, viene restituito in STATUS il valore W#16#8383.
db UInt Numero del blocco dati in cui vengono rappresentati i registri MODBUS o i bit definiti di seguito.
Il numero DB nelle aree dati deve essere univoco. Il medesimo numero DB non deve essere definito in
più aree dati.
Il DB deve essere un DB con accesso standard e non deve trovarsi solo nella memoria di caricamento.
Le aree dati iniziano sempre con l'indirizzo di byte 0 del DB.
Valori consentiti: 1 ... 60999
start UInt Primo indirizzo MODBUS rappresentato nell'area dati a partire dall'indirizzo 0.0.
Valori consentiti: 0 ... 65535
length UInt Numero di bit (per i valori 1 e 2 di data_type) o numero di registri (per i valori 3 e 4 di data_type).
Le aree degli indirizzi MODBUS che hanno lo stesso tipo di dati MODBUS non devono sovrapporsi.
Valori consentiti: 1 ... 65535

Esempi di definizione delle aree dati


• Primo esempio: data_type = 3, db = 1, start = 10, length = 6
I registri di mantenimento (data_type = 3) vengono rappresentati nel blocco dati 1 (db =
1). L'indirizzo Modbus 10 (start = 10) si trova nella parola di dati 0. L'ultimo indirizzo
Modbus 15 valido (length = 6) si trova nella parola di dati 5.
• Secondo esempio: data_type = 2, db = 15, start = 1700, length = 112
Gli ingressi (data_type = 2) vengono rappresentati nel blocco dati 15 (db = 15). L'indirizzo
Modbus 1700 (start = 1700) si trova nella parola di dati 0. L'ultimo indirizzo Modbus 1811
valido (length = 112) si trova nella parola di dati 111.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 149
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Limitazione dell'accesso in lettura alle immagini di processo a partire dalla versione V4.0

Limitazione dell'accesso in lettura alle immagini di processo


A partire dalla versione V4.0 dell’istruzione Modbus_Slave è possibile definire nell’immagine
di processo degli ingressi e delle uscite un’area accessibile in lettura dai dispositivi MODBUS
remoti. In questo caso i dispositivi MODBUS remoti non possono più accedere agli indirizzi
che si trovano all'esterno delle aree definite.

Nota
Limitazione dell'accesso in scrittura alle immagini di processo
A partire dalla versione V3.0 dell’istruzione è possibile limitare l’accesso in scrittura
all’immagine di processo delle uscite a una determinata area.

Definizione delle aree di lettura delle immagini di processo


Le aree di lettura delle immagini di processo possono essere definite nelle seguenti variabili
statiche del DB di istanza:
• QB_Read_Start: indirizzo del primo byte dell'immagine di processo delle uscite che può
essere letto da un dispositivo MODBUS remoto (vale per il codice 1 della funzione)
• QB_Read_Count: numero dei byte dell'immagine di processo delle uscite che possono
essere letti da un dispositivo MODBUS remoto (vale per il codice 1 della funzione)
• IB_Read_Start: indirizzo del primo byte dell'immagine di processo degli ingressi che può
essere letto da un dispositivo MODBUS remoto (vale per i codici 2 e 4 della funzione)
• IB_Read_Count: numero dei byte dell'immagine di processo degli ingressi che possono
essere letti da un dispositivo MODBUS remoto (vale per i codici 2 e 4 della funzione)

Variabili statiche del DB di istanza per la definizione delle aree di lettura e di scrittura delle immagini di
processo
La seguente tabella descrive le variabili statiche del DB di istanza dell’istruzione Modbus_Slave
sopra descritte con le quali si definiscono le aree di lettura nelle immagini di processo.
Per maggiore completezza sono indicate anche le variabili statiche con le quali, a partire dalla
versione V3.0, si definiscono le aree di scrittura nelle immagini di processo (QB_Start e
QB_Count).

Variabile Tipo di dati Valore di avvio


QB_Start UInt 0
QB_Count UInt 65535
QB_Read_Start UInt 0
QB_Read_Count UInt 65535
IB_Read_Start UInt 0
IB_Read_Count UInt 65535

CM PtP - Configurazioni di accoppiamenti punto a punto


150 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2.6 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 Byte 4 Byte 5


Richiesta Indirizzo Codice Indirizzo iniziale Dati
slave funzione
Risposta valida Indirizzo Codice Lunghezza Dati...
slave funzione
Messaggio di Indirizzo 0xxx Exception
errore slave Code

Tabella 5- 24 Indirizzo slave a due byte (byte 0 e 1)

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Dati
zione
Risposta valida Indirizzo slave Codice fun- Lunghezza Dati...
zione
Messaggio di Indirizzo slave 0xxx Exception
errore Code

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).

Codici funzione con ottimizzazione delle prestazioni


Se l'opzione di ottimizzazione delle prestazioni è attiva, la configurazione dei dati trasmessi è
soggetta a limitazioni: Per ulteriori informazioni sulle limitazioni consultare il capitolo Codici
funzione (Pagina 65).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 151
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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo iniziale Numero di uscite
ne 1
Risposta valida Indirizzo slave Codice funzio- Lunghezza 1) Dati di uscita 3)
ne 1
Messaggio di Indirizzo slave 0x81 Exception code ---
errore 2)

1) Lunghezza: se il numero delle uscite diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2) Codice E: 01 o 02 o 03 o 04
3) I dati di uscita possono comprendere diversi byte

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di uscite
zione 1
Risposta vali- Indirizzo slave Codice fun- Lunghezza 1 Dati di uscita
da zione 1
Messaggio di Indirizzo slave 0x81 Exception ---
errore code 2
1 Lunghezza: se il numero delle uscite diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2 Codice E: 01 o 02 o 03 o 04
3 I dati di uscita possono comprendere diversi byte

CM PtP - Configurazioni di accoppiamenti punto a punto


152 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice funzione 2 - Questa funzione consente di leggere singoli bit di ingresso

Tabella 5- 26 FC 2 - Lettura dei bit di ingresso

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo iniziale Numero degli ingressi
ne 2
Risposta valida Indirizzo slave Codice funzio- Lunghezza 1 Dati di ingresso
ne 2
Messaggio di Indirizzo slave 0x82 Exception code ---
errore 2

1 Lunghezza: se il numero degli ingressi diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero degli ingressi
zione 2
Risposta vali- Indirizzo slave Codice fun- Lunghezza 1 Dati di ingresso
da zione 2
Messaggio di Indirizzo slave 0x82 Exception ---
errore code 2
1 Lunghezza: se il numero degli ingressi diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2 Codice E: 01 o 02 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 153
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice funzione 3 - Questa funzione consente di leggere singoli registri

Tabella 5- 27 FC 3 - Lettura del registro di mantenimento

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo iniziale Numero di registri
ne 3
Risposta valida Indirizzo slave Codice funzio- Lunghezza 1 Dati di registro
ne 3
Messaggio di Indirizzo slave 0x83 Exception code ---
errore 2

1 Lunghezza: numero dei byte


2 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di registri
zione 3
Risposta vali- Indirizzo slave Codice fun- Lunghezza 1 Dati di registro
da zione 3
Messaggio di Indirizzo slave 0x83 Exception ---
errore code 2
1 Lunghezza: numero dei byte
2 Codice E: 01 o 02 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


154 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo iniziale Numero di parole di ingresso
ne 4
Risposta valida Indirizzo slave Codice funzio- Lunghezza 1 Dati di ingresso
ne 4
Messaggio di Indirizzo slave 0x84 Exception code ---
errore 2

1 Lunghezza: 2 * numero di parole di ingresso


2 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di parole di ingres-
zione 4 so
Risposta vali- Indirizzo slave Codice fun- Lunghezza 1 Dati di ingresso
da zione 4
Messaggio di Indirizzo slave 0x84 Exception ---
errore code 2
1 Lunghezza: 2 * numero di parole di ingresso
2 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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo iniziale Valore
ne 5
Risposta valida Indirizzo slave Codice funzio- Lunghezza Valore
ne 5
Messaggio di Indirizzo slave 0x85 Exception code ---
errore 1

1 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Valore
zione 5
Risposta vali- Indirizzo slave Codice fun- Lunghezza Valore
da zione 5
Messaggio di Indirizzo slave 0x85 Exception ---
errore code 1
1 Codice E: 01 o 02 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 155
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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Indirizzo Scheda
ne 6
Risposta valida Indirizzo slave Codice funzio- Indirizzo Scheda
ne 6
Messaggio di Indirizzo slave 0x86 Exception code ---
errore 1

1 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Indirizzo Scheda
zione 6
Risposta vali- Indirizzo slave Codice fun- Indirizzo Scheda
da zione 6
Messaggio di Indirizzo slave 0x86 Exception ---
errore code 1
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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- Codice di diagnostica Valore di test
ne 8
Risposta valida Indirizzo slave Codice funzio- Codice di diagnostica Valore di test
ne 8
Messaggio di Indirizzo slave 0x88 Exception code ---
errore 1

1 Codice E: 01 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- Codice di diagnostica Valore di test
zione 8
Risposta vali- Indirizzo slave Codice fun- Codice di diagnostica Valore di test
da zione 8
Messaggio di Indirizzo slave 0x88 Exception ---
errore code 1
1 Codice E: 01 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


156 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5


Richiesta Indirizzo slave Codice funzio- ---
ne 11
Risposta valida Indirizzo slave Codice funzio- Stato Contatore di eventi
ne 11
Messaggio di Indirizzo slave 0x8B Exception code ---
errore 1

1 Codice E: 01 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6


Richiesta Indirizzo slave Codice fun- ---
zione 11
Risposta vali- Indirizzo slave Codice fun- Stato Contatore di eventi
da zione 11
Messaggio di Indirizzo slave 0x8B Exception ---
errore code 1
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 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte n


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di parole di Contatore Valore
zione 15 uscita di byte 1
Risposta Indirizzo slave Codice fun- Indirizzo iniziale Numero di parole di ---
valida zione 15 uscita
Messaggio di Indirizzo slave 0x8F Excep- ---
errore tion
code 2
1 Contatore di byte: se il numero dei byte diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 Byte n
Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di parole di Contatore Valore
zione 15 uscita di byte 1
Risposta Indirizzo slave Codice fun- Indirizzo iniziale Numero di parole di ---
valida zione 15 uscita
Messaggio di Indirizzo slave 0x8F Exception code 2 ---
errore
1 Contatore di byte: se il numero dei byte diviso per 8 dà un resto è necessario aumentare di 1 il numero dei byte.
2 Codice E: 01 o 02 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 157
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 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte n


Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di registri Contatore Valore
zione 16 di byte 1
Risposta Indirizzo slave Codice fun- Indirizzo iniziale Numero di registri ---
valida zione 16
Messaggio di Indirizzo slave 0x90 Excep- ---
errore tion
code 2
1 Contatore di byte: numero di registri * 2
2 Codice E: 01 o 02 o 03 o 04

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 Byte n
Richiesta Indirizzo slave Codice fun- Indirizzo iniziale Numero di registri Contatore Valore
zione 16 di byte 1
Risposta Indirizzo slave Codice fun- Indirizzo iniziale Numero di registri ---
valida zione 16
Messaggio di Indirizzo slave 0x90 Exception code 2 ---
errore
1 Contatore di byte: numero di registri * 2
2 Codice E: 01 o 02 o 03 o 04

CM PtP - Configurazioni di accoppiamenti punto a punto


158 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.2.7 Messaggi di errore

Panoramica dei messaggi di errore Modbus

Codice di Descrizione Rimedio


errore
16#0000 Nessun errore -
Errore di configurazione dell'interfaccia - Modbus_Comm_Load
16#8181 Il modulo non supporta questa velocità di trasmissione Selezionare una velocità di trasmissione consentita
dati. per il modulo nel parametro BAUD.
16#8182 Il modulo non supporta questa impostazione per la Selezionare un valore adatto per la "Parità" nel para-
parità. metro 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 Selezionare un controllo del flusso dati consentito
flusso dati. 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 rispo-
sta" 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, Recei-
ve_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, Recei-
ve_Config.WRREC.STATUS o WRREC.STATUS e nella
descrizione dell'SFB WRREC.
16#8282 Modulo non disponibile Verificare l'immissione nel parametro PORT e accer-
tarsi che il modulo sia accessibile.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 159
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
Errore di configurazione - Modbus_Slave
16#8186 Indirizzo slave non consentito Selezionare un indirizzo di slave adeguato nel para-
metro 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 Con il modo di funzionamento Broadcast selezionare
(MB_ADDR = 0) e parametro MODE ≠ 1 per
MODE il valore 1 o scegliere un altro modo di funzio-
namento.
16#818C Il puntatore di un'area MB_HOLD_REG deve essere un Selezionare un valore adatto per il puntatore all'area
blocco dati o un'area merker. 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 Recei-
ve_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 Recei-
ve_P2P.WRREC.STATUS e nella descrizione dell'SFB
WRREC.
16#8389 Definizione di settore dati non valida: Controllare la definizione dei settori dati.
• valore non consentito del tipo data_type Vedere il capitolo Accesso alle aree dati nei DB al
posto dell’accesso diretto agli indirizzi MODBUS a
• Numero blocco dati non ammesso o non disponi- partire dalla versione V4.0 (Pagina 148)
bile:
– valore non consentito del blocco dati
– il numero del blocco dati non esiste
– il numero del blocco dati è già utilizzato da un
altro settore dati
– blocco dati con accesso ottimizzato
– il blocco dati non è nella memoria di lavoro
• Valore non consentito di length
• Sovrapposizione delle aree di indirizzi MODBUS
appartenenti allo stesso tipo di dati MODBUS
16#8452 1) MB_HOLD_REG non è un puntatore a un DB o un'area Controllare il puntatore MB_HOLD_REG
merker
16#8453 1) MB_HOLD_REG non è un puntatore del tipo BOOL o Controllare il puntatore MB_HOLD_REG
WORD

CM PtP - Configurazioni di accoppiamenti punto a punto


160 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
16#8454 1) La lunghezza dell'area indirizzata con MB_HOLD_REG Controllare il puntatore MB_HOLD_REG
supera la lunghezza del DB o l'area indirizzata è troppo
piccola per il numero di dati da leggere o scrivere.
16#8455 1) MB_HOLD_REG indica un DB protetto in scrittura Controllare il puntatore MB_HOLD_REG
16#8456 1) Errore di esecuzione dell'istruzione. La causa dell'erro- Determinare il valore del parametro SFCSTATUS.
re si trova nel parametro statico STATUS. Leggerne il significato nella descrizione dell'SFC51,
parametro STATUS.
Errore di configurazione - Modbus_Master
16#8180 Valore non consentito per il parametro MB_DB Il valore parametrizzato nell'istruzione Mod-
bus_Comm_Load per MB_DB (DB dei dati di istanza)
non è consentito.
Controllare l'interconnessione dell'istruzione Mod-
bus_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 Con il modo di funzionamento Broadcast selezionare
(MB_ADDR = 0) e parametro MODE ≠ 1 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 133)
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 133)
nel sistema di informazione
16#818B Valore non consentito per DATA_PTR Selezionare nel parametro DATA_PTR un valore ade-
guato per il puntatore dati (indirizzo M o DB).
Vedere la descrizione Modbus_Master (Pagina 133)
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 supe- Controllare il puntatore DATA_PTR
ra la lunghezza del DB o l'area indirizzata è troppo
piccola per il numero di dati da leggere o scrivere.
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 Recei-
ve_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, Recei-
ve_P2P.WRREC.STATUS o Receive_Reset e nella de-
scrizione dell'SFB WRREC.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 161
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
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 comu-
nicazione o modificare eventualmente la parametriz-
zazione.
16#80D2 "Hardware RTS sempre ON": ordine di trasmissione Controllare il partner di comunicazione. Assicurarsi
interrotto a causa della commutazione da DSR = ON a che DSR sia impostato su ON per l'intera trasmissio-
OFF ne.
16#80E0 Telegramma interrotto: overflow del buffer di trasmis- Richiamare più spesso l'istruzione nel programma
sione / telegramma di trasmissione troppo grande 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 en-
trambi 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 tele- Selezionare una lunghezza del telegramma inferiore
gramma raggiunta per il partner di comunicazione.
Sono consentiti (in funzione del modulo): 1-
1024/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 trami- Verificare l'impostazione di Blocked_Proc_Timeout.
te Blocked_Proc_Timeout. Controllare se il modulo è stato parametrizzato con
l'istruzione Modbus_Comm_Load. Eventualmente,
dopo aver estratto e reinserito il modulo o al ripristi-
no della tensione, è necessario riparametrizzare il
modulo tramite Modbus_Comm_Load.
16#8200 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.
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 è supporta- Controllare il partner della comunicazione e assicu-
to per il Broadcast. rarsi 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 è Selezionare un valore adatto per l'indirizzo dei dati
consentito nel parametro DATA_ADDR.
16#8384 Errore nel valore dei dati non consentito nel tele- Controllare il valore dei dati nel telegramma di richie-
gramma di richiesta sta del master Modbus
16#8385 Il valore di diagnostica non è supportato dallo slave Lo slave Modbus supporta solo i valori di diagnostica
Modbus (codice funzione 08) 16#0000 e 16#000A.

CM PtP - Configurazioni di accoppiamenti punto a punto


162 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
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 mes- Controllare il partner della comunicazione e assicu-
saggio di errore: Il codice funzione non è supportato. rarsi che venga inviato un codice funzione valido.
16#8382 Telegramma di risposta del Modbus Slave con mes- Selezionare una lunghezza dei dati adeguata.
saggio di errore: Lunghezza indicata non consentita
16#8383 Telegramma di risposta del Modbus Slave con mes- Selezionare un valore adatto per l'indirizzo dei dati
saggio di errore: L'indirizzo dei dati nel telegramma di nel parametro DATA_ADDR.
richiesta non è consentito
16#8384 Telegramma di risposta del Modbus Slave con mes- Controllare il telegramma di richiesta inviato allo
saggio di errore: Errore nel valore dei dati slave Modbus.
16#8385 Telegramma di risposta del Modbus Slave con mes- Gli slave Modbus supportano solo i valori di diagno-
saggio 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'indirizzamen-
lo richiesto. to 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 scrit- Controllare il telegramma di risposta dello slave.
tura.
16#8828 1) DATA_PTR indica un indirizzo di bit diverso da n * 8 Controllare il puntatore DATA_PTR
16#8852 1) DATA_PTR non è un puntatore a un DB o un'area mer- Controllare il puntatore DATA_PTR
ker
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
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 Controllare il puntatore MB_HOLD_REG
merker
16#8453 1) MB_HOLD_REG non è un puntatore del tipo BOOL o Controllare il puntatore MB_HOLD_REG
WORD
16#8454 1) La lunghezza dell'area indirizzata con MB_HOLD_REG Controllare il puntatore MB_HOLD_REG
supera la lunghezza del DB o l'area indirizzata è troppo
piccola per il numero di dati da leggere o scrivere.
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
Codici di errore generali
16#8FFF A causa di un reset il modulo non è momentaneamen- Ripetere la richiesta.
te operativo.
1) Solo per le istruzioni per le CPU S7-300/400

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 163
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3 USS

5.4.3.1 Dipendenza tra le versioni della biblioteca


Utilizzare le biblioteche delle istruzioni "USS" e “Punto a punto" solo in una delle seguenti
combinazioni delle versioni:

Versione della biblioteca "USS" Versione della biblioteca “Punto a punto"


V1.3 V1.1
V2.4 V2.4
V3.1 V2.4
V4.3 V3.2
V5.0 V4.0

5.4.3.2 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.
Tipicamente ogni porta RS485 può gestire fino a 16 azionamenti. Alcuni moduli di
comunicazione possono gestire persino fino a 31 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

CM PtP - Configurazioni di accoppiamenti punto a punto


164 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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.

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, 05/2021, A5E37509396-AE 165
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.3 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


166 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

• Le istruzioni USS_Write_Param 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.

Nota
Valore di identificazione parametro
Per gli azionamenti è necessario configurare l'utilizzo di 4 parole PKW (valore di
identificazione parametro).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 167
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 Numero di azionamenti in questa rete


Fattore 5 Per la trasmissione e la ricezione di telegrammi in genere sono neces-
sari 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 tele-
del 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 viene
ma di ricezione max. ricevuta una risposta incompleta e il controllo di MSGTIME è termina-
to 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 25 29 33 56 72 100 100 100
.RCVTIME
Receive_Conditions.END 25 29 33 56 72 124 240 460
.MSGTIME

CM PtP - Configurazioni di accoppiamenti punto a punto


168 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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) + ((1*28*11)/9600) + 0,072 + 0,072) * (2+1) = 4,14
(secondi)
Il controllo del tempo dell'azionamento, in questo caso, deve essere impostato su 4 secondi
ca.

Nota
Opzione per l'ottimizzazione delle prestazioni
Quando questa opzione è attiva, il ciclo dell'OB (Send_P2P e Receive_P2P), la lunghezza dei
telegrammi e il baudrate sono determinanti per il tempo massimo tra due telegrammi di
trasmissione.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 169
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.4 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


170 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri

Parametri Dichiara- Tipo di dati Standard Descrizione


zione S7- S7-
1200/1500 300/400/
WinAC
PORT IN Port Word 0 Specifica il modulo dal quale si svolge la comunicazione:
• Per S7-1500/S7-1200: "ID hardware" della configura-
zione 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 confi-
gurazione dispositivi.
Nei sistemi S7-300/400/WinAC, l'indirizzo di ingresso
assegnato in HWCN viene assegnato al parametro
PORT.
BAUD IN DInt 9600 Velocità di trasmissione della comunicazione USS
Sono consentiti:
• 1200 bit/s
• 2400 bit/s
• 4800 bit/s
• 9600 bit/s
• 19200 bit/s
• 38400 bit/s
• 57600 bit/s
• 115200 bit/s
USS_DB INOUT USS_BASE – Il parametro USS_DB deve essere collegato con il parame-
tro (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 program-
ma.
COM_RST INOUT --- Bool 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.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.
ERROR OUT Bool FALSE Se TRUE, l'uscita indica che si è verificato un errore e l'usci-
ta 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 188)).

È 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 171
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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 166) 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 .

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 Standard Descrizione


dati
MODE USInt 4 Modo di funzionamento
I modi di funzionamento consentiti sono:
• 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)
LINE_PRE USInt 2 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 trasmis-
sione attiva). Questa preimpostazione non consente il riconoscimento
Break.
BRK_DET USInt 0 Attiva allarme di diagnostica:
• 0 - non attivato
• 1 - attivato
RETRIES_MAX SInt/Byte 2 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'inter-
vallo di tempo impostato.

CM PtP - Configurazioni di accoppiamenti punto a punto


172 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Variabile Tipo di Standard Descrizione


dati
EN_DIAG_ALARM Bool 0 Attiva allarme di diagnostica:
• 0 - non attivato
• 1 - attivato
EN_SUPPLY_VOLT Bool 0 Attivazione della diagnostica Tensione di alimentazione mancante L+
• 0 - non attivato
• 1 - attivato

1) Impostazione necessaria per l'uso di cavi PROFIBUS in CM 1241 per RS485

La versione 2.5 presenta le stesse funzioni della versione 2.4 ed è stata incrementata in
ragione di misure interne.

Versioni dell’istruzione
USS_Port_Scan:
La versione 2.5 presenta le stesse funzioni della versione 2.4 ed è stata incrementata in
ragione di misure interne.
USS_Port_Scan_31:
La versione 1.2 presenta le stesse funzioni della versione 1.1 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 173
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.5 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.

CM PtP - Configurazioni di accoppiamenti punto a punto


174 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 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 du-
rante il funzionamento dell'azionamento, il motore decele-
ra 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.
F_ACK IN Bool FALSE Bit di conferma errori: con questo bit si resetta il bit di erro-
re di un azionamento. Il bit viene impostato dopo l'elimina-
zione 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'a-
zionamento 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'azionamen-
to 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 parame-
tro 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 parame-
tro 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 parame-
tro 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 parame-
tro 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 parame-
tro 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 parame-
tro dell'azionamento configurabile dall'utente. Deve essere
configurato nell'azionamento (parametro opzionale).

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 175
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 WinAC
COM_RST IN/OUT --- Bool FALSE Inizializzazione dell'istruzione USS_Drive_Control /
USS_Drive_Control_31
Con TRUE l'istruzione viene inizializzata. In seguito
COM_RST viene reimpostato a FALSE dall'istruzione.
Nota:
questo parametro è disponibile solo per le istruzioni S7-
300/400.
NDR OUT Bool FALSE Nuovi dati disponibili: se questo parametro è TRUE il bit
segnala che nell'uscita sono pronti i dati di una nuova ri-
chiesta di comunicazione.
ERROR OUT Bool FALSE Si è verificato un errore: Se TRUE, significa che si è verifica-
to 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 188)).
RUN_EN OUT Bool FALSE Funzionamento abilitato: questo bit indica se l'azionamen-
to è in funzione.
D_DIR OUT Bool FALSE Direzione dell'azionamento: questo bit indica se l'aziona-
mento funziona in avanti.
• FALSE – in avanti
• TRUE – all'indietro
INHIBIT OUT Bool FALSE 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 (va-
lore 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'azionamen-
to configurabile dall'utente.
STATUS4 OUT Word 0 STATUS 4 dell'azionamento
Questo valore contiene una parola di stato dell'azionamen-
to configurabile dall'utente.

CM PtP - Configurazioni di accoppiamenti punto a punto


176 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 WinAC
STATUS5 OUT Word 0 STATUS 5 dell'azionamento
Questo valore contiene una parola di stato dell'azionamen-
to configurabile dall'utente.
STATUS6 OUT Word 0 STATUS 6 dell'azionamento
Questo valore contiene una parola di stato dell'azionamen-
to configurabile dall'utente.
STATUS7 OUT Word 0 STATUS 7 dell'azionamento
Questo valore contiene una parola di stato dell'azionamen-
to configurabile dall'utente.
STATUS8 OUT Word 0 STATUS 8 dell'azionamento
Questo valore contiene una parola di stato dell'azionamen-
to 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, 05/2021, A5E37509396-AE 177
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 Standard Descrizione


dati
USS_DB. W Word 16#0 USS Drive Extended Error Code - valore specifico dell'azionamento
_USSExtended- Il significato del messaggio di errore dipende da quale istruzione preceden-
Error temente ha segnalato un errore (ERROR = TRUE). Si distinguono i casi seguen-
ti:
• 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.

Versioni dell’istruzione
USS_Drive_Control:
La versione 2.0 presenta le stesse funzioni della versione 1.2 ed è stata incrementata in
ragione di misure interne.
USS_Drive_Control_31:
La versione 2.0 presenta le stesse funzioni della versione 1.0 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


178 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.6 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 Dichiara- Tipo di dati Standard Descrizione


zione S7- S7-
1200 300/400/
/1500 WinAC
REQ IN Bool – Con un fronte di salita in REQ viene impostata una nuova
richiesta di lettura.
DRIVE IN USInt Byte – Indirizzo dell'azionamento: DRIVE è l'indirizzo dell'aziona-
mento USS. Il campo valido è compreso tra l'azionamento
1 e l'azionamento 16.
PARAM IN UInt – Numero del parametro: PARAM indica quale parametro
dell'azionamento viene scritto. Il campo per questo para-
metro è 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 mag-
giore consultare il manuale dell'azionamento.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 179
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione S7- S7-
1200 300/400/
/1500 WinAC
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 con-
sultare il manuale dell'azionamento.
USS_DB INOUT USS_BASE – Il parametro USS_DB deve essere collegato con il parame-
tro (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 program-
ma.
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 rispo-
sta 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 impo-
state 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.
STATUS OUT UInt 0 Codice di errore (vedere Messaggi di errore (Pagina 188)).
VALUE OUT Variant Any – È il valore del parametro letto ed è valido solo se il bit
(Word, Int, (Word, DONE è TRUE.
UInt, Int,
DWord, DWord,
DInt, DInt, Real)
UDInt,
Real)
1 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 utiliz-
zabile 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.

Versioni dell’istruzione
USS_Read_Param:
La versione 1.5 presenta le stesse funzioni della versione 1.4 ed è stata incrementata in
ragione di misure interne.
USS_Read_Param_31:
La versione 1.1 presenta le stesse funzioni della versione 1.0 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


180 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.7 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, 05/2021, A5E37509396-AE 181
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri

Tabella 5- 38 Tipi di dati per i parametri

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 WinAC
REQ IN Bool – Con un fronte di salita in REQ viene impostata una nuova
richiesta di scrittura.
DRIVE IN USInt Byte – Indirizzo dell'azionamento: DRIVE è l'indirizzo dell'aziona-
mento USS. Il campo valido è compreso tra l'azionamento
1 e l'azionamento 16.
PARAM IN UInt – Numero del parametro: PARAM indica quale parametro
dell'azionamento viene scritto. Il campo per questo para-
metro è 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 mag-
giore 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 con-
sultare 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 suc-
cessiva inserzione dell'azionamento.
VALUE IN Variant Any – Valore del parametro nel quale scrivere. Deve essere valido
(Word, Int, (Word, Int, in caso di fronte di salita di REQ.
UInt, DWord,
DWord, DInt, Real)
DInt,
UDInt,
Real)
USS_DB INOUT USS_BASE – Il parametro USS_DB deve essere collegato con il parame-
tro (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 program-
ma.
DONE1 OUT Bool 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 rispo-
sta di scrittura dell'azionamento. Questo bit viene resetta-
to al successivo richiamo di USS_Write_Param /
USS_Write_Param_31.

CM PtP - Configurazioni di accoppiamenti punto a punto


182 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Parametri Dichiara- Tipo di dati Standard Descrizione


zione
S7- S7-
1200 300/400/
/1500 WinAC
ERROR OUT Bool 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 .
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 UInt 0 Codice di errore (vedere Messaggi di errore (Pagina 188)).
1 Il bit DONE indica che dei dati validi sono stati letti dall'azionamento motore indirizzato e forniti alla CPU. Ciò non signifi-
ca 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 de-
ve 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.

Versioni dell’istruzione
USS_Write_Param:
La versione 1.6 presenta le stesse funzioni della versione 1.5 ed è stata incrementata in
ragione di misure interne.
USS_Write_Param_31:
La versione 1.1 presenta le stesse funzioni della versione 1.0 ed è stata incrementata in
ragione di misure interne.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 183
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.8 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


184 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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

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

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 185
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

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) G120C 2)
1 Eseguire la messa in servizio di base dell'azionamento con il pannello operatore Cap. 4.4.3 Cap. 6.4.1
BOP-2.
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 Cap. 6.2.2.1 Cap. 8.4.2.1
G120(C), definire l'indirizzo USS del convertitore.
• 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 Cap. 4.4.2 Cap. 6.4.2
parametri, selezionando i numeri degli stessi e modificando i relativi valori.
3 Adeguare alla propria applicazione i seguenti parametri del convertitore riferiti Cap. 6.2.2.2 Cap. 8.4.2.1
alla comunicazione:
• Velocità di trasmissione dati (p2020), se ≠ 38400 bit/s
(accertare la corrispondenza con il parametro BAUD dell'istruzione di comu-
nicazione 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 "variabi-
le" (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
4 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.)

CM PtP - Configurazioni di accoppiamenti punto a punto


186 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Fase Istruzione Istruzioni operative


G120 1) G120C 2)
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, 05/2021, A5E37509396-AE 187
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

5.4.3.9 Messaggi di errore

Panoramica dei messaggi di errore USS

Codice di Descrizione Rimedio


errore
16#0000 Nessun errore -
16#8180 Lunghezza errata nella risposta dell'azionamento Controllare il telegramma di risposta dell'azionamen-
to.
16#8181 Errore di tipo di dati Verificare il parametro VALUE.
Errore del numero del parametro Campo di valori consentito del parametro PARAM: 0
... 2047
16#8182 Errore di tipo di dati: la richiesta "Parola" non deve Controllare il telegramma di risposta dell'azionamen-
essere confermata da "Doppia parola" o "Real". to.
16#8183 Errore di tipo di dati: la richiesta "Doppia parola" o Controllare il telegramma di risposta dell'azionamen-
"Real" non deve essere confermata da "Parola". to.
16#8184 Errore della somma di controllo nella risposta dell'a- Verificare l'azionamento e il collegamento di comu-
zionamento nicazione.
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'azionamen-
to.
16#8188 Lunghezza PZD non consentita Lunghezze PZD consentite: 2, 4, 6, 8 parole
16#8189 Il modulo non supporta questa velocità di trasmissione Selezionare una velocità di trasmissione consentita
dati. per il modulo.
16#818A Al momento è attiva un'altra richiesta per questo Ripetere l'ordine di lettura o scrittura dei parametri in
azionamento. 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'azionamen-
con un messaggio di errore. to.
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'azionamen-
segnalando un errore di accesso. to.
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


188 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Programmazione - comunicazione tramite istruzioni
5.4 Istruzioni

Codice di Descrizione Rimedio


errore
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 Recei-
ve_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 Recei-
ve_Config.WRREC.STATUS o
Send_P2P.RDREC.STATUS o Recei-
ve_P2P.RDREC.STATUS e nella descrizione dell'SFB
WRREC.
Codici di errore generali
16#8FFF A causa di un reset il modulo non è momentaneamen- Ripetere la richiesta.
te operativo.
1) Solo per le istruzioni per le CPU S7-300/400

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 189
Avviamento e diagnostica 6
6.1 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.
I telegrammi continuano a essere ricevuti. Maggiori informazioni vengono
inoltrate alla CPU solo dopo il passaggio da STOP a RUN, sempre che la
cancellazione del buffer di ricezione sia disattivata.
CPU in RUN Lo stato RUN della CPU consente il funzionamento di trasmissione e rice-
zione.
Con la parametrizzazione opportuna nella finestra delle proprietà del
modulo di comunicazione è possibile cancellare automaticamente il buf-
fer 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 visualiz- Gli elementi di visualizzazione forniscono informazioni sullo stato di funziona-
zazione del modulo di comunicazione mento 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 consul-
tare il manuale del modulo di comunicazione.
Diagnostica tramite uscita STATUS delle Per la diagnostica degli errori le istruzioni dispongono di un'uscita STATUS che
istruzioni fornisce informazioni sugli errori di comunicazione tra modulo di comunicazione
e CPU. Il parametro STATUS (Pagina 116) 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


190 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Avviamento e diagnostica
6.3 Allarmi di diagnostica

6.3 Allarmi di diagnostica


I messaggi di diagnostica vengono visualizzati con testo esteso nella vista Online Diagnostica
di STEP 7 (TIA Portal) I codici di errore possono essere analizzati con il programma utente.
Si possono segnalare le seguenti diagnostiche:
• Errore (9H)
• Errore di parametrizzazione (10H)
• Rottura conduttore (109H)

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 191
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


192 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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 ragionevole che viene usata nel caso in
cui non si sono effettuate impostazioni di valori diversi.

Modulo di comunicazione
I moduli di comunicazione sono unità per accoppiamenti punto a punto e accoppiamenti 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.

Opzione per le prestazioni


A partire dalla versione V2.0 del firmware dei moduli di comunicazione è disponibile
un'opzione di ottimizzazione delle prestazioni. L'opzione è utile se si trasmettono e si
ricevono solamente telegrammi brevi con più moduli di comunicazione. Limitazione della
lunghezza a 24 byte per i telegrammi di ricezione e a 30 byte per quelli di trasmissione. Il
tempo di reazione viene ottimizzato in particolare se si utilizzano più CM PtP parallelamente.

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à.

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 193
Glossario

Parametrizzazione
Per parametrizzazione si intende l’impostazione del comportamento di un'unità.

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


194 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
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, 05/2021, A5E37509396-AE 195
Indice analitico
Comunicazione PtP
Programmazione, 80
3 Comunicazione USS, 68
Configurazione dei parametri
3964(R)
LENGH e BUFFER per Send_P2P, 104
Invio di dati, 56
Configurazione del telegramma
Ricezione di dati, 58
Istruzioni, 81
Configurazione interfaccia
Istruzioni, 81
A
Controllo del flusso dati, 16, 27, 35
Accoppiamento punto a punto, 18 Hardware, 36
Architettura di interrogazione, 83 Software, 35
Architettura di interrogazione master, 83 Controllo del flusso dati del software, 35
Architettura di interrogazione slave, 83 Controllo del flusso dati dell'hardware, 36
Avvio della trasmissione dati, 101 CPU in RUN, 190
CRC, 63
CTS, 27
B
BCC, 55
D
Biblioteca globale
Panoramica del protocollo USS, 164 DCD, 27
Biblioteca per il protocollo USS Diagnostica, 190
Informazioni generali sulla configurazione di un Dimensioni del buffer di ricezione, 16
azionamento, 184 DLE, 55
Panoramica, 164 DMX512, 52
Presupposti per l'utilizzo, 166 DSR, 27
USS_Drive_Control / USS_Drive_Control_31, 174 DTR, 27
USS_Port_Scan, 170
USS_Port_Scan_31, 170
USS_Read_Param / USS_Read_Param_31, 179 E
USS_Write_Param / USS_Write_Param_31, 181
Errori dei parametri PtP comuni, 86
Broadcast, 62
ETX, 55
Buffer di ricezione, 51

F
C
Freeport, 73, 73
Carattere di controllo blocco, 56
Buffer di ricezione, 51
Carattere iniziale, 46
Criteri finali, 47
Cavi con connettore, 27, 30, 33
Criteri iniziali, 46
Classi di errore PtP, 86
Fine del messaggio, 44
Commutazioni nei vari stati di funzionamento, 190
Inizio del messaggio, 44
Comunicazione
Trasparenza di codice, 51
Architettura di interrogazione, 83
Comunicazione bidirezionale, 22
Comunicazione di dati aciclica, 19, 80
Comunicazione di dati ciclica, 19, 80
Comunicazione Modbus, 61

CM PtP - Configurazioni di accoppiamenti punto a punto


196 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE
Indice analitico

Funzionamento duplex, 22 L
Funzionamento RS232, 26
Line Break, 46
Funzionamento RS422, 29
Lunghezza fissa del telegramma, 47
Funzionamento RS485, 32
Lunghezza nel messaggio, 47
Funzionamento semiduplex, 22
Funzioni di diagnostica, 190
M
G Master USS
Panoramica funzioni, 71
Gestione automatica dei segnali addizionali, 38
Protocollo USS, 68
Get_Features, 20, 74
Protocollo USS: Campo dati,
Protocollo USS: cifratura dei dati,
Protocollo USS: procedura di trasmissione dei dati,
H
Protocollo USS: struttura del telegramma,
Hardware RTS sempre attivato, 38 Modbus
Hardware RTS sempre ON, 37 Exception Code, 63
Hardware RTS sempre ON, ignora DTR/DSR, 37 Fine del telegramma, 63
Modbus_Comm_Load, 129
Modbus_Slave, 133, 141
I Segnali RS232, 38
Modbus_Comm_Load, 21, 75, 129
Idle Line, 46
Modbus_Master, 21, 75
Interfacce, 15
Modbus_Slave, 21, 75, 133, 141
Interfacce di comunicazione
Modulo di comunicazione (CM)
Programmazione, 80
Programmazione, 80
Interfaccia
Ricezione dei dati, 105
X27 (RS 485), 33
X27 (RS422), 30
Interfaccia X27 (RS 485), 33
N
Interfaccia X27 (RS422), 30
Invio di dati, 73 NAK, 55
Istruzioni Numeri di ordinazione, 14
P3964_Config (configurazione del protocollo), 99 Numero massimo di caratteri, 47
Port_Config (configurazione della porta), 87
Receive_Config (configurazione della ricezione), 93
Receive_P2P (ricezione dei dati punto a punto), 105 O
Receive_Reset (reset del destinatario), 108
Opzione per le prestazioni, 41, 80, 102, 106
Send_Config (configurazione della trasmissione), 91
Ottimizzazione delle prestazioni, 41
Send_P2P (invio di dati punto a punto), 101
Signal_Get (richiamo dei segnali RS232), 109
Signal_Set (impostazione dei segnali RS232), 111
P
USS_Drive_Control / USS_Drive_Control_31, 174
USS_Port_Scan, 170 P3964_Config, 20
USS_Port_Scan_31, 170 P3964_Config (configurazione del protocollo), 99
USS_Read_Param / USS_Read_Param_31, 179 Parametro BUFFER, Send_P2P, 104
USS_Write_Param / USS_Write_Param_31, 181 Parametro LENGTH, Send_P2P, 104
Istruzioni Modbus, 75 Port_Config, 20, 74
Istruzioni PtP, 73 Port_Config (configurazione della porta), 87
Istruzioni USS, 78 Preimpostazione della linea di ricezione, 29
Procedimento di conferma, 35

CM PtP - Configurazioni di accoppiamenti punto a punto


Manuale di guida alle funzioni, 05/2021, A5E37509396-AE 197
Indice analitico

Procedura 3964(R), 55 Sicurezza di trasmissione, 23


Carattere di controllo, 55 con 3964(R), 24
Priorità, 55 con Freeport, 24
Procedura 3964R Con Modbus e USS, 25
Carattere di controllo blocco, 56 Signal_Get, 20, 74
Programmazione Signal_Get (richiamo dei segnali RS232), 109
Istruzioni PtP, 80 Signal_Set, 20, 74
Modbus, 75 Signal_Set (impostazione dei segnali RS232), 111
PtP, 72 STOP della CPU, 190
USS, 77 Struttura del telegramma, 62
Programmazione punto a punto, 80 STX, 55
Protocolli dei moduli di comunicazione, 17
Protocollo ASCII, 44
Protocollo Freeport, 44 T
Protocollo USS
Tempo di ritardo del carattere, 47
Struttura generale del blocco dati:area dati di
Tempo di ritardo del carattere ZVZ, 63
processo (PZD), 70
Time out dei messaggi, 47
Struttura generale del blocco dati:area parametri
Time out di risposta, 47
(PKW), 70
Trasmissione dati, 22
Trasmissione di dati seriale, 22
Trasparenza di codice, 51
R
Receive_Config, 20, 74
Receive_Config (configurazione della ricezione), 93 U
Receive_P2P, 20, 73
Universal, 41, 80, 102, 106
Receive_P2P (ricezione dei dati punto a punto), 105
USS_Drive_Control, 21, 78, 165
Receive_Reset, 20, 74
USS_Drive_Control / USS_Drive_Control_31, 174
Receive_Reset, 20, 74
USS_Port_Scan, 21, 78, 165, 170
Receive_Reset (reset del destinatario), 108
USS_Port_Scan_31, 170
RI, 27
USS_Read_Param, 21, 78, 165
Ricezione di dati, 73
USS_Read_Param / USS_Read_Param_31, 179
RTS, 27
USS_Write_Param, 21, 78, 165
USS_Write_Param / USS_Write_Param_31, 181
S
Scambio dati uni/bidirezionale, 27 V
Segnali addizionali, 16
Valori di ritorno
Segnali addizionali dell'RS232
Istruzioni PtP, 85
Gestione automatica, 38
Valori di ritorno del runtime in ricezione, 105
Segnali RS232, 26
Valori di ritorno delle istruzioni PtP, 85
Segnali RS422, 30, 32
Velocità di trasmissione, 16
Send_Config, 20, 74
Voce principale, 74
Send_Config (configurazione della trasmissione), 91
Send_P2P, 20, 73
Send_P2P (invio di dati punto a punto)
X
Parametri LENGH e BUFFER, 104
Send_P2P (invio di dati punto a punto), 101 XON/XOFF, 35
Sequenza di fine, 47
Sequenze di inizio, 46
Set_Features, 20, 74

CM PtP - Configurazioni di accoppiamenti punto a punto


198 Manuale di guida alle funzioni, 05/2021, A5E37509396-AE

Potrebbero piacerti anche