jueves, 27 de febrero de 2014

LABORATORIO #1

Controlar Leds con movimiento consecutivo.

Para Iniciar con nuestro primer Laboratorio, es necesario establecer una descripción de lo que significa “Sistemas Embebidos”.


Como dice el nombre, forma parte de un conjunto más amplio, como puede ser una máquina, un electrodoméstico u otro sistema más amplio. Esta parte que está instalada en el interior de la máquina, es la que llamamos sistema embebido o empotrado. Su misión consiste en resolver una pequeña del conjunto que tiene que resolver la máquina en cuestión.

Por ejemplo, en el caso de una lavadora, esta se compone de un chasis, de motores eléctricos y bombas de agua, de un frontal con varias teclas para que el usuario pueda poner en marcha la lavadora, contiene temporizadores y válvulas eléctricas que controlan el flujo del agua, y más componentes.

En este conjunto nos podemos fácilmente imaginar la necesidad un circuito electrónico que contenga los diferentes programas de lavado del que disponga el electrodoméstico. Y por razones obvias, esta electrónica no sería otra cosa que un micro-ordenador, especialmente diseñado para dicho fin. Por lo tanto podemos hablar de un sistema embebido o empotrado en el interior de la lavador

Después de tener una idea más clara de nuestro objeto de estudio, podemos pasar ahora a nuestro primer Laboratorio.

1.       Descripción del Laboratorio
Nuestro objetivo será desde controlar 8 LED puestos de manera consecutiva, de manera que su encendido se mueva de izquierda a derecha y de derecha a izquierda.

2.       Elementos Utilizados
v  1 Computador
v  1 Protoboard
v  1 Arduino UNO
v  8 Resistencias
v  8 Leds
v  Alambre
v  Software “Arduino”
v  Software “Fritzing”
v   Potenciometro








3.Diagrama del Montaje

4.       Diagrama Esquemático
5.       Fotos del Montaje

6.       Video del funcionamiento
7.       Código Fuente Arduino







#define MAXLED 8
int pot=0;
int led[MAXLED] ={22,23,24,25,26,27,28,29};

void setup(){
for(int i=0; i<MAXLED; i++){
  pinMode(led[i],OUTPUT );
}
pinMode(pot,INPUT );
}
 
void loop()
{
  int valor = analogRead(pot);
  int i=map(valor,0,1023,0,MAXLED-1);
  digitalWrite(led[i], HIGH);
  delay(100);
  digitalWrite(led[i], LOW);
  delay(10);
}


No hay comentarios:

Publicar un comentario