Este projeto implementa um sistema de radar funcional usando um Arduino, um sensor ultrassônico HC-SR04 e um servomotor. A interface visual do radar é renderizada em tempo real no computador usando a plataforma Processing.
O sistema funciona da seguinte maneira:
- O Arduino controla um servomotor para varrer uma área de 180 graus.
- Em cada ângulo, o sensor ultrassônico mede a distância até o objeto mais próximo.
- Um LED conectado ao Arduino acende quando um objeto está muito perto.
- Os dados de ângulo e distância são enviados para o computador via comunicação serial.
- O Processing recebe esses dados, os interpreta e desenha uma interface de radar, mostrando os objetos detectados.
- 1x Placa Arduino (Uno, Nano, ou similar)
- 1x Servomotor (SG90 ou similar)
- 1x Sensor Ultrassônico HC-SR04
- 1x LED (qualquer cor)
- 1x Resistor de 220Ω
- Jumpers (fios de conexão)
- Protoboard
Conecte os componentes ao Arduino conforme a tabela abaixo. É crucial que as conexões de 5V e GND sejam distribuídas corretamente para todos os componentes.
| Componente | Pino do Componente | Conexão no Arduino |
|---|---|---|
| Servomotor | Fio Laranja/Amarelo (Sinal) | Pino Digital 9 |
| Fio Vermelho (VCC) | 5V | |
| Fio Marrom/Preto (GND) | GND | |
| Sensor HC-SR04 | VCC | 5V |
| Trig | Pino Digital 10 | |
| Echo | Pino Digital 11 | |
| GND | GND | |
| LED | Anodo (perna longa) | Pino Digital 12 |
| Catodo (perna curta) | (através do resistor de 220Ω) -> GND |
Siga estes passos para colocar o radar em funcionamento.
- Abra o arquivo
Radar.inona IDE do Arduino. - Conecte sua placa Arduino ao computador.
- Na IDE, vá em
Ferramentas > Placae selecione o modelo do seu Arduino. - Vá em
Ferramentas > Portaи selecione a porta COM correspondente ao seu Arduino. - Clique no botão Carregar (seta para a direita) para enviar o código para a placa.
- Abra o arquivo
Processing/Processing.pdena IDE do Processing. - Importante: Com o Arduino ainda conectado, clique no botão Executar (Play).
- Observe o console (a área de texto preta na parte inferior da IDE). Ele listará as portas seriais disponíveis, por exemplo:
[0] "COM3" [1] "COM5" - Identifique qual porta é a do seu Arduino (geralmente a mesma que você usou na IDE do Arduino).
- Edite a seguinte linha no código do Processing, alterando o número no índice
[0]para o número correspondente à sua porta.// Se o seu Arduino for a porta "COM3" no índice [0], mantenha como está. // Se for "COM5" no índice [1], mude para Serial.list()[1]; String portName = Serial.list()[0];
- Execute o sketch novamente. A janela do radar deverá abrir e começar a exibir os dados em tempo real.
Radar.ino: O sketch do Arduino que controla o hardware (servo, sensor e LED) e envia os dados pela porta serial.Processing/Processing.pde: O sketch do Processing que recebe os dados seriais e desenha a interface gráfica do radar.README.md: Este arquivo de documentação.
Você pode alterar o ângulo de varredura do radar modificando os laços for na função loop() do arquivo Radar.ino. Atualmente, ele varre de 0 a 90 graus. Para uma varredura de 180 graus, altere o valor 90 para 180:
// No arquivo Radar.ino
void loop() {
// Faz o servo girar de 0 a 180 graus
for (pos = 0; pos <= 180; pos += 1) {
// ...
}
// Faz o servo girar de 180 a 0 graus
for (pos = 180; pos >= 0; pos -= 1) {
// ...
}
}Atenção: Servomotores SG90 podem não atingir 180 graus completos. Ajuste o valor conforme necessário para evitar forçar o motor.
As cores da interface são definidas no arquivo Processing.pde usando o padrão RGB (Red, Green, Blue). Você pode alterar as cores nos seguintes locais:
background(R, G, B): Cor de fundo da tela.stroke(R, G, B): Cor dos contornos (arcos, linhas, objetos).fill(R, G, B): Cor do preenchimento (texto).