{"id":3940,"date":"2021-05-17T17:29:45","date_gmt":"2021-05-17T17:29:45","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=3940"},"modified":"2021-05-17T18:10:44","modified_gmt":"2021-05-17T18:10:44","slug":"roombakar","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/","title":{"rendered":"ROOMBAKAR"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Autores<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Santiago Rivas Mart\u00edn<\/li><li>\u00c1lvaro Lafarga Garc\u00eda<\/li><li>Juan de la Torre Melero<\/li><li>Fernando Rubio Moreno<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Objetivo<\/h2>\n\n\n\n<p>Nuestro proyecto final de de la asignatura de SEyTR, es el Roombakar, es un coche aut\u00f3nomo fabricado a partir de un Arduino Uno, cart\u00f3n para el chasis, un par de ruedas, motores, tanto para las ruedas como para el aspirador, sensores de ultrasonidos, un servo y muchos cables.<\/p>\n\n\n\n<p>La funcionalidad del mismo, es localizar obst\u00e1culos con un sensor de ultrasonidos para as\u00ed poder evitarlos y tomar una ruta alternativa que le permita seguir avanzando mientras aspira con una manguera. Adem\u00e1s,&nbsp; hicimos que el Roombakar emitiera sonidos cuando detectaba un objeto delante.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"563\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png\" alt=\"\" class=\"wp-image-3941\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-300x165.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-768x422.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1.png 1052w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Materiales<\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">Material<\/td><td class=\"has-text-align-center\" data-align=\"center\">Cantidad<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Arduino UNO<\/td><td class=\"has-text-align-center\" data-align=\"center\">2<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Componente de ultrasonido<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Fuente de alimentaci\u00f3n USB tipo C<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Arduino Sensor Shield<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Motor Drive Controller Board Module L298N<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Buzzer\/Speaker<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Resistencia 550 \u03a9<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Componentes empleados para el chasis (cart\u00f3n, material reciclado..)<\/td><td class=\"has-text-align-center\" data-align=\"center\">***<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Interruptor<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">9V  Battery<br>Modulo 4 bater\u00edas (1.5V)<\/td><td class=\"has-text-align-center\" data-align=\"center\">1<br>1<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Motores Makeblock 6V 200rpm<\/td><td class=\"has-text-align-center\" data-align=\"center\">2<\/td><td><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">CABLES PROTOBOARD M-M 65<\/td><td class=\"has-text-align-center\" data-align=\"center\">25<\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Planificaci\u00f3n y reparto de tareas<\/h2>\n\n\n\n<p>A lo largo de la asignatura se han realizado entorno a 5 sesiones de trabajo destinadas a la b\u00fasqueda de materiales y al propio desarrollo del proyecto. Debido a las restricciones horarias, nos hemos visto obligados a reducir estas reuniones y trabajar tambien de forma remota en el proyecto. Por lo que las tareas quedaron repartidas de la siguiente forma:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>En base al servomotor y el zumbador el trabajo lo realizaron \u00c1lvaro Lafarga Garc\u00eda y Juan de la la Torre Melero<\/li><li>El sistema formado por los motores del propio veh\u00edculo junto al sistema de recogida form\u00f3 parte del trabajo realizado por Santiago Rivas Mart\u00edn y Fernando Rubio Moreno<\/li><\/ul>\n\n\n\n<p>Una vez el grupo dispon\u00eda de los materiales necesarios nos reunimos para realizar el ensamblado y poner a prueba el proyecto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Explicaci\u00f3n del c\u00f3digo<\/h2>\n\n\n\n<p>En cuanto al c\u00f3digo, vemos que predomina la simplicidad.<\/p>\n\n\n\n<p>Cuenta con 8 subprogramas, adem\u00e1s del loop() y del setup(),<\/p>\n\n\n\n<p>Podemos dividirlos en 2 tipos, los que est\u00e1n relacionados con los motores, y los que est\u00e1n relacionados con el servo y el sensor.<\/p>\n\n\n\n<p>Los del servo y sensor, son 3, leer(), que devuelve el valor medido por el sonar, medida en cent\u00edmetros, y pone un valor est\u00e1ndar si la distancia es muy grande y no detecta nada el sensor.<\/p>\n\n\n\n<p>Los otros 2 m\u00e9todos orientan el servo hacia la izquierda o la derecha y llaman a leer() para conseguir el valor.<\/p>\n\n\n\n<p>Los otros 5, relacionados con el movimiento de los motores tambi\u00e9n son muy sencillos, tenemos un m\u00e9todo llamado parada(), que como su nombre indica, para el coche, pero adem\u00e1s, como funcionalidad extra, reutilizamos el circuito de la primera pr\u00e1ctica para hacer que cuando sea llamado este m\u00e9todo, que haga un pitido. Los subprogramas continuar() y atras(), ponen en HIGH los pines que controlan el movimiento de los motores en cada orientaci\u00f3n haciendo que giren hacia delante y hacia detras respectivamente. Los 2 restantes,&nbsp; giro_derecha() y giro_izquierda(), son para girar, haciendo que el Roombakar gire sobre s\u00ed mismo, hacia uno de los 2 lados, con un delay de 300ms para rotar en torno a 90\u00ba sobre la posici\u00f3n original y despu\u00e9s haciendo que las ruedas giren hacia delante otra vez, pero con su nueva orientaci\u00f3n.<\/p>\n\n\n\n<p>Finalmente, en setup(), configuramos los pines de salida, orientamos el servo hacia delante, y leemos los valores de distancia iniciales para estar seguros que no hay obst\u00e1culos delante.<\/p>\n\n\n\n<p>En loop(), ajustamos valores iniciales, y constantemente, checkeamos la distancia a la que se encuentra el obst\u00e1culo, y llamamos a los m\u00e9todos anteriormente descritos, para parar el coche y reproducir un pitido que avisa que hemos encontrado un objeto, y mirar cual de los 2 lados est\u00e1 m\u00e1s despejado de obst\u00e1culos y elegir ese, en caso de que la distancia actual sea menor que 25.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;Servo.h&gt;          \/\/Libreria servomotor\r\n#include &lt;NewPing.h&gt;        \/\/Libreria sensor ultrasonidos. Descaragada\r\n#include &lt;TimerFreeTone.h&gt;  \/\/Libreria para el uso de zumbador. Descaragada\r\n\r\n\r\n\r\n\/\/L298N pines de control\r\nconst int MotorIzqDelante = 4;\r\nconst int MotorIzqDetras = 5;\r\nconst int MotorDerDelante = 3;\r\nconst int MotorDerDetras = 2;\r\n\r\n\r\n\/\/Pines del sensor\r\n#define trig_pin A1\r\n#define echo_pin A3\r\n\r\n#define maximum_distance 450\r\n\r\nboolean continua_hacia_delante = false;\r\nint dist = 100;\r\nNewPing sonar(trig_pin, echo_pin, maximum_distance);\r\nServo servo_motor;\r\n\r\n\/\/Zumbador\r\n#define TONE_PIN 8\r\nint melodia&#091;] = {900};\r\nint duracion&#091;] = {250};\r\n\r\n\r\nvoid setup() {\r\n  pinMode(MotorIzqDelante, OUTPUT);\r\n  pinMode(MotorIzqDetras, OUTPUT);\r\n  pinMode(MotorDerDelante, OUTPUT);\r\n  pinMode(MotorDerDetras, OUTPUT);\r\n  pinMode(TONE_PIN, OUTPUT);\r\n  servo_motor.attach(12);\r\n  \/\/Orientarlo hacia delante\r\n  servo_motor.write(90);\r\n  delay(2000);\r\n  dist = leer();\r\n  delay(100);\r\n  dist = leer();\r\n  delay(100);\r\n  dist = leer();\r\n  delay(100);\r\n  dist = leer();\r\n  delay(100);\r\n  \/\/Leer valores distancia\r\n}\r\n\r\nvoid loop() {\r\n  \/\/distancia a la derecha\r\n  int distDer = 0;\r\n  \/\/distancia a la izquierda\r\n  int distIzq = 0;\r\n  delay(50);\r\n  \/\/distancia a la que se encuentra el objeto\r\n  if (dist &lt;= 25) {\r\n    parada();\r\n    delay(300);\r\n    atras();\r\n    delay(400);\r\n    parada();\r\n    delay(300);\r\n    distDer = miraDerecha();\r\n    delay(300);\r\n    distIzq = miraIzquierda();\r\n    delay(300);\r\n    \/\/si puede girar a derecha\r\n    if (dist &gt;= distIzq) {\r\n      giro_derecha();\r\n      parada();\r\n    }\r\n    \/\/si no, gira izquierda\r\n    else {\r\n      giro_izquierda();\r\n      parada();\r\n    }\r\n  }\r\n  \/\/si la distancia al objeto es mayor\r\n  else {\r\n    continuar();\r\n  }\r\n  dist = leer();\r\n}\r\n\r\nvoid parada() {\r\n  digitalWrite(MotorIzqDetras, LOW);\r\n  digitalWrite(MotorIzqDelante, LOW);\r\n  digitalWrite(MotorDerDelante, LOW);\r\n  digitalWrite(MotorDerDetras, LOW);\r\n  \/\/Hacemos sonar el zumbador al detectar algo\r\n  TimerFreeTone(TONE_PIN, melodia&#091;0], duracion&#091;0]);\r\n  delay(50);\r\n}\r\n\r\nvoid continuar() {\r\n  if (!continua_hacia_delante) {\r\n    continua_hacia_delante = true;\r\n    digitalWrite(MotorIzqDelante, HIGH);\r\n    digitalWrite(MotorDerDelante, HIGH);\r\n    digitalWrite(MotorIzqDetras, LOW);\r\n    digitalWrite(MotorDerDetras, LOW);\r\n  }\r\n}\r\n\r\nvoid atras() {\r\n  continua_hacia_delante = false;\r\n  digitalWrite(MotorIzqDetras, HIGH);\r\n  digitalWrite(MotorDerDetras, HIGH);\r\n  digitalWrite(MotorIzqDelante, LOW);\r\n  digitalWrite(MotorDerDelante, LOW);\r\n}\r\n\r\nvoid giro_derecha() {\r\n  \/\/rotar sobre si mismo\r\n  digitalWrite(MotorIzqDelante, HIGH);\r\n  digitalWrite(MotorDerDetras, HIGH);\r\n  digitalWrite(MotorIzqDetras, LOW);\r\n  digitalWrite(MotorDerDelante, LOW);\r\n  delay(300);\r\n  \/\/continuar hacia delante\r\n  digitalWrite(MotorIzqDelante, HIGH);\r\n  digitalWrite(MotorDerDelante, HIGH);\r\n  digitalWrite(MotorIzqDetras, LOW);\r\n  digitalWrite(MotorDerDetras, LOW);\r\n}\r\n\r\nvoid giro_izquierda() {\r\n  \/\/rotar sobre si mismo\r\n  digitalWrite(MotorIzqDetras, HIGH);\r\n  digitalWrite(MotorDerDelante, HIGH);\r\n  digitalWrite(MotorIzqDelante, LOW);\r\n  digitalWrite(MotorDerDetras, LOW);\r\n  delay(300);\r\n  \/\/continuar hacia delante\r\n  digitalWrite(MotorIzqDelante, HIGH);\r\n  digitalWrite(MotorDerDelante, HIGH);\r\n  digitalWrite(MotorIzqDetras, LOW);\r\n  digitalWrite(MotorDerDetras, LOW);\r\n}\r\n\r\nint miraDerecha() {\r\n  \/\/giramos sensor hacia la derecha\r\n  servo_motor.write(10);\r\n  delay(500);\r\n  int dist = leer();\r\n  delay(100);\r\n  servo_motor.write(90);\r\n  return dist;\r\n}\r\n\r\nint miraIzquierda() {\r\n  \/\/giramos sensor hacia la izquierda\r\n  servo_motor.write(170);\r\n  delay(500);\r\n  int dist = leer();\r\n  delay(100);\r\n  servo_motor.write(90);\r\n  return dist;\r\n  delay(100);\r\n}\r\n\r\nint leer() {\r\n  delay(70);\r\n  int cm = sonar.ping_cm();\r\n  if (cm == 0) {\r\n    \/\/si la distancia al objeto es mayor que lo que lee\r\n    \/\/ponemos una distancia estandar\r\n    cm = 250;\r\n  }\r\n  return cm;\r\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Montaje del proyecto<\/h2>\n\n\n\n<p>El proyecto est\u00e1 formado por una carcasa la cual hemos fabricado a partir de cart\u00f3n y componentes de plastico reutilizados. El Arduino junto al resto de componentes vendr\u00eda dentro de la caja entregada a principio de la asignatura o comprado mas tarde por el grupo de trabajo.<\/p>\n\n\n\n<p>Se compone de un servomotor se conecta a un lector de ultrasonidos el cual nos permite reconocer el entorno, no es perfecto ya que necesit\u00e1bamos hacer modificaciones en el sistema para que el arco del servomotor no llegara a identificar al propio veh\u00edculo como obst\u00e1culo.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignright size-large is-resized\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2.jpeg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2-768x1024.jpeg\" alt=\"\" class=\"wp-image-3971\" width=\"340\" height=\"453\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.28-2.jpeg 1536w\" sizes=\"auto, (max-width: 340px) 100vw, 340px\" \/><\/a><\/figure><\/div>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2.jpeg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2-768x1024.jpeg\" alt=\"\" class=\"wp-image-3970\" width=\"343\" height=\"458\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/WhatsApp-Image-2021-05-13-at-14.53.29-2.jpeg 1536w\" sizes=\"auto, (max-width: 343px) 100vw, 343px\" \/><\/a><\/figure>\n\n\n\n<p>Implementado el circuito y ya puesto a prueba, tanto motores como sensor de ultrasonidos, decidimos a\u00f1adir un zumbador para incluirle un sonido al detectar con el sensor un obst\u00e1culo. Este est\u00e1 conectado a GND y comparte la se\u00f1al del sensor de ultrasonidos (La conexiones se muestran en la segunda fotograf\u00eda, donde el lector de ultrasonidos ocupa el pin 8 y el zumbador el pin 9), tambi\u00e9n se le ha a\u00f1adido a esa parte del circuito una resistencia de 550 ohmios como incluimos en la Practica obligatoria entregada anteriormente en la asignatura.<\/p>\n\n\n\n<p>A partir de aqu\u00ed, en la misma proto placa conectaremos la bater\u00eda y las entradas del motor y concluimos conectandola bater\u00eda externa a la placa de Arduino<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/esta.jpeg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/esta-768x1024.jpeg\" alt=\"\" class=\"wp-image-4116\" width=\"342\" height=\"456\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/esta-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/esta-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/esta-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/esta.jpeg 1200w\" sizes=\"auto, (max-width: 342px) 100vw, 342px\" \/><\/a><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Problemas y soluciones<\/h2>\n\n\n\n<p>Uno de los principales problemas que hemos tenido, es el funcionamiento de las ruedas.<\/p>\n\n\n\n<p>Al contar solamente con 2 motores, el peso del chasis hacia que se redujera su velocidad notablemente. Tambi\u00e9n, hemos notado que algunas veces, en el lateral m\u00e1s pesado, la rueda no giraba del todo bien, haciendo que o bien gire sobre s\u00ed mismo o gire m\u00e1s hacia ese lado.<\/p>\n\n\n\n<p>En cuanto a la otra rueda, la que no lleva motor, hemos notado tambi\u00e9n, que no se pone recta despu\u00e9s de hacer giros, haciendo que cuando vuelva a ir en l\u00ednea recta, la trayectoria del Roombakar sea orientada hacia ese lado.<\/p>\n\n\n\n<p>Otro de los problemas que hemos tenido, no tiene que ver con la parte Hardware, si no con el Software, y Arduino.<\/p>\n\n\n\n<p>En nuestro caso, hicimos que el Roombakar emitiera sonidos cuando detectaba un objeto delante. Al parecer, al contar con un sensor de ultrasonidos, el c\u00f3digo usaba un Timer para controlar el valor medido, y cuando inclu\u00edmos el zumbador, al realizar la operaci\u00f3n <em>tone()<\/em>, nos saltaba un fallo por que al parecer, tone usa el mismo Timer y no es compatible el uso con el mismo Timer.&nbsp;La soluci\u00f3n, despu\u00e9s de buscar y leer informaci\u00f3n relativa a este fallo, en los foros de Arduino, encontramos una soluci\u00f3n en la que una persona que realiz\u00f3 una librer\u00eda para hacer la operaci\u00f3n <em>tone()<\/em>, pero, sin el uso de Timers, por lo que descarg\u00e1ndola y a\u00f1adi\u00e9ndola mediante .ZIP pudimos implementar dicha funcionalidad.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Adem\u00e1s de estos problemas, tambi\u00e9n llegamos a implementar la idea de reducir&nbsp; la velocidad del motor para que el Roombakar pudiese recoger la basura mejor, sin embargo, acabamos descartando esta opci\u00f3n ya que cuando le pusimos la botella y la bater\u00eda externa para que funcionase, esto objetos produjeron un peso extra que daba a lugar a que ya fuera a una velocidad deseada y no tuviese problemas al limpiar&nbsp;<\/p>\n\n\n\n<p>Pese a esto, dejamos por aqu\u00ed el c\u00f3digo y una explicaci\u00f3n de esta funcionalidad por si alguien en el futuro quisiera utilizarla. Este c\u00f3digo habr\u00eda que a\u00f1adirlo al que ya est\u00e1 para su correcto funcionamiento.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ENA y ENB para controlar la velocidad de los motores\nconst int ENA = 13;\nconst int ENB = 11;\npinMode(ENA, OUTPUT);\npinMode(ENB, OUTPUT);\n\nvoid parada() {\n  analogWrite(ENA, 0);\n  analogWrite(ENB, 0);\n}\nvoid continuar() {\n    analogWrite(ENA, 120);\n    analogWrite(ENB, 120);\n  }\n}\n\nvoid atras() {\n  analogWrite(ENA, 120);\n  analogWrite(ENB, 120);\n}\n\nvoid giro_derecha() {\n  analogWrite(ENA, 120);\n  analogWrite(ENB, 0);\n  delay(500);\n  analogWrite(ENA, 120);\n  analogWrite(ENB, 120);\n}\n\nvoid giro_izquierda() {\n  analogWrite(ENA, 0);\n  analogWrite(ENB, 120);\n  delay(500);\n  analogWrite(ENA, 120);\n  analogWrite(ENB, 120);\n}\n<\/code><\/pre>\n\n\n\n<p>Esta implementaci\u00f3n b\u00e1sicamente consiste en ponerle un ENB y ENA los cuales determinar\u00e1n a qu\u00e9 velocidad girar\u00e1 nuestras ruedas. Es por esto que nos ayudaremos del analogWrite para meterle un valor exacto en vez de un valor m\u00e1ximo o m\u00ednimo como High o Low.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"video-container\"><iframe loading=\"lazy\" title=\"Roombakar Grupo6 - URJC 2020\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/ophpkZS0UdQ?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 Santiago Rivas Mart\u00edn \u00c1lvaro Lafarga Garc\u00eda Juan de la Torre Melero Fernando Rubio Moreno Objetivo Nuestro proyecto final de de la asignatura de SEyTR, es el Roombakar, es un coche aut\u00f3nomo fabricado a&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3940","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>ROOMBAKAR % Proyectos con Arduino.<\/title>\n<meta name=\"description\" content=\"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno\" \/>\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\/roombakar\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ROOMBAKAR % Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-17T17:29:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-17T18:10:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png\" \/>\n<meta name=\"author\" content=\"Administrador de la red\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Administrador de la red\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 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\\\/roombakar\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/\"},\"author\":{\"name\":\"Administrador de la red\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\"},\"headline\":\"ROOMBAKAR\",\"datePublished\":\"2021-05-17T17:29:45+00:00\",\"dateModified\":\"2021-05-17T18:10:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/\"},\"wordCount\":1306,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/SEYTR-1-1024x563.png\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/\",\"name\":\"ROOMBAKAR % Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/SEYTR-1-1024x563.png\",\"datePublished\":\"2021-05-17T17:29:45+00:00\",\"dateModified\":\"2021-05-17T18:10:44+00:00\",\"description\":\"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/SEYTR-1-1024x563.png\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/SEYTR-1-1024x563.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/roombakar\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ROOMBAKAR\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"name\":\"Proyectos con Arduino.\",\"description\":\"Blog de proyectos de Arduino de alumnos de la URJC\",\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\",\"name\":\"Universidad Rey Juan Carlos\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"width\":745,\"height\":288,\"caption\":\"Universidad Rey Juan Carlos\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\",\"name\":\"Administrador de la red\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"caption\":\"Administrador de la red\"},\"sameAs\":[\"https:\\\/\\\/blogs.etsii.urjc.es\"],\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/etsiiadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ROOMBAKAR % Proyectos con Arduino.","description":"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno","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\/roombakar\/","og_locale":"es_ES","og_type":"article","og_title":"ROOMBAKAR % Proyectos con Arduino.","og_description":"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2021-05-17T17:29:45+00:00","article_modified_time":"2021-05-17T18:10:44+00:00","og_image":[{"url":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png","type":"","width":"","height":""}],"author":"Administrador de la red","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Administrador de la red","Tiempo de lectura":"9 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/"},"author":{"name":"Administrador de la red","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211"},"headline":"ROOMBAKAR","datePublished":"2021-05-17T17:29:45+00:00","dateModified":"2021-05-17T18:10:44+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/"},"wordCount":1306,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/","name":"ROOMBAKAR % Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png","datePublished":"2021-05-17T17:29:45+00:00","dateModified":"2021-05-17T18:10:44+00:00","description":"Este proyecto ha sido realizado por el grupo 6 de la asignatura Sistemas Empotrados y de Tiempo Real, perteneciente al Grado de Ingenier\u00eda Inform\u00e1tica de la URJC. Componentes: \u00c1lvaro Lafarga Garc\u00eda, juan de la Torre Melero, Santiago Rivas Mart\u00edn y Fernando Rubio Moreno","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png","contentUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/SEYTR-1-1024x563.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/roombakar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"ROOMBAKAR"}]},{"@type":"WebSite","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","name":"Proyectos con Arduino.","description":"Blog de proyectos de Arduino de alumnos de la URJC","publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization","name":"Universidad Rey Juan Carlos","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","width":745,"height":288,"caption":"Universidad Rey Juan Carlos"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211","name":"Administrador de la red","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","caption":"Administrador de la red"},"sameAs":["https:\/\/blogs.etsii.urjc.es"],"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/etsiiadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3940","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=3940"}],"version-history":[{"count":20,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3940\/revisions"}],"predecessor-version":[{"id":4127,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3940\/revisions\/4127"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=3940"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=3940"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=3940"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}