TMC2208 drivers - Microsteps configurados incorretamente


10

Acabei de instalar dois drivers TMC2208 na minha placa RAMPS. Eu segui um tutorial passo a passo muito bom e, depois de alguns problemas, cheguei quase ao fim.

Um problema que ainda tenho é que, quando digo à impressora para levantar o eixo Z em 5 mm, ela o eleva em 10 cm.

Não mudei nada em relação aos passos / mm. Anteriormente, você tinha o Pololus, com 1/16 de microstepping e agora também tenho 1/16 no arquivo configuration_adv.h no Marlin 1.1.8

No entanto, o que notei ao fazer um M122 é uma linha que diz:

msteps 256

que parece que o microstepping foi definido como 1/256.

Talvez alguém pudesse me dizer se eu perdi alguma coisa?

ATUALIZAR:

Depois de mais algumas investigações, aqui está o que eu fiz até agora:

  • Solde os pinos no driver. Original de Watterrot
  • Solde os ponteiros para ativar a comunicação UART
  • Solde o pino da comunicação para cima
  • Altere o configuration_adv.hno Marlin (1.1.8) e habilite tudo o que deve ser ativado: USE_TMC2208, Habilitar depuração, selecionar o eixo Z, etc.
  • Verifique os pinos pins_RAMPS.he verifique se eles estão disponíveis na minha configuração
  • Faça um cabo Y com o resistor de 1 kOhm para o pino TX
  • Ligue tudo

Não importa o que eu fiz, o motor se move duas vezes mais do que o solicitado. Embora eu tenha configurado o microstepping 1/16, o mesmo que fiz com o meu Pololus, realizei o cálculo reverso para descobrir que o microstepping real no driver é 1/8.

Após mais investigação, parece que o motorista não é reconhecido pelo Marlin / Board. Pensando que era um problema com a comunicação TX / RX, procurei as informações disponíveis e encontrei o seguinte : Bug: Comunicação UART TMC2208 usa pinos incorretos para o SoftwareSerial # 9396 .

Comecei a mudar os pinos atribuídos para o RX / TX serial, mas tudo é exatamente o mesmo.

Tentei um Arduino (original) diferente, outra placa RAMPS e até mesmo os ramos de correção de bug 1.1.xe 2.0 da Marlin.

Parece que o driver está no modo "herdado" e a manipulação do software não é possível. Embora eu tenha percorrido as etapas para habilitá-lo.


Você resolveu esse problema? Se você resolveu o problema, seria ótimo compartilhar sua experiência com a comunidade, postando sua própria resposta, para que outros possam aprender com ela ou resolver seus próprios problemas semelhantes. Você também pode aceitar sua própria resposta após 48 horas.
— 0scar

TMC interpolar seus passos para 256 com antecedência configuração #define Interpolate true // Interpolate X / Y / Z_MICROSTEPS 256
— ddjikic

Meu ainda pior, eu tenho todos os controladores TMC2208 e depois de alguma atualização de firmware não relacionada Z começou a corresponder duas vezes. Outro eixo está bom.
— Slava

Respostas:


1

Não tenho esses controladores, mas li que, com as configurações padrão, o TMC2208 interpola os microsteps definidos pelos pinos de configuração de E / S para 256 microsteps. Observe como você configura os interruptores DIP / jumper na sua placa, parece que apenas 2 são usados ​​(MS1 e MS2). Além disso, você não pode simplesmente diminuir a contagem da matriz DEFAULT_AXIS_STEPS_PER_UNITpara a entrada Z no seu arquivo de configuração?


Posso alterar a steps_per_unit, mas isso é um patch para o resultado, não está resolvendo a causa. Eu investiguei mais, por favor, veja a atualização no meu post original ...
— Felix Hauser

0

Provavelmente, seu problema está relacionado ao pino PDN_UART na placa de driver TCM2208; em algumas placas de fabricantes, o jumper não está definido no modo UART por padrão; portanto, é provável que você precise soldar o jumper na configuração correta. Veja a folha de dados da sua placa de driver. por exemplo https://github.com/bigtreetech/BIGTREETECH-TMC2208-V3.0/blob/master/TMC2208-V3.0%20manual.pdf


2
Ele fez isso, é mencionado na seção UPDATE
— FarO
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.