Stap 11: ALARM (nog niet getest)
Wanneer de spanning zakt tot onder 4v of "618" (als iemand snijdt de draden naar de opener van de garage) zal het geluid de piëzo-zoemer
ONDERDELEN
5V piëzo-zoemer
http://www.RadioShack.com/90db-piezo-Pulse/2730066.html#.VUJq3MvwuP8
5V vaste spanningsregelaar
http://www.RadioShack.com/-5V-Fixed-voltage-regulator-7805/2761770.html#.VUJrGcvwuP8
CODE
/***************************************************
Dit is een voorbeeld van de schets voor onze optische sensor van de vingerafdruk
Speciaal ontworpen om te werken met de Adafruit BMP085 Breakout
---> http://www.adafruit.com/products/751
Deze schermen gebruiken TTL seriële om te communiceren, zijn 2 pinnen verplicht te
Interface
Adafruit investeert tijd en middelen verstrekken van dit open source-code,
u kan ondersteunen Adafruit en open-source hardware door de aankoop van
producten van Adafruit!
Geschreven door Limor Fried/Ladyada voor Adafruit industrieën.
BSD-licentie, alle bovenstaande tekst moet worden opgenomen in eventuele herverdeling
Code gewijzigd en Project gebouwd door Carrigan Luneke
****************************************************/
#include
#include
int getFingerprintIDez();
Deze constanten niet gewijzigd:
Const int analogPin = A0; PIN waarop de sensor is aangesloten
Const int piezoPin = 8; PIN die is gekoppeld aan de piezo
Const int drempel = 618; ingangsspanning van 5v regelgever drempel
pin #2 is IN van sensor (groene draad)
pin #3 is uit van arduino (witte draad)
SoftwareSerial mySerial (2, 3);
Adafruit_Fingerprint vinger = Adafruit_Fingerprint (& mySerial);
VOID Setup
{
Serial.begin(9600);
Serial.println("fingertest");
pinMode (11, OUTPUT); Rode LED
pinMode (12, OUTPUT); Groene LED
pinMode (10, OUTPUT); Garage Bridge
pinMode (piezoPin, OUTPUT);
Stel de gegevenssnelheid voor de sensor seriële poort
Finger.begin(57600);
Als (finger.verifyPassword()) {}
Serial.println ("gevonden vingerafdruksensor!");
} else {}
Serial.println ("Did niet vondst vingerafdruk sensor:(");
terwijl (1);
}
Serial.println ("Waiting for geldig vinger...");
}
void loop / / run over en weer
{
getFingerprintIDez();
digitalWrite (11, hoge); Rode LED op
digitalWrite (12, laag); Groene LED uit
digitalWrite (10, laag); Opener van de garage niet actief
luiden naar de waarde van de regulator 5v:
int analogValue = analogRead(analogPin);
Als de analoge waarde hoog genoeg is, schakelt u de piëzo:
Als (analogValue < drempel) {}
digitalWrite (piezoPin, hoge);
}
else {}
digitalWrite(piezoPin,LOW);
}
de analoge waarde afdrukken
Serial.println(analogValue);
delay(1); vertraging in tussen leest voor stabiliteit
}
uint8_t getFingerprintID() {}
uint8_t p = finger.getImage();
schakelaar (p) {}
Case FINGERPRINT_OK:
Serial.println ("beeld genomen");
breken;
Case FINGERPRINT_NOFINGER:
Serial.println ("geen vinger ontdekt");
keren p;
Case FINGERPRINT_PACKETRECIEVEERR:
Serial.println ("communicatiefout");
keren p;
Case FINGERPRINT_IMAGEFAIL:
Serial.println ("Imaging fout");
keren p;
standaard:
Serial.println ('onbekende fout');
keren p;
}
OK succes!
p = finger.image2Tz();
schakelaar (p) {}
Case FINGERPRINT_OK:
Serial.println ("afbeelding geconverteerd");
breken;
Case FINGERPRINT_IMAGEMESS:
Serial.println ("afbeelding te slordig");
keren p;
Case FINGERPRINT_PACKETRECIEVEERR:
Serial.println ("communicatiefout");
keren p;
Case FINGERPRINT_FEATUREFAIL:
Serial.println kon ("niet vinden vingerafdruk functies");
keren p;
Case FINGERPRINT_INVALIDIMAGE:
Serial.println kon ("niet vinden vingerafdruk functies");
keren p;
standaard:
Serial.println ('onbekende fout');
keren p;
}
OK omgezet!
p = finger.fingerFastSearch();
Als (p == FINGERPRINT_OK) {}
Serial.println ("gevonden een print!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {}
Serial.println ("communicatiefout");
keren p;
} else if (p == FINGERPRINT_NOTFOUND) {}
Serial.println Did ("niet vondst een match");
keren p;
} else {}
Serial.println ('onbekende fout');
keren p;
}
een gevonden!
Serial.Print ("gevonden ID # '); Serial.Print(finger.fingerID);
Serial.Print ("met vertrouwen van"); Serial.println(finger.Confidence);
}
Deze eigenschap retourneert -1 als mislukt, anders geeft ID #
int getFingerprintIDez() {}
uint8_t p = finger.getImage();
Als (p! = FINGERPRINT_OK) terug -1;
p = finger.image2Tz();
Als (p! = FINGERPRINT_OK) terug -1;
p = finger.fingerFastSearch();
Als (p! = FINGERPRINT_OK) terug -1;
een gevonden!
digitalWrite (11, laag); Rode LED uit
digitalWrite (12, hoge); Groene LED ON
digitalWrite (10, hoge); Garage Opener actief
delay(1000); 0v geldt voor een tweede, voor elk opener afwijken
Serial.Print ("gevonden ID # '); Serial.Print(finger.fingerID);
Serial.Print ("met vertrouwen van"); Serial.println(finger.Confidence);
Return finger.fingerID;
}