CADe_SIMU 4. Conectando con un Arduino UNO

Luego de publicar el articulo en el que les contaba las novedades de la nueva versión de CADe_SIMU, muchos me consultaron acerca de cómo incluir un Arduino UNO en un circuito. Es bastante sencillo si se siguen algunos pasos que les describo a continuación.

Introducción

Este artículo se titula “Conectando con un Arduino UNO” y no “Simulando un Arduino UNO” y ésta no es una elección casual de palabras. Es que CADe_SIMU no realiza la simulación de un Arduino así como simula los contactores, pulsadores, motores y otros componentes disponibles. Si agregamos un Arduino UNO a nuestro circuito no significa que vamos a poder hacer doble click sobre él para abrir el Arduino IDE y escribir un programa para que luego, cuando iniciamos la simulación, éste interactúe con el resto de los componentes. Lo que hace CADe_SIMU es comunicarse con un Arduino real que debe estar conectado con su correspondiente cable a la PC donde estamos corriendo el simulador. El programa debe estar cargado en ese Arduino y gracias a una librería especial, éste puede interactuar con CADe_SIMU y el resto de los componentes simulados.

Simulación

CADe_SIMU no simula un Arduino UNO sino que interactúa con un Arduino real conectado a la computadora

Tres formas de ver un Arduino UNO en CADe_SIMU 4

Instalación de librerías

Como dije al principio, el programa del Arduino debe estar grabado en la placa real e incluir una librería que permite la comunicación con CADe_SIMU. Antes de instalarla, debemos previamente agregar otra librería, que es usada por ella. En el IDE, debemos ir al Gestor de librerías y buscar TimerOne e instalarla.

Librería TimerOne instalada

Ahora si, hay que instalar la librería PC_SIMU, que está contenida en el siguiente archivo:

PC_SIMU

Una vez descargado, pueden instalar el ZIP directamente desde Programa – Incluir Librería o descomprimirlo y copiar la carpeta manualmente con el resto de las librerías.

Como pueden ver, esta librerías y el tutorial que se adjunta hacen referencia al programa PC_SIMU, el simulador que puede trabajar en conjunto con CADe_SIMU. Es que PC_SIMU en realidad tiene la posibilidad de interactuar con el Arduino y algunos PLCs desde hace algunas versiones, funcionalidad que recién ahora se traslada a CADe_SIMU.

Si todo funcionó correctamente debemos poder ver ambas librerías ya instaladas en Programa – Incluir Librerías:

Librerías instaladas en Arduino IDE

El programa Arduino

Vamos a ver ahora cómo utilizar esta librería en nuestro programa Arduino. Vamos a escribir algo muy sencillo: el típico “Blink” que hace parpadear un led, sólo que ahora vamos a utilizarlo para conmutar algo distinto en CADe_SIMU.

//Prueba Cade-SIMU y Arduino

#define Salida 2

#include <PC_SIMU.h>

PC_SIMU Arduino;

void setup() {
    pinMode(Salida, OUTPUT);
    digitalWrite(Salida, 0);
    Arduino.INI(); 
}

void loop() {
  digitalWrite(Salida, 1);
  delay(2000);
  digitalWrite(Salida, 0);
  delay(2000);
}

Como pueden ver el programa es muy simple, se define el pin 2 como salida en setup y luego se lo alterna cada dos segundos en loop. Hay que destacar la línea 5, donde se incluye la librería PC_SIMU, la línea 7 en la que creamos un objeto Arduino de la clase PC_SIMU y la línea 12, dentro del setup en la que llamamos al método INI de ese objeto, para inicializarlo y con ello dejar funcionando la comunicación entre el Arduino y CADe_SIMU.

Copiado el ejemplo en el IDE, compilamos el código y lo subimos a la placa.

Conexión con CADe_SIMU

Ya llegamos al paso final. Una vez que tenemos el programa grabado en el Arduino, abrimos CADe_SIMU y agregamos un componente Arduino UNO desde la barra de Herramientas denominada Entrada/Salida y le hacemos doble click para abrir su configuración:

Configuración del componente Arduino UNO

Aquí hay algunas cosas que debemos revisar:

Configuración Entradas/Salidas: En esta sección debemos indicar a CADe_SIMU cómo hemos configurado los pines del Arduino. En este programa de ejemplo sólo usamos el pin 2, y configurado como salida, así que nos debe quedar así:

Configuración de pines del Arduino

Comunicación: Aquí debemos indicar a CADe_SIMU en que puerto de comunicaciones (COM) puede encontrar al Arduino. Si les pasa como a mí, que el Arduino nunca aparece entre el COM1 y el COM4 y siempre se le asignan números mas altos, este video explica como cambiar el número de puerto. También tilden la opción Conectar al simular.

Configuración de las comunicaciones

Con esto se completa la configuración (al menos la mínima) así que pueden darle al botón OK.

Ahora solo queda agregar algún circuito adicional al pin 2 para probar la simulación:

Arduino UNO en CADe_SIMU

Listo! Tenemos un Arduino UNO controlando un motor trifásico en CADe_SIMU!

Recuerden que la simulación en CADe_SIMU se realiza a nivel lógico, es decir, los componentes pueden tener uno de dos valores discretos (funciona/no funciona, prende/apaga, etc) y no se simulan valores de tensión o corriente. Por eso podemos activar la bobina de un contactor directamente con una salida del Arduino, algo que en la realidad no es posible.

También tengan la precaución de cerrar el circuito eléctrico de los pines del Arduino en el pin de GND de la misma placa.

Conclusión

Vimos el método básico para utilizar Arduino en nuestras simulaciones con CADe_SIMU, interactuando con una placa real. Revisamos cómo escribir el programa en el Arduino y las librerías que se deben instalar en el Arduino IDE. Finalmente vimos como configurar el componente Arduino en CADe_SIMU para que se conecte correctamente con la placa.

En otros artículos seguiremos explorando las posibilidades de esta funcionalidad que se agrega a la versión 4.0 de nuestro programa de simulación favorito.

3 comentarios en «CADe_SIMU 4. Conectando con un Arduino UNO»

  1. Hola fíjate que no he podido activar un cilindro neumático con el Arduino en cadesimu ya que los sensores de límite de carrera no tienen contactos como los interruptores normales en diagrama de escalera funcionan bien pero con el Arduino no he podido detectarlos. Y casi nadie da ejemplos de cómo activar un cilindro neumático verificando los sensores de cilindro extraído o retraído.
    Saludos desde Veracruz, México

    Responder

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Habilitar notificaciones OK No, gracias