{"id":9780,"date":"2025-12-20T21:29:27","date_gmt":"2025-12-20T20:29:27","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=9780"},"modified":"2025-12-20T21:29:28","modified_gmt":"2025-12-20T20:29:28","slug":"locofon-telefono-bop-it","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/","title":{"rendered":"LOCOF\u00d3N: Tel\u00e9fono bop-it"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"900\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\" alt=\"\" class=\"wp-image-9796\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg 900w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited-300x300.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited-150x150.jpeg 150w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited-768x768.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited-80x80.jpeg 80w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited-320x320.jpeg 320w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n\n\n\n<p>Para este trabajo se ha decidido explotar al m\u00e1ximo la cantidad de componentes que se nos proporciona en el kit y, para ello, se ha tomado la decisi\u00f3n de hacer algo sencillo pero que bien cumple con esto \u00faltimo. El proyecto en cuesti\u00f3n consiste en un juguete que sigue la l\u00f3gica del t\u00edpico <em>\u201cSim\u00f3n Dice\u201d<\/em>; es decir, el juguete pedir\u00e1 diversas tareas que requerir\u00e1n que el usuario interact\u00fae con los componentes en un tiempo l\u00edmite y este, en caso de hacerlo en correcta manera, sumar\u00e1 puntuaci\u00f3n reduciendo el tiempo gradualmente y, en caso contrario, se perder\u00e1 la partida.<\/p>\n\n\n\n<p>As\u00ed pues, y a modo de resumen, el proyecto usa componentes para generar tareas sencillas de entrada y lectura, e incitan al jugador a conseguir la mayor puntuaci\u00f3n posible.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Circuito<\/h2>\n\n\n\n<p>En primer lugar, se dise\u00f1a la electr\u00f3nica en la web \u201cWokWi\u201d con el fin de modificar todo con facilidad y probar c\u00f3digo sin necesidad de montar el circuito en las sesiones de prueba.<\/p>\n\n\n\n<p>As\u00ed pues, y teniendo como objetivo el poder tratar de manera separada cada componente por programaci\u00f3n, se procura dise\u00f1ar distintos circuitos cerrados por cada componente, en lugar de un \u00fanico circuito en serie.&nbsp;<\/p>\n\n\n\n<p>Como se puede apreciar en el diagrama mostrado m\u00e1s abajo, se han utilizado gran cantidad de componentes y, con ellos, la mayor parte de los pines disponibles en la placa. Los componentes utilizados son los siguientes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sensor ultrasonido<\/li>\n\n\n\n<li>Zumbador<\/li>\n\n\n\n<li>LCD I2C<\/li>\n\n\n\n<li>LED RGB (Junto con tres resistencias para evitar excesos de potencia)<\/li>\n\n\n\n<li>x3 Botones<\/li>\n\n\n\n<li>Potenci\u00f3metro<\/li>\n\n\n\n<li>Fotorresistor<\/li>\n\n\n\n<li>Joystick<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"944\" height=\"645\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-40.png\" alt=\"\" class=\"wp-image-9782\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-40.png 944w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-40-300x205.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-40-768x525.png 768w\" sizes=\"auto, (max-width: 944px) 100vw, 944px\" \/><\/figure>\n\n\n\n<p>Una vez dise\u00f1ado y testeado todo digitalmente, se procede a su construcci\u00f3n electr\u00f3nica.<\/p>\n\n\n\n<p>Como se puede observar, por motivos funcionales y con el fin de ajustar el circuito a la carcasa, se tienen diversos cambios con respecto al diagrama inicial. Estos son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Se decide separar los botones y el led en una placa peque\u00f1a separada con el fin de elevar estos para ser accesibles una vez cerrado el prototipo<\/li>\n\n\n\n<li>Se conecta el joystick directamente al arduino UNO para poderlo sacar de la placa protoboard y acercarlo a la pared de la carcasa para que sea accesible por el usuario.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41-1024x576.png\" alt=\"\" class=\"wp-image-9783\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41-1024x576.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41-300x169.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41-768x432.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41-1536x864.png 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-41.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00f3digo<\/h2>\n\n\n\n<p>El c\u00f3digo consiste de de dos funciones principales, setup() y loop(), y cinco funciones secundarias que gestionan las distintas \u00f3rdenes del juego Joystick(), Potenciometro(), Ultrasonic(long d), RGBLed() y LuzSensor().<br>En el <strong>Setup <\/strong>se inicializan los valores de todos los componentes y pines, de las variables necesarias para el juego (tiempoInicioOrden, numComponente, puntuaci\u00f3n\u2026), y se hace la secuencia de inicio del componente, en la cual el lcd muestra preparados..listos..ya!. <br>En cada paso del <strong>Loop<\/strong> se actualizan los valores de todos los pines, se actualiza el temporizador y se muestra por pantalla, se comprueba la condici\u00f3n de victoria, y se comprueba la condici\u00f3n de derrota.<br>En todas las secciones de los componente se utiliza el mismo sistema, que consiste en un \u201csetup\u201d mediante el uso de un booleano que solo se ejecuta una vez por componente, que muestra por pantalla la orden, y en cada componente gestiona la orden, por ejemplo, en los botones y el joystick asigna el n\u00famero aleatorio que decide la orden, y en el potenci\u00f3metro, distingue en qu\u00e9 posici\u00f3n inicia el componente.<br>Tras esto, comprueba en cada paso del loop si se ha cumplido la condici\u00f3n que toque dependiendo de la orden y el componente<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"731\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-43-1024x731.png\" alt=\"\" class=\"wp-image-9797\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-43-1024x731.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-43-300x214.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-43-768x548.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-43.png 1490w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;Wire.h&gt; \n#include &lt;LiquidCrystal_I2C.h&gt;\n\n\/\/Crear el objeto lcd  direcci\u00f3n  0x3F y 16 columnas x 2 filas\nLiquidCrystal_I2C lcd(0x27,16,2);  \/\/\n\n\/\/ Joystick\nconst int pinJoyX = A0;\nconst int pinJoyY = A1;\nint Xvalue = 0;\nint Yvalue = 0;\n\n\/\/ Ultrasonnic sensor\nconst int Trigger = 3;  \nconst int Echo = 2;  \nlong t; \/\/timepo que demora en llegar el eco\nlong d; \/\/distancia en centimetros\n\/\/ Buzzer\nconst int buzzerPin = 10;\n\n\/\/ Potentiometer\nconst int potenPin = A2;\n\n\/\/ RGB buttons\nconst int gButPin = 6;\nconst int bButPin = 5;\nconst int rButPin = 4;\nint bButtonState = 0;\nint rButtonState = 0;\nint gButtonState = 0;\n\nconst int gLedPin = 8;\nconst int bLedPin = 9;\nconst int rLedPin = 7;\n\n\/\/Sensor de luz\nconst int luzPin = A3;\nint luzValue = 0;\n\n\/\/ VARIABLES DEL PROGRAMA\n\n\/\/ Tiempo\nfloat intervaloMax = 7;\nfloat contadorIntervalo = 0;\nfloat loopTime;\nunsigned long tiempoInicioOrden; \/\/ Momento en que comenz\u00f3 la orden actual\nunsigned long intervaloMaxMs = (unsigned long)(intervaloMax * 1000);\nunsigned long currentMillis;\n\/\/ Seleccion de componente\nint numComponente;\n\n\/\/ Gestion del juego\nbool ordenCompletada = false;\nint puntuacion = 0;\nbool hasPerdido = false;\nbool compSetup = true;\nint joyRand = 0;\nbool potVal = true;\nint randRGB;\n\n\n\nvoid setup() {\n  Serial.begin(9600);\n  \/\/LDC\n  \/\/ Inicializar el LCD\n  lcd.init();\n  randomSeed(analogRead(pinJoyX) + millis());\n  \/\/Encender la luz de fondo.\n  lcd.backlight();\n  \/\/Ultrasonic sensor\n  pinMode(Trigger, OUTPUT); \/\/pin como salida\n  pinMode(Echo, INPUT);  \/\/pin como entrada\n\n  \/\/ BUZZER\n  pinMode(buzzerPin, OUTPUT);\n\n  \/\/Botones RGB\n  pinMode(rButPin, INPUT);\n  pinMode(gButPin, INPUT);\n  pinMode(bButPin, INPUT);\n\n  \/\/Led RGB\n  pinMode(rLedPin, OUTPUT);\n  pinMode(gLedPin, OUTPUT);\n  pinMode(bLedPin, OUTPUT);\n\n  \/\/Sensor de luz\n  pinMode(luzPin, INPUT);\n  Serial.begin(9600);\n\n  \n  \/\/hace un sonidito\n  lcd.clear();\n  lcd.print(\"Preparado...\");\n  tone(buzzerPin, 8000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  lcd.print(\"Listo...\");\n  tone(buzzerPin, 8000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  lcd.print(\"Ya!\");\n  tone(buzzerPin, 10000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  \/\/comienza\n  tiempoInicioOrden = millis();\n  numComponente = random(1, 6); \/\/Del 1 al 5. S\u00ed, el 6 no entra\n}\n\nvoid loop() {\n  currentMillis = millis();\n  \/\/ INICIALIZACION DE VALORES DEL COMPONENTE\n  unsigned long startTime = millis();\n  \/\/ Joystick\n  Xvalue = analogRead(pinJoyX);\n  delay(100);            \/\/es necesaria una peque\u00f1a pausa entre lecturas anal\u00f3gicas\n  Yvalue = analogRead(pinJoyY);\n  \/\/ Ultrasonic sensor\n  digitalWrite(Trigger, LOW);\n  delayMicroseconds(2);\n  digitalWrite(Trigger, HIGH);\n  delayMicroseconds(10);          \/\/Enviamos un pulso de 10us\n  digitalWrite(Trigger, LOW);\n  t = pulseIn(Echo, HIGH); \/\/obtenemos el ancho del pulso\n  d = t*.0343\/2;             \/\/escalamos el tiempo a una distancia en cm\n  \/\/BOTONES RGB\n  rButtonState = digitalRead(rButPin);\n  gButtonState = digitalRead(gButPin);\n  bButtonState = digitalRead(bButPin);\n  \/\/SENSOR DE LUZ\n  luzValue = analogRead(luzPin);\n  \/\/Serial.println(luzValue);\n  \/\/MOSTRAR TEMPO\n  lcd.setCursor(14,1);\n  lcd.print(intervaloMaxMs-((currentMillis - tiempoInicioOrden)));\n  lcd.setCursor(1,0);\n  \/\/ INICIALIZACION DE VALORES DEL PROGRAMA\n\n  if(ordenCompletada){\n\n  \/\/ Sonido buzzer correcto\n  tone(buzzerPin, 10000);\n  delay(100);\n  noTone(buzzerPin);\n\n  \/\/ Subir puntos\n  puntuacion++;\n  lcd.clear();\n  lcd.print(\"puntuacion\");\n  lcd.setCursor(12,0);\n  lcd.print(puntuacion);\n  lcd.setCursor(1,0);\n  delay(1000);\n  lcd.clear();\n  \/\/Reducir timepo m\u00e1ximo\n  intervaloMax -= 0.5;\n  intervaloMax = max(1, intervaloMax);\n  intervaloMaxMs = (unsigned long)(intervaloMax * 1000);\n\n  \/\/ Generar nueva orden\n  numComponente = random(1, 6); \/\/Del 1 al 5. S\u00ed, el 6 no entra\n  \/\/ Pasar a siguiente orden\n  ordenCompletada = false;\n  contadorIntervalo = 0;\n  tiempoInicioOrden = millis();\n  currentMillis = millis();\n  compSetup = true;\n  lcd.clear();\n\n  }\n    if(currentMillis - tiempoInicioOrden &gt; intervaloMaxMs || hasPerdido){\n\n    \/\/ PERDER JUEGO\n    digitalWrite(rLedPin, LOW);\n    digitalWrite(gLedPin, LOW);\n    digitalWrite(bLedPin, LOW);\n    lcd.clear();\n    lcd.print(\"has perdido\");\n    lcd.setCursor(0, 1);\n    lcd.print(\"puntuacion\");\n    lcd.setCursor(12,1);\n    lcd.print(puntuacion);\n    lcd.setCursor(1,0);\n    \/\/ Sonido malo\n    tone(buzzerPin, 2000);\n    delay(2000);\n    noTone(buzzerPin);\n    \/\/ Pantalla LCD perdido\n    puntuacion = 0;\n    \/\/ Mostrar puntuacion\n  lcd.clear();\n  lcd.print(\"Reiniciando en\");\n  lcd.setCursor(0,1);\n  lcd.print(\"3\");\n  delay(1000);\n  lcd.setCursor(2,1);\n  lcd.print(\"2\");\n  delay(1000);\n  lcd.setCursor(4,1);\n  lcd.print(\"1\");\n  delay(1000);\n\n\n  lcd.clear();\n  lcd.print(\"Preparado...\");\n  tone(buzzerPin, 8000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  lcd.print(\"Listo...\");\n  tone(buzzerPin, 8000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  lcd.print(\"Ya!\");\n  tone(buzzerPin, 10000);\n  delay(1000);\n  noTone(buzzerPin);\n  lcd.clear();\n  delay(100);\n  \/\/comienza\n  intervaloMax = 7;\n  intervaloMaxMs = (unsigned long)(intervaloMax * 1000);\n  tiempoInicioOrden = millis();\n  numComponente = random(1, 6); \/\/Del 1 al 5. S\u00ed,   el 6 no entra\n\ncompSetup = true;\n  }\n\n    switch(numComponente){\n      case 1: \/\/Joystick\n        \n        JoyStick();\n        \n        break;\n\n      case 2: \/\/Potenciometro\n        \n        Potenciometro();\n\n        break;\n\n      case 3: \/\/Ultrasonidos\n\n        Ultrasonic(d);\n\n        break;\n\n      case 4: \/\/Botones RGB\n        \n        RGBLed();\n        break;\n\n      case 5: \/\/Sensor de luz\n        \n        LuzSensor();\n        break;\n\n    }\n\n\n}\n\nvoid JoyStick(){\n  if(compSetup == true){\n          \/\/ Mostrar texto \n          lcd.print(\"Mueve el joystick\");\n          lcd.setCursor(0, 1);\n          joyRand = random()%4 + 1;\n          switch(joyRand){\n            case 1:\n              lcd.print(\"Arriba\");\n              break;\n            case 2:\n              lcd.print(\"Abajo\");\n              break;\n            case 3:\n              lcd.print(\"Derecha\");\n              break;\n            case 4:\n              lcd.print(\"Izquierda\");\n              break;\n            default:\n              break;\n          }\n        }\n  Serial.print(Xvalue);\n  Serial.println(Yvalue);\n  switch(joyRand){\n    case 1:\n      if(Xvalue &lt; 100){\n        ordenCompletada = true;\n      }\n      break;\n    case 2:\n      if(Xvalue &gt; 900){\n        ordenCompletada = true;\n      }\n      break;\n    case 3:\n      if(Yvalue &lt; 100){\n        ordenCompletada = true;\n      }\n      break;\n    case 4:\n      if(Yvalue &gt; 900){\n        ordenCompletada = true;\n      }\n      break;\n  }\n  compSetup = false;\n}\n  \nvoid Potenciometro(){\n  if(compSetup == true){\n    lcd.print(\"Volumen\");\n    if(analogRead(potenPin) &gt; 500){\n      potVal = true;\n    } else {\n      potVal = false;\n    }\n  }\n  Serial.print(potVal);\n  if(potVal){\n    if(analogRead(potenPin) &lt; 100){\n      ordenCompletada = true;\n    }\n  } else {\n    if(analogRead(potenPin) &gt; 900){\n      ordenCompletada = true;\n    }\n  }\n\n  compSetup = false;\n}\n\n\nvoid Ultrasonic(long d){\n    if(compSetup == true){\n      lcd.print(\"Distancia\");\n    }\n    Serial.println(d);\n    if(d&lt;20 &amp;&amp; d&gt;15){\n      ordenCompletada = true;\n    }\n    compSetup=false;\n  }\n\nvoid RGBLed(){\n  if(compSetup == true){\n      lcd.print(\"Botones\");\n        randRGB = random()%3 + 1;\n        switch(randRGB){\n            case 1:\n              digitalWrite(rLedPin, HIGH);\n              break;\n            case 2:\n              digitalWrite(gLedPin, HIGH);\n              break;\n            case 3:\n              digitalWrite(bLedPin, HIGH);\n              break;\n            default:\n              break;\n          }\n        \n      }\n    switch(randRGB){\n            case 1:\n              if(rButtonState == HIGH){\n                  ordenCompletada = true;\n                  digitalWrite(rLedPin, LOW);\n              }\n              break;\n            case 2:\n              if(gButtonState == HIGH){\n                  ordenCompletada = true;\n                  digitalWrite(gLedPin, LOW);\n              }\n              break;\n            case 3:\n              if(bButtonState == HIGH){\n                  ordenCompletada = true;\n                  digitalWrite(bLedPin, LOW);\n              }\n              break;\n            default:\n              break;\n          }\n    compSetup=false;\n}\n\nvoid LuzSensor(){\n  if(compSetup == true){\n      lcd.print(\"Sensor de luz\");\n    }\n  Serial.println(luzValue);\n  if(luzValue &gt; 200){\n    ordenCompletada = true;\n  }\n  compSetup=false;\n}\n\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Empotrado<\/h2>\n\n\n\n<p>A la hora de hacer el empotrado, se comenz\u00f3 haciendo varios bocetos hasta encontrar la idea final para el dise\u00f1o.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"806\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8-1024x806.jpeg\" alt=\"\" class=\"wp-image-9784\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8-1024x806.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8-300x236.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8-768x605.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8-1536x1210.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-8.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"693\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9-1024x693.jpeg\" alt=\"\" class=\"wp-image-9785\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9-1024x693.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9-300x203.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9-768x520.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9-1536x1040.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-9.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><br>Finalmente, teniendo en cuenta el tama\u00f1o de los componentes, que obligaba a que el prototipo fuese de un tama\u00f1o medianamente grande o alargado, y sabiendo que el p\u00fablico objetivo principal ser\u00edan ni\u00f1os, se decidi\u00f3 tomar un dise\u00f1o que fuese divertido y a la vez compacto.<br>Para ello, seg\u00fan la colocaci\u00f3n de los componentes pensada, el conector de la pila tendr\u00eda que sobresalir por arriba, lo que pod\u00eda asimilarse con la antena de un tel\u00e9fono antiguo. De este modo, la idea final acab\u00f3 siendo que la tem\u00e1tica del juego fuese la interacci\u00f3n con los componentes del arduino como si de los botones de un tel\u00e9fono se tratase.<br>As\u00ed pues, se realiz\u00f3 un sketch final del prototipo del tel\u00e9fono, con la colocaci\u00f3n de los componentes y las medidas tomadas para posteriormente ser modelado.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"767\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10-1024x767.jpeg\" alt=\"\" class=\"wp-image-9786\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10-1024x767.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10-300x225.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10-768x576.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10-1536x1151.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-10.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Para el modelado en 3D del prototipo se utiliz\u00f3 la aplicaci\u00f3n <em>Blender<\/em>. A pesar de que puede que no sea el mejor programa de modelado 3D para hacer piezas, es el que mejor controlamos y m\u00e1s f\u00e1cil nos resulta.&nbsp;<\/p>\n\n\n\n<p>Activando ciertas opciones dentro del programa, se pueden ver las medidas del modelo, por lo que es muy \u00fatil a la hora de ser algo m\u00e1s precisos, adem\u00e1s de modificar el grosor de todas las paredes a la vez del modelo seg\u00fan se necesite, sin tener que ir cara a cara cambiando la medidas. Como se puede observar, el modelo contiene todos los espacios abiertos, de diferentes formas y tama\u00f1os, para los distintos componentes, y la forma da como resultado un tel\u00e9fono antiguo, que cumple con el objetivo est\u00e9tico del empotrado.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"938\" height=\"568\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-42.png\" alt=\"\" class=\"wp-image-9787\" style=\"aspect-ratio:1.6514263706638057;width:918px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-42.png 938w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-42-300x182.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-42-768x465.png 768w\" sizes=\"auto, (max-width: 938px) 100vw, 938px\" \/><\/figure>\n\n\n\n<p>El resultado final del empotrado es el siguiente:<br>Como se puede observar, a pesar de las complicaciones t\u00e9cnicas, presupuestarias y de dise\u00f1o, se consigue un acabado funcional y bastante compacto, al que posteriormente se a\u00f1aden decoraciones con pintura con el fin de acercar el prototipo en mayor medida a la est\u00e9tica deseada como es la de un tel\u00e9fono antiguo.<br><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"900\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited.jpeg\" alt=\"\" class=\"wp-image-9789\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited.jpeg 1600w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited-300x169.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited-1024x576.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited-768x432.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-11-edited-1536x864.jpeg 1536w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14-1024x576.jpeg\" alt=\"\" class=\"wp-image-9792\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14-1024x576.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14-300x169.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14-768x432.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14-1536x864.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-14.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15-1024x576.jpeg\" alt=\"\" class=\"wp-image-9793\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15-1024x576.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15-300x169.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15-768x432.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15-1536x864.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-15.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Costes de los materiales<\/h2>\n\n\n\n<p>Haciendo un c\u00e1lculo estimado de los costes del empotrado, se comprueba que el precio estimado ha de estar entre 40 y 50 euros, dependiendo del lugar donde se obtengan los componentes.<\/p>\n\n\n\n<p>No obstante, los gastos personales han sido m\u00ednimos, pues adem\u00e1s de todos los componentes ofrecidos por el centro, los que se han empleado de manera externa han sido cedidos por conocidos que trabajan con este tipo de tecnolog\u00edas. Incluso en cuanto a la impresi\u00f3n, se ha contado con la ayuda de la asociaci\u00f3n universitaria \u201cLa Caverna del Drag\u00f3n\u201d, que han permitido el uso de su impresora 3D.<\/p>\n\n\n\n<p>El \u00fanico gasto real ha sido para adquirir la pila que alimenta el prototipo.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>COMPONENTE<\/td><td>PRECIO<\/td><\/tr><tr><td>Microcontrolador Elegoo Uno R3 x1<\/td><td>6,00\u20ac<\/td><\/tr><tr><td>830-Tie Points Breadboard x1&nbsp;<\/td><td>3,50\u20ac<\/td><\/tr><tr><td>Mini Breadboard x1<\/td><td>1,09\u20ac<\/td><\/tr><tr><td>Joystick x1<\/td><td>4,89\u20ac<\/td><\/tr><tr><td>Ultrasonic Sensor x1<\/td><td>1,40\u20ac<\/td><\/tr><tr><td>Buzzer x1<\/td><td>0,90\u20ac<\/td><\/tr><tr><td>LCD1602 x1<\/td><td>5,99\u20ac<\/td><\/tr><tr><td>I2C x1<\/td><td>5,00\u20ac<\/td><\/tr><tr><td>RGB Led x1<\/td><td>0,10\u20ac<\/td><\/tr><tr><td>Fotoresistor x1<\/td><td>1,10\u20ac<\/td><\/tr><tr><td>Botones x3<\/td><td>0,69\u20ac<\/td><\/tr><tr><td>Potenci\u00f3metro x1<\/td><td>0,70\u20ac<\/td><\/tr><tr><td>Jumpers Macho-Macho x20<\/td><td>0,90\u20ac<\/td><\/tr><tr><td>Jumpers Macho-Hembra x5<\/td><td>0,23\u20ac<\/td><\/tr><tr><td>Resistencias x3<\/td><td>0,06\u20ac<\/td><\/tr><tr><td>Pila 9V x1<\/td><td>2,30\u20ac<\/td><\/tr><tr><td>Conector de pila x1<\/td><td>1,50\u20ac<\/td><\/tr><tr><td>Filamento de impresi\u00f3n x1<\/td><td>10,00\u20ac<\/td><\/tr><tr><td>TOTAL<\/td><td>46,35\u20ac<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Casos de uso<\/h2>\n\n\n\n<p>El sistema desarrollado presenta un juego, parecido al cl\u00e1sico \u201cBop-it\u201d, donde el juguete manda una instrucci\u00f3n que el jugador debe realizar antes de que se acabe un l\u00edmite de tiempo. Estas instrucciones se presentan en la pantalla LCD. A continuaci\u00f3n, se describen los principales casos de uso del sistema:<\/p>\n\n\n\n<p>Caso de uso 1: Inicio de partida<br>El usuario enciende el dispositivo conectando la fuente el\u00e9ctrica. Tras ello, el LCD se encender\u00e1 y se iniciar\u00e1 una cuenta atr\u00e1s para que el jugador se prepare para comenzar el juego.<\/p>\n\n\n\n<p>Caso de uso 2: Generaci\u00f3n de orden aleatoria <br>Una vez iniciada la partida, el sistema selecciona de manera aleatoria uno de los componentes disponibles (botones, joystick, potenci\u00f3metro, sensor de luz, sensor ultras\u00f3nico o LED RGB). Esta selecci\u00f3n decide cual es la tarea que el usuario deber\u00e1 realizar a continuaci\u00f3n para seguir jugando.<\/p>\n\n\n\n<p>Caso de uso 3: Interacci\u00f3n mediante botones<br>El sistema solicita al usuario pulsar el bot\u00f3n del color concreto entre los disponibles (rojo, azul y verde). En el LCD mostrar\u00e1 la instrucci\u00f3n y el color ser\u00e1 indicado por el color del LED debajo de los botones. El jugador debe identificar y presionar el bot\u00f3n correcto.<\/p>\n\n\n\n<p>Caso de uso 4: Interacci\u00f3n mediante joystick<br>El juego pide al usuario mover el joystick en una direcci\u00f3n espec\u00edfica (arriba, abajo, izquierda o derecha). Se comprueba continuamente la posici\u00f3n del joystick hasta que el jugador lo mueve en la direcci\u00f3n adecuada.<\/p>\n\n\n\n<p>Caso de uso 5: Interacci\u00f3n mediante potenci\u00f3metro<br>El sistema solicita al usuario modificar la posici\u00f3n del potenci\u00f3metro, el cual simboliza una rueda de volumen con la est\u00e9tica y tem\u00e1tica del tel\u00e9fono. El movimiento deber\u00e1 ser de un extremo a otro, dependiendo de donde se haya quedado en la acci\u00f3n anterior.<\/p>\n\n\n\n<p>Caso de uso 6: Interacci\u00f3n mediante sensor ultras\u00f3nico<br>El sistema requiere que el usuario acerque o aleje la mano del sensor ultras\u00f3nico hasta alcanzar una distancia determinada. El sistema mide la distancia detectada y lo dar\u00e1 como v\u00e1lido cuando sea la distancia justa.<\/p>\n\n\n\n<p>Caso de uso 7: Interacci\u00f3n mediante sensor de luz<br>El sistema pide al usuario tapar el agujero del modelo 3D donde se ubica el fotorresistor, provocando que entre menos luz. El sistema eval\u00faa el cambio de luminosidad para determinar si la orden ha sido cumplida correctamente.<\/p>\n\n\n\n<p>Caso de uso 8: Acierto de la orden<br>Si el usuario cumple correctamente la orden que se le pide dentro del tiempo l\u00edmite, el sistema incrementa la puntuaci\u00f3n. Adem\u00e1s, se ir\u00e1 reduciendo ligeramente el tiempo disponible para la siguiente orden para aumentar progresivamente la dificultad del juego, hasta llegar a un tiempo l\u00edmite de 2 segundos para realizar cada tarea.<\/p>\n\n\n\n<p>Caso de uso 9: Error o agotamiento del tiempo<br>Si el usuario no realiza la acci\u00f3n correcta en el tiempo l\u00edmite, el sistema considera la partida como perdida. Se muestra el resultado final en el LCD y el juego se reinicia, dando unos segundos al jugador para que asimile la derrota y vuelva a prepararse para la siguiente partida.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Demostraci\u00f3n de uso<\/h2>\n\n\n\n<p>La demostraci\u00f3n del uso se encuentra en el siguiente enlace de drive:<\/p>\n\n\n\n<p><a href=\"https:\/\/drive.google.com\/file\/d\/1BbAeavCJIsj8CynCcXDfWkleBtfgeoXS\/view?usp=sharing\">https:\/\/drive.google.com\/file\/d\/1BbAeavCJIsj8CynCcXDfWkleBtfgeoXS\/view?usp=sharing<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Para este trabajo se ha decidido explotar al m\u00e1ximo la cantidad de componentes que se nos proporciona en el kit y, para ello, se ha tomado la decisi\u00f3n de hacer algo sencillo pero que&#46;&#46;&#46;<\/p>\n","protected":false},"author":310,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-9780","post","type-post","status-publish","format-standard","hentry","category-proyectos"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>LOCOF\u00d3N: Tel\u00e9fono bop-it - 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\/locofon-telefono-bop-it\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LOCOF\u00d3N: Tel\u00e9fono bop-it - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Para este trabajo se ha decidido explotar al m\u00e1ximo la cantidad de componentes que se nos proporciona en el kit y, para ello, se ha tomado la decisi\u00f3n de hacer algo sencillo pero que&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-20T20:29:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-20T20:29:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"dse2526g13\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"dse2526g13\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 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\\\/locofon-telefono-bop-it\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/\"},\"author\":{\"name\":\"dse2526g13\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/cee3675fcf069c41241ccb9456cf6333\"},\"headline\":\"LOCOF\u00d3N: Tel\u00e9fono bop-it\",\"datePublished\":\"2025-12-20T20:29:27+00:00\",\"dateModified\":\"2025-12-20T20:29:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/\"},\"wordCount\":1687,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/\",\"name\":\"LOCOF\u00d3N: Tel\u00e9fono bop-it - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\",\"datePublished\":\"2025-12-20T20:29:27+00:00\",\"dateModified\":\"2025-12-20T20:29:28+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg\",\"width\":900,\"height\":900},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/locofon-telefono-bop-it\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"LOCOF\u00d3N: Tel\u00e9fono bop-it\"}]},{\"@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\\\/cee3675fcf069c41241ccb9456cf6333\",\"name\":\"dse2526g13\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g\",\"caption\":\"dse2526g13\"},\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/dse2526g13\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"LOCOF\u00d3N: Tel\u00e9fono bop-it - 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\/locofon-telefono-bop-it\/","og_locale":"es_ES","og_type":"article","og_title":"LOCOF\u00d3N: Tel\u00e9fono bop-it - Proyectos con Arduino.","og_description":"Para este trabajo se ha decidido explotar al m\u00e1ximo la cantidad de componentes que se nos proporciona en el kit y, para ello, se ha tomado la decisi\u00f3n de hacer algo sencillo pero que&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2025-12-20T20:29:27+00:00","article_modified_time":"2025-12-20T20:29:28+00:00","og_image":[{"width":900,"height":900,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg","type":"image\/jpeg"}],"author":"dse2526g13","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"dse2526g13","Tiempo de lectura":"13 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/"},"author":{"name":"dse2526g13","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/cee3675fcf069c41241ccb9456cf6333"},"headline":"LOCOF\u00d3N: Tel\u00e9fono bop-it","datePublished":"2025-12-20T20:29:27+00:00","dateModified":"2025-12-20T20:29:28+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/"},"wordCount":1687,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/","name":"LOCOF\u00d3N: Tel\u00e9fono bop-it - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg","datePublished":"2025-12-20T20:29:27+00:00","dateModified":"2025-12-20T20:29:28+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/WhatsApp-Image-2025-12-20-at-14.18.18-edited.jpeg","width":900,"height":900},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/locofon-telefono-bop-it\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"LOCOF\u00d3N: Tel\u00e9fono bop-it"}]},{"@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\/cee3675fcf069c41241ccb9456cf6333","name":"dse2526g13","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/091877f3aa3289263a1351b6cb825b8003e96f51736df29fb79a1d04afaad819?s=96&d=mm&r=g","caption":"dse2526g13"},"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/dse2526g13\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9780","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\/310"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=9780"}],"version-history":[{"count":3,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9780\/revisions"}],"predecessor-version":[{"id":9835,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9780\/revisions\/9835"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=9780"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=9780"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=9780"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}