Smart alarm: med Arduino och velostat (6 / 7 steg)
Steg 6: Arduino kod
Layouten på koden är första larmsignalen läses och en gång som är större än 15 lampor slå på och den delstaten tryckgivaren är markerad. Den använder fördröjningstiden för att kontrollera en gång som är pressat för längre än 5s lysdioder turn off och larmet är avstängd. Detta kör väckarklockan (vi har det på en uppsättning intervall för demo ändamål men detta kan enkelt justeras), lysdioder, som velostat sensorn.
Här är ett exempel på vår kod:
Obs: för att kontrollera trycket från velostat, genom att trycka "CTRL + SHIFT + F" i fönstret Arduino, kan du se variationerna i tryck som du pekar på velostat. Det är hur vi bestämda mängden tryck behövs för att tillämpa för att stänga av larmet.
int fsrAnalogPin = A3;
int LEDpin = 11;
int LEDpin2 = 12;
int LEDpin3 = 9;
int LEDpin4 = 10;
int LEDpin5 = 8;
int LEDpin6 = 7.
int fsrReading; analog läsning från FSR resistor avdelare
int alarmPin = 3;
int alarmState;
int alarmOff = 6;
void setup(void) {
Serial.BEGIN(9600); Vi skickar avlusningsinformation via seriell bildskärmen
pinMode (LEDpin, OUTPUT);
pinMode (LEDpin2, OUTPUT);
pinMode (LEDpin2, OUTPUT);
pinMode (LEDpin3, OUTPUT);
pinMode (LEDpin4, OUTPUT);
pinMode (LEDpin5, OUTPUT);
pinMode (LEDpin6, OUTPUT);
}
void loop() {
alarmState = analogRead(alarmPin);
Serial.Print ("alarm =");
Serial.println(alarmState);
fsrReading = analogRead(fsrAnalogPin);
Serial.Print ("Analog läsning =");
Serial.println(fsrReading);
om (fsrReading > = 500)
{
Delay(5000);
digitalWrite (LEDpin, låg);
digitalWrite (LEDpin2, låg);
digitalWrite (LEDpin3, låg);
digitalWrite (LEDpin4, låg);
digitalWrite (LEDpin5, låg);
digitalWrite (LEDpin6, låg);
analogWrite (alarmOff, låg);
Delay(10000);
digitalWrite(LEDpin,HIGH);
digitalWrite (LEDpin2, hög);
digitalWrite (LEDpin3, hög);
digitalWrite (LEDpin4, hög);
digitalWrite (LEDpin5, hög);
digitalWrite (LEDpin, hög);
analogWrite(alarmOff,200);
Serial.Print ("alarm =");
Serial.println(alarmState);
}
Delay(500);
}