Automatisk hem övervakningssystem genom att använda arduino (enkel och billig) (3 / 6 steg)
Steg 3: Program övervakning system koden till arduino:
När du läst den fjärr-knappen hex koder så är nu dags att sätta huvudprogrammet koden till arduino.
Programmet nedan är arduino program för detta projekt automatiska övervakningssystem. Ladda upp nedan koden till arduino.
innan du överför koden sätta i din tv remote-knappar hex koden i motsvarande ställning visade i programmet med hjälp av kommandot line.and en mer förändring behövs i program för besluta din fjärrkontroll för att följa det steget ges mellan koden i multicommand linje
#include < IRremote.h >
IRsend irsend;
int rf_data = 8;
int rf_input = 9;
int rf_power = 10;
int rf_ground = 11;
int red_led = 6;
int blue_led = 7.
int Summer = 4;
int relä = 13.
int power = 14.
int marken = 16.
int state = 0;
void setup() {
pinMode(rf_data,INPUT);
pinMode(rf_input,INPUT);
pinMode(rf_power,OUTPUT);
pinMode(rf_ground,OUTPUT);
pinMode(red_led,OUTPUT);
pinMode(blue_led,OUTPUT);
pinMode(buzzer,OUTPUT);
pinMode(relay,OUTPUT);
pinMode(power,OUTPUT);
pinMode(ground,OUTPUT);
digitalWrite(rf_power,HIGH);
digitalWrite(rf_ground,LOW);
digitalWrite(power,HIGH);
digitalWrite(ground,LOW);
Serial.BEGIN(9600);
}
void loop() {
int rf_state = digitalRead(rf_data);
IF(rf_state == High) {
digitalWrite(blue_led,HIGH);
digitalWrite(red_led,LOW);
digitalWrite(buzzer,LOW);
digitalWrite(relay,LOW);
om (statligt == 1) {
irsend.sendNEC (0 x40BF28D7, 67); / / lägga din TV remote källa till input knappen hex koden understruket område.
/ * En annan viktig sak i detta projekt är att hitta längden på hex koden som finns i understrukna tal i koden:irsend.sendNEC (0x40BF28D7,67); 67 är längden på min tv hex kod. Detta värde varierar baserat på fjärrkontrollen. För att hitta denna längd värdet i din remote.simply Anslut IR-mottagaren som visas i föregående steg till arduino. Lägg sedan till IR remote biblioteket till arduino programvaran. programvara med öppen den arduino och goto Arkiv -> examlpes -> IRremote -> IRrecvDump. en kod kommer att öppna ladda upp koden till arduino och öppna seriell monitor. Tryck sedan på valfri en knapp på din TV remote pekar mot IR-mottagaren i samband med arduino. sedan visade en längd av värden i följetong monitor. Att du kan se att RAW(value) .i som fäste nära RAW har värde. Det är längden på hex koden för din TV-fjärrkontroll. example:RAW(67). skriva ned värdet och ersätta din TV remote längdvärde i stället för 67 i förvaltningskodexen allt sker. Sedan ni alla gjort i kod. är du redo att utforma krets * /
Delay(10);
irsend.sendNEC (0 x40BFFA05, 67); / / lägga din TV remote val upp knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BFD22D, 67); / / sätta din TV-fjärrkontroll OK för hex-kod i understruket område.
Delay(10);
irsend.sendNEC (0 x40BF48B7, 67); / / lägga din TV remote power knappen hex koden understruket område.
State = 0;
}
annars om (statligt == 2) {
irsend.sendNEC (0 x40BF28D7, 67); / / lägga din TV remote källa till input knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BFFA05, 67); / / lägga din TV remote val upp knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BFD22D, 67); / / sätta din TV-fjärrkontroll OK för hex-kod i understruket område.
Delay(10);
State = 0;
}
}
annat if(rf_state==LOW) {
digitalWrite(red_led,HIGH);
digitalWrite(blue_led,LOW);
int calling_button = digitalRead(rf_input);
IF(calling_button == low) {
digitalWrite(relay,HIGH);
digitalWrite(buzzer,HIGH);
Delay(1000);
digitalWrite(buzzer,LOW);
int ldr = analogRead(A1);
om (ldr < 200) {
irsend.sendNEC (0 x40BF48B7, 67); lägga din TV remote power knappen hex koden i understruket område.
Delay(8500);
irsend.sendNEC (0 x40BF28D7, 67); / / lägga din TV remote källa till input knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BF2AD5, 67); / / lägga din TV remote val ner knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BFD22D, 67); / / sätta din TV-fjärrkontroll OK för hex-kod i understruket område.
State = 1;
} else om (ldr > = 200) {
irsend.sendNEC (0 x40BF28D7, 67); / / lägga din TV remote källa till input knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BF2AD5, 67); / / lägga din TV remote val ner knappen hex koden understruket område.
Delay(10);
irsend.sendNEC (0 x40BFD22D, 67); / / sätta din TV-fjärrkontroll OK för hex-kod i understruket område.
State = 2;
}
}
}
}