Se você está iniciando no mundo da eletrônica ou já é um veterano do Clube do Maker, certamente já ouviu falar do LM35. Este componente é um dos pilares da instrumentação eletrônica acessível. Neste guia, vamos explorar desde a física do semicondutor até a implementação avançada com Arduino.
O que é o sensor LM35?
O LM35 é um sensor de temperatura analógico de precisão, cujo sinal de saída em tensão é linearmente proporcional à temperatura em graus Celsius (°C). Ele opera na faixa de -55°C a 150°C e não requer calibração externa para manter sua exatidão.
Características Técnicas e Funcionamento
O sensor de temperatura LM35 destaca-se por sua simplicidade e precisão. Ao contrário de termistores NTC (Negative Temperature Coefficient), que possuem uma curva de resposta exponencial e exigem cálculos complexos de Taylor ou a equação de Steinhart-Hart, o LM35 facilita a vida do engenheiro. Sua principal vantagem é a escala linear.
A relação de saída é definida exatamente como 10mV/°C. Isso significa que, se o sensor detectar uma temperatura de 25°C, a tensão no pino de saída será de 250mV. Se a temperatura subir para 100°C, a saída será de 1,0V. Essa linearidade direta elimina a necessidade de tabelas de consulta pesadas na memória do microcontrolador, economizando recursos de processamento.
Do ponto de vista físico, o LM35 opera com base no comportamento de junções P-N de transistores de silício. A queda de tensão em uma junção de semicondutor é sensível à temperatura. O circuito interno do LM35 utiliza uma referência de “bandgap” para compensar variações e garantir que a corrente de saída seja estável, resultando em uma precisão típica de 0,5°C à temperatura ambiente de 25°C.
Outro ponto fundamental é o baixo auto-aquecimento. Como o sensor consome apenas cerca de 60µA da fonte de alimentação, o calor gerado pelo seu próprio funcionamento é desprezível, cerca de 0,08°C em ar parado. Isso garante que a medição reflita a temperatura do ambiente ou do objeto em contato, e não a temperatura do próprio chip.
Pinagem (Pinout) e Encapsulamento
O LM35 é comumente encontrado no encapsulamento TO-92, que se assemelha visualmente a um transistor comum, como o BC548. Essa característica facilita muito o uso em protoboards e placas de circuito impresso (PCB) compactas.
A pinagem LM35 é extremamente simples e consiste em três terminais. Olhando para a face reta do componente (onde as inscrições estão gravadas), da esquerda para a direita, temos:
- VCC (+Vs): Pino de alimentação positiva, aceitando de 4V a 30V.
- Output (Vout): Pino de sinal analógico que fornece a tensão proporcional à temperatura.
- GND: Pino de aterramento ou referência negativa da fonte.

Vale lembrar que o LM35 não é um componente único, mas sim uma família de sensores. Cada modelo possui particularidades em seus parâmetros de operação (como alimentação e faixa de temperatura). Por isso, sempre verifique a folha de dados (datasheet) antes da implementação. Abaixo, listamos os modelos mais frequentes:
- LM35D
- LM35A
- LM35C
- LM35CA
É crucial não inverter os pinos de alimentação. A inversão da polaridade pode causar o aquecimento instantâneo do componente e danos permanentes à sua estrutura interna de silício. Em projetos onde o sensor ficará distante do microcontrolador, recomenda-se o uso de capacitores de desacoplamento próximos ao sensor para estabilizar a tensão de entrada.
Especificações Técnicas do Datasheet
Ao analisar o datasheet LM35, percebemos por que ele é a escolha preferida em sistemas de monitoramento térmico. As especificações garantem confiabilidade em diversas condições industriais e domésticas.
- Faixa de Medição: O sensor é capaz de medir de -55°C a 150°C. Para medições abaixo de zero, no entanto, é necessário adicionar um resistor de pull-down externo conectado a uma tensão negativa, conforme detalhado nas notas de aplicação do fabricante (Texas Instruments).
- Tensão de Operação: Ele é extremamente versátil, funcionando em uma faixa que vai de 4V até 30V. Isso permite que ele seja alimentado diretamente pelos 5V do Arduino ou por baterias de 9V e 12V sem problemas.
- Precisão Garantida: O fabricante garante uma precisão de 0,5°C a 25°C e cerca de 1°C em toda a sua faixa operacional. Isso é superior a muitos sensores digitais de baixo custo.
- Impedância de Saída: O LM35 possui baixa impedância de saída (0,1Ω para uma carga de 1mA), o que facilita a interface com circuitos de condicionamento de sinal e conversores analógico-digitais (ADC).
Existem alguns encapsulamentos do LM35, o mais comum é o TO-92, mas você pode encontrar o LM35 em SOIC, TO-220 e demais encapsulamentos. Veja abaixo alguns exemplos retirados do próprio datasheet do componentes:

Você pode ter acesso ao datasheet completo acesso o link do fabricante: Datasheet LM35
Esses dados técnicos mostram que o LM35 não é apenas um componente para hobbistas, mas um sensor robusto para automação residencial, controle de estufas e proteção térmica de motores.
LM35 com Arduino: Guia de Conexão e Código
Integrar o Arduino LM35 ao Arduino é um dos projetos básicos mais importantes para aprender sobre leitura analógica. O Arduino possui um conversor analógico-digital (ADC) de 10 bits, o que significa que ele transforma tensões entre 0V e 5V em valores inteiros entre 0 e 1023.
Esquema de Ligação
A conexão é direta. Conecte o pino VCC do sensor ao pino 5V do Arduino, o GND ao GND, e o pino de saída (Output) à porta analógica A0. Para evitar flutuações, você pode colocar um capacitor cerâmico de 100nF entre o VCC e o GND do sensor.

Código de Exemplo Comentado
// Definição do pino do sensor
const int pinoLM35 = A0;
void setup() {
Serial.begin(9600);
// Opcional: Melhora a precisão (ver seção Diferencial Técnico)
// analogReference(INTERNAL);
}
void loop() {
// Lê o valor analógico (0 a 1023)
int leituraADC = analogRead(pinoLM35);
// Converte a leitura em tensão (considerando 5V de referência)
float tensao = leituraADC * (5.0 / 1023.0);
// Converte a tensão em temperatura (10mV por grau Celsius)
float temperatura = tensao * 100.0;
Serial.print("Temperatura Atual: ");
Serial.print(temperatura);
Serial.println(" C");
delay(1000); // Aguarda 1 segundo para a próxima leitura
}
Neste código, a lógica de conversão é fundamental. Multiplicamos a tensão por 100 porque, se 10mV = 1°C, então 1V = 100°C.
Diferencial Técnico: Otimizando com analogReference(INTERNAL)
Um problema comum ao usar o sensor de temperatura LM35 com Arduino é a oscilação nos valores lidos. Isso geralmente ocorre porque a referência padrão do ADC é a própria tensão de alimentação de 5V. Se a porta USB do seu computador fornecer 4,8V em vez de 5V, seu cálculo de temperatura estará errado.
Para resolver isso, usamos a função analogReference(INTERNAL). No Arduino Uno, isso muda a tensão de referência do ADC para 1,1V estáveis e independentes da alimentação USB. Como o LM35 dificilmente passará de 1,1V em aplicações comuns (110°C), essa configuração aumenta drasticamente a resolução e a estabilidade.
Ao usar a referência interna, o cálculo no código muda para:
tensao = leituraADC x (1.1 / 1023.0)
Isso reduz o ruído e evita que a leitura da temperatura “pule” quando outros componentes (como LEDs ou relés) são ligados no mesmo circuito, causando quedas momentâneas na linha de 5V.
Comparativo: LM35 vs. DHT11 vs. DS18B20
Escolher o sensor certo depende do seu objetivo. O LM35 é analógico e oferece uma resposta instantânea. O DHT11, por outro lado, é um sensor digital que mede temperatura e umidade, mas sua precisão de temperatura é baixa e o tempo de resposta é lento (cerca de 2 segundos).
O DS18B20 é um sensor digital de alta precisão que utiliza o protocolo One-Wire. Ele é excelente para longas distâncias, pois o sinal digital não sofre atenuação como o sinal analógico do LM35. No entanto, o DS18B20 exige bibliotecas específicas e código mais complexo.
Use o LM35 quando precisar de medições rápidas, precisas e não quiser lidar com protocolos de comunicação digital complexos. Ele é ideal para sistemas de controle onde a variação térmica precisa ser monitorada em tempo real e com baixo atraso.
Problemas Comuns e Soluções (FAQ Técnica)
1 – Como evitar ruído em cabos longos?
Sinais analógicos são sensíveis a interferências eletromagnéticas. Se você precisar colocar o LM35 a mais de 2 metros do Arduino, use cabos blindados (shielded) e coloque um resistor de 10kΩ em série com a saída, ou um capacitor de filtro na entrada do Arduino.
2 – Por que a temperatura oscila muito no Serial Monitor?
Isso acontece devido ao ruído na fonte de alimentação ou à alta impedância de entrada do ADC. Além de usar analogReference(INTERNAL), você pode implementar uma “Média Móvel” no código, lendo o sensor 10 vezes e tirando a média dos valores para suavizar a leitura.
3 – Como medir temperaturas negativas com o LM35?
Para medir valores abaixo de 0°C, o LM35 precisa de uma tensão negativa no pino de saída através de um resistor conectado a uma fonte negativa (como -5V). Sem isso, a saída permanecerá em 0V para qualquer temperatura negativa.
Aplicações Práticas
- Termostato para Chocadeiras: Controle preciso de lâmpadas de aquecimento para manter ovos na temperatura ideal.
- Monitoramento de CPUs: Coloque o sensor no dissipador de calor de um computador ou driver de motor para evitar queima por sobreaquecimento.
- Estações Meteorológicas: Medição da temperatura ambiente externa com alta fidelidade.
- Sistemas de Refrigeração: Controle de ventoinhas (fans) baseado na temperatura detectada.
- Dataloggers de Alimentos: Monitoramento de caixas térmicas durante o transporte de itens sensíveis.
Conclusão
O LM35 continua sendo um dos componentes mais amados pela comunidade maker por sua confiabilidade e facilidade de uso. Seja para um projeto simples de faculdade ou para um protótipo industrial, entender seu funcionamento linear e os truques de referência de tensão elevará o nível dos seus projetos de eletrônica.
Você já teve problemas com ruído nas leituras do seu sensor? Qual técnica você usa para estabilizar seus projetos? Deixe seu comentário abaixo e vamos trocar experiências aqui no Clube do Maker!
Caso queira se aprofundar em um conteúdo de áudio e vídeo, deixo uma indicação de vídeo para complementar os conhecimentos:













Respostas de 2