[GUIDA] Installazione Driver TMC 2130 su MKS 1.3, MKS 1.4 e MKS GEN-L per assi X e Y

Introduzione

Prima di iniziare vorrei spendere due parole su questi driver TMC 2130 (Guardali QUI). Innanzitutto, oltre al precedente modello 2100 offrono una modalità (SPI) di comunicazione avanzata con il firmware, per cui, avendo più informazioni a disposizione, si potranno avere funzioni avanzate quali:

  • Silenziosità di funzionamento, al pari del predecessore TMC2100
  • Possibilità tramite la funzione StallGuard2 di fare l’homing degli assi senza lo switch fisico, in pratica non appena rileva l’ostacolo il il motore viene fermato
  • La funzione StallGuard2 ha la sensibilità configurabile da firmware
  • È possibile regolare il vRef tramite Gcode
  • Ha una modalità di funzionamento ibrida, per cui il voltaggio è regolato a seconda dell’esigenza del momento, utile per stampanti di grandi dimensioni
  • La modalità SpreadCycle permette di avere una potenza costante, utile per stampanti rapide e con un grosso volume di stampa
  • Funziona in maniera interpolata a 1/16 step (schede a 8bit) e arriva fino a 1/256 (schede a 32bit)
  • Rileva il surriscaldamente e riferisce su che driver è avvenuto

Preparazione dei driver

La preparazione può variare leggermente, dipende da dove sono stati acquistati i driver e di quale marca. In questa guida verranno trattati i FYSETC.

Normalmente i driver vengono venduti coi pin da saldare, oltre ai pin dovremo anche ponticellare due pin e far saltare una resistenza (versione 1.0), esattamente com’è possibile vedere in foto.

N.B. nella versione 1.1 la resistenza non è presente.

Un trucco per ponticellare i pin consiste nello stagnare la punta del saldatore e dare una leggera “passata” sui pin in questione, io personalmente mi sono aiutato zoomando con la fotocamera del cellulare perché i pin sono veramente piccoli. È altrettanto importante togliere la resistenza ma lasciare i pin disuniti, mi raccomando! Per quanti riguarda la resistenza ho usato delle pinzette, è talmente piccola che scaldando una sola delle due piazzole verrà via come niente.

Saldatura dei pin

A differenza dei comuni driver, i TMC2130 non devono essere saldati con tutti i pin nel verso della scheda, ma 4(+1) verranno saldati nel verso opposto come in foto.

 

Questi sono i PIN fondamentali per abilitare la modalità SPI e poter far dialogare i driver con la scheda.

 

Cablaggio

Preparati i driver, è arrivato il momento di pensare al cablaggio per farli dialogare con la scheda e poter effettuare l’homing “sensorless”.
Per comodità ho preparato uno schema con paint dei cablaggi, sono in sostanza identici per MKS 1.3/1.4 e GEL-L, tranne per il fatto che AUX-3 è “specchiata”.

 

Cablaggio comune GEN 1.3/1.4:

Cablaggio comune GEN-L:

Cablaggi specifici per singolo driver GEN 1.3/1.4:

Cablaggi specifici per singolo driver GEN-L:

 

Dopo aver finito i cablaggi sarà il momenti di installare il driver sulla scheda, a tal proposito ci sarà da togliere tutti i jumper sotto l’alloggiamento dei TMC2130 che saranno installati sulla scheda. Il driver dovrà essere installato col trimmer che “punta” verso la morsettiera di alimentazione.

P.S. Non dimenticate di installare il dissipatore in alluminio sui driver!

 

Preparazione del firmware

Ora che la parte hardware è finita, non rimane che sistemare il software.

Personalmente ho utilizzato la versione “easyConfig” di JimBrown, ma questa procedura vale per qualsiasi versione di Marlin.

Come prima cosa è necessario caricare la libreria, apriamo l’IDE Arduino -> Sketch -> Includi libreria -> Gestione librerie e, tramite il form di ricerca, scriviamo “2130”, installate tranquillamente l’ultima versione. In alternativa potete scaricare la libreria direttamente all’indirizzo https://github.com/teemuatlut/TMC2130Stepper e andare ad installare lo zip sempre da Arduino IDE.

Se in fase di compilazione dovesse presentarsi un errore per la libreria mancante, nonostante sia installata allora spostatevi sul file Sanitycheck.h e modificate questa riga:

 

#elif TMC2130STEPPER_VERSION < 0x020201

In

#elif TMC2130STEPPER_VERSION >= 0x020201

 

Spostarsi sul file configuration.h

 

La logica degli endstop di X e Y deve essere impostata su false

 

#define Y_MIN_ENDSTOP_INVERTING false// set to true to invert the logic of the endstop.

#define Z_MIN_ENDSTOP_INVERTING false// set to true to invert the logic of the endstop.

 

Ora bisognerà spostarsi sul file configuration_adv.h

 

#define HAVE_TMC2130  (Decommentare per attivare I TMC2130)

#if ENABLED(HAVE_TMC2130)

 

// CHOOSE YOUR MOTORS HERE, THIS IS MANDATORY

#define X_IS_TMC2130  (Decommentare perché abbiamo i TMC2130 su X)

//#define X2_IS_TMC2130

#define Y_IS_TMC2130  (Decommentare perché abbiamo i TMC2130 su Y)

//#define Y2_IS_TMC2130

//#define Z_IS_TMC2130

//#define Z2_IS_TMC2130

//#define E0_IS_TMC2130

//#define E1_IS_TMC2130

//#define E2_IS_TMC2130

//#define E3_IS_TMC2130

//#define E4_IS_TMC2130

 

Decommentare e modificare i valori:

#define STEALTHCHOP

Paramentro per la modalità silenziona, se lo lasciate commentato i driver funzioneranno perennemente in modalità SpreadCycle, la modalità che fornisce la coppia massima.

#define HYBRID_THRESHOLD

 

Com’è suggerito dal nome, questa modalità è un ibrido tra StealthChop e SpreadCycle, questa modalità torna molto utile per le stampanti di grandi dimensioni, in modo tale che gli spostamenti veloci (+ 100mm/s) vadano in SpreadCycle, mentre il resto della stampa rimane silenziosa.

#define SENSORLESS_HOMING

Ovviamente da decommentare per abilitare l’homing senza sensori disponibile tramite I TMC2130. Ci sarà da modificare anche la sensibilità di trigger per gli assi, ogni stampante avrà il suo valore, infatti è possible modificarlo successivamente tramite Gcode con il commando M914.

Per l’homing senza sensori è importante anche modificare I valori di bump e portarli a 0 per gli assi su cui sono montati I TMC2130.

#define X_HOME_BUMP_MM 0

#define Y_HOME_BUMP_MM 0

 

E ora la parte finale, dobbiamo spostarci al file pins_RAMPS.h e cercare la parte che controlla gli stepper, in particolare a noi interessa cambiare:

#define X_CS_PIN 53 modificandolo in #define X_CS_PIN 42

e

#define Y_CS_PIN 49 modificandolo in #define Y_CS_PIN 44

 

Così facendo sarà possibili continuare ad utilizzare LCD e lettore di SD senza che questi vadano in conflitto con lo SPI del TMC2130.

 

Tralascio per il momento la variazione dei voltaggi, se sarà necessario aggiornerò questa guida.

Ora possiamo compilare e passare alle prove pratiche per tarare il nuovo setup.

Questa guida è stata redatta da Nicolò Tonello


Se avete trovato utile questa guida mettete MI PIACE alla nostra pagina Facebook per ricevere aggiornamenti su tutte le novità del Blog! Potete trovare molte altre guide sulla stampa 3D nella nostra sezione GUIDE!

4 Risposte a “[GUIDA] Installazione Driver TMC 2130 su MKS 1.3, MKS 1.4 e MKS GEN-L per assi X e Y”

  1. Le righe

    #define X_HOME_BUMP_MM 0

    #define Y_HOME_BUMP_MM 0

    non le trovo in alcuna scheda di Marlin 1.1.8

    Puoi specificare meglio? Grazie

    1. Ciao Giorgio! Queste 2 righe le trovi sulla scheda configuration_adv.h intorno alla riga 379.
      Se vuoi usare la ricerca basta inserire la riga senza il valore 0, che non corrisponde a quello che è indicato nel firmware, bensì a quello da modificare. Scrivici per raccontarci se sei riuscito a trovarli!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.