{"id":7678,"date":"2023-12-20T22:56:10","date_gmt":"2023-12-20T21:56:10","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=7678"},"modified":"2024-01-25T13:28:03","modified_gmt":"2024-01-25T12:28:03","slug":"maquina-expendedora-pokemon","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/","title":{"rendered":"M\u00e1quina expendedora pokemon"},"content":{"rendered":"<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1920\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-scaled.jpg\" alt=\"\" class=\"wp-image-7685\" style=\"width:456px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-scaled.jpg 2560w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-300x225.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-1024x768.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-768x576.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-1536x1152.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-edited-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-default\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99;font-size:25px\"><strong>INTRODUCCI\u00d3N<\/strong><\/h2>\n\n\n\n<p class=\"has-text-align-left\">Como sistema a dise\u00f1ar y construir, escogimos una m\u00e1quina expendedora. A lo largo del proyecto fuimos cambiando un poco el dise\u00f1o para cubrir necesidades que iban surgiendo.<\/p>\n\n\n\n<p class=\"has-text-align-left\">La m\u00e1quina expendedora consta de 9 m\u00f3dulos individuales impresos con una impresora 3d, cada uno con un motor que hace girar una espiral de cable de hierro. Estos son accionados al escoger una posici\u00f3n con el mando y comprobar el pago correspondiente con una tarjeta NFC, a continuaci\u00f3n se detalla el funcionamiento.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99;font-size:25px\"><strong>LAS PIEZAS<\/strong><\/h2>\n\n\n\n<p>En cuanto a piezas necesarias y presupuesto manejaremos dos tablas, la primera muestra el precio que supuso para nosotros la adquisici\u00f3n de los componentes para la pr\u00e1ctica, y la segunda, lo que supondr\u00eda la realizaci\u00f3n de la misma desde 0, sin el kit de Arduino entregado por el profesor. El precio del grupo es bastante reducido porque, adem\u00e1s de usar componentes del kit, utilizamos componentes que ya ten\u00edamos o prestados de otros compa\u00f1eros.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>CONCEPTO<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>GRUPO<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>DESDE 0<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Placa arduino<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">17\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Piezas de pl\u00e1stico<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">20\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Cart\u00f3n pluma<\/td><td class=\"has-text-align-center\" data-align=\"center\">5\u20ac<\/td><td class=\"has-text-align-center\" data-align=\"center\">5\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Shift register<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">1\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Motores<\/td><td class=\"has-text-align-center\" data-align=\"center\">13\u20ac<\/td><td class=\"has-text-align-center\" data-align=\"center\">13\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Cable<\/td><td class=\"has-text-align-center\" data-align=\"center\">5\u20ac<\/td><td class=\"has-text-align-center\" data-align=\"center\">5\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Lector NFC<\/td><td class=\"has-text-align-center\" data-align=\"center\">4\u20ac<\/td><td class=\"has-text-align-center\" data-align=\"center\">4\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Pantalla lcd+I2C<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">7\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Sensor IR+mando<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">6\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Transistores<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">5\u20ac<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Diodos<\/td><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">2\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\">27\u20ac<\/td><td class=\"has-text-align-center\" data-align=\"center\">85\u20ac<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\"><strong>1.M\u00d3DULOS (Piezas de pl\u00e1stico)<\/strong><\/h3>\n\n\n\n<p>Para dise\u00f1ar la m\u00e1quina expendedora se parti\u00f3 de la idea de utilizar como referencia las m\u00e1quinas expendedoras por muelle. Por tanto se decidi\u00f3 crear con impresi\u00f3n 3D un esqueleto donde quedar\u00edan los motores y productos en venta.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"583\" height=\"370\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_194659443.png\" alt=\"\" class=\"wp-image-7698\" style=\"width:422px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_194659443.png 583w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_194659443-300x190.png 300w\" sizes=\"auto, (max-width: 583px) 100vw, 583px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 1: Primer dise\u00f1o a cart\u00f3n)<\/em><\/p>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" style=\"grid-template-columns:15% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"192\" height=\"372\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_195805480.png\" alt=\"\" class=\"wp-image-7704 size-full\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_195805480.png 192w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_195805480-155x300.png 155w\" sizes=\"auto, (max-width: 192px) 100vw, 192px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>Al realizar la primera prueba con un muelle ya nos dimos cuenta de la necesidad de tener el motor a cierta altura para evitar choques con la base.<\/p>\n\n\n\n<p>En cuanto a la cantidad de motores y por tanto de m\u00f3dulos, decidimos crear una m\u00e1quina con 9 posiciones, aprovechando as\u00ed la cantidad de n\u00fameros y disposici\u00f3n que ten\u00edan los mandos del kit de Arduino.<\/p>\n<\/div><\/div>\n\n\n\n<p class=\"has-small-font-size\"><em>(Fig 2: Mando)<\/em><\/p>\n\n\n\n<p>Debido al tama\u00f1o que tendr\u00eda que en un principio, que cre\u00edamos ser\u00eda menor, pero debido a que meteremos cartas dentro, fue bastante voluminoso. Se tuvo que realizar de forma modular, para poder imprimir pieza a pieza.<\/p>\n\n\n\n<p>En un principio se pens\u00f3 en un dise\u00f1o algo m\u00e1s peque\u00f1o, pero conforme avanzaba el proyecto se decidi\u00f3 ampliar los espacios. Debido a esto se cre\u00f3 un sistema modular en el que cada espacio de un motor ser\u00eda impreso de forma individual, dejando unas peque\u00f1as patas para poder encajar unos con otros. Cada espacio es llamado m\u00f3dulo.<\/p>\n\n\n\n<p>Una vez aclaradas las ideas principales se model\u00f3 un m\u00f3dulo en Blender, que posteriormente fue impreso en 3D. Se imprimi\u00f3 tantas veces como espacios hab\u00edamos decidido usar, es decir 9. Todo el proceso de impresi\u00f3n fue bastante largo llegando casi a las 60 horas. Una vez impresos todos los m\u00f3dulos su colocaci\u00f3n fue bastante simple.<\/p>\n\n\n\n<div class=\"wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"383\" height=\"413\" data-id=\"7707\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200149.png\" alt=\"\" class=\"wp-image-7707\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200149.png 383w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200149-278x300.png 278w\" sizes=\"auto, (max-width: 383px) 100vw, 383px\" \/><\/figure>\n<\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"292\" height=\"416\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200641.png\" alt=\"\" class=\"wp-image-7710\" style=\"width:276px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200641.png 292w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-200641-211x300.png 211w\" sizes=\"auto, (max-width: 292px) 100vw, 292px\" \/><\/figure>\n<\/div><\/div>\n<\/div>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 3: modelo en Blender)                                                                                (Fig 4: m\u00f3dulo unitario impreso)<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"568\" height=\"471\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-202441.png\" alt=\"\" class=\"wp-image-7722\" style=\"width:544px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-202441.png 568w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/Captura-de-pantalla-2023-12-20-202441-300x249.png 300w\" sizes=\"auto, (max-width: 568px) 100vw, 568px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 5: 6 m\u00f3dulos en posici\u00f3n)<\/em><\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\"><strong>2.MOTORES<\/strong><\/h3>\n\n\n\n<p>Con los motores surgir\u00eda el primer problema de la pr\u00e1ctica, y ese ser\u00eda la posibilidad de quedarnos sin pines de salida del Arduino, teniendo como total 13 pines digitales y usando 9 pines en motores, quedar\u00edan 4 pines para trabajar con los dem\u00e1s dispositivos de salida que ten\u00edamos pensados, como el LCD el lector IR y el lector de tarjetas.<\/p>\n\n\n\n<p>Para solventar esa necesidad de pines adicionales utilizamos un shift register 74HC595, este usar\u00eda 3 pines del Arduino (5,6,7) pero a cambio nos dar\u00eda 8 salidas paralelas, que podr\u00edamos utilizar para distintas combinaciones de salida, pero en este caso, solo pasaremos un byte,&nbsp; con un 1 en la posici\u00f3n del motor que queremos encender. El noveno motor, en cambio, va directamente a un pin del Arduino (8). Podr\u00edamos haber conectado dos de estos shift register en serie, pero ya ten\u00edamos suficientes salidas.<\/p>\n\n\n\n<p>Cada motor est\u00e1 conectado al emisor de un transistor, mientras que cada salida del shift register est\u00e1 conectada a una resistencia de 330 para regular la velocidad de giro del motor y el colector a la salida de 5v del Arduino. A su vez el motor est\u00e1 protegido por un diodo.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"753\" height=\"348\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_203147212.png\" alt=\"\" class=\"wp-image-7725\" style=\"width:662px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_203147212.png 753w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_203147212-300x139.png 300w\" sizes=\"auto, (max-width: 753px) 100vw, 753px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>&nbsp;(Fig 6: shift register)&nbsp;      (Fig 7: Conjunto resistencia, transistor, diodo) &nbsp;       (Fig 8: funcionamiento shift register)<\/em><\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\"><strong>3.PANTALLA LCD<\/strong><\/h3>\n\n\n\n<p>La pantalla, muy utilizada en los proyectos arduino, la conectamos con un adaptador I2C, de esta forma ahorraremos muchos pines de la placa, aunque cambiando un poco el c\u00f3digo para su manejo. Utilizamos una pantalla y adaptador que no ven\u00eda con el kit proporcionado para poder soldar el adaptador a la pantalla y facilitar su colocaci\u00f3n en la carcasa de la m\u00e1quina expendedora.<\/p>\n\n\n\n<p>El adaptador I2C tomar\u00e1 los pines A4 y A5 para los puertos serial data y serial clock respectivamente y otros dos cables, para positivo y negativo.<\/p>\n\n\n\n<p>Emplea la librer\u00eda LiquidCrystal<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"272\" height=\"190\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_203752995.png\" alt=\"\" class=\"wp-image-7729\" style=\"width:255px;height:auto\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 9: adaptador I2C)<\/em><\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading has-text-align-center\"><strong>4.<\/strong>LECTOR DE TARJETAS<\/h3>\n\n\n\n<p>Para el lector de tarjetas no hemos utilizado ning\u00fan adaptador especial, este est\u00e1 conectado a los pines del arduino protegido por una serie de resistencias de 1k.<\/p>\n\n\n\n<p>Emplea la librer\u00eda MRFC522 , con el pin 4 para su RST y el pin 10 para su SDA.<\/p>\n\n\n\n<p>Con este componente podemos leer y escribir informaci\u00f3n en unas tarjetas NFC para poder simular el pago con tarjetas.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"167\" height=\"185\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_204108366.png\" alt=\"\" class=\"wp-image-7733\" style=\"width:221px;height:auto\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 10: conexiones lector con resistencias)<\/em><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99\">DISPOSICI\u00d3N DE LOS CABLES<\/h2>\n\n\n\n<p>Adjuntamos este esquema en tinkercad para facilitar la lectura del cableado, debido a la cantidad de cables y componentes en protoplaca. En el esquema se aparecen dos protoplacas, sin embargo esto es para facilitar la compresi\u00f3n, ya que en el proyecto real solo es necesario emplear una (m\u00e1s una peque\u00f1a), evitando malgastar espacio.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"746\" height=\"375\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205013415.png\" alt=\"\" class=\"wp-image-7738\" style=\"width:645px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205013415.png 746w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205013415-300x151.png 300w\" sizes=\"auto, (max-width: 746px) 100vw, 746px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 11: esquema tinkercad de nuestro circuito)<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"630\" height=\"396\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205200128.png\" alt=\"\" class=\"wp-image-7739\" style=\"width:515px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205200128.png 630w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205200128-300x189.png 300w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 12: circuito real)<\/em><\/p>\n\n\n\n<p>Como tenemos varios componentes colocados en la carcasa de la m\u00e1quina expendedora, se han colocado cables juntos para los distintos componentes, como el lector de tarjetas, la pantalla y el sensor IR. No se pudo hacer lo mismo con los motores porque, aunque sus puntos de enganche est\u00e1n soldadas a los cables, siguen siendo muy fr\u00e1giles y se ha querido evitar que se rompan al desplazarse. Todo componente que pueda ser soldado se ha soldado, y los \u00fanicos falsos contactos que puede dar la estructura son los puntos de contacto de la protoplaca.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99\">ESTADOS DE LA M\u00c1QUINA<\/h2>\n\n\n\n<p>Antes de pasar a explicar qu\u00e9 hace cada parte del c\u00f3digo de la m\u00e1quina veamos un peque\u00f1o esquema de su funcionamiento.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"440\" height=\"268\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205718794.png\" alt=\"\" class=\"wp-image-7742\" style=\"width:278px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205718794.png 440w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_205718794-300x183.png 300w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 13: estados de la m\u00e1quina)<\/em><\/p>\n\n\n\n<p><strong>1<\/strong>.Parte del inicio del bucle, y espera que se accione un bot\u00f3n del mando de forma indefinida.<\/p>\n\n\n\n<p><strong>2<\/strong>.Tras pulsar un bot\u00f3n del mando escogiendo la opci\u00f3n deseada, tanto en el caso de que sea un producto o una recarga de saldo, esperar\u00e1 una tarjeta, si la tarjeta no se coloca volver\u00e1 al estado de esperar mando, al estado 1, en caso contrario pasa al paso 3.<\/p>\n\n\n\n<p><strong>3a<\/strong>.Si se coloca la tarjeta, y es recarga de saldo, <strong>ingresa<\/strong> al men\u00fa de recarga de saldo y vuelve al estado 1.<\/p>\n\n\n\n<p><strong>3b<\/strong>.Si se coloca la tarjeta y se escogi\u00f3 un producto, procede a cobrar en la tarjeta el importe. Si no hay suficiente saldo, lo indica y vuelve al paso 1, en caso de suponer suficiente saldo pasa al 4.<\/p>\n\n\n\n<p><strong>4<\/strong>.Gira el motor y vuelve al paso 1 para repetir el bucle.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99\">C\u00d3DIGO<\/h2>\n\n\n\n<p>El c\u00f3digo se explicar\u00e1 de forma secuencial seg\u00fan est\u00e1 en el Arduino.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"752\" height=\"626\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210425445.png\" alt=\"\" class=\"wp-image-7743\" style=\"width:512px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210425445.png 752w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210425445-300x250.png 300w\" sizes=\"auto, (max-width: 752px) 100vw, 752px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 14: declaraci\u00f3n y asignaci\u00f3n de variables)<\/em><\/p>\n\n\n\n<p>Las librer\u00edas utilizadas para este proyecto son IRremote, para el lector IR, Wire y LiquidCrystal para controlar el lcd con el I2C, y SPI y MFRC522 para el lector de tarjetas.<\/p>\n\n\n\n<p>Los pines nombrados son los del ShiftRegister 7,6,5 para los motores del 1 al 8 y el pin 8 para el noveno motor. Los pines del LCD son el A4 y A5, predeterminados por la librer\u00eda para el controlador I2C. El pin 9 para el sensor IR y los pines 4 y 10 para el lector de tarjetas MFRC522.<\/p>\n\n\n\n<p>Adem\u00e1s de el mapeado de pines tambi\u00e9n procedemos a&nbsp; generar variables para facilitar el manejo del proyecto como el delay de los motores, el bloque que se modificar\u00e1 en la tarjeta e inicializamos los objetos para el manejo del LCD y el MFRC522.<\/p>\n\n\n\n<p>Por \u00faltimo generamos un array en el que se guardar\u00e1 la informaci\u00f3n que leamos de la tarjeta.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"303\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210650418.png\" alt=\"\" class=\"wp-image-7744\" style=\"width:653px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210650418.png 750w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210650418-300x121.png 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 15: clase casilla)<\/em><\/p>\n\n\n\n<p>Creamos una clase casilla, con su constructor, para facilitar la creaci\u00f3n de todas las casillas necesarias para manejar el mando, y posteriormente generamos el array de casillas.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"471\" height=\"476\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210856930.png\" alt=\"\" class=\"wp-image-7745\" style=\"width:315px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210856930.png 471w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210856930-297x300.png 297w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_210856930-80x80.png 80w\" sizes=\"auto, (max-width: 471px) 100vw, 471px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 16: setup)<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"233\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211007782.png\" alt=\"\" class=\"wp-image-7746\" style=\"width:426px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211007782.png 640w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211007782-300x109.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 17: loop)<\/em><\/p>\n\n\n\n<p>El loop, tras imprimir por el lcd \u201cEscoger producto\u201d quedar\u00e1 inactivo hasta recibir una se\u00f1al del mando. Una vez recibida e impreso por pantalla la opci\u00f3n pasar\u00e1 a la funci\u00f3n\u00a0 seleccionar.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"756\" height=\"225\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211215154.png\" alt=\"\" class=\"wp-image-7747\" style=\"width:538px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211215154.png 756w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211215154-300x89.png 300w\" sizes=\"auto, (max-width: 756px) 100vw, 756px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 18: funci\u00f3n seleccionar)<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"270\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211320985.png\" alt=\"\" class=\"wp-image-7748\" style=\"width:528px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211320985.png 754w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211320985-300x107.png 300w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 19: funci\u00f3n seleccionar b)<\/em><\/p>\n\n\n\n<p>La funci\u00f3n Seleccionar(), que recibe la opci\u00f3n escogida imprime por pantalla la opci\u00f3n y llama a la funci\u00f3n Tarjeta().<\/p>\n\n\n\n<p>En caso de que la selecci\u00f3n escogida fuese 0, crear\u00e1 un boolean en falso, esperar\u00e1 nuevamente una selecci\u00f3n de mando y tras volver a leer la tarjeta, volver\u00e1 el booleano true, para salir del bucle.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"407\" height=\"738\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211542428.png\" alt=\"\" class=\"wp-image-7750\" style=\"width:362px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211542428.png 407w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211542428-165x300.png 165w\" sizes=\"auto, (max-width: 407px) 100vw, 407px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 20: funci\u00f3n tarjeta a)<\/em><\/p>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" style=\"grid-template-columns:33% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"152\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_211751243.png\" alt=\"\" class=\"wp-image-7751 size-full\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p><span id=\"docs-internal-guid-e1557c73-7fff-8a41-6f48-d2b7679e3f12\"><span style=\"font-size: 12pt;font-family: Arial, sans-serif;background-color: transparent;vertical-align: baseline\">La funci\u00f3n Tarjeta(), nombrada anteriormente, toma el precio del producto escogido y espera una tarjeta. Si pasa el tiempo de <\/span><span style=\"font-size: 12pt;font-family: Arial, sans-serif;background-color: transparent;font-style: italic;vertical-align: baseline\">timer, <\/span><span style=\"font-size: 12pt;font-family: Arial, sans-serif;background-color: transparent;vertical-align: baseline\">saldr\u00e1 de la funci\u00f3n, cancelando la operaci\u00f3n. En caso de recibir una tarjeta, lee el segundo bloque de la tarjeta, para comprobar su saldo, si no es suficiente para el producto lo har\u00e1 saber por el LCD y saldr\u00e1  de la funci\u00f3n. Si el saldo es suficiente proceder\u00e1 a escribir en el mismo bloque el saldo tras sustraer el precio, marcar\u00e1 el booleano pagado como verdadero y llamar\u00e1 a la funci\u00f3n motor si es verdadero<\/span><\/span>.<\/p>\n<\/div><\/div>\n\n\n\n<p class=\"has-small-font-size\"><em>(Fig 21: funci\u00f3n tarjeta b)<\/em><\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"371\" height=\"648\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212400986.png\" alt=\"\" class=\"wp-image-7752\" style=\"width:299px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212400986.png 371w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212400986-172x300.png 172w\" sizes=\"auto, (max-width: 371px) 100vw, 371px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 22: funciones del motor)<\/em><\/p>\n\n\n\n<p>Las funciones Motor(), y MotorControl() manejan las salidas del shift register. Motor maneja el motor a accionar desde su llamada en la funci\u00f3n anterior, y a su vez llama a MotorControl(), para que escriba en el desplazador de registros.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"426\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212650875.png\" alt=\"\" class=\"wp-image-7753\" style=\"width:786px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212650875.png 754w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212650875-300x169.png 300w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 23: funciones writeBlock para NFC)<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"753\" height=\"322\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212733363.png\" alt=\"\" class=\"wp-image-7754\" style=\"width:797px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212733363.png 753w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/imagen_2023-12-20_212733363-300x128.png 300w\" sizes=\"auto, (max-width: 753px) 100vw, 753px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center has-small-font-size\"><em>(Fig 24: funciones readBlock para NFC)<\/em><\/p>\n\n\n\n<p>Por \u00faltimo las funciones WriteBlock() y ReadBlock(), que nos permiten escribir y leer bloques en las tarjetas se recogieron del creador de contenido digital Zin Tech Ideas, que es el creador original de estas funciones.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\" \/>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-background\" style=\"background-color:#8dd2fc99\">PROBELMAS Y CONCLUSI\u00d3N<\/h2>\n\n\n\n<p>Durante el desarrollo de la m\u00e1quina expendedora surgieron diversos problemas.&nbsp;<\/p>\n\n\n\n<p>Por parte de los f\u00edsicos, el lector de tarjetas fue soldado 3 veces hasta que el Arduino fue capaz de reconocerlo, hasta el punto de que llegamos a creer que estaba defectuoso. Esto no volvi\u00f3 a ocurrir con ning\u00fan otro componente soldado.La fragilidad de los bornes de cobre de los motores se hizo notar cuando uno de ellos se rompi\u00f3, ten\u00edamos 2 motores sobrantes as\u00ed que no supuso un problema para el presupuesto. Adem\u00e1s, la necesidad de ampliar la cantidad de pines para el Arduino hizo plantearse la compra de un Arduino Mega o reducir la cantidad de motores planteada inicialmente, pero al final decidimos emplear un Shift Register. Se compr\u00f3 un paquete de 20, de los cuales quemamos uno. Tras esto la necesidad de pines ya no fue un problema.<\/p>\n\n\n\n<p><br>Por parte de los problemas l\u00f3gicos del c\u00f3digo, hab\u00eda muy poca documentaci\u00f3n sobre el lector de tarjetas y varios de los tutoriales encontrados estaban incompletos o ten\u00edan alg\u00fan error. Al final se encontr\u00f3 un video de <em>Zin Tech Ideas<\/em> del cual se sacaron las funciones necesarias para escribir y leer bloques de datos de la tarjeta programable.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>INTRODUCCI\u00d3N Como sistema a dise\u00f1ar y construir, escogimos una m\u00e1quina expendedora. A lo largo del proyecto fuimos cambiando un poco el dise\u00f1o para cubrir necesidades que iban surgiendo. La m\u00e1quina expendedora consta de 9&#46;&#46;&#46;<\/p>\n","protected":false},"author":196,"featured_media":7684,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-7678","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.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>M\u00e1quina expendedora pokemon - 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\/maquina-expendedora-pokemon\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"M\u00e1quina expendedora pokemon - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"INTRODUCCI\u00d3N Como sistema a dise\u00f1ar y construir, escogimos una m\u00e1quina expendedora. A lo largo del proyecto fuimos cambiando un poco el dise\u00f1o para cubrir necesidades que iban surgiendo. La m\u00e1quina expendedora consta de 9&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2023-12-20T21:56:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-25T12:28:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1920\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DSE_2023_24_G15\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"DSE_2023_24_G15\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 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\\\/maquina-expendedora-pokemon\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/\"},\"author\":{\"name\":\"DSE_2023_24_G15\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/eae5a4424e2bcec77a3d0d91bc9fb08a\"},\"headline\":\"M\u00e1quina expendedora pokemon\",\"datePublished\":\"2023-12-20T21:56:10+00:00\",\"dateModified\":\"2024-01-25T12:28:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/\"},\"wordCount\":1962,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/12\\\/20231218_152821-scaled.jpg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/\",\"name\":\"M\u00e1quina expendedora pokemon - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/12\\\/20231218_152821-scaled.jpg\",\"datePublished\":\"2023-12-20T21:56:10+00:00\",\"dateModified\":\"2024-01-25T12:28:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/12\\\/20231218_152821-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2023\\\/12\\\/20231218_152821-scaled.jpg\",\"width\":2560,\"height\":1920},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/maquina-expendedora-pokemon\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"M\u00e1quina expendedora pokemon\"}]},{\"@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\\\/eae5a4424e2bcec77a3d0d91bc9fb08a\",\"name\":\"DSE_2023_24_G15\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g\",\"caption\":\"DSE_2023_24_G15\"},\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/dse202324g15\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"M\u00e1quina expendedora pokemon - 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\/maquina-expendedora-pokemon\/","og_locale":"es_ES","og_type":"article","og_title":"M\u00e1quina expendedora pokemon - Proyectos con Arduino.","og_description":"INTRODUCCI\u00d3N Como sistema a dise\u00f1ar y construir, escogimos una m\u00e1quina expendedora. A lo largo del proyecto fuimos cambiando un poco el dise\u00f1o para cubrir necesidades que iban surgiendo. La m\u00e1quina expendedora consta de 9&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2023-12-20T21:56:10+00:00","article_modified_time":"2024-01-25T12:28:03+00:00","og_image":[{"width":2560,"height":1920,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg","type":"image\/jpeg"}],"author":"DSE_2023_24_G15","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"DSE_2023_24_G15","Tiempo de lectura":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/"},"author":{"name":"DSE_2023_24_G15","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/eae5a4424e2bcec77a3d0d91bc9fb08a"},"headline":"M\u00e1quina expendedora pokemon","datePublished":"2023-12-20T21:56:10+00:00","dateModified":"2024-01-25T12:28:03+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/"},"wordCount":1962,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/","name":"M\u00e1quina expendedora pokemon - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg","datePublished":"2023-12-20T21:56:10+00:00","dateModified":"2024-01-25T12:28:03+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2023\/12\/20231218_152821-scaled.jpg","width":2560,"height":1920},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/maquina-expendedora-pokemon\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"M\u00e1quina expendedora pokemon"}]},{"@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\/eae5a4424e2bcec77a3d0d91bc9fb08a","name":"DSE_2023_24_G15","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/df8c7f40b81cb21d422b6f9e389636b827752e67fd88c7998ef8c26e74785b4d?s=96&d=mm&r=g","caption":"DSE_2023_24_G15"},"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/dse202324g15\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/7678","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\/196"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=7678"}],"version-history":[{"count":7,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/7678\/revisions"}],"predecessor-version":[{"id":7755,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/7678\/revisions\/7755"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/7684"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=7678"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=7678"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=7678"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}