{"id":4807,"date":"2021-12-22T13:27:31","date_gmt":"2021-12-22T13:27:31","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=4807"},"modified":"2021-12-22T13:28:18","modified_gmt":"2021-12-22T13:28:18","slug":"alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/","title":{"rendered":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento."},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Nuestro proyecto consiste en un dispositivo de detecci\u00f3n de perturbaciones en contenedores protegidos.<\/h2>\n\n\n\n<p>La forma de usarlo es muy simple, se enciende autom\u00e1ticamente cuando conectas la bater\u00eda. Se debe dejar dentro de la mochila o contenedor, preferentemente encima de los contenidos a proteger, para que hubiese que mover la caja para acceder a ellos.<\/p>\n\n\n\n<p>Al sentir desplazamiento, cambio de posici\u00f3n o de orientaci\u00f3n se activa una alarma que permite detectar la posici\u00f3n de la caja y que no dejar\u00e1 de sonar hasta que se desconecte la bater\u00eda del dispositivo. Al mismo tiempo, se env\u00eda una notificaci\u00f3n al m\u00f3vil del usuario para notificarle de que se ha detectado movimiento.<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj-1024x576.jpg\" alt=\"\" data-id=\"4821\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=4821\" class=\"wp-image-4821\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj-1024x576.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj-300x169.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj-768x432.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj-1536x864.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/adjsdnfdnj.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-1024x768.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-1024x768.jpg\" alt=\"\" data-id=\"4808\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=4808\" class=\"wp-image-4808\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-1024x768.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-300x225.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-768x576.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw-1536x1152.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00f3digo<\/h2>\n\n\n\n<p>Usamos C en el entorno de Arduino para programar el dispositivo. Necesitamos dos ficheros: uno para el arduino y otro para el m\u00f3dulo WiFi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ---------------------------------------------------- Librer\u00edas ------------------------------------------------------------------\n#include \"SoftwareSerial.h\" \/\/ Comunicaci\u00f3n con el m\u00f3dulo de sonido\n#include \"Wire.h\"           \/\/ Comunicaci\u00f3n con el giroscopio (protocolo I2C)\n\n\/\/ ---------------------------------------------------- Constantes del modulo de sonido --------------------------------------------\n#define Start_Byte        0x7E\n#define Version_Byte      0xFF\n#define Command_Length    0x06\n#define End_Byte          0xEF\n#define Acknowledge       0x01\n\n\/\/ ---------------------------------------------------- Variables del modulo de sonido ---------------------------------------------\nSoftwareSerial mySerial(6, 7);  \/\/  RX, TX, comunicaci\u00f3n con el modulo de sonido\nbyte receive_buffer&#091;10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};\nbyte volume = 0x00;\n\n\/\/ ---------------------------------------------------- Variables del giroscopio-aceler\u00f3metro --------------------------------------\nconst int MPU_ADDR = 0x68; \/\/ I2C address of the MPU-6050. If AD0 pin is set to HIGH, the I2C address will be 0x69.\nint16_t accelerometer_x, accelerometer_y, accelerometer_z; \/\/ variables for accelerometer raw data\nint16_t gyro_x, gyro_y, gyro_z; \/\/ variables for gyro raw data\nint offset&#091;6] = {-3431, 1919, 1765, -9, 34, 71}; \/\/ Offset de calibracion para los valores del giroscopio-acelerometro\n\n\/\/ ---------------------------------------------------- Funciones del modulo de sonido ---------------------------------------------\nvoid execute_CMD(byte CMD, byte Par1, byte Par2) {\n  \/\/  Sends the command to the module\n  \n  \/\/  Calculate the checksum (2 bytes)\n  word checksum = -(Version_Byte + Command_Length + CMD + Acknowledge + Par1 + Par2);\n  \n  \/\/  Build the command line\n  byte Command_line&#091;10] = { Start_Byte, Version_Byte,\n                            Command_Length, CMD, Acknowledge, \n                            Par1, Par2, highByte(checksum),\n                            lowByte(checksum), End_Byte};\n\n  \/\/  Send the command line to the module\n  for(byte k = 0; k &lt; 10; k++) {\n    mySerial.write(Command_line&#091;k]);\n  }\n}\n\nvoid set_eq(uint8_t eq) {\n  \/\/ Sets the state of EQ\n  execute_CMD(0x07, 0, eq); \/\/ Sets the EQ\n  delay(100);\n}\n\nvoid set_volume(uint8_t volume) {\n  \/\/ Sets the volume level\n  execute_CMD(0x06, 0, volume); \/\/  Set volume level\n  delay(100);\n}\n\nvoid module_init() {\n  \/\/ Resets the module and sets the EQ state, \n  \/\/ volume level, and plays first song on the\n  \/\/ storage device\n  execute_CMD(0x0C, 0, 0); \/\/ reset the module\n  delay(1000);\n  delay(100);\n  delay(100);\n  set_eq(0);\n  set_volume(0x19);\n}\n\nvoid play_first() {\n  \/\/ Plays first song on the storage device\n  execute_CMD(0x03, 0, 1); \/\/ Play first song\n  delay(100);\n}\n\nvoid loop_current() {\n  \/\/ loops current playing song\n  execute_CMD(0x19, 0, 0);\n  delay(100);\n}\n\nvoid activarModuloSonido(){\n  \/\/ Reproduce el sonido de alarma y lo pone en bucle\n  play_first();\n  loop_current();\n}\n\n\/\/ ---------------------------------------------------- Funciones del giroscopio-aceler\u00f3metro --------------------------------------\nint * activarSensores(){\n  static int valores&#091;6]; \/\/Almacen de los valores del giroscopio y aceler\u00f3metro (Eje X, Eje Y, Eje Z de ambos sensores)\n  \/\/Activaci\u00f3n de los sensores\n  Wire.beginTransmission(MPU_ADDR);\n  Wire.write(0x3B); \/\/ starting with register 0x3B (ACCEL_XOUT_H) &#091;MPU-6000 and MPU-6050 Register Map and Descriptions Revision 4.2, p.40]\n  Wire.endTransmission(false); \/\/ the parameter indicates that the Arduino will send a restart. As a result, the connection is kept active.\n  Wire.requestFrom(MPU_ADDR, 7*2, true); \/\/ request a total of 7*2=14 registers\n  \n  \/\/Valores del acelerometro\n  valores&#091;0] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x3B (ACCEL_XOUT_H) and 0x3C (ACCEL_XOUT_L)\n  valores&#091;1] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x3D (ACCEL_YOUT_H) and 0x3E (ACCEL_YOUT_L)\n  valores&#091;2] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x3F (ACCEL_ZOUT_H) and 0x40 (ACCEL_ZOUT_L)\n  \/\/Valores del giroscopio\n  valores&#091;3] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x43 (GYRO_XOUT_H) and 0x44 (GYRO_XOUT_L)\n  valores&#091;4] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x45 (GYRO_YOUT_H) and 0x46 (GYRO_YOUT_L)\n  valores&#091;5] = Wire.read()&lt;&lt;8 | Wire.read(); \/\/ reading registers: 0x47 (GYRO_ZOUT_H) and 0x48 (GYRO_ZOUT_L)\n\n  for(int i=0; i&lt;6; i++){\n    valores&#091;i] = valores&#091;i] + offset&#091;i];\n  }\n  \n  \/\/Retornamos el puntero\n  return valores;\n}\n\nbool hayMov (){\n  \/\/hacer dos medidas y compararlas\n  bool movimientoDetectado = false;\n  int *p;\n  int i;\n  int medida1&#091;6];\n  int medida2&#091;6];\n  \/\/primera medida\n  p = activarSensores();\n  for(i =0; i &lt; 6; i++){ \/\/guardamos los resultados en un array\n    medida1&#091;i] = *(p+i); \n  }\n \n  delay(1000); \/\/tiempo de espera entre medidas en ms\n  \n  \/\/segunda medida\n  p = activarSensores();\n  for(i =0; i &lt; 6; i++){ \/\/guardamos los resultados en un array\n    medida2&#091;i] = *(p+i); \n  }\n\n  \/\/comparamos ambos arrays\n  \/\/teniendo en cuenta las respuestas de los sensores, 1500 parece un margen razonable para detectar movimiento\n\n  for(i =0; i&lt;6; i++){\n    int diff = abs(medida1&#091;i] - medida2&#091;i]);\n    if (diff &gt; 1000){ \/\/el valor absoluto de la resta debe permanecer por debajo de n\n      movimientoDetectado = true;\n    }\n  }\n  return movimientoDetectado; \n}\n\/\/ ---------------------------------------------------- Funciones del modulo WiFi --------------------------------------------------\nvoid activarModuloWiFi(){\n  \/\/ Se manda una se\u00f1al al modulo WiFi para que mande notificaciones al movil. Se introduce un delay para asegurar la sincronizaci\u00f3n con el mismo\n  \/\/ al menos dos veces\n  digitalWrite(0, HIGH);\n  delay(3100);\n  digitalWrite(0, LOW);\n  \n}\n\nvoid setup() {\n  \/\/ Inicializaci\u00f3n del modulo WiFi\n  pinMode(0,OUTPUT);\n  digitalWrite(0,LOW);  \n  \n  \/\/ Inicializaci\u00f3n del m\u00f3dulo de sonido y de su canal de comunicaci\u00f3n\n  mySerial.begin(9600);\n  delay(1000);\n  module_init();\n\n  \/\/ Inicializaci\u00f3n del giroscopio-aceler\u00f3metro\n  Wire.begin();\n  Wire.beginTransmission(MPU_ADDR); \/\/ Begins a transmission to the I2C slave (GY-521 board)\n  Wire.write(0x6B); \/\/ PWR_MGMT_1 register\n  Wire.write(0); \/\/ set to zero (wakes up the MPU-6050)\n  Wire.endTransmission(true);\n  delay(5000);\n}\n\nvoid loop() {\n  \/\/ Si se detecta movimiento en el giroscopio-aceler\u00f3metro, se activan tanto el modulo de sonido (para activar el altavoz)\n  \/\/ como el m\u00f3dulo Wifi, y se bloquea el programa en un bucle infinito, ya que para terminarlo, hay que apagar el arduino\n  \/\/ por completo\n  if(hayMov()){\n    activarModuloSonido();\n    activarModuloWiFi();\n    while(true);\n  }\n\n}<\/code><\/pre>\n\n\n\n<p>WiFi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/************\nGeeksTips.com\nESP8266 Arduino Tutorial - Push notification messages example\nArduino code example\nwww.geekstips.com\n*\/\n#include &lt;ESP8266WiFi.h&gt;\n\n\/\/ PushingBox scenario DeviceId code and API\nString deviceId = \"v316966B1F2622E0\";\nconst char* logServer = \"api.pushingbox.com\";\n\nconst char* ssid = \"MotorolaOneVision\";\nconst char* password = \"HolaMundo3\";\n\nbool primerAcceso = true;\n\nvoid sendNotification(String message){\n  \n  WiFi.begin(ssid, password);\n  while (WiFi.status() != WL_CONNECTED) {\n    delay(500);\n  }\n  \n  WiFiClient client;\n\n  if (client.connect(logServer, 80)) {\n    \n    String postStr = \"devid=\";\n    postStr += String(deviceId);\n    postStr += \"&amp;message_parameter=\";\n    postStr += String(message);\n    postStr += \"\\r\\n\\r\\n\";\n    \n    client.print(\"POST \/pushingbox HTTP\/1.1\\n\");\n    client.print(\"Host: api.pushingbox.com\\n\");\n    client.print(\"Connection: close\\n\");\n    client.print(\"Content-Type: application\/x-www-form-urlencoded\\n\");\n    client.print(\"Content-Length: \");\n    client.print(postStr.length());\n    client.print(\"\\n\\n\");\n    client.print(postStr);\n  }\n  client.stop();\n}\n\nvoid setup() {\n  pinMode(3,FUNCTION_3);\n  pinMode(1,FUNCTION_3);\n}\n\n\nvoid loop() {\n  while(true){\n    if(digitalRead(3) == HIGH){\n      if(!primerAcceso){\n        sendNotification(\"\u00a1Te estan robando!\");\n      } else{\n      primerAcceso = false;\n      }\n    delay(1500);\n    }\n }\n}\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware<\/h2>\n\n\n\n<p>M\u00f3dulos y otros materiales:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Placa Arduino Uno<\/li><li>M\u00f3dulo WiFi AZ-Delivery ESP8266-01S<\/li><li>AZ-Delivery GY-521 MPU-6050 3-axis Gyroscope and Acceleration sensor module<\/li><li>AZ-Delivery MP3 DFPlayer Mini Module<\/li><li>Altavoz<\/li><li>Tarjeta SD 32 GB<\/li><li>Resistencia 1K<\/li><\/ul>\n\n\n\n<p>Esquema de conexiones:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650-1024x548.png\" alt=\"\" class=\"wp-image-4857\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650-1024x548.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650-300x161.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650-768x411.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/Captura-de-pantalla-2021-12-22-142650.png 1410w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Problemas encontrados<\/h2>\n\n\n\n<p>El datasheet del m\u00f3dulo WiFi no estaba documentado por completo: No se explicaba como subir nuevo c\u00f3digo a trav\u00e9s de Arduino (s\u00ed con m\u00f3dulos externos), adem\u00e1s de que este se activaba en cuanto le llegaba corriente, y se ten\u00eda que activar cuando el giroscopio detectase movimiento.<\/p>\n\n\n\n<p>El giroscopio no se conectaba bien hasta que lo soldamos, as\u00ed que fue dif\u00edcil hacer pruebas al principio.<\/p>\n\n\n\n<p>Finalmente, todos los problemas se solucionaron a tiempo y estamos contentos con el resultado.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Documentaci\u00f3n<\/h2>\n\n\n\n<p>Para m\u00e1s informaci\u00f3n, se puede consultar el siguiente archivo PDF:<\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/Sistema-de-deteccion-de-robo.pdf\">Sistema-de-deteccion-de-robo<\/a><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/12\/Sistema-de-deteccion-de-robo.pdf\" class=\"wp-block-file__button\" download>Descarga<\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Prueba<\/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=\"Sistema de detecci\u00f3n de robo | Grupo 17 DSE\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/O0aRmHdNSYw?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<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nuestro proyecto consiste en un dispositivo de detecci\u00f3n de perturbaciones en contenedores protegidos. La forma de usarlo es muy simple, se enciende autom\u00e1ticamente cuando conectas la bater\u00eda. Se debe dejar dentro de la mochila&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":4808,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-4807","post","type-post","status-publish","format-standard","has-post-thumbnail","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 de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - 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-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Nuestro proyecto consiste en un dispositivo de detecci\u00f3n de perturbaciones en contenedores protegidos. La forma de usarlo es muy simple, se enciende autom\u00e1ticamente cuando conectas la bater\u00eda. Se debe dejar dentro de la mochila&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2021-12-22T13:27:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-22T13:28:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1500\" \/>\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: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=\"7 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-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/\"},\"author\":{\"name\":\"Administrador de la red\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\"},\"headline\":\"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento.\",\"datePublished\":\"2021-12-22T13:27:31+00:00\",\"dateModified\":\"2021-12-22T13:28:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/\"},\"wordCount\":306,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/awawawaw.jpg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/\",\"name\":\"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/awawawaw.jpg\",\"datePublished\":\"2021-12-22T13:27:31+00:00\",\"dateModified\":\"2021-12-22T13:28:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/awawawaw.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/12\\\/awawawaw.jpg\",\"width\":2000,\"height\":1500},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento.\"}]},{\"@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":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - 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-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/","og_locale":"es_ES","og_type":"article","og_title":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - Proyectos con Arduino.","og_description":"Nuestro proyecto consiste en un dispositivo de detecci\u00f3n de perturbaciones en contenedores protegidos. La forma de usarlo es muy simple, se enciende autom\u00e1ticamente cuando conectas la bater\u00eda. Se debe dejar dentro de la mochila&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2021-12-22T13:27:31+00:00","article_modified_time":"2021-12-22T13:28:18+00:00","og_image":[{"width":2000,"height":1500,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg","type":"image\/jpeg"}],"author":"Administrador de la red","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Administrador de la red","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/"},"author":{"name":"Administrador de la red","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211"},"headline":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento.","datePublished":"2021-12-22T13:27:31+00:00","dateModified":"2021-12-22T13:28:18+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/"},"wordCount":306,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/","name":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento. - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg","datePublished":"2021-12-22T13:27:31+00:00","dateModified":"2021-12-22T13:28:18+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/12\/awawawaw.jpg","width":2000,"height":1500},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/alarma-de-deteccion-de-robo-deteccion-de-perturbaciones-y-movimiento\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"Alarma de detecci\u00f3n de robo, detecci\u00f3n de perturbaciones y movimiento."}]},{"@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\/4807","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=4807"}],"version-history":[{"count":9,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/4807\/revisions"}],"predecessor-version":[{"id":4860,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/4807\/revisions\/4860"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/4808"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=4807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=4807"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=4807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}