collapse

* Links de Robótica

* Posts Recentes

Pendentes de compras colectivas por Hugu
[Hoje às 00:51]


Preços e fabricantes de pcb por vasco
[Ontem às 23:18]


Palavras Cruzadas por LVirtual
[Ontem às 20:54]


[Projecto] Bomba Airsoft por jm_araujo
[Ontem às 19:01]


Apresentação por Tech_JA
[23 de Setembro de 2017, 09:19]


Medir Agua que está no Poço por filjoa
[21 de Setembro de 2017, 20:58]


URGENTE - display de 7 segmentos com backpack por helderjsd
[20 de Setembro de 2017, 12:30]


Isaac Asimov - I, Robot por senso
[18 de Setembro de 2017, 03:41]


ic SL440 da Plessey? por senso
[16 de Setembro de 2017, 13:11]


Compra Colectiva RS-Amidata por brunus
[15 de Setembro de 2017, 22:31]

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

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

Offline c3dr1c

  • Mini Robot
  • *
  • Mensagens: 846
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.390
  • 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: 846
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.390
  • 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: 846
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