collapse

* Links de Robótica

* Posts Recentes

RN42 e TP-Link MR3020 por doiga
[Hoje às 19:22]


Ajuda Projecto IR / RF por senso
[Hoje às 13:15]


Recomendação de um opamp para um DAC r2r por Njay
[Hoje às 12:33]


Ideias para construir um quadrúpede simples por dropes
[Ontem às 22:43]


Ajuda com TRIAC por senso
[17 de Novembro de 2017, 18:00]


TV LG White Screen por almamater
[15 de Novembro de 2017, 08:37]


Pergunta sobre prototipagem ( Pesquisa ) por luisjustin
[14 de Novembro de 2017, 23:22]


Medir Agua que está no Poço por Njay
[14 de Novembro de 2017, 13:28]


Amplificador audio por beirao
[12 de Novembro de 2017, 23:43]


Power_OK Enermax por edeweld
[12 de Novembro de 2017, 17:15]

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

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

Offline c3dr1c

  • Mini Robot
  • *
  • Mensagens: 847
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.402
  • 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: 847
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.402
  • 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: 847
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