Gestione di chiamate telefoniche ed invio di SMS
Home › Forum › Programmazione IEC 61131 (LogicLab) › Gestione di chiamate telefoniche ed invio di SMS
- Questo topic ha 8 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 2 mesi fa da
Sergio Bertana.
-
AutorePost
-
Aprile 16, 2012 alle 2:24 pm #35200
Roberto
PartecipanteHo visto il blocco funzione per la gestione degli SMS ma avevo una ulteriore necessità. Oltre ad inviare degli SMS dovrei eseguire una chiamata telefonica.
Esiste la possibilità di farlo con qualche FB dedicata ?
Aprile 16, 2012 alle 2:33 pm #37209Sergio Bertana
Amministratore del forumLa libreria eModemLib ha una serie di funzioni e blocchi funzione per gestire un modem connesso alla porta seriale (Estratto documentazione). In questo post si trova una descrizione di come gestire l’invio e la ricezione di messaggi SMS tramite le varie FB.
ModemCore, modem core management: FB di gestione modem.
ModemSMSReceive, receive a SMS message: FB ricezione messaggio SMS.
ModemSMSSend, send a SMS message: FB invio messaggio SMS.Dalla versione SFR057B000 della libreria è stato aggiunto il blocco funzione:
ModemPhoneCall, executes a phone call: FB gestione chiamata telefonica.
Tramite questo blocco funzione è possibile su comando effettuare una chiamata telefonica ad un numero definito. E’ possibile definire il tempo di durata chiamata, passato il quale la chiamata viene conclusa ed il telefono chiamato smette di squillare.
Aprile 16, 2012 alle 3:07 pm #37210Sergio Bertana
Amministratore del forumLa possibilità di eseguire una chiamata telefonica abbinata alla possibilità da parte della FB ModemCore di ritornare il CLIP (Numero di telefono) del chiamante, permette di realizzare un sistema di controllo heartbeat a costo zero.
Ipotizziamo di avere un certo numero di sistemi sparsi geograficamente ognuno dei quali invia SMS in caso di allarme, in questa condizione è importante essere certi del buon funzionamento dei sistemi. Nessuna ricezione di SMS può voler dire che tutto è normale, ma può anche voler dire che c’è un guasto nel sistema che ne impedisce l’invio degli SMS.
In questo scenario può essere utile fare eseguire ai sistemi una chiamata telefonica ogni tempo prefissato verso un sistema munito di modem, su questo sistema (Senza rispondere alla chiamata) si potrà controllare i CLIP delle chiamate ricevute ed in caso di assenza prolungata di uno o più CLIP si può generare una condizione di allarme.
Maggio 18, 2012 alle 4:16 pm #37241Roberto
PartecipanteDoverei gestire una chiamata su evento ad una trentina di numeri telefonici, come posso organizzare il bloccio funzione ModemPhoneCall per realizzare il programma.
Maggio 18, 2012 alle 4:24 pm #37242Sergio Bertana
Amministratore del forumI blocchi funzione ModemPhoneCall e ModemSMSSend possono essere attivati in parallelo dallo stesso comando, quindi dovendo gestire la chiamata o l’invio di SMS sullo stesso evento, basterà attivare le FB con lo stesso operando.
Nel programma allegato ho gestito la chiamata a 3 numeri di telefono diversi su attivazione di un ingresso digitale Di00M00. Come si vede dalla stampa del programma le 3 FB di gestione chiamata sono tutte attivate dallo stesso ingresso, saranno le FB ad accodarsi automaticamente, terminata la chiamata al primo numero partirà quella al secondo e poi al terzo e così di seguito (Download programma).
Naturalmente se i numeri da chiamare sono tanti è conveniente realizzare un programma in ST che gestisce la sequenzialità delle chiamate agendo su di un unica FB ModemPhoneCall a cui viene passato di volta in volta il numero da chiamare.
Maggio 18, 2012 alle 4:42 pm #37243Roberto
PartecipanteIl Tempo Time nella FB ModemPhoneCall cosa serve, è la durata di chiamata ?
Se devo fare 20 chiamate contemporanee devo essere veloce, la chiamata arriva per avviso di intervento vvff, ovviamente non viene certificata come sistema sicuro, però sapere quanto tempo serve a fare le chiamate potrebbe essere un’informazione importante.
Ho provato con due telefoni ed ho visto che dopo 3 squilli chiude una chiamata attende qualche secondo ed invia la seconda…
Maggio 18, 2012 alle 4:48 pm #37244Sergio Bertana
Amministratore del forumSiccome non è possibile controllare se la chiamata ha raggiunto il destinatario, il parametro Time determina il tempo per il quale l’FB rimane in attesa dal momento che ha composto il numero prima di interrompere la chiamata in corso.
Naturalmente dalla composizione del numero all’effettivo squillo del telefono passa un tempo variabile che dipende dal gestore e può essere anche molto lungo, ho visto che mediamente con 30 Secondi di attesa si hanno alcuni squilli sul telefono del destinatario.
Il tempo tra una chiamata e l’altra è pari al tempo Time impostato più altri tempi interni di gestione della FB ModemCore, in generale i tempi interni possono essere compresi tra 15 e 30 Secondi. Quindi con un Time impostato a 30 Secondi avremo nel caso peggiore 1 chiamata al minuto.
Marzo 5, 2015 alle 9:50 am #38782Ivano Angelo
PartecipanteAbbiamo interfacciato un PLC SlimLine con il modem Cinterion MC55i, per poter gestire tramite il PLC l’accensione e lo spegnimento di luci di segnalazione aerea (SOV) tramite crepuscolare, e grazie al modem poter chiedere lo stato (lampade accese o spente, stato crepuscolare, stato batterie, ecc.) ed essere avvisati in caso di guasto o comportamento anomalo.
Sono stati creati 3 quadri che da inizio luglio 2014 a metà dicembre 2014 hanno funzionato in modo corretto (Il sistema ci inviava ogni 10 accensioni, pari a 10 giorni un messaggio di stato automatico). A dicembre è nato il problema il PLC continua ad accendere le luci tramite crepuscolare e sensori di corrente (lo sappiamo grazie alla verifica visiva di alcuni collaboratori in loco), il modem risulta acceso, perché se chiamiamo i numeri di telefono squillano da liberi, ma quest’ultimo non comunica più, né in modo automatico né se sollecitato (invio del messaggio pre-impostato che richiede lo stato di funzionamento). Questa cosa è successa nel giro di 10 giorni su tutti e tre i quadri dopo quasi 6 mesi di funzionamento corretto.
Telefonicamente mi avevate suggerito di installare l’ultima versione FB che non abbiamo ancora installato, per via di intralci con il cliente. Prima di procedere con l’installazione, volevo chiedere se nel frattempo si era imbattuto in situazioni similari, perché all’epoca mi aveva parlato di un problema dovuto a dei messaggi concatenati ricevuti (come ad esempio la pubblicità dell’operatore telefonico), ma cercando nel web, tramite blog, ho trovato articoli che parlano di “un modem lasciato acceso ed inattivo per molto tempo venga disconnesso dalla rete e quindi risulti inaccessibile”.
Da altre parti, ho trovato segnalazioni di cattivo funzionamento con memoria SMS piena. Mi domandavo se tali casi si possono tranquillamente escludere oppure se potrebbero essere loro la causa dello stato attuale. In sostanza, volevamo riuscire a definire in modo chiaro quanto successo, per evitare che di ritrovarci nella medesima situazione tra altri 6 mesi.
Marzo 5, 2015 alle 9:59 am #38783Sergio Bertana
Amministratore del forumIl problema del modem lasciato acceso ed inattivo per molto tempo che viene disconnesso dalla rete è un problema atavico, questo problema è superato dal ns FB. Il blocco funzione di gestione modem controlla tramite comandi AT l’effettiva connessione del modem alla rete, e, se non connesso, ne forza la riconnessione. La libreria eModemLib_E200 ha introdotto un ulteriore robustezza su questa funzione di controllo.
Il problema della memoria piena è anche lui superato dal ns FB, è controllata la ricezione dei messaggi SMS da parte del modem, che dopo averli letti provvede a cancellarli, lasciando sempre spazio nel buffer di ricezione.
Diverso è il problema della ricezione dei messaggi concatenati, nel caso di ricezione di alcuni messaggi lunghi (ed i messaggi dell’operatore telefonico sono tipicamente così) si poteva creare un errore nella lettura del messaggio che bloccava il funzionamento del FB. Questo problema è stato risolto dalla versione eModemLib_E100 della libreria modem.
Consiglio, per testare il funzionamento del modem in applicazioni critiche di solito si utilizza un heartbeat con la funzione di chiamata. Si esegue dal modem una chiamata ad un numero prefissato dove un operatore o un sistema automatico controlla il CLIP del chiamante. Questa soluzione è senza costi, il sistema chiamato non risponde alla chiamata e la mancata ricezione della chiamata per un tempo superiore al prestabilito genera una condizione di allarme. Per un controllo automatico è possibile utilizzare un sistema SlimLine e modem.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.