Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Luz Led

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Electiva básica de ingeniería II 1

INTRODUCCIÓN A LA PROGRAMACIÓN CON ARDUINO

Angie Katherine Torres Daza, Lizeth Zamara Huertas Fajardo, Camila Andrea Mancera
González

La tecnología LED esta muy extendida. El primer


Resumen: Desarrollo de una Serie, bajo la uso comercial exitoso empezó con los diodos
plataforma de Arduino, que permite programar unas infrarrojos que se usan en los mandos a distancia de
líneas de código que tendrá el funcionamiento de todo tipo de aparatos.
aumentar y disminuir intensidad luminosa de led y a Actualmente los grandes avances en la tecnología
su mismo tiempo un motor de 9V, otras líneas de LED, han permitido que se puedan usar para crear
código es una luz de led en función de la luz, pantallas LED de grandes dimensiones, usadas
mostrando dichas líneas de código simulado por mayormente para la emisión de publicidad e
medio de proteus. El software del información en zonas de gran paso de personas.
proyecto utiliza exclusivamente soluciones
libres y de uso gratuito que permite facilidad al ¿Qué son salidas analógicas?
programador, estas líneas de código y simulaciones
dando como muestra resultados esperados. Los módulos de salida analógica permiten que el
valor de una variable numérica interna del autómata
I. INTRODUCCIÓN se convierta en tensión o intensidad.
en el siguiente trabajo se realiza ejercicios de
programación en Arduino Aumentar y disminuir Lo que realiza es una conversión D/A, puesto que el
luminosidad de led y luz de led en función de la luz, autómata solo trabaja con señales digitales. Esta
viéndose allí el código, demostrando de que trata conversión se realiza con una precisión o resolución
cada código y su funcionamiento para facilitar el determinada (número de bits) y cada cierto intervalo
desarrollo de el mismo y por su puesto el montaje de tiempo (periodo muestreo).
simulado ya en su funcionamiento final. Con el fin
de iniciar un proceso de aprendizaje en la plataforma Esta tensión o intensidad puede servir de referencia
de hardware libre. de mando para actuadores que admitan mando
analógico como pueden ser los variadores de
II. MARCO TEÓRICO velocidad, las etapas de los tiristores de los hornos,
reguladores de temperatura... permitiendo al
autómata realiza funciones de regulación y control de
¿Qué es un led?
procesos continuos.
Un led es un diodo emisor de luz. En su interior hay
El proceso de envío de la señal analógica consta de
un semiconductor que, al ser atravesado por una
varias etapas:
tensión continua, emite luz, lo que se conoce como
electroluminiscencia. Existen distintos tipos de led
Aislamiento galvánico
en función de las tecnologías usadas para su
Conversión D/A
fabricación y montajes sobre circuitos eléctricos.
Circuitos de amplificación y adaptación
El funcionamiento de un led se basa en la activación
por medio de corriente eléctrica de una combinación Protección electrónica de la salida
PN de un material semiconductor inorgánico. Según
el compuesto semiconductor utilizado se pueden
Como hemos visto las señales analógicas sufren un
obtener emisiones de luz de distintos colores.
gran proceso de adaptación tanto en los módulos de
Electiva básica de ingeniería II 2

entrada como en los módulos de salida. Las Placa Arduino UNO


funciones de conversión A/D y D/A que realiza son
esenciales. Por ello los módulos de E/S analógicos se Arduino UNO es una placa electrónica basada en el
les considera módulos de E/S especiales. microcontrolador aTmega328. Cuenta con 14
entradas/salidas digitales, de las cuales 6 se pueden
Salida PWM utilizar como salidas PWM (modulación por ancho
de pulso) y otras 6 son entradas analógicas. Además,
La modulación por ancho de pulso de una señal o incluye un resonador cerámico de 16MHz, un
fuente de energía es una técnica en la que se modifica conector USB, un conector de alimentación, una
el ciclo de trabajo de una señal periódica (una cabecera ICSP y un botón de reseteado la placa
senoidal o una cuadrada, por ejemplo), ya sea para incluye todo lo necesario para que el
transmitir información a través de un canal de microcontrolador hada su trabajo, basta conectarla a
comunicaciones o para controlar la cantidad de un ordenador con cable USB o la corriente eléctrica
energía que se envía a una carga. a través de un transformador.
La construcción típica de un circuito PWM se lleva a
cabo mediante un comparador con dos entradas y una Simulador proteus
salida. Una de las entradas se conecta a un oscilador
de onda diente de sierra, mientras que la otra queda Es un completo programa que permite diseñar y
disponible para la señal moduladora. En la salida la simular circuitos electrónicos. Todos aquellos que
frecuencia es generalmente igual a la de la señal trabajen en el ámbito de la electrónica les interesara
dientes de sierra y el ciclo de trabajo está en función la aplicación proteus. Se trata de un completo
de la portadora. programa que permite diseñar y simular circuitos
La principal desventaja que presentan los circuitos electrónicos de forma practica y accesible. Proteus
PWM es la posibilidad de que haya interferencia esta formado por dos utilidades principales: ARES e
generadas por radiofrecuencia. Estas pueden ISIS, y por módulos Electra y VSM. Si necesitas
minimizar ubicando el control cerca de la carga y crear componentes con proteus e ISIS será una tarea
realizando un filtro de la fuente de alimentación. fácil. Proteus cuenta con una gran cantidad de
funciones para trabajar con circuitos electrónico. Por
ARDUINO analogWrite ejemplo, permite generar pistas de cobre de forma
automática. Además, permite la simulación de PICs
La función de Arduino analogWrite permite uso del casi a tiempo real, de forma que esperábamos.
modulo de PWM. Este modulo puede generar una
señal de una frecuencia de 490Hz y modular el ciclo Programador Arduino
de trabajo (CT). El propósito de esta función es
generar una señal 490Hz al CT configurado. De Programar Arduino consiste en traducir a líneas de
hecho, a señal generada se mantendrá en el pin código las tareas automatizadas que queremos hacer
seleccionado hasta cualquier de las siguientes leyendo de los sensores y en función de las
condiciones: se ejecute otra instrucción analogWrite, condiciones del entorno programar la interacción con
se utilice digitalWrite o digital Read sobre el mismo el mundo exterior mediante unos actuadores.
pin. Arduino proporciona un entorno de programación
También es importante mencionar que, para usar a sencillo y potente para programar, pero además
esta función, no es necesario haber declarado el pin incluye las herramientas necesarias para compilar el
a usar como una salida digital. Es importante programa y “quemar” el programa ya compilado en
mencionar que para los pines 5 y6 de las tarjetas la memoria flash del microcontrolador, además el
UNO, la frecuencia es de 980Hz. IDE nos ofrece un sistema de gestión de librerías y
placas muy práctico. Como IDE es un sofware
sencillo que carece de funciones avanzadas típicas de
otro IDEs, pero suficiente para programar.
Electiva básica de ingeniería II 3

V. PROCEDIMIENTO PARA ÉL ENVIÓ DEL TRABAJO


I. DISEÑO DE LA PRACTICA

A. Etapa de Revisión
Esta práctica se desarrolla teniendo como base las
anteriores imágenes (extraídas del PDF “Ejercicios creación de las líneas de código:
de arduino”). Al realizar el corresponidente montaje
en el proteus
1. Aumentar y disminuir intensidad luminosa de
III. OBJETIVOS led(fading)
• introducción al Arduino.
• Primeros pasos con Arduino. Se trata aumentar y disminuir la luminosidad de un
• Funciones básicas para su programación. led usando la capacidad de ofrecer una tensión
• Ejemplo de aplicación. variable que da una salida analógica. Para ello se
• Conexionado de salidas analógicas (power conecta un led al pin 11 y se provoca que su
whith module pwm) luminosidad pase de mínima a máxima, para luego ir
• Conocer ordenes como analogWrite. de máxima a mínima. Los valores de salidas
• Repaso conexión de entrada analógica a analógicas van del mínimo 0 al
Arduino (lrd). máximo 255.
• Conexionado de salidas analógicas.
• Ordenes como:analogWrite. int luminosidad = 0; // variable para asignar la
• Repaso de visualizar datos en consola de luminosidad al led
puerto serie, con ordenes como: serial.begin, int led = 11; // pin del led
serial.print. void setup()
• Repaso de ordenes de control de programa {
como: if, else. // en el setup no hay que configurar nada
}
void loop()
IV. MATERIALES EMPLEADOS {
• Arduino uno for (luminosidad = 0 ; luminosidad <= 255;
• Resistencias de diferentes valores luminosidad=luminosidad+3) // fade in (from min
• Simulador proteus, arduino to max)
• Diodos leds {
• Pc analogWrite(led, luminosidad); // ilumina el led
con el valor asignado a luminosidad (entre 0 y 255)
delay(30); // espera 30 ms para que se vea el
NOTA: los materiales recogidos en este documento, efecto
listados de código y algunos textos explicativos han }
sido recogidos de los pdf: PRACTICA CON for (luminosidad = 255; luminosidad >=0;
ARDUINO NIVEL 1, ejercicios de Arduino, luminosidad=luminosidad-3) // fade out (from max
correspondiendo al autor de este documento la labor to min)
de compilación, traducción e incorporación de {
imágenes, organigramas y esquemas de analogWrite(led, luminosidad);
funcionamiento. delay(30);
}
}
Electiva básica de ingeniería II 4

Después de haber realizado el ejercicio anterior de lucir al nivel de potencia 64. Además, se
aumentar y disminuir la intensidad de un led, se deberá visionar el valor de voltaje en la entrada
realiza el mismo funcionamiento, pero cambiando el analógica (valor entre 0 y 1024).
led por un motor.
int led=9;
Se trata aumentar y disminuir la velocidad de un int ldr=0;
motor usando la capacidad de ofrecer una tensión int luz=0;
variable que da una salida analógica. Para ello se void setup(){
conecta un led al pin 11 y se provoca que su pinMode(9,OUTPUT);
velocidad pase de mínima a máxima, para luego ir de Serial.begin(9600);
máxima a mínima. Los valores de salidas analógicas }
van del mínimo 0 al void monitoriza(){
máximo 255. Serial.print("El valor de luz es ...");
Serial.println(luz);
int luminosidad = 0; // variable para asignar la
delay(1000);
luminosidad al led
}
int mortor = 11; // pin del led
void loop(){
void setup()
{ luz=analogRead(ldr);
// en el setup no hay que configurar nada monitoriza();
} if(luz<512 && luz>=0){
void loop() analogWrite(led,255);
{ }
for (luminosidad = 0 ; luminosidad <= 255; if(luz>=512 && luz<=1024) {
luminosidad=luminosidad+3) // fade in (from min to analogWrite(led,64);
max) }}
{
analogWrite(motor, luminosidad); // ilumina el led Después de haber realizado el ejercicio anterior de
con el valor asignado a luminosidad (entre 0 y 255) luz en función de la luz mostrándolo en un led, se
delay(30); // espera 30 ms para que se vea el efecto realiza el mismo funcionamiento, pero cambiando el
} led por un motor.
for (luminosidad = 255; luminosidad >=0;
luminosidad=luminosidad-3) // fade out (from max Se trata de un dispositivo que haga aumentar la
to min) velocidad de un motor más o menos en función de la
{ luz externa. Para ello conectaremos una ldr a la
analogWrite(motor, luminosidad);
entrada analógica 0 y un led al pin 9. Cuando la luz
delay(30);
se encuentra entre 0 y 512 el motor tendrá su potencia
}
máxima, si la luz se encuentra entre valores 512 y
}
1024 el debe ir a su nivel de potencia 64(potencia
2. Luz de led en función de la luz baja). Además, se deberá visionar el valor de voltaje
en la entrada analógica (valor entre 0 y 1024).
Se trata de un dispositivo que haga lucir un led
mas o menos en función de la luz externa. Para int motor=9;
ello conectaremos una ldr a la entrada int ldr=0;
analógica 0 y un led al pin 9. Cuando la luz se int luz=0;
encuentra entre 0 y 512 el led debe colocarse void setup(){
en el nivel de potencia máxima (255), si la luz pinMode(9,OUTPUT);
se encuentra entre valores 512 y 1024 el debe Serial.begin(9600);
Electiva básica de ingeniería II 5

}
void monitoriza(){
Serial.print("El valor de luz es ...");
Serial.println(luz);
delay(1000);
}
void loop(){
luz=analogRead(ldr);
monitoriza();
if(luz<512 && luz>=0){
analogWrite(motor,255);
}
if(luz>=512 && luz<=1024) { En esta imagen observamos la simulación del
analogWrite(motor,64); motor, su salida analógica cuando esta entre 0 a
}} 255 su velocidad va de menor a mayor, cuando
termina este ciclo va de mayor a menor, aumentado
3 en 3
B. Etapa Final (simulaciones)

A continuación, se adjuntan algunas simulaciones y


diagramas, para evidenciar el trabajo y los datos 2.Luz de led en función de la luz
extraídos por los estudiantes. Cabe resaltar que no
se encuentran todas las evidencias de este debido a
que generaría cierta saturación en el presente
informe.

1.aumentar y disminuir intensidad luminosa de


led(fading)

En esta imagen podemos observar por medio de la


simulación que en el momento que el sensor de luz
esta entre 0 a 512 su led entrega su potencia máxima,
esto quiere decir que entre ese rango el led alumbrara
su mayor luminosidad.

En la imagen se observa la simulación en el


momento que esta la salida analógica 0 a 255 y así
su luminosidad va de menor a mayor y al terminar
ese ciclo va de mayor a menor, esto aumentando 3
en 3.
Electiva básica de ingeniería II 6

• Desarrollar un buen manejo de lógica en el


programa, llevado un orden por si ocurre
alguna anomalidad poder contrarrestarla de
una manera más fácil.

REFERENCIAS
• “Ejercicios de Arduino resueltos”.grupo
sabika.
• “Raptor como entorno para desarrollar
En esta imagen observamos cuando el sensor se algoritmos de Arduino”.liber Andrey lar
encuentra entre 512 a 1024 el led tendrá su menor forero.
potencia, quiere decir que en momento que este en
ese rango el led tendrá una luminosidad muy baja. IX. CONCLUSIÓN
• Con el laboratorio realizado, es posible
concluir que existe un nivel de
programación básica lo que permite la fácil
aplicación.
• Se obtuvo de manera correcta la práctica
realizada, aun teniendo algunos percances,
pero posibles de solucionar.
• Se analiza que la entrada PW se lleva acabo
En esta imagen podemos observar la simulación del mediante un comparador con dos entradas
motor, en ese estado que se encuentra el ldr entre 0 a y una salida
512 el motor está entregando su mayor potencia, esto • Se analiza en la practica (luz de led en
quiere decir que eta girando rápido. función de la luz) que entre 0 a 512 el led
se coloca en su nivel de potencia máxima y
así mismo si se encuentra entere 512 y
1024 debe lucir en el nivel de potencia baja.
• Para llevar un mejor montaje (aumentar y
disminuir intensidad luminosa de led) y
proteger el motor se debe colocar una
configuración de transistores que van
conectados al mismo.
• Se coloco en practica las conexiones de
salida analógicas (power whith module
En esta imagen el ldr se encuentra entre 512 a 1024, pwm), conociendo ordenador de Arduino
en este estado que se encuentra el ldr el motor esta analogWrite, repasando la visualización de
entregando su potencia mas bajas, el motor va • datos en consola de puerto serie, con
girando lento. ordenadores como: serial.begin, serial.print
y por ultimo repaso de control de
programación como: if, else.
VI. RECOMENDACIONES
• Se analizo que al momento de trabajar con
• Tener presente que pin del Arduino un motor a la entrada pwm hay que
controla cierto LED para que no vallan a colocarle un transistor para proteger dicha
haber intermitencias en el desarrollo de la entrada de la tarjeta nano.
práctica.

También podría gustarte