Aller au contenu principal

Installation du BDsensor

Connecter le câble du capteur à la carte mère ou à la carte de tête d'outil CAN.

  • Notez que le SB2040 ne peut pas utiliser le BDsensor
  • Notez que pour le SHT36, il faut connecter le CLK/SCL (Input) du BDsensor à l'entrée haute tension et mettre le cavalier.
  • Les fils CKL et SDA du BDsensor peuvent être connectés à n'importe quelle broche GPIO de la carte. Vous pouvez également connecter directement le câble du capteur BD au port Bltouch, par exemple :
BLtouch    |    BDsensor
5V --> 5V
GND --> GND
S --> CLK/SCL (Input)
GND --> GND
Zmin --> SDA (Input/Output)
  • Certaines broches dans les connecteurs de la carte mère peuvent ne pas être directement connectées aux GPIO du MCU (par exemple, elles peuvent avoir des condensateurs de filtrage ou être isolées via un MOSFET, une diode ou un optocoupleur, mais si elles sont isolées via une résistance ou une résistance pull-up/pull-down, c'est possible), elles ne peuvent donc pas être utilisées avec le BDsensor. Et le firmware signalera une erreur de connexion. Par exemple :

  • Les connecteurs des ventilateurs et des chauffages sont isolés via un MOSFET,

  • Les connecteurs pour les thermistances de température et les butées/fils de sonde dans certaines cartes sont généralement connectés à la masse via des condensateurs de filtrage,

  1. Installez le capteur BD près de la tête chaude, comme illustré ci-dessous. STL du support, STL_mount_VzBot_Goliath short

    Loading...

Appliquer le correctif au firmware Marlin

Le capteur BD est intégré à Marlin 2.1.x (depuis le 27/08/2022),

Vous pouvez télécharger la version de publication. Mais il est maintenant recommandé de télécharger la dernière version avec corrections de bugs : https://github.com/MarlinFirmware/Marlin

Vous devez modifier les fichiers de configuration et les fichiers de broches.

Modifier Configuration.h

  1. Activer BD_SENSOR

    Décommentez

    #define BD_SENSOR
    #define Z_SAFE_HOMING
    #define BD_SENSOR_PROBE_NO_STOP //ajouter cette nouvelle ligne pour un nivellement rapide du lit sans arrêt de la buse,

    Seulement BD_SENSOR_PROBE_NO_STOP

    Dernière correction de bugs Marlin : https://github.com/MarlinFirmware/Marlin

    Description : https://github.com/MarlinFirmware/Marlin/pull/25847

  2. Utiliser la sonde pour l'origination

    Assurez-vous que Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN est désactivé, et USE_PROBE_FOR_Z_HOMING doit être activé comme suit :

    //#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
    // Forcer l'utilisation de la sonde pour l'origination de l'axe Z
    #define USE_PROBE_FOR_Z_HOMING
  3. Ralentir la deuxième vitesse d'origination Z

    #define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)

    Ici, nous devons ralentir la vitesse de butée d'origination et la vitesse d'origination Z, car la lecture de la butée depuis le processus BDsensor n'est pas en temps réel comme une butée normale.

    Modifier Configuration_adv.h

    #define BABYSTEPPING Activez cette fonction pour la fonction de nivellement en temps réel

    #define HOMING_BUMP_DIVISOR { 2, 2, 8 }       // Diviseur de vitesse de re-butée (divise la vitesse d'avance d'origination)

Modifier pins_boardname.h

Configurez les broches SDA et SCL du BDsensor dans le fichier de broches pins_boardname.h (par exemple pins_PANDA_PI_V29.h) en ajoutant les 3 lignes suivantes :

#define  I2C_BD_SDA_PIN    PC6   // Veuillez changer par le numéro réel auquel le fil SDA est connecté sur votre carte mère
#define I2C_BD_SCL_PIN PB2 // Veuillez changer par le numéro réel auquel le fil SLK est connecté sur votre carte mère
#define I2C_BD_DELAY 20 // la valeur par défaut est 20, doit être dans la plage [20,50].

Si vous voulez faire une sonde de nivellement automatique du lit (G29) avant l'impression comme un BLtouch normal, décommentez

#define AUTO_BED_LEVELING_BILINEAR

et modifiez les valeurs comme indiqué ci-dessous

#define Z_CLEARANCE_DEPLOY_PROBE   0 // Débattement en Z pour Déployer/Ranger
#define Z_CLEARANCE_BETWEEN_PROBES 1 // Débattement en Z entre les points de sonde
#define Z_CLEARANCE_MULTI_PROBE 1 // Débattement en Z entre plusieurs sondes

Afficher la valeur du capteur BD sur l'écran LCD

  • Pour les imprimantes ayant un affichage d'état (supportant le gcode M117), comme LCD12864 ou certains écrans uart, comme ender3V2 ...

Calibration

  1. Nettoyez la buse, puis dans la console, déplacez l'axe Z jusqu'à ce que la buse touche juste le plateau d'impression (le BDsensor utilisera cette position comme point zéro, donc pas besoin de z_offset, nous définissons la valeur à 0).

  2. Envoyez la commande gcode M102 S-6, l'imprimante déplacera lentement l'axe Z vers le haut de 0,1 mm à chaque fois, jusqu'à atteindre 4 mm. Ne lancez pas M102 S-6 avant d'avoir installé le capteur, et ne coupez pas l'alimentation de l'imprimante pendant la calibration, sinon les anciennes données de calibration seront effacées. Dans ce cas, recalibrez simplement.

  3. Vous pouvez envoyer M102 S-5 pour vérifier si le capteur BD a été calibré avec succès, cela renverra les données de calibration brutes stockées dans le capteur BD.

Il existe aussi un outil de calibration pour cela : https://github.com/markniu/Bed_Distance_sensor/raw/new/marlin/BD_Config_Tool_Marlin.zip img

Remarque : une valeur de données de 1015 ou > 1010 indique que le capteur est hors plage. Si les 5 premiers points (0~0,5 mm) ou plus ont des valeurs dans la plage de 0 à 1000, et que l'incrément delta est >=10, cela signifie que la calibration a réussi. Comme le graphique ci-dessus.

Si la première donnée de calibration brute renvoyée par M102 S-5 est supérieure à 400, cela signifie que le capteur est installé trop haut et doit être réinstallé plus près du lit. Assurez-vous également que la deuxième valeur de données est supérieure d'au moins 10 à la première.

Test et impression

Menu Nivellement du lit

Nivellement automatique du lit

Il y a deux méthodes pour niveler automatiquement le lit :

1. Utiliser M102 pour niveler en temps réel les premières couches

Nous pouvons facilement activer ou désactiver ce nivellement automatique en envoyant une commande gcode ou en ajoutant le gcode dans le fichier gcode.

Pour activer le nivellement du lit dans Cura, ajoutez le code G M102 S2 juste en dessous du code G G28 (Origine tous axes) dans la section "G-code de démarrage" des paramètres de la machine de l'imprimante. Par exemple, sous G28, cela signifie qu'il ne fera le nivellement du lit qu'en dessous de 0,2 mm de hauteur d'axe Z.

Envoyer M102 S0 ou G28 désactivera le nivellement du lit en utilisant le capteur BD, d'ailleurs, il est désactivé par défaut.

M102   S-1     //Lire les informations du capteur, et nous pouvons l'utiliser pour vérifier la connexion.
M102 S-2 //Lire la valeur de distance actuelle
M102 S-5 //Lire les données de calibration brutes
M102 S-6 //Démarrer la calibration, avant cela assurez-vous que la buse touche juste le lit, puis redémarrez l'imprimante. ne pas faire l'origination de l'axe Z avant cela.
M102 S4 //Définir la valeur de hauteur Z ajustable, par ex. M102 S4 signifie qu'il ajustera tant que la hauteur Z <=0,4 mm, désactivez-le avec M102 S0.

2. G29 Nivellement automatique du lit

Une autre méthode de nivellement automatique du lit est comme le BLtouch avec G29, ajoutez simplement une ligne G28 sous G29.

Vidéo d'installation

Vidéo d'installation de Chris's Basement

Vérifier la butée Z M119

Ne faites pas l'origination Z avant de vérifier cette étape, sinon la buse pourrait endommager le plateau d'impression.

Voici le message de retour après avoir envoyé la commande M119 (rapport d'état des butées).

Envoi : M119
Réception : x:open y:open z:open

Si z min n'est pas ouvert, vérifiez votre configuration. #define Z_MAX_ENDSTOP_HIT_STATE HIGH

  • Assurez-vous que le moteur Z est éteint/déverrouillé
  • Déplacez manuellement l'axe Z vers le bas jusqu'à ce que la buse touche le lit
  • Envoyez M102 S-2, la valeur de retour doit être 0,00 mm, puis envoyez à nouveau M119, vous pouvez voir que la butée z est maintenant déclenchée.
Envoi : M119
Réception : x:open y:open z:TRIGGERED

Vérifier la connexion

Vérifiez la connexion via M102 S-1. Voici un exemple de message de retour, vérifiez si la connexion et l'ordre des fils renvoient un blanc ou une autre chaîne.

Envoi : M102 S-1
Réception : V1.0 pandapi3d.com

Si toutes les étapes ci-dessus sont correctes, vous pouvez maintenant faire l'origination de l'axe Z.

Loading...