{"id":5736,"date":"2022-05-13T23:10:43","date_gmt":"2022-05-13T21:10:43","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=5736"},"modified":"2022-05-13T23:18:04","modified_gmt":"2022-05-13T21:18:04","slug":"alarma-inteligente","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/","title":{"rendered":"Alarma Inteligente"},"content":{"rendered":"\n<p>\u00c1ngel Villafuertes, Daniel Foronda y Ignasi Henales.<\/p>\n\n\n\n<p style=\"font-size:25px\"><strong>Introducci\u00f3n<\/strong> <\/p>\n\n\n\n<p>El proyecto que hemos elegido es una alarma implementada en Arduino, la cual contiene una pantalla LCD para que nos d\u00e9 retroalimentaci\u00f3n sobre c\u00f3mo estamos operando con el proyecto, un teclado para manejar la interfaz, una serie de sensores los cuales detectan a cualquier intruso una vez la alarma se haya activado, cuenta tambi\u00e9n con un c\u00f3digo para su activaci\u00f3n y desactivaci\u00f3n, con opci\u00f3n de modificaci\u00f3n.<\/p>\n\n\n\n<p>Hemos elegido este proyecto debido a que nos gust\u00f3 la idea, y pensamos que era un proyecto muy \u00fatil y usable en la vida de cualquier persona o empresa ya que en los tiempos que corren la seguridad es muy importante.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\" alt=\"\" \/><\/figure>\n\n\n\n<p style=\"font-size:25px\">I<strong>mplementaci\u00f3n<\/strong><\/p>\n\n\n\n<p>Para la implementaci\u00f3n del proyecto lo primero que hicimos fue informarnos de c\u00f3mo funcionaba un sistema de alarma est\u00e1ndar, una vez hecho esto, decidimos que perif\u00e9ricos introducir en el proyecto (sensor de movimiento, c\u00e1mara, etc.).<\/p>\n\n\n\n<p>Una vez estaba todo ello decidido comenzamos a implementar el hardware del proyecto en el cual se a\u00f1adieron los dos elementos obligatorios necesarios (placa Arduino UNO, para cargar el c\u00f3digo software y la protoboard), un sensor de ultrasonidos, una pantalla LCD donde se reflejar\u00e1n los modos de la alarma y las contrase\u00f1as introducidas, un m\u00f3dulo I2C que se utiliza para simplificar el uso de la pantalla y tener el hardware mucho m\u00e1s modularizado y por \u00faltimo un teclado.<\/p>\n\n\n\n<p>Hemos querido a\u00f1adir m\u00e1s elementos al hardware, pero debido al limitado n\u00famero de conexiones de la placa y a componentes que ocupan muchas de estas conexiones como puede ser el teclado no nos ha sido posible a\u00f1adir m\u00e1s sensores.&nbsp;<\/p>\n\n\n\n<p>En cuanto al software para la implementaci\u00f3n, hemos empezado&nbsp;a\u00f1adiendo las librer\u00edas de los distintos elementos, acto seguido&nbsp;declaramos las constantes que contendr\u00e1n la informaci\u00f3n sobre donde est\u00e1n conectados los distintos componentes en la placa, lo siguiente fue realizar un \u201csetup\u201d, con esto inicializamos todos los componentes (teclado, pantalla, sensores&#8230;) y tras esto empezamos en el loop con el c\u00f3digo que se explicar\u00e1 m\u00e1s adelante.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i.postimg.cc\/3R5PjtGY\/Whats-App-Image-2022-05-02-at-7-20-20-PM-1.jpg\" alt=\"\" width=\"442\" height=\"590\" \/><\/figure>\n\n\n\n<p style=\"font-size:25px\"><strong>Costes de los Materiales<\/strong><\/p>\n\n\n\n<p>Los materiales para dicha pr\u00e1ctica no han sido muy costosos, ya que la mayor\u00eda de ellos los ten\u00edamos debido a que se nos administraron en clase, y los que no los ten\u00edamos en casa, aunque tambi\u00e9n hemos tenido que comprar alguno debido a los problemas surgidos durante la realizaci\u00f3n (fallos, sobrecalentamientos, etc.), los materiales utilizados han sido:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td><strong>Tipo Material<\/strong><\/td><td><strong>Coste<\/strong><\/td><\/tr><tr><td>Placa Arduino UNO<\/td><td>20\u20ac<\/td><\/tr><tr><td>Cables<\/td><td>3\u20ac<\/td><\/tr><tr><td>Sensor Ultrasonidos<\/td><td>7,40\u20ac<\/td><\/tr><tr><td>Modulo I2C<\/td><td>8\u20ac<\/td><\/tr><tr><td>Pantalla LCD<\/td><td>10,99\u20ac<\/td><\/tr><tr><td>Teclado<\/td><td>8,18\u20ac<\/td><\/tr><tr><td>Huella Dactilar<\/td><td>15\u20ac<\/td><\/tr><tr><td>Zumbador<\/td><td>6\u20ac<\/td><\/tr><tr><td>Sensor PIR<\/td><td>1\u20ac<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\" style=\"font-size:25px\"><strong>Problemas y Soluciones encontradas<\/strong><\/h1>\n\n\n\n<p>Los principales problemas&nbsp;&nbsp;que enfrentamos fueron principalmente al inicio de la pr\u00e1ctica, en esta etapa ten\u00edamos claro lo que quer\u00edamos hacer, sin embargo no sab\u00edamos c\u00f3mo implementarlo tanto en la parte del software como la del hardware, para la parte del hardware pudimos aprender r\u00e1pido como resolver el problema gracias en gran parte a un canal de YouTube llamado \u201cBitWise Ar\u201d, para la parte del software os estuvimos documentando en varias p\u00e1ginas hasta encontrar la forma correcta de hacerlo y las librer\u00edas que utilizar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sensor Ultrasonido<\/strong><\/p>\n\n\n\n<p>Con este componente el principal problema que tuvimos fue que no lleg\u00e1bamos a entender el funcionamiento y por ello nos cost\u00f3 implementarla bien, una vez nos documentamos y entendimos el funcionamiento nos result\u00f3 f\u00e1cil implementarla.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Pantalla LCD<\/strong><\/p>\n\n\n\n<p>Con dicha pantalla tuvimos problemas al inicializarla ya que se encend\u00eda, pero no sal\u00eda nada en la pantalla, para solucionarlo cambiamos la inicializaci\u00f3n del c\u00f3digo software de la pantalla.<\/p>\n\n\n\n<p>Esta ocupaba muchos pines de la placa y ya hab\u00edamos usado muchos con el teclado por lo que pr\u00e1cticamente nos quedamos sin espacio para los sensores, para resolver esto compramos un m\u00f3dulo I2C que conectaba la mayor\u00eda de los pines de la pantalla y sacaba \u00fanicamente 3 cables que iban a la parte anal\u00f3gica de la placa, por lo que el problema ya estaba arreglado.<\/p>\n\n\n\n<p><strong>Teclado<\/strong><\/p>\n\n\n\n<p>Con el teclado tuvimos varios problemas, el primero de ellos fue que una vez conectado y programado no consegu\u00edamos que detectara los botones tocados y por tanto no funcionaba, una vez solucionado dicho problema mediante la modificaci\u00f3n del c\u00f3digo software, nos dimos cuenta de que estaban al rev\u00e9s ya que al tocar un bot\u00f3n pon\u00eda otro distinto, tambi\u00e9n conseguimos solucionarlo ya que el fallo era que en el c\u00f3digo ten\u00edamos puestas las columnas en las filas y viceversa.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Huella<\/strong><a> <\/a><strong>dactilar<\/strong><\/p>\n\n\n\n<p>Con la huella no tuvimos ning\u00fan problema, lo \u00fanico que nos pasaba es que al principio no sab\u00edamos c\u00f3mo implementar el software de dicho elemento y al final nos dimos cuenta de que teniendo que imprimir por pantalla los par\u00e1metros de la huella.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sensor PIR<\/strong><\/p>\n\n\n\n<p>Con dicho elemento tuvimos varios problemas ya que al principio el sensor no funcionaba, y pens\u00e1bamos que se hab\u00eda roto por lo que decidimos comprar otro, pero luego nos dimos cuenta de que lo \u00fanico que pasaba es que estaba mal calibrado el sensor.<\/p>\n\n\n\n<p style=\"font-size:25px\"><strong>C\u00f3digo<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;LCD.h&gt;\n\n#include &lt;LCD.h&gt;\n\n#include &lt;Adafruit_Fingerprint.h&gt;\n\n#include &lt;Wire.h&gt;\n#include &lt;LCD.h&gt;\n#include &lt;LiquidCrystal_I2C.h&gt;    \/\/ libreria para LCD por I2C\n#include &lt;Keypad.h&gt;\n\nconst byte ROWS = 4;\nconst byte COLS = 4;\nLiquidCrystal_I2C lcd (0x27, 2, 1, 0, 4, 5, 6, 7); \/\/ DIR, E, RW, RS, D4, D5, D6, D7\n\n\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};\n\nbyte rowPins&#091;ROWS] = {13, 12, 11, 10};\nbyte colPins&#091;COLS] = {9, 8, 7, 6};\n\nKeypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );\n\nString entrada;\nString modo = \"inicio\";\nString pass = \"1234\";\nbool detectado = false;\nint TRIG = 4;      \/\/ trigger en pin 10\nint ECO = 3;      \/\/ echo en pin 9\nint DURACION;\nint DISTANCIA;\nint PIR = A0;\nint buzzer_pin = 5;\nint ESTADO = 0;\nint i = 0;\n\n\/\/HUELLA DACTILAR\nSoftwareSerial mySerial(A1, A2);     \/\/ Crear Serial para Sensor  Rx, TX del Arduino\nAdafruit_Fingerprint finger = Adafruit_Fingerprint(&amp;mySerial);  \/\/ Crea el objeto Finger comunicacion pin 2 , 3\n\nvoid setup()\n{\n  lcd.setBacklightPin(3, POSITIVE); \/\/ puerto P3 de PCF8574 como positivo\n  lcd.setBacklight(HIGH);   \/\/ habilita iluminacion posterior de LCD\n  lcd.begin(16, 2);     \/\/ 16 columnas por 2 lineas para LCD 1602A\n  lcd.clear();      \/\/ limpia pantalla\n  pinMode(TRIG, OUTPUT);  \/\/ trigger como salida\n  pinMode(ECO, INPUT);    \/\/ echo como entrada\n  pinMode(buzzer_pin, OUTPUT); \/\/ Pin buzzer\n  pinMode(A1, OUTPUT);\n  pinMode(A2, OUTPUT);\n  pinMode(A0, INPUT);\n  Serial.begin(9600);\n\n  while (!Serial);       \/\/  Yun\/Leo\/Micro\/Zero\/...\n  delay(100);\n  Serial.println(\"Sistema de apertura con huella dactilar\");\n\n  \/\/ set the data rate for the sensor serial port\n  finger.begin(57600);  \/\/ inicializa comunicacion con sensor a 57600 Baudios\n  delay(5);\n\n    Serial.println(F(\"Reading sensor parameters\"));\n  finger.getParameters();\n  Serial.print(F(\"Status: 0x\")); Serial.println(finger.status_reg, HEX);\n  Serial.print(F(\"Sys ID: 0x\")); Serial.println(finger.system_id, HEX);\n  Serial.print(F(\"Capacity: \")); Serial.println(finger.capacity);\n  Serial.print(F(\"Security level: \")); Serial.println(finger.security_level);\n  Serial.print(F(\"Device address: \")); Serial.println(finger.device_addr, HEX);\n  Serial.print(F(\"Packet len: \")); Serial.println(finger.packet_len);\n  Serial.print(F(\"Baud rate: \")); Serial.println(finger.baud_rate);\n\n  finger.getTemplateCount();\n\n  if (finger.templateCount == 0) {\n    Serial.print(\"Sensor doesn't contain any fingerprint data. Please run the 'enroll' example.\");\n  }\n  else {\n    Serial.println(\"Waiting for valid finger...\");\n      Serial.print(\"Sensor contains \"); Serial.print(finger.templateCount); Serial.println(\" templates\");\n  }\n}\n\n\nvoid loop()\n{\n  char key = keypad.getKey();\n\n  \/\/::::::::::::::::INICIO::::::::::::::::::::\n  if (modo == \"inicio\") {\n    i=0;\n    lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n    lcd.print(\"Modo Inicio\");\n    if (key) {\n      if (key == 'A') {\n        modo = \"armar\";\n        lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n        lcd.print(\"Activar Alarma\");\n        delay(1000);\n        lcd.clear();\n        key = '\\0';\n\n      }\n\n      if (key == 'C') {\n        modo = \"cambiarpass\";\n        lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n        lcd.print(\"Cambiar passwd\");\n        delay(1000);\n        key = '\\0';\n      }\n\n\n\n    }\n  }\n\n\n  \/\/::::::::::::::::CAMBIAR PASSWORD::::::::::::::::::::\n  if (modo == \"cambiarpass\") {\n    lcd.clear();\n    lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n    lcd.print(\"INTRODUZCA\");\n    lcd.setCursor(3, 1);    \/\/ ubica cursor en columna 0 y linea 0\n    lcd.print(\"HUELLA\");\n    \n    \n        if (getFingerprintID() == 1) {\n          lcd.clear();\n          lcd.print(\"Correcta\");\n          delay(1000);\n          lcd.clear();\n          modo = \"repetirPass\";\n          key = '\\0';\n          entrada = \"\";\n\n        } \n        if(key=='D'){\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          lcd.clear();\n        }\n      }\n\n  \/\/::::::::::::::::REPETIR PASSWORD::::::::::::::::::::\n  if (modo == \"repetirPass\") {\n    lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n    lcd.print(\"new pass:\");\n    if (key) {\n      entrada += key;\n      lcd.setCursor(0, 1);    \/\/ ubica cursor en columna 0 y linea 0\n      lcd.print(entrada);\n\n      if (key == 'B') {\n        entrada = \"\";\n        lcd.clear();\n      }\n\n        if(key=='D'){\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          lcd.clear();\n        }\n      \n\n      if (key == 'A') {\n\n        entrada = entrada.substring(0, entrada.length() - 1);\n        pass = entrada;\n\n        tone(5, 300, 500);\n        delay(100);\n        tone(5, 500, 500);\n        delay(2000);\n        key = '\\0';\n        entrada = \"\";\n        lcd.clear();\n        modo = \"inicio\";\n      }\n    }\n  }\n\n  \/\/:::::::::::::::ARMAR ALARMA::::::::::::::::::::\n  if (modo == \"armar\") {\n    lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n    lcd.print(\"Contrase\u00f1a:\");\n    if (key) {\n      entrada += key;\n\n      lcd.setCursor(0, 1);    \/\/ ubica cursor en columna 0 y linea 0\n      lcd.print(entrada);\n\n\n      if(key=='D'){\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          lcd.clear();\n        }\n\n      if (key == 'B') {\n        entrada = \"\";\n        lcd.clear();\n      }\n\n        \n\n      if (key == 'A') {\n        lcd.clear();\n        entrada = entrada.substring(0, entrada.length() - 1);\n        if (entrada == pass  ) {\n              lcd.clear();\n              lcd.print(\"ACTIVANDO\");\n              lcd.setCursor(3, 1);\n              lcd.print(\"ALARMA\");\n          \n    \n          tone(5, 300, 700);\n          delay(1000);\n          tone(5, 300, 700);\n          delay(1000);\n          tone(5, 300, 1100);\n          delay(5000);\n          lcd.clear();\n          \n\n          lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n          lcd.print(\"Alarma Activada\");\n          modo = \"activa\";\n          key = '\\0';\n          entrada = \"\";\n        } else {\n          entrada = \"\";\n          tone(5, 100, 1000);\n          delay(1000);\n        }\n      }\n    }\n  }\n\n  \/\/::::::::::::::::ACTIVA::::::::::::::::::::\n  if (modo == \"activa\") {\n\n\n    if (key == 'A') {\n      modo = \"desarmar\";\n      key = '\\0';\n     \n    }\n\n    digitalWrite(TRIG, HIGH);     \/\/ generacion del pulso a enviar\n    delay(1);       \/\/ al pin conectado al trigger\n    digitalWrite(TRIG, LOW);    \/\/ del sensor\n\n    DURACION = pulseIn(ECO, HIGH);  \/\/ con funcion pulseIn se espera un pulso\n    \/\/ alto en Echo\n    DISTANCIA = DURACION \/ 58.2;    \/\/ distancia medida en centimetros\n    Serial.println(DISTANCIA);    \/\/ envio de valor de distancia por monitor serial\n\n    if (DISTANCIA &lt; 75 ) {\n      detectado = true;\n    }\n    ESTADO = digitalRead(PIR);\n    if (ESTADO == HIGH) {\n      detectado = true;\n    }\n\n\n    if (detectado) {\n      Serial.println(\"suena\");\n      tone(5, 500, 1000);\n    }\n  }\n\n  \/\/::::::::::::::::DESARMAR::::::::::::::::::::\n  if (modo == \"desarmar\") {\n    tone(5, 500, 500);\n    lcd.setCursor(0, 0);\n    lcd.print(\"Modo desarmar\");\n\n    if (getFingerprintID() == 1){\n           detectado = false;\n          lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n          lcd.print(\"Desactivada\");\n          digitalWrite(4, LOW);\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          tone(5, 100, 500);\n          delay(650);\n          tone(5, 100, 500);\n          lcd.clear();\n    }else{\n    \n    \n    if (key) {\n      entrada += key;\n      lcd.setCursor(0, 1);    \/\/ ubica cursor en columna 0 y linea 0\n      lcd.print(entrada);\n\n      if (key == 'A') {\n        \n        entrada = entrada.substring(0, entrada.length() - 1);\n        Serial.println(entrada);\n\n        if (entrada == pass ) {\n          \n          detectado = false;\n          lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n          lcd.print(\"Desactivada\");\n          digitalWrite(4, LOW);\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          tone(5, 100, 500);\n          delay(650);\n          tone(5, 100, 500);\n          lcd.clear();\n          \n        } else {\n          i++;\n            modo = \"activa\";\n            detectado = true;\n            entrada = \"\";\n            lcd.clear();\n            lcd.setCursor(0, 0);\n            lcd.print(\"Modo activo\");\n            \n          }\n\n          if(i&gt;3){\n            modo= \"bloqueada\";\n          }\n        }\n      }\n\n    } \n  }\n\n  if (modo == \"bloqueada\") {\n    Serial.println(\"suena\");\n      tone(5, 500, 1000);\n      lcd.setCursor(4, 0);\n      lcd.clear();\n      lcd.print(\"ALARMA\");\n      lcd.setCursor(3, 1);\n      lcd.print(\"BLOQUEADA\");\n      if(getFingerprintID() == 1){\n          detectado = false;\n          lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n          lcd.print(\"Desactivada\");\n          digitalWrite(4, LOW);\n          modo = \"inicio\";\n          key = '\\0';\n          entrada = \"\";\n          tone(5, 100, 500);\n          delay(650);\n          tone(5, 100, 500);\n          lcd.clear();\n          lcd.clear();       \n      }\n  }\n}\n\n\nuint8_t getFingerprintID() {\n  uint8_t p = finger.getImage();\n  switch (p) {\n    case FINGERPRINT_OK:\n      Serial.println(\"Image taken\");\n      break;\n    case FINGERPRINT_NOFINGER:\n      Serial.println(\"No finger detected\");\n      return p;\n    case FINGERPRINT_PACKETRECIEVEERR:\n      Serial.println(\"Communication error\");\n      return p;\n    case FINGERPRINT_IMAGEFAIL:\n      Serial.println(\"Imaging error\");\n      return p;\n    default:\n      Serial.println(\"Unknown error\");\n      return p;\n  }\n\n  \/\/ OK success!\n\n  p = finger.image2Tz();\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  \/\/ OK converted!\n  p = finger.fingerSearch();\n  if (p == FINGERPRINT_OK) {\n    Serial.println(\"Found a print match!\");\n  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {\n    Serial.println(\"Communication error\");\n    return p;\n  } else if (p == FINGERPRINT_NOTFOUND) {\n    Serial.println(\"Did not find a match\");\n    return p;\n  } else {\n    Serial.println(\"Unknown error\");\n    return p;\n  }\n\n  \/\/ found a match!\n  Serial.print(\"Found ID #\"); Serial.print(finger.fingerID);\n  Serial.print(\" with confidence of \"); Serial.println(finger.confidence);\n\n  return finger.fingerID;\n}\n\n\/\/ returns -1 if failed, otherwise returns ID #\nint getFingerprintIDez() {\n  uint8_t p = finger.getImage();\n  if (p != FINGERPRINT_OK)  return -1;\n\n  p = finger.image2Tz();\n  if (p != FINGERPRINT_OK)  return -1;\n\n  p = finger.fingerFastSearch();\n  if (p != FINGERPRINT_OK)  return -1;\n\n\n  \/\/ found a match!\n  Serial.print(\"Found ID #\"); Serial.print(finger.fingerID);\n  Serial.print(\" with confidence of \"); Serial.println(finger.confidence);\n  return finger.fingerID;\n}\n\nvoid activacion() {\n  tone(5, 500, 1000);\n  lcd.setCursor(0, 0);    \/\/ ubica cursor en columna 0 y linea 0\n  lcd.print(\"Alarma Activada\");\n  delay(1000);\n}<\/code><\/pre>\n\n\n\n<p style=\"font-size:25px\"><strong>Conclusi\u00f3n<\/strong><\/p>\n\n\n\n<p>Dicho proyecto como he mencionado al principio es muy \u00fatil en la vida cotidiana de cualquier persona ya que, hoy en d\u00eda en el mundo en el que vivimos con las tasas tan altas de delincuencia que hay est\u00e1 expuesta a un robo en un comercio, en una casa o incluso la ocupaci\u00f3n de esta, y la soluci\u00f3n para ello ser\u00eda un sistema a gran escala como el de nuestro proyecto el cual detecta cualquier intruso y seguidamente se activa una alarma la cual alerta a los vecinos colindantes y la polic\u00eda (nosotros no tenemos implementada esa funci\u00f3n).<\/p>\n\n\n\n<p>Una vez visto todo lo anterior podemos decir que esta pr\u00e1ctica ha sido muy \u00fatil y constructiva para entender c\u00f3mo funcionaba un sistema de alarma en una versi\u00f3n m\u00e1s reducida y aprender a usar Arduino el cual, a nuestro parecer, puede ser muy \u00fatil para la vida laboral, puesto que pensamos que es la base para la programaci\u00f3n de cualquier maquina utilizada por el ser humano.<\/p>\n\n\n\n<p>En nuestro caso preferimos este tipo de pr\u00e1cticas m\u00e1s complejas ya que se aprende bastante m\u00e1s que aprendi\u00e9ndonos un powerpoint.&nbsp;<\/p>\n\n\n\n<p>Adem\u00e1s, este tipo de trabajos nos ayuda bastante a la hora de organizarnos en grupo.&nbsp;<\/p>\n\n\n\n<p>Tambi\u00e9n, al ser un trabajo que si quer\u00edamos m\u00e1s material adicional ten\u00edamos que coste\u00e1rnoslo nosotros hemos aprendido a suministrar mejor los materiales que ten\u00edamos y a reciclar cosas que ten\u00edamos por casa.<\/p>\n\n\n\n<p>Y para terminar, en nuestro caso es un trabajo el cual siempre quer\u00edamos mejorar ya que una vez tienes metidas unas funcionalidades cada vez lo quieres mejorar m\u00e1s y es una cosa que no nos ha pasado en otros trabajos.<\/p>\n\n\n\n<p style=\"font-size:25px\"><strong>Video Explicativo de todo el proyecto<\/strong><\/p>\n\n\n\n<p>Adjuntamos el video que explica todo el proyecto, tanto la parte hardware, como software, el funcionamiento y dos ejemplos breves de uso.<\/p>\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=\"Alarma Inteligente (Arduino)\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/wDX4blWtGUQ?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","protected":false},"excerpt":{"rendered":"<p>\u00c1ngel Villafuertes, Daniel Foronda y Ignasi Henales. Introducci\u00f3n El proyecto que hemos elegido es una alarma implementada en Arduino, la cual contiene una pantalla LCD para que nos d\u00e9 retroalimentaci\u00f3n sobre c\u00f3mo estamos operando&#46;&#46;&#46;<\/p>\n","protected":false},"author":21,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5736","post","type-post","status-publish","format-standard","hentry","category-proyectos"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Alarma Inteligente - Proyectos con Arduino.<\/title>\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\/alarma-inteligente\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Alarma Inteligente - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"\u00c1ngel Villafuertes, Daniel Foronda y Ignasi Henales. Introducci\u00f3n El proyecto que hemos elegido es una alarma implementada en Arduino, la cual contiene una pantalla LCD para que nos d\u00e9 retroalimentaci\u00f3n sobre c\u00f3mo estamos operando&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-13T21:10:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-05-13T21:18:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 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\\\/alarma-inteligente\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Alarma Inteligente\",\"datePublished\":\"2022-05-13T21:10:43+00:00\",\"dateModified\":\"2022-05-13T21:18:04+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/\"},\"wordCount\":1222,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i.postimg.cc\\\/zXC3TQRX\\\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/\",\"name\":\"Alarma Inteligente - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i.postimg.cc\\\/zXC3TQRX\\\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\",\"datePublished\":\"2022-05-13T21:10:43+00:00\",\"dateModified\":\"2022-05-13T21:18:04+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i.postimg.cc\\\/zXC3TQRX\\\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\",\"contentUrl\":\"https:\\\/\\\/i.postimg.cc\\\/zXC3TQRX\\\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-inteligente\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Alarma Inteligente\"}]},{\"@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\":\"\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Alarma Inteligente - Proyectos con Arduino.","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\/alarma-inteligente\/","og_locale":"es_ES","og_type":"article","og_title":"Alarma Inteligente - Proyectos con Arduino.","og_description":"\u00c1ngel Villafuertes, Daniel Foronda y Ignasi Henales. Introducci\u00f3n El proyecto que hemos elegido es una alarma implementada en Arduino, la cual contiene una pantalla LCD para que nos d\u00e9 retroalimentaci\u00f3n sobre c\u00f3mo estamos operando&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2022-05-13T21:10:43+00:00","article_modified_time":"2022-05-13T21:18:04+00:00","og_image":[{"url":"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"","Tiempo de lectura":"12 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/"},"author":{"name":"","@id":""},"headline":"Alarma Inteligente","datePublished":"2022-05-13T21:10:43+00:00","dateModified":"2022-05-13T21:18:04+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/"},"wordCount":1222,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#primaryimage"},"thumbnailUrl":"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/","name":"Alarma Inteligente - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#primaryimage"},"thumbnailUrl":"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg","datePublished":"2022-05-13T21:10:43+00:00","dateModified":"2022-05-13T21:18:04+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#primaryimage","url":"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg","contentUrl":"https:\/\/i.postimg.cc\/zXC3TQRX\/Whats-App-Image-2022-05-02-at-7-20-20-PM.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-inteligente\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"Alarma Inteligente"}]},{"@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":"","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/5736","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\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=5736"}],"version-history":[{"count":9,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/5736\/revisions"}],"predecessor-version":[{"id":5751,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/5736\/revisions\/5751"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=5736"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=5736"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=5736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}