collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[Ontem às 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: 5 phases - stepper motor driver  (Lida 2350 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline c3dr1c

  • Mini Robot
  • *
  • Mensagens: 854
5 phases - stepper motor driver
« em: 12 de Fevereiro de 2013, 22:00 »
Boas pessoal.

Decidi utilizar o meu motor de 5 phases num projecto futuro que tenho idealizado, mas nao encontro nenhum IC por ai à venda para o controlar.

Portanto decidi fazer o meu driver utilizando logica digital mas parece-me que  estou a ir por um caminho que envolve utilizar muitas portas logicas. Alguem me consegue dar uma ajuda para simplificar o circuito ou ir por outro caminho?

O circuito base é este:


Portanto preciso de 10 saida digitais do micro, mas como isso é so perder recursos quero reduzir para apenas 2 saidas (CLK, DIR). Então para half-step temos a sequencia na tabela abaixo. Como sao apenas 10 "estados" diferentes podemos simplificar/reduzir as saidas digitais para 4.


E aqui está o circuito. Dentro do rectangulo vermelho está a simplificação e dentro do verde um contador de 4 bits com clock sincrono, utilizando flip-flops JK. Mas este contador so conta numa direcção, tenho portanto de alterar o contador para poder inverter a direcção de contagem e criar uma condição para quando for 1001 fazer no "estado" seguinte clear, mas isso faço depois... Agora, será que dá para simplificar o circuito?
Outra coisa que me lembrei, será que devo acrecentar uma porta OR a cada AND de 3 entradas, para igualar os tempos de propagação?


Cumps
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: 5 phases - stepper motor driver
« Responder #1 em: 12 de Fevereiro de 2013, 23:38 »
Usa um micro para tratar da lógica.
Avr fanboy

Offline c3dr1c

  • Mini Robot
  • *
  • Mensagens: 854
Re: 5 phases - stepper motor driver
« Responder #2 em: 13 de Fevereiro de 2013, 23:21 »
Pois realmente é a melhor solução e aproveito e treino mais um pouco de avr-gcc...

Mas nao sei por onde começar, alguem me da uma dica? Bem tambem ainda nao meti a cabeça a pensar...


Preciso de 3 input's: CLK, DIR, EN
Preciso de 10 output's: A, B, C, D, E, F, G, H, I, e J
Basicamente tenho uma sequência de "ligar/desligar os output's" a cumprir, que tanto pode decorrer em ambos os sentidos. A sequência avança para a "linha de estados" seguinte sempre que o CLK muda do estado 0 para 1. Caso DIR=0 -> CW, caso DIR=1 -> CCW

A minha primeira impressão é criar a sequencia, mas como faço isso? Crio várias linhas em que cada linha liga e desliga os output's? Faço um contador e trabalho a partir dele? Tou mesmo à nora.

Se fosse labview criava um contador decimal de numeros inteiros e sempre que o numero actual do contador for divisivel por 2 liga um output. Assim ja conseguia ligar e desligar o output uma vez sim, outra vez nao, outra vez sim, etc... Basta alterar o numero por qual é divisivel para definir a frequencia com que se liga o output. Mas isto nao é labview :P


"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: 5 phases - stepper motor driver
« Responder #3 em: 13 de Fevereiro de 2013, 23:24 »
E podes fazer precisamente o mesmo em C.
Ou fazes uma máquina de estados com switch/case, ou com um monte de if's ou arrays a fazer de look up tables.
Avr fanboy

Offline c3dr1c

  • Mini Robot
  • *
  • Mensagens: 854
Re: 5 phases - stepper motor driver
« Responder #4 em: 16 de Fevereiro de 2013, 14:29 »
Será algo deste genero o ponto de partida?

"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke