Índice:
Monitorar a temperatura de um ambiente ou equipamento pode ser essencial em aplicações como agricultura, refrigeração, laboratórios, indústrias e até projetos pessoais. Para isso, um datalogger é a solução ideal: um dispositivo capaz de medir informações e registrá-las automaticamente em um cartão SD.
Neste artigo, você vai aprender a criar um DataLogger completo usando o RP2040 UNO, um sensor LM35, um RTC (DS3231/DS1307) para registrar data e hora, e o SD Card integrado na placa.
O projeto lê a temperatura a cada minuto e salva tudo em um arquivo .csv, pronto para abrir no Excel.
1. Componentes Utilizados
Para este projeto você vai precisar de:
- RP2040 UNO (com SD card integrado)
- RTC DS3231 ou DS1307
- Sensor LM35
- Jumpers
- Cabo USB
O RP2040 UNO trabalha totalmente em 3.3 V, o que facilita a conexão com sensores e módulos digitais.
2. Ligações do Circuito
A conexão é simples e requer apenas alguns fios.
Sensor LM35 → RP2040 UNO
| LM35 | RP2040 UNO |
| VCC | 3.3V |
| GND | GND |
| OUT | A0 (GPIO 26) |
O LM35 fornece 10 mV por grau Celsius, facilitando a conversão.
RTC → RP2040 UNO
O RP2040 UNO utiliza:
- GPIO 16 → SDA
- GPIO 17 → SCL
Conexão:
| RTC | RP2040 UNO |
| VCC | 3.3V |
| GND | GND |
| SDA | GPIO 16 |
| SCL | GPIO 17 |
Nenhuma ligação adicional é necessária para o SD Card, pois ele já está integrado à placa.
3. Instalando as Bibliotecas Necessárias
No Arduino IDE, instale:
- RTClib (Adafruit)
- SD
- SPI (já vem instalada)
4. Código Completo do DataLogger
O código abaixo:
✔ lê temperatura via LM35
✔ lê data e hora via RTC
✔ grava no SD card a cada 1 minuto
✔ cria automaticamente um arquivo .csv
#include <SPI.h>
#include <SD.h>
#include <RTClib.h>
RTC_DS3231 rtc;
const int lm35Pin = 26; // GPIO26 = A0 no RP2040
unsigned long lastSave = 0;
const unsigned long intervalo = 60000; // 1 minuto
File logFile;
void setup() {
Serial.begin(115200);
delay(2000);
// RTC
if (!rtc.begin()) {
Serial.println("Erro no RTC!");
while (1);
}
if (rtc.lostPower()) {
Serial.println("RTC sem hora, ajustando...");
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
// SD CARD
if (!SD.begin()) {
Serial.println("Erro no SD!");
while (1);
}
Serial.println("SD inicializado.");
// Cria arquivo se não existir
logFile = SD.open("dados.csv", FILE_WRITE);
if (logFile) {
logFile.println("Data,Hora,Temperatura_C");
logFile.close();
}
}
void loop() {
DateTime agora = rtc.now();
// Leitura LM35
int leitura = analogRead(lm35Pin);
float tensao = leitura * (3.3 / 1023.0);
float temperatura = tensao * 100.0; // LM35 → 10mV = 1°C
// Salvar a cada 1 minuto
if (millis() - lastSave >= intervalo) {
lastSave = millis();
logFile = SD.open("dados.csv", FILE_WRITE);
if (logFile) {
char buffer[40];
sprintf(buffer, "%02d/%02d/%04d,%02d:%02d:%02d,%.2f",
agora.day(), agora.month(), agora.year(),
agora.hour(), agora.minute(), agora.second(),
temperatura);
logFile.println(buffer);
logFile.close();
Serial.println(buffer);
} else {
Serial.println("Erro ao escrever no arquivo!");
}
}
}5. Como Ficam os Dados Gravados no SD Card?
O arquivo dados.csv será assim:
Data,Hora,Temperatura_C
04/12/2025,18:00:01,24.51
04/12/2025,18:01:01,24.55
04/12/2025,18:02:01,24.60
Você pode abrir no Excel, Google Sheets ou qualquer software de análise de dados.
6. Teste Real: Aproximando um Ferro de Solda ligado
Uma simulação comum em laboratórios é aproximar um ferro de solda quente do sensor para testar a resposta do LM35.
Resultado esperado:
04/12/2025,18:03:01,28.20
04/12/2025,18:04:01,34.80
04/12/2025,18:05:01,42.30
04/12/2025,18:06:01,51.60
04/12/2025,18:07:01,59.40
04/12/2025,18:08:01,63.10
Depois, ao remover o ferro, a temperatura retorna gradualmente ao normal.
7. Onde Esse Projeto Pode Ser Utilizado?
Este datalogger é útil em:
- Monitoramento agrícola
- Controle de temperatura em câmaras frias
- Testes de bancada em eletrônica
- Indústria (manutenção preditiva)
- Transporte de cargas sensíveis
- Estações meteorológicas
- Monitoramento ambiental
É um projeto simples, mas extremamente poderoso para aplicações reais.
8. Possíveis Melhorias
Você pode evoluir este datalogger adicionando:
- Sensor de umidade (DHT22 ou SHT31)
- Sensor de luminosidade (LDR ou BH1750)
- Leitura via interface web
- Alertas por Wi-Fi usando ESP32
- Dashboard em tempo real
Se quiser, posso criar a versão 2.0 deste projeto com múltiplos sensores e interface web profissional.
Conclusão
Criar um datalogger é um excelente exercício para quem deseja dominar eletrônica prática, sensores, medição analógica, protocolos I2C e manipulação de arquivos em SD Card.
Com o RP2040 UNO, tudo fica mais simples, eficiente e moderno.
Saiba mais sobre a parceria Saravati e Sara Educação
Este “Guia de Montagem” é uma colaboração especial entre a Saravati e a Sara Educação, criado pelo Professor Felipe Rosa. Nosso objetivo é enriquecer a comunidade de entusiastas da eletrônica, IoT e automação com recursos educacionais de alta qualidade. Através dessa parceria, buscamos inspirar e capacitar criadores em seus projetos, disponibilizando esses guias em nosso blog e nas redes sociais.

