Pessoal, preciso dar um home nos motores de uma maquina que estou construindo, não e uma impressora 3 d nem uma cnc, depois que eu terminar meu projeto posso ate postar aqui para todos verem. Esta maquina tem 3 motores que antes de começarem os trabalhos tem que estar numa posicao inicial, pensei em colocar no void setup() uma funcao trazendo todos eles para uma posição inicial, ou seja, daria uma comando para um motor ir para esquerda ate atingir um microswith(chave fim de curso) e desligar. Ate sei fazer o contrario, fazer um motor ser acionado depois que a chave fim de curso for pressionada, mas o contrario nao estou sabendo.
Alguem sabe como posso fazer isso? Nao estou usando biblioteca para motores de passo estou usando Motor de Passo NEMA23 - 1.8° - Híbrido - 15Kgf/cm com drive 2m542.
Tags:
Penso que a melhor forma é fazer algo tipo o exemplo do push button do Arduino, so que ao inves de usar o btn, pode usar o micro switch.
Quando detectar o pulso por uma porta do arduino, pode inverter a rotação do motor e andar para o outro lado.
Daria certo assim ?
[]´s
Jota
Testei algumas coisas, nao sei se esta correto, mas o codigo abaixo funcionou bem. Meu código original e bem maior para ficar mais simples de entender o que fiz estou postando algo mais simplificado caso alguém um dia possa precisar.
int dir = 10;
int pulse = 11;
int velocidade = 700;
int passo = 2000;
void setup() {
pinMode(dir, OUTPUT);
pinMode(pulse, OUTPUT);
pinMode(5,INPUT); //pino analogico, aonde esta ligado o endstop//
analogWrite(5,1);
}
void loop() {
for (int i = 0; i< passo; i++)
{
movimentoantihora();
}
}
void movimentoantihora()
{
int leitura = analogRead(5);// obs.: ligar o endstop no NC assim quando a chave for apertada o motor desliga, com o a ligacao em NO ocorre o inverso//
if(leitura == 0){
digitalWrite(dir, HIGH); // HIGH sentido antihorario, se for mudar a direcao colocar LOW//
digitalWrite(pulse, HIGH);
delayMicroseconds(velocidade);
digitalWrite(pulse, LOW);
delayMicroseconds(velocidade);
} else {
analogWrite(pulse,LOW);
}
}
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por