Arduino温度传感器倒计时

时间:2017-06-25 15:47:50

标签: arduino sensor arduino-uno temperature

我想让我的新velleman vma320与我的arduino一起工作。 它根本不起作用,温度降低了它的热度。我已经尝试了一切。有人能帮助我吗?这是我的代码......

int SensorPin = A0;

void setup() {

  Serial.begin(9600);

}

void loop() {

  //reading
  int sensorvalue = analogRead(SensorPin);
  Serial.print("value: ");
  Serial.print(sensorvalue);

  //voltage
  float voltage = sensorvalue * 5.0;
  voltage /= 1024.0;
  Serial.print(", volts: ");
  Serial.print(voltage); 

  //temperature
  float temperature = (voltage - 0.5) * 100 ;
  Serial.print(" degrees C");
  Serial.println(temperature);

}

我做错了吗?或者它只是传感器?我用两个传感器试了一下。

如果你可以帮助我那将是非常棒的。

提前致谢, Jens Van den Eede。

2 个答案:

答案 0 :(得分:0)

所以,这是一个thermister velleman vma320的工作代码。根据它接线的方式,电压会随着温度的升高而下降,并且它不是线性的。

#include <math.h>

double Thermistor(int RawADC) {
 double Temp;
 Temp =log(10000.0/(1024.0/RawADC-1)); // for pull-up configuration
 Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
 Temp = Temp - 273.15;            // Convert Kelvin to Celcius
 return Temp;
}

void setup() {
 Serial.begin(9600);
}

void loop() {
 Serial.println(int(Thermistor(analogRead(A0))));
 delay(1000);
}

答案 1 :(得分:0)

请注意,如果为VMA320提供3.3VDC(从VCC而非5V),则以上代码仅提供准确的温度。

还要添加“温度=(温度* 9.0)/ 5.0 + 32.0;”高于“返回温度”;如果要转换为°F