ModBus TCP: Instalé firmware 215 y tuve que volver al 208

  • 13 Respuestas
  • 9120 Vistas

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Hola Boris, buenos días,
Se que estás de vacaciones, pero te dejo esta inquietud para más adelante.
Hace una semana atrás me puse a hacer unas actualizaciones al software de mi sistema PLC. Como siempre hago, primero chequeo si hay versiones nuevas e instalo todo lo nuevo (aún sin necesitarlo). Entonces actualicé STXLadder a 1.7.2 y el firmware al release 215.
Y me puse a hacer unas modificaciones a mi sistema.

Una de las funcionalidades que tengo, como ya sabés, es consultar el estado del sistema utilizando ModBus, que siempre me anduvo perfecto. En esta oportunidad no toqué nada que tenga que ver con ModBus, pero al probar el sistema, me encontré con que ahora, con el nuevo firmware, la respuesta de ModBus se hizo tan lenta, que no llega a completarse nunca el llenado de las variables que yo leo via ModBus. Es como que llegan a leerse las primeras 3 a 5 variables, y luego se queda como si el tiempo de respuesta del PLC no fuera suficiente para atender los requerimientos de ModBus.

Estuve viendo que en el otro hilo en el que se habla de las nuevas funcionalidades TCP (muy interesante tenerlas!), también se menciona un problema de tiempos de respuesta.
Mi sospecha es que al incluírse las funcionalidades de servidor TCP, se podría haber reducido notablemente la capacidad de responder a los requerimientos ModBus. O quizá tiene que ver con la incorporación de las nuevas funcionalidades de web server.
Aclaro que en mi proyecto, donde se manifestó el problema, no estoy utilizando TCP ni web server. Lo que sí tengo es ModBus, recepción de paquetes UDP y VirtualHMI (que también es por UDP).

La cuestión es que yo pensé que el problema se había generado en las modificaciones de código que había hecho en mi proyecto Pawn. Luego de probar y probar se me ocurrió volver atrás el firmware a la versión que tenía hasta entonces (la 208). La instalé, y todo salió perfecto de nuevo.

O sea que me parece que en el firmware 215 existe alguna interacción (al menos) entre Modbus y Servidor TCP.

Te mando un gran saludo, y felicitaciones por todas las nuevas funcionalidades que le estás agregando. Sabés que todo esto relacionado con la conectividad a mi me parece muy muy importante y útil, como cuando incorporaste ThingSpeak...

Pablo.
« Última Modificación: enero 25, 2016, 18:22:06 pm por Soporte »

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:Instalé firmware 215 y tuve que volver al 208
« Respuesta #1 : enero 24, 2016, 19:40:32 pm »
Buenas tardes Pablo, disculpa la demora pero recien retorno de vacaciones.

Te comento que estoy probando ModBus TCP con un panel HMI ethernet y el mismo accede a variables ModBus en intervalos de 80 a 250 mS, y no noto problemas.

En las versiones nuevas de firmware se modifico el soporte TCP del stack para que responda mas rápido con maquinas que usan Windows (ya que para el WebServer fue necesario), y no descarto que pueda provenir de ahí el error, pero las pruebas que estoy realizando no muestran ninguna anomalía.

Te consulto, ¿con que programa o aplicación estas experimentando este problema ?. ¿Hay alguna forma que yo pueda replicarlo así lo analizo y determino donde esta el problema?.

Quedo a disposición.
SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:Instalé firmware 215 y tuve que volver al 208
« Respuesta #2 : enero 25, 2016, 07:15:08 am »
Hola buen día,

El acceso ModBus lo hago mediante un pequeño software de "Scada" para Android, en el cual se leen aproximadamente unas 20 variables ModBus (entre coils e integers).
El Scada es este:
https://play.google.com/store/apps/details?id=evolution.kod

Estoy bastante convencido que con los cambios introducidos "algo hay"... porque al volver al firmware anterior se solucionó instantaneamente...
Saludos,
Pablo.


Buenas tardes Pablo, disculpa la demora pero recien retorno de vacaciones.

Te comento que estoy probando ModBus TCP con un panel HMI ethernet y el mismo accede a variables ModBus en intervalos de 80 a 250 mS, y no noto problemas.

En las versiones nuevas de firmware se modifico el soporte TCP del stack para que responda mas rápido con maquinas que usan Windows (ya que para el WebServer fue necesario), y no descarto que pueda provenir de ahí el error, pero las pruebas que estoy realizando no muestran ninguna anomalía.

Te consulto, ¿con que programa o aplicación estas experimentando este problema ?. ¿Hay alguna forma que yo pueda replicarlo así lo analizo y determino donde esta el problema?.

Quedo a disposición.

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #3 : enero 25, 2016, 18:27:07 pm »
Hola Pablo,

Mi dispositivo Android no es compatible con esa aplicación (debe requerir un Android más moderno), así que no pude probarla.

Pero te adjunto un firmware 216-beta1 con el funcionamiento original del TCP (como en la version 208), pero con las nuevas
características añadidas (Servidor Web, etc).

Fíjate instalarlo y decime si te funciona correctamente, ya que pienso que esa parte es la que puede darte problemas.

Saludos
SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #4 : enero 26, 2016, 07:24:49 am »
OK muchas gracias. Entre hoy y mañana pruebo...

Hola Pablo,

Mi dispositivo Android no es compatible con esa aplicación (debe requerir un Android más moderno), así que no pude probarla.

Pero te adjunto un firmware 216-beta1 con el funcionamiento original del TCP (como en la version 208), pero con las nuevas
características añadidas (Servidor Web, etc).

Fíjate instalarlo y decime si te funciona correctamente, ya que pienso que esa parte es la que puede darte problemas.

Saludos

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #5 : enero 28, 2016, 19:49:32 pm »
Hola Boris,

Bueno, instalé el firmware 216 beta y ... todo volvió a la normalidad en materia de comunicaciones ModBus !! Excelente.
O sea: todo está tal cual como siempre (bien!).

Me hice ilusiones de que esto podría interferir o tener que ver con el otro problema de que no suben todos los fields a thingspeak, asi que me puse a probar de nuevo ese tema con el nuevo firmware. Pero no, no influye en nada. Se comporta exactamente igual que como te describí en el otro hilo específico del tema.

Me parece que en materia de firmware, el beta está OK. Cuando lo pases a definitivo avisame y reinstalo la versión definitiva (si es que le vas a hacer algun cambio más).

Por último, te recuerdo si fuera posible que el HMI Android pueda mostrar líneas más largas que 37 caracteres, estaría muy bueno. Lo ideal sería que haga line wrap a un determinado número de caracteres (o cuando llega al final de la pantalla), y pase automáticamente a la línea siguiente. Hoy en día no hay forma de mostrar un string largo (como la URL que mando a ThingSpeak por ejemplo).

Muchas gracias, excelente trabajo como siempre !
Pablo.

Hola Pablo,

Mi dispositivo Android no es compatible con esa aplicación (debe requerir un Android más moderno), así que no pude probarla.

Pero te adjunto un firmware 216-beta1 con el funcionamiento original del TCP (como en la version 208), pero con las nuevas
características añadidas (Servidor Web, etc).

Fíjate instalarlo y decime si te funciona correctamente, ya que pienso que esa parte es la que puede darte problemas.

Saludos
« Última Modificación: enero 28, 2016, 19:51:08 pm por PabloGa »

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #6 : enero 28, 2016, 20:27:47 pm »
Hola Pablo,

Ok, entonces se cual es el problema para el ModBus en tu caso, el cual me resulta raro porque no lo hace con los otros dispositivos ModBus que tengo.
El tema es que con esa configuración que te deje en el stack TCP, la conexión desde Windows con el Servidor Web seria lenta (no asi desde un Android o Linux). Voy a ver como lo soluciono.

No, con Thingspeak no influye dicha modificación, en el otro caso es un tema a de buffer a mi entender. Ya lo voy a probar cuando tenga un tiempito.

Te paso un screenshot de unos gráficos dinámicos como previa que estoy trabajando para el Servidor Web embebido, eso capaz que te pueda servir mas adelante (el mismo se ve desde un navegador Android). Un estilo thingspeak local del PLC.

Ah bien, ya me voy a fijar en VirtualHMI, es también una solución de ampliar buffers de memoria RAM. El tema es que consume recursos que podrían estar disponible para otras tareas. Pero lo voy a tener en cuenta, lo agendo.

Saludos y te estoy avisando novedades sobre estos temas.
« Última Modificación: enero 28, 2016, 20:33:25 pm por Soporte »
SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #7 : febrero 12, 2016, 16:10:09 pm »
Hola Pablo,

La versión 216 de firmware liberada para la STX8081 arregla la parte de ModBus TCP que tiene el comportamiento extraño que indicas con la App Android.

Para que te funcione, instala tambien StxLadder v1.7.3 y ejecuta la siguiente linea al inicio del tu proyecto:

Código: (Pawn) [Seleccionar]

   // Desactivar TCP split en stack TCP/IP.
   NetTcpSplitOff()


Luego proba el ModBus TCP con el programa Android.

Solo hace falta llamar una sola vez a la función en todo el proyecto.

Esa linea mantiene la compatibilidad en funcionamiento TCP como lo hacia en versiones previas.

Con NetTcpSplitOn() se vuelve a la versión actual (que es activada por defecto) y que mejora el desempeño del Servidor Web con navegadores en Windows solamente.

Avísame si la probas.

Saludos
« Última Modificación: febrero 12, 2016, 16:11:56 pm por Soporte »
SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #8 : febrero 16, 2016, 19:50:53 pm »
Hola Boris,

Hice los 3 pasos (actualizar StxLadder + actualizar a Firmware 216 + agregar  NetTcpSplitOff()) y el problema con ModBus volvió a aparecer exactamente igual que antes.

Volví a la versión 216 beta (seguí con StxLadder 1.7.3 pero eliminé la instrucción NetTcpSplitOff), y volvió a funcionar bien de nuevo.

Quizá tenés algún error en la implementación de NetTcpSplitOff ???  Porque el tema ya lo tenías resuelto en FW 216 beta...

Saludos !
Pablo.


Hola Pablo,

La versión 216 de firmware liberada para la STX8081 arregla la parte de ModBus TCP que tiene el comportamiento extraño que indicas con la App Android.

Para que te funcione, instala tambien StxLadder v1.7.3 y ejecuta la siguiente linea al inicio del tu proyecto:

Código: (Pawn) [Seleccionar]

   // Desactivar TCP split en stack TCP/IP.
   NetTcpSplitOff()


Luego proba el ModBus TCP con el programa Android.

Solo hace falta llamar una sola vez a la función en todo el proyecto.

Esa linea mantiene la compatibilidad en funcionamiento TCP como lo hacia en versiones previas.

Con NetTcpSplitOn() se vuelve a la versión actual (que es activada por defecto) y que mejora el desempeño del Servidor Web con navegadores en Windows solamente.

Avísame si la probas.

Saludos

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #9 : febrero 18, 2016, 07:08:48 am »
Hola Pablo,

Tenes razón, en este caso hay un error de tipeo interno en StxLadder 1.7.3 qué hace qué no se llame la función correctamente, pero no es un error de firmware.

Luego te aviso cuando suba la actualización.

Saludos

Enviado desde un dispositivo móvil usando Taptalk.

SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #10 : febrero 18, 2016, 07:20:30 am »
Lo suponía. Muchas gracias !


Hola Pablo,

Tenes razón, en este caso hay un error de tipeo interno en StxLadder 1.7.3 qué hace qué no se llame la función correctamente, pero no es un error de firmware.

Luego te aviso cuando suba la actualización.

Saludos

Enviado desde un dispositivo móvil usando Taptalk.

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #11 : febrero 24, 2016, 20:14:34 pm »
Hola Pablo,

Ya están disponible las versiones corregidas para instalar:


Recorda agregar al incio del porgrama:

Código: (Pawn) [Seleccionar]
 
   // Desactivar TCP split en stack TCP/IP.
   NetTcpSplitOff()

Cualquier cosa, avisame.

Saludos
SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.

PabloGa

  • Avanzado
  • ***
  • Mensajes: 103
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #12 : febrero 25, 2016, 18:37:56 pm »
Hola Boris,
Actualizados el firmware y StxLadder y ... funciona bien !!  ModBus volvió a responder inmediatamente como siempre !!

Excelente trabajo como siempre.

Quizá es el turno de los buffers de ThingSpeak ??  http://www.slicetex.com/foro/smf/index.php?topic=160.0  ...   ;)

Muchas gracias !
Pablo.

Hola Pablo,

Ya están disponible las versiones corregidas para instalar:


Recorda agregar al incio del porgrama:

Código: (Pawn) [Seleccionar]
 
   // Desactivar TCP split en stack TCP/IP.
   NetTcpSplitOff()

Cualquier cosa, avisame.

Saludos

Soporte

  • Global Moderator
  • Experto
  • *****
  • Mensajes: 2330
  • Soporte Técnico
Re:ModBus TCP: Instalé firmware 215 y tuve que volver al 208
« Respuesta #13 : febrero 25, 2016, 20:06:58 pm »
Perfecto Pablo!

Tengo pendiente mirar el ThingSpeak  :)...ya le voy a dar una mirada y te aviso.

Estamos en contacto.


SOPORTE TÉCNICO

Slicetex Electronics
www.slicetex.com

Atención: Desde el 4 de enero al 31 de enero de 2024, cerramos por vacaciones. Tenga en cuenta para sus pedidos y/o consultas.