jueves, 26 de marzo de 2015

LABORATORIO 2


 DESCRIPCIÓN DEL LABORATORIO
 consiste el controlar el tiempo de encendido y apagado de 8 LEDs usando dos potenciometros (un potenciometro para los tiempos de encendido, otro potenciometro para los tiempos de apagado).

MATERIALES:
  • Arduino 
  • 8 LEDs
  • 8 resistencias
  • 2 potenciometros (10 K)
  • Computador (con el IDE de Arduino, y el driver adecuado instalados)

MONTAJE PASO A PASO:
  • montamos  en la protoboard
















DIAGRAMAS  ( FRITZING)
  • En protoboard



  • En ESQUEMATICO





  • EN PCB


    • VIDEO DEL FUNCIONAMIENTO:






  • CÓDIGO FUENTE EN ARDUINO. 

  • 1:  /********** Proyecto **********  
    2:   * Laboratorio 02: 8 LEDs en linea controlados con Potenciometros  
    3:   * Autor: FANOR STIWAR ZAPATA  
    4:   * Descripcion:  
    5:   *  Mover un LED encendido de Izquierda a Derecha y viceversa  
    6:   *  con tiempos controlados por potenciometros  
    7:   * Conexiones:  
    8:   *  8 LEDs + resistencias a los pines D2 .. D9  
    9:   *  2 Potenciometros a los pines A0 y A1  
    10:   * Version: 1  
    11:   */  
    12:     
    13:  /********** Librerias **********/  
    14:     
    15:  // ninguna  
    16:     
    17:  /********** Constantes **********/  
    18:     
    19:  #define POT1 A0  
    20:    
    21:  #define POT2 A1  
    22:    
    23:  #define TOTLED 8 // Total LEDs  
    24:    
    25:  /********** Objetos **********/  
    26:    
    27:  // ninguno  
    28:    
    29:  /********** Variables **********/  
    30:    
    31:  int led[TOTLED] = {  
    32:    
    33:  2, 3, 4, 5, 6, 7, 8, 9  
    34:    
    35:  };  
    36:    
    37:  int t_encendido = 500;  
    38:    
    39:  int t_apagado = 500;  
    40:    
    41:  /********** Configuracion **********/  
    42:    
    43:  void setup() {  
    44:    
    45:  int pos = 0;  
    46:    
    47:  while (pos < TOTLED) {  
    48:    
    49:  pinMode(led[pos], OUTPUT);  
    50:    
    51:  pos = pos + 1;  
    52:    
    53:  }  
    54:    
    55:  pinMode(POT1, INPUT);  
    56:    
    57:  pinMode(POT2, INPUT);  
    58:    
    59:  } // end setup()  
    60:    
    61:  /********** Ciclo Principal **********/  
    62:    
    63:  void loop() {  
    64:    
    65:  // Acciones  
    66:    
    67:  for (int pos = 0; pos < TOTLED; pos++) {  
    68:    
    69:  leer();  
    70:    
    71:  on(led[pos], t_encendido);  
    72:    
    73:  off(led[pos], t_apagado);  
    74:    
    75:  }  
    76:    
    77:  for (int pos = TOTLED - 2; pos > 0; pos--) {  
    78:    
    79:  leer();  
    80:    
    81:  on(led[pos], t_encendido);  
    82:    
    83:  off(led[pos], t_apagado);  
    84:    
    85:  }  
    86:    
    87:  } // end loop()  
    88:    
    89:  /********** Funciones **********/  
    90:    
    91:  void leer()  
    92:    
    93:  {  
    94:    
    95:  // Sensores  
    96:    
    97:  t_encendido = analogRead(POT1);  
    98:    
    99:  t_apagado = analogRead(POT2);  
    100:    
    101:  }  
    102:    
    103:  // Pone en +5V el pin indicado, durante tantos milisegundos  
    104:    
    105:  void on(int pin, int ms) {  
    106:    
    107:  digitalWrite(pin, HIGH);  
    108:    
    109:  delay(ms);  
    110:    
    111:  } // end on()  
    112:    
    113:  // Pone en GND el pin indicado, durante tantos milisegundos  
    114:    
    115:  void off(int pin, int ms) {  
    116:    
    117:  digitalWrite(pin, LOW);  
    118:    
    119:  delay(ms);  
    120:    
    121:  } // end off()  
    122:    
    123:  /********** Fin ***********/  
    




    No hay comentarios:

    Publicar un comentario