0% encontró este documento útil (0 votos)
35 vistas23 páginas

Entradas Analogicas

El documento proporciona una introducción a las entradas y salidas analógicas en el contexto de la automatización y control, destacando la importancia de los sensores, la calibración y la modulación por ancho de pulso (PWM). Se describen aplicaciones prácticas como la lectura de sensores y el control de dispositivos activos, así como ejemplos de código para implementar estas funciones. Además, se discuten conceptos como la resolución, voltaje de referencia y la diferencia entre señales analógicas puras y señales PWM.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
35 vistas23 páginas

Entradas Analogicas

El documento proporciona una introducción a las entradas y salidas analógicas en el contexto de la automatización y control, destacando la importancia de los sensores, la calibración y la modulación por ancho de pulso (PWM). Se describen aplicaciones prácticas como la lectura de sensores y el control de dispositivos activos, así como ejemplos de código para implementar estas funciones. Además, se discuten conceptos como la resolución, voltaje de referencia y la diferencia entre señales analógicas puras y señales PWM.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

INTRODUCCIÓN

A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
DIGITALES
● Menos susceptibles al ruido

ANALOGICAS
ENTRADAS Y
● Más sensibles a las interferencias SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
● Lectura de Sensores Ambientales:
○ Sensores de Temperatura
○ Sensores de Luz
○ Sensores de Humedad

● Interfaz de Usuario INTRODUCCIÓN


○ Potenciómetros
○ Joysticks Analogicos
A LAS
Monitoreo y Registro de Datos
ENTRADAS Y
SALIDAS

○ Sensores de Presión y Fuerza
○ Sensores de Nivel de Agua
ANALOGICAS
● Control de Dispositivos Activos
○ Control de Motores DC
○ Control de Brillo de Leds

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
● Resolución:
○ 10 bits (1024 niveles distintos)

Voltaje de Referencia:
INTRODUCCIÓN

○ Vref: Puede ser 5V o 3.3V
○ El valor de referencia puede configurarse mediante la función:
analogReference(type) A LAS
type puede ser
DEFAULT 5V o 3.3V
ENTRADAS Y
INTERNAL 1.1V O 2.56V
EXTERNAL voltaje aplicado al pin AREF
SALIDAS
ANALOGICAS
● La frecuencia de muestreo depende del tiempo de conversión y de la
frecuencia del reloj.

● En general se busca linealidad, pero puede existir alguna desviación


Automatización y Control - Programación
Ing. Martín. Pedro M.
● Resolución:
○ 10 bits (1024 niveles distintos)

Voltaje de Referencia:
INTRODUCCIÓN

○ Vref: Puede ser 5V o 3.3V
○ El valor de referencia puede configurarse mediante la función:
analogReference(type) A LAS
type puede ser
DEFAULT 5V o 3.3V
ENTRADAS Y
INTERNAL 1.1V O 2.56V
EXTERNAL voltaje aplicado al pin AREF
SALIDAS
ANALOGICAS
● La frecuencia de muestreo depende del tiempo de conversión y de la
frecuencia del reloj.

● En general se busca linealidad, pero puede existir alguna desviación


Automatización y Control - Programación
Ing. Martín. Pedro M.
// Definir el pin del potenciómetro
const int potPin = A0;

// Variables para almacenar los valores leídos


int rawValue = 0;
float voltage = 0.0;

void setup() {
// Iniciar la comunicación serial a 9600 baudios

INTRODUCCIÓN
Serial.begin(9600);

// Configurar el pin A0 como entrada (opcional, ya que es la configuración predeterminada)

A LAS
pinMode(potPin, INPUT);
}

void loop() {

ENTRADAS Y
// Leer el valor crudo del ADC (0-1023)
rawValue = analogRead(potPin);

SALIDAS
// Convertir el valor crudo a voltaje
// ADC de 10 bits (1024 niveles) y referencia de 3.3V
voltage = rawValue * (3.3 / 1023.0);

// Imprimir los valores en la consola serial


Serial.print("Valor crudo del ADC: ");
Serial.print(rawValue);
ANALOGICAS
Serial.print("\tVoltaje: ");
Serial.print(voltage);
Serial.println(" V");

// Esperar 500 milisegundos antes de la próxima lectura


delay(500);
}

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
● Importancia de calibración en aplicaciones de sensores
A LAS
● Metodos de calibración para diferentes tipos de sensores ENTRADAS Y
● Ejemplos prácticos de calibración de sensores analogicos SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
// Definir el pin del potenciómetro
const int potPin = A0;

// Tamaño del filtro de media móvil


const int filterSize = 10;
int readings[filterSize]; // Arreglo para almacenar las lecturas
int readIndex = 0; // Índice de la lectura actual
int total = 0; // Suma de las lecturas
int average = 0; // Media de las lecturas

void setup() {
// Iniciar la comunicación serial a 9600 baudios
Serial.begin(9600);

INTRODUCCIÓN
// Inicializar todas las lecturas a 0
for (int i = 0; i < filterSize; i++) {
readings[i] = 0;
}
}

A LAS
void loop() {
// Restar la lectura más antigua del total
total = total - readings[readIndex];

ENTRADAS Y
// Leer el valor crudo del ADC (0-1023)
readings[readIndex] = analogRead(potPin);

// Añadir la nueva lectura al total


total = total + readings[readIndex];

SALIDAS
// Avanzar al próximo índice
readIndex = readIndex + 1;

// Si llegamos al final del arreglo, volver al inicio

ANALOGICAS
if (readIndex >= filterSize) {
readIndex = 0;
}

// Calcular la media de las lecturas


average = total / filterSize;

// Convertir la media a voltaje


float voltage = average * (3.3 / 1023.0);

// Imprimir los valores en la consola serial


Serial.print("Valor crudo filtrado del ADC: ");
Serial.print(average);
Serial.print("\tVoltaje filtrado: ");
Serial.print(voltage);
Serial.println(" V");

Automatización y Control - Programación


// Esperar 100 milisegundos antes de la próxima lectura
delay(100);
}
Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
La modulacion por ancho de pulso es una tecnica utilizada para simular senales
analogicas utilizando senales digitales.

● Ciclo de Trabajo (Duty Cycle): es el porcentaje de tiempo que la señal


PWM permanece en alto. INTRODUCCIÓN
● Frecuencia: es la velocidad a la que la señal PWM alterna entre estados. A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
Señal PWM:
● Es una señal digital que alterna rápidamente entre encendido y apagado.

● La proporción de tiempo encendido a apagado determina el ciclo de trabajo y, INTRODUCCIÓN


por tanto, la aparente magnitud analogica.
A LAS
ENTRADAS Y
● Utilizada en aplicaciones donde no se necesita una senal analogica pura, como
en el control de brillo de leds y velocidad de motores.

Señal Analogica Pura: SALIDAS


● Es una señal continua que puede tomar cualquier valor dentro de un rango
definido.
ANALOGICAS
● Más adecuada para aplicaciones que requieren señales precisas y sin
fluctuaciones.

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
//Heartbeat fading effect
int brightness = 0;

void setup()
{

}
pinMode(9, OUTPUT);
INTRODUCCIÓN
void loop() A LAS
ENTRADAS Y
{
for (brightness = 0; brightness <= 255; brightness += 5) {

SALIDAS
analogWrite(9, brightness);
delay(30); // Wait for 30 millisecond(s)

ANALOGICAS
}
for (brightness = 255; brightness >= 0; brightness -= 5) {
analogWrite(9, brightness);
delay(30); // Wait for 30 millisecond(s)
}
}

Automatización y Control - Programación


Ing. Martín. Pedro M.
INTRODUCCIÓN
A LAS
ENTRADAS Y
SALIDAS
ANALOGICAS

Automatización y Control - Programación


Ing. Martín. Pedro M.
#include <Servo.h>

INTRODUCCIÓN
Servo myServo;

A LAS
void setup() {
myServo.attach(9);
}

void loop() {
myServo.write(0); // Mover el servo a 0 grados ENTRADAS Y
SALIDAS
delay(10000); // Esperar 10 segundos

ANALOGICAS
myServo.write(180); // Mover el servo a 180 grados
delay(10000); // Esperar 10 segundos
}

Automatización y Control - Programación


Ing. Martín. Pedro M.

También podría gustarte