http://biomedicaltechnologyconsulting.blogspot.com/2012/05/Arduino-Automatic-door-opener.html
Dit project kan worden aangesloten op een deurtelefoon, zodat wanneer de deurbel knop is ingedrukt de deur opent automatisch.
Zeer nuttig voor artsen kantoren met veel patiënten zoals hematologie lab. Deze hardware is voor de hoofdingang van het gebouw (u kunt laten uw kantoor deur open...:))
Terwijl deurbel knop is ingedrukt, kunt u een wisselstroom kiezen in de luidspreker van de deurtelefoon. U kunt deze trigger spanning met behulp van een sensor DC spanning meten.
Waarom een voltage-sensor? Oorzaak die u isoleren je arduino tegen spanningen die zouden kunnen gaan zo hoog als 12Vdc of 24Vdc. Ingangsspanning mijn spanning sensor ook gedeeld door verhouding 5 tegen 1, dus max ingangsspanning 25V is.
In mijn geval heb ik een trekker van 6.5VAC. Deze trigger spanning gaat naar een AC naar DC diode brug converter en vervolgens door de DC spanning sensor aan de analoge input A0. Als analoge input A0 een leest meer dan 4 volt dan digitale retourneert ik / 0 pin 12 wordt hoog en triggers het 5V relais die verbonden is aan knop van deurtelefoon die de deur opent.
Hardware:
Arduino Nano V3
9V batterij
DC spanning Sensormodule
1-kanaals Relais Module Board 5V Module
Diode brug
Route:
Batterij: Verbinden met Vin en GND van arduino (voorzichtig sluit geen batterij wanneer u hebt ook usb aangesloten)
AC naar DC diode brug: AC pinnen gaat om deur telefoon spreker pinnen, DC pinnen aan DC spanning sensor.
Voltage-sensor: Input + VCC gaat naar + pin van diode brug, input grond gaat naar - pin van diode brug, uitgang S tot en met pin A0, output + Vcc naar 5V pin, uitgang grond aan GND pin van de arduino.
Kanaal estafette: Trigger om digitale I/O Pin 12, + Vcc naar 5V pin, geslepen GRN pin van de arduino.
Code:
pin-codes instellen
Const int ledPin = 13; het nummer van de LED-pin
Const int relayPin = 12; het nummer van de Realy pin
Const int AnalogInputPin = A0; Analoge invoer pin van de sensor
VOID Setup
{
pinMode (ledPin, OUTPUT); digitale pincode LED-uitvoer instellen
pinMode (relayPin, OUTPUT); digitale pincode RELAISUITGANG instellen
Serial.begin(9600); voor het controleren van de ingang van voltage sensor als verbonden met PC
} //end void setup
void loop
{
zweven sensorValue = 0;
sensorValue = analogRead(AnalogInputPin); Analoge input A0 leest en retourneert de waarde van 0 tot 1023 (10 bit AD converter).
zweven sensorRatio = ((5*5)/1023); Deze moet hebben gewerkt, maar niet (5v max analoge ingang * 5 keer verhouding van de output naar input van DC spanning sensor / 1023 max van A0)
zweven sensorRatio = 22.646/1000; //!!!! Met seriële monitor controleren en het gebruik van 2 batterijen (1, 2V & 9V) ik hun spanning gemeten met voltmeter maakte ik deze correctie-verhouding. Voordat verbinding de diode brug.
zweven voltIs = (sensorValue * sensorRatio) + 0.6; 0.6V is van een diode brug de drempel van de gemiddelde spanning wanneer er geen gelijkrichter zoals dit geval.
Serial.println(voltIs); voor het verifiëren van spanning met seriële monitor van arduino 1.0 software.
delay(200); vertraging voor 0,2 tweede om de processor koel te houden
Wanneer drukknop van deur is ingedrukt wordt een 4, 5V spanning wordt weergegeven in de spreker van deurtelefonie.
Als (voltIs > 3.95 & & voltIs < 08.05) //Speaker spanning = 6,5 volt (ja ik kon zijn nauwkeuriger maar moest ervoor zorgen dat die deur wordt geopend)
{digitalWrite (ledPin, hoge); LED-indicatie dat relais circuit is gesloten
digitalWrite (relayPin, hoge); Relais schakelingen is gesloten dus deur mechanisme is op
vertraging (3500); Vertraging deuropening magnetische mechanisme voor 3,5 seconden zodat die patiënt ingang passeert.
digitalWrite (ledPin, laag); Led uitschakelen
digitalWrite (relayPin, laag); relay terug naar NO
vertraging (20); voorzorg vertraging
}
anders
{
sensorValue = 0; wet als voorzorgsmaatregel alleen in het geval er anomalie niet om deur te openen.
voltIs = 0; wet als voorzorgsmaatregel alleen in het geval er anomalie niet om deur te openen.
} //end als voltIs
} //end ongeldig lus
/*
@ 2012 gemaakt
Pagonidis Alexandros
www.BiomedicalTechnology.gr
*/
Het laatste project in een vak:
Nou probeer niet te gebruiken van een metalen doos, omdat je veel lijm moet te isoleren van de circuits.