telson Posté(e) Juin 23, 2016 Posté(e) Juin 23, 2016 (modifié) Bonjour, Je souhaiterais mettre en place un système d’auto bed leveling sur ma prusa I3 de marque sunhokey, carte MKS Gen-2Z v1.1. Dans l’optique d’éliminer tous les doutes et afin d’établir un tutoriel complet j’aimerais aborder les différents aspects de ce système sur le plan du matériel, de la configuration du fichier Configuration.h et des réglages. Vous trouverez, pour certains, que les questions abordées ici sont simplistes voir même peut être bêbête mais l’objectif final est bien d’éliminer toutes les zones de doute. 1. La partie mécanique : Concernant le support du servomoteur j’ai choisi un support très simple : Source : http://www.thingiverse.com/thing:1162067 La fixation de ce système s’effectue très simplement à l’arrière du chariot de l’extrudeur : Si le servomoteur est un SG90 il faudra imprimer plutôt ce modèle de bras: Source : http://www.thingiverse.com/thing:1335701 2. Les branchements : 2.1. Le branchement du servomoteur : Dans le fichier Configuration.h, à la ligne //#define NUM_SERVOS 3, il est clairement indiqué que la broche sur la carte devra être la broche N° 3. Compte tenu qu'il existe 4 emplacements, que généralement la numérotation commence à 0 et que cette réflexion est confirmé dans le fichier pin.h : #ifdef NUM_SERVOS #define SERVO0_PIN 11 #if NUM_SERVOS > 1 #define SERVO1_PIN 6 #endif #if NUM_SERVOS > 2 #define SERVO2_PIN 5 #endif #if NUM_SERVOS > 3 #define SERVO3_PIN 4 #endif #endif La connexion du servomoteur s'effectue sur la broche D4 : · 2.2. Le branchement du switch : '' 3 '' possibilités s'offrent à nous : a) dupliquer le switch du endstop Z mini. Autrement dit placer un switch sur le palpeur en parallèle du switch endstop Z mini. Dans ce cas quelles sont les paramètres du fichier de Configuration.h. et les caractéristiques du G-code? · b) déplacer le switch du endstop Z mini sur le palpeur. Personnellement c'est une option dangereuse il me semble au premier abord.... Dans ce cas quelles sont les paramètres du fichier de Configuration.h. et les caractéristiques du G-code? · c) utiliser un switch connecté sur la broche endstop Z max.. Dans ce cas quelles sont les paramètres du fichier de Configuration.h. Faut t'il modifier un autre fichier de configuration comme pin.h et quelles sont les caractéristiques du G-code? il faudra alors connecter le switch ici : Fin de la première partie Merci par avance pour toutes vos réponses constructives. Modifié (le) Juin 23, 2016 par telson
nicephore Posté(e) Juin 23, 2016 Posté(e) Juin 23, 2016 (modifié) Pour ce qui concerne le branchement du servo moteur sur la carte. Au centre le + (+5v de couleur rouge) Au extrémités S (signal PWM de couleur blanc ou jaune) -.(GND de couleur noir) Je ne sais pas ou se trouvent S et - ce n'est pas grave tu fait le test dans un sens puis dans l'autre. Tu ne risque normalement pas de griller quoi que ce soit puisque le + est au centre. Après vérif le brochage est la suivant : Haut : D11 D6 D5 D4 Centre : 5v Bas : GND Source : Modifié (le) Juin 23, 2016 par nicephore Ajout PINs
telson Posté(e) Juin 23, 2016 Auteur Posté(e) Juin 23, 2016 (modifié) Ok, merci pour ces premiers éléments de réponse. concernant #define NUM_SERVOS 3 et compte tenu qu'il existe 4 broches et que généralement la numérotation commence par 0, je dirais qu'il faut connecter le servomoteur en D4....a tester........ Toutes les réponses aux questions seront éditées dans le premier message au fur et à mesure encore merci ++ Modifié (le) Juin 23, 2016 par telson
nicephore Posté(e) Juin 23, 2016 Posté(e) Juin 23, 2016 Dans le Marlin tu dois certainement avoir un pin.h, la réponse doit certainement s'y trouver.
telson Posté(e) Juin 23, 2016 Auteur Posté(e) Juin 23, 2016 Totalement exact : #ifdef NUM_SERVOS #define SERVO0_PIN 11 #if NUM_SERVOS > 1 #define SERVO1_PIN 6 #endif #if NUM_SERVOS > 2 #define SERVO2_PIN 5 #endif #if NUM_SERVOS > 3 #define SERVO3_PIN 4 #endif #endif chapeau bas !!
nicephore Posté(e) Juin 23, 2016 Posté(e) Juin 23, 2016 En fait lorsque nous parlons de carte de contrôle d'imprimante 3D nous parlons Marlin et donc Arduino. Donc regarder pin.h qui définit l'attribution des pin.
telson Posté(e) Juin 23, 2016 Auteur Posté(e) Juin 23, 2016 yes.....merci... Je continu la lecture d'article sur la toile pour compléter mon mode opératoire..........Je dirais tutoriel quand ce sera fini !!! et validé !! J'éditerai toujours le premier message. questions en bleu réponses en rouge ++
nicephore Posté(e) Juin 23, 2016 Posté(e) Juin 23, 2016 Concernant les End Stop, un seul par axe est suffisant puisque tu définit la surface de plateau dans le soft.
telson Posté(e) Juin 23, 2016 Auteur Posté(e) Juin 23, 2016 (modifié) Effectivement mais l'objectif serait d'utiliser le endstop Z max pour le palpeur...Et garder ainsi en sécurité le endstop Z mini en sécurité.....Est ce possible...... Tiens c'est bizarre, je ne peux plus éditer mon premier message ??? Modifié (le) Juin 23, 2016 par telson
telson Posté(e) Juin 23, 2016 Auteur Posté(e) Juin 23, 2016 (modifié) Deuxième partie : la modification du fichier Configuration.h Compte tenu que je n'ai pas suffisamment d'information, pour le moment pour réaliser l'option : c) utiliser un switch connecté sur la broche endstop Z max. La suite de cette procédure sera basé sur l'option : b) déplacer le switch du endstop Z mini sur le palpeur. La duplication du switch endstop Z mini apporte essentiellement une sécurité supplémentaire et ne change en rien la modification du fichier Configuration.h et les réglages..... enfin me semble t'il pour le moment...... 3. Modification du fichier configuration.h Commençons tout simplement par ouvrir le fichier Configuration.h avec notepad++, par exemple, et modifions les lignes suivantes : Dans la section : //=========================================================================== //=============================Mechanical Settings=========================== //=========================================================================== // ENDSTOP SETTINGS: #define min_software_endstops false // Si true, impossible de descendre en dessous de la position HOME_POS. Est t’il indispensable de modifier cette ligne est quelles en sont exactement les conséquences?? Dans la section : //============================= Bed Auto Leveling =========================== Enlever les deux // de la ligne suivante #define ENABLE_AUTO-BED_LEVELING il existe deux modes d'auto bed leveling. Soit la méthode de la grille soit par une méthode de 3 points. Ici nous prendrons la méthode grille. Donc laisser la ligne suivante sans aucune modification : #define AUTO_BED_LEVELING_GRID (Si vous souhaitez la méthode 3 points, rajouté en début de la ligne //). Il faut ensuite, et selon les dimensions du plateau chauffant, modifier les lignes suivantes. Ce sont les marges à implémenter pour éviter que le palpeur ne soit à l'extérieure du plateau : #define LEFT_PROBE_BED_POSITION 20 #define RIGHT_PROBE_BED_POSITION 180 #define BACK_PROBE_BED_POSITION 180 #define FRONT_PROBE_BED_POSITION 20 J'ai un plateau de 200*200, j'ai donc mis une marge de 20 mmm à gauche,à droite, devant et derrière. C'est uniquement dans cette zone que les points de palpage s'effecturont. Maintenant le nombre de palpage par dimension sur la grille, j'ai mis 3 et il n'est pas nécessaire d'aller au delà #define AUTO_BED_LEVELING_GRID_POINTS 3 (si vous n'avez pas choisi la méthode grille voici les coordonnées des 3 points) #else // not AUTO_BED_LEVELING_GRID #define ABL_PROBE_PT_1_X 15 #define ABL_PROBE_PT_1_Y 180 #define ABL_PROBE_PT_2_X 15 #define ABL_PROBE_PT_2_Y 20 #define ABL_PROBE_PT_3_X 170 #define ABL_PROBE_PT_3_Y 20 #endif // AUTO_BED_LEVELING_GRID Enfin, passons maintenant à l'offset (en mm), décalage en X, Y et Z, du switch du palpeur par rapport à la buse. Ce sont ces valeurs qu'il faudra absolument régler. ATTENTION, pas question de prendre ces valeurs. Il faut les rechercher. Elles sont spécifiques à chaque machine et ce même pour des modèles identiques!! voir dans partie à venir les réglages. #define X_PROBE_OFFSET_FROM_EXTRUDER -25 #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 Hauteur d’élévation en Z avant le homing (G28) #define Z_RAISE_BEFORE_HOMING 5 ATTENTION. L'utilisation du switch endstop Z mini sur le palpeur peut t'il, en cas d'un G28 Z, venir faire frotter la buse sur le plateau ?....Merci pour vos retours d'information sur le sujet. La vitesse (mm/min) de déplacement sur l'axe X et Y entre deux palpages : #define XY_TRAVEL_SPEED 4000 Les hauteurs de déplacement en Z avant le premier palpage et entre deux palpages. #define Z_RAISE_BEFORE_PROBING 15 #define Z_RAISE_BETWEEN_PROBINGS 5 Le délai de désactivation du servomoteur pour éviter les vibrations de ce dernier. Faut t'il l'activer? Faut t'il modifier le délais...Certains disent oui, d'autres non.... Merci pour vos retours d'information sur le sujet. // #define PROBE_SERVO_DEACTIVATION_DELAY 300 Alors nous y voici. c'est ma grande question : Si l'auto bed est activé il est fortement recommandé de laisser le Z_SAFE_HOMING enabled!!! Mais nous utilisons le switch du endstop Z mini sur le palpeur. Existe t'il un risque, lors d'une mauvaise manipulation de voir la buse frotter contre le plateau? Merci pour vos retours d'information sur le sujet. #define Z_SAFE_HOMING Maintenant allons à la section : /*********************************************************************\ * R/C SERVO support * Sponsored by TrinityLabs, Reworked by codexmas **********************************************************************/ Supprimer les deux // devant les lignes ci-dessous pour activer le servomoteur qui devra être connecté à la broche N°3 soit D4, voir première partie. #define NUM_SERVOS 3 #define SERVO_ENDSTOPS {-1, -1, 0} // Servomoteur pour l'axe Z, actif = 0, inactif = -1#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 70,0} // angle du servo, ici 70° et 0° Merci par avance à tous ceux qui voudront bien apporter des informations constructives à cette nouvelle partie... +++ Modifié (le) Juin 24, 2016 par telson pas doué en mise en page et rédaction tuto ...
telson Posté(e) Juin 26, 2016 Auteur Posté(e) Juin 26, 2016 Non...personne pour donner son avis ou retour d'expérience?
nicephore Posté(e) Juin 26, 2016 Posté(e) Juin 26, 2016 Le servo angle. La valeur sera à régler en fonction du servo utilisé.
telson Posté(e) Juin 27, 2016 Auteur Posté(e) Juin 27, 2016 oui merci c'est effectivement l'angle du servo ..... Par contre il ne faut pas connecter le servomoteur en D4 mais en D11 et la commande M280 P3 Sxxx ne fonctionne pas mais M280 P0 sxxx Étonnant avec #define NUM_SERVOS 3
nicephore Posté(e) Juin 27, 2016 Posté(e) Juin 27, 2016 En fait si tu dois utiliser 0 c'est que #define NUM_SERVOS 3 est le 1er index donc P0; si tu utilise #define NUM_SERVOS 1 alors tu utilisera P1
telson Posté(e) Juin 27, 2016 Auteur Posté(e) Juin 27, 2016 (modifié) Ha !!?? Fallait le savoir...... Quoi qu'il en soit j'ai essayé sur plusieurs broches et j'ai fini par trouver que sur D11 ça marchait.... Merci Modifié (le) Juin 27, 2016 par telson
nicephore Posté(e) Juin 27, 2016 Posté(e) Juin 27, 2016 Oui donc le 1er élément du tableau suivant : #ifdef NUM_SERVOS #define SERVO0_PIN 11 #if NUM_SERVOS > 1 #define SERVO1_PIN 6 #endif #if NUM_SERVOS > 2 #define SERVO2_PIN 5 #endif #if NUM_SERVOS > 3 #define SERVO3_PIN 4 #endif #endif et M280 en P0 (donc sur ce 1er élément de tableau).
telson Posté(e) Juin 27, 2016 Auteur Posté(e) Juin 27, 2016 Mouais :: #define NUM_SERVOS 3 c'est le 1er index donc P0 ....... Trop rapidement j'avais conclu : #define NUM_SERVOS 3 = #define SERVO3_PIN 4 ....mais non mais non...... Ok alors.
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant