olá sou novo aqui no ldg, estou precisando de ajuda, pois estou terminando meu curso, só que não tenho nem ideia de como começar.

    Preciso de uma programação de arduino, que utilize o easy driver. E que faça as seguintes funções.

-que o operador insira o numero de passos na porta serial, e que esse motor de a resposta.

tem alguém que pode me ajudar com isso?

obrigado

Exibições: 688

Responder esta

Respostas a este tópico

Comece primeiro fazendo o driver dar um determinado numero de passo atraves do pino dele de passo, nesse exemplo o pino 3, inverta a rotação com o outro pino e ande os passos para tras.

Não esqueca que tem outros pinos que vai ter que colocar ao VCC ou ao GND, dependendo do driver e do que queira fazer, vai ter que determinar quantos passos ele vai dar por volta, e todas essas informações vai ver no site do fabricante do chip e da placa, é bem facil e tem duzia de exemplos por ai que fazem isso.

Depois de tudo isso dominado, parta para o serial e estara feito...

Uma dica, comece pesquisando por esquemas prontos e ligações do driver no google e estude e confira tudo antes de queimar a placa de CI ou ligar o power do circuito, os pinos não usados aterre eles para não dar problema, ja queimei um driver por causa disso...

Espero ter dado uma luz para começar...

[]´s

Jota

obrigado pela ajuda.. 

ja usei uma programação daqui mesmo do ldg e deu tudo certo,

só que o problema que não consigo fazer com que eu insira os passos por serial :\

estou usando a seguinte programação

/* Pinos de Configuração do Deslocamento (no Easy Driver):
//////////////////////////////////////////////
// MS1 MS2 //
// //
// LOW LOW = Passo completo //
// HIGH LOW = Meio passo //
// LOW HIGH = Quarto de Passo //
// HIGH HIGH = Oitavo de Passo //
// //
//////////////////////////////////////////////
*/
#define step_pin 3 // Define o pino 3 como pino dos passos
#define dir_pin 2 // Define o pino 2 como pino de direção
#define MS1 5 // Define o pino 5 como "MS1"
#define MS2 4 // Define o pino 4 como "MS2"
int direcao; // Para determinar o sentido do motor
int passos = Serial.read(); // Número de passos que você deseja executar (para passos completos, 200 = 1 volta)

void setup() {
pinMode(MS1, OUTPUT); // Configura "MS1" como saída
pinMode(MS2, OUTPUT); // Configura "MS2" como saída
pinMode(dir_pin, OUTPUT); // Configura "dir_pin" como saída
pinMode(step_pin, OUTPUT); // Configura "step_pin" como saída
digitalWrite(MS1, LOW); // Configura divisão de passos do motor (ver acima)
digitalWrite(MS2, LOW); // Configura divisão de passos do motor (ver acima)
digitalWrite(dir_pin, LOW); // Sentido (HIGH = anti-horário / LOW = horário) - Também pode ser alterado
Serial.begin(9600);
}

void loop() {
while(passos>=0) { // Enquanto o valor de passos for maior ou igual a zero
digitalWrite(step_pin, HIGH); // Envia nível lógico alto para o pino de passos do motor
delay(5); // Aguarda 5ms para o próximo passo
digitalWrite(step_pin, LOW); // Envia nível lógico baixo para o pino de passos do motor
delay(5); // Aguarda 5ms para o próximo passo
passos--; // Decrementa a variável "passos"

}
}

fiz uma mudança coloquei isto como pode ver

ali no int passos = Serial.read()

só não sei se vai funcionar não tive tempo ainda de testar..

obrigado pela ajuda se mais alguem tiver uma ideia me manda estou precisando ;)

alguem mais tem ideia de como fazer a programação do arduino para usar um motor de passo eo esay driver, e colocar na porta serial o numero de passos que ele tem que dar?

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço