sábado, 30 de abril de 2011

Experimentación 1 con ARDUINO UNO "instalación en windows 7 y ejercicios"

  En las primeras experimentaciones con la tarjeta ARDUINO nos tuvimos que enfrentar con un primer problema y fue la aparicion de un "Error" en el momento de instalacion en el Windows 7:

avrdude: stk500_getsync () : not in sync: resp=0x30
avrdude: stk500_getsync () : protocol error, expect=0x14, resp=0x51




Despues de aparecer este error, los pasos a seguir para solucionarlos son los siguientes:

VIDEO


  • Conecta la board y espera a que windows inicie el proceso de instalación, despues de unos minutos este fallará
  • Haz Click en Menu Inicio, posiciona el mouse en equipo y presiona click derecho, eligiendo la opción de propiedades
  • Ahora elije la opción de administrador de dispositivos, mira debajo de los puertos (COM & LPT) o en otros dispositivos, debe aparecer Arduino UNO
  • Da Click derecho en "Arduino UNO " y elije la opción de actualizar software del controlador.
  • Despues elije la opción buscar software de controlador en el equipo y selecciona la carpeta donde descargaste Arduino-0021 o superior
  • El Arduino-0021 o superior lo puedes descargar dando clik en Descarga arduino software
  • Busca la carpeta drivers y seleccionala (sólo la carpeta drivers no la FTDI QUE SE ENCUENTRA INTERNA), sigue la instalación de manera normal
  • Ahora ya esta listo el PC para trabajar con la board Arduino UNO

.........................

Primer ejercicio:
1) ---Encender y apagar un LET:


Esquema:


En este caso aprendimos como modificar los tiempos de encendido y pagado del LET modificando el "delay" del código inserto en el programa "ARDUINO0022" el cual es el siguiente:
----------------------------------------------------

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
 */

void setup() {              
  // initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards:
  pinMode(13, OUTPUT);  
}

void loop() {
  digitalWrite(13, HIGH);   // set the LED on
  delay(1000);              // wait for a second
  digitalWrite(13, LOW);    // set the LED off
  delay(1000);              // wait for a second
}



-------------------------------------------------------------------

Codigo Modificado: (el delay se modifica de 1000 a 3000 ---cada 1000 unidades corresponde a 1 segundo de duracion de encedido "HIGH" o apagado "LOW")
---------------------------------------------------------------------


/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
 */

void setup() {              
  // initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards:
  pinMode(13, OUTPUT);  
}

void loop() {
  digitalWrite(13, HIGH);   // set the LED on
  delay(3000);              // wait for a second
  digitalWrite(13, LOW);    // set the LED off
  delay(3000);              // wait for a second
}

------------------------------------------------------------------


Segundo ejercicio:
1) ---Controladores Auto Fantastico:

Esquema:


Para esto es necesario una tarjeta multiconectora que no tenemos en este momento pero fue hecho un circuito con cables y se logró el objetivo que es hacer que varios LETs se iluminaran uno después de otro de una forma rítmica:

CODIGO FUENTE:

/* El coche fantástico 1
* ---------------------
 *
 * Basicamente una extensión del LED parpadeante.
 *
 *
 * (cleft) 2005 K3, Malmo University
 * @author: David Cuartielles
 * @hardware: David Cuartielles, Aaron Hallborg
 */
int pin2 = 2;                   // PIN-es de los LED
 int pin3 = 3;
 int pin4 = 4;
 int pin5 = 5;
 int pin6 = 6;
 int pin7 = 7;
 int timer = 100;                // Temporizador
void setup(){ // Configuración de
pinMode(pin2, OUTPUT);         // los PIN-es como salida               
  pinMode(pin3, OUTPUT);
  pinMode(pin4, OUTPUT);
  pinMode(pin5, OUTPUT);
  pinMode(pin6, OUTPUT);
  pinMode(pin7, OUTPUT);
}
void loop() {
digitalWrite(pin2, HIGH);     // Enciende y apaga 
   delay(timer);                 // secuencialmente los LED-s
   digitalWrite(pin2, LOW);
   delay(timer);
digitalWrite(pin3, HIGH);
   delay(timer);
   digitalWrite(pin3, LOW);
   delay(timer);
digitalWrite(pin4, HIGH);
   delay(timer);
   digitalWrite(pin4, LOW);
   delay(timer);
digitalWrite(pin5, HIGH);
   delay(timer);
   digitalWrite(pin5, LOW);
   delay(timer);
digitalWrite(pin6, HIGH);
   delay(timer);
   digitalWrite(pin6, LOW);
   delay(timer);
digitalWrite(pin7, HIGH);
   delay(timer);
   digitalWrite(pin7, LOW);
   delay(timer);
digitalWrite(pin6, HIGH);
   delay(timer);
   digitalWrite(pin6, LOW);
   delay(timer);
digitalWrite(pin5, HIGH);
   delay(timer);
   digitalWrite(pin5, LOW);
   delay(timer);
digitalWrite(pin4, HIGH);
   delay(timer);
   digitalWrite(pin4, LOW);
   delay(timer);
digitalWrite(pin3, HIGH);
   delay(timer);
   digitalWrite(pin3, LOW);
   delay(timer);
}





-----------------------------------------------------------------------

Tercer ejercicio:
1) --Lectura de un Pulsador:

El pulsador es un componente que conecta dos puntos de un circuito cuando es presionado.



CÓDIGO FUENTE:
---------------------------------------------------------------------------------------

/* Pulsador
* --------
 *
 * Detecta si el botón ha sido presionado o no
 * y enciende el LED en consecuencia. 
 *
 * Massimo Banzi
 *
 */
int ledPin = 13;                // PIN del LED
 int inPin = 10;                 // PIN del pulsador
 int value = 0;                  // Valor del pulsador
void setup() {
pinMode(ledPin, OUTPUT);  // Inicializa el pin 13 como salida digital
  pinMode(inPin, INPUT);    // Inicializa el pin 10 como entrada digital
}
void loop() {
value = digitalRead(inPin);   // Lee el valor de la entrada digital 
  digitalWrite(ledPin, value);           
}


-----------------------------------------------------------------------------------------------------------------------


En este ejemplo no pudimos lograr por el momento lo propuesto debido a que hubo una mala conexión y se bloqueo el puerto USB automáticamente del computador pero seguiremos en experimentación.

No hay comentarios:

Publicar un comentario