Oi pessoal,
Consegui resolver o problema do display. Na semana passada ele me deu um baile. Passei o domingo inteiro tentando entender por que ele estava maluco. Na terça a noite ele funcionou como se não tivesse acontecido nada. Ontem ele tomou tento (como dizem em Minas).
O circuito do display usa 2 shift register (conversor serial / paralelo) 74HC595. Como mestre Arnaldo sugeriu, coloquei uma onda quadrada numa das saídas. ÊPA! Cadê o pulso que falhou ali? Vai dizer que o rato comeu? E cadê o rato? De novo esta estória???
Como estes CIs trabalham com 5V e o driver com 3,3V, poderia ser incompatibilidade de nível de sinal (Arnaldo 2x0). Coloquei um diodo em série com a alimentação dos CIs para não ter um desnível tão grande. Não é que funcionou de cara (Arnaldo 3x0)? Fico bobo com a sapiência do povo. Apenas falam: "Tenta isso". Nem perco mais meu tempo. Apenas tento e corro pro abraço. Deixei os CIs com alimentação de uns 4,3V e o display propriamente dito com 5V. Ficou todo mundo feliz
Acho o display e seu filhinho LED ferramentas muito bacana. Mostra no ato como está um determinado sinal ou variável, sem interferir no funcionamento do conjuto. Cada vez que eu parava o emulador, alterava o sinal ou gerava uma corrente absurda no motor. Agora, tá tudo beleza
Display a postos, vamos ao que interessa: Como estão os sinais que estão chegando no DSP? Putz!!! Mesmo sem a fonte do motor ligado aparece um sinal de 0,2V em Rsense. Justifica um monte de coisas. Moleza tirar isso: Assim que o driver liga, ele mede este sinal e desconta o valor das próximas leituras. Agora, sim! Por que a corrente medida oscila tanto? O PID está uma nhaca! Dou um tapa aqui, outro ali usando cola, durepox, esparadrapo. A rotina de controle da corrente vai melhorando, apesar das soluções serem bem meia boca. Nada de teoria, apenas gambiarra, mesmo

Só quero ver se estou indo na direção certa. Agora, sim! O valor configurado da corrente é o que o amperímetro que está em série com a bobina mostra. Aí entendi porque não conseguia acertar o valor. Até que enfim!
Liguei o TurboCNC prá ver como o driver se comporta. Aí foi uma festa pros olhos! Para efeito de comparação, todos os testes foram feitos com Nema23 alimentado por 35V @ 1A por fase, passo cheio e somente uma única fase alimentada de cada vez. Do lado do TurboCNC, configurava a freqüência máxima de jog e aceleração de 9000Hz/s. Exceto quando especificado, somente foram utilizados os parâmetros supra citados (parece até nota de manual técnico).
Nestas condições, o motor girou com 4500Hz (1350 rpm) na boa

Só para constar: motor sem carga e com torque que era uma piada. Fiz um teste rápido e girou a 7000Hz (2100rpm) a 93V.
O driver já está ficando um rapazinho
Hoje cedo fiz uma alteração para que o seja gerada uma corrente com 1A durante 1ms e 0A durante 1ms. Idealmente falando seria uma onda quadrada de corrente. Queria ver como estava o controle de corrente. Quanto menor este tempo, melhor está sendo feito o controle da corrente. O tempo para chegar na corrente especificada foi de 500ms, muito lerdo para o meu gosto. Fiz mais algumas regulagens no PID para tentar melhorar isso, mas sem muita diferença prática. Foi mais uma questão de tirar alguns curativos e passar mertiolate noutros

Penso em colocar um PID que ajusta os parâmetros de acordo com o motor e a fonte. Mas isso é tarefa prá outra hora. Haja teoria...
Trocando umas idéias com Sir Jorge (sempre solícito, por sinal), fiz um teste com o motor do Mestre Fabio Gilii. É um Nema34 com 3,1A/fase. Nas mesmas condições anteriores, consegui girar a 5200Hz (1560 rpm). Aí vi que um dos resistores do snubber começou a fumar. Tirei todos fora, fiquei sem nenhum snubber. Seguindo minha intuição, coloquei o dedo num fet. Estava bem quente, mas quão quente estava? Quando chegou nos 115ºC desliguei tudo. Putz! 3A e já tá assim? Tá certo, tá sem snubber... Outra pendência a ser resolvida... Daqui em diante fiz todos os testes sem snubber nenhum.
Já que estamos nesta situação, vamos testar o circuito do diodo chaveável. Chegou a prova de fogo

Este circuito tem um diodo em anti-paralelo com a bobina que pode ser colocado ou retirado do driver pelo DSP. Aliás, ele é o diodo mais mal visto de qualquer driver. Já perdi as contas de quantas vezes me mandaram tirá-lo

Como sou teimoso, vamos aos números, usando sempre o mesmo critério, só que com o motor do mestre Fabio (35 @ 3,1A/fase):
Sem os diodos, girou a 5200Hz (1560 rpm). Com os diodos, girou a 5400Hz (1620 rpm). Esperava mais... Por outro lado, este circuito é mais difícil de controlar, e como o PID não está lá estas coisas, a performance ainda deve melhorar bastante.
O que mais gostei veio a seguir. Com o motor parado, sem o circuito do diodo os mosfet passaram de 115ºC e dizem que o motor chega fácil aos 90ºC. Com o circuito, os mosfet ficaram a 25ºC e o motor, 31ºC (medidos após uns 15 minutos). Isso com 3,1A por fase :-O
Sem alterar absolutamente nada a não ser tirar o circuito da jogada, a corrente na bobina despencou para 0,35A e a temperatura do fet e do motor aumentou um pouco (esqueci de anotar os valores). Ou seja, passando 0,35A neste driver tem torque melhor (5400Hz x 5200Hz) do que 3A num driver convencional. Nada mal...
Aí resolvi abusar. Desculpe, mestre Fabio, não resisti. Xinga muito, não, tá? Já que o motor estava muito fresquinho, coloquei 5A nele :-O Ele girou a 5800Hz (1740rpm) e parado ficou com 34ºC. O fet nem morno estava. Assim que desliguei o circuito do diodo, a corrente caiu para 1A e a temperatura no motor subiu para 36ºC. Me lembrei de um comentário de um colega, que comparou um motor sob um chopper a um "forno de indução". Acho que faz sentido...
Se eu medi tudo certo, acho que o motor alimentado por uma linestep ou uma phase driver deve ficar mais frio que um alimentado por um chopper. Será?
Então fiquei pensando... Nesta situação, a temperatura é o fator limitante da corrente que posso jogar num motor? Será???
Abraços,
Rudolf