A ideia principal é quando apertar o botão o motor gire uma quantidade x ( que eu possa determinar depois) para a esquerda e pare o motor. Quando eu apertar o mesmo botão ele gire para a direita a mesma quantidade X e pare o motor. E faz esses processos toda vez que o botão for acionado.
int motor_left[] = {5, 6};
int motor_right[] = {4, 3};
int botao = 1;
int estadoBotao = 0;
int var = 0;
int var2 = 0;
void setup() {
// Setup motors
int i;
for(i = 0; i < 2; i++){
pinMode(motor_left[i], OUTPUT);
pinMode(motor_right[i], OUTPUT);
pinMode(botao, INPUT);
}
}
void loop() {
var=digitalRead(botao);
if ((var == HIGH) && (var2 == LOW)) {
estadoBotao = 1 - estadoBotao;
delay(20);
}
var2=var;
if(estadoBotao == 1) {
digitalWrite(motor_left[0], HIGH);
digitalWrite(motor_left[1], LOW);
digitalWrite(motor_right[0], HIGH);
digitalWrite(motor_right[1], LOW);
delay(1000);
digitalWrite(motor_left[0], LOW);
digitalWrite(motor_left[1], LOW);
digitalWrite(motor_right[0], LOW);
digitalWrite(motor_right[1], LOW);
delay(10000);
} else {
digitalWrite(motor_left[0], LOW);
digitalWrite(motor_left[1], HIGH);
digitalWrite(motor_right[0], LOW);
digitalWrite(motor_right[1], HIGH);
delay(1000);
digitalWrite(motor_left[0], LOW);
digitalWrite(motor_left[1], LOW);
digitalWrite(motor_right[0], LOW);
digitalWrite(motor_right[1], LOW);
delay(25);
}
}
Consegui chegar nessa parte. Agora não consigo mais
Tags:
As respostas para este tópico estão encerradas.
Em anexo código
Aquele rotação eu posso alterar?
Claro, ou no código,ou apenas invertendo os fios dos motores que é mais rápido!
Quando eu aperto o botão ele gira para a esquerda mas não volta para a direita.
Quando você aperta o botão ele gira para a esquerda e quando você aperta novamente o botão ele não volta para a direita? é isso?
Então a simulação do Tinkercad está incorreta porque ele faz isso sem eu precisar apertar o botão.
Não aconselho o uso de simuladores
fiz um vídeo,vou editar ainda, envio na seguencia
ok obrigado
Então o motor para depois de 2 segundos?
é o que diz em sua pergunta o motor gira uma quantidade x, e para.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por