Aller au contenu

GO Print

Anet E10 upgradée


joyeufetar

Messages recommandés

Bonjour à tous,

Je viens de terminer la nouvelle imprimante et je peaufine en ce moment la calibration.
C'est une base d'Anet E10 récupérée, que j'ai, disons le, complètement modifiée.
Je n'ai, au final, conservé que la frame de l'imprimante, tige trap et le plateau.
Certaines pièces ont été trouvées sur Thingiverse et sont restées en l'état, d'autres ont été modifiées pour l'intégration, et j'en ai conçue certaines.

Niveau imprimante, j'ai donc réutilisé la structure sur lequel j'ai monté :
 - Rail linéaire sur tous les axes
 - Changement du support du lit pour un plus costaud, celui qui était monté d'origine étant tordu
 - Extrudeur BMG en bowden de chez TriangleLabs
 - Hotend e3dv6 de chez TriangleLabs

 - Chariot x custom, avec double radial et touchmi (touchmi qui s'active en mode automatique grâce à l'aimant au niveau du endstop x)
 - Ajout de renfort à l'arrière de l'imprimante pour minimiser les mouvements de l'axe z

L'imprimante est en mode standalone.
Tout l'électronique est intégré sous la machine pour un gain de place (exit le gros boitier qui fait du bruit).
L'électronique comprend :
 - Alim 360W 12V (c'est un choix de rester en 12V car j'avais déjà pas mal de pièces en stock en 12 et je ne voulais pas tout changer)
 - Carte mère SKR Pro V1.1 + TMC2208 (en mode UART et en 256 pas réel), refroidi par 2 gros ventilos (obligatoire sinon, j'ai vite une surchauffe des tmc)
 - Carte BIGTREETECH Relay V1.2 et Mini UPS v2.0 (ces deux cartes seront connectées prochainement, d'abord je fais en sorte que l'imprimante tourne parfaitement)
 - BTT TFT35 V2.0 que j'ai mis à jour avec la dernière version du firmware, bien plus pratique et performante (le faite de pouvoir lancer des commandes custom de l'écran est juste terrible. C'est beaucoup plus pratique que de brancher un pc dessus)


J'ai fait en sorte de pouvoir facilement et rapidement désaccoupler la partie électronique du reste de l'imprimante pour faciliter la maintenance.
Pour ça, 6 connecteurs viennent alimenter les périphériques de l'imprimante.
Les deux parties de l'imprimante sont maintenus en place par des pièces imprimées, ça évite que tout bouge.
Il y a donc 5 vis à défaire et 6 connecteurs seulement pour la maintenance.

Niveau firmware, je suis parti sur Marlin 2.0.
Je ne l'avais jamais testé jusque la, mais j'avoue qu'il a quand même été bien modifié.
On peut maintenant le modifier très facilement.

Je joint quelques photos pour illustrer tout ça.
L'imprimante a rejoint sa copine (une itopie qui me sert maintenant depuis des années, mais qui montrait quand même ses limites niveau qualité. D'ou le choix d'en faire une seconde plus performante).



Maintenant, j'en suis donc à la calibration définitive de la machine.
Et je commence à avoir des résultats plutôt propre :
IMG_20211013_141043.thumb.jpg.89c2cd283382d43ec349807cca2a88f4.jpg
IMG_20211013_141053.thumb.jpg.149447cbe519e5c5ae139d9de8074465.jpg


Pour avoir un résultat comme ça, j'ai fait le réglage des accelérations, vitesses, ...
J'ai aussi ajouté la fonction Linear Advance.

Voila les paramètres que j'utilise actuellement (mais qui peuvent être amener à changer si je me rends compte qu'il y a un soucis) :

//=============================================================================
//============================== Movement Settings ============================
//=============================================================================
// @section motion

/**
 * Default Settings
 *
 * These settings can be reset by M502
 *
 * Note that if EEPROM is enabled, saved values will override these.
 */

/**
 * With this option each E stepper can have its own factors for the
 * following movement settings. If fewer factors are given than the
 * total number of extruders, the last value applies to the rest.
 */
//#define DISTINCT_E_FACTORS

/**
 * Default Axis Steps Per Unit (steps/mm)
 * Override with M92
 * Calcul des steps extrudeur : Nouveau_E_Step = ( Ancien_E_Step / (150 - mm_restant ) ) * 100
 *                                      X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_AXIS_STEPS_PER_UNIT   { 1600, 1600, 6400, 6600.515 }

/**
 * Default Max Feed Rate (mm/s)
 * Override with M203
 *                                      X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_MAX_FEEDRATE          { 300, 300, 5, 25 } // Calculate Max feedrate for X/Y at 110 !!!!

//#define LIMITED_MAX_FR_EDITING        // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2
#if ENABLED(LIMITED_MAX_FR_EDITING)
  #define MAX_FEEDRATE_EDIT_VALUES    { 600, 600, 10, 50 } // ...or, set your own edit limits
#endif

/**
 * Default Max Acceleration (change/s) change = mm/s
 * (Maximum start speed for accelerated moves)
 * Override with M201
 *                                      X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_MAX_ACCELERATION      { 3000, 3000, 100, 10000 }

//#define LIMITED_MAX_ACCEL_EDITING     // Limit edit via M201 or LCD to DEFAULT_MAX_ACCELERATION * 2
#if ENABLED(LIMITED_MAX_ACCEL_EDITING)
  #define MAX_ACCEL_EDIT_VALUES       { 6000, 6000, 200, 20000 } // ...or, set your own edit limits
#endif

/**
 * Default Acceleration (change/s) change = mm/s
 * Override with M204
 *
 *   M204 P    Acceleration
 *   M204 R    Retract Acceleration
 *   M204 T    Travel Acceleration
 */
#define DEFAULT_ACCELERATION          1000    // X, Y, Z and E acceleration for printing moves
#define DEFAULT_RETRACT_ACCELERATION  3000    // E acceleration for retracts
#define DEFAULT_TRAVEL_ACCELERATION   1000    // X, Y, Z acceleration for travel (non printing) moves

/**
 * Default Jerk limits (mm/s)
 * Override with M205 X Y Z E
 *
 * "Jerk" specifies the minimum speed change that requires acceleration.
 * When changing speed and direction, if the difference is less than the
 * value set here, it may happen instantaneously.
 */
//#define CLASSIC_JERK
#if ENABLED(CLASSIC_JERK)
  #define DEFAULT_XJERK 10.0
  #define DEFAULT_YJERK 10.0
  #define DEFAULT_ZJERK  0.3
  //#define DEFAULT_IJERK  0.3
  //#define DEFAULT_JJERK  0.3
  //#define DEFAULT_KJERK  0.3

  //#define TRAVEL_EXTRA_XYJERK 0.0     // Additional jerk allowance for all travel moves

  //#define LIMITED_JERK_EDITING        // Limit edit via M205 or LCD to DEFAULT_aJERK * 2
  #if ENABLED(LIMITED_JERK_EDITING)
    #define MAX_JERK_EDIT_VALUES { 20, 20, 0.6, 10 } // ...or, set your own edit limits
  #endif
#endif

#define DEFAULT_EJERK    5.0  // May be used by Linear Advance

/**
 * Junction Deviation Factor
 *
 * See:
 *   https://reprap.org/forum/read.php?1,739819
 *   https://blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
 */
#if DISABLED(CLASSIC_JERK)
  #define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
  #define JD_HANDLE_SMALL_SEGMENTS    // Use curvature estimation instead of just the junction angle
                                      // for small segments (< 1mm) with large junction angles (> 135°).
#endif


J'ai déterminé qu'avec cette config, je pouvais potentiellement imprimer à 110mm/s.
J'ai conservé un peu de marge et j'ai réglé la vitesse d'impression par défaut à 100 dans Cura.
Mais au final, j'ai du descendre les accélérations à 1000 sur X/Y, sinon j'avais du ghosting qui apparaissait (globalement aux alentours de 1500).
Du coup, je ne sais pas si c'est tip top de laisser ça comme ça. Ca bride forcément les vitesses d'impressions et donc un meilleur compromis est peut être à trouver... 

Avec la fonction Linear Advance, les impressions sont top, mais ça imprime aussi 2 fois plus lentement qu'avant pour des vitesses d'impressions de base identiques.
Aussi, de temps en temps, l'imprimante se met en pause quelques secondes puis repart comme si de rien était.
Et avec l'impression du cube de calibration, je me suis rendu compte que les couches pleines s'imprimaient très rapidement, mais que les remplissage étaient extrêmement lent (à titre de comparaison, il m'a fallu 2h pour sortir un benchy avec les réglages cités précédemment...).
Cela me créé un décalage dans les dimensions des couches (celle imprimée rapidement sont plus large que celle imprimée lentement...).

Je me dis donc qu'il y a un truc avec cette fonction.
J'ai vu qu'elle pouvait potentiellement être limitée par le paramètre DEFAULT_EJERK (que je n'ai pas touché et qui est à 5 par défaut).

Mais si c'est vraiment lui qui bride, comment faire pour régler finement ce paramètre ?
A part tester petit à petit, je ne vois pas.

Si quelqu'un à une idée, je suis preneur.

En tout cas, j'approche du but et voir la qualité que j'obtiens déjà maintenant fait grand plaisir après tout ce temps passé dessus 🙂 

Bonnes impressions à tous 😉 

IMG_20211007_122555_1.jpg

IMG_20211014_100640.jpg

IMG_20211014_100651.jpg

IMG_20211014_100657.jpg

IMG_20211014_100703_1.jpg

IMG_20211014_100713.jpg

IMG_20211014_100723.jpg

IMG_20211014_100754_1.jpg

IMG_20211014_100801.jpg

IMG_20211014_100822.jpg

IMG_20210628_210201.jpg

IMG_20210920_000053.jpg

IMG_20210920_002444.jpg

IMG_20210628_210143_1.jpg

  • Wow 1
Lien vers le commentaire
Partager sur d’autres sites

Il y a 3 heures, joyeufetar a dit :
#define DEFAULT_AXIS_STEPS_PER_UNIT   { 1600, 1600, 6400, 6600.515 }

Bizarre même avec des TMC en UART qui se charge d’interpoler les micro pas (réglage dans le configuration_adv.h), on utilise habituellement le «calculateur Reprap» qui par exemple pour un moteur 1,8° (200 pas par tour), poulie de 20 dents, GT2 de 2 mm de pas, pas du pilote à 1/16 donne un pas de 80

Mais bon si ça fonctionne avec tes valeurs, tu as dû modifier certains paramètres du configuration_adv.h pour que ce soit pris en compte.

Citation

 #define INTERPOLATE      true

  #if AXIS_IS_TMC(X)
    #define X_CURRENT       730        // (mA) RMS current. Multiply by 1.414 for peak current.
    #define X_CURRENT_HOME  X_CURRENT/2  // (mA) RMS current for sensorless homing
    #define X_MICROSTEPS     16        // 0..256
    #define X_RSENSE          0.11
    #define X_CHAIN_POS      -1        // -1..0: Not chained. 1: MCU MOSI connected. 2: Next in chain, ...
    //#define X_INTERPOLATE  true      // Enable to override 'INTERPOLATE' for the X axis
  #endif

Par exemple pour un axe X X_MICROSTEPS 256 et X_INTERPOLATE false force à ne plus interpoler et n'utiliser que des micropas de 256 (ce qui peut avoir une incidence sur la chauffe des pilotes).

Il y a 3 heures, joyeufetar a dit :

J'ai vu qu'elle pouvait potentiellement être limitée par le paramètre DEFAULT_EJERK (que je n'ai pas touché et qui est à 5 par défaut).

Elle peut éventuellement être utilisée par le LINEAR ADVANCE qu'il faut calibrer. Sinon le JERK est désactivé :

Il y a 3 heures, joyeufetar a dit :
//#define CLASSIC_JERK

A la place tu utilises le système de «JUNCTION_DEVIATION» qu'il faudra probablement que tu calibres :

Il y a 3 heures, joyeufetar a dit :
#if DISABLED(CLASSIC_JERK)
  #define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
  #define JD_HANDLE_SMALL_SEGMENTS    // Use curvature estimation instead of just the junction angle
                                      // for small segments (< 1mm) with large junction angles (> 135°).
#endif

Sinon, jolies modifications.

🙂

  • Merci ! 1
Lien vers le commentaire
Partager sur d’autres sites

Il y a 1 heure, fran6p a dit :

Bizarre même avec des TMC en UART qui se charge d’interpoler les micro pas (réglage dans le configuration_adv.h), on utilise habituellement le «calculateur Reprap» qui par exemple pour un moteur 1,8° (200 pas par tour), poulie de 20 dents, GT2 de 2 mm de pas, pas du pilote à 1/16 donne un pas de 80

Mais bon si ça fonctionne avec tes valeurs, tu as dû modifier certains paramètres du configuration_adv.h pour que ce soit pris en compte.

Ah oui bien sur, je n'avais pas précisé pour le conf_adv, mais je l'ai évidemment modifié en conséquence 😉 
Voila un exemple pour l'axe x 🙂 

#define INTERPOLATE      false

  #if AXIS_IS_TMC(X)
    #define X_CURRENT       1190        // (mA) RMS current. Multiply by 1.414 for peak current.
    #define X_CURRENT_HOME  X_CURRENT  // (mA) RMS current for sensorless homing
    #define X_MICROSTEPS     256        // 0..256
    #define X_RSENSE          0.11
    #define X_CHAIN_POS      -1        // -1..0: Not chained. 1: MCU MOSI connected. 2: Next in chain, ...
    //#define X_INTERPOLATE  true      // Enable to override 'INTERPOLATE' for the X axis
  #endif


Oui, c'est bien le JUNCTION_DEVIATION que j'utilise.
J'ai tenté de faire varier les valeurs pour une accélération et une vitesse fixe, mais ça ne change absolument rien (testé de 0.010 à 0.017).
J'ai donc laissé par défaut...
Après, je ne suis peut être pas allé assez haut ?


Je viens de trouver un début d'explication.
J'avais zappé dans Cura "la durée minimale d'une couche", qui était toujours défini à 15sec.
Avec la ventilation installée, je pouvais descendre en faite.
Chose faite, réglage mis à 5sec. Effectivement c'est plus rapide, mais pas foufou non plus...

Il y a donc un autre soucis, accélération, junction_deviation ou linear advance qui me bride.
Reste donc plus qu'à trouver quoi.

EDIT : 

Citation

Elle peut éventuellement être utilisée par le LINEAR ADVANCE qu'il faut calibrer. Sinon le JERK est désactivé :


Et ben, ce n'est pas tout à fait vrai.
Le Jerk de base est bien désactivé, mais pas pour l'extrudeur :

//#define CLASSIC_JERK
#if ENABLED(CLASSIC_JERK)
  #define DEFAULT_XJERK 10.0
  #define DEFAULT_YJERK 10.0
  #define DEFAULT_ZJERK  0.3
  //#define DEFAULT_IJERK  0.3
  //#define DEFAULT_JJERK  0.3
  //#define DEFAULT_KJERK  0.3

  //#define TRAVEL_EXTRA_XYJERK 0.0     // Additional jerk allowance for all travel moves

  //#define LIMITED_JERK_EDITING        // Limit edit via M205 or LCD to DEFAULT_aJERK * 2
  #if ENABLED(LIMITED_JERK_EDITING)
    #define MAX_JERK_EDIT_VALUES { 20, 20, 0.6, 10 } // ...or, set your own edit limits
  #endif
#endif

#define DEFAULT_EJERK    5.0  // May be used by Linear Advance


On le voit bien ici, le ejerk est sorti du "enabled(classic_jerk).

Lien vers le commentaire
Partager sur d’autres sites

Salut à tous,

Bon, je viens de m'apercevoir d'un soucis sur la machine.
Enfin, pour l'instant, je suis en investigation pour savoir d'où cela peut provenir.

Suite à une modif sur la machine (au moment ou je finalisais l'imprimante), je devais refaire mon réglage de débit dans Cura.
N'ayant pas eu le temps de le faire jusque la, je l'ai refait aujourd'hui.

J'ai donc imprimé un cube de calibration, sans remplissage, avec une seule paroi et suffisamment grand pour que la vitesse ne varie pas en cours de route.
EDIT : je précise qu'au moment des tests, j'ai désactivé la fonction "Linear Advance".

C'est à ce moment la que j'ai vu qu'il y avait un soucis.
Au début du cube (la ou les couches commencent), et en prenant les mesures dans le sens ou va la buse, l'épaisseur de la paroi diminue petit à petit.
Alors ce n'est pas non plus très flagrant.
Globalement, la largeur de la paroi commence bien à la valeur recherchée (0.4mm), mais ensuite, ça diminue gentiment, pour finir à 0.38.
Le cube fait 67mm de côté, donc on peut voir que ça s'estompe quand même assez doucement.

Si j'augmente légèrement mon débit pour voir comment ça réagit, le soucis reste identique, il n'y a que la valeur de départ et d'arrivée d'une couche qui change (0.42 au début pour finir à 0.40/0.39 en gros). 

Je pourrais très bien prendre une valeur intermédiaire pour le débit, mais ce n'est pas une solution viable selon moi.
Car en fonction des dimensions de la pièce, cela pourra fausser les pièces.

Les steps sont normalement parfaitement réglés, idem mon flow semble correct puisqu'en début de couche, j'ai bien la valeur attendue.
Par contre, je ne comprends pas ce qui peut faire réagir l'extrusion comme ça.
Une rétraction non maitrisée peut être ?

J'utilise une e3dv6 en bowden et version bore, avec buse de 0.4, extrudeur BMG et tube PTFE Capricorn.
Voila le détail de la hotend :
image.png.9f73ce2b4e7cbd122aa05f3b3cd150b6.png

Si quelqu'un à une idée ou une piste que je pourrais étudier/tester, il ne faut pas hésiter 🙂 

++

EDIT : problème résolu.
J'ai fait un changement de ptfe, recoupé proprement et bien droit de chaque côté, positionné correctement et bien mettre les cales sur les pneufits.
Plus de soucis.

Je vais refaire une passe de calibration complète du coup en partant sur cette nouvelle base.

Lien vers le commentaire
Partager sur d’autres sites

  • 1 year later...

Salut

Et ca a donné quoi les réglages?? Il y-a-t-il des fichiers thing pour la partie basse de l'imprimante car je vois que c'est imprimé?? Et comment fonctionne-t-elle du coup ??  avec le recul quelles amélioration apportées?? 

 

Lien vers le commentaire
Partager sur d’autres sites

Salut,

De quels réglages parles tu ?
Le sujet date un peu maintenant, donc il va falloir que tu sois plus précis ^^

Pour la base de l'imprimante, oui, j'ai fait un sorte que tout soit imprimable (ou presque).
En plus des pièces imprimées, il faut une plaque plastique (ou ce que tu veux, peu importe), pour le fond de la partie électronique.
Les côtés peuvent aussi être fermés entre les piliers ou pas, c'est au choix.
Mais c'est toujours plus simple si tu veux aussi mettre des connecteurs pour dissocier le haut du bas de l'imprimante rapidement.

Tu trouveras tout le détail ici : Standalone mode

Comment ça, comment fonctionne-t-elle ? 
Je ne comprends pas.

Les améliorations sont pour mon imprimante ou pour une autre ?

Cordialement

Lien vers le commentaire
Partager sur d’autres sites

Ben tu n'as pas repris la carte mere Anet mais une MKS comme je souhaiterai faire pareil.. voir passer en 32 Bit, je souhaiterai savoir si les réglages sont difficile à concevoir ou si l'on peut repiqué un "clone de quelque chose "

Et en fait je voulais savoir avec le temps qui est passé depuis le début de ce post quelle retour d'expérience tu as sur tes modifications ??

As tu amélioré des choses ?? Est tu resté dans la config que tu as présenter ici ?? Tu as dis dans ton dernier post que tu avais un soucis ??  

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Dsl pour mon retard de réponse.

Alors oui, la config est tjs la même qu'au départ. Je n'ai rien changé depuis.

Mais pour la résumer, comme dit dans le premier message :
 - Skr pro v1.1 (32 bits donc)
 - Tmc2208 en 256 micropas (non interpolé)

 - Moteur nema17 coupleux 
 - Rail linéaire sur tous les axes

N'ayant pas testé la machine avant toutes ces modifications (car y'avait trop de choses à faire dessus juste pour faire des tests), je ne peux pas te dire si ça a réellement changé quelque chose.
Mais je n'en doute pas vu la qualité des pièces que je sors actuellement.
Le seul truc génant, ce sont des vibrations dus aux moteurs, et le poids des axes, tout ça procure un léger ghosting... Mais j'imprime aussi à vitesse modérée (entre 50 et 100mm/s selon la pièce).

Si je devais repartir sur une nouvelle machines actuellement, je repartirais surement sur un combo similaire sur une corexy (peut être en changeant les tmc par des plus récents, mais ils font sacrément bien leur taf une fois bien paramétré).

Voila, pas grand chose à dire de plus.
Toujours est il que je suis très content de la machine en l'état.

 

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...