Análisis de la respuesta temporal del pinout del PLC analógico Arduino Ardbox

Análisis técnico del rendimiento del pinout del PLC analógico Arduino Ardbox
12 de septiembre de 2023 por
Análisis de la respuesta temporal del pinout del PLC analógico Arduino Ardbox
Boot & Work Corp. S.L., Ricard Franch Argullol

Introducción



El PLC analógico Ardbox es un controlador industrial versátil que ofrece una amplia gama de funcionalidades. En este artículo, aprenderás más sobre sus características, como la frecuencia máxima de conmutación y los tiempos de subida y bajada. Comprender estos aspectos es crucial para interactuar con periféricos externos y desarrollar aplicaciones que requieran una temporización precisa.

Ardbox analog PLC


Requisitos

Si deseas medir las características del PLC, también necesitará un osciloscopio preciso capaz de leer en la escala de 100ns.


Salida digital

El PLC Analógico Arduino Ardbox tiene 10 salidas digitales (7 de las cuales son también PWM), que pueden trabajar en un rango de 5-24V. Recuerda que el voltaje de salida depende del pin QVdc, puedes aprender más sobre ellos en este post sobre salidas digitales.

void setup() {
for(;;){
digitalWrite(Q0_0, HIGH);
delay(500);
digitalWrite(Q0_0, LOW);
delay(500);
}
}

void loop() {}

Este programa genera una señal cuadrada de ciclo de trabajo del 50% con una frecuencia de 1Hz. Utilizando un osciloscopio, se pueden observar los tiempos de subida y bajada de la señal resultante en la salida:

  • Tiempo de subida: 0.5µs
  • Tiempo de bajada: 100.8µs

Ajustando el retardo en el código podemos cambiar la frecuencia de salida. He aquí algunos ejemplos:

Frecuencia de salida

Periodo

Ancho de pulso

Retraso

2.457kHz

413µs

246.5µs

200µs

1kHz

1ms

0.54m

500µs

Se puede conseguir una señal de hasta 2,5 kHz, aunque el ciclo de trabajo es algo superior al 50%. En frecuencias aún más altas, el ciclo de trabajo es aún mayor, mientras que en frecuencias más bajas baja a un 50%, el valor esperado.


Salida digital

Hay 10 entradas digitales en el PLC Analógico Arduino Ardbox, todas con un rango de trabajo de 0 a 3.3Vdc hasta 24Vdc:

  • 1 entrada digital (I0.1)
  • 1 pin de interrupción (I0.0)
  • 8 entradas que pueden utilizarse como analógicas o digitales (I0.2 - I0.9). 

Con este programa, se pueden medir las velocidades media y máxima de muestreo..

#define N_TIMES 10000

unsigned long t1, t2, t_max, t_average;

void setup() {
Serial.begin(115200);
while (!Serial);

t_max = 0;
t_average = 0;

for (long i = 0; i<N_TIMES; i++) {
t1 = micros();
digitalRead(I0_5);
t2 = micros();
t_average += (t2-t1);
if (t_max < t2-t1) t_max = t2-t1;
}

Serial.print("Max time: ");
Serial.println(t_max);
Serial.print("Average time: ");
Serial.println(t_average/(float)N_TIMES);
}

void loop() {}

Los tres tipos de pines que se pueden utilizar como entrada digital tienen todos las mismas respuestas temporales:

  • Muestreo medio: 5.46µs
  • Tiempo máximo de muestreo: 16µs


Entrada analógica

El PLC analógico Arduino Ardbox dispone de 7 salidas analógicas con una resolución de 8 bits y un rango de funcionamiento de 0-10V. 

Para medir el tiempo de respuesta de las salidas analógicas podemos utilizar un osciloscopio y el siguiente código para medir los tiempos de subida y bajada de la señal:

void setup() {
for(;;){
analogWrite(A0_5, 4095);
delay(1000);
analogWrite(A0_5, 0);
delay(1000);
}
}

void loop() {}

Midiendo con un osciloscopio obtenemos los siguientes tiempos:

  • Tiempode subida: 226ms
  • Tiempo de bajada: 214ms

Considerando 226ms como el peor tiempo, podemos conseguir una señal de salida con una frecuencia de 2,21Hz.


Entrada analógica

Las entradas analógicas del Arduino Ardbox permiten medir tensiones entre 0V y 10V, devolviendo un valor con una resolución de 10 bits (0-1023). Hay 8 entradas analógicas. 

Con este programa se puede medir el tiempo de muestreo medio y máximo de las entradas analógicas:

#define N_TIMES 10000

unsigned long t1, t2, t_max, t_average;

void setup() {
Serial.begin(115200);
while (!Serial);

t_max = 0;
t_average = 0;

for (long i = 0; i<N_TIMES; i++) {
t1 = micros();
analogRead(I0_5);
t2 = micros();
t_average += (t2-t1);
if (t_max < t2-t1) t_max = t2-t1;
}

Serial.print("Max time: ");
Serial.println(t_max);
Serial.print("Average time: ");
Serial.println(t_average/(float)N_TIMES);
}

void loop() {}

Los resultados obtenidos del programa ejecutado son:

  • Tiempo medio de muestreo: 112,56µs: 112.56µs
  • Tiempo máximo de muestreo: 1144µs


Pins directos

Por último, hay algunos pines Arduino directos disponibles también. Estos pines están pensados para ser usados con comunicaciones SPI e I2C, pero si no se usan estos protocolos, pueden ser programados como pines Arduino normales para ser usados como entrada o salida digital.

Ten en cuenta que estos pines necesitan ser configurados con la función pinMode() de acuerdo a como van a ser usados. como entrada o salida.

SPI

Los pines SPI son el SCK, MOSI y MISO que corresponden a los pines 15, 16 y 14 del Arduino Leonardo, respectivamente.

  • Entrada digital: estos pines tienen un tiempo medio de muestreo de 5,46 µs, con un tiempo máximo de 16 µs.
  • Salida digital: la salida tiene un tiempo de subida y bajada de 43,2ns ambos.
I2C 

Los pines I2C son SCL y SDA, correspondientes a los pines 3 y 2 de Arduino, respectivamente.

  • Entrada digital: el tiempo medio de muestreo de las entradas es de 5,48µs, y el máximo de 16µs.
  • Salida digital: la señal generada tiene un tiempo de subida y bajada de 100ns ambos.


Resumen

Entradas

Tipo de entrada
Frecuencia de muestreo - MediaFrecuencia de muestreo - Tiempo máximo de lectura
Digital (IX.2-9 and IX.0-1)183.15kHz (5.46µs)62.5kHz (16µs)
Analog (IX.2-9)8.88kHz (112.56µs)874.13Hz (1144µs)
SPI/I2C183.15kHz (5.46µs)
62.5kHz (16µs)
Salidas
Tipo de salida
Frecuencia máxima estable
Frecuencia de señal - MáximaTiempo de subida
Tiempo de bajada
Digital (QX.0-9)1kHz (54%)
2.457kHz (59.69%)
0.5µs100.8µs
Analog (AX.0-6)2.21Hz (50%)
2.21Hz (50%)
226ms214ms
SPI/I2C
145kHz (50%)
40kHz (50%)
43.2ns43.2ns

Conclusión


Ardbox Analog

En conclusión, el PLC Ardbox está repleto de numerosas características y opciones de temporización precisas, lo que lo convierte en una solución versátil y robusta para una amplia gama de aplicaciones. Para garantizar una compatibilidad perfecta con dispositivos externos, es esencial conocer bien las características de los pines, como la velocidad máxima de conmutación, los tiempos de subida y bajada y los tiempos de lectura.


A la hora de diseñar y desarrollar aplicaciones, es esencial tener en cuenta las características de rendimiento específicas de las salidas digitales, entradas digitales, salidas analógicas y entradas analógicas del PLC.


Configurando el sistema correctamente y prestando una atención meticulosa a estas particularidades, el PLC Ardbox puede ofrecer constantemente resultados precisos y fiables para satisfacer sus necesidades de automatización y control industrial.


Buscar en nuestro blog

Análisis de la respuesta temporal del pinout del PLC analógico Arduino Ardbox
Boot & Work Corp. S.L., Ricard Franch Argullol 12 de septiembre de 2023
Compartir

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.


Industrial PLC comparison >>>