Tudo bom pessoal ? Hoje vou mostrar como controlar a velocidade de um motor de passo , geralmente encontrado em impressoras por ter uma maior precisão na sua rotação .
Voce vai precisar de :
1 Potenciometro de 10KΩ
1 motor de passo bipolar (encontrado em impressoras
1-arduino
Jumpers variados
Vamos a montagem .
O potenciomentro possui 3 terminais , conforme voce gira o eixo , ele altera a resistencia nesse pino central .
um pino deve ser ligado ao GND , o central a porta analogica A0 e o outro pino ao 5v .
No video eu digo que não tem importância a ligação dos fios , mas tem importância sim , como voce pode ver na imagem ao lado , cada par de fios é a ligação de uma bobina
O motor é simples , os cabos são aos pares (preto e marrom )(amarelo e laranja ) .
é apenas liga-los ao arduino , do pino 8 ao pino 11 .
Feita as ligações , agora é programar o arduino .
#include <Stepper.h>
const int stepsPerRevolution = 200;
Stepper myStepper(stepsPerRevolution, 8,9,10,11);
int stepCount = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
// read the sensor value:
int sensorReading = analogRead(A0);
// map it to a range from 0 to 100:
int motorSpeed = map(sensorReading, 0, 1023, 0, 100);
// set the motor speed:
if (motorSpeed > 0) {
myStepper.setSpeed(motorSpeed);
// step 1/100 of a revolution:
myStepper.step(stepsPerRevolution/200);
Serial.println(motorSpeed);
}
}
O video ta errado, ta mostrando o de sensor de estacionamento
ResponderExcluirOpa , enviei o video errado , já estou corrigindo . Muito obrigado por acompanhar o blog !
ExcluirNão tem problema em ligar os fios diretamente? Tenho medo de queimar meu Arduino fornecendo uma corrente maior que os 40mV.
ResponderExcluirnão tem problema , o arduino irá fornecer 5V por 40mA para as bobinas do motor , o maximo que pode acontecer , se voce estiver ligando um motor de voltagem maior, 12v por exemplo é o motor não girar ou só fazer um barulhino das bobinas
ExcluirConsigo montar com este arduino controle para 2 motores de passo e colocar em cada motor realimentação para confirmar a sua posição? Esta realimentação é feita por potenciometro de alta precisão (potenciometro gira 10 voltas, para mim é suficiente).
ResponderExcluirSim , consegue , irá usar 8 portas digitais e duas entradas analogicas .
ExcluirNo codigo ficaria :
..
Stepper myStepper(stepsPerRevolution, 2,3,4,5);
Stepper myStepper2(stepsPerRevolution, 6,7,8,9);
....
e o resto igual para um segundo motor .
Não tem como fazer uma amplificação de tensão por redução de corrente para conseguir 12V
ResponderExcluircaso queira , dá pra usar um optoacoplador ou transistor para fazer o acionamento do rele com bobina de 12v .. ou compre um rele com bobina de 5V
ExcluirCaso eu queira usar o motor mas sem o potenciometro. o que deveria ser alterado no programa ?
ResponderExcluirTodo o programa
ExcluirBoa tarde,
ResponderExcluirSou leigo e estou estudando um pouco sobre eletrônica. Gostaria de saber se é
possível controlar a velocidade do motor de passo de uma leitora de cd.
Com certeza
ExcluirQue modelo de arduíno você usou ?
ResponderExcluirArduino UNO R3
ExcluirVictor, meus motores tem de 2 e tem uns de 7 fios outro de 5, como faço para saber qual vou utilizar ?
Excluirola amigo?gostaria de fazer um controle de motor de passo usando o arduino e uln2003 e potenciometro e dois botoes.um para direita e outro para esquerda?onde consigo este codigo e o esquema?se poder me ajudar fico grato?cone_barbosa@hotmail.com
ResponderExcluirBom dia, tenho o Arduino Duomilenove, tem como usar 2 ou mais motores de passo? Sendo que cada um deles realize uma tarefa diferente?
ResponderExcluirQualquer coisa: pablofrandoloso@hotmail.com
Obrigado
tem sim , já respondi essa pergunta acima
ExcluirLegal, gostei do blog, vou favoritar.
ResponderExcluirsucesso pra você.
Olá Victor! Tenho uma base que se movimenta por um motor de passo e usa um controlador A4988. O movimento do motor se dá apertando um botão. Consigo trocar este botão por um Joystick Arduino simples somente para eu poder ter mais controle do motor.
ResponderExcluirObrigado e parabéns pelo blog!
Muito bom, parabéns pelo blog
ResponderExcluirTenho uma pergunta: como se pode amplificar a corrente na saída do arduino para um motor de 12 Volts ou mais?
Obrigado
sim , voce vai precisar de um driver , que pode ser comprado ou montado com aluns transistores
ExcluirOutra pergunta amigo: Como ficaria o código para, ao invés de um potenciômetro, usar um sensor, digamos, de presença - sendo que, ao se passar na frente do sensor, o motor rode X graus ou usasse uma chave de fim de curso e após, o motor volte a sua posição original. Obrigado
ResponderExcluirCom um IF / Else vc resolve isso ,só pegar o sinal digital do sensor e aplicar ao motor
ExcluirPodes, por gentileza, responder essa última pergunta? Obrigado
ResponderExcluiroi alguem pode me ajudar como faço a ligaçao de um motor com 4 fios e um deles e azul e 3 cinza?
ResponderExcluirUsa um Led qualquer e vai fazendo testes; encosta (enrola) um fio do motor em uma perna do Led e outro fio na outra perna do Led e roda o motor com a mão, se acender o Led, vc achou o par correspondente a uma bobina, o outro par de fios é da outra bobina do motor. Enquanto não acender o Led, vai mudando a posição dos fios. Abçs
ExcluirEste comentário foi removido pelo autor.
ResponderExcluirOlá Victor. Poderia tirar uma dúvida? Estou tentando fazer funcionar um motor de passo Nema 34 com um driver CNC modelo DQ860MA ligado à um ARDUINO UNO. Antes de comprar o Motor de Passo Nema fiz alguns testes com micro motores de passo (aeromodelo) e fucionou perfeito... já com o driver como interface não consegui descobrir o controle de velocidade direção e passo ...
ResponderExcluirtenho um motor de 40 ohms vai funcionar?
ResponderExcluiresta dando erro no compilar
ResponderExcluirThank you, I have just found the same stepper motor :) so it helped. Thanks!
ResponderExcluir