Introducción
En este post, te explicamos cómo hacer lo básico para trabajar con las entradas analógicas de los controladores lógicos programables de Industrial Shields. Al leer este post, entenderás cómo conectar y configurar las entradas analógicas de tu
controlador industrial de Arduino PLC.
Lecturas previas
Te recomendamos que leas los siguientes blogs para entender el programa de este blog. Hemos utilizado las siguientes entradas de blog para hacer este ejemplo:
Cómo programar nuestro PLC industrial con Arduino IDE: Instalación de las placas de Industrial Shields en Arduino IDE
Requisitos
Para trabajar con entradas analógicas, necesitarás cualquiera de nuestros controladores industriales para la automatización industrial.
Controladores de Industrial Shields:
Configuración de los conmutadores
La mayoría de las entradas analógicas están siempre conectadas al Arduino interno, pero en algunos casos, el usuario puede elegir entre una configuración especial de periféricos o un GPIO cambiando la posición de los Dip Switches.
Cada interruptor puede seleccionar sólo una configuración. Por ejemplo, en este caso, estamos viendo la configuración de GPIOs de un M-Duino 57R+. Si ponemos el interruptor en la posición derecha (ON) en la parte superior, se activará la entrada I2.1 y podremos trabajar con esta como entrada. Si el interruptor está en la posición izquierda (OFF) activaremos la línea SCL que se utilizará para la comunicación I2C. Hay que tener en cuenta que cada interruptor tiene dos configuraciones diferentes: hay que seleccionar la opción derecha (ON) o la izquierda (OFF).
Entrada I2.1 habilitada - SCL deshabilitado
Entrada I2.1 deshabilitada - SCL habilitado
Tipos de entrada
En todos los PLCs basados en Industrial Shields Arduino, las entradas analógicas pueden trabajar en:
Entrada analógica de 0V - 10V
Las entradas analógicas tienen un atractivo especial en el caso del PLC:
0V - 10Vdc Entrada analógica
Hardware
Todas las entradas analógicas no están optoaisladas (utilizan las mismas GND que el PLC). La siguiente imagen muestra cómo conectar una entrada analógica al PLC:
0V - 10Vdc Entrada analógica
Software
Para programar los GPIOs analógicos, debemos tener en cuenta que podemos leer los valores con el siguiente comando:
analogRead(GPIO);
Esta función devuelve un valor entre 0 y 1023 dependiendo del nivel de tensión aplicado a la entrada (0V es igual a 0, y 10V es igual a 1023).
GPIO es el nombre de la entrada. Imagina que queremos saber el estado de la entrada "I0.12", entonces, debemos escribir esta línea:
analogRead(I0_12);
Debemos saber que no necesitamos configurar las entradas analógicas como analógicas. Las Librerías de Industrial Shields hacen todo el trabajo por nosotros.
Ejemplo
Puedes ver un ejemplo de lectura de un GPIO analógico en el siguiente párrafo:
// Analog read example
// Set the speed of the serial port
// This example reads the I0_12 and shows via serial the value
// Setup function
void setup()
{Serial.begin(9600UL);
}
int value = analogRead(I0_12);
// Loop function
void loop()
{
Serial.println(value);}