IMPORTANTE: O apontador laser pode ser perigoso se apontado diretamente para os olhos. Proteja os seus olhos, o de animais e outras pessoas. Use com cuidado.
Abaixo, você poderá ver minha gatinha Cleo brincando com o laser:
Step 1: Os componentes principais:
Step 2: O mecanismo “Pan/Tilt” de posicionamento
Vamos construir um mecanismo de “Pan / Tilt” muito simples, montando os servos “um em cima do outro” como mostrado nas fotos abaixo:
- O “Pan” Servo é usado “como base”. Mantenha-o na vertical.
- Fixe o “Tilt” Servo sobre a parte de movimento do “Pan” Servo (na posição horizontal)
- Fixe o ponteiro laser na parte movel do “Tilt” Servo como mostrado.
Note que usei algumas peças metálicas, aproveitadas de um brinquedo desmontado, como estrutura de base para o mecanismo “Pan / Tilt”. Você poderá utilizar outros tipos de estrutura, O importante é manter os movimentos horizontal e vertical.
Step 3: O HW
O circuito elétrico é bem simples:
Antes de iniciar as conexões, leve em consideração que apesar do nodeMCU ser alimentado com 5V, ele funciona internamente com 3.3V (assim como seus pinos de I/O). Assim, os Servos não poderão ser alimentados a partir de uma das 3 saídas de 3.3V do NodeMCU. A exceção é o pino “Vin”, que pode tanto fornecer 5V para o breadboard “+ VCC rail”quanto alimentar o NodeMCU quando uma fonte externa é utilizada (como mostrado no diagrama elétrico abaixo).
O módulo laser deve ser alimentado com 5V, porém ele também funciona com 3.3V o que faz com que a potência do laser seja menor e consequentemente, seu uso mais seguro.
IMPORTANTE: O apontador laser pode ser perigoso se apontado diretamente para os olhos. Proteja os seus olhos, o de animais e outras pessoas. Use com cuidado.
Observando atentamente o diagrama elétrico acima, execute as seguintes ligações:
- Ligue o cabo de dados do servo Pan (eixo X) ao NodeMCU Pin D1 (note que todos os pinos digitais do NodeMCU são PWM)
- Ligue os dados do servo Tilt (eixo “Y”) ao NodeMCU Pin D2
- Ligue o pino “S” do ponteiro laser ao NodeMCU Pin D3
- Ligue o pino “Vin” de NodeMCU ao “+ 5V Rail” do Breadboard
- Conecte os pinos GND (comum ou terra) do NodeMCU, Servos e Ponteiro Laser ao “GND Rail” do Breadboard
- Conecte os cabos de alimentação dos Servos ao “+ 5V Rail” do Breadboard
Step 4: O codigo
Para o controle dos servos, usaremos a biblioteca do IDE: Servo.h, a qual gerará sinais PWM posicionando-os facilmente com entradas angulares.
Uma vez que a base do projeto é usar o aplicativo BLYNK, o código torna-se muito simples. Devemos definir 4 variáveis virtuais:
V0: “X position”
V1: “Y position”
V2: “Random or manual” operation
V3: Laser ON/OFF command
BLYNK_WRITE(V0) { xPotReading = param.asInt(); } BLYNK_WRITE(V1) { yPotReading = param.asInt(); } BLYNK_WRITE(V2) { randState = param.asInt(); } BLYNK_WRITE(V4) { laserState = param.asInt(); }
Se você não sabe como preparar o IDE do Arduino para trabalhar com o NodeMCU, por favor de uma olhadinha em meu tutorial:
Do “blink” ao BLYNK, uma viagem pela “Internet das coisas” nas asas do NodeMCU ESP-12E
Abaixo, o código completo. de uma passada de olhos nele. É muito fácil de entender.
Step 5: O “Blynk”
Step 6: Conclusão
Como sempre, espero que este projeto ajude outras pessoas a encontrar seu caminho no apaixonante mundo da eletrônica e do IoT!
Não deixe de visitar e seguir minha página: MJRoBot.org no Facebook
Um abraço e até o próximo post!
“Saludos desde el sur del mundo!” 😉
Obrigado
Marcelo
ola! Marcelo, I try to reproduce your project, bu I fail
I try different ways to connect pins and servos bud didin’t work. With blynk i can switch laser but i can’t move servos, I try to wire in this way very similar as your images. https://www.circuito.io/static/reply/index.html?solutionId=5bd395b8c344f6002f88a623&solutionPath=storage.circuito.io can you help me? If you have any email I can sent you few pictures of my wiring board.
CurtirCurtir
Well, finally I fix that, both s9 doesn’t work I just put a new one and works fine! thanks!
CurtirCurtir