Les arrêts ne se déclencheront pas à l'aide du micrologiciel Marlin

9

J'ai un vieux Solidoodle 2 que j'ai acheté cassé dans une vente de garage que je convertis pour utiliser RAMPS 1.4 avec le firmware Marlin. Tous les moteurs fonctionnent correctement, j'ai juste des problèmes pour que les butées fonctionnent.

J'utilise un interrupteur de fin de course normal avec NC allant à la broche de signal et l'autre à la masse. J'ai ce commutateur branché dans la première colonne d'en-tête pour X-min. Ma configuration de fin de course est actuellement:

//=========================================================================== 
//============================== Endstop Settings ===========================
//===========================================================================

// @section homing

// Specify here all the endstop connectors that are connected to any endstop or probe.
// Almost all printers will be using one per axis. Probes will use one or more of the
// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.
#define USE_XMIN_PLUG true
#define USE_YMIN_PLUG true
#define USE_ZMIN_PLUG true
//#define USE_XMAX_PLUG false
//#define USE_YMAX_PLUG false
//#define USE_ZMAX_PLUG false

// coarse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#if DISABLED(ENDSTOPPULLUPS)
  // fine endstop settings: Individual pullups. will be ignored if ENDSTOPPULLUPS is defined
  //#define ENDSTOPPULLUP_XMAX
  //#define ENDSTOPPULLUP_YMAX
  //#define ENDSTOPPULLUP_ZMAX
  //#define ENDSTOPPULLUP_XMIN
  //#define ENDSTOPPULLUP_YMIN
  //#define ENDSTOPPULLUP_ZMIN
  //#define ENDSTOPPULLUP_ZMIN_PROBE
#endif

// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.

J'ai X-min activé et inversé. Lorsque j'envoie un M119 (code d'état de fin de course), je reçois:

Send: M119
Recv: Reporting endstop status
Recv: x_min: open
Recv: y_min: TRIGGERED
Recv: z_min: TRIGGERED

Et puis quand j'appuie sur la butée X avec ma main, j'obtiens:

Send: M119
Recv: Reporting endstop status
Recv: x_min: open
Recv: y_min: TRIGGERED
Recv: z_min: TRIGGERED

-Pas de changement. Il n'y a pas de panne mécanique avec les interrupteurs, je l'ai testé avec un testeur de continuité. J'ai même court-circuité les broches de signal et de masse sur la carte Ramps avec un cavalier et je n'ai toujours vu aucun changement.

Où est la faute?

Aaron Cofield
la source

Réponses:

4

essayez de décommenter les lignes suivantes pour activer la détection de fin de course sur toutes les broches pour le dépannage.

//#define USE_XMAX_PLUG false
//#define USE_YMAX_PLUG false
//#define USE_ZMAX_PLUG false

De cette façon, le M119 affichera toutes les modifications.

La seule chose à laquelle je peux penser est que le commutateur est branché sur la mauvaise broche sur la carte des rampes (Max au lieu de Min) ou que le commutateur ne nécessite pas de pullup (vous pouvez également essayer de le commenter en tant que deuxième test) )

SteveP
la source
Il s'est avéré être une combinaison de ces lignes commentées et les fins de course ont été connectées aux deux mauvaises broches. Sur les cartes Solidoodles, les + et - sont inversés par défaut pour les connecteurs de fin de course.
Aaron Cofield