Inicio > Foro > Programación IEC 61131 (LogicLab) > Una solución para enviar múltiples SMS
tagged: MultipleSMS
- Este tema tiene 7 respuestas, 4 participantes y se actualizó por última vez 2 años, hace 4 meses da Sergio Bertana.
-
autorPublicación
-
Octubre 7, 2013 en 6: 26 am #35428Anonimoinactivo
He intentado crear un bloque de funciones durante días que permite enviar varios mensajes a varios destinatarios. Lo que quiero lograr es poder enviar diferentes mensajes a múltiples números de teléfono. En la práctica, en un sistema de control, quiero que el personal de mantenimiento sea alertado por SMS sobre las condiciones de alarma.
Hice varios intentos usando la biblioteca eModemLib pero no puedo obtener la operación, ¿tiene alguna sugerencia?
Octubre 7, 2013 en 6: 33 am #37819Sergio BertanaAdministrador del foroUsar varias instancias del bloque de funciones ModemSMSSend_v2 es posible enviar varios mensajes SMS a varios números como se indica en IEC61131-3 Manual de programación. Eso sí, si los mensajes a enviar son muchos y si los números a los que enviarlos son muchos, el número de instancias del FB necesario para el envío crece y por tanto, como acertadamente sugieres, es preferible construir un FB especial. .
Aquí hay un proyecto en el que el FB MultipleSMS le permite enviar hasta mensajes 32 para subir números 32 (prensa e Descargar programa). Los mensajes y los números de teléfono se transmiten a través de la dirección de una serie de punteros. Mensajes e PhNumbers, de esta manera se optimiza la ocupación de la memoria ya que es posible dimensionar la matriz como se desee y los mensajes tales como números de teléfono son cadenas guardadas en la memoria de códigos.
Las variables DWORD MsgSelector e PNrSelector, permite enviar solo mensajes cuyo bit relativo está activo a números de teléfono cuyo bit relativo está activo. Haga esto antes de activar el comando Enviar Actuando sobre estas dos variables, es posible definir qué mensajes enviar y a qué números enviarlos.
activando Enviar los mensajes se envían, después de lo cual se activa Terminado, para llevar a cabo una nueva transmisión debe ser desactivado Enviar y luego reactivarlo.
Octubre 22, 2019 en 12: 31 pm #50279neptuniopartícipeBuenas noches! Soy nuevo en el foro, debo decir que recientemente ingresé al mundo de los PLC.
Tener que usar el bloque de funciones ModemSMSSend_v2 en la configuración de múltiples SMS me encontré durante una búsqueda en el foro en uno de sus programas donde hay un FB MultipleSMS con fecha de 2013. Después de cargarlo en Logiclab, aparece un error de compilación con los siguientes errores:
ModemPhoneCall_v1 (102) - advertencia S1314: valor duplicado en la definición de CASO
ModemSMSSend_v2 (153) - advertencia S1314: Valor duplicado en la definición del CASOOctubre 22, 2019 en 12: 58 pm #50303Sergio BertanaAdministrador del foroDe hecho, traté de compilar el proyecto anterior y hubo dos errores de los que te quejas. Siendo un proyecto muy antiguo, decidí actualizarlo usando la nueva versión de la biblioteca eLLabModemLib_F100.
Reescribí el programa principal en FBD, pero no he probado el proyecto, te lo dejo para que lo pruebes y posiblemente me digas si tienes problemas, te dejo el proyecto MultipleSMS_v1 para la descargar.
Octubre 25, 2019 en 6: 10 am #50353neptuniopartícipeMientras tanto, gracias por la pronta respuesta, el ejemplo editado por usted funciona perfectamente. implementado en mi programa, marcó los pocos números ingresados enviando los mensajes correspondientes asignados.
Mi intención es conectar al menos 2 duplicando el FB, ¿crees que funcionará?
Octubre 25, 2019 en 6: 20 am #50375Sergio BertanaAdministrador del foroNo entiendo por qué la necesidad de duplicar el FB, si necesita más números o más mensajes, simplemente agréguelos al FB.
El FB puede enviar hasta 32 mensajes diferentes, solo defínalos en la matriz Message establecer el bit relativo en la variable MsgSelector.
MsgSelector:=16#00000007; (* Message selector *) Message[0]:=ADR('Messaggio 0'); Message[1]:=ADR('Messaggio 1'); Message[2]:=ADR('Messaggio 2');
Cada mensaje se puede enviar hasta 32 números diferentes, simplemente defínalos en la matriz PhoneNr establecer el bit relativo en la variable PNrSelector
PNrSelector:=16#00000003; (* Phone number selector *) PhoneNr[0]:=ADR('+39123456789'); PhoneNr[1]:=ADR('+39123456789');
Si tienes diferentes necesidades en el proyecto existe el código fuente del FB solo modifícalo para adaptarlo a tus necesidades.
Diciembre 7, 2021 en 7: 41 am #62468gabrielegallipartícipeHace algún tiempo utilicé el módulo MultipleSMS completamente funcional. Desafortunadamente, hoy, desempolvando un proyecto, ya no encuentro la biblioteca relativa que entonces se llamaba eMultiSMS (compuesta por eLEN, VBit Test, Function Block MultipleSMS y el programa STartUP).
¿Es posible que lo tenga?
Diciembre 7, 2021 en 7: 42 am #62471Sergio BertanaAdministrador del foroSolo descarga el programa MultipleSMS_v1 que encuentras un par de publicaciones antes de esta ...
-
autorPublicación
- Debe iniciar sesión para responder a este tema.