Arduino CNC Shield V3 extrenal signals X step/dir, y step/dir, z step/dir

Bueno días.

Soy nuevo en el mundo de las CNC y estoy haciendo algunas pruebas con una CNC Shield V3, necesito si alguien me puediese explicar como usar los pines que aparecen en el adjunto.

muchas Gracias

external signals.png

external signals.png

No entiendo tu pregunta.Esos pines estan conectados a los drivers que tu insertas en la shield para manejar los motores (normalmente A4988 o DRV8825) y los maneja el firmware que cargas en la placa arduino UNO (normalmente grbl).Entonces cuando la placa da una señal de paso (step) y direccion(dir) esa señal llega al driver y tambien a esos pines ,por si queremos usar esas señales para algo en concreto o bien si la shield no estuviera insertada sobre el UNO ,poder conectarla a otro microcontrolador y entrar por ahi las señales dir y step de los diferentes ejes.

gracias por responder, lo que queria saber era si a traves de esos pines se podia menejar los motores sin usar el software, especificamente para llevar la cnc a una posicion sin usar el machine control del universal gcode sender.

Gracias
Salu2

en el firware grbl tienes la carpeta cpu_map dentro encontraras el fichero para el atmega 328 con las definiciones de los pines usados para x,y,z ,puedes usar la libreria stepper o accelstepper para mover los motores ,pero si al final quieres hacer una cnc no reinventes la rueda y usa grbl

gracias hermano, yo estoy usando grbl, lo unico que necesito saber es si puedo usar esos pines para avanzar la cnc hasta una posicion 0 sin tener que hacerlo desde la laptop.

salu2

Pero es que necesitas el ordenador para que haga de puente!! mira, en las impresoras 3d todas tienen un lcd,botones y lector sd para hacerlas independientes del ordenador y puedes mover los ejes y hacer homing,pero estas estan basadas en arduino mega(y muchas otras placas) que tiene mucha mas memoria y muchos mas pines para meter soporte a lcd y sd,pero en el UNO faltan pines y memoria,puede que encuentres alguna modificacion por ahi basada en grbl con soporte a lcd.Piensa que cuando mueves tu maquina ,es el microcontrolador el que da las señales a esos pines ,tu no puedes meterlas "a mano",tienes que hacerlo a traves de una pantalla u ordenador.

Moderador:
Vaya cantidad de faltas que has cometido y recién empiezas en el foro.
Vamos enumerando y por favor EDITA todas y cada una

  1. En el post inicial hay una imagen adjunta que no se ve. Lee esto y corrige
    COMPLEMENTARIO: Como adjuntar una imagen adjunta

  2. No repitas lo que se lee arriba y menos que menos dos veces como hiciste en el post#2

  3. Idem 2. pero ahora solo lo repites una vez.

Hola,

Yo estoy parecido Ismael.

Lo que he hecho es coger uno de los drivers y conectarlo fuera del CNC shiedl, en el protoboard.

Y ahí es donde estoy haciendo pruebas de programación.

Hay bastante información de cómo conectar uno de esos drivers.

En cuanto a programación, ayer mismo publiqué uno de los códigos que estoy utilizando para trastear.

Aquí te pongo otra variante

const int dirPin =5;
const int stepPin=2;
const int BOTON=12;

const int paso=200;
int micropasos=1000;

char n;
int vueltas;



void setup() {

  Serial.begin(115200);
  
  pinMode(dirPin,OUTPUT);
  pinMode(stepPin,OUTPUT);
  
 
}



void loop() {


 while(Serial.available()){
     
  n=Serial.read();
  if (n=='1'){
  digitalWrite(dirPin,HIGH);
  }else if(n=='0'){
  digitalWrite(dirPin,LOW); 
  }
  
  for(int i=0;i<200;i++){
      digitalWrite(stepPin,HIGH);
      delayMicroseconds(micropasos);
      digitalWrite(stepPin,LOW);
      delayMicroseconds(micropasos);
      
      }

  } 
}

En este caso introduces un 1 o un 0 mediante teclado, enter.

girará una vuelta en un sentido según el que introduzcas.

espera a que introduzcas de nuevo.

En este ejemplo puedes ver el comportamiento de un " if + else if " o un " if + else "

Si cambias el" else if " por un simple " else " verás una variación de comportamiento.

No sé si te servirá de algo, saludos.