Arduino - 溫溼度感測器 + 伺服馬達、光敏電阻 + LED(Temperature and Humidity sensor + Servomotor、photocell + LED)
目的:
1.以溫溼度感測器感測溫度變化,進而使伺服馬達有不同的轉速
2.光敏電阻監控光線變化,光線越暗,LED越亮
成果:
Arduino Code:
#include < Wire.h >
#include < SPI.h >
#include < dht11.h > // DHT11 感測器程式庫
#include < LiquidCrystal.h >
const byte LED = 11;
dht11 DHT11; // 宣告溫濕度檢測器程式物件
const byte dataPin = 2;
int LDR = 0; //光敏電阻輸入,接在anallog pin 0
float readLDR = 0; //光敏電阻感應到的光源產生的電阻值
byte mopin = 5;
int potValue = 0;
byte val = 0;
//led change
int bright = 0;
void setup() {
pinMode(LED, OUTPUT);
pinMode(mopin, OUTPUT);
Serial.begin(9600);
}
void loop() {
readLDR = analogRead(LDR); //存取光敏電阻的電阻值
int chk = DHT11.read(dataPin);
if (chk == 0) {
Serial.println(DHT11.temperature);
if (DHT11.temperature < 27) {
val = 0;
analogWrite(mopin, val);
}
else if (DHT11.temperature == 27) {
analogWrite(mopin, 100);
}
else if (DHT11.temperature > 27) {
analogWrite(mopin, 200);
}
analogWrite(11, bright);
if (readLDR > 850) {
bright = 255;
}
else if (readLDR > 600 && readLDR < 850) {
bright = 80;
}
else if (readLDR < 600) {
bright = 0;
}
//Serial.println(readLDR);
}
}
留言
張貼留言