Índice:

Experimentos de PWM com motor DC aleatório + solução de problemas do codificador: 4 etapas
Experimentos de PWM com motor DC aleatório + solução de problemas do codificador: 4 etapas

Vídeo: Experimentos de PWM com motor DC aleatório + solução de problemas do codificador: 4 etapas

Vídeo: Experimentos de PWM com motor DC aleatório + solução de problemas do codificador: 4 etapas
Vídeo: Arduino na Prática - Motor DC 2024, Novembro
Anonim
Experimentos de PWM com motor DC aleatório + solução de problemas do codificador
Experimentos de PWM com motor DC aleatório + solução de problemas do codificador

Muitas vezes, o lixo de alguém é o tesouro de outra, e esse foi um desses momentos para mim.

Se você tem me acompanhado, provavelmente sabe que assumi um grande projeto para criar minha própria impressora 3D CNC a partir de sucata. Essas peças eram feitas de peças antigas de impressoras e vários motores de passo.

Este carro de impressora veio de uma impressora matricial da Texas Instruments da década de 1980. Infelizmente não me lembro qual era o modelo, mas tenho o número do motor, 994206-0001. Este motor CC também está equipado com um codificador, que pode ser útil para aplicações modernas. Na minha pressa de recuperar este conjunto, apenas o retirei e tirei uma foto de onde ele estava conectado.

Neste Instrutível, tentarei ver se o motor e o codificador realmente funcionam e para que servem as pinagens.

Suprimentos:

Motor DC com codificador

Arduino UNO, NANO

Ponte H L298N

DC Buck Converter

Fonte de alimentação capaz da (s) tensão (ões) associada (s) de que você pode precisar (um PC ATX antigo pode ser uma opção viável)

Cabos

PC com IDE arduino

Multímetro

Caderno!!

Etapa 1: Uma olhada rápida na montagem

Uma rápida olhada na montagem
Uma rápida olhada na montagem
Uma rápida olhada na montagem
Uma rápida olhada na montagem
Uma rápida olhada na montagem
Uma rápida olhada na montagem

A Figura 1 mostra a metade principal do carro. Ele foi equipado com o conjunto, o motor com o codificador e os trilhos para o antigo alimentador de papel matricial. Tirei os trilhos e parte do conjunto inferior. A peça de baixo que removi foi a barra de suporte de aço, que era bem pesada, na verdade (eles não parecem fazer assim hoje em dia).

A figura dois mostra onde J8 (o conector do codificador) e J6 (o conector do motor) foram removidos da placa de controle. Eu mesmo tirei uma foto dele para a escola nos rastreamentos e ICs do "quadro-mãe".

Nas imagens 3 e 4, você pode ver os conectores do motor e do codificador, respectivamente.

Depois de mapear os traços no codificador e reproduzir o esquema, consegui produzir meu próprio diagrama que poderia ter disponível. O pino do codificador foi a coisa mais importante para mim determinar e é o foco deste instrutível para solução de problemas. Veremos isso na próxima seção.

Etapa 2: Compreendendo a pinagem do codificador

Compreendendo a pinagem do codificador
Compreendendo a pinagem do codificador
Compreendendo a pinagem do codificador
Compreendendo a pinagem do codificador
Compreendendo a pinagem do codificador
Compreendendo a pinagem do codificador

Agora, tenho que descobrir qual é a pinagem do codificador. Eu marquei arbitrariamente os pinos de 1 a 8 e os descrevo na última foto. Minha hipótese, ao olhar para a placa de controle e os traços no próprio codificador, é que os pinos 1 e 6 são aterrados e 5 é Vcc (alimentação, 5V). A conexão para 2 é bloqueada de forma que é inútil e 3, 4, 7 e 8 são as saídas para o arranjo de diodos. AVISO: Estou fazendo uma suposição ousada com meu teste! Eu conectei terra a terra na minha fonte de alimentação, mas depois conectei 5 V ao codificador diretamente. Começando nesta alta, uma tensão poderia destruir seu codificador se você não souber qual é a tensão de que ele precisa (como eu não sabia). Portanto, você pode querer começar com uma tensão mais baixa, como 3,3 V. Depois de conectar minha fonte de alimentação de 5 V ao pino 5 do codificador e aterrar ao pino 1, coloco meu multímetro de aterramento no pino 1 e no pino 5 para garantir que a energia esteja presente, foto 2. Então eu começo a testar o pino 3, que é o que eu presumi ser uma das matrizes de fotodiodos, fotos 3-5. Como você pode ver, a tensão varia de perto de 0 V a perto de 5 V conforme giro o eixo do motor. Esse foi um bom sinal para provar que minha hipótese estava correta! Fiz o mesmo para os pinos 4, 7 e 8 e obtive os mesmos resultados. Portanto, agora, determinei quais são os pinos de saída do meu codificador.

Você pode fazer o mesmo com qualquer sensor óptico retirado de uma impressora da qual esteja recuperando peças, já que a maioria não vem com conectores de 8 pinos. Para impressoras domésticas modernas, eles parecem ser do tipo de 3 ou 4 pinos. HomoFaciens tem um ótimo vídeo no YouTube sobre como determinar um pino desconhecido para sensores ópticos.

Etapa 3: esboço simples do Arduino para mover o motor para trás e para frente

Esboço Arduino simples para mover o motor para trás e para frente
Esboço Arduino simples para mover o motor para trás e para frente
Esboço Arduino simples para mover o motor para trás e para frente
Esboço Arduino simples para mover o motor para trás e para frente
Esboço Arduino simples para mover o motor para trás e para frente
Esboço Arduino simples para mover o motor para trás e para frente

Agora que tenho dados para o codificador do motor, é hora de ver como o próprio motor funcionará. Para fazer isso, escrevi um esboço muito básico para o Arduino, fotos 3 - 5. Eu defino minha entrada para modulação por largura de pulso do L298N como 'enB'. Para os pinos 3 e 4, configurei-o para permitir que o motor troque de direção, conforme necessário. Isso vai

A. Ligue o motor

B. Mova-se em uma direção por 2 segundos

C. Troque a direção por 2 segundos e

D. Repita

Eu só quero testar a configuração e a funcionalidade e isso foi bem-sucedido (depois de alterar o pulso de 50 para 100, veja a foto acima).

O próximo esboço aumenta a aceleração, fotos 6 - 8. Eu começo o PWM de 100 (conforme determinado na primeira execução do esboço) e acelero para 255. Isso vai

A. Acelere o pino 3 (direção CW) de 100 a 255 em PWM por 0,1 segundo

B. Desacelere de 255 para 100 por 0,1 segundo

C. Troca de direção, pino 4 (CCW)

D. Acelerar / Desacelerar, igual ao pino 3

E. Repita

Esse processo é (meio que) visto na última foto, mas consulte o vídeo para um visual melhor.

Esses esboços básicos também podem ser adaptados ao seu motor DC. Acredito que muitas pessoas usam esse tipo de esboço para controlar robôs ou algum outro tipo de aparelho de rolamento. Eu só queria verificar a operação e obter um melhor entendimento por mim mesmo se este motor funcionará ou não.

Etapa 4: considerações finais (por enquanto)

É aqui que eu diria que a Fase 1 está concluída.

Eu sei que o codificador funciona e o motor vai funcionar com PWM no Arduino.

A próxima coisa para minha aplicação final seria:

1. Determine o pulso por revolução (PPR) do codificador para seu caminho A e B, superior e inferior. Tenho certeza de que há um esboço em algum lugar onde eu poderia executar meu PWM junto com um contador de pulsos do codificador, CW e CCW, mas ainda não encontrei um. (Quaisquer comentários sobre onde encontrar um esboço do Arduino serão muito apreciados!)

2. Determine como operar este motor DC / Codificador em GRBL e inevitavelmente calibre os eixos. (Novamente, por favor, comente se você souber de algum lugar) Eu gostaria de fazer isso com um laptop executado da Microsoft. Eu encontrei alguns usando Linux, mas isso não vai me ajudar.

3. Projete a máquina para operar como parte de um CNC completo.

Quaisquer pensamentos para este objetivo são definitivamente recomendados se você quiser deixá-los na seção de comentários. Obrigado por olhar e espero que isso ajude / inspire alguém.

Recomendado: