Aller au contenu

GO Print

Config marlin sur ANET A8


Messages recommandés

Bonjour
J'expose ici mon problème.
J'ai donc une Anet A8 dont la résistance de l'extrudeuse s'est mise en court-circuit et m'a cramé le MOSFET de la carte mère (je redis, pour ceux qui n'auraient pas lu ma présentation).
La carte mère étant pour moi irréparable (dé-soudage, soudage de CMS) j'ai installé une RAMPS 1.4 sur ARDUINO Méga avec 2 MOSFETs externes pour le lit chauffant et la résistance d'extrudeuse (remplacée) et un écran "full graphic smart controller" (monochrome), dans un pupitre externe.
J'ai prévu le branchement d'un R pi avec OCTOPRINT pour pouvoir commander l'imprimante à distance et pour la surveiller avec une caméra, mais je verrais ça plus tard. Tout est d'origine sur l'ANET: Contacts de fin de course (NO), moteurs, lit chauffant et la mécanique.
Comme sur la carte mère ANET, les connecteurs sont des JST et sur la RAMPS 1.4, des DUPONT, j'ai fait une petite carte d'adaptation pour éviter de couper les fils, et avoir la possibilité de rebrancher une carte d'origine. Mais l'imprimante commence à être un peu ancienne et une CM neuve coûte cher (pour moi). Je n'en ai pas trouvé d'occasion.
J'ai trouvé une config marlin pour Anet A8, mais ça débloque complètement. Les fins de course ne détectent pas les contacts lorsque les axes arrivent en butée (xyz). Je suis obligé de couper le jus pour tout arrêter et ne pas tout bousiller. De plus, le pas de déplacement des moteurs ne correspond pas aux commandes (sans doute un mauvais réglage). Si je demande 1mm, il avance de plusieurs cm et pas forcément dans le bon sens (et en plus ça merdouille).
 J'ai traduit tous les commentaires du fichier "configuration.h" (je n'entrave absolument rien en Anglais) ce qui m'aide beaucoup à comprendre les modifs.
Merci pour l'aide que vous pourrez m'apporter.

Si quelqu'un a une config correspondant à la mienne, je prends. Pas la peine de réinventer l'eau chaude.

Bonne nuit.

Configuration.h

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Il y a 8 heures, Papypaco a dit :

Merci pour l'aide que vous pourrez m'apporter.

J'ai un peu perdu la main sur marlin que je n'utilise plus, mais on a un spécialiste 😁 @pommeverte qui pourra sans doute t'aiguiller 

Sinon il y a la rubrique tutos où il y a une tonne d'informations https://www.lesimprimantes3d.fr/forum/138-tutoriels/

 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 2 heures, Papypaco a dit :

Marlin n'aurait plus la cote?

Même si de nombreuses imprimantes fonctionnent encore avec Marlin comme firmware, la «mode» actuelle est le firmware Klipper.

Marlin lui-même a évolué (version 2), la méthode pour préparer le firmware est différente d'avec un Marlin version 1 (Arduino IDE): on utilise plutôt Visual Studio code (VSC) avec un greffon PlatformIO.

Même si Marlin fournit les fichiers de configuration de nombreux modèles Anet, y compris la A8, la définition des broches  est celle d'une carte Anet originelle. Si @pommeverte est disponible, il pourra sans doute en dire plus.

🙂

Lien vers le commentaire
Partager sur d’autres sites

Ah! Du coup, ça change pas mal de choses, mais je ne suis pas sectaire. Je peux me mettre à Klipper, mais ça risque d'être beaucoup plus incompréhensible pour moi.

Étant donné que le R pi est installé dans ma console et que Klipper vient s'installer en plus d'Octoprint, pour mon cas, je n'ai pas beaucoup de modifs à faire. Du moment que je peux toujours utiliser la RAMPS 1.4 sur le méga 2560 avec l'écran full graphic. En revanche, ce qui m'inquiète le plus, c'est qu'il faut quand même que Marlin soit installé et fonctionnel (si j'ai bien compris). La ça devient lourd et la config m'a l'air beaucoup plus compliquée. Les modifs matérielles ne me posent pas trop de problèmes. C'est sur la partie soft que je suis une buse totale.

L'idéal serait que je trouve une vieille config Marlin pour Anet A8 avec Ramps 1.4, écran full graphic toute faite.

Tout ce que j'ai trouvé jusqu'à présent ne fonctionne pas bien car non adapté à ma config matérielle. De plus, dans la config de marlin, pour le paramétrage des contacts de fin de course, les choses ne me sont pas claires. D'ailleurs, pour la config des moteurs, c'est pareil. Quel est le bon sens? Si il était indiqué sens horaire ou anti horaire, ça serait beaucoup plus simple.

Je vais chercher dans vos vieux posts si je peux trouver mon Graal. Mais je ne me fais pas trop d'illusions.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Il y a 4 heures, Papypaco a dit :

pour le paramétrage des contacts de fin de course, les choses ne me sont pas claires

Tu m'obliges à replonger dans marlin 😉, voilà un exemple dans le fichier de configuration.h pour le endstop du X

#define X_MIN_ENDSTOP_INVERTING false

Si il ne fonctionne pas fait un test en mettant

#define X_MIN_ENDSTOP_INVERTING true

ça va inverser la détection du endstop

 

Pour les moteurs c'est pareil, si tu as pour le moteur du X

#define INVERT_X_DIR true

Tu peux inverser le sens de rotation en mettant

#define INVERT_X_DIR false

 

Voilà si ça peut t'aider un peu 😉

Lien vers le commentaire
Partager sur d’autres sites

Salut,

N'ayant pas ta configuration, je ne serai pas d'une grande aide.🥴

Par contre, avant de faire une prise d'origine, il faudrait s'assurer du bon câblage et paramétrage des éléments en envoyant des Gcodes depuis Pronterface (voir ce message ), par exemple, installé sur un ordinateur relié en USB à l'imprimante.

  • pour les détecteurs de fin de course, tu envoies le Gcode M119, détecteurs ouverts puis fermé. Les valeurs doivent passer de OPEN à triggered
  • pour le sens de rotation des moteurs, c'est la séquence suivante:

G91

M83
pour X: G0 X10 F600
pour Y: G0 Y10 F600
pour Z: G0 Z10 F600
pour l'extrudeur (sans filament dans l'extrudeur pour autoriser l'extrusion à froid):
M302 P1
G1 E10 F120
M302 P0

Question bonus 😅: tu utilises quelle version louche de marlin?🤨 ce n'est visiblement pas une version officielle puisque le numéro n'apparait pas dans ton fichier configuration.h. Je t'orienterais donc vers les dernières versions stables de Marlin V1.1LTS (compilation sous arduino IDE) ou plutôt V2.0LTS voire V2.1 (compilation Visual Studio Code, en suivant ce tuto ) disponibles sur cette page.

Modifié (le) par pommeverte
Lien vers le commentaire
Partager sur d’autres sites

Citation

N'ayant pas ta configuration, je ne serai pas d'une grande aide.🥴

Bonjour pommeverte

Que faut il comme informations sur ma config? (matérielle, logicielle?)

 

En tout cas, merci à vous deux. Avec tout ça, j'ai quelques billes qui vont me permettre d'avancer.

Il faut que je modifie le câblage des contacts. D'origine, ils sont câblés NO et j'ai vu qu'il valait mieux qu'ils soient branchés et NF pour détecter la rupture d'un fil ou un défaut de contact.

Un autre problème qui me déroute un peu, c'est le câblage des contacts sur la RAMPS. On ne dit pas à quoi servent les pinoches inutilisées. Je sais que la rangée du milieu est la masse, celle du haut l'entrée du signal vers Arduino, et la rangée du bas, le +5V, mais je n'ai trouvé nulle part à quoi servent les autres (décalage d'un groupe de 3 pin sur 2). Peut être pour le 2e fin de course?

Je ne connais pas du tout Visual Studio. C'est sans doute la que je vais bloquer. L'installation m'a été facile puisque cette appli fait partie des paquets Linux (Mint, pour moi). Mais on doit pouvoir continuer à utiliser l'IDE Arduino.

Je n'ai pas le numéro de version de marlin. Le zip se nomme "Anet-A8-Ramps-master". Normalement, ça devrait marcher sur mon Anet, mais les moteurs et contacts n'aiment pas du tout.

J'ai un autre fichier "Marlin-2.0.0-for-Anet-A8--master" mais je n'ai encore rien fait avec.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Salut,

Si ça peut t'aider, j'ai préparé les fichiers de configuration, pour la dernière version stable de Marlin (V2.1.2.2) , qui devraient correspondre à ton matériel.

Configuration.hConfiguration_adv.h

J'ai fait les hypothèses / activations de fonctions suivantes:
- si la thermistance de la tête d'impression n'est pas celle d'origine mais la version standard utilisée sur les Ender 3 V1 / CR10,... alors il faudra corriger la ligne suivante du fichier configuration.h:
#define TEMP_SENSOR_0 5
devient
#define TEMP_SENSOR_0 1
- régulation par PID du plateau
- détecteurs de fin de course câblés en NF
- pilotes de moteur A4988
- initialisation de l'eeprom après le flashage du firmware
- le linear advance est activé mais défini à 0 en attendant le réglage ( voir cette vidéo )
- activation du babystep: en double-cliquant sur le bouton rotatif de l'écran lors de l'impression de la couche initiale, tu pourras régler la hauteur de la buse pour écraser plus ou moins la couche (voir cette vidéo pour mieux comprendre le principe)
- nivellement manuel du plateau (voir cette vidéo pour le principe )

Il y a 12 heures, Papypaco a dit :

Un autre problème qui me déroute un peu, c'est le câblage des contacts sur la RAMPS. On ne dit pas à quoi servent les pinoches inutilisées.

voici des documents qui devraient t'aider:

Citation

Ramp1.4pinsSchematic-1.thumb.png.5be3494dde663134fadcce600c1752c9.png

Ramp1.4Schematic-2.thumb.png.81f86aa4ebcb846763c7986e8a53e05c.png

 

ainsi que le fichier Marlin\src\HAL\AVR\fastio\fastio_1280.h qui fait le lien entre les différentes numérotations

Lien vers le commentaire
Partager sur d’autres sites

Super!

Merci pommeverte. Très sympa de te décarcasser. J’espère ne pas te faire perdre ton temps.

La thermistance est celle d'origine, je vais câbler les contacts en NF.

Mes moteurs ont la référence 42SHDC 3025-24B ce sont les moteurs d'origine ANET

Je vais tester ça sans doute jeudi, (demain j'ai rando) mais pas certain de pouvoir donner de mes nouvelles tout de suite.

A bientôt.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Bonjour

J'ai fait les modifs des fin de course et compilé Marlin 2.1.2.1 mais j'ai le même souci que lors de mes essais précédents.

Lorsque je déplace un axe, X ou Z, les moteurs font un bruit anormal, l'avance ne correspond pas à ce qui est demandé et le sens est aléatoire.

Sur les moteurs d'extrudeuse et d'axe Y, je n'ai pas ce bruit mais l'avance ne correspond pas à la distance demandée. J'ai essayé de modifier le réglage des potentiomètres des drivers (pololu), mais ça ne change rien.

Je vais revérifier mes câblages moteurs.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Petite rectification. Plus haut j'ai parlé de la version 2.1.2.1 de Marlin, mais c'est bien la 2.1.2.2 que j'ai utilisé.

Du nouveau.

Mon problème sur l'axe X venait  d'un mauvais contact d'une broche dans un connecteur Dupond. De plus, bizarrement, le branchement est inversé, par rapport aux autres moteurs.

J'ai lancé un auto home, et tout s'est bien passé. Les fins de course ont bien été détectés.

Me reste à voir le réglage de linear advance, mais je n'ai rien compris aux explications de la vidéo.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Lorsque je lance le préchauffage PLA, la tête chauffe bien, mais pas le lit, et dans le menu, je n'ai pas de possibilité de tester le chauffage du lit (comme pour la tête). Est ce normal?

Sur mon écran full graphic, j'ai un slot pour carte SD. Comment puis-je le valider.

Dans la config, il y a un paramètre "chamber" que je n'avais jamais vu. Ça sert à quoi? (juste pour savoir).

J'ai l'impression que les nouvelles versions de Marlin sont prévues pour fonctionner seulement avec un raspberry pi ou un PC, et plus en autonome, comme les anciennes versions. Je me trompe sans doute, mais ne maîtrisant pas le paramétrage de Marlin, je ne sais pas comment le configurer.

Je trouvais pratique de pouvoir utiliser une carte SD ou de commander Marlin avec Octoprint. On avait le choix.

Comme mes modifs ne fonctionnent pas comme je veux, je vais me débrouiller autrement.

Bon dimanche.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Pour ton problème de chauffage,  tu devrais vérifier ta connexion avec le lit chauffant. Il y a souvent des problèmes avec le connecteur de mauvaise qualité qui provoque des mauvais contacts et souvent fond. Il est même arrivé que ça crame. On préconise de carrément virer ce connecteur et de souder directement les fils sur les broches.

L'autre moi

Ah ben tu as raison. J'ai eu le problème il y a 2 ans, le connecteur a fondu et ça puait le plastique cramé avec une jolie fumée. Du coup, j'ai supprimé le connecteur, doublé les fils sur la résistance du bed jusqu'à l'UC et les ai soudés directement sur les broches du bed.

Avec mon montage sur RAMPS et ARDUINO, j'ai gardé ce câblage, mais en plus, j'ai ajouté 2 MOSFET. Un pour le bed et un pour la buse. Mais la buse, c'est bien moi. A ce moment la je n'ai pas vérifié les soudures sur le bed. Je viens de le faire, et ça n'était pas jojo. Sur les 6 fils, 4 avaient des mauvais contacts à cause de soudures sèches.

Je me demande d'ailleurs si tous mes problèmes ne viendraient pas de là. Je dois maintenant trouver une solution durable (de hase) pour qu'il y ait un excellent contact, que ça ne chauffe pas et que  ce soit facilement démontable.

Je te tiendrai au courant.

Bise.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

J'ai essayé un système de connexion avec des morceaux de dominos, mais il n'y a pas assez de place pour glisser un isolant entre chaque broche. Faut que je trouve autre chose.

Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Bonjour.
Après une pose de quelques jours, je m'y suis remis.
J'ai mis des connecteurs de meilleur qualité sur les broches du lit chauffant. Comme les lignes d'alimentation sont doublées, l'intensité sur chaque point de contact est divisée par 2. Je vais surveiller ça, mais pour le moment les contacts ne chauffent pas.

Bilan

_L'alimentation et le contrôle de température du lit chauffant sont OK (électriquement parlant, mais problème côté soft)

_La chauffe et le contrôle de température de la buse sont OK.
_Les contacts fin de course sont OK.
_Les moteurs sont OK. _
_La chauffe du lit pose problème. Lorsque que je lance un chauffage en positionnant la consigne sur par exemple 50°, la chauffe se passe bien jusqu'à 40°, puis le voyant du lit se met à clignoter (PWM s'enclenche). La progression devient très lente et n'arrive jamais à ateindre la consigne. Au bout d'un moment marlin affiche "erreur température lit" redémarrage demandé et le buzzer sonne. Je n'ai pas trouvé ou se situent les paramètres qui contrôlent cette fonction. Lorsque je lance un préchauffage (PLA ou ABS), j'ai le même défaut. Le contrôle par PID est validé, c'est sans doute là qu'il y a un os.

Au démarrage de Marlin, l'écran affiche la température de la buse et du lit, ainsi que la position des axes. Normalement, tous les axes devraient être à zéro lorsqu'ils sont en position minimum, fins de course enclenchés, mais de base ils sont positionnés: X -33, Y -10, Z 0. J'ai modifié la config à tout à 0.
Y a t-il une raison pour que les axes X et y ne soient pas à zéro?
Il s'agit du paramètre "Travel limits (linear=mm, rotational=°) after homing, corresponding to endstop positions.", ligne 1728.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

Je me demande si je ne devrais pas créer un autre fil dans la section ANETA8. Le problème c'est que je serais obligé de naviguer entre Marlin, la partie soft, et ANET, la partie hard, ce qui ne serait vraiment pas pratique. J'ai aussi comme l'impression (non, tu crois?) que mes problèmes avec Marlin n'inspirent pas grand monde. Dois-je passer à klipper?

Lien vers le commentaire
Partager sur d’autres sites

il y a 3 minutes, Papypaco a dit :

Je me demande si je ne devrais pas créer un autre fil dans la section ANETA8

Non tu peux rester là 😉

il y a 3 minutes, Papypaco a dit :

J'ai aussi comme l'impression (non, tu crois?) que mes problèmes avec Marlin n'inspirent pas grand monde. Dois-je passer à klipper?

C'est vrai que beaucoup de monde (dont je fais partie) sont passé à Klipper, je te conseille de faire fonctionner correctement ta machine sous marlin avant de passer sous klipper 

Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

Si l'imprimante fonctionne avec Marlin, j'y mettrai Octopi pour me connecter en SSH , la commander à distance et y brancher une webcam, et je pense que j'en resterai la. J'ai lu le tuto sur l'installation et la configuration de klipper. C'est bien pour une machine à qui on veut demander plus de performances, mais la structure et la configuration matérielle de l'A8 ne le permettent pas. Marlin sur Arduino suffit largement.

Sinon, je vais étudier une autre voie, celle de l'achat d'une imprimante plus moderne et plus performante, mais pour le moment je n'ai pas le budget. Je suis prolo en retraite, pas ministre.

Modifié (le) par Papypaco
Lien vers le commentaire
Partager sur d’autres sites

J'ai réglé mon problème de PID au petit poil. Les températures sont contrôlées au degré près et hyper stables. Très efficace et précis le PID.

Il me reste à voir les réglages des pas moteurs pour X,Y,Z et extrudeuse, mais je vais d'abord imprimer un cube pour voir le niveau d'erreurs dimensionnelles. Après, il me restera à ranger tout le paquet de nouilles et c'est pas gagné. J'ai fait une "interface" physiques entre les connecteurs JST d'origine et les connecteurs Dupond du (de la?) RAMPS pour éviter de couper les fils, et pouvoir éventuellement recâbler une carte mère ANET. C'est très bien, mais il y a une dizaine de cm de fil supplémentaires pour chaque connecteur, ce qui ajoute du fouillis au fouillis.  Faut que je trouve une autre solution pour rendre tout ça un peu plus clean. Après, je ferai un coffret ventilé pour cacher la misère et la mise en boîte du pupitre avec le PI, OctoPrint et les boutons et voyants de contrôle. L'ANET sera enfin opérationnelle. J’essaierai Klipper par curiosité, mais je pense que je me contenterai d'Octoprint avec Marlin.

A+

Lien vers le commentaire
Partager sur d’autres sites

Posté(e) (modifié)

J'ai encore un peu avancé.

J'ai eu un peu de fil à retordre avec la position de la buse sur le lit, ce qui m'a permis de comprendre pourquoi les axes X et Y n'étaient pas à zéro (question posée plus haut). J'avais mis à 0 les paramètres de "Travel limits (linear=mm, rotational=°) after homing, corresponding to endstop positions"et c'était une erreur. J'avais mal compris le sens de cette phrase. J'ai remis X=-30 et Y=-10 et maintenant, la tête se positionne bien sur le lit pour l'impression.

Marlin transforme mon ANET.

_L'écran me parle Français et c'est très appréciable

_Le nivellement manuel assisté est vraiment génial. Lors de la phase de mise au point, j'ai défoncé le Lit magnétique flexible, heureusement que j'avais laissé l'ancien qui avait déjà eu des soucis.

_La possibilité d'arrêter complètement une impression en cours est très pratique.

_La prochaine modif sera un détecteur de fin de filament.

 

Modifié (le) par Papypaco
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.
  • There was an error loading the RSS feed. Please check your settings and try again.
×
×
  • Créer...