Projecto Robótica – Temperature Sensor – LM335A
A recepção do novo material despertou novamente a vontade de experimentar coisas novas na área da electrónica e robótica, pelo que desta vez explorei o Temperature Sensor – LM335A.
Não foi fácil acertar com a simples montagem, sobretudo devido à minha inexperiência de reconhecer resistências, mas acabei por colocar o protótipo funcional recorrendo ao seguinte esquema electrónico:
Após colocar tudo a funcional o sensor fazia a leitura dos seguintes valores:
O código que utilizei para colocar o sensor a ler os valores foi:
float temp;
int tempPin = 0;void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}void loop()
{
temp = analogRead(tempPin);
temp = (((temp/1023)*5)*100)-273.15;
Serial.print(“A Temperatura é de: “);
Serial.println(temp);
delay(1000);}
O sensor lê por defeito temperaturas em Kelvin, pelo que temos que fazer o calculo da real temperatura da seguinte forma:
temp = (((temp/1023)*5)*100)-273.15;
Esta linha de código indica-nos que os valores lidos irão variar entre 0 e 1023, mas nos precisamos de obter um valor em volts para que o Arduino o possa interpretar então vamos fazer (temp*5volts)/1023, uma vez que o output do LM335 é em mV, para converter para Volts multiplica-se por 100, e com isto obtemos o valor em Kelvin, que por sua vez para ser convertido em graus Celsius basta subtrair 273.15.
0ºk = -273.15ºC
0ºC = 271.15ºK.
Penso que esta implementação do sensor de temperatura esteja correcta, mas certamente haverá soluções mais elegantes que eu tentarei explorar no futuro visto que eu ainda me estou a iniciar na área da electrónica e da robótica.
Share




