|
Descrizione
Con il controllore S7-1200 è possibile ricevere normali frame GPS del tipo di dati RMC secondo lo standard NMEA-0183. I frame GPS sono ricevuti con un mouse GPS sull'interfaccia RS 232 del modulo di comunicazione CM1241 RS232 di S7-1200.
Il blocco funzionale "gps_rcv" contenuto nella libreria allegata fornisce, se attivato, l'ora UTC attuale e la data sotto forma di una variabile dati DTL e aggiorna l'ora del sistema. Con il blocco funzionale "gps_rcv" la configurazione hardware viene preimpostata con i parametri indicati nella tabella 01. Non è necessaria nessun'altra configurazione della porta del modulo di comunicazione CM1241 RS232 dell'S7-1200.
Il blocco funzionale "gps_rcv" viene elaborato in un ciclo della CPU. Le informazioni aggiornate su ora e data sono disponibili solo nel ciclo di valutazione. La denominazione delle variabili DTL è riportata nella tabella 05.
Parametri di comunicazione
Il blocco funzionale "gps_rcv" è progettato per un normale ricevitore GPS secondo lo standard NMEA 0183. Le specifiche sono le seguenti:
|
Parametro |
Impostazione |
Nota |
| Baudrate |
38400 bit |
Non sono stati testati altri baudrate, poiché il ricevitore GPS utilizzato dispone di un solo baudrate. |
| Parità |
Nessuna |
- |
| Bit dati |
8 bit |
8 bit per carattere |
| Stop bit |
1 |
- |
| Controllo flusso |
Nessuno |
- |
Tabella 01
Hardware setup
Per questo esempio è stato utilizzato un NAVILOCK NL-403P con cavo di collegamento Navilock (MD6 su RS232).

Figura 01
Preparazione della configurazione hardware nell'S7-1200
| N. |
Preparazione della configurazione hardware nell'S7-1200 |
| 1. |
Collegare il ricevitore GPS a S7-1200
Procedere come descritto di seguito.
- Dotare l'S7-1200 di un modulo di comunicazione del tipo CM 1241 RS232.
- Collegare il ricevitore GPS al modulo di comunicazione.
Avvertenza
Questo ricevitore GPS standard richiede un'alimentazione a corrente continua di 5 V poiché non viene alimentato dal modulo di comunicazione. Pertanto è necessario un alimentatore 5V DC supplementare (ad es. LOGO! POWER 5V DC/3A). |
| 2. |
Aggiungere il modulo di comunicazione per la "configurazione apparecchi"
Procedere come descritto di seguito.
- Fare clic su "Device configuration" nella struttura ad albero del progetto. Selezionare la scheda "Device view".
- Con drag & drop trascinare il "Communication module" > "RS232" da "Hardware catalog" in "Device view". Considerare che in "Device view" il lato sinistro della tabella dell'S7-1200 probabilmente dovrà essere ingrandito.

Figura 02
|
Tabella 02
Sincronizzazione di ora del sistema e data dell'S7-1200 Vedere il progetto esemplificativo nel file zip allegato "gps_rcv_proj.zip".
| N. |
Sincronizzazione di ora del sistema e data dell'S7-1200 |
| 1. |
Caricare e aprire la libreria globale dell'S7-1200 "gps_rcv"
Procedere come descritto di seguito.
- Scaricare, decomprimere e aprire la libreria globale dell'S7-1200 "gps_rcv.zip".
- Fare clic sul pulsante "Open global library" per aprire la libreria.

Figura 03
|
| 2. |
Collegare il blocco funzionale "gps_rcv"
Procedere come descritto di seguito.
- Con drag & drop trascinare il blocco funzionale "gps_rcv" in una rete richiamata ciclicamente.
- Collegare ingressi e uscite del blocco funzionale "gps_rcv" come descritto nella tabella 04.

Figura 04
|
| 3. |
Avvertenza
- La variabile DTL non contiene alcun valore per il giorno della settimana ("Day of week").
- L'ora UTC fornita dal telegramma GPS RMC non supporta alcun dato in nanosecondi ma solo in millisecondi.
|
Tabella 03
Collegamenti del blocco funzionale "gps_rcv"
| Collegamento |
Tipo di dati |
Nota |
cmd_get_
time_n_date |
BOOL |
L'analisi di un telegramma GPS RMC viene attivata da un fronte di salita.
Nel programma esemplificativo ciò viene attivato tramite bit del merker di clock ad intervalli regolari.
In "Device configuration" dell'S7-1200 aprire la scheda "Properties" e selezionare "System and clock memory". Selezionare la casella per attivare l'uso del byte del merker di clock. Indicare un indirizzo per il byte del merker di clock. In questo esempio il bit del merker 0,5 Hz ha l'indirizzo M10.7.

Figura 05 |
| cmd_hw_id |
PORT |
Indicare qui l'ID hardware del modulo di comunicazione. L'ID hardware è riportato in "Device configuration" > "Properties of CM1241" > "IO addresses/HW identifier".

Figura 06
|
| return_done |
BOOL |
Opzionale; questa variabile viene impostata su "true" nel ciclo in cui vengono aggiornate le informazioni su data e ora. |
| return_aborted |
BOOL |
Opzionale; questa variabile viene impostata su "true" nel ciclo in cui la sincronizzazione di data e ora non è riuscita. |
Tabella 04
Variabili contenenti ora e data
| Variabile |
Tipo di dati |
Nota |
| "gps_rcv_DB.gps_time_n_date" |
DTL |
Questa variabile contiene l'ora UTC attuale, ricevuta tramite GPS. |
Tabella 05
Ambiente di sistema
- S7-1200
- Modulo di comunicazione CM1241 RS232
- Cavo Ethernet
- PG / PC
- STEP 7 Basic V10.5 / STEP 7 Basic V11.0
- Ricevitore GPS tipo NAVILOCK NL-403P
- Cavo di collegamento per il ricevitore GPS NAVILOCK (MD6 su RS 232)
Download
| Software |
Libreria |
Esempio di progetto |
Nota |
| STEP 7 Basic V10.5 |
gps_rcv.zip ( 797 KB ) |
gps_rcv_proj.zip ( 2682 KB ) |
|
| STEP 7 Basic V11.0 |
gps_rcv_V11.zip |
gps_rcv_proj_V11.zip ( 2642 KB ) |
Le variabili di posizione (longitudine e latitudine) sono definite come parametri d'uscita del tipo di dati numero in virgola mobile a 32 e 64 bit di FB175 "gps_rcv". |
Tabella 06
|