{"id":5093,"date":"2022-05-11T11:18:25","date_gmt":"2022-05-11T09:18:25","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=5093"},"modified":"2022-06-03T10:19:03","modified_gmt":"2022-06-03T08:19:03","slug":"control-de-aforo-y-temperatura","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/","title":{"rendered":"Control de Aforo y Temperatura"},"content":{"rendered":"\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"HDgQH1W\"><a href=\"https:\/\/imgur.com\/HDgQH1W\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>Autores: <em>Iv\u00e1n Acebedo Herrera<\/em>, <em>Daniel Requena Garrido<\/em> y <em>Alejandro Valor Cano<\/em>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Introducci\u00f3n<\/strong><\/p>\n\n\n\n<p>La idea surgi\u00f3 dada la situaci\u00f3n actual de pandemia debido al COVID, y la cantidad de restricciones y controles que se han implantado desde el comienzo de la misma. <\/p>\n\n\n\n<p>Por tanto, se nos ocurri\u00f3 que nuestro proyecto pod\u00eda ir enfocado por ese camino, y as\u00ed construir un sistema de control de aforo y de temperatura, que pudiese instalarse en cualquier espacio, recinto, o aula, y que adem\u00e1s fuese lo suficientemente econ\u00f3mico para poder llegar a muchos espacios.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Funcionalidades<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Detecci\u00f3n de movimiento de entrada y salida<\/li><li>Detecci\u00f3n de temperatura y humedad (esta \u00faltima no est\u00e1 implementada, aunque el sensor lo permite)<\/li><li>Mostrar informaci\u00f3n por pantalla<\/li><li>Estado del aforo y de la temperatura mediante leds y un zumbador<\/li><\/ol>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Componentes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>3 x Protoboards<\/li><li>1 x Placa Arduino UNO<\/li><li>3 x Leds rojos, amarillos y verdes<\/li><li>Cables: 6,49\u20ac<\/li><li>1 x Pantalla LCD<\/li><li>1 x Sensor de temperatura y humedad (DHT11): 6,99\u20ac<\/li><li>1 x Sensor de movimiento PIR (HC-SR04): 9,99\u20ac<\/li><li>1 x Zumbador<\/li><li>Caja<\/li><li>3 x Resistencias de 1K\u03a9<\/li><\/ul>\n\n\n\n<p>Precio total = 70\u20ac<\/p>\n\n\n\n<p>Coste, sin contar los materiales que han sido prestado por la URJC y materiales reciclados que encontramos por casa = 23,47\u20ac<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Hardware<\/strong><\/p>\n\n\n\n<p>En cuanto a la parte Hardware, para hacerlo m\u00e1s sencillo, lo hemos dividido en tres secciones, por tanto, en tres protoplacas. Las tres tienen su propio positivo y negativo, para as\u00ed intentar simplificar el circuito, y no tener que utilizar cables muy largos. Comentar que las placas van pegadas a la base de la caja, para as\u00ed evitar que se muevan al desplazar la caja, y por tanto, evitar que se desconecten cables o incluso se da\u00f1en componentes.<\/p>\n\n\n\n<p>A continuaci\u00f3n se muestra una imagen general del circuito:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"xYNCgFQ\"><a href=\"https:\/\/imgur.com\/xYNCgFQ\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>En la parte superior, se han decidido colocar tanto el zumbador, como el sensor de temperatura y humedad, como los leds de colores (3 leds rojos, 3 leds amarillos y 3 leds verdes), como tambi\u00e9n uno de los sensores de movimiento PIR, con sus correspondientes resistencias, con el objetivo de proteger los componentes a largo plazo.<\/p>\n\n\n\n<p>Los leds, as\u00ed como la pantalla LCD, se pegaron a la tapa superior de la caja con cinta. Otra opci\u00f3n m\u00e1s resistente y fiable hubiera sido pegarlos con silicona caliente, pero al ser materiales que se nos proporcionaban desde la ETSII no quer\u00edamos da\u00f1arlos, por eso finalmente empleamos la cinta.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"g7599XQ\"><a href=\"https:\/\/imgur.com\/g7599XQ\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>En la parte central, \u00fanicamente se han conectado el positivo y negativo provenientes de la placa Arduino, y el otro sensor de movimiento PIR.<\/p>\n\n\n\n<p>Los sensores PIR se pegaron tambi\u00e9n con cinta a los laterales de la caja para asegurar que quedaban bien fijos, adem\u00e1s de tener un agujero a medida para que entrasen a presi\u00f3n. Adem\u00e1s, se cubri\u00f3 estos con un peque\u00f1o tubo de cart\u00f3n, para evitar que los sensores detectasen movimientos no deseados por los extremos, y s\u00f3lo detectasen movimiento delante de ellos.<\/p>\n\n\n\n<p>Adem\u00e1s, algunos cables tambi\u00e9n fueron encintados a la caja para evitar que se movieran y se desconectasen.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"PsJdOqe\"><a href=\"https:\/\/imgur.com\/PsJdOqe\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>Por \u00faltimo, en la parte inferior y en la tercera protoplaca se han realizado todas las conexiones necesarias para la pantalla LCD, que mostrar\u00e1 los datos sobre aforo y temperatura actuales.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"8oOjlh5\"><a href=\"https:\/\/imgur.com\/8oOjlh5\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Software<\/strong><\/p>\n\n\n\n<p>El c\u00f3digo a usar en este caso es un lenguaje propio de Arduino, que est\u00e1 basado en C++. En nuestro caso, el c\u00f3digo es el siguiente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;LiquidCrystal.h&gt;\n#include &lt;DHT.h&gt;\n\n\/\/Crear el objeto LCD con los n\u00fameros correspondientes (rs, en, d4, d5, d6, d7)\nLiquidCrystal lcd(8, 9, 4, 5, 6, 7);\n\n#define DHTPIN 2\n#define DHTTYPE DHT11\nDHT dht(DHTPIN, DHTTYPE);\n\nbyte sensorpir1=11; \/\/Pin del salida del sensor 1 que est\u00e1 como salida.\nbyte sensorpir2=12; \/\/Pin del salida del sensor 2 que est\u00e1 como salida.\nbyte ledv=14; \/\/LED VERDE\nbyte leda=15; \/\/LED AMARILLO\nbyte ledr=16; \/\/LED ROJO\nint altavoz=19; \/\/ analogico\n\nint contador=0;\nint calibrationTime = 60;\n\n\/\/El momento en que el sensor emite un impulso bajo\nlong unsigned int lowIn1; \nlong unsigned int lowIn2;\n \n\/\/Cantidad de milisegundos que el sensor tiene que ser baja \n\/\/antes de asumir que todo el movimiento se ha detenido\nlong unsigned int pause = 5000; \n \nboolean lockLow1 = true;\nboolean lockLow2 = true;\nboolean takeLowTime1; \nboolean takeLowTime2; \n\nfloat sinVal;\nint toneVal;\n\n\nvoid setup(){\n  Serial.begin(9600); \/\/Configuramos la velocidad del monitor serial\n  pinMode(altavoz, OUTPUT);\n  \/\/ Inicializar el LCD con el n\u00famero de  columnas y filas del LCD\n  lcd.begin(16, 2);\n  \/\/ Escribimos el Mensaje en el LCD.\n  pinMode(sensorpir1, INPUT); \/\/Declaramos pines E\/S\n  pinMode(sensorpir2, INPUT); \/\/Declaramos pines E\/S\n  pinMode(ledv, OUTPUT); \n  pinMode(ledr, OUTPUT); \n  pinMode(leda, OUTPUT); \n  dht.begin();  \/\/ Comenzamos el sensor DHT\n  digitalWrite(sensorpir1, LOW);\n  digitalWrite(sensorpir2, LOW);\n\n  lcd.print(\"CALIBRANDO...\");\n  \/\/ Tiempo de calibrado del sensor\n  for(int i = 0; i &lt; calibrationTime; i++) {\n    delay(1000);\n  }\n  lcd.clear();\n  lcd.print(\"CALIBRADO!!\");\n  delay(2000);\n  lcd.clear();\n}\n \nvoid loop(){\n  lcd.clear();\n  \/\/ Ubicamos el cursor en la primera posici\u00f3n(columna:0) de la primera l\u00ednea(fila:0)\n  lcd.setCursor(0,0);\n  lcd.print(\"CONTADOR: \");\n  lcd.print(contador);\n  \/\/ Leemos la temperatura en grados cent\u00edgrados\n  float temp = dht.readTemperature();\n\n  lcd.setCursor(0,1);\n  lcd.print(\"TEMP: \");\n  lcd.print(temp);\n  lcd.print((char)223);\n  lcd.print(\"C\");\n  \n  if(digitalRead(sensorpir1) == HIGH){ \n     Serial.println(\"Movimiento 1 detectado\");\n     contador++;\n     \/\/lcd.clear();\n     if(lockLow1){ \/\/ Se asegura que esperamos una transici\u00f3n a LOW antes de cualquier salida adicional: \n      lockLow1 = false; \n      delay(50); \n     } \n     takeLowTime1 = true;\n  }\n  else if(digitalRead(sensorpir1) == LOW){ \n     if(takeLowTime1){ \n       lowIn1 = millis(); \/\/ guarda el tiempo de la transici\u00f3n de HIGH a LOW \n       takeLowTime1 = false; \/\/ asegurar que esto se hace solamente al inicio de una fase de baja \n     } \n     \/\/ Si el sensor es bajo por m\u00e1s de la pausa dada, \n     \/\/ suponemos que hay m\u00e1s movimientos que van a suceder \n     if(!lockLow1 &amp;&amp; millis() - lowIn1 &gt; pause){ \n       lockLow1 = true; \n       delay(50);\n     }    \n  }\n  \n  if(digitalRead(sensorpir2) == HIGH){\n    Serial.println(\"Movimiento 2 detectado\");\n    if(contador&gt;0){\n      contador--;\n    }\n    \/\/lcd.clear();\n    if(lockLow2){ \/\/ Se asegura que esperamos una transici\u00f3n a LOW antes de cualquier salida adicional: \n      lockLow2 = false; \n      delay(50); \n     } \n     takeLowTime2 = true;\n  }\n  else if(digitalRead(sensorpir2) == LOW){ \n     if(takeLowTime2){ \n       lowIn2 = millis(); \/\/ guarda el tiempo de la transici\u00f3n de HIGH a LOW \n       takeLowTime2 = false; \/\/ asegurar que esto se hace solamente al inicio de una fase de baja \n     } \n     \/\/ Si el sensor es bajo por m\u00e1s de la pausa dada, \n     \/\/ suponemos que hay m\u00e1s movimientos que van a suceder \n     if(!lockLow2 &amp;&amp; millis() - lowIn2 &gt; pause){ \n       lockLow2 = true; \n       delay(50);\n     }    \n  }\n  \n  if(temp&lt;26){\n    noTone(altavoz);\n    if(contador&lt;3){\n      digitalWrite(ledv, HIGH);\n      digitalWrite(ledr, LOW);\n      digitalWrite(leda, LOW);\n    }\n    else if(contador&gt;=3 &amp;&amp; contador&lt;5){\n      digitalWrite(ledv, LOW);\n      digitalWrite(ledr, LOW);\n      digitalWrite(leda, HIGH);\n    }\n    else{\n      for(int x=0;x&lt;180;x++){\n      \/\/ convert degrees to radians then obtain sin value\n      sinVal = (sin(x*(3.1412\/180)));\n      \/\/ generate a frequency from the sin value\n      toneVal = 2000+(int(sinVal*1000));\n      tone(altavoz, toneVal);\n      delay(2);\n      }\n      digitalWrite(ledr, HIGH);\n      digitalWrite(ledv, LOW);\n      digitalWrite(leda, LOW);\n    }\n  }\n  else {\n    tone(altavoz,2000);\n    digitalWrite(ledr, HIGH);\n    digitalWrite(ledv, LOW);\n    digitalWrite(leda, LOW);\n  }\n\n  \/\/ 2 segundo de delay\n  delay(2000);\n    \n}<\/code><\/pre>\n\n\n\n<p>Importante resaltar que, dentro de la parte de setup, adem\u00e1s de hacerse las inicializaciones correspondientes, tambi\u00e9n se deja un tiempo (en este caso 1 minuto) para que los sensores se calibren correctamente. Esta informaci\u00f3n fue extra\u00edda del propio datasheet del componente.<\/p>\n\n\n\n<p>Adem\u00e1s, ya en la parte del loop, tras detectar alg\u00fan movimiento por parte de los sensores, se procede a asegurar que se espera el tiempo adecuado para que la se\u00f1al HIGH del sensor que ha detectado dicho movimiento, vuelve otra vez a LOW, y as\u00ed poder empezar otra vez con el bucle. Si no se hiciese esto, podr\u00eda ocurrir que el sensor, tras detectar movimiento, deja unos segundos la se\u00f1al en HIGH, y si volviese a empezar de nuevo la parte de loop, dar\u00eda lugar a detecciones \u00abfantasma\u00bb o err\u00f3neas, puesto que la se\u00f1al en HIGH corresponder\u00eda al anterior movimiento y no a ninguno actual.<\/p>\n\n\n\n<p>Por \u00faltimo, lo \u00fanico que queda por hacer es activar las salidas de los leds o del zumbador, dependiendo el caso de uso en el que nos encontremos.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Casos de Uso<\/strong><\/p>\n\n\n\n<p>Destacar que dentro de todos los casos de uso siempre tiene prioridad la temperatura, es decir, si la temperatura supera el umbral que hemos establecido, da igual el aforo porque se activar\u00e1 el caso de uso de la temperatura por encima del umbral.<\/p>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\"><li>Los sensores est\u00e1n calibrados y la temperatura est\u00e1 por debajo de la temperatura umbral. Adem\u00e1s, el n\u00famero de personas est\u00e1 muy por debajo del l\u00edmite de aforo \u00e0 En este caso se encienden los leds verdes.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"zpiNHXS\"><a href=\"https:\/\/imgur.com\/zpiNHXS\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\" start=\"2\"><li>Los sensores est\u00e1n calibrados y la temperatura est\u00e1 por debajo de la temperatura umbral. Adem\u00e1s, el n\u00famero de personas est\u00e1 cercano al l\u00edmite que se ha establecido \u00e0 Se encienden los leds amarillos.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"shmqSSV\"><a href=\"https:\/\/imgur.com\/shmqSSV\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\" start=\"3\"><li>Los sensores est\u00e1n calibrados y la temperatura est\u00e1 por debajo de la temperatura umbral. Adem\u00e1s, el n\u00famero de personas es igual o superior al l\u00edmite establecido \u00e0 Se encienden los leds rojos y el zumbador emite un sonido de alarma.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"Uv79uBG\"><a href=\"https:\/\/imgur.com\/Uv79uBG\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\" start=\"4\"><li>Los sensores est\u00e1n calibrados y la temperatura est\u00e1 por encima de la temperatura umbral. En este caso, da igual el n\u00famero de personas, que se activan los leds rojos y el zumbador emite un sonido de alarma distinto al de superar el l\u00edmite de aforo.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-imgur wp-block-embed-imgur\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"imgur-embed-pub\" lang=\"en\" data-id=\"RrOQxCF\"><a href=\"https:\/\/imgur.com\/RrOQxCF\">View post on imgur.com<\/a><\/blockquote><script async src=\"\/\/s.imgur.com\/min\/embed.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Problemas encontrados<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Sensores de movimiento: <\/strong>Estos han causado algunos problemas en cuanto a precisi\u00f3n. A\u00fan calibr\u00e1ndolos seg\u00fan el tiempo establecido en el datasheet del componente, no son del todo precisos y adem\u00e1s tienen un delay considerable.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Consistencia y fijaci\u00f3n de los cables macho-hembra: <\/strong>Al tener algunos componentes como la pantalla LCD y los leds en la parte superior de la caja, hemos tenido que usar cables macho-hembra para llevarlos desde la base de la caja donde est\u00e1n las protoplacas, hasta dichos componentes.<\/li><\/ul>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Futuras funcionalidades<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Sistema de ventilaci\u00f3n vinculado a la temperatura: <\/strong>Podr\u00eda vincularse a un sistema de ventilaci\u00f3n o refrigeraci\u00f3n como un aire acondicionado, y as\u00ed activar este en caso de superar una temperatura umbral.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Informaci\u00f3n de estado a trav\u00e9s de una p\u00e1gina web: <\/strong>Podr\u00eda tambi\u00e9n crearse una interfaz que diera soporte a una web o app m\u00f3vil, desde la cual poder acceder a los datos de aforo y temperatura en tiempo real.<\/li><\/ul>\n\n\n\n<p class=\"has-medium-font-size\"><strong>V\u00eddeo del proyecto<\/strong><\/p>\n\n\n\n<p>En este v\u00eddeo se explica todo el proyecto en general, pasando por todos los apartados que hemos visto en este blog. Adem\u00e1s, se muestran en v\u00eddeo los casos de uso que se han detallado anteriormente.<\/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=\"Proyecto SEyTR Mo G9 21-22\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/--xzR87jvDc?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>Autores: Iv\u00e1n Acebedo Herrera, Daniel Requena Garrido y Alejandro Valor Cano. Introducci\u00f3n La idea surgi\u00f3 dada la situaci\u00f3n actual de pandemia debido al COVID, y la cantidad de restricciones y controles que se han&#46;&#46;&#46;<\/p>\n","protected":false},"author":45,"featured_media":5097,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5093","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>Control de Aforo y Temperatura - 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\/control-de-aforo-y-temperatura\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Control de Aforo y Temperatura - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Autores: Iv\u00e1n Acebedo Herrera, Daniel Requena Garrido y Alejandro Valor Cano. Introducci\u00f3n La idea surgi\u00f3 dada la situaci\u00f3n actual de pandemia debido al COVID, y la cantidad de restricciones y controles que se han&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-11T09:18:25+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-06-03T08:19:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1357\" \/>\n\t<meta property=\"og:image:height\" content=\"839\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\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=\"8 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\\\/control-de-aforo-y-temperatura\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Control de Aforo y Temperatura\",\"datePublished\":\"2022-05-11T09:18:25+00:00\",\"dateModified\":\"2022-06-03T08:19:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/\"},\"wordCount\":1224,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/Portada-8.jpg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/\",\"name\":\"Control de Aforo y Temperatura - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/Portada-8.jpg\",\"datePublished\":\"2022-05-11T09:18:25+00:00\",\"dateModified\":\"2022-06-03T08:19:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/Portada-8.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/Portada-8.jpg\",\"width\":1357,\"height\":839,\"caption\":\"Vista frontal\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/control-de-aforo-y-temperatura\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Control de Aforo y Temperatura\"}]},{\"@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":"Control de Aforo y Temperatura - 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\/control-de-aforo-y-temperatura\/","og_locale":"es_ES","og_type":"article","og_title":"Control de Aforo y Temperatura - Proyectos con Arduino.","og_description":"Autores: Iv\u00e1n Acebedo Herrera, Daniel Requena Garrido y Alejandro Valor Cano. Introducci\u00f3n La idea surgi\u00f3 dada la situaci\u00f3n actual de pandemia debido al COVID, y la cantidad de restricciones y controles que se han&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2022-05-11T09:18:25+00:00","article_modified_time":"2022-06-03T08:19:03+00:00","og_image":[{"width":1357,"height":839,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"","Tiempo de lectura":"8 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/"},"author":{"name":"","@id":""},"headline":"Control de Aforo y Temperatura","datePublished":"2022-05-11T09:18:25+00:00","dateModified":"2022-06-03T08:19:03+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/"},"wordCount":1224,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/","name":"Control de Aforo y Temperatura - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg","datePublished":"2022-05-11T09:18:25+00:00","dateModified":"2022-06-03T08:19:03+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/Portada-8.jpg","width":1357,"height":839,"caption":"Vista frontal"},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/control-de-aforo-y-temperatura\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"Control de Aforo y Temperatura"}]},{"@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\/5093","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\/45"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=5093"}],"version-history":[{"count":16,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/5093\/revisions"}],"predecessor-version":[{"id":5807,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/5093\/revisions\/5807"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/5097"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=5093"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=5093"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=5093"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}