- Motor de passo:
- ULN2003 Stepper Motor Driver:
- Materiais requisitados:
- Diagrama de circuito:
- Código e explicação de trabalho:
Neste tutorial, faremos a interface do motor de passo usando MSP430. O MSP-EXP430G2 é uma ferramenta de desenvolvimento também conhecida como LaunchPad fornecida pela Texas Instruments para aprender e praticar como usar seus microcontroladores. Esta placa se enquadra na categoria de Linha de valor MSP430, onde podemos programar todos os microcontroladores da série MSP430. Se você é novo no MSP, verifique nosso tutorial de introdução ao MSP430.
Motor de passo:
O motor de passo é um tipo de motor CC sem escova que converte pulsos elétricos em movimentos mecânicos distintos. O eixo de um motor de passo gira em etapas discretas. Podemos obter passos precisos e velocidade de acordo com nossa necessidade.
Usaremos motor de passo 35BYJ46 bipolar, que está disponível no mercado por um preço baixo. Tem 6 fios, mas vem com 5 fios também. Existem 2 bobinas em nosso motor de passo. Cada um tem 3 fios saindo dele. Dos 3 fios, 1 é rosqueado centralizado, restando 2 fios conectados diretamente com a bobina. No total, temos 4 fios de sinal e 2 fios rosqueados centralizados que são conectados com fonte de alimentação de 5-12V.
No caso, se houver um total de 5 fios saindo do motor, então 4 fios são fios de sinal e 1 é centralizado com derivação em ambas as bobinas. Como isso.
Para verificar qual fio está centralizado ou qual é o fio de sinal, você deve verificar a resistência dos fios que saem do motor. Portanto, esses fios, que estão conectados com a mesma bobina, têm alto valor de resistência em comparação com a resistência de rosqueamento centralizado.
No diagrama acima, se verificamos o valor da resistência dos fios Azul e Amarelo e a resistência entre eles é maior do que o valor entre Amarelo e Vermelho ou Azul e Vermelho. Portanto, o vermelho é o fio com rosca centralizado.
Anteriormente, fizemos a interface do motor de passo com outros microcontroladores:
- Interface do motor de passo com o Arduino Uno
- Controle de motor de passo com Raspberry Pi
- Interface de motor de passo com microcontrolador 8051
- Interface do motor de passo com o microcontrolador PIC
O motor de passo também pode ser controlado sem qualquer microcontrolador, consulte este Circuito do driver do motor de passo.
ULN2003 Stepper Motor Driver:
A maioria dos motores de passo operará apenas com a ajuda de um módulo driver. Isso ocorre porque o módulo do controlador (em nosso caso, MSP) não será capaz de fornecer corrente suficiente de seus pinos de E / S para o motor operar. Portanto, usaremos um módulo externo como o módulo ULN2003 como driver de motor de passo. Existem muitos tipos de módulo de driver e a classificação de um mudará com base no tipo de motor usado. O princípio primário para todos os módulos do driver será fornecer / absorver corrente suficiente para o motor operar.
Neste projeto, usaremos o IC do driver de motor ULN2003. O diagrama de pinos do IC é fornecido abaixo:
Usaremos 4 portas de entrada e 4 portas de saída se IC.
Materiais requisitados:
- MSP430
- Motor de passo 35BYJ46 ou 28-BYJ48
- ULN2003 IC
- Fios
- Tábua de pão
Diagrama de circuito:
No diagrama acima, o fio VERMELHO do passo não está conectado com o PIN5 do IC. Ele deve ser conectado com 5V. O código de cores de seu motor de passo pode ser diferente das cores fornecidas no diagrama de circuito. Portanto, conecte os fios após verificar os fios de sinal corretos.
Vamos escrever nosso código usando Energia IDE. É o mesmo que o Arduino IDE e fácil de usar. O código de amostra para conduzir o stepper também pode ser encontrado no menu de exemplo do Arduino IDE.
Código e explicação de trabalho:
Antes de começarmos a programar com nosso MSP430, vamos entender o que realmente deve acontecer dentro do programa. Estaremos usando o método de sequência de 4 etapas, portanto, teremos quatro etapas a serem executadas para fazer uma rotação completa. Considere A, B, C e D como quatro bobinas.
Degrau |
Pin energizado |
Bobinas Energizadas |
Passo 1 |
6 e 7 |
A e B |
Passo 2 |
7 e 8 |
B e C |
etapa 3 |
8 e 9 |
C e D |
Passo 4 |
9 e 6 |
D e A |
Neste tutorial, vamos escrever o código do motor de passo MSP430. O programa completo pode ser encontrado no final do tutorial, algumas linhas importantes são explicadas abaixo.
O número de passos por revolução para nosso motor de passo foi calculado em 32; portanto, inserimos isso conforme mostrado na linha abaixo
const int STEPS = 32;
Em seguida, você deve criar instâncias nas quais especificamos os pinos aos quais conectamos o motor de passo.
Stepper myStepper (PASSOS, 6, 7, 8, 9);
Como estamos usando a biblioteca Stepper, podemos definir a velocidade do motor usando a linha abaixo. A velocidade pode variar entre 0 e 200 para motores de passo 35BYJ46.
Mystepper.setSpeed (200);
Agora, para fazer o motor se mover um passo, podemos usar a seguinte linha.
myStepper.step (STEPS);
Já que temos 32 etapas e 64 como a relação de engrenagem, precisamos mover 2048 (32 * 64 = 2048), para fazer uma rotação completa. Agora, carregue o código abaixo e altere o não. de etapas de acordo com sua necessidade.
É assim que você pode fazer a interface do motor de passo com um microcontrolador PIC, agora você pode usar sua própria criatividade e descobrir aplicações para isso. Existem muitos projetos por aí que usam um motor de passo.