Aller au contenu

GO Print

BL Touch


bdevis

Messages recommandés

Exact, j'en ai acheté un...

Alors, c'est un travail minutieux à installer/paramétrer...

Pour le calibrage, il faut être précis, j'ai donc imprimer cette pièce : http://www.thingiverse.com/thing:1538742 (ça n'a l'air de rien, mais ça fait gagner du temps...)

Pour le moment, ça tient avec une petite équerre collée au double face (j'avais plus de chewing gum comme Mac Gyver)

Sans oublié les modifs à faire dans Marlin le Malin...

Sur ce coup là, GOOGLE et YOUTUBE sont tes amis !!!

Au début, c'est déroutant, tu sais pas trop quoi faire de ce petit truc... Et puis faut reflasher le FW... c'est long, c'est pas toujours évident...

 

Mais le résultat est sympa : ça palpe, ça palpe et c'est magique !!!

J'ai testé sur 3 plateaux : chauffant + plaque de verre 3 mm / MDF + BuildTak / Plexiglass + 3M

Résultat au top : impressions nickel (même sur un plateau bancale)

 

ATTENTION : je ne maîtrise par encore tout, je suis en phase de test... Donc je ne serai pas d'un grand secours, mais c'est un palpeur efficace !!

Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

Bonjour,

je suis content de trouver un sujet sur le bl touch. Je viens d'en recevoir un mais je galère pour le faire fonctionner. J'essai de tester avec pronterface et les commandes m280 P0 SXX mais rien ne se passe. Je suppose donc que mon firmware n'est pas bon. Je voudrai donc si possible récupérer les fichiers ( pins.h et configuration.h je crois). Sinon obtenir des indications sur ce qu'il faut, notamment comment définir le servo Z (n•0) sur la pin A4. 

Groyotte. 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 23 heures, Groyotte a dit :

Bonjour,

je suis content de trouver un sujet sur le bl touch. Je viens d'en recevoir un mais je galère pour le faire fonctionner. J'essai de tester avec pronterface et les commandes m280 P0 SXX mais rien ne se passe. Je suppose donc que mon firmware n'est pas bon. Je voudrai donc si possible récupérer les fichiers ( pins.h et configuration.h je crois). Sinon obtenir des indications sur ce qu'il faut, notamment comment définir le servo Z (n•0) sur la pin A4. 

Groyotte. 

Dans les firm de la D200 le M280 n'est pas implémenté, tu va devoir te débrouiller pour config un Marlin

Lien vers le commentaire
Partager sur d’autres sites

Bon après des test effectué avec les commandes M401 et M402 (qui sont présente j'ai vérifié) mon capteur ne donne toujours aucun signe de vie... Enfin, il fonction lorsque l'imprimante ce met en route. Mais dès l'instant où je veux le faire fonctionner rien ne se passe. J'ai eu beau essayer les cmd G28 et M401 il ne veux rien savoir. C'est pour cela qu'une aide quant à la définition de la pin du servo me serait utile afin de savoir si je n'ai pas fait d'erreur.

Lien vers le commentaire
Partager sur d’autres sites

Le 06/09/2016 at 08:37, Wrmaeleun a dit :

@LeBress Pourquoi désolé ?

C'était une blague !!! Je pense faire un tuto, mais je manque un peu de temps en ce moment...

Salut @Wrmaeleun, as-tu trouvé un peu de temps pour débuter un tutoriel concernant ce fameux capteur BL Touch ?

Comme j'ai reçu le miens pas plus tard qu'aujourd'hui, tu aurais déjà un lecteur assidu ;)

 

PTDC0016_DCE.jpg

PTDC0017_DCE.jpg

Lien vers le commentaire
Partager sur d’autres sites

Désolé les amis... 

Point du tuto en vu, faute de temps...

J'avais bricolé un peu une vieille version de Marlin, c'était un peu du bricolage... Depuis, je suis passé à la DiscoEasy et j'ai un peu plus de mal à mettre tout ça en oeuvre...

Work in progress... Je vous tiendrai au jus...

Lien vers le commentaire
Partager sur d’autres sites

Alors je suis parvenu à faire fonctionner mon capteur. 

Je vais essayer de vous donner les différentes lignes de code modifiée/dé-commentée. Et surtout mon capteur es branché sur la pin A4.

Tout d'abord dans le fichier configuration.h : 

const bool Z_MIN_ENDSTOP_INVERTING = false;


//============================= Bed Auto Leveling ===========================


#define AUTO_BED_LEVELING_GRID
  // with AUTO_BED_LEVELING_GRID, the bed is sampled in a
  // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid
  // and least squares solution is calculated
  // Note: this feature occupies 10'206 byte
  #ifdef AUTO_BED_LEVELING_GRID

//en fonction de la position de votre capteur il faut changer les différentes valeurs
   // set the rectangle in which to probe disco
    
    //au dessus de chaque roulement ==> 22 / 184 / 145 / 50 
    #define LEFT_PROBE_BED_POSITION 22
    #define RIGHT_PROBE_BED_POSITION 184
    #define BACK_PROBE_BED_POSITION 145
   #define FRONT_PROBE_BED_POSITION 50

// these are the offsets to the probe relative to the extruder tip (Hotend - Probe)
  // X and Y offsets must be integers
  #define X_PROBE_OFFSET_FROM_EXTRUDER 0 
  #define Y_PROBE_OFFSET_FROM_EXTRUDER -21 //-22 //palpeur devant la buse 
  #define Z_PROBE_OFFSET_FROM_EXTRUDER -0.5 //1.95 //0 //mettre -0.5 s'il y a un palpeur


#define PROBE_SERVO_DEACTIVATION_DELAY 300 // Retirer le commentaire sur cette ligne

//Trouver ensuite ces lignes et retirez les commentaires si nécessaire.


// Number of servos
//
// If you select a configuration below, this will receive a default value and does not need to be set manually
// set it manually if you have more servos than extruders and wish to manually control some
// leaving it undefined or defining as 0 will disable the servo subsystem
// If unsure, leave commented / disabled
//
#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command

// Servo Endstops
//
// This allows for servo actuated endstops, primary usage is for the Z Axis to eliminate calibration or bed height changes.
// Use M206 command to correct for switch height offset to actual nozzle height. Store that setting with M500.
//
#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 10,90} // X,Y,Z Axis Extend and Retract angles

Voilà pour les modification que j'ai eu à réaliser sur le fichier configuration.h. Ensuite, j'ai modifié le fichier pins.h. pour faire correspondre mon "servo" Z et la pin A4 (il s'agit de la pin n°33 sur la puce). Donc on cherche (ctrl+f -> Sanguinololu pin assignment) ensuite il faut trouver la ligne suivante (il s'agit de ma ligne 1229 si ça peut aider): 

#define SERVO0_PIN        33  //-1

Et donc, on commente ou supprime le -1 et on met 33 à la place.

A partir de là j'ai effectué des tests sans résultat :'(. En fin de compte un autre fichier est à modifier. Le dernier fichier se nomme Marlin_main.cpp. Dans ce fichier ce que j'ai fait c'est modifier les fonction qui permettent de sortir et rentrer la tige de notre capteur. Pour cela on cherche les fonctions engage_z_probe() et retract_z_probe() (il se peut que vous n'ayez pas engage_z_probe() mais deploy_z_probe() comme j'ai vu sur internet mais je pense que la fonction reste la même...).

static void engage_z_probe() {
    // Engage Z Servo endstop if enabled
    #ifdef SERVO_ENDSTOPS
    if (servo_endstops[Z_AXIS] > -1) {
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
        servos[servo_endstops[Z_AXIS]].attach(A4);     //Modification 0 correspond à la pin D0 or capteur sur la pin A4
#endif
        servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2]);
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
        delay(PROBE_SERVO_DEACTIVATION_DELAY);
        servos[servo_endstops[Z_AXIS]].detach();
#endif
    }
    #endif
}

static void retract_z_probe() {
    // Retract Z Servo endstop if enabled
    #ifdef SERVO_ENDSTOPS
    if (servo_endstops[Z_AXIS] > -1) {
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
        servos[servo_endstops[Z_AXIS]].attach(A4);    //Modification 0 correspond à la pin D0 or capteur sur la pin A4
#endif
        servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2 + 1]);
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
        delay(PROBE_SERVO_DEACTIVATION_DELAY);
        servos[servo_endstops[Z_AXIS]].detach();
#endif
    }
    #endif
}

Voilà vous êtes arrivé au même point que moi. J'espère que ceci vous aura été utile et bon leveling ;).

  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

  • 3 months later...

j'ai justement ouvert un sujet dessus.

car je n'arrive pas à le faire fonctionner.

en faite. j'ai mis a jour mon marlin par la version RC8 (qui intègre la fonction bl touch)

mais quand je lance la commande g28, les axes X et Y vont sur leur origine,

mais pas le Z ne bouge pas.

j'en suis la et je n'arrive pas à faire l'origine du Z!

ce marlin est génial, vu qu'il intègre l'offset des axes sur l'écran!

donc on peut régler l'offset a tout moment. mais il faudrait que j'arrive à faire bouger mon Z!

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
×
×
  • Créer...