[Tutorial] Motor de Passo 28-BYJ-48

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[Tutorial] Motor de Passo 28-BYJ-48

Mensagem por Admin em 24/1/2017, 00:44

Ola povo[3] bounce , O projeto de hoje é bem legal, Motores de Passo Cool Laughing. Pode parecer complicado, e realmente é um pouco Shocked, mas com uso das bibliotecas do arduino, você não precisa de um alto conhecimento sobre funcionamento dos motores de passo. Entretanto, você deve no minimo, se informar sobre as caracteristicas do seu modelo (bipolar, unipolar, numero de steps, etc, etc). Não se esqueça de usar uma fonte externa caso seu motor use +500mA, tome cuidado !

Atenção, neste exemplo, estou usando as configurações do MEU MOTOR, USE AS SUAS!

Materiais Utilizados:

1 - Motor de Passo 28-BYJ-48 + Driver ULN2003.
1 - Arduino (Qualquer modelo).
E muitos fios para ligar esse unico motor lol! .

Circuito:



Este meu motor, é bem famoso e simples para projetos pequenos a onde nao se exige muito Torque. Basicamente é um motor Unipolar de 64 Passos com uma Redução de 64x, logo o deixa com 4096 passos para completar 1 volta.

Datasheet:http://robocraft.ru/files/datasheet/28BYJ-48.pdf

Vamos ao Código!

Código:

#include <AccelStepper.h>

AccelStepper motor1(4, 26, 27, 28, 29);//Motor FULL4WIRE, ligado aos pinos z,y,x,w.

int graus = 90;//Mude aqui quantos graus você quer que o motor gire.

void setup()
{
 motor1.setCurrentPosition(0);
}

void loop()
{
 mathgraus();
}

void mathgraus()
{
 float math1 = int(graus / 0.17578125);//2048 passos (0.17578125)
 motor1.moveTo(math1);
 
 while (motor1.distanceToGo() != 0)
 {
 motor1.setMaxSpeed(256);
 motor1.setSpeed(64);
 motor1.runSpeedToPosition();
 }
 
 motor1.disableOutputs();
}

Por alguma razao, meus 2 motores 28BYJ, Estao com 2048 passos para completar uma volta, mas tudo bem. Para saber quantos passos você precisa dar para "Andar X graus", faça:

360/STEPS, a onde steps são os passos para completar uma volta no seu motor. No meu caso foi 360/2048, que me gerou 0,17 graus por Passo!. Ainda pesquisarei mais para entender esse "Erro" Acima que citei.

Este codigo nao esta implementado a opçao de inverter a direção da rotação, que deve ser feita com SetPinsInverted, Veja na pagina oficial da biblioteca abaixo.

Download e TODOS comandos relacionados à biblioteca:

http://www.airspayce.com/mikem/arduino/AccelStepper/index.html
avatar
Admin
Admin

Mensagens : 7
Data de inscrição : 21/01/2017
Idade : 19
Localização : Bauru

Ver perfil do usuário http://arduinobrz.forumeiros.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum