Controle de velocidade e direção do motor de passo usando Arduino e módulo Bluetooth HC-06 por meio de um aplicativo Android

Este é um tutorial simples sobre como controlar a velocidade e a direção do motor de passo usando o arduino uno e o módulo bluetooth hc-06 por meio de um aplicativo de telefone Android. O motor que estou usando é um motor de passo unidirecional. Existem dois tipos de motores de passo unidirecionais e bidirecionais. Unidirecional possui quatro fases e bidirecional possui 6 fases. As fases devem ser controladas adequadamente, caso contrário a saída desejada não poderá ser obtida. Antes de prosseguir, presumo que você esteja ciente das fases mais íngremes do motor e saiba como controlá-las de forma eficaz para obter o rendimento máximo.

Projeto de controle Bluetooth do motor de passo Arduino – Princípio de funcionamento

O usuário emparelha seu telefone Android com o módulo bluetooth hc-06. Após o emparelhamento, o usuário pode dar partida no motor, pode mover o eixo na direção horária ou anti-horária, pode alterar a velocidade de rotação do motor, pode parar o motor com os comandos que estão incorporados ao lado do código. Os comandos podem ser alterados de acordo com a necessidade do usuário. Chegaremos à parte do código posteriormente no tutorial.

Circuito de controle de motor de passo Arduino

O diagrama do circuito do projeto é fornecido abaixo. O motor de passo que estou usando funciona em 12 V DC. As bobinas do motor de passo consomem cerca de 80 mA a 250 mA, portanto, não acionamos o motor mais íngreme diretamente dos pinos do Arduino. Precisamos de algum driver para essa finalidade e ULN2003, um IC de matriz querida, é uma boa opção. O ULN2003 é capaz de fornecer 500 mA de corrente a 50 V, pode facilmente fornecer 25 0 mA de corrente a 12 V.

As bobinas de passo são controladas através dos pinos digitais 2,3,4 e 5 do Arduino. Os pinos são conectados diretamente às entradas do uln2003. As saídas correspondentes do uln2003 fornecem energia às bobinas do motor. O Arduino é alimentado por um adotante externo de 12 V e o uln2003 é alimentado pelo mesmo adotante. Hc06 é alimentado pela saída de alimentação de 3,3 V do Arduino.
Observação: O aterramento do arduino deve ser aterrado com aterramento ULN2003. Ambos os ICs devem ter o mesmo potencial para se tornarem funcionais. Se não for aterrado corretamente, o circuito flutua e a saída é imprevisível.

Controle de velocidade e direção do motor de passo usando Arduino e módulo Bluetooth HC-06 por meio de um aplicativo Android

Controle de velocidade e direção do motor de passo usando Arduino e módulo Bluetooth HC-06 por meio de um aplicativo Android

Requisito de deslocadores de nível

Arduino fala com módulo bluetooth hc06 no protocolo de comunicação serial. A taxa de transmissão para comunicação serial pode ser alterada. Estou trabalhando na taxa de transmissão padrão, que é de 9600 bps. O módulo Bluetooth hc06 funciona em 3,3 V e pode ser alimentado pela saída de fonte de 3,3 V do Arduino Uno. Como o bluetooth hc06 funciona em 3,3 v, ele emite os dados na forma de sinal TTL avaliado em 3,3 v. Enquanto o arduino uno opera em 5 v e seus pinos emitem dados na forma de sinal TTL avaliado em 5 volts. Para equilibrar a tensão do nível TTL. Peneiras de nível de tensão são inseridas entre os pinos. O Arduino TX está transmitindo um sinal de 5 V que é alterado para 3,3 V por apenas um simples circuito divisor de tensão. O hc06 TX está transmitindo um sinal de 3,3 V cujo nível é alterado para 5 V.

Comandos para operar e controlar o motor de passo via Bluetooth

Enviando os seguintes comandos do aplicativo Android depois de emparelhado com o hc06 Bluetooth modaule fará com que o arduino se divirtaações no passo a passo motor.

é ou S = Inicia e para o motor de passo. O primeiro s dá partida no motor e o próximo o interrompe.
f ou F = Gira o motor de passo no sentido horário.
b ou B = Gira o motor de passo no sentido anti-horário.

Rotação de velocidade para motor de passo incorporado no código

0 = ————————————————– Velocidade de rotação=1000;
1 = —————— Velocidade de rotação=900;
2 = —————— Velocidade de rotação=800;
3 = —————— Velocidade de rotação=700;
4 = —————— Velocidade de rotação=500;
5 = —————— Velocidade de rotação=400;
6 = —————— Velocidade de rotação=300;
7 = —————— Velocidade de rotação=200;
8 = —————— Velocidade de rotação=100;
9 = —————— Velocidade de rotação=50;
O aplicativo Android que usei pode ser encontrado AQUI. É ótimo e funciona de forma eficiente em todas as taxas de transmissão. Verifiquei o emparelhamento e o funcionamento do motor em todas as taxas de transmissão e tudo funciona bem.

A função Mover para trás gira o motor no sentido anti-horário. A função IniciarMotor gira o motor no sentido horário. O usuário pode alterar os comandos de acordo com sua necessidade. O usuário também pode inserir as novas velocidades de rotação.
Mais projetos de microcontroladores embarcados envolvendo motores de passo estão presentes na seção de tutoriais. Cada projeto contém código-fonte gratuito e diagrama de circuito do projeto. Em cada projeto, a velocidade e a direção do motor de passo são controladas por meio de microcontroladores. Visite os tutoriais abaixo.

Controle de motor de passo via WiFi com nodemcu

Motor de passo com microcontrolador stm32f103 de 32 bits

Motor de passo controlado com microcontroladores 8051(89c51, 89c52)

Baixe o código do projeto escrito em arduino ide 1.6. O código é gratuito e de código aberto. Por favor, dê-nos o seu feedback sobre o projeto.

Assista ao vídeo do projeto aqui.

Código de arquivos de projeto do Arduino

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.