Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Capture Gotas d'Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Componentes e Materiais

ComponenteQuantidade
Arduino Nano R31
Módulo Laser KY-0081
Módulo Sensor de Luz LM3931
Transistor NPN Uso Geral3
Potenciômetro Rotativo1
Chave C&K PTS 645 Series1

Aplicativos e Serviços Online

Sobre o Projeto

Este projeto nasceu da vontade de experimentar fotografia de alta velocidade. Abaixo, um setup simples baseado em Arduino para fotos de gotas d'água.

Equipamento Fotográfico Necessário

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Modificação do Controle Remoto

Adicionei um header de 3 pinos ao controle remoto da câmera.

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Internamente, há três lâminas metálicas: 1 – obturador (+), 2 – GND, 3 – autofoco (+). Pressionar o botão curto-circuita 2-3 (autofoco) e depois 1-2 (obturador).

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Com o header instalado, o Arduino emula o pressionamento do botão programaticamente. O cabo de sincronismo do flash funciona igual: curto-circuitar os contatos do conector PC dispara o flash.

Detecção da Gota

Objetivo: capturar o momento do respingo quando a gota atinge a superfície da água.

Usei partes de um conta-gotas medicinal montadas juntas.

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

O laser KY-008 e o sensor LM393 detectam a queda da gota.

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Posicione-os para que a gota interrompa o feixe do laser. O sensor LM393 ajusta sensibilidade via resistor variável no módulo. Os módulos podem ficar distantes um do outro.

Princípio de Funcionamento

Fotografia no escuro com exposição longa (vários segundos). Apenas o flash curto importa para a imagem final.

Diagrama do Circuito:

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Sequência de Operação

  1. Usuário pressiona o Botão antes da gota visível.
  2. Isso abre o obturador por alguns segundos: Arduino aciona Autofoco e depois Obturador no controle remoto.
  3. O botão também habilita o disparo do flash.
  4. Quando a gota cruza o feixe do laser, o Flash Trigger curto-circuita o cabo de sincronismo e o flash dispara.
  5. O atraso entre cruzamento do laser e disparo do flash é ajustado pelo Potenciômetro (1 a 500 ms, limites alteráveis no código). Assim, captura-se diferentes momentos do respingo.
  6. Gotás subsequentes não disparam o flash: pressione o botão novamente para reativar.

Montagem Final

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Dica: Um acoplador óptico pode isolar o flash de alta tensão da eletrônica de baixa tensão.

Parâmetros Principais do Código

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Resultados

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Código (Arduino)

//#define DBG_MODE
const byte BUTTON_PIN = 2;
const byte FOCUS_PIN = 3;
const byte SHUTTER_PIN = 4;
const byte FLASH_PIN = 5;
const byte SENSOR_PIN = 6;
const byte RESISTOR_PIN = A5;
const unsigned int FOCUS_DELAY = 100;
const unsigned int SHUTTER_DELAY = 100;
const unsigned int FLASH_DELAY = 10;
const unsigned int FIRE_DELAY_MIN = 1;
const unsigned int FIRE_DELAY_MAX = 500;

boolean prevButton, currButton;
boolean prevSensor, currSensor;
boolean allowFlash;
unsigned long fireDelay;

void openShutter() {
  #ifndef DBG_MODE
    digitalWrite(FOCUS_PIN, HIGH); delay(FOCUS_DELAY);
    digitalWrite(SHUTTER_PIN, HIGH); delay(SHUTTER_DELAY);
    digitalWrite(SHUTTER_PIN, LOW); delay(FOCUS_DELAY);
    digitalWrite(FOCUS_PIN, LOW);
  #else
    digitalWrite(LED_BUILTIN, HIGH);
  #endif
}

void fireFlash() {
  #ifndef DBG_MODE
    digitalWrite(FLASH_PIN, HIGH); delay(FLASH_DELAY);
    digitalWrite(FLASH_PIN, LOW);
  #else
    digitalWrite(LED_BUILTIN, LOW);
  #endif
}

void setup() {
  pinMode(BUTTON_PIN, INPUT_PULLUP);
  pinMode(FOCUS_PIN, OUTPUT); pinMode(SHUTTER_PIN, OUTPUT);
  pinMode(FLASH_PIN, OUTPUT); pinMode(SENSOR_PIN, INPUT);
  #ifdef DBG_MODE pinMode(LED_BUILTIN, OUTPUT); #endif
  digitalWrite(FOCUS_PIN, LOW); digitalWrite(SHUTTER_PIN, LOW); digitalWrite(FLASH_PIN, LOW);
  prevButton = digitalRead(BUTTON_PIN);
  prevSensor = digitalRead(SENSOR_PIN);
  allowFlash = false;
}

void loop() {
  currButton = digitalRead(BUTTON_PIN);
  if (prevButton != currButton) {
    prevButton = currButton;
    if (currButton == LOW) {
      allowFlash = true; prevSensor = HIGH;
      fireDelay = map(analogRead(RESISTOR_PIN), 0, 1023, FIRE_DELAY_MIN, FIRE_DELAY_MAX);
      openShutter();
    } else { delay(50); }
  }
  currSensor = digitalRead(SENSOR_PIN);
  if (prevSensor != currSensor) {
    prevSensor = currSensor;
    if (currSensor == HIGH && allowFlash) {
      allowFlash = false; delay(fireDelay); fireFlash();
    }
  }
}

Esquemático

Capture Gotas d Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY

Processo de manufatura

  1. Mealheiro Inteligente: Controlar Aceitador de Moedas com Arduino Nano
  2. Monitoramento de Qualidade da Água IoT e IA Protege Vida Aquática
  3. Gerador de Ondas JX – Oscilador DDS Compatível com Arduino com Display OLED
  4. Controlar um LED via Bluetooth com Arduino – Guia DIY Simples
  5. Monitore a Temperatura da Sua Casa de Qualquer Lugar com Integração Arduino Cloud
  6. Conectando Arduino Mega ao Módulo GPS NEO‑6M: Guia Passo a Passo
  7. Módulo GPS u-blox LEA‑6H 02: Guia de Integração com Arduino e Python
  8. Integrando Sensor de Pulso MAX30100 com Arduino: Guia Passo a Passo
  9. Construa o App Fridgeye com Display Nextion: Guia Passo a Passo
  10. Guia Passo a Passo: Conectando Sensor de Umidade do Solo YL-39/YL-69 ao Arduino UNO