{"id":3259,"date":"2021-01-20T20:27:02","date_gmt":"2021-01-20T20:27:02","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=3259"},"modified":"2021-01-20T20:27:03","modified_gmt":"2021-01-20T20:27:03","slug":"reclaserbean-cnc-laser","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/","title":{"rendered":"RecLaserBean: CNC laser"},"content":{"rendered":"\n<p>CNC L\u00e1ser construida con Arduino y compatible con gcode<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"825\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1-1024x825.jpeg\" alt=\"\" class=\"wp-image-3435\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1-1024x825.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1-300x242.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1-768x619.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1.jpeg 1372w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Idea<\/h2>\n\n\n\n<p>La intenci\u00f3n de este proyecto es el de desarrollar una m\u00e1quina cnc-l\u00e1ser de dos ejes. Est\u00e1 m\u00e1quina permitir\u00e1 tanto el corte de materiales blandos como el grabado de patrones sobre madera y materiales similares. La diferenciaci\u00f3n de grabado o corte ser\u00e1 posible gracias al uso de se\u00f1ales pwm para controlar un l\u00e1ser de alta potencia.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Planteamiento<\/h2>\n\n\n\n<p>Nuestro planteamiento inicial nos deja las manos libres en cuanto a objetivos, no tenemos fijada la forma o mecanismos f\u00edsicos de la CNC ni su interacci\u00f3n con el usuario. Por lo que creamos grupos de trabajo que hagan las correspondientes partes, dej\u00e1ndole a cada grupo las decisiones de dise\u00f1o que ellos crean m\u00e1s oportunas, comunic\u00e1ndoselo entre ellos.<br>Nos dividimos en dos grupos:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Desarrollo del hardware: su misi\u00f3n es desarrollar la estructura f\u00edsica de la CNC, la electr\u00f3nica y la compra de material.<\/li><li>Desarrollo del software: su misi\u00f3n es seleccionar el dispositivo empotrado sobre la que hacer el programa y hacer todo el programa de control de la CNC.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">El equipo<\/h2>\n\n\n\n<p>En el grupo de hardware esta:<br>Javier Lamparero L\u00f3pez &#8211; Estudiante de Ingenier\u00eda Inform\u00e1tica + Computadores<\/p>\n\n\n\n<p>En el grupo de software esta:<br>Ildefonso Macarro Pueyo &#8211; Estudiante de Ingenier\u00eda de Computadores<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Recursos<\/h2>\n\n\n\n<p>Inicialmente disponemos de ciertos recursos que ponemos los integrantes del grupo, los cuales consideramos a coste 0, el resto de materiales los reflejamos en la siguiente tabla:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><tbody><tr><td><strong>Material<\/strong><\/td><td><strong>Unidades<\/strong><\/td><td><strong>Precio \u20ac<\/strong><\/td><\/tr><tr><td>Cabezal L\u00e1ser 10W<\/td><td>1<\/td><td>63,99<\/td><\/tr><tr><td>Perfiles aluminio V-Slot 2020 350mm<\/td><td>3<\/td><td>20,37<\/td><\/tr><tr><td>Ruedas para V-slot<\/td><td>9<\/td><td>9,99<\/td><\/tr><tr><td>Correa x 5m<\/td><td>1<\/td><td>4,99<\/td><\/tr><tr><td>Ruedas dentadas<\/td><td>3<\/td><td>5<\/td><\/tr><tr><td>Varilla roscada x 1m<\/td><td>1<\/td><td>2.5<\/td><\/tr><tr><td>Perfil aluminio cuadrado x 1m<\/td><td>1<\/td><td>2.5<\/td><\/tr><tr><td>Tornilleria variada<\/td><td>1<\/td><td>15<\/td><\/tr><tr><td>Drivers a4988<\/td><td>4<\/td><td>16,85<\/td><\/tr><tr><td>Arduino Mega 2560<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Arduino Ethernet SHIELD<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Fuente de alimentaci\u00f3n 24v 20A<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Motor Nema 17<\/td><td>3<\/td><td>0<\/td><\/tr><tr><td>Fuente de alimentaci\u00f3n 12V 15A<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Resistencias 10k<\/td><td>3<\/td><td>0<\/td><\/tr><tr><td>Pulsadores<\/td><td>3<\/td><td>0<\/td><\/tr><tr><td>Cableado variado<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Bobinas PLA 1kg (Pl\u00e1stico para prototipado mediante impresi\u00f3n 3D)<\/td><td>2<\/td><td>30<\/td><\/tr><tr><td>PCB 500x500mm (Placa de circuito impreso)<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>\u00c1cido Clorh\u00eddrico<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td>Per\u00f3xido de Hidr\u00f3geno<\/td><td>1<\/td><td>0<\/td><\/tr><tr><td><strong>TOTAL<\/strong><\/td><td>43<\/td><td>171,19<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware<\/h2>\n\n\n\n<h4 class=\"wp-block-heading\">Estructura<\/h4>\n\n\n\n<p>Para el desarrollo de la estructura se ha empleado vslots como base r\u00edgida, debido a su estandarizaci\u00f3n y f\u00e1cil manejo. Para el resto de partes clave se ha empleado un impresora 3D para su producci\u00f3n y hemos desarrollado nuestras propias piezas a medida.<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"393\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_2.png\" alt=\"\" data-id=\"3347\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_2.png\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3347\" class=\"wp-image-3347\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_2.png 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_2-300x230.png 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"686\" height=\"585\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_1.png\" alt=\"\" data-id=\"3346\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_1.png\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3346\" class=\"wp-image-3346\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_1.png 686w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/piezas_disenadas_1-300x256.png 300w\" sizes=\"auto, (max-width: 686px) 100vw, 686px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"384\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/ejeX.jpg\" alt=\"\" data-id=\"3351\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/ejeX.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3351\" class=\"wp-image-3351\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/ejeX.jpg 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/ejeX-300x225.jpg 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"767\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada-1024x767.jpg\" alt=\"\" data-id=\"3352\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3352\" class=\"wp-image-3352\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada-1024x767.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada-300x225.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada-768x576.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada-1536x1151.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/estructura_montada.jpg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Electr\u00f3nica<\/h4>\n\n\n\n<p>En el desarrollo de la electr\u00f3nica hemos empleado drivers de control de motores paso paso a4988, resistencias, pulsadores, elementos de conexi\u00f3n y condensadores.<br>Para conectarlo todo hemos producido una PCB con un circuito de conexi\u00f3n de todos los elementos.<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"309\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_diseno.jpg\" alt=\"\" data-id=\"3356\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_diseno.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3356\" class=\"wp-image-3356\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_diseno.jpg 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_diseno-300x181.jpg 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"452\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_pre-acido.jpg\" alt=\"\" data-id=\"3357\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_pre-acido.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3357\" class=\"wp-image-3357\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_pre-acido.jpg 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_pre-acido-300x265.jpg 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"486\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_acido-1.png\" alt=\"\" data-id=\"3360\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_acido-1.png\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3360\" class=\"wp-image-3360\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_acido-1.png 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_acido-1-300x285.png 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"501\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_lista.jpg\" alt=\"\" data-id=\"3361\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_lista.jpg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3361\" class=\"wp-image-3361\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_lista.jpg 512w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_lista-300x294.jpg 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada-1024x954.jpg\" alt=\"\" class=\"wp-image-3362\" width=\"428\" height=\"398\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada-1024x954.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada-300x279.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada-768x715.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada-1536x1431.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/PCB_montada.jpg 1563w\" sizes=\"auto, (max-width: 428px) 100vw, 428px\" \/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Software<\/h2>\n\n\n\n<p>Solo se han empleado dos librer\u00edas de terceros: SPI.h y SD.h<br>El resto del c\u00f3digo es completamente producido por el grupo de software.<br>El sistema empotrado empleado ha sido:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Arduino Mega 2560<\/li><li>Arduino Ethernet Shield<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/arduino_mega-1024x576.jpg\" alt=\"\" class=\"wp-image-3366\" width=\"413\" height=\"232\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/arduino_mega-1024x576.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/arduino_mega-300x169.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/arduino_mega-768x432.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/arduino_mega.jpg 1280w\" sizes=\"auto, (max-width: 413px) 100vw, 413px\" \/><\/figure>\n\n\n\n<p>Se compone de 3 librer\u00edas, 3 p\u00e1ginas de c\u00f3digo externalizado y un programa principal.<br>Todas las librer\u00edas y paginas dependen unas de otras.<\/p>\n\n\n\n<p>El concepto del funcionamiento se basa en un solo bot\u00f3n.<br>El usuario puede iniciar la ejecuci\u00f3n de un solo c\u00f3digo de gcode (el primero que se encuentra en la SD) con solo apretar un bot\u00f3n.<br>Una vez iniciado el gcode, se puede pausar entre instrucciones de gcode y reanudar o cuando el programa encuentra un error en el gcode, se para hasta que el usuario d\u00e9 el visto bueno pulsando el bot\u00f3n.<br>La ejecuci\u00f3n no se puede cancelar durante la misma, siendo la \u00fanica salida hacer reset de la Arduino o desconectar la fuente de alimentaci\u00f3n.<br>El bot\u00f3n tambi\u00e9n se le conoce como bot\u00f3n de acci\u00f3n o acci\u00f3n.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>RLB -&gt; main del c\u00f3digo de Arduino (la \u00fanica aqu\u00ed publicada)<\/li><li>structs.h -&gt; Estructuras del programa<\/li><li>constants.h -&gt; Constantes del programa<\/li><li>vars.h -&gt; variables globales del programa<\/li><li>functions.h -&gt; funciones generales y de sistema del programa<\/li><li>move_motor.h -&gt; drivers de los motores paso paso<\/li><li>gcode.h -&gt; librer\u00eda de interpretaci\u00f3n de gcode<\/li><\/ul>\n\n\n\n<p>El flujo del programa en el loop se muestra en el siguiente gr\u00e1fico:<\/p>\n\n\n\n<div class=\"wp-block-image is-style-default\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"657\" height=\"1024\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/RLB_flujo-657x1024.png\" alt=\"\" class=\"wp-image-3384\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/RLB_flujo-657x1024.png 657w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/RLB_flujo-192x300.png 192w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/RLB_flujo.png 695w\" sizes=\"auto, (max-width: 657px) 100vw, 657px\" \/><\/figure><\/div>\n\n\n\n<h5 class=\"wp-block-heading\">RLB<\/h5>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/*\nNombre Proyecto: RecLaserBean\nVersion: 0.0\nAutores: Ildefonso Macarro Pueyo, Javier Lamparero Lopez\nFecha: 20\/01\/2021\nPlaca empleada: Arduino Mega 2560\nShield: Arduino Ethernet SHIELD\nVersion de Arduino en dise\u00f1o: 1.8.13\n*\/\n\n\/\/External libs\n#include &lt;SPI.h&gt;\n#include &lt;SD.h&gt;\n\n\/\/My libs\n#include \"structs.h\"\n#include \"constants.h\"\n#include \"vars.h\"\n#include \"functions.h\"\n#include \"move_motor.h\"\n#include \"gcode.h\"\n\nvoid setup()\n{\n  pinMode(PIN_ERROR,OUTPUT);\n  pinMode(PIN_DMOTOR_X,OUTPUT);\n  pinMode(PIN_MMOTOR_X,OUTPUT);\n  pinMode(PIN_DMOTOR_Y,OUTPUT);\n  pinMode(PIN_MMOTOR_Y,OUTPUT);\n  pinMode(PIN_LASER_PWM,OUTPUT);\n  pinMode(PIN_PULSADOR_X,INPUT);\n  pinMode(PIN_PULSADOR_Y,INPUT);\n  pinMode(PIN_ACTION,INPUT);\n  Serial.begin(9600);\n  cleanAlarm();\n  flagAction=false;\n  posicion.x=0;\n  posicion.y=0;\n  laserP=0;\n  laserE=false;\n  timing=0;\n  cleanBuff();\n  while(!SD.begin(PIN_SD))\n    alarm();\n  attachInterrupt(0,setAction, RISING);\n  home();\n}\n\nvoid loop()\n{\n  File fileCode;\n  bool execState=true;\n  Serial.println(WALL_RECORD);\n  Serial.println(RECORD_NOT_START);\n  if(flagAction) \/\/Se detecta accion\n  {\n    setAction();\n    cleanBuff();\n    Serial.println(MSG_AT_START_RECORS);\n    if(!SD.begin(PIN_SD)) \/\/Lector y tarjeta disponible\n    {\n      Serial.println(SD_NOT_FOUND);\n      alarm();\n      execState=false; \/\/Error\n    }\n    else\n    {\n      cleanAlarm();\n      fileCode=SD.open(FILE_ROOT);\n    }\n    if(fileCode&amp;&amp;execState) \/\/Acceso a la SD verificado\n    {\n      cleanAlarm();\n      Serial.println(SD_FOUND);\n      Serial.println(TITTLE_SD_LOOP_SEARCH);\n      execState=false;\n      do \/\/Buscar primer fichero con la extension adecuada\n      {\n        fileCode=fileCode.openNextFile();\n        Serial.println(fileCode.name());\n        \/\/if(!fileCode.isDirectory()) \/\/Prime fichero\n        if(!fileCode.isDirectory()&amp;&amp;charLastContains(fileCode.name(),(char*)GCODE_EXTENSION)) \/\/Si es un fichero y tiene la extension adecuada\n        {\n          execState=true;\n          break;\n        }\n      } while(fileCode);\n      Serial.print(FILE_SELECTED);\n      Serial.println(fileCode.name());\n      Serial.print(FILE_SELECTED_CODE);\n      if(execState)\n      {\n        Serial.println(FILE_IS_GOOD);\n        Serial.println(FILE_IS_EXIST);\n        \/\/Fichero encontrado\n        if(!fileCode.available()) \/\/No se puede abrir o esta vacio\n        {\n          Serial.println(FILE_HAVE_PROBLEM);\n          alarm();\n          execState==255;\n        }\n        else\n        {\n          gcomand comando;\n          initGcomand(&amp;comando);\n          while(fileCode.available())\n          {\n            execState=false;\n            Serial.println(READ_FILE_GCODE);\n            int iterationBuff=0;\n            char readComand[]={0}; \/\/Tiene tener un valor inicial para evitar no leer la instruccion a partir de la segunda iteracion\n            if(flagAction) \/\/accion -&gt; si la ejecucion esta en proceso la detiene y viceversa\n            {\n              Serial.println(\"STOP\");\n              bool laserLastState=statLaser();\n              if(laserLastState)\n                disableLaser();\n              while(flagAction)\n                while(flagAction);\n              if(laserLastState)\n                enableLaser();\n                Serial.println(\"START\");\n            }\n            cleanBuff();\n            while(readComand[0]!='\\n') \/\/Carga una sola instruccion\n            {\n              fileCode.read(readComand,1);\n              if(readComand[0]&lt;0||iterationBuff==BUFF_SIZE) \/\/Termina la lectura, bien por falta de espacio en el buffer o por terminar la lectura de archivo\n              {\n                if(readComand[0]&lt;0)\n                {\n                  execState=true;\n                }\n                break;\n              }\n              if(readComand[0]!='\\n')\n                buffer[iterationBuff++]=readComand[0];\n            }\n            Serial.print(TITTLE_LINE_GCODE);\n            Serial.println(buffer);\n            if(execState) \/\/Salir de la ejecucion al terminar de leer el archivo\n            {\n              Serial.println(END_PREMATURE_FILE);\n              break;\n            }\n            Serial.print(MY_POSITION);\n            debugPos();\n            switch(translate(buffer, &amp;comando))\n            {\n              case 0: \/\/Comando reconocido\n              {\n                Serial.println(FORMALIZED_COMMAND);\n                debugGcomand(&amp;comando);\n                if(execute(&amp;comando)&lt;0) \/\/Error al efectuar la ejecucion de la orden; poner a la espera de arranque\n                {\n                  Serial.println(ERROR_COMMAND);\n                  alarm();\n                  bool laserLastState=statLaser();\n                  if(laserLastState)\n                    disableLaser();\n                  while(flagAction)\n                    while(flagAction);\n                  if(laserLastState)\n                    enableLaser();\n                  cleanAlarm();\n                }\n                else\n                  Serial.println(GOOD_EXECUTE);\n                break;\n              }\n              case 1: \/\/Es un comentario, no hacer nada\n                Serial.println(COMMAND_COMENTED);\n                break;\n              default: \/\/Comando no reconocido; poner a la espera de arranque\n              {\n                Serial.println(BAD_COMAND);\n                alarm();\n                bool laserLastState=statLaser();\n                if(laserLastState)\n                  disableLaser();\n                while(flagAction)\n                  while(flagAction);\n                if(laserLastState)\n                  enableLaser();\n                cleanAlarm();\n              }\n            }\n            Serial.print(POSITION_AFTER_COMMAND);\n            debugPos();\n          }\n          setPowerLaser(12);\n          disableLaser();\n        }\n        Serial.println(END_FILE_NATURAL);\n      }\n      else\n        Serial.println(FILE_IS_BAD);\n      Serial.println(CLOSE_SD);\n      fileCode.close();\n      home();\n    }\n    else\n      alarm();\n  }\n  delay(1000);\n}<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Modelo producido<\/h2>\n\n\n\n<p>Esta es nuestra CNC.<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-1 is-cropped wp-block-gallery-5 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"825\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1024x825.jpeg\" alt=\"\" data-id=\"3369\" data-full-url=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg\" data-link=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/?attachment_id=3369\" class=\"wp-image-3369\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-1024x825.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-300x242.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB-768x619.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg 1372w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusiones<\/h2>\n\n\n\n<p>Como conclusi\u00f3n en cuanto a la parte pr\u00e1ctica el usar por primera vez arduino \u201cen condiciones\u201d\u00a0y poder llevar a cabo en la vida real un proyecto de la nada, descubrir la posibilidad de poder crear cualquier cosa que se te ocurra y la percepci\u00f3n de que no hay l\u00edmites. A esto a\u00f1adir\u00eda la ilusi\u00f3n de ver funcionar un proyecto como este al que le hemos dedicado tanto tiempo.<\/p>\n\n\n\n<p>Entrando en una parte m\u00e1s t\u00e9cnica y como conclusi\u00f3n general de la parte hardware nos hemos dado cuenta de la importancia para este proyecto de una impresora 3D, ya que nos ha permitido crear las piezas que necesit\u00e1bamos a medida, algo que de otra forma no habr\u00eda sino posible, y le habr\u00eda quitado mucha calidad.<\/p>\n\n\n\n<p>Como mejora nos habr\u00eda gustado a\u00f1adir alg\u00fan soporte para cablear bien la CNC, as\u00ed como la creaci\u00f3n de una caja en la que guardar la electr\u00f3nica y un soporte para incluir la fuente de alimentaci\u00f3n dentro de la m\u00e1quina.<\/p>\n\n\n\n<p>Tambi\u00e9n nos habr\u00eda gustado la incorporaci\u00f3n de una pantalla desde la que poder seleccionar los archivos a grabar.<\/p>\n\n\n\n<p>Algunas de las mejoras que planteamos en un principio era el poder controlar la m\u00e1quina desde el m\u00f3vil, incluyendo un m\u00f3dulo wifi, y la incorporaci\u00f3n de lo que llamamos \u201cmodo manual\u201d que lo imaginamos como un joystick con el que mover la m\u00e1quina y dibujar libremente, y la implementaci\u00f3n de esto desde el m\u00f3vil.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Resultado &#8211; V\u00eddeos<\/h2>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=yDJvK8iGvLk\n<\/div><figcaption>V\u00eddeo explicativo del proyecto<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>CNC l\u00e1ser, implementada con arduino y es capaz de leer gcodes<\/p>\n","protected":false},"author":1,"featured_media":3369,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[8,106,107,108],"class_list":["post-3259","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-proyectos","tag-arduino","tag-cnc","tag-gcode","tag-laser"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>RecLaserBean: CNC laser - 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\/reclaserbean-cnc-laser\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"RecLaserBean: CNC laser - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"CNC l\u00e1ser, implementada con arduino y es capaz de leer gcodes\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-20T20:27:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-20T20:27:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1372\" \/>\n\t<meta property=\"og:image:height\" content=\"1105\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\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=\"8 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/\"},\"author\":{\"name\":\"Administrador de la red\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\"},\"headline\":\"RecLaserBean: CNC laser\",\"datePublished\":\"2021-01-20T20:27:02+00:00\",\"dateModified\":\"2021-01-20T20:27:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/\"},\"wordCount\":989,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/01\\\/CNC_RLB.jpeg\",\"keywords\":[\"Arduino\",\"CNC\",\"gcode\",\"l\u00e1ser\"],\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/\",\"name\":\"RecLaserBean: CNC laser - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/01\\\/CNC_RLB.jpeg\",\"datePublished\":\"2021-01-20T20:27:02+00:00\",\"dateModified\":\"2021-01-20T20:27:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/01\\\/CNC_RLB.jpeg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/01\\\/CNC_RLB.jpeg\",\"width\":1372,\"height\":1105},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/reclaserbean-cnc-laser\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"RecLaserBean: CNC laser\"}]},{\"@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":"RecLaserBean: CNC laser - 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\/reclaserbean-cnc-laser\/","og_locale":"es_ES","og_type":"article","og_title":"RecLaserBean: CNC laser - Proyectos con Arduino.","og_description":"CNC l\u00e1ser, implementada con arduino y es capaz de leer gcodes","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2021-01-20T20:27:02+00:00","article_modified_time":"2021-01-20T20:27:03+00:00","og_image":[{"width":1372,"height":1105,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg","type":"image\/jpeg"}],"author":"Administrador de la red","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Administrador de la red","Tiempo de lectura":"8 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/"},"author":{"name":"Administrador de la red","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211"},"headline":"RecLaserBean: CNC laser","datePublished":"2021-01-20T20:27:02+00:00","dateModified":"2021-01-20T20:27:03+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/"},"wordCount":989,"commentCount":1,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg","keywords":["Arduino","CNC","gcode","l\u00e1ser"],"articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/","name":"RecLaserBean: CNC laser - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg","datePublished":"2021-01-20T20:27:02+00:00","dateModified":"2021-01-20T20:27:03+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/01\/CNC_RLB.jpeg","width":1372,"height":1105},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/reclaserbean-cnc-laser\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"RecLaserBean: CNC laser"}]},{"@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\/3259","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=3259"}],"version-history":[{"count":34,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3259\/revisions"}],"predecessor-version":[{"id":3438,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3259\/revisions\/3438"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media\/3369"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=3259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=3259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=3259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}