es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Defecto de comunicación Ethercat después de construir el programa en C++.

Para mi trabajo, actualmente estoy trabajando en un sistema existente (C++) que se comunica con un PLC de Beckhoff. Este PLC lee la velocidad actual del proceso y controla una luz.

Este programa necesita una actualización para funcionar con la nueva medición de grosor. El código para estas nuevas mediciones funciona, ya lo probamos en otra computadora.

El problema es que la comunicación entre Beckhoff y la computadora ya no está funcionando. Este problema comienza cuando reconstruimos (una parte de) el programa. Para verificar qué salió mal, utilizamos Wireshark para verificar la comunicación.

En la figura a continuación, puede ver la comunicación correcta con el PLC de Beckhoff (con Ethercat).

Comunicación correcta

En esta figura, puede ver la comunicación después de construir el nuevo programa.

Comunicación después de la construcción

Por supuesto, probamos muchas opciones para eliminar este problema, pero por el momento no podemos pensar en ningún otro método para recuperar la comunicación.

Cosas que intentamos:
– Compilar el código antiguo para ver si la comunicación aún funciona. Esto no funciona. Solo funciona el archivo .exe original.
– Retroceder algunas versiones para probar la comunicación. Esto tampoco funciona.
– Verificamos la configuración de hardware y la dirección MAC del PLC de Beckhoff. Todo está correcto.

Sería genial si alguien conociera una solución para este problema. Por favor, no dude en hacer preguntas para obtener más información sobre el problema.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    En este momento estoy trabajando en un sistema existente (C++) que se comunica con un PLC de Beckhoff. Este PLC lee la velocidad actual del proceso y controla una luz. El programa necesita una actualización para trabajar con la nueva medición de espesor, que ha sido probada en otra computadora. Sin embargo, la comunicación entre el Beckhoff y la computadora ya no funciona.

    Para comprobar qué salió mal, usamos Wireshark para verificar la comunicación. En la figura a continuación, puede ver la comunicación correcta con el PLC de Beckhoff (con Ethercat):

    Comunicación correcta

    En esta figura, puede ver la comunicación después de construir el nuevo programa:

    Comunicación después de la construcción

    Hemos probado muchas opciones para eliminar este problema, pero de momento no podemos pensar en ningún otro método para recuperar la comunicación. Las cosas que intentamos incluyen compilar el viejo código para ver si la comunicación todavía funciona, retroceder algunas versiones para probar la comunicación y verificar la configuración de hardware y la dirección MAC del PLC de Beckhoff (que son todas correctas).

    Sería genial si alguien conoce una solución para este problema. Por favor, no dude en hacer preguntas para obtener más información sobre el problema.

Comments are closed.