Grove - Sensor de Temperatura V1.2

O Grove - Sensor de Temperatura usa um Termistor para detectar a temperatura ambiente. A resistência de um termistor irá aumentar quando a temperatura ambiente diminuir. É essa característica que usamos para calcular a temperatura ambiente. A faixa detectável deste sensor é de -40 a 125 ºC, e a precisão é de ±1,5 ºC
Nota: Este wiki também funciona com Grove - Sensor de Temperatura V1.1, para V1.0 consulte Grove - Temperature Sensor
Atualizável para Sensores Industriais
Com o controlador SenseCAP S2110 controller e o S2100 data logger, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não só ajuda você com a prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de robustos sensores industriais.
Os sensores industriais da série SenseCAP S210x fornecem uma experiência pronta para uso para sensoriamento ambiental. Consulte o Sensor Sem Fio de Temperatura e Umidade S2101, com maior desempenho e robustez para monitoramento da qualidade do ar. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade de luz, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x em seu próximo projeto industrial de sucesso.
| Sensor Industrial SenseCAP |
| S2101 Temp & Umidade do Ar |
Especificações
- Tensão: 3,3 ~ 5 V
- Resistência em zero potência: 100 KΩ
- Tolerância de resistência: ±1%
- Faixa de temperatura de operação: -40 ~ +125 ℃
- Constante B nominal: 4250 ~ 4299K
Para mais detalhes sobre módulos Grove, consulte o Grove System
Plataformas Suportadas
| Arduino | Raspberry | ArduPy |
|---|---|---|
![]() | ![]() | ![]() |
As plataformas mencionadas acima como suportadas são uma indicação da compatibilidade de software ou teórica do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou exemplos de código para a plataforma Arduino. Não é possível fornecer biblioteca de software / código de demonstração para todas as possíveis plataformas de MCU. Portanto, os usuários têm que escrever sua própria biblioteca de software.
Primeiros Passos
Após esta seção, você poderá fazer o Grove - Sensor de Temperatura V1.1/1.2 funcionar com apenas alguns passos.
Se esta é a primeira vez que você trabalha com Arduino, recomendamos fortemente que veja Getting Started with Arduino antes de começar.
Brincar com Arduino
Hardware
- Passo 1. Prepare os itens abaixo:
| Seeeduino V4.2 | Base Shield | Grove - Sensor de Temperatura |
|---|---|---|
![]() | ![]() | ![]() |
| Adquira Agora | Adquira Agora | Adquira Agora |
-
Passo 2. Conecte o Grove - Sensor de Temperatura à porta A0 do Grove-Base Shield.
-
Passo 3. Conecte o Grove - Base Shield ao Seeeduino.
-
Passo 4. Conecte o Seeeduino ao PC via um cabo USB.

Se não tivermos o Grove Base Shield, também podemos conectar diretamente o Grove_Ultrasonic_Ranger ao Seeeduino como abaixo.
| Seeeduino | Grove - Sensor de Temperatura |
|---|---|
| 5V | Vermelho |
| GND | Preto |
| Não Conectado | Branco |
| A0 | Amarelo |
Software
- Passo 1. Abra a Arduino IDE e clique em File>New para abrir uma nova página. Copie o código a seguir para a nova página e faça o upload. Se você não sabe como enviar o código, verifique How to upload code.
// Demo code for Grove - Temperature Sensor V1.1/1.2
// Loovee @ 2015-8-26
#include <math.h>
const int B = 4275000; // B value of the thermistor
const int R0 = 100000; // R0 = 100k
const int pinTempSensor = A0; // Grove - Temperature Sensor connect to A0
#if defined(ARDUINO_ARCH_AVR)
#define debug Serial
#elif defined(ARDUINO_ARCH_SAMD) || defined(ARDUINO_ARCH_SAM)
#define debug SerialUSB
#else
#define debug Serial
#endif
void setup()
{
Serial.begin(9600);
}
void loop()
{
int a = analogRead(pinTempSensor);
float R = 1023.0/a-1.0;
R = R0*R;
float temperature = 1.0/(log(R/R0)/B+1/298.15)-273.15; // convert to temperature via datasheet
Serial.print("temperature = ");
Serial.println(temperature);
delay(100);
}
Passo 2. Abra o Serial Monitor da Arduino IDE clicando em Tool-> Serial Monitor. Ou pressione as teclas ++ctrl+shift+m++ ao mesmo tempo. Se tudo correr bem, você obterá a temperatura.
O resultado deverá ser como:

Brincar com Raspberry Pi (Com Grove Base Hat para Raspberry Pi)
Hardware
- Passo 1. Itens usados neste projeto:
| Raspberry pi | Grove Base Hat para RasPi | Grove - Sensor de Temperatura |
|---|---|---|
![]() | ![]() | |
| Adquira AGORA | Adquira AGORA | Adquira AGORA |
- Passo 2. Conecte o Grove Base Hat ao Raspberry.
- Passo 3. Conecte o sensor de temperatura à porta A0 do Base Hat.
- Passo 4. Conecte o Raspberry Pi ao PC através de um cabo USB.

No passo 3 você pode conectar o sensor de temperatura a qualquer Porta analógica, mas certifique-se de alterar o comando com o número de porta correspondente.
Software
Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.
- Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
- Passo 2. Baixe o arquivo-fonte clonando a biblioteca grove.py.
cd ~
git clone https://github.com/Seeed-Studio/grove.py
- Passo 3. Execute os comandos abaixo para rodar o código.
cd grove.py/grove
python3 grove_temperature_sensor.py 0
A seguir está o código grove_temperature_sensor.py.
import sys
import time
from grove.factory import Factory
def main():
from grove.helper import SlotHelper
sh = SlotHelper(SlotHelper.ADC)
pin = sh.argv2pin()
sensor = Factory.getTemper("NTC-ADC", pin)
print('Detecting temperature...')
while True:
print('{} Celsius'.format(sensor.temperature))
time.sleep(1)
if __name__ == '__main__':
main()
Se tudo correr bem, você poderá ver o seguinte resultado
pi@raspberrypi:~/grove.py/grove $ python3 grove_temperature_sensor.py 0
Hat Name = 'Grove Base Hat RPi'
Detecting temperature...
24.7473402633 Celsius
24.7473402633 Celsius
24.7473402633 Celsius
24.7112751977 Celsius
24.7112751977 Celsius
^CTraceback (most recent call last):
File "grove_temperature_sensor.py", line 53, in <module>
main()
File "grove_temperature_sensor.py", line 49, in main
time.sleep(1)
KeyboardInterrupt
Você pode sair deste programa simplesmente pressionando ++ctrl+c++.
Você deve ter notado que, para a porta analógica, o número do pino serigrafado é algo como A1, A0, porém no comando usamos o parâmetro 0 e 1, exatamente como na porta digital. Portanto, certifique-se de conectar o módulo na porta correta, caso contrário poderá haver conflitos de pinos.
Brincar com Raspberry Pi (com GrovePi_Plus)
Hardware
- Passo 1. Prepare os seguintes itens:
| Raspberry pi | GrovePi_Plus | Grove - Temperature Sensor |
|---|---|---|
![]() | ![]() | ![]() |
| Adquira agora | Adquira agora | Adquira agora |
-
Passo 2. Conecte o GrovePi_Plus ao Raspberry.
-
Passo 3. Conecte o Grove - Temperature Sensor à porta A0 do GrovePi_Plus.
-
Passo 4. Conecte o Raspberry ao PC via cabo USB.

Software
-
Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
-
Passo 2. Siga Updating the Firmware para atualizar o firmware mais recente do GrovePi.
Neste wiki usamos o caminho ~/GrovePi/ em vez de /home/pi/Desktop/GrovePi, você precisa garantir que o Passo 2 e o Passo 3 usem o mesmo caminho.
Recomendamos fortemente que você atualize o firmware, caso contrário, para alguns sensores você poderá obter erros.
Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.
- Passo 3. Faça o git clone do repositório Github.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
- Passo 4. Execute os comandos abaixo para usar o Grove - Temperature Sensor para medir a temperatura.
cd ~/GrovePi/Software/Python
sudo python3 grove_temperature_sensor.py
Aqui está o código grove_temperature_sensor.py.
# NOTE:
# The sensor uses a thermistor to detect ambient temperature.
# The resistance of a thermistor will increase when the ambient temperature decreases.
#
# There are 3 revisions 1.0, 1.1 and 1.2, each using a different model thermistor.
# Each thermistor datasheet specifies a unique Nominal B-Constant which is used in the calculation forumla.
#
# The second argument in the grovepi.temp() method defines which board version you have connected.
# Defaults to '1.0'. eg.
# temp = grovepi.temp(sensor) # B value = 3975
# temp = grovepi.temp(sensor,'1.1') # B value = 4250
# temp = grovepi.temp(sensor,'1.2') # B value = 4250
import time
import grovepi
# Connect the Grove Temperature Sensor to analog port A0
# SIG,NC,VCC,GND
sensor = 0
while True:
try:
temp = grovepi.temp(sensor,'1.2')
print("temp =", temp)
time.sleep(.5)
except KeyboardInterrupt:
break
except IOError:
print ("Error")
O resultado deve ser semelhante a:
pi@raspberrypi:~/GrovePi/Software/Python $ sudo python3 grove_temperature_sensor.py
('temp =', 25.28652137917777)
('temp =', 25.28652137917777)
('temp =', 25.28652137917777)
('temp =', 25.28652137917777)
('temp =', 25.368489566400115)
('temp =', 25.61468397498203)
('temp =', 27.43501590142614)
('temp =', 27.85285590636829)
('temp =', 27.18509952680688)
('temp =', 26.852756540240193)
Brincar com Wio Terminal (ArduPy)
Hardware
- Passo 1. Prepare os seguintes itens:
| Wio Terminal | Grove - Temperature Sensor |
|---|---|
![]() | |
| Adquira agora | Adquira agora |
-
Passo 2. Conecte o Grove - Temperature Sensor à porta A0 do Wio Terminal.
-
Passo 3. Conecte o Wio Terminal ao PC através de um cabo USB Tipo-C.

Software
-
Passo 1. Siga ArduPy Getting Started para configurar o ambiente de desenvolvimento ArduPy no Wio Terminal.
-
Passo 2. Certifique-se de que o firmware ArduPy está gravado no Wio Terminal. Para mais informações, por favor siga aqui.
aip build
aip flash
- Passo 3. Copie o código a seguir e salve-o como
ArduPy-temp.py:
from machine import Pin, ADC
from machine import LCD
from machine import Sprite
import time, math
raw = ADC(Pin(13))
lcd = LCD()
spr = Sprite(lcd) # Create a buff
B = 4275 # B value of the thermistor
R0 = 100000 # R0 = 100k
def temp(reading):
R = 1023.0 / reading - 1.0
R = R0*R
temperature = 1.0/(math.log(R/R0)/B+1/298.15)-273.15 # Convert to temperature via datasheet
return temperature
def main():
spr.createSprite(320, 240)
while True:
spr.setTextSize(2)
spr.fillSprite(spr.color.BLACK)
spr.setTextColor(lcd.color.ORANGE)
spr.drawString("Temperature Reading", 45, 10)
spr.drawFastHLine(40, 35, 240, lcd.color.DARKGREY)
spr.setTextColor(lcd.color.WHITE)
spr.drawString("- ", 20, 50)
spr.drawFloat(temp(raw.read()), 3, 40,50)
spr.drawString("C", 120, 50)
spr.pushSprite(0,0)
time.sleep_ms(500)
print("Temperature: ", temp(raw.read()), "C")
if __name__ == "__main__":
main()
- Passo 4. Salve o
ArduPy-temp.pyem um local que você conheça. Execute o comando a seguir e substitua<YourPythonFilePath>pelo local do seuArduPy-temp.py.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-temp.py"
- Passo 5. Veremos o valor da temperatura exibido no terminal como abaixo, e sendo exibido na tela LCD do Wio Terminal.
ansonhe@Ansons-Macbook-Pro ~:aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-temp.py"
Positional argument (/dev/cu.usbmodem141101) takes precedence over --open.
Connected to ardupy
Temperature: 28.08603 C
Temperature: 28.50415 C
Temperature: 28.16953 C
Temperature: 28.25308 C
Temperature: 28.08603 C
Temperature: 28.16953 C
Temperature: 28.08603 C
Temperature: 28.16953 C
Temperature: 28.33671 C
Temperature: 28.16953 C
Temperature: 28.25308 C

Referência
Se você quiser saber como o algoritmo da temperatura é obtido, por favor consulte a imagem abaixo:

Visualizador de Esquemático Online
Recursos
- [Zip] Grove - Temperature Sensor v1.1 Eagle File
- [PDF] Grove - Temperature Sensor v1.1.PDF
- [PDF] Temperature Sensor datasheet
Projetos
Módulo Grove sensor de temperatura:
Suporte Técnico & Discussão de Produto
Obrigado por escolher nossos produtos! Estamos aqui para lhe fornecer diferentes formas de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.









