Taula de continguts:
- Pas 1: parts necessàries
- Pas 2: creeu el controlador Arduino
- Pas 3: Creeu el lector RFID
- Pas 4: programa
- Pas 5: amplieu
Vídeo: Pany de porta RFID Arduino: 5 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:18
*** Actualitzat el 8/9/2010 *** Volia fer una manera fàcil i segura d'entrar al meu garatge. La RFID era la millor manera de desbloquejar la porta, fins i tot amb les mans plenes puc desbloquejar la porta i obrir-la. Vaig construir un circuit senzill amb un xip arduino bàsic ATMega 168 i un lector RFID ID-20 per controlar un pany electrònic. El circuit consta de 3 parts separades, un lector per llegir etiquetes RFID, un controlador per acceptar dades del lector i controlar la sortida del LED RGB i del pany de la porta elèctrica. El pany de la porta s’instal·la primer en una porta i es prova amb una bateria de 9 v per garantir la correcta instal·lació. En la majoria dels casos, voleu un circuit normalment obert al pany de la porta o Fail Secure. Això significa que la porta es manté bloquejada quan no hi passa corrent. Quan es fa passar 12vDC a través de l’ electroimant del pany de la porta, una placa del pany cedeix i permet obrir la porta lliurement. El lector es col·loca a l'exterior de la porta i està separat del controlador de l'interior de manera que ningú pugui eludir la seguretat obrint el lector i intentant curtcircuitar el lector. El controlador rep dades de sèrie del lector i controla el led RGB i el bloqueig de la porta. En aquest cas, he posat tots dos en taules de pa separades per provar-les. Aquí teniu una descripció general del sistema en acció Seguiu llegint per veure com construir-ne un. ** Actualització ** Tots els dissenys de codi, esquemes i PCB s'han provat i refinat. Tots es publiquen aquí a partir del 8/9/2010 Vídeo actualitzat del sistema final instal·lat i funcionant.
Pas 1: parts necessàries
Aquí hi ha una llista de parts i enllaços a SparkFun.com on els he comprat. Aquest és el conjunt bàsic de peces que necessiteu per construir i arduino i un circuit per llegir etiquetes RFID a l'arduino. Suposo que ja teniu una placa de connexió, una font d'alimentació i cables de connexió.
Coses d'Arduino
ATmega168 amb Arduino Bootloader 4,95 $
Cristall de 16 MHz 1,50 USD
Condensador ceràmic 22pF 0,25 $ (x2)
Resistència 10k Ohm 1 / 6è vati PTH 0,25 $
Mini botó polsador 0,35 USD
LED de sortida triple RGB: difós 1,95 USD
Coses RFID
Qualsevol d’aquestes, 20 té un abast millor, 12 és més petit RFID Reader ID-12 29,95 $ RFID Reader ID-20 34,95 $
Lector RFID Breakout 0,95 $
Capçaleres Break Away: rectes 2,50 $
Etiqueta RFID: 125 kHz 1,95 USD
Altres
Transistor TIP31A (barra de ràdio / botiga d'electrònica local 1,50 USD)
El pany de la porta és d’ebay. Fallada de la porta Control d'accés segur Electric Strike v5 NO 17,50 $ (kawamall, badia)
Pas 2: creeu el controlador Arduino
El primer pas per construir un pany de porta RFID amb un Arduino bàsic és treure un arduino bàsic de treball. La majoria dels xips ATMega 168 pre-flashed d’Arduino vénen amb el programa de parpelleig predeterminat preinstal·lat. Connecteu un LED a la sortida digital 13 i verifiqueu que tot funcioni.
La part de maquinari d’aquest lector RFID seria massa senzilla si utilitzéssim un arduino normal amb programador USB incorporat. Com que tinc la intenció de posar-ho a la paret i no tornar-lo a tocar, no vull fer servir una gran placa arduino de 30 dòlars quan pugui comprar un ATMega 168 de 5 dòlars i fer un PCB personalitzat molt més petit.
Com que vaig escollir fer un circuit Arduino bàsic jo mateix, necessito un programador extern USB-> Serial FDIT. He inclòs els esquemes Eagle del controlador amb una font d'alimentació construïda a partir d'un regulador de voltatge 7805. En les proves vaig utilitzar una font d'alimentació per a taulers de pa.
Per posar en funcionament un arduino, tot el que realment necessiteu és l'ATMega168 amb el programari arduino llampat, condensadors de 2x 22pF, cristall de 16 MHz, resistència de 10k ohm, polsador i un tauler de suport. La connexió per a això és ben coneguda, però he inclòs tot l'esquema del circuit.
L'arduino activarà 4 sortides, una cadascuna per a LEDs vermells / verds / blaus, i una altra per activar el TIP31A per enviar 12vDC al pany de la porta. L’arduino rep dades de sèrie a la seva línia Rx des del lector RFID ID-20.
Pas 3: Creeu el lector RFID
Ara que teniu el pa arduino embarcat i treballant, podeu muntar la part del lector RFID del circuit que contindrà el LED ID-10 o ID-20 i RGB per indicar l’estat del circuit. Recordeu que el lector estarà fora i estarà separat del controlador interior perquè algú no pugui entrar fàcilment.
Per construir-ho, enviarem 5v / Ground des de la placa principal de pa a una placa secundària per a la qual estem construint el Reader. Envieu també més de 3 cables de 3 dels pins de sortida arduino per controlar el LED RGB, un per a cada color. Un cable més, Brown a les imatges, serà una connexió sèrie per a l'ID-20 per parlar amb l'entrada serial Rx de l'arduino. Es tracta d’un circuit molt senzill de connectar. Els LED obtenen resistències i alguns punts de l'ID-20 estan lligats a terra / 5v per establir l'estat correcte.
Per facilitar el panellat, l’ID-10 / ID-20 Sparkfun ven un tauler Breakout que us permet connectar capçaleres de pin més llargues que estan espaiades per adaptar-se a una taula de pa. Aquesta part i les capçaleres indicades a la llista de peces.
L'esquema ha de ser estret i fàcil de seguir.
Pas 4: programa
És hora de programar el vostre arduino. Això pot ser una mica complicat amb un arduino bàsic, és possible que hàgiu de prémer el botó de reinicialització diverses vegades abans i durant la primera part de la càrrega. Una cosa molt important que cal recordar, obtindreu un error de pujada si no desconnecteu temporalment la línia sèrie ID-20 a la línia Rx de l'arduino. L’ATMega168 només té 1 entrada Rx i l’utilitza per pujar codi per parlar amb el programador. Desconnecteu l'ID-20 mentre programeu i torneu-lo a endollar quan hàgiu acabat. He utilitzat un programador FTDI que us permet programar l’arduino mitjançant USB amb només 4 cables. L'esquema del controlador mostra una connexió de capçalera de pin que us permet connectar-ne una directament. Sparkfun també ven aquesta part, però és possible que molts ja la tinguin.
Podeu penjar fàcilment el meu codi al vostre arduino i no mirar mai enrere, però, què hi ha de divertit? Deixeu-me explicar la idea bàsica de com funciona.
Primer de tot, no volia cap botó / commutador / etc extern i no volia reprogramar l’arduino cada vegada que volia afegir una targeta nova. Per tant, volia utilitzar només RFID per controlar el funcionament del circuit, així com el control del pany de la porta.
El programa engega el LED blau per indicar que està a punt per llegir una nova targeta. Quan es llegeix la targeta, decideix si és una targeta vàlida o no comparant el que ha llegit amb una llista de targetes vàlides. Si l'usuari és vàlid, l'arduino apaga el LED blau i l'encén durant 5 segons. També activa una altra sortida alta durant 5 segons. Aquesta sortida està connectada al transistor TIP31A i permet al petit arduino controlar un pany de porta de 12v 300mA molt més gran sense que es faci malbé. Al cap de 5 segons, el pany es torna a bloquejar i el LED torna a ser blau per esperar que es llegeixi una altra targeta. Si la targeta no és vàlida, el LED canvia a VERMELL durant uns segons i torna a Blau per esperar una altra targeta.
És important que el pany de la porta segueixi funcionant fins i tot si l’arduino perd energia durant la nit o es reinicia. Per tant, tots els identificadors de targeta vàlids s’emmagatzemen a la memòria EEPROM. L'ATMega168 té 512 bytes de memòria EEPROM. Cada targeta RFID té un número de sèrie de 5 bytes hexadecimals i una suma de comprovació de 1 byte hexadecimal que podem utilitzar per verificar que no hi hagi hagut cap error en la transmissió entre l’ID-20 i l’arduino.
Les targetes vàlides s’emmagatzemen a l’EEPROM mitjançant el primer byte com a comptador. Per exemple, si hi ha 3 targetes vàlides emmagatzemades, el primer Byte a l'EEPROM seria 3. EEPROM.read (0); = 3. Sabent això i el fet que cada identificador tingui una longitud de 5 bytes, sabem que l’1-5 és la carta primera, el 6-10 és la targeta 2 i l’11-15 és la targeta 3. Podem fer un bucle que mira a través de l’EEPROM 5 bytes alhora i intenta trobar la targeta que el lector ha llegit.
Però, com podem afegir noves targetes a l'EEPROM després d'instal·lar el circuit? He llegit una de les targetes RFID que tinc i l'he codificat per ser la targeta RFID principal. Així, fins i tot si s’esborra tota l’EEPROM, la targeta mestra continuarà funcionant. Sempre que es llegeix una targeta, comprova primer si es tracta de la targeta mestra, si no, continua comprovant si és una targeta vàlida o no. Si la targeta és la targeta mestra, tenim l'arduino en un "mode de programació" on parpelleja RGB i espera que es llegeixi una altra etiqueta vàlida. La següent etiqueta que es llegeix s'afegeix al següent lloc lliure de l'EEPROM i el comptador s'incrementa 1 si la targeta no existeix a la memòria EEPROM. El lector torna al mode normal i espera que es llegeixi una nova targeta.
Actualment no he programat cap manera de suprimir una targeta, ja que és probable que els motius per esborrar-la es perdessin o es robessin. Com que el més probable és que s'utilitzi amb 1-10 persones, el més fàcil de fer seria programar una targeta Master Erase que esborri totes les cartes de l'EEPROM per tornar-les a afegir totes, que només triguen uns segons. He afegit codi per esborrar l'EEPROM, però encara no he implementat aquesta funció..
El codi s'adjunta en un fitxer de text juntament amb una còpia de la llista de parts.
Pas 5: amplieu
Això és només algunes de les coses interessants que podeu fer amb la RFID. Podeu ampliar-ho molt més amb una sortida LCD, registrant qui entra i quan, connexió de xarxa / twitter, etc. Tinc previst fer una versió PCB acabada d’aquest circuit. Mai no he fet cap PCB, de manera que segueixo treballant en el disseny i la disposició de les peces. Un cop les tinc completes, les publicaré també. Animo tothom a que agafi el codi que he escrit i que el modifiqui per fer coses encara més interessants.
Finalista del Concurs Arduino
Recomanat:
Sensor de pany i porta de cobert amb bateria, Solar, ESP8266, ESP-Now, MQTT: 4 passos (amb imatges)
Sensor de pany i porta de cobert alimentat per bateria, Solar, ESP8266, ESP-Now, MQTT: en aquest manual d’instruccions us mostro com he fabricat un sensor alimentat per bateria per controlar l’estat de la porta i el bloqueig de la meva nau remota. Tinc alimentació de corrent principal, per tant, la tinc alimentada per bateria. La bateria es carrega mitjançant un petit panell solar. El mòdul és d
Wifi a RF: pany de porta: 3 passos (amb imatges)
Wifi a RF: bloqueig de la porta: visió general: aquest instructiu us permetrà bloquejar / desbloquejar la porta principal mitjançant el programari domòtic (com ara el programari domòtic gratuït OpenHAB que jo faig servir personalment) La imatge superior mostra una captura de pantalla d’OpenHAB
Pany de porta RFID amb Arduino: 4 passos
Bloqueig de porta RFID amb Arduino: bàsicament, aquest projecte consisteix en fer casa, lloc d’oficina i fins i tot armaris personals. Aquest projecte us fa entendre l’arduino amb RFID i com estan connectats. Tan
Pany de porta controlat per veu senzill: 5 passos (amb imatges)
Pany de porta controlada per veu simple: així que vaig decidir que volia construir una porta de prestatgeria per a la meva oficina a casa. Ara hi ha molts recorreguts que expliquen com construir aquest tipus de coses. El meu problema va venir sobre com mantenir els meus fills fora de la meva oficina. Tinc fills petits i ells seran feliços
Pany de porta RFID sense fils mitjançant Nodemcu: 9 passos (amb imatges)
Bloqueig de porta RFID sense fils mitjançant Nodemcu: --- Funció principal --- Aquest projecte es va construir com a part d'una classe de comunicacions de xarxa a la Universidade do Algarve en col·laboració amb el meu company Lu í s Santos. El seu objectiu principal és controlar l'accés d'un pany elèctric a través de connexions sense fils