ROBÓTICA

MODELO ARDUINO 1:

En esta oportunidad montaremos un sistema de un led, en proboard, en donde aprenderemos el efecto de FADE-IN / FADE-OUT.

Lista de Materiales:

  • Arduino UNO Rev.3.
  • Cable USB tipo A-B.
  • 1 LEDS 3mm
  • 1 Resistencias de 220Ω.
  • Protoboard.
  • Cables de conexión. 
MONTAJE:

MONTAJE HECHO EN EL TALLER DE ROBÓTICA
DIAGRAMA DE ARDUINO CON DOS LEDS
DIAGRAMA DE ARDUINO CON 3 LEDS

Resultado de imagen para SENSOR SHIELD L293DPROGRAMA:
Resultado de imagen para SENSOR SHIELD L293D


SENSOR SHIELD L293D:

Shield Motor Driver L293D
SENSOR SHIELD L293D


Resultado de imagen para SENSOR SHIELD L293D



INFO

El Shield Motor Driver L293D fue diseñado por Adafruit para facilitar el control de motores con Arduino. El shield facilita el control de hasta 4 motores DC o 2 motores paso a paso unipolares o bipolares y 2 servomotores pequeños (SG90 o MG90). Posee dos drivers puente H L293D manejados por un Chip conversor serial a paralelo 74HC595, reduciendo notablemente el uso de pines de Arduino. El Shield es compatible con Arduino Uno, Mega y Leonardo.
El conversor 74HC595 expande 4 pines (4,7,8,12) de Arduino a 8 pines necesarios para manejar la dirección de los drivers L293D. Las señales
"Enable" de los drivers están conectadas directamente a pines PWM de Arduino (3,5,6,11), permitiendo controlar la velocidad de los motores.
El Shield motor L293D soporta:
  • 4 Motores DC bidireccionales (con control de velocidad individual)
  • ó 2 Motores Paso a Paso (unipolares o bipolares)
  • 2 conexiones para servomotores (SG90 o MG90S)

ESPECIFICACIONES TÉCNICAS

  • Voltaje de potencia (motores): 4.5V-24V DC
  • Corriente DC por canal: 600mA
  • Corriente pico por canal: 1.2A
  • Incorpora 2 circuitos integrados L293D proporcionando 4 puentes-H completos
  • Protección contra sobre carga térmica
  • Diodos de protección internos contra voltajes inversos generados por las cargas inductivas
  • 4 canales (M1, M2, M3 y M4) para controlar igual número de cargas inductivas como motores DC ó 2 motores paso a paso unipolares o bipolares de entre 4.5 V y 24 V
  • Permite controlar tanto la velocidad como la dirección de giro de los motores
  • Control de velocidad de motores DC con resolución de 8 bits (PWM)

MAPA MENTAL

SENSOR PIR


Resultado de imagen para sensor pir arduino
SENSOR PIR ARDUINO


https://www.prometec.net/wp-content/uploads/2015/09/400px-Sensor_PIR_SR501_12.jpg
En esta sesión nos vamos a centrar en los sensores PIR,  que son elementos que detectan cambios en la radiación infrarroja que reciben y que disparan una alarma al percibirlo.
Los PIR más frecuentes son sensores de movimiento, y para ello están divididos en dos mitades de forma que detecten el cambio de radiación IR que reciben uno y otro lado, disparando la alarma cuando perciben ese cambio.






Parece un poco más complicado que los sensores que hemos usado hasta ahora, pero la verdad es que se trata de una tecnología muy fiable y que cuenta con la ventaja adicional de ser baratos y múltiples fuentes de suministro disponibles.
El propio sensor PIR se puede comprar independientemente:

https://www.prometec.net/wp-content/uploads/2015/09/Pyrosensor.gif

ESQUEMA DE CONEXIÓN


Esquema de protoboard

MAPA MENTAL



Utilizando el potenciómetro con Arduino


Agregar 4 LEDs a nuestro circuito. Así según vayamos modificando la posición del potenciómetro iremos encendiendo un LED u otro. Monta el cirucito del siguiente esquema


Potenciómetro y LED conexión
Los rangos de valores que tenemos son los siguientes:
  • De 0 a 255, encender LED 1
  • De 256 a 511, encender LED 2
  • De 512 a 767, encender LED 3
  • De 768 a 1023, encender LED 4
Ahora, según el potenciómetro esté variando la entrada analógica, podremos encender un LED u otro. Esto lo vamos a programar a través de varios if anidados.

El código



long valor;
//Declaramos los pins de los LEDs
int LED_1 = 2;
int LED_2 = 3;
int LED_3 = 4;
int LED_4 = 5;
void setup() {
  //Inicializamos la comunicación serial
  Serial.begin(9600);
  
  //Escribimos por el monitor serie mensaje de inicio
  Serial.println("Inicio de sketch - valores del potenciometro");
  pinMode(LED_1, OUTPUT);
  pinMode(LED_2, OUTPUT);
  pinMode(LED_3, OUTPUT);
  pinMode(LED_4, OUTPUT);
}
void loop() {
  // leemos del pin A0 valor
  valor = analogRead(A0);
  //Imprimimos por el monitor serie
  Serial.print("El valor es = ");
  Serial.println(valor);
  if(valor >= 0 && valor <=255)
  {
      digitalWrite(LED_1, HIGH);
      digitalWrite(LED_2, LOW);
      digitalWrite(LED_3, LOW);
      digitalWrite(LED_4, LOW);
  }
  
  if (valor >= 256 && valor <=511)
  {
      digitalWrite(LED_1, LOW);
      digitalWrite(LED_2, HIGH);
      digitalWrite(LED_3, LOW);
      digitalWrite(LED_4, LOW);
  }
  if (valor >= 512 && valor <=767)
  {
      digitalWrite(LED_1, LOW);
      digitalWrite(LED_2, LOW);
      digitalWrite(LED_3, HIGH);
      digitalWrite(LED_4, LOW);
    }
  if (valor >= 768 && valor <=1023)
  {
      digitalWrite(LED_1, LOW);
      digitalWrite(LED_2, LOW);
      digitalWrite(LED_3, LOW);
      digitalWrite(LED_4, HIGH);
   }
}


Conclusión

El potenciómetro es un componente electrónico muy utilizado en Arduino y es conveniente saber cómo se utiliza. En este artículo te he mostrado su uso básico. Intenta practicar con más ejemplos y familiarizarte con este componente.























Comentarios