Girassol Eletrônico com Arduino: Rastreador Solar Autônomo
Componentes e Materiais
| Arduino UNO | × | 1 |
| Sensor de Luz (RobotGeek / Crowtail Light Sensor) | × | 4 |
| Potenciômetro Linear (Crowtail) – 2 unid. | × | 2 |
| Pan-Tilt com Servos 9G (Crowtail) | × | 1 |
| Base Shield para Arduino (Crowtail / Seeed V2) | × | 1 |
| Cabos Crowtail 3 pinos – 6 unid. | × | 6 |
| Papelão (2 folhas), Placa de Isopor (1), Palito de Madeira (1) | × | - |
Software
- Arduino IDE
- Biblioteca Servo (nativa)
Sobre o Projeto
Um maker está sempre atento a coisas novas e divertidas. Vi um vídeo de um girassol seguindo o sol e tive a ideia: por que não fazer um dispositivo eletrônico que imite esse biomecanismo?
Nos dias seguintes, montei o projeto com peças do nosso estoque. Testei com o LED do celular — funcionou perfeitamente! Postei vídeo nas redes sociais e muita gente pediu o tutorial. Aqui está.
Passo 1: Preparação

Materiais listados acima.
Passo 2: Cabeça do Dispositivo

Corte duas peças de papelão (metades de uma cruz). Monte em formato de cruz. Cole o palito no centro — será a "cabeça" que aponta para o sol, além de dar estabilidade e beleza.
Passo 3: Instalar 4 Sensores de Luz

Fure 4 orifícios no isopor para os sensores e um central para o palito. Numere os sensores (1 a 4) para identificar posição.
Passo 4: Conectar Sensores com Cabos

Cole o palito no isopor com cola quente. Plugue os cabos nos sensores.
Passo 5: Fixar Palito no Pan-Tilt

Fixe o palito no pan-tilt. O assento dos sensores deve ficar conforme a foto: sensores 1 e 2 na parte inferior. O pan-tilt usa servos 9G com rotação de 180° nos eixos horizontal e vertical. Por fim, fixe os painéis solares decorativos no isopor (não geram energia).
Passo 6: Carregar o Código

Empilhe o Crowduino (Arduino Uno compatível) com a Base Shield. Conecte via USB micro ao computador, abra a Arduino IDE e carregue o código (abaixo).
Passo 7: Conectar 4 Sensores ao Shield

Conecte cabos dos sensores 1 a 4 nas portas analógicas correspondentes:
- Cabo "1" → A0
- Cabo "2" → A1
- Cabo "4" → A2
- Cabo "3" → A3
Passo 8: Conectar Potenciômetros

Conecte os dois potenciômetros lineares nas portas A4 e A5. São idênticos, mas:
- A4 → controla o atraso de tempo de reação (delay)
- A5 → controla a velocidade de rotação dos servos
Passo 9: Conectar Pan-Tilt ao Shield

Servo inferior (movimento horizontal) → D9. Servo superior (movimento vertical) → D10.
Passo 10: Alimentação

O Crowduino é o controlador principal. Alimente com power bank USB (portátil) ou adaptador DC (fixo).
Passo 11: Teste!

Feche a caixa. Levei a um quarto escuro, acendi a lanterna do celular e... uau! O girassol segue a luz. Parece difícil, mas é simples. Faça e melhore o visual!
Código
Arquivo: CODE FOR ARDUINO SUNFLOWER.ino
#include <Servo.h>
Servo horizontal; // servo horizontal
int servoh = 90;
Servo vertical; // servo vertical
int servov = 90;
// Pinos dos LDRs (portas analógicas)
int ldrrd = 0; // baixo direita
int ldrld = 1; // baixo esquerda
int ldrlt = 2; // topo esquerda
int ldrrt = 3; // topo direita
void setup() {
Serial.begin(9600);
horizontal.attach(9);
vertical.attach(10);
}
void loop() {
int lt = analogRead(ldrlt);
int rt = analogRead(ldrrt);
int ld = analogRead(ldrld);
int rd = analogRead(ldrrd);
int dtime = analogRead(4) / 20; // potenciômetro A4: delay
int tol = analogRead(5) / 4; // potenciômetro A5: tolerância/velocidade
int avt = (lt + rt) / 2; // média topo
int avd = (ld + rd) / 2; // média base
int avl = (lt + ld) / 2; // média esquerda
int avr = (rt + rd) / 2; // média direita
int dvert = avt - avd; // diferença vertical
int dhoriz = avl - avr; // diferença horizontal
// Ajuste 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);
}
// Ajuste 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);
}
Peças Personalizadas
Foto do modelo da cabeça (cruz de papelão) na seção "Custom parts".
Esquemático

Processo de manufatura
- Crie um Sistema Ambilight Impressionante para Monitor com Arduino
- Construa o Clássico Jogo Pong no Arduino UNO com Display OLED – Tutorial Passo a Passo
- Detector de Frequência de Áudio com Arduino – Meça Picos de Som com Módulo de Alta Sensibilidade
- Construa Seu Próprio Tamagotchi com Arduino: Projeto DIY de Pet Digital
- Camaleão Eletrônico: Projeto Arduino Nano com LED RGB e Sensor de Cor
- Controlador Inteligente de Interruptor de Luz Sem Fio: Manipulador Remoto Baseado em Arduino
- Jogo da Velha com Arduino, Matriz LED MAX7219 e Caixa de Papelão
- Pistola de Água Inteligente com Detecção de Movimento usando Arduino Nano
- Construa um Temporizador Regressivo Confiável com Arduino e Display de 7 Segmentos SparkFun
- Sistema Eletrônico de Check-in Inteligente para Hackerspaces