Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Girasol Arduino: Construye un Girasol Electrónico que Sigue al Sol

Componentes y materiales

Aplicaciones y servicios online

Sobre el proyecto

Un maker siempre está atento a cosas nuevas y curiosas. Un día vi un video donde un girasol se movía siguiendo al sol. Tuve una revelación: ¿por qué no hacer un dispositivo electrónico que imite ese biomaecanismo?

En los días siguientes llevé a cabo mi proyecto de seguidor solar. Seleccioné la placa Crowtail como microcontrolador y cogí componentes de nuestro almacén. Los monté y lo probé con el LED del móvil. ¡Funcionó perfecto!

Me emocioné y subí el video demo a redes sociales. Me sorprendió que a mucha gente le gustara y lo compartiera, y algunos me pidieron tutorial. Así que rehice el proyecto y hice este tutorial específico para que más gente pueda hacerlo. ¡Allá vamos!

Paso 1: Preparación

Materiales necesarios (ver lista arriba).

Paso 2: Hacer la "cabeza" del dispositivo

Corta dos piezas de cartón como en las fotos (mitades de una cruz). Ensámblalas en forma de cruz. Pega el palito en el centro de la cruz: será la "cabeza" que siempre apunte al sol, y da estabilidad y estética.

Paso 3: Instalar 4 sensores de luz

Perfora 4 agujeros adecuados en el porexpan para los 4 sensores, y un agujero central para pasar el palito. Numera los sensores para distinguir su ubicación.

Paso 4: Conectar sensores con cables

Fija el palito al porexpan con silicona caliente y enchufa los cables a los sensores.

Paso 5: Fijar el palito al Pan-Tilt

Fija el palito al mecanismo Pan-Tilt. La base del sensor debe coincidir con la foto: sensores "1" y "2" en la parte inferior. El Pan-Tilt es un dispositivo montado con servos 9G que controla rotación vertical y horizontal 180°.

Por último, fija el panel solar (decorativo, sin función de alimentación) al porexpan.

Paso 6: Subir el código

Saca el Crowduino y el Crowtail Base Shield, apílalos. Antes de conectar cables al shield, sube el código al Crowduino (necesitas cable micro USB). Conecta Crowduino al PC y abre Arduino IDE.

Paso 7: Conectar 4 sensores al Shield

Conecta los cables de los sensores al shield, correspondiendo números uno a uno:

Paso 8: Conectar potenciómetros al Shield

Conecta los dos potenciómetros a A4 y A5 del shield. No hay diferencia entre ellos, pero:

Paso 9: Conectar Pan-Tilt al Shield

Paso 10: Alimentación

El Crowduino es la placa controladora principal. Puedes alimentarlo con power bank USB o adaptador DC, según quieras dispositivo móvil o fijo.

Paso 11: ¡A probar!

Cierra la caja. Parece que no puede esperar a perseguir la luz. Tranquilo, probémoslo.

Lo llevé a una habitación oscura, encendí la linterna del móvil, y ¡WOW! Mira qué mono.

Parece difícil pero es bastante simple, ¡así que a hacerlo! Y puedes ayudar a que se vea más potente y chulo.

Código

CÓDIGO PARA ARDUINO GIRASOL

#include <Servo.h>
Servo horizontal; // servo horizontal
int servoh = 90; // posición inicial horizontal
Servo vertical; // servo vertical
int servov = 90; // posición inicial vertical

// Pines LDR (entradas analógicas)
int ldrrd = 0; // abajo derecha
int ldrld = 1; // abajo izquierda
int ldrlt = 2; // arriba izquierda
int ldrrt = 3; // arriba derecha

void setup() {
  Serial.begin(9600);
  horizontal.attach(9);
  vertical.attach(10);
}

void loop() {
  int lt = analogRead(ldrlt); // arriba izq
  int rt = analogRead(ldrrt); // arriba der
  int ld = analogRead(ldrld); // abajo izq
  int rd = analogRead(ldrrd); // abajo der

  int dtime = analogRead(4) / 20; // leer potenciómetro A4 (retardo)
  int tol = analogRead(5) / 4;    // leer potenciómetro A5 (tolerancia/velocidad)

  int avt = (lt + rt) / 2; // media arriba
  int avd = (ld + rd) / 2; // media abajo
  int avl = (lt + ld) / 2; // media izquierda
  int avr = (rt + rd) / 2; // media derecha

  int dvert = avt - avd; // diferencia vertical
  int dhoriz = avl - avr; // diferencia horizontal

  // Control vertical
  if (-1 * tol > dvert || dvert > tol) {
    if (avt > avd) {
      servov = ++servov;
      if (servov > 180) servov = 180;
    } else if (avt < avd) {
      servov = --servov;
      if (servov < 0) servov = 0;
    }
    vertical.write(servov);
  }

  // Control horizontal
  if (-1 * tol > dhoriz || dhoriz > tol) {
    if (avl > avr) {
      servoh = --servoh;
      if (servoh < 0) servoh = 0;
    } else if (avl < avr) {
      servoh = ++servoh;
      if (servoh > 180) servoh = 180;
    }
    horizontal.write(servoh);
  }

  delay(dtime);
}

Piezas personalizadas

Foto del montaje final (ver imagen adjunta en proyecto original).

Esquemáticos

Esquema de conexiones disponible en la documentación del proyecto.

Proceso de manufactura

  1. Crea un Impresionante Sistema Ambilight para Monitor con Arduino
  2. Construya el clásico juego Pong en Arduino UNO con pantalla OLED: Tutorial paso a paso
  3. Detector de frecuencia de audio con Arduino – Mide los picos de sonido más intensos
  4. Construye tu Propio Tamagotchi con Arduino: Mascota Digital DIY
  5. Camaleón Electrónico: Arduino Nano, LED RGB y Sensor de Color
  6. Controlador Inalámbrico Inteligente de Interruptores: Manipulador Remoto Basado en Arduino
  7. Tres en raya con Arduino, matriz LED MAX7219 y carcasa de cartón
  8. Pistola de Agua Inteligente Activada por Movimiento con Arduino Nano
  9. Construye un Temporizador Regresivo Fiable con Arduino y Pantalla de 7 Segmentos SparkFun
  10. Sistema electrónico de check-in inteligente para hackerspaces
  11. Construye tu Propio Coche RC Porsche con Arduino: Guía Paso a Paso