本帖最後由 小牙 於 2014-11-21 22:03 編輯
各位前輩您好,最近小弟剛接觸ARDUINO UNO想做一個隨著亮度變暗LED較便亮,還有當霧氣產生時LED也會同時變亮,因為找不到可以量測霧氣感測器,所以想說可不可以用露點計算知道相對濕度以及實際氣溫時,露點可以透過以下公式求得近似值: 當中的則是: 溫度 和露點 單位為攝氏、相對濕度 為百分比, 則代表自然對數。常數 和分別是: ℃此公式是基於 Magnus-Tetens 近似法( Magnus-Tetens Approximation),當中把飽和水氣壓視為溫度的函數。[2]此方法僅在以下範圍時有效: 0℃ < < 60℃1% < < 100%0℃ < < 50℃簡易近似法[編輯]當知道乾球溫度、而相對濕度大於50%時,露點可以用下列的公式求得,其誤差值僅為 ±1℃。 或者 但就不知道如何用。或者限定到某種上下線也可以
下面是我打的程式,我把光敏跟DHT11程式做結合但還是沒辦法同步沒辦法說溼度和溫度到某種程度LED就會變亮
int lightLevel;float humidity;
float temperature;
#include "DHT.h"
#define DHTPIN 8
#define DHTTYPE DHT11
#define LED_PIN 12
#define SERIAL_BAUDRATE 115200DHT dht(DHTPIN, DHTTYPE);
void setup(void){ dht.begin();
Serial.begin(115200) ;
Serial.begin(SERIAL_BAUDRATE);}
void loop(void)
{ float humidity = dht.readHumidity();
float temperature = dht.readTemperature()
int lightLevel = analogRead(A0);
Serial.print("Temperature: ");
Serial.println(temperature);
Serial.print("Humidity: ");
Serial.println(humidity);
Serial.print("Light level: ");
Serial.println(lightLevel);
Serial.println("");
delay(2000);
int r = analogRead(lightLevel);
int b = map(r, 0, 1023, 0, 255);
// 環境光線越弱強,LED就越亮
analogWrite(LED_PIN, b);
}
懇請各位前輩能幫忙,真的很想完成第一項自己所做的
|