{"id":4649,"date":"2021-12-16T21:47:36","date_gmt":"2021-12-16T21:47:36","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=4649"},"modified":"2021-12-18T13:23:11","modified_gmt":"2021-12-18T13:23:11","slug":"caja-fuerte-sem-sistema-doble-de-seguridad","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/","title":{"rendered":"Caja Fuerte SEM &#8211; Sistema de doble Seguridad"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"766\" height=\"1024\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-766x1024.jpg\" alt=\"\" class=\"wp-image-4748\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-766x1024.jpg 766w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-224x300.jpg 224w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-768x1026.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-1149x1536.jpg 1149w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-1532x2048.jpg 1532w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg 1916w\" sizes=\"auto, (max-width: 766px) 100vw, 766px\" \/><\/a><figcaption>Caja Fuerte SEM con seguridad de clave num\u00e9rica y reconocimiento de huella dactilar<\/figcaption><\/figure>\n\n\n\n<p>Integrantes del grupo: <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Mart\u00edn Alami Mochi<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Sergio Alvarez Scharfhausen<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Eduard Vasile Stancu.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"has-inline-color has-vivid-cyan-blue-color\"><a>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Introducci\u00f3n<\/a><\/span><\/h2>\n\n\n\n<p>La idea principal del proyecto es dise\u00f1ar una caja de seguridad con doble sistema de seguridad: uno mediante la introducci\u00f3n de una clave num\u00e9rica de cuatro d\u00edgitos por teclado y otro mediante la lectura de huella digital. Si ambos son correctos, se activa primero el motor, que har\u00eda girar un doble fondo, y posteriormente se abrir\u00eda la cerradura de la caja.<\/p>\n\n\n\n<p>Despu\u00e9s de darle varias vueltas, nos gust\u00f3 bastante est\u00e1 idea de montar un sistema para una caja de seguridad, con doble sistema de seguridad pero al final sin el doble fondo, cosa que siempre podremos hacerla en un futuro. En este proyecto, los sensores se encargan de recoger informaci\u00f3n que activa la apertura de la caja cuando se cumplen ciertas condiciones.<\/p>\n\n\n\n<p>El proyecto, adem\u00e1s, permite el cambio de c\u00f3digo o de huella y muestra por pantalla el resultado de las operaciones y validaciones que realiza el sistema para autorizar la apertura.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-28.png\"><img loading=\"lazy\" decoding=\"async\" width=\"635\" height=\"714\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-28.png\" alt=\"\" class=\"wp-image-4655\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-28.png 635w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-28-267x300.png 267w\" sizes=\"auto, (max-width: 635px) 100vw, 635px\" \/><\/a><figcaption>Circuito fuera de la caja<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"has-inline-color has-vivid-cyan-blue-color\"><a>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Funcionamiento<\/a><\/span><\/h2>\n\n\n\n<p>A continuaci\u00f3n, vamos a describir las funcionalidades que hemos incorporado en nuestro sistema de seguridad.<\/p>\n\n\n\n<p>Al arrancar, el sistema nos pide elegir una opci\u00f3n entre las siguientes:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>A: Abrir la caja<\/li><li>B: Borrar usuario<\/li><li>C: Cambiar contrase\u00f1a o huella registrada<\/li><\/ul>\n\n\n\n<p>En cualquier otro caso, el sistema vuelve a pedir una opci\u00f3n v\u00e1lida entre las anteriores.<\/p>\n\n\n\n<p>Al inicio, como no hay ning\u00fan usuario registrado, elijas la opci\u00f3n que elijas, el sistema pedir\u00e1 crear un usuario.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>2.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Funcionalidad Crear usuario<\/a><\/h3>\n\n\n\n<p>Para crear un usuario, el sistema solicita introducir una clave por el teclado. Como cualquier sistema de validaci\u00f3n habitual, se pedir\u00e1 repetir la clave para confirmarla.<\/p>\n\n\n\n<p>Si coinciden las dos claves introducidas, el sistema pide registrar una huella a trav\u00e9s del lector.<\/p>\n\n\n\n<p>Como en el caso anterior, pide introducir una segunda vez la huella para validarla y, como en el caso de otros sistemas de lectura de huella (m\u00f3viles o tablets), tener varias \u201ccopias\u201d de la huella y as\u00ed hacer una mejor validaci\u00f3n de la huella cuando se vaya a usar en futuras utilizaciones de la caja.<\/p>\n\n\n\n<p>Con esto, ya estar\u00eda el usuario creado y registrado y, por lo tanto, se podr\u00edan realizar las otras operaciones y funciones de la caja.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>2.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Funcionalidad Cambiar clave o huella<\/a><\/h3>\n\n\n\n<p>Al seleccionar la opci\u00f3n de men\u00fa para cambiar la contrase\u00f1a o la huella de un usuario ya creado, lo primero que hace el sistema es preguntar cu\u00e1l de las dos cosas quieres modificar.<\/p>\n\n\n\n<p>En el caso de elegir \u201ccambiar contrase\u00f1a\u201d, te pedir\u00e1 la contrase\u00f1a antigua y luego, como se hizo al crear usuario, pedir\u00e1 introducir dos veces la nueva contrase\u00f1a para validarla.<\/p>\n\n\n\n<p>De la misma forma, al elegir \u201ccambiar huella\u201d, el sistema pide primer introducir la huella antigua y, a continuaci\u00f3n, registrar dos veces la nueva huella para su validaci\u00f3n.<\/p>\n\n\n\n<p>Durante este proceso, el sistema va mostrando por pantalla los mensajes con los pasos a seguir, la confirmaci\u00f3n de la finalizaci\u00f3n correcta del proceso o los mensajes de error que pudieran producirse.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>2.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Funci\u00f3n: Abrir caja<\/a><\/h3>\n\n\n\n<p>Esta funci\u00f3n te pide por pantalla introducir por teclado la contrase\u00f1a y, a continuaci\u00f3n, la huella que se han registrado al crear o modificar el usuario, permitiendo tres intentos para cada una de ellas.<\/p>\n\n\n\n<p>Si pasados tres intentos, no se ha introducido el dato correcto, el sistema vuelve al men\u00fa principal.<\/p>\n\n\n\n<p>Si las dos cosas son correctas, la cerradura y la caja se abren.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>2.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Funci\u00f3n Borrar usuario<\/a><\/h3>\n\n\n\n<p>Al seleccionar esta opci\u00f3n, el sistema pide confirmaci\u00f3n por pantalla de que se va a proceder a la eliminaci\u00f3n del usuario. En caso de respuesta afirmativa, primero se pedir\u00e1n la clave y la huella, y si estas son correctas, se procede a eliminar los registros de contrase\u00f1a y clave. En caso de respuesta negativa, el sistema vuelve al men\u00fa de inicio. Esta funci\u00f3n est\u00e1 pensada para ser utilizada en el caso de que la caja pueda ser utilizada temporalmente por diferentes usuarios, de forma similar a las cajas de seguridad que suele haber en las habitaciones de los hoteles, por ejemplo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"> <a>2.5&nbsp;&nbsp;&nbsp;&nbsp; V\u00eddeo explicativo del funcionamiento<\/a> <\/h2>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"video-container\"><iframe loading=\"lazy\" title=\"Caja Fuerte SEM - Doble Seguridad (Clave + Huella dactilar) - Arduino - Funcionamiento\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/4sXUhIz1R3s?feature=oembed&#038;wmode=opaque\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><a><span class=\"has-inline-color has-vivid-cyan-blue-color\">3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Materiales<\/span><\/a><\/h2>\n\n\n\n<p>Para llevar a cabo el proyecto, hemos utilizado los siguientes componentes y materiales:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td><strong>MATERIALES DE CLASE<\/strong><\/td><\/tr><tr><td>COMPONENTE<\/td><td>UNIDADES<\/td><td>PRECIO<\/td><td>&nbsp;<\/td><\/tr><tr><td>Resistencia 1K\u03a9<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Resistencia 10 K\u03a9<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Pantalla LCD<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Cableado de cobre<\/td><td>&#8211;<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td><strong>MATERIALES ADICIONALES<\/strong><\/td><\/tr><tr><td>COMPONENTE<\/td><td>UNIDADES<\/td><td>PRECIO<\/td><td>&nbsp;<\/td><\/tr><tr><td>Arduino Mega 2560<\/td><td>1<\/td><td>15,99\u20ac<\/td><td>&nbsp;<\/td><\/tr><tr><td>Sensor de Huella<\/td><td>1<\/td><td>19,99\u20ac<\/td><td>&nbsp;<\/td><\/tr><tr><td>Cerradura el\u00e9ctrica<\/td><td>1<\/td><td>10,69\u20ac<\/td><td>&nbsp;<\/td><\/tr><tr><td>Teclado<\/td><td>1<\/td><td>4,00\u20ac<\/td><td>&nbsp;<\/td><\/tr><tr><td>Rel\u00e9<\/td><td>1<\/td><td>5,50\u20ac<\/td><td>&nbsp;<\/td><\/tr><tr><td>Protoplaca<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Pilas 4,5 V<\/td><td>3<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Transistor NPN<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Tablas de Madera 40&#215;40<\/td><td>8<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td>Pomo de la puerta<\/td><td>1<\/td><td>&nbsp;<\/td><td>&nbsp;<\/td><\/tr><tr><td><strong>IMPORTE TOTAL<\/strong><\/td><td>57,37\u20ac<\/td><td>&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><a><span class=\"has-inline-color has-vivid-cyan-blue-color\">4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sistema<\/span><\/a><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><a>4.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Esquema del sistema<\/a><\/h3>\n\n\n\n<p>Se muestra a continuaci\u00f3n el esquema dise\u00f1ado para el sistema de seguridad:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-30.png\"><img loading=\"lazy\" decoding=\"async\" width=\"935\" height=\"485\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-30.png\" alt=\"\" class=\"wp-image-4658\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-30.png 935w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-30-300x156.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-30-768x398.png 768w\" sizes=\"auto, (max-width: 935px) 100vw, 935px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a>4.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Desarrollo y montaje del sistema<\/a><\/h3>\n\n\n\n<p>El sistema que hemos montado consta de cuatro partes diferenciadas. Para poder conectar todos los componentes hemos utilizado una placa de Arduino Mega 2560 que nos proporcionaba el suficiente n\u00famero de pines para todos los elementos a incluir.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><a>4.1.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Teclado<\/a><\/h4>\n\n\n\n<p>Va conectado a 8 pines de la placa de Arduino, concretamente a los pines: 53, 51, 49, 47, 45, 43, 41, 39. Los cuatro primeros pines se utilizan para las filas y los cuatro siguientes para las columnas.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-31.png\"><img loading=\"lazy\" decoding=\"async\" width=\"395\" height=\"358\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-31.png\" alt=\"\" class=\"wp-image-4659\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-31.png 395w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-31-300x272.png 300w\" sizes=\"auto, (max-width: 395px) 100vw, 395px\" \/><\/a><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><a>4.1.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pantalla LCD<\/a><\/h4>\n\n\n\n<p>Para montar la pantalla LCD, nos hemos basado en el circuito que aparece por defecto en Tikercad. Para conectarlo, hemos utilizado los pines 32, 30, 28, 26, 24 y 22.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-34.png\"><img loading=\"lazy\" decoding=\"async\" width=\"392\" height=\"223\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-34.png\" alt=\"\" class=\"wp-image-4662\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-34.png 392w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-34-300x171.png 300w\" sizes=\"auto, (max-width: 392px) 100vw, 392px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-33.png\"><img loading=\"lazy\" decoding=\"async\" width=\"365\" height=\"227\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-33.png\" alt=\"\" class=\"wp-image-4661\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-33.png 365w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-33-300x187.png 300w\" sizes=\"auto, (max-width: 365px) 100vw, 365px\" \/><\/a><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><a>4.1.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sensor de huella<\/a><\/h4>\n\n\n\n<p>Para el sensor de huella, hemos usado 4 pines:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>1 va a tierra (o GND)<\/li><li>1 va a 5 V.<\/li><li>2 van a los pines digitales 10 (RX) y 11 (TX).<\/li><\/ul>\n\n\n\n<p>Sabemos que los pines 10 y 11 son los que podemos utilizar porque son los dos primeros pines que soportan los datos de la huella para la placa de Arduino que hemos utilizado, esto viene especificado en la librer\u00eda de software serial dentro de la propia p\u00e1gina de Arduino. Si se hubiera utilizado otra placa de Arduino diferente, los pines tambi\u00e9n ser\u00edan distintos.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-35.png\"><img loading=\"lazy\" decoding=\"async\" width=\"416\" height=\"378\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-35.png\" alt=\"\" class=\"wp-image-4663\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-35.png 416w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-35-300x273.png 300w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><\/a><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><a>4.1.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Rel\u00e9 y cerradura<\/a><\/h4>\n\n\n\n<p>En este caso, utilizamos el pin digital 6 que pondremos a valor alto\/bajo seg\u00fan la operaci\u00f3n a realizar. Este pin lo conectamos a la base de un transistor al cual le llegan por el colector 12 V. El emisor va conectado al rel\u00e9 que va conectado al cable positivo de la cerradura y de tal forma que, cuando el pin 6 est\u00e1 a valor alto, el transistor est\u00e1 en saturaci\u00f3n y, como consecuencia, el rel\u00e9 se activa y saca la suficiente potencia como para abrir la cerradura. En caso de que el pin 6 est\u00e9 a valor bajo, al transistor no le llega corriente, lo que indica que est\u00e1 en corte y al rel\u00e9 no le llega corriente y, por lo tanto, la cerradura se mantiene cerrada.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-36.png\"><img loading=\"lazy\" decoding=\"async\" width=\"395\" height=\"296\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-36.png\" alt=\"\" class=\"wp-image-4664\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-36.png 395w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-36-300x225.png 300w\" sizes=\"auto, (max-width: 395px) 100vw, 395px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-37.png\"><img loading=\"lazy\" decoding=\"async\" width=\"406\" height=\"301\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/image-37.png\" alt=\"\" class=\"wp-image-4665\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-37.png 406w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/image-37-300x222.png 300w\" sizes=\"auto, (max-width: 406px) 100vw, 406px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><a><span class=\"has-inline-color has-vivid-cyan-blue-color\">5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Problemas y soluciones<\/span><\/a><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><a>5.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sensor de huella con salida incompatible<\/a><\/h3>\n\n\n\n<p>Compramos un primer sensor de huella y no nos fijamos en que las salidas no se pod\u00edan conectar a la placa de Arduino. Tuvimos que devolverla y comprar una nueva.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>5.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pines insuficientes en la placa Arduino 1<\/a><\/h3>\n\n\n\n<p>Nuestro sistema costa de varios componentes que utilizan 8+6+2+1=17 pines, por lo que la placa inicial de Arduino 1 no ten\u00eda suficientes pines para conectarlo todo. Ten\u00edamos dos opciones:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Comprar un multiplexor<\/li><li>Comprar la placa Arduino Mega 2560 que nos proporciona pines suficientes.<\/li><\/ul>\n\n\n\n<p>Hemos optado por comprar la placa de Arduino Mega 2560 porque nos ahorraba tiempo ya que el multiplexor hab\u00eda que soldarlo y configurarlo a trav\u00e9s de c\u00f3digo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>5.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Corriente de la cerradura<\/a><\/h3>\n\n\n\n<p>Hacerle llegar el voltaje suficiente a la cerradura ha sido uno de los mayores problemas que nos hemos encontrado.<\/p>\n\n\n\n<p>En un primer momento, intentamos varias soluciones:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Aumentar el voltaje con un \u00fanico transistor: esta soluci\u00f3n no funcion\u00f3 porque, el transistor te hac\u00eda de cuello de botella y no te permit\u00eda alcanzar el voltaje necesario.<\/li><li>Hacer una puerta AND con dos transistores: esta soluci\u00f3n tampoco nos funcion\u00f3 porque nos encontr\u00e1bamos con la misma situaci\u00f3n del punto anterior.<\/li><li>Comprar una puerta AND: esta soluci\u00f3n tampoco funcion\u00f3 porque la puerta AND no funcionaba a los valores necesitados.<\/li><li>Utilizar \u00fanicamente un rel\u00e9: esta soluci\u00f3n no nos sirvi\u00f3 porque el rel\u00e9 necesita su propio voltaje para activarse y desactivarse, por lo que utilizando \u00fanicamente el pin de Arduino no lleg\u00e1bamos al voltaje para activar el rel\u00e9.<\/li><li>Utilizar un rel\u00e9 a\u00f1adi\u00e9ndole una pila de 4,5 V: el problema que nos encontramos en este caso es que, aunque lleg\u00e1bamos al voltaje esperado para activar el rel\u00e9 y abrir la cerradura, al desactivar el pin del Arduino, pese a no llegar a los 5 V. necesarios para activar el rel\u00e9, se ve que usar los 4,5 V. de la pila s\u00ed lo mantiene activado.<\/li><\/ul>\n\n\n\n<p>La soluci\u00f3n definitiva fue a\u00f1adir un transistor al rel\u00e9 para que, en caso de que el transistor estuviese en corte, al rel\u00e9 no le llegase nada de corriente y, en caso de que pase a saturaci\u00f3n (como en nuestro caso), s\u00ed se active el rel\u00e9.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>5.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Alto consumo de energ\u00eda<\/a><\/h3>\n\n\n\n<p>Nos dimos cuenta al realizar sucesivas pruebas que las pilas se gastan con mucha rapidez y hemos tenido que a\u00f1adir una tercera pila para asegurarnos de que siempre llegue el voltaje necesario.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>5.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pantalla LCD<\/a><\/h3>\n\n\n\n<p>Al montar el circuito fuera de la caja, la pantalla funcionaba perfectamente, pero al realizar al montaje dentro de la caja, creemos que alg\u00fan cable o alguna conexi\u00f3n se pierde y la pantalla deja de funcionar en muchas ocasiones.<\/p>\n\n\n\n<p>No hemos tenido tiempo de revisar esta parte con detalle para corregir este defecto que nos impide el correcto funcionamiento del resto del sistema.<\/p>\n\n\n\n<p>La pantalla nos sirve sobre todo para mostrar mensajes de lo que va haciendo el sistema y para compensar esto hemos decidido utilizar el monitor serie.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a><span class=\"has-inline-color has-vivid-cyan-blue-color\">6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; C\u00f3digo Arduino<\/span><\/a><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/=======================================================\n\/\/     Librer\u00edas y variables globales del programa\n\/\/=======================================================\n#include &lt;LiquidCrystal.h&gt;\n#include &lt;Keypad.h&gt;\n#include &lt;Adafruit_Fingerprint.h&gt;    \/\/ Libreria  para el Sensor de huella dactilar\n\nSoftwareSerial mySerial(10, 11);     \/\/ Crear Serial para Sensor  Rx, TX del Arduino\nAdafruit_Fingerprint finger = Adafruit_Fingerprint(&amp;mySerial);\n\n\n\/\/=============================\n\/\/     Configuraci\u00f3n LCD\n\/\/=============================\nLiquidCrystal lcd(32, 30, 28, 26, 24, 22);\n\n\n\/\/===========================================\n\/\/     Configuraci\u00f3n teclado matricial\n\/\/===========================================\nconst byte rows = 4;\nconst byte cols = 4;\nint pantalla = 1;\nchar keys&#091;rows]&#091;cols] = {\n  {'1', '2', '3', 'A'},\n  {'4', '5', '6', 'B'},\n  {'7', '8', '9', 'C'},\n  {'*', '0', '#', 'D'}\n};\nbyte rowPins&#091;rows] = {53, 51, 49, 47};\/\/pines asignados, en el arduino est\u00e1n los impares seguidamente\nbyte colPins&#091;cols] = {45, 43, 41, 39};\n\nKeypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, rows, cols );\n\n\/\/==============================\n\/\/     Variables globales\n\/\/==============================\n\nchar claveAux&#091;12] = {'#', 5, 1, 5, 2, 5, 3, 5, 4, 5, 5, '#'};\nchar clave1&#091;4];\nchar clave2&#091;4];\nchar introducido&#091;4];\nint cont = 0;\nint intentos = 3;\nint huella = 0;\nuint8_t huellaUsuario;\n\n\nbool existeUsuario = false;\nchar claveUsuario&#091;4];\n\n\n\/\/===================================\n\/\/=     Prototipos de funciones     =\n\/\/===================================\n\nvoid borrarUsuario();\nvoid fin(int error);\/\/vuelve al inicio, y , si hay un error de teclado ,(1), lo muestra\nbool chequeo(int abrir, int cont , int intentos);\nvoid nuevaClave(int ambas);\/\/valdr\u00e1 1 si tras hacer esto entrar\u00e1 en nuevaHuella()\nvoid cambiarClave();\nbool chequeoHuella(int intentos);\nvoid nuevaHuella();\nvoid cambiarHuella();\n\n\/\/===============================================\n\/\/=     Inicio de programa, configuraciones     =\n\/\/===============================================\nvoid setup() {\n  Serial.begin(9600);\n  lcd.begin(16, 2); \/\/Cantidad de filas y columnas que en el LCD\n  pinMode(6, OUTPUT);\n\n  finger.begin(57600);  \/\/ inicializa comunicacion con sensor a 57600 Baudios\n  if (!finger.verifyPassword()) {\n    Serial.println(\"No hay comunicacion con el sensor de huella\");\n    Serial.println(\"Revise las conexiones\");\n    while (1) delay(1);\n  }\n\n}\n\n\/\/==========================================\n\/\/=     Funcionalidad de la aplicaci\u00f3n     =\n\/\/==========================================\nvoid loop() {\n  \/*MEN\u00da:\n    A: Abrir Caja\n    B: Borrar\/Crear Usuario\n    C: Cambiar Clave\/Huella\n  *\/\n  lcd.clear();\n  for (int i = 0; i &lt; 3; i++) {\n    lcd.setCursor(i, 0);\n    lcd.print(\"&gt;\");\n    lcd.setCursor(15 - i, 0);\n    lcd.print(\"&lt;\");\n    delay(600);\n  }\n  lcd.setCursor(4, 0);\n  lcd.print(\"CAJA SEM\");\n  delay(1300);\n  lcd.setCursor(0, 1);\n  lcd.print(\"elija una opcion\");\n  char digito = keypad.waitForKey();\n  lcd.setCursor(0, 1);\n  lcd.print(\"    op -&gt; \");  lcd.print(digito);  lcd.print(\"     \");\n  \n  delay(1400);\n  switch (digito) {\n    case 'A':\n      if (existeUsuario) {\n        if (chequeo(0, 0, 3) &amp;&amp; chequeoHuella(3))   abrirCaja();\n      }\n      else  nuevaClave(1);\n      break;\n    case 'B':\n      if (existeUsuario) borrarUsuario();\n      else  nuevaClave(1);\n      break;\n    case 'C':\n      if (!existeUsuario) fin(0);\n      else {\n        lcd.clear();\n        lcd.setCursor(3, 0);\n        lcd.print(\"CAMBIO DE:\");\n        lcd.setCursor(0, 1);\n        lcd.print(\"Clave:1 Huella:0\");\n        digito = keypad.waitForKey();\n        if (digito == '1') {\n          lcd.setCursor(0, 1);\n          lcd.print(\"      1          \");\n          cambiarClave();\n        }\n        else if (digito == '0') {\n          lcd.setCursor(0, 1);\n          lcd.print(\"      0          \");\n          delay(1000);\n          cambiarHuella();\n        }\n        else fin(1);\n      }\n      break;\n    case 'D':\n\n      fin(0);\n      break;\n    default:\n      fin(1);\n  }\n\n}\n\/\/------------------------------------------------------------\nvoid abrirCaja() {\n  lcd.clear();\n  lcd.setCursor(1, 0);\n  lcd.print(\"Abriendo caja\");\n  digitalWrite(6, HIGH);\n  delay(9000);\n  digitalWrite(6, LOW);\n  delay(3000);\n  fin(0);\n}\n\/\/------------------------------------------------------------\nvoid cambiarClave() {\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"CAMBIO DE CLAVE\");\n  delay(2000);\n  lcd.clear();\n  lcd.setCursor(1, 0);\n  lcd.print(\"Ponga primero \");\n  delay(1300);\n  lcd.setCursor(0, 1);\n  lcd.print(\"la clave antigua\");\n  delay(2000);\n  if (chequeo(0, 0, 3))nuevaClave(0);\n}\n\/\/------------------------------------------------------------\nvoid cambiarHuella() {\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"CAMBIO DE HUELLA\");\n  delay(2000);\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"Ponga primero la\");\n  delay(1300);\n  lcd.setCursor(0, 1);\n  lcd.print(\"antigua huella\");\n  delay(2000);\n  if (chequeoHuella(3)) nuevaHuella();\n}\n\/\/---------------------------------------------------------\nvoid borrarUsuario() {\n  if (existeUsuario) {\n    lcd.clear();\n    lcd.setCursor(1, 0);\n    lcd.print(\"Borrar Usuario\");\n    lcd.setCursor(1, 1);\n    lcd.print(\"SI-&gt;1  NO-&gt;0\");\n    char opcion = keypad.waitForKey();\n    if (opcion == '1') {\n      lcd.setCursor(0, 1);\n      lcd.print(\"      1       \\n\\n\");\n      delay(1000);\n      if (chequeo(0, 0, 3) &amp;&amp; chequeoHuella(3)) {\n        existeUsuario = false;\n        lcd.clear();\n        lcd.setCursor(0, 0);\n        lcd.print(\"USUARIO BORRADO\");\n        fin(0);\n      }\n      else fin(1);\n    }\n    else if (opcion == '0') {\n      lcd.setCursor(0, 1);\n      lcd.print(\"      0       \\n\\n\");\n      fin(0);\n    }\n    else fin(1);\n  }\n  else  nuevaClave(0);\n}\n\/\/----------------------------------------------------------------\nbool chequeo(int abrir, int cont , int intentos) {\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"==== CODIGO ====\");\n  lcd.setCursor(1, 1);\n  for (cont = 0; cont &lt; 4; cont++) {\n    introducido&#091;cont] = keypad.waitForKey();\n    lcd.print(\"  *\");\n  }\n  if (cont == 4) {\n    abrir = 1;\n    delay(500);\n    for (int i = 0; i &lt; 4; i++) {\n      if (introducido&#091;i] != claveUsuario&#091;i]) {\n        abrir = 0;\n        cont = 0;\n        intentos--;\n        lcd.clear();\n        lcd.setCursor(0, 0);\n        lcd.print(\"CODIGO ERRONEO\");\n        delay(1000);\n        lcd.setCursor(0, 1);\n        lcd.print(\"intentos-&gt; \");   lcd.print(intentos);\n        delay(1300);\n        if (intentos &gt; 0) chequeo(abrir, cont, intentos);\n        else fin(1);\n      }\n    }\n    if (abrir == 1) {\n      delay(600);\n      lcd.clear();\n      lcd.setCursor(0, 0);\n      lcd.print(\"CODIGO CORRECTO\");\n      delay(1000);\n      return true;\n    }\n  }\n  else chequeo(abrir, cont, intentos);\n}\n\/\/-------------------------------------------------------------\nbool chequeoHuella(int intentos) {\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"==== HUELLA ====\");\n  while (!getFingerprintEnroll());\n  if (finger.fingerFastSearch() != FINGERPRINT_OK) {\n    intentos--;\n    lcd.clear();\n    lcd.setCursor(0, 0);\n    lcd.print(\"HUELLA ERRONEA\");\n    delay(1000);\n    lcd.setCursor(0, 1);\n    lcd.print(\"intentos-&gt; \");   lcd.print(intentos);\n    delay(1300);\n    if (intentos &gt; 0) chequeoHuella(intentos);\n    else fin(1);\n  }\n  else {\n    lcd.clear();\n    lcd.setCursor(0, 0);\n    lcd.print(\"HUELLA CORRECTA\");\n    delay(1000);\n    return true;\n  }\n}\n\/\/--------------------------------------------------------------\nvoid nuevaClave(int ambas) {\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"NUEVO USUARIO:\");\n  delay(1000);\n  lcd.setCursor(0, 1);\n  lcd.print(\"PONGA UN CODIGO\");\n  delay(2000);\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"==== CODIGO ====\");\n  lcd.setCursor(1, 1);\n  for (int i = 0; i &lt; 4; i++) {\n    clave1&#091;i] = keypad.waitForKey();\n    lcd.print(\"  *\");\n  }\n  delay(1000);\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"REPITA EL CODIGO\");\n  delay(1500);\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"==== CODIGO ====\");\n  lcd.setCursor(1, 1);\n  for (int i = 0; i &lt; 4; i++) {\n    clave2&#091;i] = keypad.waitForKey();\n    lcd.println(\"  *\");\n  }\n  delay(1000);\n  for (int i = 0; i &lt; 4; i++) {\n    if (clave1&#091;i] != clave2&#091;i]) {\n      lcd.clear();\n      lcd.setCursor(4, 0);\n      lcd.print(\"CODIGOS \");\n      lcd.setCursor(0, 1);\n      lcd.print(\"NO COINCIDENTES \");\n      delay(2000);\n      nuevaClave(0);\n    }\n  }\n  for (int i = 0; i &lt; 4; i++) {\n    claveUsuario&#091;i] = clave2&#091;i];\n  }\n  existeUsuario = true;\n  lcd.clear();\n  lcd.setCursor(5, 0);\n  lcd.print(\"CLAVE\");\n  lcd.setCursor(2, 1);\n  lcd.print(\"ESTABLECIDA\");\n  delay(2000);\n  if (ambas == 0) fin(0);\n  else {\n    nuevaHuella();\n  }\n}\n\/\/--------------------------------------------------------------\nvoid nuevaHuella() {\n  getFingerprintEnroll();\n  guardarHuella();\n  delay(500);\n  lcd.clear();\n  lcd.setCursor(0, 0);\n  lcd.print(\"NUEVA HUELLA OK\");\n  fin(0);\n}\n\/\/--------------------------------------------------------------\nvoid fin(int error) {\n  delay(100);\n  lcd.clear();\n  if (error == 1) {\n    lcd.setCursor(3, 0);\n    lcd.print(\"ERROR!!!\");\n    delay(1000);\n  }\n  loop();\n}\n\/\/---------------------------------------------------------------\nvoid guardarHuella() {\n\n  huellaUsuario = finger.storeModel(1);\n\n  if (huellaUsuario != FINGERPRINT_OK){ lcd.setCursor(3, 0);\n    lcd.print(\"ERROR!!!\");}\n  delay(3000);\n}\n\/\/------------------------------------------------------------------\n\nuint8_t getFingerprintEnroll() {\n\n  int p = -1;\n  int id = 1;\n  lcd.setCursor(0, 0);\n  lcd.print(\"Pon la huella\");\n  while (p != FINGERPRINT_OK) {\n    p = finger.getImage();\n    switch (p) {\n      case FINGERPRINT_OK:\n        \/\/Serial.println(\"Image taken\");\n        break;\n      case FINGERPRINT_NOFINGER:\n        \/\/Serial.println(\".\");\n        break;\n      case FINGERPRINT_PACKETRECIEVEERR:\n        Serial.println(\"Communication error\");\n        break;\n      case FINGERPRINT_IMAGEFAIL:\n        Serial.println(\"Imaging error\");\n        break;\n      default:\n        Serial.println(\"Unknown error\");\n        break;\n    }\n  }\n\n  \/\/ OK success!\n\n  p = finger.image2Tz(1);\n  switch (p) {\n    case FINGERPRINT_OK:\n      \/\/Serial.println(\"Image converted\");\n      break;\n    case FINGERPRINT_IMAGEMESS:\n      Serial.printfln(\"Image too messy\");\n      return p;\n    case FINGERPRINT_PACKETRECIEVEERR:\n      Serial.println(\"Communication error\");\n      return p;\n    case FINGERPRINT_FEATUREFAIL:\n      Serial.println(\"Could not find fingerprint features\");\n      return p;\n    case FINGERPRINT_INVALIDIMAGE:\n      Serial.println(\"Could not find fingerprint features\");\n      return p;\n    default:\n      Serial.println(\"Unknown error\");\n      return p;\n  }\n  p = 0;\n  while (p != FINGERPRINT_NOFINGER) {\n    p = finger.getImage();\n  }\n  p = -1;\n  lcd.clear();\n\n  lcd.println(\"Otra vez\");\n  while (p != FINGERPRINT_OK) {\n    p = finger.getImage();\n    switch (p) {\n      case FINGERPRINT_OK:\n        \/\/Serial.println(\"Image taken\");\n        break;\n      case FINGERPRINT_NOFINGER:\n        Serial.print(\".\");\n        break;\n      case FINGERPRINT_PACKETRECIEVEERR:\n        Serial.println(\"Communication error\");\n        break;\n      case FINGERPRINT_IMAGEFAIL:\n        Serial.println(\"Imaging error\");\n        break;\n      default:\n        Serial.println(\"Unknown error\");\n        break;\n    }\n  }\n\n  \/\/ OK success!\n\n  p = finger.image2Tz(2);\n  switch (p) {\n    case FINGERPRINT_OK:\n      \/\/Serial.println(\"Image converted\");\n      break;\n    case FINGERPRINT_IMAGEMESS:\n      Serial.println(\"Image too messy\");\n      return p;\n    case FINGERPRINT_PACKETRECIEVEERR:\n      Serial.println(\"Communication error\");\n      return p;\n    case FINGERPRINT_FEATUREFAIL:\n      Serial.println(\"Could not find fingerprint features\");\n      return p;\n    case FINGERPRINT_INVALIDIMAGE:\n      Serial.println(\"Could not find fingerprint features\");\n      return p;\n    default:\n      Serial.println(\"Unknown error\");\n      return p;\n  }\n\n  p = finger.createModel();\n  if (p == FINGERPRINT_OK) {\n    \/\/Serial.println(\"Prints matched!\");\n  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {\n    Serial.println(\"Communication error\");\n    return p;\n  } else if (p == FINGERPRINT_ENROLLMISMATCH) {\n    Serial.println(\"Fingerprints did not match\");\n    return p;\n  } else {\n    Serial.println(\"Unknown error\");\n    return p;\n\n  }\n\n  return true;\n}\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Conclusiones y comentarios<\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><a>7.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Resumen del proyecto y posibles mejoras<\/a><\/h3>\n\n\n\n<p>Al realizar el proyecto hemos conseguido cumplir los objetivos iniciales de introducir la huella y el teclado, pero debido a la falta de tiempo hemos tenido que prescindir del doble fondo.<\/p>\n\n\n\n<p>Posibles mejoras:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Incorporar el sistema de doble fondo.<\/li><li>Que un mismo usuario pueda guardar m\u00e1s de una huella.<\/li><li>Un modo administrador (a la hora de hacer el c\u00f3digo lo empezamos a implementar, pero no se lleg\u00f3 a completar).<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><a>7.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Tabla de tiempos<\/a><\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td>Circuito<\/td><td>30 horas<\/td><\/tr><tr><td>Montaje<\/td><td>37 horas<\/td><\/tr><tr><td>C\u00f3digo<\/td><td>23 horas<\/td><\/tr><tr><td>Total<\/td><td>90 horas<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><a><span class=\"has-inline-color has-vivid-cyan-blue-color\">8&nbsp; Bibliograf\u00eda<\/span><\/a><\/h2>\n\n\n\n<p><a href=\"https:\/\/www.arduino.cc\/en\/Tutorial\/LibraryExamples\/SoftwareSerialExample\">https:\/\/www.arduino.cc\/en\/Tutorial\/LibraryExamples\/SoftwareSerialExample<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/adafruit.github.io\/Adafruit-Fingerprint-Sensor-Library\/html\/class_adafruit___fingerprint.html#a79d36eb63d36c60ab43198ac47120f76\">https:\/\/adafruit.github.io\/Adafruit-Fingerprint-Sensor-Library\/html\/class_adafruit___fingerprint.html#a79d36eb63d36c60ab43198ac47120f76<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.tinkercad.com\">https:\/\/www.tinkercad.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Integrantes del grupo: Mart\u00edn Alami Mochi Sergio Alvarez Scharfhausen Eduard Vasile Stancu. 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Introducci\u00f3n La idea principal del proyecto es dise\u00f1ar una caja de seguridad con doble sistema de seguridad: uno mediante la introducci\u00f3n&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":4759,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[8,129,130],"class_list":["post-4649","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-proyectos","tag-arduino","tag-caja-fuerte","tag-huella-dactilar"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Caja Fuerte SEM - Proyectos con Arduino.<\/title>\n<meta name=\"description\" content=\"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Caja fuerte SEM de doble seguridad (Clave + reconocimiento de ella dactilar)\" \/>\n<meta property=\"og:description\" content=\"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2021-12-16T21:47:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-18T13:23:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1916\" \/>\n\t<meta property=\"og:image:height\" content=\"2560\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Administrador de la red\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Proyectos con Arduino. Caja Fuerte SEM - Sistema de doble Seguridad\" \/>\n<meta name=\"twitter:description\" content=\"Proyectos con Arduino. Proyectos\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Administrador de la red\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/\"},\"author\":{\"name\":\"Administrador de la red\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\"},\"headline\":\"Caja Fuerte SEM &#8211; Sistema de doble Seguridad\",\"datePublished\":\"2021-12-16T21:47:36+00:00\",\"dateModified\":\"2021-12-18T13:23:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/\"},\"wordCount\":1938,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/PicsArt_12-18-08.50.49-scaled.jpg\",\"keywords\":[\"Arduino\",\"caja fuerte\",\"huella dactilar\"],\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/\",\"name\":\"Caja Fuerte SEM - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/PicsArt_12-18-08.50.49-scaled.jpg\",\"datePublished\":\"2021-12-16T21:47:36+00:00\",\"dateModified\":\"2021-12-18T13:23:11+00:00\",\"description\":\"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/PicsArt_12-18-08.50.49-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/PicsArt_12-18-08.50.49-scaled.jpg\",\"width\":1916,\"height\":2560},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/caja-fuerte-sem-sistema-doble-de-seguridad\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Caja Fuerte SEM &#8211; Sistema de doble Seguridad\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"name\":\"Proyectos con Arduino.\",\"description\":\"Blog de proyectos de Arduino de alumnos de la URJC\",\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\",\"name\":\"Universidad Rey Juan Carlos\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"width\":745,\"height\":288,\"caption\":\"Universidad Rey Juan Carlos\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\",\"name\":\"Administrador de la red\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"caption\":\"Administrador de la red\"},\"sameAs\":[\"https:\\\/\\\/blogs.etsii.urjc.es\"],\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/etsiiadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Caja Fuerte SEM - Proyectos con Arduino.","description":"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/","og_locale":"es_ES","og_type":"article","og_title":"Caja fuerte SEM de doble seguridad (Clave + reconocimiento de ella dactilar)","og_description":"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2021-12-16T21:47:36+00:00","article_modified_time":"2021-12-18T13:23:11+00:00","og_image":[{"width":1916,"height":2560,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg","type":"image\/jpeg"}],"author":"Administrador de la red","twitter_card":"summary_large_image","twitter_title":"Proyectos con Arduino. Caja Fuerte SEM - Sistema de doble Seguridad","twitter_description":"Proyectos con Arduino. Proyectos","twitter_image":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-07.46.05-scaled.jpg","twitter_misc":{"Escrito por":"Administrador de la red","Tiempo de lectura":"16 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/"},"author":{"name":"Administrador de la red","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211"},"headline":"Caja Fuerte SEM &#8211; Sistema de doble Seguridad","datePublished":"2021-12-16T21:47:36+00:00","dateModified":"2021-12-18T13:23:11+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/"},"wordCount":1938,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-08.50.49-scaled.jpg","keywords":["Arduino","caja fuerte","huella dactilar"],"articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/","name":"Caja Fuerte SEM - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-08.50.49-scaled.jpg","datePublished":"2021-12-16T21:47:36+00:00","dateModified":"2021-12-18T13:23:11+00:00","description":"CAJA FUERTE CON DOBLE SISTEMA DE SEGURIDAD: Clave num\u00e9rica y sistema de reconocimiento de huella dactilar.","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-08.50.49-scaled.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/PicsArt_12-18-08.50.49-scaled.jpg","width":1916,"height":2560},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/caja-fuerte-sem-sistema-doble-de-seguridad\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"Caja Fuerte SEM &#8211; Sistema de doble Seguridad"}]},{"@type":"WebSite","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","name":"Proyectos con Arduino.","description":"Blog de proyectos de Arduino de alumnos de la URJC","publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization","name":"Universidad Rey Juan Carlos","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","width":745,"height":288,"caption":"Universidad Rey Juan Carlos"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211","name":"Administrador de la red","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","caption":"Administrador de la red"},"sameAs":["https:\/\/blogs.etsii.urjc.es"],"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/etsiiadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/4649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=4649"}],"version-history":[{"count":14,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/4649\/revisions"}],"predecessor-version":[{"id":4761,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/4649\/revisions\/4761"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/4759"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=4649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=4649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=4649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}