Bom dia a todos do guiacnc, venho por meio deste topico solicitar ajuda com a configuração do programa mach3 ou o turbocnc, pois nos 2 programas minha cnc apresenta o mesmo problema, ela apenas funciona no modo jog no programa "RoutOut Manager V 3.5", o problema é o seguinte, quando eu entro no modo jog do mach3 ou turbocnc, e mando o comando para ir para um lado ou para outro, o carro começa a se deslocar e nao para mais, só muda de direção se eu clicar para o lado contrario do que ele esta indo, isso para o x ou y, acontece a mesma coisa para os dois, estou usando o arduino, 2 cis unl2003, 2 motores de passo unipolar de impressora, com o arduino eu consigo ler a porta paralela, com o programa parallel por do site do rogercom eu consigo ligar e desligar os pinos que eu quero q no caso são 2 e 6 para x, e 3 e 7 para y, isso primeiro numero é o passo e o segundo é a direção, com esse prog eu consigo fazer ela andar tambem sem problemas, o problema é que no mach3 e turbocnc eu dou o comando para um passo e o motor nao para mais de andar, não sei se esta configurado algo errado no programa, estou com duvida na configuraçao do motor tuning no mach3, pode ser q seja ali que eu esteja errando, os 2 motores q uso são de 12V e 1.8º o angulo de giro, mas estou usando eles com uma fonte de pc e estou alimentando os 2 com 5v para eles e nem o ci 2003 aquecerem.
Se tiver algum manual ou tutorial sobre esse tipo de configuraçao eu agradeço muito, vou postar o codigo do meu arduino, pois pode estar nele o problema que estou tendo.
desde ja agradeço pela atenção de todos.
#include <Stepper.h>
int pino14 = 14;
int pino15 = 15;
int pino16 = 16;
int pino17 = 17;
Stepper motor1(200, 4, 5, 6, 7);
Stepper motor2(200, 8, 9, 10, 11);
void setup(){
Serial.begin(9600);
pinMode(pino14, INPUT);
pinMode(pino15, INPUT);
pinMode(pino16, INPUT);
pinMode(pino17, INPUT);
digitalWrite(pino14, HIGH);
digitalWrite(pino15, HIGH);
digitalWrite(pino16, HIGH);
digitalWrite(pino17, HIGH);
}
void loop(){
int x = digitalRead(pino14);
int y = digitalRead(pino15);
int dirx = digitalRead(pino16);
int diry = digitalRead(pino17);
Serial.println(x);
Serial.println(y);
Serial.println(dirx);
Serial.println(diry);
if (x == LOW && dirx == LOW){
motor1.setSpeed(20);
motor1.step(1);
}
if (x == LOW && dirx == HIGH){
motor1.setSpeed(20);
motor1.step(-1);
}
if (y == LOW && diry == LOW){
motor2.setSpeed(40);
motor2.step(1);
}
if (y == LOW && diry == HIGH){
motor2.setSpeed(40);
motor2.step(-1);
}
}