{"id":6370,"date":"2023-05-04T16:20:11","date_gmt":"2023-05-04T14:20:11","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=6370"},"modified":"2023-05-04T16:22:34","modified_gmt":"2023-05-04T14:22:34","slug":"empotrivial","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/","title":{"rendered":"EMPOTRIVIAL"},"content":{"rendered":"\n<p>AUTORES: Alejandro Sisla Almorox, \u00c1lvaro Mart\u00edn Mart\u00edn y Miguel \u00c1ngel Moreno Campos<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1748-2-1024x768.jpeg\" alt=\"\" class=\"wp-image-6385\" width=\"712\" height=\"530\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">INTRODUCCION<\/mark><\/strong><\/h2>\n\n\n\n<p><strong>Empotrivial <\/strong>consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos, que se detallaran m\u00e1s adelante. El dispositivo port\u00e1til incluir\u00e1 un conjunto de botones para que los jugadores respondan las preguntas y dos marcadores donde se mostrara la puntuaci\u00f3n. Adem\u00e1s, contendr\u00e1 un altavoz en la parte superior de la caja, el cual aportar\u00e1 un grado de emoci\u00f3n y nos har\u00e1 adentrarnos en el juego.<br>El juego contar\u00e1 con una amplia variedad de categor\u00edas de preguntas, en concreto historia, ciencia, deportes, geograf\u00eda, entretenimiento y arte. El sistema de preguntas consistir\u00e1 en un conjunto de cartas f\u00edsicas que estar\u00e1n dispuestas en unos compartimentos en el lateral de la caja.<br>Cada carta contendr\u00e1 en su parte delantera la pregunta y las diferentes respuestas; en la parte trasera estar\u00e1 dispuesto un c\u00f3digo de barras, el cual ser\u00e1 le\u00eddo por un lector una vez el usuario pase la carta sobre el lector.<br>El sistema de puntuaci\u00f3n ser\u00e1 automatizado y mostrar\u00e1 los resultados en los marcadores en todo momento. El juego tambien incluir\u00e1 un temporizador para que los jugadores respondan las preguntas en un tiempo determinado, en nuestro caso de 30 segundos, lo que a\u00f1adir\u00e1 un elemento de emoci\u00f3n y competencia al juego. Adem\u00e1s, se mostrar\u00e1 el turno de cada jugador en todo momento.<br>En resumen, este proyecto tiene como objetivo crear un dispositivo port\u00e1til de juego de preguntas que sea divertido, desafiante y educativo al mismo tiempo, ofreciendo una experiencia similar al famoso juego Trivial.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">MECANICA DEL JUEGO<\/mark><\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>En primer lugar, se iniciar\u00e1 el juego. Se iluminar\u00e1n los leds correspondientes, en concreto los leds de la ruleta que girar\u00e1n continuamente hasta que se pulse el bot\u00f3n de INICIO<\/li>\n\n\n\n<li>Una vez pulsado el bot\u00f3n de inicio, comenzar\u00e1 una partida. Se encender\u00e1 el led del jugador 1, puesto que en un inicio empieza siempre el jugador 1 por simplicidad. Los marcadores se inicializar\u00e1n a 0 y el contador de tiempo a 30. En este momento se quedar\u00e1 esperando que se pulse el bot\u00f3n de JUGAR<\/li>\n\n\n\n<li>En el momento que se pulse este bot\u00f3n, empieza el ciclo de vida de la partida, donde se mantendr\u00e1 hasta que alguno de los jugadores gane, es decir, llegue a la puntuaci\u00f3n de 5 \n<ul class=\"wp-block-list\">\n<li>Ya pulsado el bot\u00f3n de jugar, la ruleta comenzar\u00e1 a \u2018girar\u2019, es decir, los leds ir\u00e1n encendi\u00e9ndose y apag\u00e1ndose continuamente de manera circular, y poco a poco ir\u00e1 disminuyendo la velocidad con la que va girando hasta el momento en que se pare en un determinado momento<\/li>\n\n\n\n<li>Una vez parado, el led encendido determinar\u00e1 el topic de la pregunta<\/li>\n\n\n\n<li>En este momento, el jugador deber\u00e1 coger una carta del compartimento en que est\u00e9n las preguntas del topic correspondiente. (Situadas en el lateral de la caja)<\/li>\n\n\n\n<li>A continuaci\u00f3n, el jugador deber\u00e1 pasar la parte posterior de la carta por encima del lector QR. El sistema comprobara si se ha elegido correctamente la carta, es decir, si el topic de la pregunta es el adecuado. En caso contrario, esperar\u00e1 hasta que se elija una carta del topic correcto<\/li>\n\n\n\n<li>Una vez le\u00eddo el c\u00f3digo QR de la carta, el tiempo de 30 segundos comenzar\u00e1 a correr, y el jugador deber\u00e1 emplear este tiempo para leer y contestar la pregunta utilizando los botones dispuestos en la caja (Opciones A \u2013 B \u2013 C \u2013 D)<\/li>\n\n\n\n<li>Si se ha contestado correctamente sonar\u00e1 un sonido ganador y sumar\u00e1 en uno la puntuaci\u00f3n dispuesta en el marcador del jugador. En caso de responder err\u00f3neamente, no se sumar\u00e1 puntuaci\u00f3n al marcador y sonar\u00e1 una melod\u00eda perdedora<\/li>\n\n\n\n<li>Si el jugador no ha alcanzado la puntuaci\u00f3n de 5, se vuelve al paso 3.1 donde jugara el jugador contrario<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Una vez alguno de los jugadores alcance la puntuaci\u00f3n de 5, sonar\u00e1 una melod\u00eda de final de juego y posteriormente se volver\u00e1 al paso 1, donde esperar\u00e1 que se pulse el bot\u00f3n de inicio en caso de querer jugar otra partida<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2-1024x576.png\" alt=\"\" class=\"wp-image-6377\" width=\"450\" height=\"252\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2-1024x576.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2-300x169.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2-768x432.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2-1536x864.png 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/Brainstorming-instrucciones-para-cuidar-plantas-floral-verde-blanco-morado-negro-2.png 1920w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">MATERIALES Y COSTES<\/mark><\/strong><\/h2>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>COMPONENTE<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>PRECIO<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Arduino UNO<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">4 protoboard<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">2 display<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">1 buzzer<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Cables<\/td><td class=\"has-text-align-center\" data-align=\"center\">7\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">6 pulsadores<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">8 leds<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">3 registros de desplazamiento<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Lector de c\u00f3digo de barras \/ QR<\/td><td class=\"has-text-align-center\" data-align=\"center\">32,67\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Material extra (cinta aislante, fundas, spray, impresiones, &#8230;)<\/td><td class=\"has-text-align-center\" data-align=\"center\">10\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>TOTAL:<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>49,67\u20ac<\/strong><\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Los componentes que aparezcan con un precio de \u2018-\u2018 no han tenido coste, puesto que han sido proporcionados por la universidad<\/figcaption><\/figure>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">HARDWARE<\/mark><\/strong><\/h2>\n\n\n\n<p>Para el montaje del proyecto ha sido necesario en primer lugar, una placa Arduino suministrada por la universidad. Para la conexi\u00f3n de todos los componentes han sido necesarias tres protoboards adicionales a la que ya incluye el kit. Los componentes necesarios para la implementaci\u00f3n de dicho proyecto han sido: seis botones, ocho leds, dos displays, un lector de c\u00f3digo de barras\/QR y un buzzer. A la hora de realizar las conexiones a las protoboards, lo hemos organizado de manera que quede bien distribuido todo y cada protoboard tenga un fin com\u00fan:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Dedicada a los cuatro botones de las respuestas, es decir los que se encuentran en la parte<br>inferior de la caja. Cada bot\u00f3n con sus conexiones a 5V, GND y el pin oportuno de la placa<br>Arduino.<\/li>\n\n\n\n<li>Dedicada a los dos botones restantes, dedicados a inicio y girar, es decir los que se encuentran<br>en la zona media de la caja. Cada bot\u00f3n con sus conexiones a 5V, GND y el pin oportuno de la<br>placa Arduino. Adem\u00e1s, tambien se encuentra conectado el buzzer, con sus respectivas<br>conexiones a 5V y al pin correspondiente de la placa Arduino.<\/li>\n\n\n\n<li>Dedicada a los dos displays de los marcadores donde cada uno corresponde a un desplazador,<br>con sus respectivas conexiones a este \u00faltimo y donde cada pin de este controlar\u00e1 un segmento<br>del display<\/li>\n\n\n\n<li>Dedicada a los ocho leds del proyecto, que est\u00e1n controlados por el restante desplazador de registros.<br>Por \u00faltimo, el lector de c\u00f3digos de barras est\u00e1 conectado independientemente de las protoboards. Tiene conexiones a 5V, GND y por otro lado a los pines 3 y 4 de la placa Arduino, utilizados como receptor y transmisor del lector.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"442\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/CIRCUITO-EMPOTRIVIAL-1024x442.jpg\" alt=\"\" class=\"wp-image-6386\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/CIRCUITO-EMPOTRIVIAL-1024x442.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/CIRCUITO-EMPOTRIVIAL-300x130.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/CIRCUITO-EMPOTRIVIAL-768x332.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/CIRCUITO-EMPOTRIVIAL.jpg 1382w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">En Tinkercad han sido necesarias mas protoboard pero en el montaje f\u00edsico se utilizar\u00e1 la descripci\u00f3n mencionada anteriormente. Adem\u00e1s, cabe destacar que en esta plataforma no est\u00e1 disponible el lector de c\u00f3digo de barras. \u00c9ste ira conectado simplemente al positivo y al negativo, y finalmente a los pines 3 y 4 de arduino, utilizados como transmisor y receptor del lector de c\u00f3digo de barras \/ QR.<\/figcaption><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">SOFTWARE<\/mark><\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;SoftwareSerial.h&gt;\n\/\/Notas buzzer\n#define NOTE_C4 262\n#define NOTE_D4 294\n#define NOTE_E4 330\n#define NOTE_F4 349\n#define NOTE_G4 392\n#define NOTE_A4 440\n#define NOTE_B4 494\n#define NOTE_C5 523\n\n\/\/Melod\u00edas del buffer\n\/\/Partida iniciada\nint mStart&#091;] = { NOTE_C4, NOTE_D4, NOTE_E4, NOTE_F4, NOTE_G4, NOTE_A4, NOTE_B4, NOTE_C5 };\nint bStart&#091;] = { 125, 125, 125, 125, 125, 125, 125, 225 };\n\n\/\/Serial del lector QR\nSoftwareSerial mySerial(3, 4); \/\/ RX, TX\nchar codigoBarras&#091;1]; \/\/Valores del codigo de barras\n\n\/\/Pines\nint start = 2;   \/\/ Pin del boton de inicio\nint spin = 5;    \/\/ Pin del boton de girar la ruleta\nint buzzer = 9;  \/\/ Pin del buzzer\nint respuesta1 = 10;\nint respuesta2 = 11;\nint respuesta3 = 12;\nint respuesta4 = 13;\n\n\/\/Valores de inicio\nint startValor = 0;  \/\/ Valor del boton start\nint spinValor = 0;   \/\/ Valor del boton spin\nint respuesta1Valor = 0;\nint respuesta2Valor = 0;\nint respuesta3Valor = 0;\nint respuesta4Valor = 0;\nint finPartida = 0;  \/\/Boolean para saber cu\u00e1ndo ha acabado la partida\nint puntos1 = 0, puntos2 = 0;\nint turno = 1;\n\n\/\/Declaraci\u00f3n de variables\nint notaBuzzer;  \/\/Nota del buzzer\nint n;           \/\/Para recorrer bucles\nlong randomNumber;\nint topic;  \/\/Num del topic\nint delaySpin;\nint numPregunta;\n\n\/\/Struct de pregunta\nstruct pregunta {\n  int topic;\n  int respuesta;\n};\n\/\/Array de preguntas\npregunta preguntas&#091;60];\n\n\/\/Valores del desp\nint pinDato = 6;       \/\/ Pin conectado a DS\nint pinClock = 8;     \/\/ Pin conectado a SHCP\nint pinRegistro = 7;  \/\/ Pin conectado a STCP\nbyte datos;\n\n\/\/Numeros para los displays\nbyte numbers&#091;] = {\n  0b0111111, \/\/0 \n  0b0000110, \/\/1 \n  0b1011011, \/\/2 \n  0b1001111, \/\/3 \n  0b1100110, \/\/4 \n  0b1101101, \/\/5 \n  0b1111101, \/\/6 \n  0b0000111, \/\/7 \n  0b1111111, \/\/8 \n  0b1100111  \/\/9 \n};\n\nvoid melodiaInicio() {  \/\/Melod\u00edas que suena al empezar\n  notaBuzzer = 0;\n  while (notaBuzzer &lt; (sizeof(mStart) \/ sizeof(int))) {\n    tone(buzzer, mStart&#091;notaBuzzer]);\n    delay(bStart&#091;notaBuzzer]);\n    noTone(buzzer);\n    notaBuzzer++;\n  }\n  return;\n}\n\nvoid melodiaInversa() {  \/\/Melod\u00edas que suena al empezar\n  notaBuzzer = sizeof(mStart) \/ sizeof(int) - 1;\n  while (notaBuzzer &gt;= 0) {\n    tone(buzzer, mStart&#091;notaBuzzer]);\n    delay(bStart&#091;notaBuzzer]);\n    noTone(buzzer);\n    notaBuzzer--;\n  }\n  return;\n}\n\nvoid encenderLuces(int lucesEmpezar, byte rueda){\n  digitalWrite(pinRegistro, LOW);\n  if (lucesEmpezar == 1){\n    shiftOut(pinDato, pinClock, MSBFIRST, 0b000000);\n    shiftOut(pinDato, pinClock, MSBFIRST, 0b000000);\n  } else {\n    shiftOut(pinDato, pinClock, MSBFIRST, numbers&#091;puntos2]);\n    shiftOut(pinDato, pinClock, MSBFIRST, numbers&#091;puntos1]);\n  }\n  shiftOut(pinDato, pinClock, MSBFIRST, rueda);\n  digitalWrite(pinRegistro, HIGH);\n}\n\nvoid lucesEmpezar() {\n  int antDatos;\n  int aux = 4;\n  int auxResta;\n  datos = 4;\n  n = 5;\n  startValor = digitalRead(start);\n  if (startValor == HIGH)\n    return;\n  while (n &gt;= 0) {\n    startValor = digitalRead(start);\n    if (startValor == HIGH)\n      return;\n    encenderLuces(1, datos);\n    delay(200);\n    n--;\n    antDatos = datos;\n    datos = aux * 2;\n    aux = datos;\n    datos = datos + antDatos;\n  }\n  n = 5;\n  aux = 4;\n  startValor = digitalRead(start);\n  if (startValor == HIGH)\n    return;\n  while (n &gt;= 0) {\n    startValor = digitalRead(start);\n    if (startValor == HIGH)\n      return;\n    encenderLuces(1, datos);\n    delay(200);\n    n--;\n    datos = datos - aux;\n    aux = aux * 2;\n  }\n  startValor = digitalRead(start);\n  if (startValor == HIGH)\n    return;\n}\n\nvoid declararPreguntas() {  \/\/Inicializar todas las preguntas\n  \/\/Historia\n  preguntas&#091;0].topic = 1;\n  preguntas&#091;0].respuesta = 2;\n  preguntas&#091;1].topic = 1;\n  preguntas&#091;1].respuesta = 2;\n  preguntas&#091;2].topic = 1;\n  preguntas&#091;2].respuesta = 1;\n  preguntas&#091;3].topic = 1;\n  preguntas&#091;3].respuesta = 2;\n  preguntas&#091;4].topic = 1;\n  preguntas&#091;4].respuesta = 1;\n  preguntas&#091;5].topic = 1;\n  preguntas&#091;5].respuesta = 3;\n  preguntas&#091;6].topic = 1;\n  preguntas&#091;6].respuesta = 1;\n  preguntas&#091;7].topic = 1;\n  preguntas&#091;7].respuesta = 1;\n  preguntas&#091;8].topic = 1;\n  preguntas&#091;8].respuesta = 4;\n  preguntas&#091;9].topic = 1;\n  preguntas&#091;9].respuesta = 3;\n  \/\/Ciencia\n  preguntas&#091;10].topic = 2;\n  preguntas&#091;10].respuesta = 2;\n  preguntas&#091;11].topic = 2;\n  preguntas&#091;11].respuesta = 1;\n  preguntas&#091;12].topic = 2;\n  preguntas&#091;12].respuesta = 3;\n  preguntas&#091;13].topic = 2;\n  preguntas&#091;13].respuesta = 3;\n  preguntas&#091;14].topic = 2;\n  preguntas&#091;14].respuesta = 2;\n  preguntas&#091;15].topic = 2;\n  preguntas&#091;15].respuesta = 3;\n  preguntas&#091;16].topic = 2;\n  preguntas&#091;16].respuesta = 1;\n  preguntas&#091;17].topic = 2;\n  preguntas&#091;17].respuesta = 1;\n  preguntas&#091;18].topic = 2;\n  preguntas&#091;18].respuesta = 3;\n  preguntas&#091;19].topic = 2;\n  preguntas&#091;19].respuesta = 2;\n  \/\/Entretenimiento\n  preguntas&#091;20].topic = 3;\n  preguntas&#091;20].respuesta = 2;\n  preguntas&#091;21].topic = 3;\n  preguntas&#091;21].respuesta = 3;\n  preguntas&#091;22].topic = 3;\n  preguntas&#091;22].respuesta = 1;\n  preguntas&#091;23].topic = 3;\n  preguntas&#091;23].respuesta = 4;\n  preguntas&#091;24].topic = 3;\n  preguntas&#091;24].respuesta = 3;\n  preguntas&#091;25].topic = 3;\n  preguntas&#091;25].respuesta = 3;\n  preguntas&#091;26].topic = 3;\n  preguntas&#091;26].respuesta = 4;\n  preguntas&#091;27].topic = 3;\n  preguntas&#091;27].respuesta = 3;\n  preguntas&#091;28].topic = 3;\n  preguntas&#091;28].respuesta = 1;\n  preguntas&#091;29].topic = 3;\n  preguntas&#091;29].respuesta = 1;\n  \/\/Arte\n  preguntas&#091;30].topic = 4;\n  preguntas&#091;30].respuesta = 1;\n  preguntas&#091;31].topic = 4;\n  preguntas&#091;31].respuesta = 2;\n  preguntas&#091;32].topic = 4;\n  preguntas&#091;32].respuesta = 1;\n  preguntas&#091;33].topic = 4;\n  preguntas&#091;33].respuesta = 4;\n  preguntas&#091;34].topic = 4;\n  preguntas&#091;34].respuesta = 3;\n  preguntas&#091;35].topic = 4;\n  preguntas&#091;35].respuesta = 1;\n  preguntas&#091;36].topic = 4;\n  preguntas&#091;36].respuesta = 3;\n  preguntas&#091;37].topic = 4;\n  preguntas&#091;37].respuesta = 4;\n  preguntas&#091;38].topic = 4;\n  preguntas&#091;38].respuesta = 2;\n  preguntas&#091;39].topic = 4;\n  preguntas&#091;39].respuesta = 1;\n  \/\/Deportes\n  preguntas&#091;40].topic = 5;\n  preguntas&#091;40].respuesta = 1;\n  preguntas&#091;41].topic = 5;\n  preguntas&#091;41].respuesta = 1;\n  preguntas&#091;42].topic = 5;\n  preguntas&#091;42].respuesta = 3;\n  preguntas&#091;43].topic = 5;\n  preguntas&#091;43].respuesta = 3;\n  preguntas&#091;44].topic = 5;\n  preguntas&#091;44].respuesta = 2;\n  preguntas&#091;45].topic = 5;\n  preguntas&#091;45].respuesta = 3;\n  preguntas&#091;46].topic = 5;\n  preguntas&#091;46].respuesta = 3;\n  preguntas&#091;47].topic = 5;\n  preguntas&#091;47].respuesta = 2;\n  preguntas&#091;48].topic = 5;\n  preguntas&#091;48].respuesta = 1;\n  preguntas&#091;49].topic = 5;\n  preguntas&#091;49].respuesta = 4;\n  \/\/Geograf\u00eda\n  preguntas&#091;50].topic = 6;\n  preguntas&#091;50].respuesta = 4;\n  preguntas&#091;51].topic = 6;\n  preguntas&#091;51].respuesta = 1;\n  preguntas&#091;52].topic = 6;\n  preguntas&#091;52].respuesta = 4;\n  preguntas&#091;53].topic = 6;\n  preguntas&#091;53].respuesta = 3;\n  preguntas&#091;54].topic = 6;\n  preguntas&#091;54].respuesta = 2;\n  preguntas&#091;55].topic = 6;\n  preguntas&#091;55].respuesta = 4;\n  preguntas&#091;56].topic = 6;\n  preguntas&#091;56].respuesta = 2;\n  preguntas&#091;57].topic = 6;\n  preguntas&#091;57].respuesta = 1;\n  preguntas&#091;58].topic = 6;\n  preguntas&#091;58].respuesta = 3;\n  preguntas&#091;59].topic = 6;\n  preguntas&#091;59].respuesta = 1;\n\n  return;\n}\n\nint numCodigoBarras(){\n  \/\/Variables del lector\n  int valorLeido = 0;\n  codigoBarras&#091;0] = '\\0';\n  codigoBarras&#091;1] = '\\0';\n  int index = 0;\n  while (mySerial.available()) \/\/ Lee byte a byte del buffer hasta que no quede nada\n  {\n    char input = mySerial.read(); \/\/ Lee 1 byte y lo guarda en la variable\n    if (index &lt; 2)\n      codigoBarras&#091;index++] = input;\n    delay(5);\n  }\n  for (int i = 0; i &lt; index; i++)\n    if (codigoBarras&#091;i] &gt;= '0' &amp;&amp; codigoBarras&#091;i] &lt;= '9')\n      valorLeido = valorLeido * 10 + (codigoBarras&#091;i] - '0');\n  return(valorLeido);\n}\n\nvoid setup() {\n  Serial.begin(9600);\n  pinMode(start, INPUT);\n  pinMode(spin, INPUT);\n  pinMode(buzzer, OUTPUT);\n  pinMode(respuesta1, INPUT);\n  pinMode(respuesta2, INPUT);\n  pinMode(respuesta3, INPUT);\n  pinMode(respuesta4, INPUT);\n\n  \/\/Desp\n  pinMode(pinRegistro, OUTPUT);\n  pinMode(pinClock, OUTPUT);\n  pinMode(pinDato, OUTPUT);\n  digitalWrite(pinRegistro, LOW);\n\n  \/\/Lector\n  mySerial.begin(115200);\n\n  declararPreguntas();\n}\n\nvoid loop() {\n  int i = 0;  \/\/Contador\n  pregunta newPregunta; \/\/Pregunta seleccionada\n  long startTiempo = 0;\n  long tiempoAux1;\n  long tiempoAux2;\n  int respuesta = 0;\n  finPartida = 0;\n  puntos1 = 0;\n  puntos2 = 0;\n  turno = 1;\n\n  \/\/ Mientras el boton no este pulsado\n  startValor = digitalRead(start);\n  while (startValor == LOW) {\n    startValor = digitalRead(start);\n    lucesEmpezar();\n  }\n\n  encenderLuces(1, 0);  \/\/Apagamos luces \n  \/\/Melod\u00eda de inicio\n  melodiaInicio();\n\n  \/\/Empieza la partida hasta que alguno acabe\n  while (finPartida == 0) {\n    encenderLuces(0, turno);\n\n    spinValor = digitalRead(spin);\n    while (spinValor == LOW)  \/\/Esperamos hasta pulsar el spin\n      spinValor = digitalRead(spin);\n    spinValor = LOW;\n\n    \/\/Spin de la rueda\n    i = 0;\n    n = 2;\n    delaySpin = 80;\n    randomSeed(analogRead(0));\n    randomNumber = random(30, 54);\n    while ((long)i++ &lt;= randomNumber) {\n      n *= 2;\n      if (n &gt; 128) {\n        n = 4;\n        delaySpin += 40;\n      }\n      datos = n + turno;\n      encenderLuces(0, datos);\n      tone(buzzer, NOTE_C4);\n      delay(80);\n      noTone(buzzer);\n      delay(delaySpin);\n    }\n    if (n == 128) \/\/Geografia\n      topic = 6;\n    else if (n == 64) \/\/Ciencia\n      topic = 2;\n    else if (n == 32) \/\/Deportes\n      topic = 5;\n    else if (n == 16) \/\/Arte\n      topic = 4;\n    else if (n == 8) \/\/Historia\n      topic = 1;\n    else if (n == 4) \/\/Entretenimiento\n      topic = 3;\n\n    while(1)\n      if (mySerial.available()){ \/\/Leer la pregunta\n        numPregunta = numCodigoBarras() - 1;\n        break;\n      }\n    Serial.println(numPregunta);\n    while (numPregunta &lt; 0 || numPregunta &gt; 59) \/\/Comprobar que el numero de la pregunta esta en la lista\n      if (mySerial.available())\n        numPregunta = numCodigoBarras() - 1;\n    while (newPregunta.topic != topic){ \/\/Comprobar que el topic es correcto\n      while(1)\n        if (mySerial.available()){ \/\/Volvemos a leer la pregunta\n          numPregunta = numCodigoBarras() - 1;\n          break;\n        }\n      while (numPregunta &lt; 0 || numPregunta &gt; 59) \/\/Volvemos a comprobar que el index este en la lista\n        if (mySerial.available())\n          numPregunta = numCodigoBarras() - 1;\n      newPregunta = preguntas&#091;numPregunta];\n    }\n    Serial.print(\"Pregunta escaneada, respuesta: \");\n    Serial.println(newPregunta.respuesta);\n\n    delay(500);\n    startTiempo = millis();\n    tiempoAux2 = millis();\n    tone(buzzer, NOTE_E4);\n    delay(500);\n    noTone(buzzer);\n    while(millis() - startTiempo &lt;= 30000 &amp;&amp; respuesta == 0)\n    {\n      tiempoAux1 = millis();\n      if (millis() - startTiempo &gt; 25000 &amp;&amp; tiempoAux1 &gt;= (tiempoAux2 + 250)){\n        tone(buzzer, NOTE_E4);\n        delay(100);\n        noTone(buzzer);\n        tiempoAux2 = millis();\n      } else if (millis() - startTiempo &gt; 20000 &amp;&amp; tiempoAux1 &gt;= (tiempoAux2 + 500)){\n        tone(buzzer, NOTE_E4);\n        delay(100);\n        noTone(buzzer);\n        tiempoAux2 = millis();\n      } else if (millis() - startTiempo &gt; 10000 &amp;&amp; tiempoAux1 &gt;= (tiempoAux2 + 1000)){\n        tone(buzzer, NOTE_E4);\n        delay(100);\n        noTone(buzzer);\n        tiempoAux2 = millis();\n      } else if (tiempoAux1 &gt;= (tiempoAux2 + 2000)){\n        tone(buzzer, NOTE_E4);\n        delay(100);\n        noTone(buzzer);\n        tiempoAux2 = millis();\n      }\n      respuesta1Valor = digitalRead(respuesta1);\n      respuesta2Valor = digitalRead(respuesta2);\n      respuesta3Valor = digitalRead(respuesta3);\n      respuesta4Valor = digitalRead(respuesta4);\n      if (respuesta1Valor == HIGH)\n    \t  respuesta = 1;\n      else if (respuesta2Valor == HIGH)\n        respuesta = 2;\n      else if (respuesta3Valor == HIGH)\n        respuesta = 3;\n      else if (respuesta4Valor == HIGH)\n        respuesta = 4;\n    }\n    Serial.println(respuesta);\n    if (respuesta == newPregunta.respuesta){\n      melodiaInicio();\n      if (turno == 1)\n        puntos1++;\n      else\n        puntos2++;\n    } else \n      melodiaInversa();\n    respuesta = 0;\n\n    encenderLuces(0, turno); \/\/ Para ver el 5 cuando vaya a acabar la partida\n    if (turno == 1)\n      turno++;\n    else\n      turno--;\n    if (puntos1 == 5 || puntos2 == 5){\n      finPartida = 1;\n      melodiaInicio();\n      delay(50);\n      melodiaInversa();\n      delay(50);\n      melodiaInicio();\n      delay(50);\n      melodiaInversa();\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">PROBLEMAS ENCONTRADOS<\/mark><\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Lector de c\u00f3digo de barras \/ QR\n<ul class=\"wp-block-list\">\n<li>A lo largo de la pr\u00e1ctica nos hemos encontrado con diferentes problemas que, con tiempo y esfuerzo hemos podido solucionar. Uno de los problemas que m\u00e1s nos ha dado dolores de cabeza ha sido la implementaci\u00f3n del lector de c\u00f3digo de barras. Dicha implementaci\u00f3n no parec\u00eda muy costosa siguiendo la gu\u00eda correspondiente, pero haciendo todo lo que la gu\u00eda nos indicaba, no fuimos capaces de que el lector leyera la informaci\u00f3n de manera correcta. Cambiamos el c\u00f3digo y conectamos los cables deinfinitas maneras, hasta llegar al punto de replantearnos sustituir el lector por un path num\u00e9rico que compramos como sustituto en caso de que el lector no funcionara. Rendirse no estaba dentro de nuestros planes y continuamos intent\u00e1ndolo hasta que se prob\u00f3 a modificar la velocidad de transmisi\u00f3n de 9600 a 115200. Haciendo esto se leen y muestran correctamente los datos le\u00eddos del c\u00f3digo de barras ya que al ser mayor la velocidad, el mensaje se le\u00eda al completo, al contrario de antes que la lectura se quedaba a medias<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Cartas de empotrivial\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<ul class=\"wp-block-list\">\n<li>Una parte fundamental de Empotrivial son las preguntas que se van a utilizar durante el juego. Pensamos en guardar el enunciado y sus posibles respuestas dentro de una memoria interna y mostrarlas por pantalla, pero nos pareci\u00f3 m\u00e1s accesible y familiar crear las preguntas en f\u00edsico. Lo \u00fanico que se va a guardar en el sistema va a ser el n\u00famero de pregunta elegida (N\u00famero le\u00eddo del c\u00f3digo de barras) y su respuesta correcta, adem\u00e1s de su topic para no escanear una tarjeta cuyo topic sea incorrecto. Por lo tanto, nos pusimos manos a la obra y pensamos c\u00f3mo realizar el dise\u00f1o de las preguntas. Pensamos en hacerlas a mano, sobre una cartulina y plastificarlas, pero al final decidimos hacerlas a ordenador sobre una plantilla de preguntas sencilla ya dise\u00f1ada para posteriormente pasarlas a un Word y ver cual es la forma \u00f3ptima de repartir el espacio para imprimir y cortarlas c\u00f3modamente.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Por cada folio se imprimieron 6 preguntas, con la parte delantera y trasera de la carta totalmente juntas. Esto a la hora de recortar es clave ya que no se va a tener que recortar de manera independiente cada una de las caras de la carta, simplemente se recortar\u00e1 alrededor de ambas caras y se doblar\u00e1 para pegarlas con m\u00e1s facilidad.<\/li>\n\n\n\n<li>La elecci\u00f3n de este m\u00e9todo nos pareci\u00f3 mejor ya que no vimos necesario centrar al completo nuestras fuerzas y tiempo en la creaci\u00f3n de tarjetas que, al fin y al cabo, no son tan importantes como la creaci\u00f3n y dise\u00f1o interno del sistema.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Cableado\n<ul class=\"wp-block-list\">\n<li>Otro problema surgido durante el desarrollo que debemos remarcar es la implementaci\u00f3n del hardware en el interior de la caja. Al principio no nos parec\u00eda una tarea muy dif\u00edcil y, la verdad que no lo es, pero el gran n\u00famero de componentes que hay que conectar desde la parte superior de la caja a las protoboards (botones, displays, buzzer o leds) han hecho que haya un gran n\u00famero de cables. Este hecho supone que al m\u00ednimo movimiento de la caja (por ejemplo, a la hora de transportarla) las conexiones dejen de hacer contacto y se har\u00eda una odisea luego encontrar el error. La soluci\u00f3n a este problema ha sido posible gracias a la cinta aislante, la cual nos ha servido para reforzar las conexiones y as\u00ed estar seguro de que, a no ser que hagas un movimiento muy brusco, el contacto hecho por los cables deber\u00eda serefectivo. Tambi\u00e9n hemos pegado las protoboards al fondo de la caja para que est\u00e9n totalmente inm\u00f3viles y evitar problemas.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Pines insuficientes\n<ul class=\"wp-block-list\">\n<li>El \u00faltimo de los principales problemas que nos surgieron a la hora de ir conectando todo fue la falta de pines, debido a todos los leds y los displays que usamos necesitamos una gran cantidad, que, sumado a los 6 botones, necesit\u00e1bamos much\u00edsimos m\u00e1s pines. En un principio usamos el desplazador de registros que nos viene en el kit y decidimos comprar por internet un par de multiplexores. Sin embargo, al intentar usar los multiplexores nos surgieron varios problemas, ya que no recog\u00eda bien los valores de los botones y acababan abultando demasiado en las placas produciendo much\u00edsimo l\u00edo de cables. As\u00ed que finalmente calculamos que con 2 desplazadores de registros m\u00e1s ser\u00edamos capaces de conectar todos los leds y los displays usando tan solo 3 pines, y tambi\u00e9n que ser\u00edamos capaces de conectar el resto (botones, lector, buzzer\u2026) al Arduino. As\u00ed que utilizamos los desplazadores de otros kits de electr\u00f3nica que ten\u00edamos y conseguimos optimizar al m\u00e1ximo los pines que utilizamos.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">EVOLUCION DEL PROYECTO<\/mark><\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b-1024x577.jpg\" alt=\"\" class=\"wp-image-6387\" width=\"356\" height=\"200\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b-1024x577.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b-300x169.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b-768x432.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b-1536x865.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/4a17bfad-6e39-46e8-ba31-bece2d955e9b.jpg 2048w\" sizes=\"auto, (max-width: 356px) 100vw, 356px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/ff4656e9-c220-45b0-a1af-2d4c0cba61e4-1-edited.jpg\" alt=\"\" class=\"wp-image-6390\" width=\"352\" height=\"263\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/ff4656e9-c220-45b0-a1af-2d4c0cba61e4-1-edited.jpg 923w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/ff4656e9-c220-45b0-a1af-2d4c0cba61e4-1-edited-300x225.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/ff4656e9-c220-45b0-a1af-2d4c0cba61e4-1-edited-768x577.jpg 768w\" sizes=\"auto, (max-width: 352px) 100vw, 352px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1598-768x1024.jpeg\" alt=\"\" class=\"wp-image-6391\" width=\"231\" height=\"308\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1598-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1598-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1598-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1598.jpeg 1536w\" sizes=\"auto, (max-width: 231px) 100vw, 231px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1701-768x1024.jpeg\" alt=\"\" class=\"wp-image-6393\" width=\"231\" height=\"308\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1701-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1701-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1701-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1701.jpeg 1536w\" sizes=\"auto, (max-width: 231px) 100vw, 231px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1739-768x1024.jpeg\" alt=\"\" class=\"wp-image-6394\" width=\"233\" height=\"311\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1739-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1739-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1739-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1739.jpeg 1536w\" sizes=\"auto, (max-width: 233px) 100vw, 233px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong><mark style=\"background-color:#ffffff\" class=\"has-inline-color has-luminous-vivid-orange-color\">VIDEO FUNCIONAMIENTO<\/mark><\/strong><\/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=\"EMPOTRIVIAL\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/sFwHunLwdE0?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: Alejandro Sisla Almorox, \u00c1lvaro Mart\u00edn Mart\u00edn y Miguel \u00c1ngel Moreno Campos INTRODUCCION Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes&#46;&#46;&#46;<\/p>\n","protected":false},"author":81,"featured_media":6437,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-6370","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>EMPOTRIVIAL - Proyectos con Arduino.<\/title>\n<meta name=\"description\" content=\"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos\" \/>\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\/empotrivial\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"EMPOTRIVIAL - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2023-05-04T14:20:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-04T14:22:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"2048\" \/>\n\t<meta property=\"og:image:height\" content=\"1536\" \/>\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=\"16 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"EMPOTRIVIAL\",\"datePublished\":\"2023-05-04T14:20:11+00:00\",\"dateModified\":\"2023-05-04T14:22:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/\"},\"wordCount\":1941,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/05\\\/IMG_1749-1.jpeg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/\",\"name\":\"EMPOTRIVIAL - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/05\\\/IMG_1749-1.jpeg\",\"datePublished\":\"2023-05-04T14:20:11+00:00\",\"dateModified\":\"2023-05-04T14:22:34+00:00\",\"description\":\"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\\\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/05\\\/IMG_1749-1.jpeg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/05\\\/IMG_1749-1.jpeg\",\"width\":2048,\"height\":1536},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/empotrivial\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"EMPOTRIVIAL\"}]},{\"@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":"EMPOTRIVIAL - Proyectos con Arduino.","description":"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos","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\/empotrivial\/","og_locale":"es_ES","og_type":"article","og_title":"EMPOTRIVIAL - Proyectos con Arduino.","og_description":"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2023-05-04T14:20:11+00:00","article_modified_time":"2023-05-04T14:22:34+00:00","og_image":[{"width":2048,"height":1536,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"","Tiempo de lectura":"16 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/"},"author":{"name":"","@id":""},"headline":"EMPOTRIVIAL","datePublished":"2023-05-04T14:20:11+00:00","dateModified":"2023-05-04T14:22:34+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/"},"wordCount":1941,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/","name":"EMPOTRIVIAL - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg","datePublished":"2023-05-04T14:20:11+00:00","dateModified":"2023-05-04T14:22:34+00:00","description":"Empotrivial consiste en la creaci\u00f3n de un juego de preguntas 1vs1, estilo trivial\/preguntados utilizando una placa Arduino UNO y otros componentes electr\u00f3nicos","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/05\/IMG_1749-1.jpeg","width":2048,"height":1536},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/empotrivial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"EMPOTRIVIAL"}]},{"@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\/6370","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\/81"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=6370"}],"version-history":[{"count":9,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/6370\/revisions"}],"predecessor-version":[{"id":6436,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/6370\/revisions\/6436"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/6437"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=6370"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=6370"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=6370"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}