Jump to content

Motores passo a passo controlados por RC5


diogofd8

Recommended Posts

Bom dia,

Tenho um projeto para preparar com alguma urgência de um carro com um motor passo a passo (step motor) em cada roda (tem 2 rodas e um apoio). Em termos de algoritmo e raciocinio tenho tudo pronto, mas passar daí para um código AVR C que funcione é outra história. Estou bastante verde no que toca a programar no arduino e para o prazo curto que tenho duvido que consiga chegar lá sozinho pelo que venho aqui pedir uma mãozinha.

 

O algoritmo/raciocinio:

1) Detetar com uma interrupção um flanco na entrada que seria o START bit a indicar uma introdução de uma cadeia de bits correspondentes a uma tecla;

2) Esperar 3.58ms

3) Ter várias interrupções de 901us e detetar se nesse ponto tenho entrada a 1 ou a 0, se estiver a um, colocar num vetor[13] o valor 1 na posição da variável BIT que será incrementada +1 a cada interrupção

4) reiniciar a variável BIT

5) comparar o vetor[13] que será a chave de um botão pressionado com as chaves de todos os botões que temos no comando

6) de acordo com o resultado da comparação, mover o stepper +1, -1 ou 0 (parado) 1 passo.

 

 

Com isto, se mantiver o botão premido o programa funciona em ciclo e estará sempre a mandar o stepper rodar (tenho uma libraria que o faz rodar 90º para a frente ou para trás independentemente da posição atual).

 

Agradecia alguma ajuda no código visto que nem tenho uma ideia bem definida de como começar ou por onde começar.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.