Arduino Nano - Sistema de Aquecimento

Este tutorial ensina você a usar o Arduino Nano para controlar a temperatura de um ambiente usando um elemento de aquecimento e um sensor de temperatura DS18B20.

Hardware Necessário

1×Official Arduino Nano
1×Alternatively, DIYables Nano V3.0 Development Board
1×Cabo USB A para Mini-B
1×Sensor de Temperatura DS18B20 (con Adaptador)
1×Sensor de Temperatura DS18B20 (sin Adaptador)
1×4.7 kΩ Resistor
1×Relé
1×Elemento de Aquecimento
1×Fonte de Alimentação 12V
1×Conector de Alimentação DC
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para Arduino Nano
1×(Recomendado) Placa de Expansão Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentação para Arduino Nano

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Buy Note: Many DS18B20 sensors available in the market are unreliable. We strongly recommend buying the sensor from the DIYables brand using the link provided above. We tested it, and it worked reliably.

Sobre o Elemento de Aquecimento e o Sensor de Temperatura DS18B20

O elemento de aquecimento usado neste tutorial precisa de uma fonte de alimentação de 12V. Quando recebe energia, o elemento de aquecimento emite calor. Para controlar o elemento de aquecimento com o Arduino Nano, é preciso usar um relé como intermediário.

Se você não conhece o sensor de temperatura e o elemento de aquecimento (pinagem, funcionamento, programação ...), os tutoriais a seguir podem ajudar:

Diagrama de Ligação

  • Diagrama de ligação usando uma protoboard.
Diagrama de ligação do elemento de aquecimento com Arduino Nano

This image is created using Fritzing. Click to enlarge image

  • Diagrama de ligação usando um adaptador de terminal (recomendado).
Diagrama de ligação do Arduino Nano controlando o elemento de aquecimento

This image is created using Fritzing. Click to enlarge image

Veja A melhor forma de alimentar o Arduino Nano e outros componentes.

Recomendamos comprar um sensor DS18B20 junto com o adaptador de ligação que o acompanha para uma montagem sem complicações. Esse adaptador inclui um resistor integrado, o que elimina a necessidade de um resistor adicional na ligação.

Como o Sistema Funciona

  • O Arduino Nano obtém a temperatura do sensor de temperatura.
  • Se a temperatura cair abaixo de um certo limite inferior, o Arduino Nano ativa os elementos de aquecimento.
  • Quando a temperatura passa de um limite superior, o Arduino Nano desativa o elemento de aquecimento.

O ciclo se repete continuamente.

Código Arduino Nano para Sistema de Refrigeração com sensor DS18B20

/* * Este código de Arduino Nano foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano/arduino-nano-heating-system */ #include <OneWire.h> #include <DallasTemperature.h> #define RELAY_PIN A5 // The Arduino Nano pin connected to the IN pin of relay module #define DS18B20_PIN 2 // The Arduino Nano pin connected to DS18B20 sensor's DQ pin const int THRESHOLD_OFF = 20; // upper threshold of temperature, change to your desire value const int THRESHOLD_ON = 15; // lower threshold of temperature, change to your desire value OneWire oneWire(DS18B20_PIN); // setup a oneWire instance DallasTemperature DS18B20(&oneWire); // pass oneWire to DallasTemperature library float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. DS18B20.begin(); // initialize the sensor pinMode(RELAY_PIN, OUTPUT); // initialize digital pin as an output } void loop() { DS18B20.requestTemperatures(); // send the command to get temperatures temperature = DS18B20.getTempCByIndex(0); // read temperature in Celsius if (temperature > THRESHOLD_OFF) { Serial.println("The heating element is turned off"); digitalWrite(RELAY_PIN, LOW); // turn off } else if (temperature < THRESHOLD_ON) { Serial.println("The heating element is turned on"); digitalWrite(RELAY_PIN, HIGH); // turn on } delay(500); }

No código mencionado acima, o Arduino Nano ativa o elemento de aquecimento quando a temperatura é menor que 15°C e o mantém ligado até que a temperatura passe de 20°C.

Passos Rápidos

  • Conecte o Arduino Nano a um computador usando um cabo USB
  • Abra o Arduino IDE, selecione a placa e a porta corretas
  • Clique no ícone Libraries na barra da esquerda do Arduino IDE.
  • Pesquise por “Dallas” e localize a biblioteca DallasTemperature criada por Miles Burton.
  • Clique no botão Install para adicionar a biblioteca.
Biblioteca Dallas Temperature do Arduino Nano
  • Você será solicitado a instalar a dependência. Clique no botão Install All para instalar a biblioteca OneWire.
Biblioteca OneWire do Arduino Nano
  • Copie o código e abra-o com o Arduino IDE.
  • Clique no botão Upload no Arduino IDE para compilar e fazer o upload do código para o Arduino Nano.
  • Mude a temperatura do ambiente ao redor do sensor.
  • Veja a temperatura do elemento de aquecimento e a temperatura do ambiente.

Conhecimento Avançado

A técnica de controle acima é chamada de controlador liga-desliga (on-off), também conhecido como controlador de sinalização ou "bang-bang". É muito fácil de colocar em prática.

Existe uma abordagem alternativa conhecida como controlador PID. Esse método de controle de temperatura é mais estável, porém é complicado de entender e de colocar em prática. Por isso, o controlador PID não é muito usado.

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!