Índice:

Aquarium Light PWM com Arduino: 3 etapas
Aquarium Light PWM com Arduino: 3 etapas

Vídeo: Aquarium Light PWM com Arduino: 3 etapas

Vídeo: Aquarium Light PWM com Arduino: 3 etapas
Vídeo: DIY Arduino Aquarium Controller Part11: PWM LED dimming, opto-isolation, & light scheduling 2024, Julho
Anonim
Aquarium Light PWM com Arduino
Aquarium Light PWM com Arduino

Recentemente, converti as luzes do meu aquário de lâmpadas fluorescentes em LED e decidi tentar simular um ambiente natural onde a luz aumenta gradualmente do amanhecer ao meio-dia e depois diminui até o anoitecer. À noite, geralmente há pouca luz emitida pela lua.

Basicamente, a iluminação LED é alimentada por uma fonte de alimentação de 12 V e o arduino controla a intensidade da luz modulando a tensão com a ajuda de um MOSFET de canal n (usei um IRFS630). O arduino pode ser alimentado pela mesma fonte de alimentação, mas usei um PS USB 5V separado para o arduino e alimentei-o por USB, não por Vin.

A intensidade da luz pode não ser a mais precisa, mas é a melhor que eu poderia imaginar. O padrão pode ser modificado por meio do código.

Etapa 1: peças necessárias

Peças necessárias
Peças necessárias
Peças necessárias
Peças necessárias
Peças necessárias
Peças necessárias
Peças necessárias
Peças necessárias

A primeira coisa a fazer é reunir todas as peças necessárias para o projeto. Presumo que você já tenha uma iluminação LED com a qual queira brincar, talvez uma iluminação de aquário, talvez outra coisa, talvez nem mesmo LEDs, mas algo que suporte dimmer.

Então aqui está a lista das peças que usei:

1. Arduino nano - 1 pcs

2. Display LCD 1602 - 1 pcs

3. Adaptador IIC / I2C para LCD 1602 - 1 pcs

4. DS1302 RTC - 1 pcs (com bateria CR2032)

5. botão de pressão com tampa - 1 pcs

6. MOSFET n-channel (usei um IRFS630) - 1 pcs

7. Resistor de 10K ohm - 1 pcs

8. Opcional - algumas pessoas dizem que você deve usar um resistor entre o pino pwm do arduino e a porta do MOSFET para proteger o aruino, outras pessoas dizem que não, pelo menos não para aplicações de baixa potência, não usei nenhum e ele funciona bem, bem abaixo de 20mA extraído do pino do arduino, mas se você quiser, pode usar um resistor de 100 ohms.

ATUALIZAÇÃO: Após 2 meses de testes, cheguei à conclusão de que 100 ohms é uma obrigação! o arduino continuou bloqueando sem ele, aleatoriamente. Agora funciona perfeitamente

Você também precisará de ferramentas de solda para soldar o adaptador I2C ao LCD e se quiser fazer como fiz em uma placa de protótipo ou em um PCB. Usei pinos de cabeçalho para conectar o arduino porque isso me dá liberdade para extrair o arduino, programá-lo e colocá-lo de volta (e é mais fácil substituí-lo).

9. Opcional - placa de protótipo / PCB

10. Opcional - pinos de cabeçalho - com 15 pinos ou mais cada - 2 peças (necessários para conectar o arduino nano à placa)

É isso, agora vamos trabalhar!

Etapa 2: juntando as coisas

Juntando as Coisas
Juntando as Coisas
Juntando as Coisas
Juntando as Coisas
Juntando as Coisas
Juntando as Coisas

Primeiro você deve soldar o adaptador IIC / I2C com o LCD 1602 (também funciona com outros LCDs como 2004). Use o esquema fornecido para fazer isso.

Agora, se você quiser usar uma placa de ensaio, siga o esquema e certifique-se de que apenas o aterramento seja comum para a fonte de alimentação LED e a fonte de alimentação do arduino se você usar um PS 5V para o arduino (no cabo USB), caso contrário, você pode conectar o mesmo PS através do pino Vin do arduino.

Se você quiser usar um PCB ou uma placa de protótipo, basta seguir o esquema para vincular os componentes, o design é com você, apenas certifique-se de verificar os links no final.

No adaptador I2C, em frente aos pinos de alimentação e dados há um jumper, este jumper fornece energia para a luz de fundo do LCD, com ele na luz do LCD permanece continuamente aceso. Conecte o botão de pressão aqui para iluminá-lo apenas quando necessário. Você pode usar outros tipos de botões ou interruptores, se desejar.

Eu também incluí o esquema fritzing.

_

PS = Fonte de alimentação (se alguém estiver se perguntando)

PCB = placa de circuito impresso

Etapa 3: coloque algum código no MCU

Anexei o arquivo.ino e as duas bibliotecas que usei para que não haja incompatibilidade. O código é explicado dentro do arquivo.ino.

Além disso, para o endereço do visor I2C, você pode usar o i2c-scanner.ino em anexo para descobri-lo.

Quaisquer comentários ou sugestões são bem-vindos. Divirta-se!

Recomendado: