Como indicamos, hay que hacer que Codesys convierta nuestro ordenador en un PLC, lo que se denomina SoftPLC, en este caso basado en Windows.
Se puede realizar una comunicación completa desde cero, como se explica en el Modo Avanzado. Para el Modo Básico, se trabajará con un archivo ya configurado con los canales Modbus RTU creados y configurados en consonancia con la plantilla cargada en el Esp32.
Descargar del archivo Codesys de trabajo #
Puedes descargar el archivo de Codesys de trabajo en Recursos/Codesys:
O directamente en este enlace.
El archivo descargado es de extensión .projectarchive. Es una exportación del proyecto, no un guardado. Esto quiere decir que lleva incluida las librerías y otros elementos que puede que no tengas de serie instalados. Es aconsejable pasar los archivos de trabajo en este formato para evitar problemas.
Los archivos que guardamos en Archivo/guardar son de extensión .project y son mucho mas ligeros porque solo incluyen el programa realizado.
Abrir (extraer) el archivo #
Se puede abrir haciendo clic sobre el archivo directamente:
También puedes abrir Codesys y hacer clic en Archivo/Extraer.
Como es una especie de archivo comprimido, te preguntará dónde extraerlo y qué extraer. Selecciona una carpeta en tu ordenador y señala todas las pestañas:
Tras esto, acepta e indica en si (yes) las condiciones y preguntas que realiza. Tas esto, seguramente te indique que hay actualizaciones disponibles. Dale a aceptar para que se cierre la ventana.
El programa se abrirá con un ejemplo muy básico programado en el bloque principal (Main):
Activar nuestro PLC virtual (SoftPLC) #
Vamos a trabajar en el ordenador con una especie de “emulador” de un PLC, por eso lo llamamos SoftPLC (Soft de Software). Por tanto, lo primero que tenemos que hacer es encender nuestro PLC (sería como enchufar un PLC físico).
El SoftPLC es una herramienta suministrada por Codesys (Codesys Control Win V3 – x64 Systray ), que se instala automáticamente, pero que aparece con el SoftPLC apagado de serie. Para “encender” virtualmente nuestro SoftPLC, buscamos el icono del Codesys Control Win V3 – x64 Systray y hacemos clic en Start PLC:
Si no aparece el icono anterior, se puede ejecutar el programa escribiendo Codesys Control Win V3 – x64 Systray en la barra de tareas:
Y tras hacer esto, aparecerá ya para poder activarlo.
Para terminar con esta parte, es importante destacar que este SoftPLC de Codesys en versión demo funciona durante dos horas seguidas. Al cabo de dos horas se pone en Stop y hay que volver a arrancarlo manualmente.
Conectar nuestro ordenador con el PLC virtual activado #
Tenemos que hacer que el software Codesys en el que vamos a realizar nuestro programa de automatización, comunique con el softPLC que acabamos de activar. Esto es algo así como conectar un PLC físico mediante un cable de carga de programa, con el ordenador y comprobar que el ordenador detecta el PLC.
Para ello, selecciona Device, y en la opción Examinar Red, entra en Gateway y Equipo:
Si el proceso se ejecuta correctamente, aparecerá ya todo en verde al salir a la pantalla Device:
Para que esto suceda, no puedes olvidar activar el SoftPLC como hemos visto en el paso anterior. No podemos conectar con un PLC apagado. Si no lo activas, es común encontrar este error:
Finalmente, hay que indicarle al SoftPLC en qué dirección está conectada la placa, para que pueda comunicar con ella. Esta dirección es el COM del USB asignado por el PC. Para esto, en la pestaña Modbus_COM, seleccionar le puerto COM donde está conectada la placa ESP32:
Para conocer el puerto COM asignado a la placa por tu PC, se pueden realizar dos procesos:
- Abrir el compilador de la placa y comprobarlo:
- Abrir Administrador de dispositivos:
Probar la comunicación #
Para probar la comunicación, pulsa el icono de Modo de configuración en línea:
El árbol de dispositivos cambiará y se pondrá en modo online:
Ya hemos comprobado que la comunicación es correcta. Por tanto, el proyecto ya está listo para ser programado, ahora debes desactivar el modo de configuración en línea para poder cargar un programa:
Cargar el programa en el SoftPLC y ponerlo en Run #
Como ejemplo vamos a cargar un programa vacío. Para ello, abre la pantalla Main y elimina el segmento que viene como ejemplo. Tras esto, acciona el icono superior de Iniciar la sesión:
Pregunta qué tipo de carga se quiere realizar. Vamos a hacer una carga completa:
Así hemos cargado la automatización realizada, en el SoftPLC. Ahora solo queda poner en Run el SoftPLC. Para ello, haz clic en el icono de Inicio:
En esa misma barra puedes poner en Stop el PLC o directamente apagarlo (desenchufarlo):
Posibles problemas
- Que no aparezca dispositivo por no haber activado el SoftPLC (ya mencionado):
- Que no conecte con la placa (slave) porque no se ha asignado bien la dirección del USB COM de la placa:
En la imagen anterior, no se produce la comunicación porque Codesys está tratando de conectar con la placa por el COM 4 y hemos visto antes que en el ejemplo de configuración, la placa estaba asignada al COM3. Fíjate cómo aparecen tres triángulos en rojo en la parte inferior izquierda.
- Otro error, en este caso de instalación, es que se haya instalado una versión X32 de Codesys en un PC X64. En ese caso nunca conectará el Gateway con el SoftPLC.
- También puede pasar que se te haya olvidado conectar la placa, o que esta no esté configurada correctamente.