ESEMPIo 1

All'ingresso contaimpulsi 1 è collegato un flussometro che rende 4600 impulsi per litro.

Nella memoria variabile 1 inseriamo l'espressione che ci permette di trasformare gli impulsi acquisiti nel periodo (di 1 minuto) in litri:

V12=$P13/4600.0

MEMORIA VARIABILE 1 ESPRESSIONE = CONTAIMPULSI 1 NEL PERIODO / 4600.0

Nella memoria variabile 2 inseriamo l'espressione che ci permette di trasformare gli impulsi totali in litri:

V22=$P12/4600.0

MEMORIA VARIABILE 2 ESPRESSIONE = CONTAIMPULSI 1 TOTALI / 4600.0

Alla chiamata entrante di un utente attivo chiudiamo la chiamata senza rispondere e componiamo un messaggio SMS contenente i dati di portata corrente e consumo totale da inviare in risposta al numero di telefono dell'ultimo chiamante.


CAE CHIAMATA ENTRANTE DA UTENTE ABILITATO






ATH

AT+SMS=$N20,"$V11 l/min - $V21 litri totali"




evento trigger è la ricezione di una chiamata telefonica da utente attivo.

Non inseriamo alcuna condizione.

La prima azione contiene il comando che chiude la chiamata.

La seconda azione contiene il comando che invia un messaggio SMS al numero dell'ultimo chiamante (richiamato con la TAG $N20) con il testo:
TAG $V11 ovvero il valore dell'espressione 1
TAG $V21 ovvero il valore dell'espressione 2
Il testo sarà qualcosa di simile:
3.99 l/min - 424.22 litri totali

ESEMPIo 2

All'ingresso contaimpulsi 1 è collegato un flussometro che rende 4600 impulsi per litro.

Nella memoria variabile 2 inseriamo l'espressione che ci permette di trasformare gli impulsi totali in litri:

V22=$P12/4600.0

MEMORIA VARIABILE 2 ESPRESSIONE = CONTAIMPULSI 1 TOTALI / 4600.0

Abbiamo venduto 10000 litri di acqua ad un agricoltore quindi raggiunta la quantità acquistata dal cliente disattiviamo l'uscita 2 alla quale è collegata una valvola di intercettazione.


V2 VARIABILE MEMORIA 2

$V21>10000 VARIABILE MEMORIA 2 VALORE > 99999





out2=0





evento trigger è il cambio di valore della variabile 2.

La prima condizione da verificare è che la quantità erogata di acqua definita in litri nella variabile 2  sia superiore a 99999.

La prima azione spegne l'uscita 2.

NOTA TECNICA

Il valore degli impulsi totali conteggiati è reso disponibile alla fine del periodo
 di misura, anche impostandolo al minimo (1 minuto) la valvola sarà chiusa
con un certo ritardo durante il quale l'acqua continuerà ad essere erogata.


ESEMPIo 3

Alla porta COM è collegata una macchina che invia periodicamente una stringa contenente dati sul tempo di lavoro delle componenti per assicurare una manutenzione preventiva: SPINDLE:354


var1=$D19#:2

MEMORIA VARIABILE 1 ESPRESSIONE = 

SECONDA PARTE DELL'ULTIMO TESTO DA CONSOLE DIVISO DAL SEPARATORE ':'


Vogliamo estrarre il dato numerico dalla stringa e salvarlo nel valore della variabile 1 per inviare un messaggio SMS al raggiungimento del tempo limite di utilizzo pari a 500 ore.


SCH**00 ORA SPECIFICA **:00

$V11}500 VARIABILE MEMORIA 1 VALORE } 500





AT+SMS=tecnico,"manutenzione richiesta: $V11 ore"





Ogni ora al minuto 00 (**00) si verifica l'evento trigger.

La prima condizione da verificare è che il valore della variabile V1 abbia superato 500. Utilizziamo l'operatore di soglia } perché vogliamo che questa condizione si verifichi solo la prima volta e non ripetura ad ogni ora successiva, come avverrebbe utilizzando l'operatore di comparazione >.

La prima azione contiene il comando che invia a tutti gli utenti appartenenti al gruppo tecnico un messaggio simile a:
manutenzione richiesta: 500 ore