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

Exibições: 852

As respostas para este tópico estão encerradas.

Respostas a este tópico

Tá organizado o código. Não entendi

Você colou o codigo na area de texto, o certo é anexar, leia e entenda melhor por favor.

Obrigado por colaborar.

PD: Não percebi que o colega Eduardo Marcondes já havia esclarecido isso.

Abs.

CK

E esse codigo não ficou bom ? Ta parecendo que ele faz isso que vc falou.

Como está e como deveria ser ?

O comentário do Carlos kwiek é em função de vc ter colocado o codigo no texto da questão. A sugestão dele é que seja anexado, assim os caracteres especiais são preservados e em um click quem vai te ajudar já está testando o programa. O controlC ControlV costuma dar problemas.

Eu testei no tinkercad antes da fazer a montagem da maquete e não está funcionando eu realmente não entendo o por que. 

Posso fazer um vídeo corrigindo e comentando esse seu código? foi você mesmo quem fez?

Pode adoraria. 

São dois motores que rodam um em sentido contrario ao outro? Vai usar esse ponta H mesmo?

É um motor só e a ponte é esse mesmo

No código tem dois erros graves, a porta de leitura do botão não pode ser 1, pois as portas 0 e 1 são usadas na comunicação serial com arduino. e o código não para de executar a função pois estadoBotao está sempre 0 ou 1 ou seja, sempre vai estar executando uma das operações e nunca parado

Boa tarde JVBS,

sugestões:

1. Leia http://labdegaragem.com/forum/topics/sugest-o-de-como-postar
2. Remova seu sketch da área de texto do seu tópico;
3. Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo" e anexe o arquivo

com o seu sketch.

RV

valeu,fiz isso!

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço