Это видео недоступно.
Сожалеем об этом.

control manual de ejes cnc

Поделиться
HTML-код
  • Опубликовано: 27 авг 2016
  • Version de gctrl con una modificacion par mover los ejes manualmente desde el teclado.
    Descargar:
    goo.gl/ais3Jb
    Suscribete!
    goo.gl/Lq1Veq

Комментарии • 96

  • @juliososa7196
    @juliososa7196 3 года назад

    hola buen dia ,consulta por que los ejes me quedan trancados y no puedo moverlos manual mente

  • @gersondavila3994
    @gersondavila3994 8 лет назад

    Muy buen material....me sirvio mucho para identificar los ejes..., bendiciones y éxito

  • @arielvaquero9038
    @arielvaquero9038 6 лет назад

    te hago una consilta. me funciona el eje x,y pero no el z.. ya hice varias pruebas y no logro que funcione.. quizás podrías darme alguna sugerencia. no entiendo demasiado del tema.
    muchas gracias

  • @gersondavila3994
    @gersondavila3994 7 лет назад

    hola quería saber si me puede ayudar, ya hice todo lo que usted hizo con respecto al filware y processing

  • @AlexDGeneration
    @AlexDGeneration 8 лет назад

    Una consulta, fijate que no se porque no me sirve el eje z (servo motor)

  • @gersondavila3994
    @gersondavila3994 7 лет назад

    bueno yo compre un motor 28BYJ-48. es un motor de 5 voltios, es un motor de paso, hice una prueba con el archivo gctrlejes, pero resulta que el motor no da giros completos, gira de izquierda a derecha, sera que este motor no funciona bien con la tarjeta de adafriut o es que hay que configurar el filware para que de giros completos?, espero me ayude, porque estoy a punto de terminar mi CNC y la parte eléctrica me tiene perdido

    • @proyectof781
      @proyectof781  7 лет назад +1

      Hola ,claro debes configurar en numero de pasos en el codigo de arduino, en las lines 53 y 54 estan las variables que definen cuantos pasos deben dar los motores para avanzar 1mm tanto el ejex como el ejey por separado.
      Estos valores funcionan en mi maquina con motores de cdroom.
      float StepsPerMillimeterX = 109;
      float StepsPerMillimeterX = 109;
      podes imprimir un cuadrado de 10x10mm y medirlo para comprobar y modificar estos valores.

  • @jorgedominguez3206
    @jorgedominguez3206 Год назад

    Me marca un error la variable frame no se puede resolver

  • @gustavoecheverria4613
    @gustavoecheverria4613 7 лет назад

    esta cnc podria funcionar si en vez de conectar mi arduino a los L293d lo conectara a la salida de modulos para motores unipolares?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola , seria algo complicado ,el tema es que tambien se utiliza la libreria de adafruit para controlar los motores, para utilizar el codigo tal cual, tus modulos tendrian que funcionar igual que los l293 y conectarlos a los mismos pines que utiliza la motorshield,
      Saludos.

  • @gersondavila3994
    @gersondavila3994 8 лет назад

    Una consulta, yo se que usted usa un servo motor para el eje "z", mi consulta es como hago para que en el código en vez de usar un servo motor haga la funcion en el motor 1 por ejemplo...

    • @proyectof781
      @proyectof781  8 лет назад

      Hola tene en cuenta que la placa utilizada "l293d" solo puede controlar dos motores pap a la vez , de cambiar el codigo para utilizar un motor en el eje z te estarias quedando sin uno de los otros dos ejes. Para utilizar un motor en el eje z sin perder los otros dos , lo que haria seria por ejemplo utlizar los pines que no utiliza la placa ,pueden ser el 2 y 13 de arduino y conectar el motor mediante un driver con la funsion STEP y DIR . pero habria que modificar demaciado el codigo. Si queres comentame por que queres hacer esa reforma o que adaptacion o movimiento queres lograr , tal vez halla otra solucion mas sencilla. Saludos

  • @horacioalegre6365
    @horacioalegre6365 7 лет назад

    Hola, antes que nada muchas gracias excelentes tus videos y explicaciones, hice la mini cnc y anda de maravillas, solo te quería consultar porque puede ser que imprime en un rectángulo de 2cm x 3,5 cm y no puedo modificar esa medida, por mas que agrande el dibujo igual sigue saliendo dentro de los mismos parámetros, las correderas me dan como para hacer impresiones de 5cm x 5cm.( la configuración es en tamaño papel 75mm x 75mm y tamaño del cuadrado de dibujo 35m x 35mm), pero aunque varíe esos números sigue igual. Saludos y muchas gracias

    • @proyectof781
      @proyectof781  7 лет назад

      Hola gracias, si con los parametros originales en el codigo al querer dibujar un cuadrado te sale un rectangulo, puede ser que uno delos motores este dando menos pasos de los necesarios.
      estas dos variables determinan cuantos pasos tienen que dar cada motor para avanzar 1mm
      float StepsPerMillimeterX = 100;
      float StepsPerMillimeterY = 100;
      fijate que cada una corresponde a un eje, lo que podes hacer es imprimir un cuadrado y medir la impresion modificando los valores hasta que la impresion sea del tamaño que deberia ser, a mayor valor mas pasos para hacer un 1mm, en tu caso parece que un motor se esta quedando corto entonces deberias ir aumentando el valor en ese eje hasta q la medida sea correcta , cualquier duda comentame. Saludos

    • @horacioalegre6365
      @horacioalegre6365 7 лет назад

      Buenísimo voy a probar y te cuento que paso. Gracias

  • @paolaandreaavileslopez9203
    @paolaandreaavileslopez9203 7 лет назад

    hola yo tengo el mismo proyecto pero no logro que el eje z logre su movimiento manualmente ademas que tambien el x,y al igual despues de varios numeros me funciona que puedo hacer ?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola, para mover el eje z ,segun si lo queres mover desde el programa de processing la instruccion para moverlo es M300 S30 y M300 S50 , es mas creo que el M300 no es necesario, bueno envias por el puerto esos comandos asignandoles las teclas que quieras y ya, y si queres hacerlo desde arduino con botones por ejemplo ,fijate que el servo tiene su void al final del codigo que es penServo.write(penZDown); y (penZUP) , aca lo mismo se lo asignas a los botones, yo esa interfaz la tengo que escribir de nuevo por que la perdi ,cuando la tenga la subo , cualquier duda consultame. Saludos.

  • @gersondavila3994
    @gersondavila3994 8 лет назад

    bueno lo que pasa es que no tengo un servo motor y quería colocar otro motor de disquetera, habrá forma de conectar en la entrada del servo un motor de estos?

    • @proyectof781
      @proyectof781  8 лет назад +1

      Hola, disculpa no conteste antes por que no vi el mensaje, lamentablemente la coneccion para el servo entrega 5v constante para alimentarlo y la señal pwm que son pulsos de 5v modulados en ancho que vienen directamente del arduino y solo puede entregar 40mA por pin, esa corriente solo es suficiente para alimentar esos pequeños servos, tenes las 5 salidas analogicas q pueden ser utilizadas como digitales pero tampoco podes conectar un motor directamente necesitarias un driver y te sale lo mismo que comprar un servo , basicamente lo unico q puede controlar arduino directamente desde sus pins son leds y pequeños servos de 5v, cualquier otra duda consultame y si se me ocurre alguna solucion te la comento.
      saludos

  • @oscarlesta1
    @oscarlesta1 7 лет назад

    hola la pantalla negra que se muestra en el vídeo a mi me aparece distinta donde se refiere al puerto y tampoco aparecen los ejes y avance!!! cuando pulso la tecla p para elegir el puerto solo tengo las opciones com 1com 2 y com 3 tome una imagen pero no se como subirla para que veas

    • @proyectof781
      @proyectof781  7 лет назад

      hola la aplicacion que corro en prossecing en este video es una version modificada el link esta en la descripcion es este: goo.gl/ais3Jb

  • @oscarlesta1
    @oscarlesta1 7 лет назад

    hola fredy gracias a tus aprortes ya tengo funcionando la mini cnc ploter, a pesar que sigo a la espera de el servo en inskape dibuje una estrella luego la codifique y luego la imprimí y salio perfecta. ahora el problema que tengo es con el control manual puesto no logro hacerlo. pasa lo siguiente,abro processing ,le doy ejecutar, aparece la ventana de instrucciones tal cual como en el vídeo,menos las letras que están a la derecha de la misma(ejes X,..00 Y...00 eje z..up avance..05) y donde dice current serial port. dice null, y si selecciono el puerto me da solo la opción de seleccionar com 3 que es el puerto donde esta arduino

    • @proyectof781
      @proyectof781  7 лет назад

      hola , como te decia antes , la aplicacion donde se ve la ubicacion de los ejes en pantalla es la q esta para descargar en la descripcion de este video , la descargas, el archivo se llama gtrlejes.pde , luego con processing abierto haces click en Archivo/Abrir y seleccionas el archivo descargado "gctrlejes.pde" aceptas un cuadro q dice q tiene q crear una carpeta y listo , te mostraria el codigo en processing , les a ejecutar , y en esta ventana te deberian aparecer igual como en el video , el tema del puerto esta bien con la P selecciona el puerto donde este arduino conectado.

  • @jorgeluiscardona4193
    @jorgeluiscardona4193 4 года назад

    Buenas, muy interesantes sus vídeos le agradecería mucho si explicará el código de arduino sería de gran ayuda gracias de ante mano.

  • @ROCKRADIACTIVO
    @ROCKRADIACTIVO 7 лет назад

    Hola proyectoF...realize este proyecto: "Control Manual de ejes CNC" y mis resultados son los siguientes: Con las flechas laterales si se mueve el motor del eje X en ambas direcciones(ok),con las teclas RePag y AvPag se mueve el miniservo hacia arriba y hacia abajo(ok),con la tecla h vuelve a su pocision home(ok), pero sucede algo RARO con el motorcito del eje Y osea la base del papel se mueve, pero como una especie de VAIVEN como que va y regresa muy lento y siento que es ANORMAL por que se supone que debe de moverse LIBREMENTE hacia adelante y hacia atras es asi o me equivoco? ¿comó que podria estar pasando haber si me puedes echar la mano?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola, si lo normal seria que se mueva como el x, podes probar lo siguiente intercambiando los motores para comprobar si es el motor o el codigo ,pero sin desconectarlos , fijate en el codigo del arduino cerca del principio dice esto:
      // Initialize steppers for X- and Y-axis using this Arduino pins for the L293D H-bridge
      AF_Stepper myStepperY(stepsPerRevolution,1);
      AF_Stepper myStepperX(stepsPerRevolution,2);
      aca definis los puertos de los motores el #1 para Y ; el #2 para X, cambialos donde esta dice 1 pone 2 y viceversa , cargalo al arduino y probalo van a estar cambiados los controles , si el motor Y , se sigue moviendo mal es por que esta mal conectado , y si ahora anda mal el motor X, algo esta mal en la orden. Si no me explique bien comentame, si lo probas y es el motor probablemente solo tengas que invertir una bobina.

  • @AlexDGeneration
    @AlexDGeneration 8 лет назад

    Otra consulta sabes ya cambie en el sketch que subo al arduino cambie la parte del pin del servo la pin 9 como me indicaste y sigue sin funcionar y probé en el pin10= servo 2 y tampoco, me preguntaba si tendría que ver algo con el pwm??

    • @proyectof781
      @proyectof781  8 лет назад

      probaste el servo con otro codigo?

    • @AlexDGeneration
      @AlexDGeneration 8 лет назад

      Si, lo probé con un ejemplo y si sirve

    • @AlexDGeneration
      @AlexDGeneration 8 лет назад

      Me preguntaba si tal vez tenia que ver algo con la alimentación por pwm que tu usas una fuente de pc

    • @proyectof781
      @proyectof781  8 лет назад

      yo uso la fuente de pc , por que el usb no tiene la corriente suficiente para alimentar los motores. para usar la alimentacion externa de la shield tiene q estar quitado el jumper pwr

    • @AlexDGeneration
      @AlexDGeneration 8 лет назад

      Si, pero que voltajes son los que usas de la fuente de pc porque depende del color de los cables es el voltaje que dan que si no me equivocó son 3v 5v y 12v

  • @oscarlesta1
    @oscarlesta1 7 лет назад

    HOLA ESTOY A LA ESPERA DE RECIBIR EL MINI SERVO COMO YA TENGO TODA LA PARTE MECÁNICA ME GUSTARÍA PROBAR LOS EJES X Y Y BAJE EL CÓDIGO PARA MANEJAR LOS CON EL TECLADO PERO ME APARECE COMO UNA HOJA EN BLANCO. QUE ICE MAL?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola el procedimiento seria abrir prossecing ,se va a abrir un sketch en blanco , en esa ventana ir a Archivo luego Abrir , seleccionar el archivo descargado "gctrlejes.pde" aceptar un cuadro de dialogo que nos dice que tiene mover el archivo a la carpeta sketchbook en este momento nos mostraria el codigo en la ventana de prossecing luego clik en ejecutar y deberia abrir la ventana del programa como se ve en el video. Comentame en que momento tenes el problema y vemos que puede ser.

  • @maximilianomamani1265
    @maximilianomamani1265 7 лет назад

    hola! tengo problemas con el procesing apenas presiono las teclas para intentar mover los ejes se tilda la consola.. que puede estar fallando?? estoy usando motores de impresora

    • @proyectof781
      @proyectof781  7 лет назад

      Hola ,los motores deverian ser problema , comentame si solo deja de responder la consola o te aparece algun mensaje de error.

  • @ViscousCrab
    @ViscousCrab 7 лет назад

    hola, a que se debe que cuando abro una imagen para que el cnc lo empiece a dibujar, solo dibuja garabatos, y los hace en un rectangulo de 2cm(ejeX) x 3.5cm(ejeY)?
    cuando corro el processing me sale un mensaje que dice "Could not parse -1 for --display"
    que puedo hacer?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola, si diguja mal seguramente tengas que corregir algunos parametros en el codigo, para hacer las pruebas enviale una imagen simple como un cuadrado con medidas exactas para poder medirlo .
      Estas variables definen cuantos pasos va a dar los motores para avanzar 1mm , Ej. si una linea no mide lo que deberia tenes q aumentar el valor de ese eje
      float StepsPerMillimeterX = 100;
      float StepsPerMillimeterY = 100;
      Tambien puede ser que los motores vallan muy rapido, y se salten pasos en ese caso , en estas lineas definis la velocidad de los motores, las vas a encontrar abajo del void setup
      myStepperX.setSpeed(100);// podes ponerlas en 50 si queres va
      myStepperY.setSpeed(100); // a dibujar despacito pero no se va a equivocar, y tambien podes poner en 1 esta variable asi ;
      int StepDelay = 1 // Esta linea y as primeras estan serca del principio del codigo abajo de // Drawing settings, should be OK.
      cuaquier duda consultame, Saludos.

    • @ViscousCrab
      @ViscousCrab 7 лет назад

      proyectoF haré lo que me dices a ver qué tal, te aviso si funcionó, gracias ;)

  • @kaltronmega4456
    @kaltronmega4456 7 лет назад

    hola! muchas gracias por los tutos, con la version anterior del gctrl no me funcionaban los motores y con esta funcionan de perlas!!! Pero es normal que los motores y los micros calienten mucho? por ahora solo tengo un servo y un motor de cd, es posible bajarle el voltage?

    • @proyectof781
      @proyectof781  7 лет назад

      Hola ,si los integrados tienen algo de temperatura es normal , si se sienten demasiado caliente al tacto ya no, con respecto a la alimentacion esta placa no regula nada, entrega a los motores directamente la tension con la q alimentas la placa, por eso si tus motores son de 5v debes alimentar la placa con 5v.
      Saludos

    • @kaltronmega4456
      @kaltronmega4456 7 лет назад

      y que debo hacer para que el motor vaya mas lento por que veo que salta en algunos pasos y va mas rapido que el de tu proyecto?

    • @kaltronmega4456
      @kaltronmega4456 7 лет назад

      los motores tambien calientan lo mismo que los integrados o deben calentar mas o no calentar?

    • @proyectof781
      @proyectof781  7 лет назад

      capas calientan mucho por q van muy rapido como decis, fijate debajo del viod setup estas variables definen la velocidad de ambos ejes, proba con esos valores, si va muy lento podes aumentarlo
      myStepperX.setSpeed(50);
      myStepperY.setSpeed(50);
      y si se salta pasos en las lineas 45,46y47 tenes estas variables
      int StepDelay = 1;
      int LineDelay =200;
      int penDelay = 200;
      proba con esos valores , estas variables definen retrasos de tiempo

    • @proyectof781
      @proyectof781  7 лет назад

      si haces modificaciones comenta en tu codigo los valores originales o las modificaciones q hagas , en cada linea luego de un // podes escribir lo que quieras q arduino no lo interpreta como codigo

  • @oscarlesta1
    @oscarlesta1 7 лет назад

    hola los ejes controlan bien la posición final con la h perfecto,con las teclas Av pag, y Repag, cambia de up, a down, pero el mini servo no obedece !! tendrás un código como para probar el servo ? lo conecte a la cnc en la cual estoy probando los ejes y es lo único que no funciona

    • @proyectof781
      @proyectof781  7 лет назад

      probaste conectando el servo en el otro puerto? tambien lo podes probar enviando la orden desde el monitor serial de arduino , los comandos eje z son, mover arriba "M300 S50" y
      abajo " M300 S30" sin comillas .

    • @oscarlesta1
      @oscarlesta1 7 лет назад

      si ya probé en los dos puertos, y la otra opción,no la entiendo, como seria?

    • @oscarlesta1
      @oscarlesta1 7 лет назад

      si cargo un vector de una estrella tendría que levantar cuando termina el dibujo y no lo hace

    • @proyectof781
      @proyectof781  7 лет назад

      con la maquina conectada y solo ide de arduino abierto , Herramientas/ Monityor serial, se abre una ventana donde nos muestra los datos enviados por arduino y a su vez en la parte de arriba en cuadro donde podemos escribir le enviamos datos, ahi escribis el comando luego enter

    • @oscarlesta1
      @oscarlesta1 7 лет назад

      datos que aparecen en la ventana
      mini cnc plotter alive and kicking
      x rager is from 0.00 to 40.00 mm
      y ranger is from0.00 to 40.00
      escribi el comando y nada, el servo lo probé solo y funciona

  • @EdwardYesidAguirre
    @EdwardYesidAguirre 7 лет назад

    Hola, queria darte las gracias por tan excelente tutorial, de todos los que hay en la web elegí el tuyo...es el que a mi parecer esta mas completo. quería pedirte ayuda con la velocidad de los motores, principalmente con el del eje X debido a que en el retroceso de este se salta algunos pasos, se que los motores se encuentran bien porque en un codigo aparte les probé y funcionan bien, pero en este código al hacer cambios tanto en //const int stepsPerRevolution// como en //myStepperX.setSpeed// no logro que la velocidad del los motores disminuya, incluso he puesto estas variables a 1 obteniendo la misma velocidad, te agradecería si me pudieras ayudar.

    • @proyectof781
      @proyectof781  7 лет назад

      Hola gracias, que raro no se me ocurre por que no te funcione .setSpeed . Y con el otro codigo si te fuciona .setSpeed en ambos motores y con la misma fuente que estas usando ahora?
      Mientras solucionas la velocidad proba como te funciona con int StepDelay = 1;

    • @EdwardYesidAguirre
      @EdwardYesidAguirre 7 лет назад

      proyectoF Hola, en efecto setSpeed funciona perfectamente en el otro código, y si, mantengo las mismas condiciones para hacerlo funcionar, aun no logro hacerla funcionar como deveria, como te mencione es el motor del eje x se salta al retroceso y esto provoca que se desconfigure por completo. Come te mencione también intente configurar los parámetros para los pasos por milímetro pero sin ningún resultado, no se si en processing se pueda configurar algún parametro

    • @proyectof781
      @proyectof781  6 лет назад

      El codigo con el que funcina bien lo probaste con el motor puesto en la cnc ,digo para descartar algun problema mecanico ,que se trabe en una direccion puede ser que el lapiz este apretando mucho el papel y el motor se trabe , por que en el codigo la configuracion de los motores es igual que en los ejemplos de la libreria, y en processing no hay nada relacionado directamente con el control de los motores, si queres te dejo mi correo y me envias el codigo tal cual lo tenes cargado en el arduino y lo veo, si es que hiciste otras modificaciones y algo no halla quedado bien o por las dudas mandame el gcode con el que estas probando ,capas no te lo esta generando bien y le estamos echando la culpa a la cnc jaja.
      videoproyectos80@gmail.com

  • @ahav384
    @ahav384 8 лет назад +1

    gracias amigo me sirvió (y) !!!

  • @salinasbilliards980
    @salinasbilliards980 4 года назад

    Excelentes videos y tutos felicidades y gracias por compartir, Tengo una buena pregunta y es porque no es posible controlar los ejes X y Y con motores de CD como los de algunas impresoras, tengo dos buenos carriles de aprox 12 pulgadas con correderas y motores pero son de CD y me gustaría montarlos para una CNC de tamaño regular. Tuve la oportunidad de conectar y controlar la velocidad de un motor como lo haces en un tutorial y si funcionó con la programación y el cambio de velocidad como lo haces haciendo cambios desde speed=250 bajandola a 100 y 80 y 50. Me recomiendas cambiar los motores por unos de paso por paso? o si es posible conectar los de CD ? . Te comento que posteriormente tengo el propósito de armar otra CNC de mayor tamaño para colocar un Dremel o fresa para corte de material ya sea router o con dremel. Te mando saludos y gracias exccelentes videos. correo salinasproyectos@outlook.com

  • @gersondavila3994
    @gersondavila3994 8 лет назад +1

    ok gracias..., ya quede claro

  • @oscarlesta1
    @oscarlesta1 7 лет назад

    ES QUE YA LO BAJE MAS DE 10 BESES Y ME BAJA EL LOGO DE PROCESSING Y CUANDO LO QUIERO ABRIR DICE QUE NO ES VALIDO

    • @proyectof781
      @proyectof781  7 лет назад

      que raro ya revise el link y esta correcto , bueno te lo dejo aca ,copia todo el codigo y pegalo en una ventana nueva vacia de processing.
      /* version modificada para mover ejes por ruclips.net/channel/UC4QNO137PQxvAnCAUXVM-lQ
      de la version gctrl original de github.com/damellis/gctrl/blob/master/gctrl.pde */
      import java.awt.event.KeyEvent;
      import javax.swing.JOptionPane;
      import processing.serial.*;
      Serial port = null;
      // select and modify the appropriate line for your operating system
      // leave as null to use interactive port (press 'p' in the program)
      String portname = null;
      //String portname = Serial.list()[0]; // Mac OS X
      //String portname = "/dev/ttyUSB0"; // Linux
      //String portname = "COM6"; // Windows
      boolean streaming = false;
      float speed = 0.001;
      // variables ejes
      float movx = 0.0;
      float movy = 0.0;
      float avance = 0.5;
      String ejez = "up";
      String[] gcode;
      int i = 0;
      void openSerialPort()
      {
      if (portname == null) return;
      if (port != null) port.stop();
      port = new Serial(this, portname, 9600);
      port.bufferUntil('
      ');
      }
      void selectSerialPort()
      {
      String result = (String) JOptionPane.showInputDialog(frame,
      "Select the serial port that corresponds to your Arduino board.",
      "Select serial port",
      JOptionPane.QUESTION_MESSAGE,
      null,
      Serial.list(),
      0);
      if (result != null) {
      portname = result;
      openSerialPort();
      }
      }
      void setup()
      {
      size(550, 250);
      openSerialPort();
      }
      void draw()
      {
      background(0);
      fill(255);
      int y = 24, dy = 12;
      text("INSTRUCTIONS", 12, y); y += dy;
      text("p: select serial port", 12, y); y += dy;
      text("1: set speed to 0.001 inches (1 mil) per jog", 12, y); y += dy;
      text("2: set speed to 0.010 inches (10 mil) per jog", 12, y); y += dy;
      text("3: set speed to 0.100 inches (100 mil) per jog", 12, y); y += dy;
      text("4: Avance 0.5", 12, y); y += dy;
      text("5: Avance 1", 12, y); y += dy;
      text("arrow keys: jog in x-y plane", 12, y); y += dy;
      text("page up & page down: jog in z axis", 12, y); y += dy;
      text("$: display grbl settings", 12, y); y+= dy;
      text("h: go home", 12, y); y += dy;
      text("0: zero machine (set home to the current location)", 12, y); y += dy;
      text("g: stream a g-code file", 12, y); y += dy;
      text("x: stop streaming g-code (this is NOT immediate)", 12, y); y += dy;
      y = height - dy;
      text("current jog speed: " + speed + " inches per step", 12, y); y -= dy;
      text("current serial port: " + portname, 12, y); y -= dy;
      text("Ejes:---X:" + movx+ "---Y:" + movy ,400,50);
      text("Eje Z: " + ejez ,400,70);
      text("Avance: " + avance ,400,90);
      }
      void keyPressed()
      {
      if (key == '1') speed = 0.001;
      if (key == '2') speed = 0.01;
      if (key == '3') speed = 0.1;
      if (key == '4') avance = 0.5;
      if (key == '5') avance = 1;

      if (!streaming) {
      if (keyCode == LEFT) movx= movx - avance;
      if (keyCode == LEFT) port.write("G1 X" + movx + "
      ");
      if (keyCode == RIGHT) movx= movx + avance;
      if (keyCode == RIGHT) port.write("G1 X" + movx + "
      ");
      if (keyCode == UP) movy= movy + avance;
      if (keyCode == UP) port.write("G1 Y" + movy + "
      ");
      if (keyCode == DOWN) movy= movy - avance;
      if (keyCode == DOWN) port.write("G1 Y" + movy + "
      ");
      if (keyCode == KeyEvent.VK_PAGE_UP) port.write("M300 S50.00
      ");
      if (keyCode == KeyEvent.VK_PAGE_UP) ejez = "up";
      if (keyCode == KeyEvent.VK_PAGE_DOWN) port.write("M300 S30.00
      ");
      if (keyCode == KeyEvent.VK_PAGE_DOWN) ejez = "down";
      if (key == 'h') {movx = 0.0; movy = 0.0;}
      if (key == 'h') port.write("M300 S50 G1 X0.000 Y0.000 Z0.000
      ");
      if (key == 'v') port.write("$0=75
      $1=74
      $2=75
      ");
      //if (key == 'v') port.write("$0=100
      $1=74
      $2=75
      ");
      if (key == 's') port.write("$3=10
      ");
      if (key == 'e') port.write("$16=1
      ");
      if (key == 'd') port.write("$16=0
      ");
      if (key == '0') openSerialPort();
      if (key == 'p') selectSerialPort();
      if (key == '$') port.write("$$
      ");
      }
      if (!streaming && key == 'g') {
      gcode = null; i = 0;
      File file = null;
      println("Loading file...");
      selectInput("Select a file to process:", "fileSelected", file);
      }
      if (key == 'x') streaming = false;
      }
      void fileSelected(File selection) {
      if (selection == null) {
      println("Window was closed or the user hit cancel.");
      } else {
      println("User selected " + selection.getAbsolutePath());
      gcode = loadStrings(selection.getAbsolutePath());
      if (gcode == null) return;
      streaming = true;
      stream();
      }
      }
      void stream()
      {
      if (!streaming) return;
      while (true) {
      if (i == gcode.length) {
      streaming = false;
      return;
      }
      if (gcode[i].trim().length() == 0) i++;
      else break;
      }
      println(gcode[i]);
      port.write(gcode[i] + '
      ');
      i++;
      }
      void serialEvent(Serial p)
      {
      String s = p.readStringUntil('
      ');
      println(s.trim());
      if (s.trim().startsWith("ok")) stream();
      if (s.trim().startsWith("error")) stream(); // XXX: really?
      }

    • @oscarlesta1
      @oscarlesta1 7 лет назад

      proyectoF BIEN YA LO TENGO AHORA COMO LO GUARDO?

    • @proyectof781
      @proyectof781  7 лет назад

      lo q puede pasar tambien es q cuando bajas mas de una vez el mismo archivo el navegador le cambia el mobre al archivo abregandole un espacio y un numero y los ejecutables de processing no pueden tener espacios en su nombre, proba con el codigo que deje en la respuesta o modifica el nombre del archivo bajado . proba y comentame , de alguna forma la vamos a hacer andar!

    • @proyectof781
      @proyectof781  7 лет назад

      control + S o Archivo /Guardar

    • @proyectof781
      @proyectof781  7 лет назад

      en la carpeta sketchbook y con el nombre que quieras .pde , no recuerdo en windows la direccion de la carpeta , yo estoy linux , si no la encontras avisame y la busco

  • @RJ593ec
    @RJ593ec 6 лет назад

    Funciona jajaja pero se mueve lento el motor , le puse un motor de paso , como hago para mandarle mas potencia??

    • @proyectof781
      @proyectof781  6 лет назад +1

      Hola, en el codigo de arduino dentro del void setup encontras las siguientes lineas:
      myStepperX.setSpeed(50);
      myStepperY.setSpeed(50);
      ahi declaras las velocidades de los motores X e Y, el valor maximo es 255, si los motores siguen siendo lentos tal vez esa es su velocidad maxima, o la alimentacion no es correcta, si tenes algun dato sobre tus motores busca el voltaje y corriente optimos de trabajo y recorda que la motor shield v1 puede entregar de forma continua hasta 600mA maximo por salida. si te pasas de consumo podes quemar alguno de los l293d de la shield.

    • @RJ593ec
      @RJ593ec 6 лет назад

      Si esta en 255 ... emmm crees q si le meto un cargador al arduino valdra , esq cuando presiono las teclas de direcciones solo vibras el motor y x eso pienso q le falta energia

    • @proyectof781
      @proyectof781  6 лет назад

      Ah si estas alimentado actualmente todo desde USB es normal si no se mueven por que no les llega la corriente necesaria a los motores, en ese caso caso lo que podes hacer es , si tenes un cargador de celu de por lo menos 1A conectarlo a la alimentacion externa de la shield y sacar el jumper, para que los motores se alimenten del cargador y arduino del usb. procura sacar el jumper si no al arduino tambien le va a llegar la corriente del cargador.

    • @RJ593ec
      @RJ593ec 6 лет назад

      proyectoF ya le puse el cargador y solo vibra , cuantos voltios necesota el motor shield para q se mueva??

    • @RJ593ec
      @RJ593ec 6 лет назад

      proyectoF lo estoy haciendo con step motor dc