Informe Control de Una Puerta
-
Upload
ismael-bonilla -
Category
Documents
-
view
215 -
download
0
Transcript of Informe Control de Una Puerta
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 1/19
mael Bonilla - Katherine AroCUELA POLITÉCNICA NACIONALControl de
acceso a unaofcina
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 2/19
INTRODUCCIÓN
El control de acceso a una ofcina ser e!em"lifcado con el control dein#reso $ salida% as& como reconocimiento de los usuarios al momento en'ue sean re#istrados "or un sistema (iom)trico el mismo 'ue ser simuladoa tra*)s de un teclado matricial de(ido a la +cil utili,acin% "ara *ol*er al"ro$ecto ms real se ha incluido la toma de datos de hora $a sea de in#resoo salida
Para la reali,acin del "resente "ro$ecto se necesita el uso de comunicacinserial entre el microcontrolador $ el com"utador% se tendr un entorno detra(a!o didctico mediante la construccin de un ./I en La(*ie0 usandolas herramientas de "ro#ramacin necesarias% esto nos ser*ir "arao(ser*ar en l&nea la acti*idad constante de los usuarios% "oder anali,arlos%
mani"ularlos $ controlarlos como una em"resa har&a con sus em"leados
Como modo de deteccin "ara la entrada $ salida se inclu$e la interaccindel sistema con sensores in+rarro!os% los cuales nos entre#an una se1al almomento en 'ue un o(!eto interrum"e la emisin $ rece"cin de la se1al% si"or al#una ra,n se detecta una in+raccin a las es"ecifcaciones de dise1ose acti*a una alarma sonora la cual est li#ada a la mani"ulacin de unadministrador 'uien ser el 2nico ca"a, de detener dicha alarma $ teneracceso a los datos del "roceso% mani"ularlos o (orrarlos
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 3/19
PLANTEAMIENTO DEL PROBLEMA
3eali,ar el dia#rama circuital com"leto $ el dia#rama de 4u!o del "ro#ramade control% de un sistema micro"rocesado 'ue +uncione como control deacceso en una ofcina5 El sistema de(e "ermitir o no el acceso usando unsistema (iom)trico% re#istrar el usuario% re#istrar hora de in#reso $ hora desalida% a(rir la cha"a de la "uerta% contar cuantas "ersonas entran o salen%una *e, 'ue la cha"a se a(re% si es ms de una sonar una alarma5 Paraa"a#ar la alarma se de(e usar cla*e de administrador $a sea en el sistemalocal o en el remoto5 El sistema remoto 6PC7 consta de un ./I% en el cual semuestra en l&nea el estado de la "uerta% n2mero de "ersonas 'uein#resaron% n2mero de "ersonas 'ue salieron% adems de los re#istros de
cada usuario5 8esde el ./I con cla*e de administrador se "odradicionalmente crear usuarios 6m95 :;7 a"a#ar la alarma% (orrar re#istros%se de(e "re*er 'ue antes de (orrar los re#istros estos de(en ser #uardadosen un archi*o "ara control "osterior
MATERIALES
/IC3OCONT3OLA8O3 AT/E<A :=>P
Tiene ?@ re#istros de (its5 La concatenacinde los ?@ re#istros% los re#istros deentradasalida $ la memoria de datoscon+orman un es"acio de direccionesunifcado% al cual se accede a tra*)s deo"eraciones de car#aalmacenamiento5
Se lo utili,a de(ido a la am"lia dis"oni(ilidadde interru"ciones% "ines "ara comunicacin
serial% +acilidad de utili,acin% dis"osicin deresistencias internas me!or conocidos como PULL UP% reset interno e inclusola memoria no *oltil 'ue "osee
OTOT3ANSISTO3ES
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 4/19
Un +ototransistor es seme!ante aun transistor normal% slo 'ue "uedetra(a!ar de @ maneras di+erentesDcomo un transistor normal conla corriente de (ase o como
+ototransistor% cuando la lu, 'ueincide en este elemento hace las*eces de corriente de (ase5
Como el +otodiodo% tiene un tiem"o de res"uesta mu$ corto% solo 'ue suentre#a de corriente el)ctrica es mucho ma$or5
3ELÉ
unciona como un interru"tor controlado "or uncircuito el)ctrico en el 'ue% "or medio de
una (o(ina $ un electroimn% se acciona un !ue#o deuno o *arios contactos 'ue "ermiten a(rir o cerrarotros circuitos el)ctricos inde"endientes% en estecaso ser*ir "ara aco"larlo a un circuito deaccionamiento "ara la solenoide $ alarma sonora5
U/BA8O3
Es un transductor electroac2stico 'ue "roduce unsonido o ,um(ido continuo o intermitente de un
mismo tono5 Sir*e como mecanismo dese1ali,acin "ara la ad*ertencia en caso de 'uems de una "ersona in#rese
SOLENOI8E
Crea un cam"o ma#n)tico sumamente uni+orme eintenso en su interior% $ mu$ d)(il en el e9terior5 La
(o(ina con un n2cleo a"ro"iado% se con*ierte enun electroimn5 Se la utili,a en "ara simular la cha"ade la "uerta a controlar
ANÁLISIS DE ENTRADAS Y SALIDAS
Elementos In Outteclado > >LCD Falarma :Puerta soleno!de" :Puerta #nal decarrera"
:
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 5/19
relo$ :sensores @R% :T% :TOTAL G :>
Para el teclado se o"t "or usar el (arrido a "esar de 'ue el cdi#o sea#randa tiene (enefcios econmicos en el circuito% el LC8 ser mane!ado atra*)s de un (us de cuatro datos "ara disminuir las salidas 'ue senecesitan% la alarma $ sensores sern adecuados "ara su correcto+uncionamiento% el solenoide ser +a(ricado "or los estudiantes "ara"rescindir del #asto si#nifcati*o 'ue este o(!eto tiene en el mercado% elfnal de carrera ser simulado mediante dos "lacas las cuales transmitencorriente el)ctrica causando el cierre de un circuito% es decir su o"eracinser seme!ante a la de un s0itch5
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 6/19
PC6/TOSC1/PCINT22 25
PC5/TDI/PCINT21 24
PC4/TDO/PCINT20 23
PC3/TMS/PCINT19 22
PC2/TCK/PCINT18 21
PC1/SDA/PCINT17 20
PC0/SCL/PCINT16 19
AVCC27
AREF29
PC7/TOSC2/PCINT23 26
PA6/ADC6/PCINT6 31
PA5/ADC5/PCINT5 32
PA4/ADC4/PCINT4 33
PA3/ADC3/PCINT3 34
PA2/ADC2/PCINT2 35
PA1/ADC1/PCINT1 36
PA0/ADC0/PCINT0 37
PA7/ADC7/PCINT7 30
PB6/MISO/PCINT142 PB5/MOSI/PCINT13
1 PB4/SS/OC0B/PCINT12
44 PB3/AIN1/OC0A/PCINT11
43 PB2/AIN0/INT2/PCINT10
42 PB1/T1/CLKO/PCINT9
41 PB0/XCK0/T0/PCINT8
40
PB7/SCK/PCINT153
PD6/ICP/OC2B/PCINT3015
PD5/OC1A/PCINT2914
PD4/OC1B/XCK1/PCINT2813
PD3/INT1/TXD1/PCINT2712
PD2/INT0/RXD1/PCINT2611
PD1/TXD0/PCINT2510
PD0/RXD0/PCINT249
PD7/OC2A/PCINT3116
RESET4
XTAL1 8
XTAL2 7
U1
ATMEGA164P
VBAT 3
X11
X22
SCL 6
SDA 5
SOUT 7
U2
DS1307
CRSTAL
FRE!"32#768K$% SEG
SEG
R14#7&
R24#7&
SDA
SCL
SDA
SCL
123
6 5 4
89
=
7
C
ON0
A
B
C
D
A
B
C
D
1 2 4 3
F1
F2
F3
F4
C 1
C 2
C 3
C 4
F1
F3
F2
F4C1
C2C3
C4
D 7
1 4
D 6
1 3
D 5
1 2
D 4
1 1
D 3
1 0
D 2
9
D 1
8
D 0
7
E
6
R '
5
R S
4
V S S
1
V D D
2
V E E
3
LM016L
D1LED(BIBD2LED(BIB
)*+,-. ALARMA
)*+,-. ALARMA
ERROR
TXD3
RXD2
CTS8
RTS7
DSR6
DTR4
DCD1
RI9
P1
COMPIM
R
T
5V
1 7 0
RV110&
11
1
Sint
Sext
DIA&RAMA DE 'LU(O Y PRO&RAMACIÓN
• SISTEMA MICROPROCESADO• HMI
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 7/19
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 8/19
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 9/19
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 10/19
CÁLCULOS
Para la salida en la parte de activación de la puerta, Cálculo de la
Resistencia Rbase en el transistor
Se ocu"ara "ara la acti*acin de la alarma $ de la "uerta en la (ase deltransistor la resistencia 3(H:J% "ara tener una corriente en mA en la(ase del transistor5
Las resistencias de "ull u" del relo! 8s:?;F% son de >5F J% $a 'ue lasrecomienda el +a(ricante% $ 'ue no ocu"amos nin#2n otro dis"ositi*o en lacomunicacin I@C5
Para el in#reso de la se1al del estado de la "uerta% un interru"tor con unaresistencia de >5F J%"ara limitar el in#reso de corriente al
microcontrolador5Los transistores 'ue se esco#ieron son NPN @N?G;>% $a 'ue "ara estaa"licacin cum"l&an sus caracter&sticas internas% de(ido a 'ue tenemos unacorriente (a!a $ un *olta!e (a!o de i#ual manera5
Para el clculo de las *ueltas del alam(re de co(re 'ue +orma el solenoide%"ara la simulacin de la "uerta el)ctrica% se consider un n2mero ma$or a
?; *ueltas considerando 'ue % el *olta!e suministrado +ue de :@M%con una corriente de in#reso de : A5
SO'T)ARE
include a*rio5hinclude a*rinterru"t5hinclude a*ree"rom5hdefne QCPU ;;;;;;ULinclude utildela$5hinclude Rlcd5hRinclude R8S:?;F5hRdefne BAU8 G=;;include utilset(aud5hdefne cla*em :@?>defne nQusuarios :@t$"ede+ struct
unsi#ned int usuariounsi#ned char horQentrada?hDmDs
unsi#ned char horaQsalida?hDmDs
"ersonaQtEE/E/ "ersonaQt usuariosQEE/E/nQusuarios*oid initQEEP3O/6*oid7unsi#ned char (uscarQusuario6unsi#ned int user7unsi#ned int in"utQnum(er6char Vmensa!e% char *er7*oid usartQinit6*oid7*oid usartQ"utc6char c7char usartQ#etc6*oid7
unsi#ned char com"ara:H;unsi#ned char com"ara@H;unsi#ned char contH;
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 11/19
unsi#ned char NumQentranH;unsi#ned char NumQsalenH;unsi#ned char alarmaH;unsi#ned char controlunsi#ned char "uertaunsi#ned int usQnum(erchar se#%min%hor%diasem%dia%mes%aniint main6*oid7
lcdQinit67usartQinit67
ds:?;FQsetu"678838H6:P8W7X6:P8=7PO3T8H6;P8W7X6;P8=7 8838XH6::7
EIC3A H ;(;;:;:;:; EI/SK H ;(;;;;;:::
EI3 H ;(;;;;;::: sei67 unsi#ned int us%clunsi#ned int res"%userQcla*e%res"@ 0hile6:7 usHin"utQnum(er6RIn#rese usuario R% W7 i+ 6alarmaHH:7 clHin"utQnum(er6RIn#rese Cla*eR%Y9Y7
i+ 6clHHcla*em7lcdQ#otorc6@%:7 lcdQ"uts6RAdministradorR7alarmaH;PO3T8H6;P8=7 elselcdQ#otorc6@%:7 lcdQ"uts6RismaR7usQnum(erH(uscarQusuario6us7i+ 6usQnum(erZH;9[7lcdQ#otorc6@%:7 lcdQ"uts6RAcceso Correcto R7
PO3T8H6:W7 Qdela$Qms6@;;;7 elselcdQ#otorc6@%:7 lcdQ"uts6RalloidentifcacionR7
Qdela$Qms6:@;;7unsi#ned int in"utQnum(er6char Vmensa!e% char *er7 unsi#ned char e$code%i%"os unsi#ned char "re*Qe$H;9;;
0hile6:7 iH;
"osHF lcdQ#otorc6@%:7 lcdQ"uts6R R7 lcdQ#otorc6@%:7 lcdQ"uts6mensa!e7
0hile6Ze$"adQread677lcdQ#otorc6@%:7 lcdQ"uts6R R7unsi#ned char resetH; unsi#ned char e$HRVVVVR unsi#ned int e$"adQtimeoutHW;;; 0hile 6Zreset7 Qdela$Qms6:7i+ 6e$"adQtimeout;7
e$"adQtimeout-- i+ 6e$"adQtimeoutHH;7 return ;9
e$codeHe$"adQread67
i+ 6e$codeHH"re*Qe$7 continue else i+ 6e$codeHH;7 "re*Qe$H; continue else
"re*Qe$He$code
i+ 6e$codeZH;7
e$"adQtimeoutHW;;;
i+ 6"osHH::7
0hile6:7 e$codeHe$"adQread67i+ 6e$codeHHYAY7 e$"adQreleased67
return 66:;;;Ve$;7\6:;;Ve$:7\6:;Ve$@7\e$?7 else i+ 6e$codeHHYBY7 (rea i+ 66e$codeHY;Y7 ]] 6e$code HYGY77 lcdQ#otorc6@%"os7 i+ 66*erH;7 ]] 6*erHG77 lcdQdata6e$code7
else lcdQdata6*er7
e$iHe$code-Y;Y
i\\ "os\\
else i+ 6e$codeHHYBY7 resetH:
e$"adQreleased67
IS36INT;Q*ect78is"la$Time8ate67
controlHPINCcontrolHcontrol];(;;;;;:;;i+ 6controlHH;(;;;;;:;;7"uertaH:contH;com"ara:H;com"ara@H;
PO3T8H6;W7alarmaH;
else
"uertaH;
IS36INT:Q*ect7
i+ 66com"ara:HH;7]]6com"ara@HH;77com"ara:H@com"ara@H:
else i+
66com"ara:HH:7]]6com"ara@HH@77
cont\\NumQentran\\
ds:?;FQ<etTime8ate6]se#%]min%]hor%]diasem%]dia%]mes%]ani7
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horQentrada;%hor7
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 12/19
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horQentrada:%min7
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horQentrada@%se#7
i+ 6cont:7
PO3T8H6:P8=7alarmaH:lcdQ#otorc6@%:7
lcdQ"uts6RAcceso no autori,adoR7
IS36INT@Q*ect7
i+ 66com"ara:HH;7]]6com"ara@HH;77
com"ara:H:
com"ara@H@else i+
66com"ara:HH@7]]6com"ara@HH:77
cont\\NumQsalen\\
ds:?;FQ<etTime8ate6]se#%]min%]hor%]diasem%]dia%]mes%]ani7
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horaQsalida;%hor7
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horaQsalida:%min7
ee"romQu"dateQ($te6]usuariosQEE/E/usQnum(er5horaQsalida@%se#7
i+ 6cont:7
PO3T8H6:P8=7alarmaH:
lcdQ#otorc6@%:7 lcdQ"uts6RAcceso no
autori,adoR7*oid initQEEP3O/6*oid7ee"romQu"dateQ0ord6]usuariosQEE/E/:5usuario%:;;@7
ee"romQu"dateQ0ord6]usuariosQEE/E/@5usuario%:;;?7
ee"romQu"dateQ0ord6]usuariosQEE/E/?5usuario%:;;>7
ee"romQu"dateQ0ord6]usuariosQEE/E/>5usuario%:;;W7
ee"romQu"dateQ0ord6]usuariosQEE/E/W5usuario%:;;=7
ee"romQu"dateQ0ord6]usuariosQEE/E/=5usuario%:;;F7
ee"romQu"dateQ0ord6]usuariosQEE/E/F5usu
ario%:;;7
ee"romQu"dateQ0ord6]usuariosQEE/E/5usuario%:;;G7
ee"romQu"dateQ0ord6]usuariosQEE/E/G5usuario%:;:;7
ee"romQu"dateQ0ord6]usuariosQEE/E/:;5usuario%:;::7
unsi#ned char (uscarQusuario6unsi#ned int user7
+or 6unsi#ned iH; inQusuarios i\\7
i+ 6userHHee"romQreadQ0ord6]usuariosQEE/E/i5usuario77
return i
si lle#a a'ui no encontro usuarioreturn ;9[
*oid usartQinit6*oid7
UB33;. H UB33.QMALUEUB33;L H UB33LQMALUE
6:3^EN;7X6: T^EN;7X6:3^CIE;7char usartQ#etc6*oid7reci(ir dato
char dato0hile66UCS3;A]6:3^C;77HH;7datoHU83;return dato
*oid usartQ"utc6char c7en*iar dato
0hile66UCS3;A]6:U83E;77HH;7U83;Hc
IS36USA3T;Q3^Q*ect7
char dato@char *alor@dato:HU83;"rimera orden*alor@HU83;numeros a cam(iarint !s0itch 6dato:7
case YAYDunsi#ned int en*oien*ioHee"romQreadQ($te6]usuariosQEE/E/us Qnum(er5usuario7
usartQ"utc6en*io7
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 13/19
en*ioHee"romQreadQ($te6]usuariosQEE/E/us Qnum(er5horaQsalida;7
usartQ"utc6en*io7usartQ"utc6"uerta7usartQ"utc6NumQentran7usartQ"utc6NumQsalen7
usartQ"utc6cla*em7usartQ"utc6alarma7
en*ioHee"romQreadQ($te6]usuariosQEE/E/:5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/@5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/?5usuario7usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/>5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/W5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/=5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/F5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/G5usuario7
usartQ"utc6en*io7
en*ioHee"romQreadQ($te6]usuariosQEE/E/:;5usuario7
usartQ"utc6en*io7(reacase YEYDENMA3 EN CE3Ochar *alorH;
usartQ"utc6*alor7
usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7usartQ"utc6*alor7
(rea
Las librerías tendríamos
8S:?;FDinclude stdio5hinclude Rlcd5hRinclude Ri@c5hR
include R8S:?;F5hR
*oid ds:?;FQsetu"6*oid7 char se#s% mins% hors% diasem% dia% mes% anio
Escri(ir *alores iniciales de +echa $ hora en el 8S:?;F
i@cQstart67 STA3T i@cQ0rite68S:?;FQI87 Sla*e address \ _rite i@cQ0rite6;9;F7 8ireccin de 3e#istro de Control i@cQ0rite6;9:;7 Escri(ir en 3e#istro de Control ;;;:;;;; i@cQsto"67 STOP
8is"la$Time8ate67
*oid ds:?;FQSetTime8ate6char se#% char min% char hor% char dia% char dds% char mes% char anio7
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 14/19
i@cQstart67 STA3T i@cQ0rite68S:?;FQI87 Sla*e address \ _rite i@cQ0rite6;9;;7 8ireccin de re#istro Seconds i@cQ0rite6se#7 Escri(ir en re#istro i@cQ0rite6min7 R R R i@cQ0rite6hor7 R R R i@cQ0rite6dia7 R R R i@cQ0rite6dds7 R R R
i@cQ0rite6mes7 R R R i@cQ0rite6anio7 R R R i@cQsto"67 STOP
*oid ds:?;FQ<etTime8ate6char V se#% char V min% char V hor% char V dds% char V dia% char V mes% char V ani7 i@cQstart67 STA3T i@cQ0rite68S:?;FQI87 Sla*e address \ _rite i@cQ0rite6;9;;7 8ireccin de re#istro Seconds i@cQrestart67 3e"eated STA3T i@cQ0rite68S:?;FQI8X;9;:7 Sla*e address \ 3ead Vse# H i@cQread6;7 Leer re#istro $ en*iar ACK Vmin H i@cQread6;7 R R R Vhor H i@cQread6;7 R R R Vdds H i@cQread6;7 R R R Vdia H i@cQread6;7 R R R Vmes H i@cQread6;7 R R R Vani H i@cQread6:7 Leer 2ltimo re#istro $ en*iar NACK i@cQsto"67 STOP*oid 8is"la$Time8ate6*oid7 char se#% min% hor% diasem% dia% mes% ani char (u[ :=
Leer re#istros del 8S:?;F ds:?;FQ<etTime8ate6]se#% ]min% ]hor% ]diasem% ]dia% ]mes% ]ani7
s"rint+ 6(u[ %R `;@9D`;@9D`;@9 R%hor%min%se#7 lcdQ#otorc6:%:7 lcdQ"uts6(u[ 7
Con*ert 8ecimal to Binar$ Coded 8ecimal 6BC87char dec@(cd6char num7 return 66num:; V :=7 \ 6num ` :;77
Con*ert Binar$ Coded 8ecimal 6BC87 to 8ecimalchar (cd@dec6char num7 return 66num:= V :;7 \ 6num ` :=77I@CDinclude a*rio5hinclude Ri@c5hR
*oid i@cQinit6*oid7 Esta(lecer *alor de "rescaler de T_I a ;
T_S3 ]H 66: T_PS:7X6: T_PS;77
Esta(lecer recuencia de SCL T_B3 H 66QCPUI@CQBAU87-:=7@
.a(ilitar la inter+ace T_I T_C3 H 6: T_EN7
char i@cQstart6*oid7
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 15/19
Setear (it T_STA $ lim"iar 4a# T_INT "ara iniciar Condicin STA3T
T_C3 H 6: T_STA7X6: T_INT7X6: T_EN7
Es"erar a 'ue la Condicin STA3T se termine de en*iar0hile6 6 T_C3 ] 6: T_INT77HH; 7
Lim"iar (it T_STA T_C3 H 6: T_EN7
Com"ro(ar si la trans+erencia de STA3T +ue satis+actoriai+ 6 66 T_S3];9C7 HH ;9;7 XX 66 T_S3];9C7 HH ;9:;7 7
return : return ;
*oid i@cQsto"6*oid7 Setear (it T_STO $ lim"iar 4a# T_INT "ara iniciar Condicin STOP T_C3 H 6: T_STO7X6: T_INT7X6: T_EN7
Es"erar a 'ue la Condicin STOP se termine de en*iar
0hile6 T_C3 ] 6: T_STO7 7char i@cQ0rite6char data7 Car#ar dato a transmitir T_83 H data
Lim"iar 4a# T_INT "ara iniciar la trans+erencia T_C3 H 6: T_INT7X6: T_EN7
Es"erar a 'ue fnalice la trans+erencia0hile6 6 T_C3 ] 6: T_INT77HH; 7
Leer el resultado de la trans+erencia $ retornar ; si el escla*o
res"ondi con un (it ACK5
i+ 6 66 T_S3];9C7HH;9:7XX66 T_S3];9C7HH;9>;7XX66 T_S3];9C7HH;9@7 7
return ;
Se lle#a a este "unto si el escla*o res"ondi con un NACK o si
hu(o un error en la trans+erenciareturn :
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV Lee un ($te de dato $ en*&a el (it ACKNACK5 ac H ; es ACK $ ac H : es NACK5VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVchar i@cQread6char ac7
Es"erar a 'ue termine de lle#ar el dato "edido0hile6 6 T_C3 ] 6: T_INT77HH; 7
En*iar el (it ACK o NACK al escla*o
i+ 6ac HH :7 T_C3 H 6: T_INT7X6: T_EN7 Esto es NACK else T_C3 H 6: T_EA7X6: T_INT7X6: T_EN7 Esto es ACK
Es"erar a 'ue se termine de en*iar el (it ACKNACK0hile6 6 T_C3 ] 6: T_INT77HH; 7
3etornar el dato 'ue lle#o anteriormentereturn T_83
Ke$"adDinclude a*rio5h
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 16/19
include Re$"ad5hRdefne QCPU ;;;;;;ULinclude utildela$5h
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV Iniciali,a el "uerto del tecladoVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV*oid e$"adQinit6*oid7
"dQ883 H ;9; Ni((le alto entrada% ni((le (a!o salida "dQPO3T H ;9; .a(ilitar "ull-u"s del ni((le alto
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV Escanea el teclado $ retorna el *alor ASCII de la tecla "resionada "or al menos @Wms5 En otro caso retorna ;9;;5VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVchar e$"adQread6*oid7 char c:% c@ c: H e$"adQscan67 Escanear teclado i+ 6c:7 Si hu(o al#una tecla "ulsada Qdela$Qms6@W7 8ela$ antirre(ote c@ H e$"adQscan67 Escanear otra *e, i+ 6 c:HHc@ 7 Si Am(as teclas le&das son i#uales return c@ entonces ace"tarla return ;9;;
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV Es"era hasta 'ue el teclado 'uede li(re5VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV*oid e$"adQreleased6*oid7 0hile6e$"adQscan677 /ientras se detecte al#una tecla "ulsada
se#uir escaneando5
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV Escanea el teclado $ retorna el *alor ASCII de la "rimera tecla 'ue encuentre "ulsada5 8e otro modo retorna ;9;;5VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVchar e$"adQscan6*oid7 unsi#ned char Col% 3o0 char 3o0/as% Col/as Col; Col: Col@ Col?
char e$s H Y:Y% Y@Y% Y?Y% YAY% 3o0 ; Y>Y% YWY% Y=Y% YBY% 3o0 : YFY% YY% YGY% YCY% 3o0 @ Y5Y% Y;Y% YY% Y8Y 3o0 ?
"dQ883 H ;9; Ni((le alto entrada% ni((le (a!o salida
"dQPO3T H ;9; .a(ilitar "ull-u"s del ni((le alto 3o0/as H ;9E Iniciali,ar 3o0/as a :::::::;
+or63o0H; 3o0> 3o0\\7
"dQPO3T H 3o0/as
Qdela$Qus6:;7 Para 'ue se esta(ilice la se1al Col/as H ;9:; ;(;;;:;;;;
+or6ColH; Col> Col\\7 i+ 66"dQPIN]Col/as7HH;7 Si hu(o tecla "ulsada "dQ883 H ;9;; Todo "uerto entrada otra *e, e$"adQinit67 return e$s>V3o0\Col 3etornar tecla "ulsada
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 17/19
Col/as H : 8es"la,ar Col/as "ara escanear si#uiente columna
3o0/as H : 8es"la,ar 3o0/as "ara escanear 3o0/as XH ;9;: si#uiente fla
Se lle#a a'u& si no se hall nin#una tecla "ulsada
"dQ883 H ;9;; Todo "uerto entrada otra *e, e$"adQinit67 return ;9;; 3etornar Cdi#o de no tecla "ulsada
SimulacinD
PC6/TOSC1/PCINT22 25
PC5/TDI/PCINT21 24
PC4/TDO/PCINT20 23
PC3/TMS/PCINT19 22
PC2/TCK/PCINT18 21
PC1/SDA/PCINT17 20
PC0/SCL/PCINT16 19
AVCC27
AREF29
PC7/TOSC2/PCINT23 26
PA6/ADC6/PCINT6 31
PA5/ADC5/PCINT5 32
PA4/ADC4/PCINT4 33
PA3/ADC3/PCINT3 34
PA2/ADC2/PCINT2 35
PA1/ADC1/PCINT1 36
PA0/ADC0/PCINT0 37
PA7/ADC7/PCINT7 30
PB6/MISO/PCINT142 PB5/MOSI/PCINT13
1 PB4/SS/OC0B/PCINT12
44 PB3/AIN1/OC0A/PCINT11
43 PB2/AIN0/INT2/PCINT10
42 PB1/T1/CLKO/PCINT9
41 PB0/XCK0/T0/PCINT840
PB7/SCK/PCINT153
PD6/ICP/OC2B/PCINT3015
PD5/OC1A/PCINT2914
PD4/OC1B/XCK1/PCINT2813
PD3/INT1/TXD1/PCINT2712
PD2/INT0/RXD1/PCINT2611
PD1/TXD0/PCINT2510
PD0/RXD0/PCINT249
PD7/OC2A/PCINT3116
RESET4
XTAL1 8
XTAL2 7
U1
ATMEGA164P
VBAT 3
X11
X22
SCL 6
SDA 5
SOUT 7
U2
DS1307
CRSTALFRE!"32#768K$% SEG
SEG
R14#7&
R24#7&
SDASCL
SDASCL
123
6 5 4
89
=
7
C
ON0
A
B
C
D
A
B
C
D
1 2 4 3
F1
F2
F3
F4
C 1
C 2
C 3
C 4
F1
F3F2
F4C1C2C3C4
D 7
1 4
D 6
1 3
D 5
1 2
D 4
1 1
D 3
1 0
D 2
9
D 1
8
D 0
7
E
6
R '
5
R S
4
V S S
1
V D D
2
V E E
3
LM016L
D1LED(BIB
D2LED(BIB
)*+,-. ALARMA
)*+,-. ALARMA
ERROR
TXD3
RXD2
CTS8
RTS7
DSR6
DTR4
DCD1
RI9
P1
COMPIM
R
T
5V
1 7 0
RV110&
01
1
Sint
Sext
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 18/19
CONCLUSIONES
• El uso del "ro#rama La(*ie0 +acilita el mane!o de ./I% este so+t0are"osee li(rer&as com"letas% (lo'ues sencillos de a"licar% +acilidades deherramientas tanto en l#ica (ooleana como en aritm)tica% "or lo cual eltra(a!o del usuario se *e reducido en tiem"o aumentando la efciencia decual'uier tarea
• Se ha o"tado "or "ro#ramar usando el len#ua!e c de(ido a la +acilidad'ue este tiene "ara la creacin de li(rer&as% mani"ulacin de las mismastanto "ara LC8% teclado% comunicacin serial% e*itando as& la com"le!idad
del "ro#rama a "esar 'ue #enera mucho cdi#o (asura 'ue #enera enciertas ocasiones "ro(lemas $a 'ue la memoria se usa en *ano
• Se o"t "or usar un re#istro de hora $ +echa 'ue se muestra en el ./Idesde la toma de datos de La(*ie0 de(ido a 'ue el relo! a tiem"o real%"rodu!o di*ersos incon*enientes en la transmisin de datos
• Se "uede #enerar di*ersos casos al momento de utili,ar los sensoresadecuados o aco"lamientos "ara alarmas% motores u otro elemento 'uere'uiera un *olta!e di+erente en su +uncionamiento% "or lo cual esnecesario tener mucho cuidado $ aislar de(idamente el sistemamicro"rocesado
• El ruido en el sistema "uede alterar el correcto +uncionamiento delcircuito "or lo cual es necesario im"lementar fltros% o incluso aislar lasdi+erentes +uentes% todo "ara 'ue el elemento ms sensi(le se *eaa+ectado% en nuestro caso el Atme#a:=>P
• El inte#rado 8s:?;F se utili,a "or su (a!o costo% "recisin en la entre#ade datos con un oscilador a"ro"iado% $ dise1o sencillo en a"licaciones'ue se necesite e9traer datos de tiem"o o sa(er in+ormacin de +echasen calendario5
• El acceso la memoria EEP3O/ en un microcontrolador +acilita el uso ain+ormacin 'ue se necesita 'ue no sea (orrada a la hora de tratardatos% "ero 'ue a su *e, se necesita modifcarla5
•
El uso del LC8 +acilita la *isuali,acin de datos 'ue se necesita tenercontrol% $a 'ue de(ido a su dise1o $ *ersatilidad se ela(ora una +uncin
7/23/2019 Informe Control de Una Puerta
http://slidepdf.com/reader/full/informe-control-de-una-puerta 19/19
en la cual todo el tiem"o me muestra datos de las *aria(les 'ueinter*ienen en nuestro "ro$ecto5
• El acceso desde un ./I a un microcontrolador me "ermite "oder tenerdesde una +orma ms ami#a(le el control de los "armetros 'ue seconf#uren dentro del mismo% $ se adicionan los (enefcios de modifcar
los datos $ almacenarlos en un documento E9cel o de te9to% "ara tenerres"aldo de in+ormacin de #ran *alor5
BIBILIO&RA'*A
_EBD
• htt"Dunicrom5comTutQ+ototransistor5as"• htt"sDes50ii"edia5or#0ii3el`C?`AG• htt"D0005mono#rafas5comtra(a!osF@los-solenoideslos-
solenoides5shtml• htt"D0005comunidadelectronicos5comarticulosi@c5htm