Índice:

Termômetro RGB usando PICO: 6 etapas
Termômetro RGB usando PICO: 6 etapas

Vídeo: Termômetro RGB usando PICO: 6 etapas

Vídeo: Termômetro RGB usando PICO: 6 etapas
Vídeo: Film Camera Remote Shutter Project: Raspberry Pi PICO 2024, Julho
Anonim
Image
Image

Esse foi o resultado final do nosso esforço de hoje. É um termómetro que lhe permite saber o quanto está quente no seu quarto, através de uma faixa de LED RGB colocada num recipiente de acrílico, que é ligada a um sensor de temperatura para aferir a temperatura. E usaremos o PICO para dar vida a este projeto.

Etapa 1: Componentes

Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação
  • PICO, disponível em mellbell.cc ($ 17)
  • Tira LED RGB de 1 metro
  • 3 transistor Darlington TIP122, um pacote de 10 no ebay (US $ 3,31)
  • 1 driver PWM PCA9685 de 16 canais e 12 bits, disponível no ebay ($ 2,12)
  • Fonte de alimentação 12v
  • 3 resistores de 1k ohm, um pacote de 100 no ebay ($ 0,99)
  • Um breadboard, disponível no ebay ($ 2,30)
  • Macho - fios de jumper feminino, um pacote de 40 no ebay (US $ 0,95)

Etapa 2: Alimentando a Faixa RGB com Transistores e uma Fonte de Alimentação

Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação
Alimentando a faixa RGB com transistores e uma fonte de alimentação

As fitas de LED são placas de circuito flexíveis preenchidas com LEDs. Eles são usados de várias maneiras, como você pode usá-los em sua casa, seu carro ou bicicleta. Você pode até mesmo criar wearables RGB legais usando-os.

Então, como eles funcionam? Na verdade, é muito simples. Todos os LEDs na faixa de LED são conectados em paralelo e atuam como um grande LED RGB. E para executá-lo, você simplesmente precisa conectar a tira a uma fonte de alimentação de alta corrente de 12v.

Para controlar a faixa de LED com um microcontrolador, você precisa separar a fonte de alimentação da fonte de controle. Porque a faixa de LED precisa de 12v, e nosso microcontrolador não pode oferecer tanta tensão de saída, é por isso que conectamos uma fonte de alimentação externa de alta corrente de 12v, enquanto enviamos os sinais de controle de nosso PICO.

Além disso, o consumo atual de cada célula RGB é alto, pois cada LED nele - os LEDs vermelho, verde e azul - precisa de 20mA para operar, o que significa que precisamos de 60mA para acender uma única célula RGB. E isso é muito problemático, porque nossos pinos GPIO só podem fornecer o máximo de 40mA por pino, e conectar a tira RGB ao PICO diretamente vai queimar isso, então, por favor, não faça isso.

Mas, existe uma solução, e ele é chamado de Transistor Darlington, que é um par de transistores que tem um ganho de corrente muito alto, o que nos ajudará a aumentar nossa corrente para preencher nossas necessidades.

Vamos aprender mais sobre o ganho atual primeiro. O ganho de corrente é uma propriedade dos transistores, o que significa que a corrente que passa pelo transistor será multiplicada por ele, e sua equação fica assim:

corrente de carga = corrente de entrada * ganho do transistor.

Isso é ainda mais forte em um transistor Darlington, porque é um par de transistores e não um único, e seus efeitos são multiplicados um pelo outro, dando-nos ganhos de corrente massivos.

Agora conectaremos a faixa de LED à nossa fonte de alimentação externa, o transistor e, claro, ao nosso PICO.

  • Base (transistor) → D3 (PICO)
  • Coletor (transistor) → B (faixa de LED)
  • Emissor (transistor) → GND
  • +12 (faixa de LED) → +12 (fonte de alimentação)

Não se esqueça de conectar o GND do PICO ao aterramento da fonte de alimentação

Etapa 3: Controle das cores da faixa de LED RGB

Controlando as cores da faixa de LED RGB
Controlando as cores da faixa de LED RGB
Controlando as cores da faixa de LED RGB
Controlando as cores da faixa de LED RGB
Controlando as cores da faixa de LED RGB
Controlando as cores da faixa de LED RGB

Sabemos que nosso PICO tem um único pino PWM (D3), o que significa que ele não pode controlar nativamente nossos 16 LEDs. É por isso que estamos introduzindo o módulo PCA9685 PWM I2C de 16 canais e 12 bits, que nos permite expandir os pinos PWM do PICO.

Em primeiro lugar, o que é I2C?

I2C é um protocolo de comunicação que envolve apenas 2 fios para se comunicarem com um ou mais dispositivos, endereçando o endereço do dispositivo e quais dados enviar.

Existem dois tipos de dispositivos: o primeiro é o dispositivo mestre, que é o responsável pelo envio dos dados, e o outro é o dispositivo escravo, que recebe os dados. Aqui estão as pinagens do módulo PCA9685:

  • VCC → Este é o poder da própria placa. 3-5v máx.
  • GND → Este é o pino negativo e deve ser conectado ao GND para completar o circuito.
  • V + → Este é um pino de alimentação opcional que fornecerá energia aos servos se você tiver algum deles conectado ao seu módulo. Você pode deixá-lo desconectado se não estiver usando nenhum servo.
  • SCL → Pino do clock serial, e o conectamos ao SCL do PICO.
  • SDA → Pino de dados serial, e conectamos ao SDA do PICO.
  • OE → pino de saída habilitada, este pino está ativo BAIXO, quando o pino está BAIXO todas as saídas são habilitadas, quando está ALTO todas as saídas são desabilitadas. E este pino opcional é usado para habilitar ou desabilitar rapidamente os pinos do módulo.

Existem 16 portas, cada porta possui V +, GND, PWM. Cada pino PWM funciona de forma completamente independente e são configurados para servos, mas você pode usá-los para LEDs facilmente. Cada PWM pode lidar com 25mA de corrente, portanto, tome cuidado.

Agora que sabemos quais são os pinos do nosso módulo e o que ele faz, vamos usá-lo para aumentar o número de pinos PWM do PICO, para que possamos controlar nossa faixa de LED RGB.

Vamos usar este módulo junto com os transistores TIP122, e é assim que você deve conectá-los ao seu PICO:

  • VCC (PCA9685) → VCC (PICO).
  • GND (PCA9685) → GND.
  • SDA (PCA9685) → D2 (PICO).
  • SCL (PCA9685) → D3 (PICO).
  • PWM 0 (PCA9685) → BASE (primeiro TIP122).
  • PWM 1 (PCA9685) → BASE (segundo TIP122).
  • PWM 2 (PCA9685) → BASE (terceiro TIP122).

Não se esqueça de conectar o GND do PICO ao GND da fonte de alimentação. E certifique-se de NÃO conectar o pino VCC do PCA9685 com os +12 volts da fonte de alimentação ou ele será danificado

Etapa 4: controle a cor da faixa de LED RGB dependendo da leitura do sensor

Controle a cor da faixa de LED RGB dependendo da leitura do sensor
Controle a cor da faixa de LED RGB dependendo da leitura do sensor
Controle a cor da faixa de LED RGB dependendo da leitura do sensor
Controle a cor da faixa de LED RGB dependendo da leitura do sensor

Esta é a última etapa deste projeto, e com ela nosso projeto se transformará de "estúpido" em inteligente e capaz de se comportar de acordo com o ambiente. Para isso, vamos conectar nosso PICO ao sensor de temperatura LM35DZ.

Este sensor possui uma tensão de saída analógica que depende da temperatura ao seu redor. Ele começa em 0v correspondendo a 0 Celsius, e a tensão aumenta em 10mV para cada grau acima de 0c. Este componente é muito simples e possui apenas 3 pernas, e elas são conectadas da seguinte forma:

  • VCC (LM35DZ) → VCC (PICO)
  • GND (LM35DZ) → GND (PICO)
  • Saída (LM35DZ) → A0 (PICO)

Etapa 5: o código final

O Código Final
O Código Final
O Código Final
O Código Final

Agora que temos tudo conectado ao nosso PICO, vamos começar a programá-lo para que os LEDs mudem de cor dependendo da temperatura.

Para isso, precisamos do seguinte:

A const. variável denominada "tempSensor" com o valor A0 que recebe sua leitura do sensor de temperatura

Uma variável inteira chamada "sensorReading" com valor inicial 0. Esta é a variável que salvará a leitura bruta do sensor

Uma variável flutuante chamada "volts" com o valor inicial 0. Esta é a variável que salvará o valor bruto da leitura do sensor convertido em volts

Uma variável flutuante chamada "temp" com valor inicial 0. Esta é a variável que salvará as leituras de volts do sensor convertidas e as converterá em temperatura

Uma variável inteira chamada "mapeada" com valor inicial 0. Isso salvará o valor PWM para o qual mapeamos a variável temporária, e essa variável controla a cor da faixa de LED

Usando esse código, o PICO vai ler os dados do sensor de temperatura, convertê-los em volts, depois em Celsius e, finalmente, mapeia o grau Celsius em um valor PWM que pode ser lido por nossa faixa de LED, e é exatamente isso que precisamos.

Etapa 6: Pronto

Image
Image

Também fizemos um recipiente de acrílico para a faixa de LED para que fique bem de pé. Você pode encontrar os arquivos CAD aqui se desejar baixá-los.

Agora você tem um termômetro LED de aparência incrível que informa automaticamente a temperatura quando você olha para ele, o que é muito conveniente para dizer o mínimo: P

Deixe um comentário se você tiver alguma sugestão ou feedback, e não se esqueça de nos seguir no Facebook ou visite-nos no mellbell.cc para mais conteúdo incrível.

Recomendado: