O controle preciso da temperatura é fundamental em várias aplicações, desde eletrônicos sensíveis até sistemas de refrigeração avançados. Neste tutorial, exploraremos o uso do Arduino em conjunto com uma Pastilha Termoelétrica Peltier para criar um sistema de controle térmico eficiente.
Abordaremos desde os princípios básicos do Efeito Peltier até a implementação prática de um circuito eletrônico para controle de temperatura.
Objetivos
O principal objetivo deste tutorial é demonstrar como utilizar o Arduino para controlar a temperatura usando uma Pastilha Termoelétrica Peltier. Através deste guia, os usuários aprenderão a construir um circuito eletrônico que regula a temperatura por meio da variação da saída PWM. Além disso, o tutorial abordará os seguintes aspectos:
- Entender os fundamentos do Efeito Peltier e seu uso na transferência de calor.
- Aprender a utilizar sensores de temperatura para monitorar e regular a temperatura.
- Implementar um display OLED para exibir informações sobre a temperatura e a saída PWM.
- Compreender a importância do uso de um dissipador de calor para otimizar o resfriamento.
Materiais Necessários
Para seguir com este tutorial, você irá precisar dos seguintes componentes:
- Arduino Uno R4 Minima
- Pastilha Termoelétrica Peltier TEC1-12706 Cooler
- MOSFET N-Channel K1388
- Chave Táctil Push-Button (2 un)
- Resistor 330Ω 1/4W (2 un)
- Sensor de Temperatura LM35DZ
- Display OLED 0.96 polegadas I2C
- Protoboard
- Jumpers Macho-Fêmea
- Jumpers Macho-Macho
- Cabo USB tipo C
Além dos itens mencionados acima, você também precisará ter a Arduino IDE instalada em seu computador ou uma conta cadastrada na Arduino Cloud.
O que é o Efeito Peltier?
O Efeito Peltier é um fenômeno termoelétrico que descreve a transferência de calor que ocorre quando uma corrente elétrica passa por dois condutores de diferentes materiais. Especificamente, quando uma corrente elétrica é aplicada a esses condutores, ocorre uma absorção ou liberação líquida de calor em uma junção, dependendo da direção da corrente elétrica.
Em outras palavras, quando a corrente elétrica flui através da junção de dois materiais diferentes, um lado da junção é aquecido enquanto o outro é resfriado. Esse fenômeno é reversível, o que significa que a mudança na direção da corrente elétrica resulta em uma mudança correspondente na direção do fluxo de calor.
O Efeito Peltier é utilizado em uma variedade de aplicações, incluindo refrigeração termoelétrica, aquecimento de dispositivos e controle de temperatura em sistemas eletrônicos.
Como funciona uma Pastilha de Peltier?
Uma pastilha de Peltier, também conhecida como elemento Peltier ou módulo termoelétrico, é um dispositivo semicondutor que utiliza o Efeito Peltier para transferir calor entre suas faces quando uma corrente elétrica é aplicada. Ela consiste em duas placas de material semicondutor diferentes, geralmente ligadas entre si por placas condutoras para formar um circuito elétrico.
Quando uma corrente elétrica é aplicada à pastilha de Peltier, elétrons se movem através das junções entre os materiais semicondutores, criando uma diferença de temperatura entre as duas faces da pastilha. Esse processo envolve a absorção de calor de um lado da pastilha (geralmente chamado de lado frio) e a liberação de calor do outro lado (geralmente chamado de lado quente). A transferência de calor ocorre de forma eficiente devido às propriedades semicondutoras dos materiais utilizados na pastilha.
Assim, uma pastilha de Peltier pode ser usada para refrigerar uma área específica (lado frio) enquanto aquece outra área (lado quente), dependendo da direção da corrente elétrica aplicada.
Circuito Eletrônico – Pastilha Peltier com Arduino
Segue esquemático eletrônico do circuito que controla a temperatura de uma Pastilha de Peltier usando o Arduino:
As conexões realizadas são as seguintes:
MOSFET N-CHANNEL
- Pino 1 (Gate) <-> Pino 3 Arduino
- Pino 2 (Drain) <-> Cabo Preto da Pastilha de Peltier
- Pino 3 (Source) <-> GND
Sensor LM35
- Pino 1 <-> 5V
- Pino 2 <-> Pino A3 Arduino
- Pino 3 <-> GND
Pastilha de Peltier
- Cabo Preto <-> Pino 2 (Drain) do MOSFET
- Cabo Vermelho <-> 5V
Display OLED
- VCC <-> 5V
- GND <-> GND
- SDA <-> Pino SDA Arduino
- SCL <-> Pino SCL Arduino
Push-Button 1
- Terminal 1 <-> 5V
- Terminal 2 <-> Pino 5 Arduino
Push-Button 2
- Terminal 1 <-> 5V
- Terminal 2 <-> Pino 4 Arduino
Código
Para assegurar o funcionamento correto do display OLED, é fundamental instalar a biblioteca Adafruit SSD1306. Para isso, siga estes passos:
- Abra o Gerenciador de Bibliotecas em sua plataforma de desenvolvimento.
- Procure pela biblioteca Adafruit SSD1306.
- Faça a instalação da biblioteca selecionando-a e seguindo as instruções de instalação fornecidas.
Após a instalação da biblioteca, carregue o seguinte código para sua placa:
// Programa: Controle de pastilha de Peltier com Arduino // Autor: Rosana Guse #include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define pinoLM35 A3 // Define o pino conectado ao sensor de temperatura LM35 #define pinoPeltier 3 // Define o pino conectado ao controle da pastilha de Peltier #define botaoMais 5 // Define o pino conectado ao botão de aumento #define botaoMenos 4 // Define o pino conectado ao botão de diminuição const int MIN_SAIDA_PELTIER = 0; // Define a saída mínima para a pastilha de Peltier const int MAX_SAIDA_PELTIER = 255; // Define a saída máxima para a pastilha de Peltier int temperatura = 0; // Variável para armazenar a temperatura média int saidaPeltier = 0; // Variável para armazenar a saída da pastilha de Peltier int amostras[8]; // Array para armazenar as amostras de temperatura #define LARGURA_OLED 128 // Define a largura do display OLED #define ALTURA_OLED 64 // Define a altura do display OLED #define RESET_OLED -1 // Define o pino de reset do display OLED como -1 (não utilizado) Adafruit_SSD1306 display(LARGURA_OLED, ALTURA_OLED, &Wire, RESET_OLED); // Cria um objeto para o display OLED void setup() { Serial.begin(9600); // Inicializa a comunicação serial com uma taxa de 9600 bps pinMode(botaoMais, INPUT); // Configura o pino do botão de aumento como entrada pinMode(botaoMenos, INPUT); // Configura o pino do botão de diminuição como entrada pinMode(pinoPeltier, OUTPUT); // Configura o pino da pastilha de Peltier como saída display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Inicializa o display OLED com endereço 0x3C display.setTextColor(WHITE); // Define a cor do texto do display como branca display.clearDisplay(); // Limpa o display } void loop() { for(int i = 0; i <= 8; i++) { // Loop para coletar 8 amostras de temperatura amostras[i] = ( 5.0 * analogRead(pinoLM35) * 100.0) / 1024.0; // Converte a leitura do sensor LM35 em temperatura em Celsius temperatura = temperatura + amostras[i]; // Soma as amostras de temperatura delay(100); // Pequeno atraso para estabilização } temperatura = temperatura/8.0; // Calcula a média das amostras de temperatura Serial.print("Temperatura Celsius: "); // Imprime a temperatura no monitor serial Serial.println(temperatura, DEC); if (digitalRead(botaoMais) == HIGH) { // Verifica se o botão de aumento foi pressionado if (saidaPeltier < MAX_SAIDA_PELTIER) { // Verifica se a saída da pastilha de Peltier está abaixo do máximo saidaPeltier = saidaPeltier + 5; // Incrementa a saída da pastilha de Peltier } delay(50); // Pequeno atraso para evitar múltiplas leituras rápidas } if (digitalRead(botaoMenos) == HIGH) { // Verifica se o botão de diminuição foi pressionado if (saidaPeltier > MIN_SAIDA_PELTIER) { // Verifica se a saída da pastilha de Peltier está acima do mínimo saidaPeltier = saidaPeltier - 5; // Decrementa a saída da pastilha de Peltier } delay(50); // Pequeno atraso para evitar múltiplas leituras rápidas } analogWrite(pinoPeltier, saidaPeltier); // Define a saída da pastilha de Peltier Serial.print("Saída PWM: "); // Imprime a saída PWM no monitor serial Serial.println(saidaPeltier); display.setTextSize(1); // Define o tamanho do texto no display display.setCursor(0,0); // Define a posição do cursor no display display.print("Saida PWM"); // Imprime o texto no display display.setTextSize(2); // Define o tamanho do texto no display display.setCursor(0,15); // Define a posição do cursor no display display.print(saidaPeltier); // Imprime a saída da pastilha de Peltier no display display.setTextSize(1); // Define o tamanho do texto no display display.setCursor(0,35); // Define a posição do cursor no display display.print("Temperatura"); // Imprime o texto no display display.setTextSize(2); // Define o tamanho do texto no display display.setCursor(0,50); // Define a posição do cursor no display display.print(temperatura); // Imprime a temperatura no display display.write(167); // Imprime o símbolo de grau Celsius no display display.display(); // Atualiza o display delay(100); // Pequeno atraso para estabilização display.clearDisplay(); // Limpa o display temperatura = 0; // Reseta a variável de temperatura }
Funcionamento: Controle de Pastilha de Peltier com Arduino
O circuito de controle opera da seguinte maneira: ao pressionar o botão “mais” (localizado à direita), a saída PWM aumenta em 5 a cada acionamento. Enquanto isso, o botão “menos” (localizado à esquerda) diminui a saída PWM em 5 a cada pressionamento. A variação da saída PWM regula a corrente enviada para a Pastilha Peltier, consequentemente alterando sua temperatura, aumentando-a ou diminuindo-a conforme necessário. As informações sobre o valor da saída PWM e a temperatura da pastilha são exibidas no display OLED.
Para um resfriamento mais rápido, pode-se empregar um dissipador de calor em conjunto com a Pastilha Peltier. O dissipador de calor ajuda a aumentar a eficiência do sistema, facilitando a dissipação do calor gerado pela Pastilha Peltier. Ao remover o calor de forma mais eficaz, o dissipador de calor permite que a Pastilha Peltier opere em temperaturas mais baixas, acelerando o processo de resfriamento.
Se você tiver dúvidas, sugestões ou experiências para compartilhar, fique a vontade para deixar um comentário abaixo. E para não perder nenhum conteúdo como este, não deixe de nos seguir no Instagram.