Aller au contenu

Filament ABS

Chercher dans la communauté

Résultats des étiquettes.



Plus d'options de recherche

  • Recherche par étiquettes

    Saisir les étiquettes en les séparant par une virgule. Merci de privilégier l'auto-complétion plutôt que de créer des tonnes de tags inutiles.
  • Recherche par auteur

Type du contenu


Forums

  • La vie du forum
    • Présentations
    • On vous écoute
    • Actualité et nouveautés du forum
  • Sur le site
    • Les news du blog
  • Les imprimantes 3D
    • Discussion sur les imprimantes 3D
    • Bien choisir son imprimante 3D
    • Les constructeurs
    • Les RepRap et autres modèles DIY
    • Les imprimantes 3D SLA
    • Consommables
    • Électronique
    • Entraide : Questions/Réponses sur l'impression 3D
    • Tutoriels
  • Les scanners 3D
  • Logiciels 3D
  • Le coin des makers
  • Usinages
  • Petites annonces
  • Divers

Chercher dans...

Résultats qui...


Date de création

  • Début

    End


Dernière mise à jour

  • Début

    End


Filtrer par nombre de...

Inscrit

  • Début

    End


Groupe


Website URL


Skype


Twitter


Facebook


Youtube


Instagram


Lieu


Intérêts


Imprimantes

12 résultats trouvés

  1. Bonjour, Je vais vous faire part de mon expérience avec Klipper et vous expliquer comment l'installer et le configurer sur votre imprimante. I - Introduction Klipper est un firmware pour imprimante 3D comparable à Repetier ou Marlin. Son rôle est d'interpréter le Gcode en provenance du slicer et de le convertir en commandes qui permettent de piloter individuellement le hardware de l'imprimante. Pour certaines machines, comme les CoreXY ou les Delta, la cinématique est très complèxe, ce qui demande des calculs importants. Malheureusement, avec une carte 8-bits, la puissance du microcontroleur n'est pas super adaptée à ces calculs. Du coup, la vitesse sera limitée par la puissance du processeur et les calculs seront moins précis. C'est ce qui pousse certains à vouloir passer à une carte 32 bits. Nous allons voir que Klipper permet de s'affranchir de ces limitations. 1) Les fonctionnalités de Klipper La particularité de Klipper est d'utiliser un ordinateur hôte pour faire tous ces calculs et de réserver le microcontroleur pour ce qu'il sait bien faire: gérer les entrées-sorties en temps réel. Ceci décharge le microcontroleur qui n'a plus que ça à faire, et l'hôte, qui est généralement un Raspberry Pi 3 avec un processeur ARM quad core, se charge des calculs, avec du multi-thread, plus de mémoire, et une interface graphique plus attrayante. Par ailleurs, Klipper s'interface avec Octoprint, ce qui permet d'utiliser sa partie graphique pour controler l'imprimante. On pourrait meme virer le LCD de l'imprimante et utiliser un écran tactile connecté au Raspberry. Le résultat, c'est un surcroit de performances important. Avec une carte 8-bits, on a des performances supérieures à celles d'une carte 32-bits. Klipper utilise cette puissance pour calculer les trajectoires de façon plus souple, ce qui permet de gagner en précision, en fluidité, en bruit, et en vitesse d'impression. Avec Klipper, j'imprime en 120mm/s sans problème sur une imprimante cartésienne. Il semblerait que les gains sont encore plus importants sur des CoreXY ou Delta. Et bien sûr, une carte 32-bits permettra d'aller encore plus vite, mais on se limite alors à l'énergie cinétique que la mécanique de la machine peut encaisser. Les firmware classiques ont aussi d'autres inconvénients: Ils se configurent en modifiant les fichiers de code source, ce qu'un utilisateur ne devrait jamais avoir à faire. Il faut ensuite les compiler et les flasher à chaque modification. Avec Klipper, on ne touche plus au firmware qui est sur le microcontroleur. Les modifications se font sur un fichier de configuration qui réside sur l'hôte, ce qui est instantané et beaucoup plus pratique. Jusqu'à l'année dernière, Klipper était plutôt expérimental, mais depuis la version de décembre et l'introduction du bed levelling, le support BL Touch, le "pressure advance", la calibration delta, les écrans LCD, les protections thermiques, etc... c'est devenu parfaitement utilisable tous les jours. Il y a deux étapes à l'installation de Klipper: L'installation. C'est la partie la plus facile et on ne la fait qu'une fois. La configuraton. Celle-ce se fait dans un fichier de config. Avec un plugin qui va bien dans Octoprint, on peut éditer ce fichier directement dans Octoprint. 2) Prérequis Avant d'installer Klipper, il vous faut: Une imprimante 3D. Ben oui, c'est pas pour les machines à laver. Il faut pouvoir flasher le firmware, donc on évitera les machines avec un hardware propriétaire. En principe, tout ce qui tourne avec Marlin peut tourner avec Klipper. Un firmware basé sur Marlin. C'est plus simple, parce qu'on pourra récupérer un certain nombre de paramètres. Il est possible de se débrouiller autrement, mais il faudra connaître ou calculer les mm/step etc... Un ordinateur hote sous Linux. Ici, on parlera de Raspberry, mais en théorie ça pourrait fonctionner avec n'importe quel PC sous Linux et Octoprint. Attention, il faut un Raspberry Pi 3 au minimum. Un Raspberry Zero ou un vieux Raspberry 1 vont trop ramer. Octoprint. Je ne vais pas détailler ici l'installation d'Octoprint. Il y a plein de tutos là dessus. On y installer un plugin OctoKlipper qui facilite la configuration de Klipper. Des connaissances (basiques) en Linux. On va utiliser une ligne de commande SSH pour télécharger et installer Klipper. Note importante: Avant de procéder à l'installation de Klipper, assurez-vous bien que tout l'ensemble Imprimante 3D + Octoprint Raspberry fonctionne correctement et est parfaitement maîtrisé. Sinon, si un truc ne marche pas après, on ne pourra pas savoir si ça vient de Klipper ou de la configuration matérielle. 2ème note: Je vous conseille d'avoir toujours une stratégie de repli, autrement dit les moyens de pouvoir reflasher Marlin avec une configuration qui marche si pour une raison ou une autre Klipper ne vous convient pas.
  2. Ayant rencontré quelques difficultés d’impression avec des pièces cylindriques sur ma CR10V2 récemment mise à jour avec un bon et beau Marlin 2.0.5.3 dont j’avais fait part dans ce post : La remarque de @Tircown quant au firmware Klipper m’a «provoqué». Aimant les défis, particulièrement quand ils sont liés à l’informatique, l’électronique et la bidouille en général, j’ai sauté le pas. Je vais donc relater mon expérience, en renvoyant vers les liens qui m’ont été utiles et en fournissant évidemment les fichiers de configuration de ma CR10-V2 (pour les pressés, aller directement à la fin du post pour y trouver ceux-ci). Étape préliminaire Étant de la vieille école, je préfère de loin une bonne documentation format écrit fusse-t’elle en anglais plutôt que des vidéos pour me plonger dans un sujet nouveau. Le créateur du firmware Klipper, justement, a bien fait les choses, de nombreuses heures de lecture sont à prévoir (en ligne ou après récupération de l’archive compressée) : https://github.com/KevinOConnor/klipper Un utilisateur du forum, @Nibb31 a réalisé un excellent tutoriel (en français évidemment) qui explique tout : Tout ce que vous avez toujours voulu savoir sur Klipper sans jamais oser le demander Un autre site dont je me suis fortement servi : https://klipper.info/ Après lecture assidue des documents des liens précédents, je peux alors me lancer, d’autant plus que j’ai tout le matériel nécessaire (imprimantes, raspberry pi, cerveau et couteau). Première étape, installation de Klipper Octoprint étant déjà installé et fonctionnel, je m’y connecte via SSH (utilisateur : pi, mdp : cestmonsecret ou raspberry si vous ne l’avez pas modifié (c’est pas bien de ne pas le faire)). On récupère Klipper : git clone https://github.com/KevinOConnor/klipper ./klipper/scripts/install-octopi.sh Ces deux lignes, télécharge Klipper (git), installe les dépendances indispensables, prépare Klipper pour qu’il démarre automatiquement à l’allumage de la framboise et démarre celui-ci sous forme d’un service (le script «install-octopi.sh»est un fichier texte contenant les lignes de commandes). On construit puis flashe le microcontrôleur : cd ~/klipper/ make menuconfig Choix du microcontrôleur de la carte : Atmega2560 pour la CR10-V2, puis on lance la «compilation» : make On vérifie sur quel port la carte est connectée en USB : ls /dev/serial/by-id/* Le résultat affiche un lien symbolique /dev/serial/by-id/usb-1a86_USB-Serial-if00-port0 vers le périphérique physique (chez moi /dev/ttyUSB0). pi@octopi:~ $ ls -l /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 lrwxrwxrwx 1 root root 13 May 18 12:56 /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0 Il ne reste plus qu’à flasher le firmware : sudo service klipper stop make flash FLASH_DEVICE=/dev/serial/by-id/usb-1a86_USB-Serial-if00-port0 sudo service klipper start Pour que ce flashage réussisse il faut que Octoprint ne soit pas connecté à l’imprimante (bouton «Déconnecter»). Seconde étape, configurer Octoprint Configurer Octoprint pour qu’il utilise Klipper : ajouter un port série nommé /tmp/printer dans les préférences, Connexion série, onglet Général, «ports série supplémentaires» puis sauvegarder. Revenir dans les préférences, dans l’onglet «comportement» modifier à la section «Que faire en cas d’erreur de firmware» en cochant «Annuler toutes impressions en cours mais rester connecté à l’imprimante», enregistrer. Reste à tester la connexion après avoir sélectionné le bon port série ( /tmp/printer) puis en cliquant sur le bouton «Connecter». En utilisant le terminal avec la commande «status», une erreur est retournée puisque la configuration de l’imprimante n’est pas faite. Pour me faciliter encore plus la vie, j’ajoute un plugin à Octoprint : Octoklipper Troisième étape, configurer Klipper Il reste à préparer un fichier de configuration correspondant à ma CR10V2. Dans les fichiers du répertoire «config» de Klipper, celle-ci n’est pas présente. Il y en a pour la CR10 et la CR10S (printer-creality-cr10-2017.cfg et printer-creality-cr10s-2017.cfg) Dans les sources du Marlin2, les attributions des pattes d’un microcontrôleur sont regroupées dans le dossier src/pins/«controleur»/pins_«carte».h. La carte de la CR10-V2, version2.5.2 (Atmega2560), est déclarée comme une RAMPS modifiée par Creality : #define MOTHERBOARD BOARD_RAMPS_CREALITY les numéros des pins à déclarer seront donc dans pins_RAMPS_CREALITY.h (et en inclusion pins_RAMPS.h). Le fichier prévu pour une CR10S correspond aux attributions, il y aura donc moins de travail de tâtonnement et ça c’est cool. Il y a bien quelques différences mais elles sont minimes. Ayant un Bltouch d’installé, le pin utilisé est celui du Z_MAX alors que le endstop est sur le Z_MIN. Je complète ce fichier de configuration avec les options dont j’ai besoin, place ce fichier dans le home du Pi et relance Klipper soit via le terminal d’Octoprint («firmware_restart») ou via le plugin Octoklipper et le bouton «Firmware» ou «Host» Quatrième étape, vérifier la configuration La documentation relate les étapes à suivre pas-à-pas : vérifier l’affichage des températures vérifier l’«arrêt d’urgence» (M112) vérifier la mise en chauffe du lit et de la tête vérifier le fonctionnement des moteurs vérifier les fins de course vérifier les pilotes des moteurs vérifier le moteur de l’extrudeur calibrer les réglages de PID (tête / lit) Dans l’ensemble peu de modifications à effectuer pour que l’ensemble fonctionne (au cas où, j’avais le doigt prêt à appuyer sur l’interrupteur de l’alimentation). Toutes les attributions de «pins» format «arduino» (déclaration pin_map dans la section [mcu] du fichier de configuration) sont correctes. Possédant un détecteur de fin de filament, j’ai juste eu à inverser sa logique de fonctionnement : au départ : switch_pin: ar2 devient : switch_pin: !ar2 Ma CR10V2 a été modifiée par l’adjonction d’un système d’auto-nivellement (BLTouch de Antclabs ®). Creality a prévu d’origine la possibilité de cet ajout, tout est pré câblé sur la carte mère, il suffit de connecter la prise femelle du câble du Bltouch (5 broches avec détrompeur) sur l’embase électronique située sous l’extrudeur. Cela évite d’ouvrir le boîtier d’alimentation pour déconnecter le contacteur de fin de course de l’axe Z branché sur le ZMIN. La pré connexion du BLTouch le branche sur le ZMAX donc la «pin» à déclarer est la n”19 en mode «pullup» : [bltouch] # CR10V2, connexion sur ZMAXPIN (19) sensor_pin: ^ar19 control_pin: ar11 pin_move_time: 0.4 x_offset: 47 y_offset: 0 # Increase Z_Offset to lower nozzle closer to bed. PLA 1.55 #z_offset: 1.55 speed: 60 Cinquième étape, améliorer la configuration L’imprimante étant à nouveau fonctionnelle, quelques impressions sont réalisées. Auparavant, il me faut modifier les gcodes de démarrage et de fin de mon trancheur (Cura dans un premier temps). En effet, Klipper n’utilise pas la totalité de ceux prévus pour un Marlin (ex : G29). Cette page donne tous les gcodes connus de Klipper. Il utilise de nouvelles directives (extended G-code) sous forme de mots clés équivalents aux gcodes (ex : STATUS, FIRMWARE_RESTART, BED_MESH_CALIBRATE, …). L’avantage de ce système est que l’on peut créer des macros relativement complexes afin de simuler leur équivalent en gcode Marlin. Par exemple pour mes gcodes de démarrage / fin, je vais utiliser les macros suivantes : [gcode_macro START_PRINT] variable_T_BED: 60 variable_T_EXTRUDER: 200 gcode: M117 Home sweet home # Use absolute coordinates G90 # Reset the G-Code Z offset (adjust Z offset if needed) SET_GCODE_OFFSET Z=0.0 # Home the printer G28 # Use the bed mesh #G29 BED_MESH_PROFILE LOAD=cr10v2 # Move the nozzle near the bed G1 X15 Y20 Z5 F6000 M117 Chauffe Marcel # Start bed heating and continue M140 S{T_BED} {% if printer.heater_bed.temperature < params.T_BED|float*0.85 %} M190 S{params.T_BED|float*0.85} # wait till 0.85 of bed temp is reached, then continue {% endif %} M140 S{T_BED} M104 S170 # Prechauffe buse M190 S{T_BED} M109 S{T_EXTRUDER} # Prime line PURGE M117 C’est parti, mon Kiki... [gcode_macro END_PRINT] gcode: M117 C’est fini # move z up G91 G1 E-2 Z+10 F3000 # absolute xy G90 G1 X5 Y295 F2000 #disable hotend and heated bed M104 S0 M140 S0 # disable steppers M84 BED_MESH_CLEAR # prime the nozzle [gcode_macro PURGE] gcode: M117 Ligne de purge G92 E0 ;Reset Extruder # move z axis G1 Z2.0 F3000 ;Move Z Axis up # move to prime position G1 X2 Y30 Z0.28 F5000.0 ;Move to start position G1 X2 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line G1 X3 Y200.0 Z0.28 F5000.0 ;Move to side a little G1 X3 Y50 Z0.28 F1500.0 E30 ;Draw the second line G92 E0 ;Reset Extruder G1 Z2.0 F3000 ;Move Z Axis up # G29 => (1) home all (2) get bed mesh (3) move nozzle to corner so it doesnt ooze on the bed while heating up. [gcode_macro G29] gcode: G28 BED_MESH_CALIBRATE G0 X0 Y0 Z10 F6000 BED_MESH_PROFILE save=cr10v2 Dans Cura, mes gcodes de démarrage / fin deviennent ) : ; gcode macro Klipper (démarrage) START_PRINT T_BED={material_bed_temperature_layer_0} T_EXTRUDER={material_print_temperature_layer_0} ; gcode macro Klipper (fin) END_PRINT Avant de me lancer dans les impressions, je réalise la calibration de l’extrudeur (100 mm demandés = 100 mm fourni), méthode «matérielle only» donc PTFE déconnecté en sortie d’extrudeur. Résultats, un poil trop (trois tests de 100 mm, au lieu de 300mm, j’ai 303, donc règle de trois pour affiner mes pas qui passent de 0,00714285 (1/140 pas) à 0.00719666 (1/138.95 pas) [mon extrudeur a été remplacé par celui des CR10S Pro, BMG sans réduction]. Un premier cube de calibration (25x25x25mm) est tranché puis envoyé à Octoprint afin d’être imprimé. Les résultats dimensionnels sont très corrects (25 x 25 x 25,02 (XxYxZ). Au dessus j’ai bien 10 , 20 et 6 mm, les ponts sont bons, pas de «stringing» sur la face colonnes, un beau cercle, des «overhang» quasi parfaits. Le seul défaut est un léger «pied d’éléphant». Impression faite avec du PLA 3D870 Blanc (le stock de filament commence à s’épuiser), température de 215°, vitesse d’impression de test à 100 mm/s sauf pour les parois, interne à 75 mm/s, externe à 50 mm/s. J’en profite en continuant mes tests, j’ajoute la gestion de la rétraction dans le firmware Klipper (je reprends les valeurs utilisées par Cura) : [firmware_retraction] retract_length: 5.2 retract_speed: 25 unretract_extra_length: 0 unretract_speed: 20 et en ajoutant l’option dans Cura : Un autre cube de calibration (30x30x30) avec des cylindres internes de profondeur 20 mm sert à tester cette «nouvelle rétraction». L’examen du gcode obtenu permet de voir les nouveaux gcodes de rétraction (G10/ G11). ;Generated with Cura_SteamEngine 4.6.1 M82 ;absolute extrusion mode ; gcode macro Klipper START_PRINT T_BED=60 T_EXTRUDER=215 G92 E0 G92 E0 G10 ;LAYER_COUNT:150 ;LAYER:0 M106 S255 G0 F6000 X165.065 Y129.811 Z0.2 ;TYPE:SKIRT G11 G1 F1200 X165.708 Y129.86 E0.02145 … Sixième étape, Pressure Advance Qu’est que c'est que ça que c'est ? D’après la documentation, «Pressure advance does two useful things - it reduces ooze during non-extrude moves and it reduces blobbing during cornering. (traduction approximative : L'avance à la pression a deux effets utiles : elle réduit le suintement lors des mouvements sans extrusion et elle réduit les coups dans les virages (mon interprétation : les coins sont plus francs, moins arrondis )). C’est plus ou moins l’équivalent du «Linear advance» pour Marlin. Malheureusement, cette option, je ne peux pas l’activer dans Marlin avec ma carte Creality «silencieuse» équipée de pilotes TMC2208 déclarés en mode standalone. Si je l’active, mon extrudeur va plus ou moins rapidement arrêter de fonctionner. Depuis quelques mois (mi mars 2020), le développeur de Klipper a fourni une correction qui permet d’utiliser ce firmware avec cette option pour des TMC2208 en standalone. En suivant scrupuleusement la documentation, la tour carrée est tranchée, les directives d’impression sont données, l’impression est lancée. Une fois finie et examinée, mes valeurs de PA sont ajoutées dans la section [extruder] du fichier de configuration. Conclusion (provisoire) Klipper est un excellent firmware qui mérite d’être essayé. Une fois le flashage sur la carte mère réalisé, sa facilité de paramétrage, de tests est sans commune mesure avec Marlin : on effectue les modifications dans le fichier de configuration, après un RESTART ou un FIRMWARE_RESTART, la nouvelle configuration est prise en compte, plus besoin de modifier son (se) fichier(s) «.h» puis de recompiler et installer en flashant. La possibilité des «macros» est juste énorme, de nombreuses choses deviennent possibles. Klipper peut gérer (je n’ai pas testé) plusieurs cartes (en gros principe de maître / esclave), l’absence d’une fonctionnalité sur la carte principale n’oblige pas forcément à en changer. On ajoute une autre carte (une RAMPS par exemple) et on peut utiliser ses fonctionnalités en plus de la carte «principale». Merci @Tircown de m’avoir obligé à sortir de ma zone de confort et un grand merci @Nibb31 pour avoir créer son excellent tutoriel. A suivre… PS : pour ceux qui voudraient tenter l’aventure, comme promis en début du sujet, mes fichiers de configurations actuellement utilisés et fonctionnels sur ma CR10V2 avec sa carte d’origine V2.5.2. Fichiers à placer dans le home de Pi, là où se trouve Octoprint (/home/pi): CR10V2-LI3D.zip
  3. J'ai acheter un capteur 3d touch et j'aimerais bien pourvoir avoir les courbe dans octoprint, mais j'ai pas tout compris comment on réalisais l'opération. Qui pourrait éclairé ma lanterne? autre chose, j'aimerais que le bed sois testé à chaque lancement de print via un G29, mais j'ai pas trouvé la commande interne à klipper qui le réalise sans être obligé de sauvegardé le fichier de configuration ce qui implique un restart_firmware. merci pour les eclaircicements.
  4. Bonjour, Tout d'abord un grand merci à toutes et tous, à la fois pour l'aide que votre site m'a apporté tout au long de ma découverte du monde de l'impression 3D, mais aussi pour la qualité des réponses apportées par les utilisatrices et utilisateurs de ce forum. Je souhaite ouvrir un sujet sur un problème que je rencontre actuellement sur mon imprimante. Depuis peu, mes impressions présentent des stries verticales qui s'apparenteraient je pense à un phénomène de "peau de saumon", principalement sur les faces de normale Y. Je ne parviens pas à solutionner ce problème et je n'ai trouvé aucun sujet apparenté dans le forum. Ce phénomène n'apparaissait pas sur des pièces similaires que j'imprimais il y a peu. Je souhaiterais avoir votre avis sur les sources possibles de celui-ci. Mon imprimante est une ANET A8 tournant sous KLIPPER (et OCTOPRINT). La pièce imprimée est un cône de 3° de demi angle, et de 90 mm de haut pour 30 mm de diamètre max. Les paramètres principaux d'impression sont : Matériau : PLA ; Hauteur de couche : 0.1mm ; Vitesse d'impression : 100 mm/s ; Accélération 1000 mm/s² ; Motif de remplissage : Gyroïde ; Remplissage : 20% ; Épaisseur de parois 1.2 mm. J'ai déjà tenté de réduire la vitesse à 50 mm/s, le résultat est très similaire. Idem lorsque j'ai joué sur les accélérations, les épaisseurs de parois, ou le remplissage. J'ai commandé des TL smoothers (qui doivent arriver la semaine prochaine) même si je n'ai que peu d'espoir car ils n'ont apparemment pas d'effet sur les drivers de l'ANET A8 (pour le prix, j'ai préféré essayer). Vous trouverez ci-joint des photos illustrant mon problème. Les stries font à peu près 2 mm de largeur. On peut voir que sur la face de normale X le problème est totalement absent alors que très prononcé sur la face Y. D'avance merci. Bonne journée et bon courage. Pierre
  5. imprimante 3D tevo banggood
  6. bonjour je viens d'achever la construction de ma Dbot, pour expliquer rapidement les caractéristiques : -taille : 500x500x500 - driver : 2 TMC2209 installer en "standard" via les cavalier en MS1 et MS2 sur les axes X et Y, pour E0, Z et Z1 j'utilise des A4988. - bed : 1400W 230v piloter par un SSR -hotend : piloter par un mosfet dédier avec une alimentation 12v dédier et j'utilise une alimentation 12v 7A uniquement pour électronique et moteurs. au début j'ai commencer avec une mega2560 et une ramps 1.4 sous marlin 2.0.5.1 voici le résultat : les bourrelets sont provoqué par le ralentissement de la tete dans la courbe, visiblement marlin 2 sur du 8bits, a quelle que difficulté a tenir le 150mm/s en courbe. suite a ça j'ai décidé de passer sous klipper, je prend exactement le meme Gcode sans aucune modification et voila le résultat : a ce moment la je suis tomber amoureux de klipper pour la qualité d'impression ! et toujours avec le même Gcode de la première image. mais voila c’était trop beau pour être vrai .... la mega2560 chinoise a fonctionné seulement 2 semaines avant de rendre l’âme. j'ai donc décidé de prendre une SKR 1.3 en 32bits pour la remplacer. je lui met marlin 2.0.5.1 sans problème et je lance le meme Gcode des images précédente : la je fait le même constat que sous 8 bits, marlin est incapable de prendre des courbe a 150mm/s sans micro ralentissement .... la suite de l'histoire vous la devinez, je passe la skr sous klipper. pour le fichier printer.cfg, je garde le meme je change simplement les numéros de pins, coté imprimante j'ai généré un firmware via "menuconfig" pour chipset LPC176X a 100MHZ je lance le meme Gcode et la c'est la catastrophe !!! klipper n'arrive pas a prendre les courbes, la tête semble faire des déplacement en "marche d'escalier" en courbe et surtout il y a un ralentissement important. normalement la tete ne devrais même pas ralentir car normalement la Raspberry a calculé la courbe depuis longtemps en avance.... quant je regarde les LOG, pour klipper tout reste sous les 20% d'utilisation, je pensai pour une saturation du serial usb mais non ... j'ai ajuster aussi la puissance des drivers mais sans succès avez vous des idée sur la causse de ce ralentissement ?
  7. Salut à tous, Déjà quelques temps que je devais le faire et voilà : j'me lance pour vous présenter mon projet d'imprimante delta à partir de zéro. J'ai déjà un peu d'expérience avec les imprimantes cartésienne mais j'ai toujours été admiratif devant les déplacements des deltas. Je remercie @Bosco2509 pour avoir été ma source d'inspiration . J'espère que la fin de mon post sera plus joyeuse que le sien (même si j'espère secrètement qu'il nous fasse un déterrage de sujet prochainement). Beaucoup de mes choix sont inspirés des siens mais j'ai pris quelques libertés sur d'autres... Donc voici les caractéristiques que je souhaiterai : Bed ultrabase de 22cm de diamètre (déjà en ma possession) Guidage MGN12 Carte SKR v1.3 Fin de course optique Octoprint Firmware : klipper Petite explication sur ces choix : J'ai un autre gros projet en cours depuis 1an sur une autre imprimante (promis je ferai un post en temps utile) qui utile déjà des guidages MGN12 qui m'ont convaincu (et Bosco a fait le reste). Je tourne depuis toujours sur des boards 8bits (Melzi, RAMPS, MKS,...) et avec Marlin comme firmware. J'ai découvert depuis peu Klipper grâce à @Nibb31 et son superbe tuto sur une de mes imprimantes. J'espère avoir de bonnes vitesses d'impressions avec cette delta donc je passerai directement sous Klipper sur une board 32bits. Quand je dis "from scratch" (à partir de zéro), c'est vraiment ça car je redessine toutes les pièces et je ne connais rien sur ce type d'imprimante. Sur ce rendu, j'ai viré la partie élec en bas car je suis entrain de la redessiner pour le reste c'est en cours... J'ai quand même déjà quelques pièces en stock (mgn, biellettes, moteurs,...). J'ai commencé l'impression et le montage mais sans pression car je commande mes pièces petit à petit selon mes besoins. Voici le début du montage : Avant que certains me disent que mes MGN sont trop long et pas nécessaire en bas. C'est un choix (pas volontaire) mais voici mes 2 raisons : j'avais un très très grosse réduction sur cette longueur (pas une autre) et je ne voulais pas pour autant une delta de 1m50 Voilà c'est vraiment que le début et je ne suis pas sûr du résultat final mais confiant (trop ?) pour le moment. J'ai plusieurs gros projets en cours et accessoirement un boulot donc j'avance à mon rythme, soyez patient si vous suivez ce sujet sur le forum.... À bientôt
  8. petite question concernant le bed-leveling et un capteur capacitf/induction. Savez vous si c'est différent que le bl-touch et terme de configuration bien sur ?
  9. Nous allons voir ici comment utiliser les TMC2208 en mode UART que j'ai enfin recu , ça va concerner très peux de monde mais je partage quand même La communication se fera sur un seul fil pour deux raisons. Principalement parce que je n'ai pas beaucoup de pins supplémentaires à disposition sur ma carte mais aussi parce que ce mode est très bien géré par Klipper. Coté imprimante, il s'agit de la Geeetech A10 et sa carte mère GT2560 v3. Je vais utiliser ici des TMC2208 de la marque FYSETC en version 1.2 (3.1€/piece sur ebay ici ) . avec le radiateur: Vue de dessus sans radiateur Vue de dessous: 1 - modification des TMC2208. Deux modifications sont à prévoir. La première est le câblage des pins via une soudure et la seconde est la modification de la pin UART pour pouvoir la brancher ailleurs sur la carte mère. Sur ce model nous avons à disposition deux pins pour l'UART (UART & PDN). Que l'on peut "activer" ici grâce à une petite soudure. Les lignes rouges représentent le câblage du PCB. On peut activer l'un ou l'autre en soudant le pad central au pad corespondant. Vu la petite taille de la soudure, je vais câbler les deux pins même si je ne vais en utiliser qu'un. A savoir que coté carte mère ses pins ne sont pas câblés donc aucun risque. Pour cela je soude les trois pads ensemble. Le radiateur est imposant (ce qui est plutôt bien) mais empêche la sortie par le dessus. On va donc sortir par dessous. Je commence par découper le plastique autour du pin UART et je le dessoude. Je ressoude un pin que je fais partir à l'horizontal ou à la vertical en fonction du futur emplacement sur la carte. les deux opérations effectuées, soudure des pads et pin un autre exemple un TMC2208 finalisé avec sortie vertical 2 - Carte mère gt2560 v3 Je vais devoir récupérer des pins coté carte mère pour brancher les UARTs. pour les axes X,Y & Z, je récupère les pins sur le connecteur 5 broches. Un petit coup de fer a souder, quelques pins 2.54 et on arrive à ça. Ça me permet de récupérer les pins 15,14,34 et du 5V au passage si besoin. Axe X >> RX3 >> D15 Axe Y >> TX3 >> D14 Axe Z >> INT >> D34 Le tout, avec également un tmc2208 pour l'extruder (pin 45 récupéré sur T0) 3 - Klipper Coté configuration on ajoute la gestion des TMC2208 pour chaque axe, conf à adapter à votre materiel ! ######## STEPPER X TMC2208 ####### # Configure a TMC2208 (or TMC2224) stepper motor driver via single # wire UART. To use this feature, define a config section with a # "tmc2208" prefix followed by the name of the corresponding stepper # config section (for example, "[tmc2208 stepper_x]"). This also # creates a "tmc2208_stepper_x:virtual_enable" virtual pin which may # be used as the stepper's enable_pin (for enabling the driver via a # UART message). [tmc2208 stepper_x] uart_pin: ar15 # The pin connected to the TMC2208 PDN_UART line. This parameter # must be provided. #tx_pin: # If using separate receive and transmit lines to communicate with # the driver then set uart_pin to the receive pin and tx_pin to the # transmit pin. The default is to use uart_pin for both reading and # writing. #select_pins: # A comma separated list of pins to set prior to accessing the # tmc2208 UART. This may be useful for configuring an analog mux for # UART communication. The default is to not configure any pins. microsteps: 16 # The number of microsteps to configure the driver to use. Valid # values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must # be provided. #interpolate: True # If true, enable step interpolation (the driver will internally # step at a rate of 256 micro-steps). The default is True. run_current: 0.8 # The amount of current (in amps) to configure the driver to use # during stepper movement. This parameter must be provided. #hold_current: # The amount of current (in amps) to configure the driver to use # when the stepper is not moving. The default is to use the same # value as run_current. #sense_resistor: 0.110 # The resistance (in ohms) of the motor sense resistor. The default # is 0.110 ohms. stealthchop_threshold: 200 # The velocity (in mm/s) to set the "stealthChop" threshold to. When # set, "stealthChop" mode will be enabled if the stepper motor # velocity is below this value. The default is 0, which disables # "stealthChop" mode. #driver_IHOLDDELAY: 8 #driver_TPOWERDOWN: 20 #driver_TBL: 2 #driver_TOFF: 3 #driver_HEND: 0 #driver_HSTRT: 5 #driver_PWM_AUTOGRAD: True #driver_PWM_AUTOSCALE: True #driver_PWM_LIM: 12 #driver_PWM_REG: 8 #driver_PWM_FREQ: 1 #driver_PWM_GRAD: 14 #driver_PWM_OFS: 36 # Set the given register during the configuration of the TMC2208 # chip. This may be used to set custom motor parameters. The # defaults for each parameter are next to the parameter name in the # ######## STEPPER Y TMC2208 ####### [tmc2208 stepper_y] uart_pin: ar14 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 ######## STEPPER Z TMC2208 ####### [tmc2208 stepper_z] uart_pin: ar34 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 ######## STEPPER E0 TMC2208 ####### [tmc2208 extruder] uart_pin: ar45 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 Sans oublier de modifier le sens des moteurs [stepper_x] #avant #dir_pin: !ar39 #apres dir_pin: ar39 [stepper_y] #avant #dir_pin: !ar33 #apres dir_pin: ar33 [stepper_z] #avant #dir_pin: ar23 #apres dir_pin: !ar23 [extruder] #avant #dir_pin: ar44 #apres dir_pin: !ar44 Validation de la communication UART On relance Klipper et dans un terminal on lance la commande suivante: DUMP_TMC STEPPER=stepper_x en retour nous avons Recv: // ========== Write-only registers ========== Recv: // IHOLD_IRUN: 00081616 IHOLD=22 IRUN=22 IHOLDDELAY=8 Recv: // TPWMTHRS: 0000002f TPWMTHRS=47 Recv: // TPOWERDOWN: 00000014 TPOWERDOWN=20 Recv: // ========== Queried registers ========== Recv: // GCONF: 000001c0 pdn_disable=1 mstep_reg_select=1 multistep_filt=1 Recv: // GSTAT: 00000001 reset=1 Recv: // IFCNT: 00000006 IFCNT=6 Recv: // OTP_READ: 0000000c OTP_FCLKTRIM=12 Recv: // IOIN@TMC220x: 2000014d ENN=1 MS1=1 MS2=1 PDN_UART=1 SEL_A=1(TMC220x) VERSION=0x20 Recv: // FACTORY_CONF: 0000000c FCLKTRIM=12 Recv: // TSTEP: 000fffff TSTEP=1048575 Recv: // MSCNT: 00000008 MSCNT=8 Recv: // MSCURACT: 00f7000c CUR_A=12 CUR_B=247 Recv: // CHOPCONF: 14030053 toff=3 hstrt=5 TBL=2 vsense=1 MRES=4(16usteps) intpol=1 Recv: // DRV_STATUS: c0160000 CS_ACTUAL=22 stealth=1 stst=1 Recv: // PWMCONF: c80d0e24 PWM_OFS=36 PWM_GRAD=14 pwm_freq=1 pwm_autoscale=1 pwm_autograd=1 PWM_REG=8 PWM_LIM=12 Recv: // PWM_SCALE: 00000019 PWM_SCALE_SUM=25 Recv: // PWM_AUTO: 000e0024 PWM_OFS_AUTO=36 PWM_GRAD_AUTO=14 C'est tout bon, recommencer avec les autre axes DUMP_TMC STEPPER=stepper_y DUMP_TMC STEPPER=stepper_z DUMP_TMC STEPPER=extruder Il ne reste plus qu'a valider sur la machine et à vous la précision et le silence ! J'ajoute également mon fichier de configuration pour exemple: A10 v3 - TMC2208uart.cfg
  10. Bonjour, Désireux de me passer du vilain gros câble USB entre le raspberry et la carte de l'imprimante j'ai donc glané quelques renseignements que je vous compile et traduit ici. Ce tuto ne s'adresse qu'aux utilisateurs du firmware Klipper avec une carte Bigtreetech SKR 1.3. Bien que ces informations doivent pouvoir être transposées à d'autres types de cartes moyennant quelques adaptations pour le flashage et peut-être un câblage différent. En théorie on ne peux pas utiliser d'écrans TFT, de MMU ou tout autre périphérique utilisant le même UART en même temps. Je n'ai pas testé ce point. 1 - Câblage Comme évoqué, sachez que le câblage peut être différent suivant la carte et peut nécessiter des résistances ou un level-shifter. Pour la SKR 1.3, c'est très simple: 3 petits fils type prototypage suffisent, un pour GND et deux pour RX/TX. Inutile de rajouter un câble pour le +5V, le raspberry et la SKR sont alimentés indépendamment. Pour le câblage de l'UART on croise: RX du raspberry va sur TX de la SKR et inversement. Pour le Raspbery le GPIO 14 est TX et le GPIO 15 est RX. Pour la SKR 1.3: https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/blob/master/hardware/SKR-V1.3-PIN.pdf On pourra se brancher sur les broches nommées TFT. De gauche à droite: le premier pin est libre, le second est GND, TX est au milieu, puis RX et enfin le dernier est libre. 2 - Préparation du firmware pour la SKR: Suivez l'excellent tuto de @Nibb31, avec toutefois quelques adaptations pour la SKR. Après avoir tapé la commande make menuconfig, choisissez LPC176X. Désélectionnez "Use USB for communication [...]" pour permettre le 2-Wires UART. Quittez en sauvegardant. Tapez la commande make. Si vous aviez déjà fait cette manipulation en laissant la connexion USB classique il sera nécessaire de taper make clean avant. Avec le logiciel WINSCP cherchez le fichier klipper.bin qui se trouve dans /home/user/klipper/out Copiez/collez le sur la carte microSD de la SKR. Renommez le fichier sur la carte en firmware.bin Vous pouvez remettre la carte microSD dans l'imprimante. Au premier démarrage il peut être nécessaire d'appuyer sur le bouton rouge pour reset. Elle va créer ou écraser un fichier FIRMWARE.CUR. Si vous avez un doute que tout c'est bien passé, vous pouvez vérifier la date de création/modification de ce fichier. 3 - Préparer le Raspberry: Ouvrez le fichier config en tapant sudo nano /boot/config.txt. Rajoutez à la fin du fichier "dtoverlay=pi3-miniuart-bt" et "enable_uart=1" (en 2 lignes). Ctrl+O pour enregistrer et Ctrl+X pour fermer. Ouvrez le fichier cmdline en tapant sudo nano /boot/cmdline.txt. Cherchez la chaine de caractères "console=serial0,115200" et supprimez la. Ctrl+0 puis Ctrl+X. Tapez la commande sudo systemctl stop serial-getty@ttyS0.servicestop serial-getty@ttyS0.service Puis la commande sudo systemctl disable serial-getty@ttyS0.service Il est nécessaire de redémarrer le raspberry, par exemple avec la commande sudo reboot. 4 - Configurer Octoprint: Dans les settings > sous menu connexion, rajoutez dans les connexions additionnelles "/dev/ttyAMA0". Vous devriez avoir "/tmp/printer" sur la première ligne si vous avez bien suivi le tuto de @Nibb31. 5 - Fichier printer.cfg de Klipper: Cherchez la partie [mcu] et mettre la valeur "/dev/ttyAMA0" à serial. [mcu] serial: /dev/ttyAMA0 FIN Dans Octoprint, si ça ne fonctionne pas correctement, il peut être nécessaire de redémarrer "host" et "firmware" depuis le menu du plugin OctoKlipper et redémarrer Octoprint depuis le bandeau du haut ou en ligne de commande SSH: sudo service octoprint restart Les câbles entre les deux parties est très sensible aux interférences électromagnétiques. Il ne doit pas être trop long. Prévoir idéalement un câble blindé ou avec une ferrite. Pour les tests que j'ai pu effectuer, les 3 petits câbles de prototypage pour arduino de moins de 10cm vont parfaitement sans rien prévoir de spécial. sources: https://www.thingiverse.com/thing:3851024/comments https://community.octoprint.org/t/simple-3-wire-serial-connection-from-pi3-to-skr-v1-3-board/10166 La doc bigtreetech dont le lien figure à l'adresse ci-dessus.
  11. Salut J'utilise Klipper depuis quelques mois maintenant sur une carte HY-Base-L v1.0 (qui ressemble énormément à la mks base v1.5), et je suis très satisfait. Bon, je n'arrive pas à utiliser de BL touch,(clone) mais je n'y arrivait pas non plus avec marlin. La question d'aujourd'hui est sur le ventilateur de buse, qui est toujours actif. Il y a la possibilité de le faire démarrer à partir d'une température donnée dans Klipper (comme dans le reprap firmware) mais je ne sais pas quelle pin attribuer à ce ventilo. La D9 (ar9) sert au ventilateur radial pour la pièce. Je me demande d'ailleurs si le connecteur n'est pas un simple 12v non commutable. Pas besoin de pwm, juste du tout ou rien. Je peux aussi déplacer le branchement, mais la question est où? la prise D11 (mais j'ai pas l'impression qu'elle marche) Enfin, le code de la section : [heater_fan my_nozzle_fan] pin: ar11 max_power: 1.0 shutdown_speed: 0 cycle_time: 0.010 hardware_pwm: false kick_start_time: 0.100 heater: extruder heater_temp: 50.0 fan_speed: 1.0 Voilà Merci d'avance pour vos réponses. Sébastien
  12. Bonjour, Est-ce que quelqu'un ici a déjà configuré un capteur 3DTouch (clone du BLTouch) avec Klipper ? Mon imprimante était à la base une Anet A8, mais il ne reste plus que les moteurs et les tiges d'origine. C'est un chassis AM8, avec une MKS Gen 1.4 avec des DRV8825, un extrudeur Titan avec E3D V6 en Bowden, et le firmware Klipper. Tout fonctionne bien, mais j'ai du mal à configurer le bed levelling. Le Home Z marche bien, le Probe Up, Probe Down, et Self Test, etc...mais dès que je fais un auto bed level, la buse s'enfonce dans le bed avant que le capteur ne déclenche. Je pense qu'il y a un problème de Z offset (qui serait différent entre le Home All et le Bed Levelling?) mais je n'arrive pas du tout à le régler... Je précise que ça fonctionnait nickel sous Marlin. Donc si quelqu'un avait une config qui marche, je suis preneur...
  13. Salut à tous, Quelqu'un a-t-il déjà entendu parler de Klipper, qui se destine à remplacer Marlin sur nos vieilles machines? https://alfter.us/wp/2018/08/03/3d-printer-hot-rodding-klipper-vs-marlin/ ca a l'air vraiment top...
×
×
  • Créer...