Problema endstop delta autocostruita August 27, 2020 12:17PM |
Registered: 6 years ago Posts: 51 |
Re: Problema endstop delta autocostruita August 28, 2020 03:03AM |
Registered: 10 years ago Posts: 3,268 |
Re: Problema endstop delta autocostruita August 28, 2020 05:12AM |
Registered: 6 years ago Posts: 51 |
Quote
bilanciamist
che significa "Ho avviato un test del firmware da Arduino"?
hai testato gli endstop uno alla volta conM119? Se sicuro di non aver confuso le torri tra loro e di aver assegnato a ciascuna il corretto endstop?
Re: Problema endstop delta autocostruita August 28, 2020 11:10AM |
Registered: 7 years ago Posts: 1,059 |
#if ENABLED(ABORT_ON_ENDSTOP_HIT) #if ENABLED(ABORT_ON_ENDSTOP_HIT_DEFAULT) bool Planner::abort_on_endstop_hit = ABORT_ON_ENDSTOP_HIT_DEFAULT; #else bool Planner::abort_on_endstop_hit = false; #endif #endif
src/lcd/menu/menu_advanced.cpp:607: #if ENABLED(ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) src/lcd/menu/menu_advanced.cpp:608: MENU_ITEM_EDIT(bool, MSG_ENDSTOP_ABORT, &planner
Re: Problema endstop delta autocostruita August 29, 2020 04:03AM |
Registered: 6 years ago Posts: 51 |
Quote
onekk
Allora, non hai specificato una cosa, quando è che gli endstop non funzionano?
In un vecchio post del Mago, si diceva che gli endstop funzionano SOLO al momento della procedura di HOMING.
Poi non vengono in pratica più controllati per snellire e velocizzare il "main loop".
Da una veloce analisi del codice almeno della versione 4.3.8 sembrerebbe che gli endstop vengano considerati nel planner solo se è attivata una opzione:
#if ENABLED(ABORT_ON_ENDSTOP_HIT) #if ENABLED(ABORT_ON_ENDSTOP_HIT_DEFAULT) bool Planner::abort_on_endstop_hit = ABORT_ON_ENDSTOP_HIT_DEFAULT; #else bool Planner::abort_on_endstop_hit = false; #endif #endif
Ora non so che versione tu stia usando e dato che non usa una delta proprio non so cosa venga attivato di default, però da una veloce ricerca nei sorgenti:
ABORT_ON_ENDSTOP_HIT si trova in Configuration_Features.h (e probabilmente anche in Configuration_Overall.h)
e sembrerebbe che attivandola, si possa anche modificare lo status di ABORT_ON_ENDSTOP_HIT_DEFAULT usando un sottomenu però di questo non sono sicuro al 100%, ma ci sono questi due rifermenti nei sorgenti:
src/lcd/menu/menu_advanced.cpp:607: #if ENABLED(ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) src/lcd/menu/menu_advanced.cpp:608: MENU_ITEM_EDIT(bool, MSG_ENDSTOP_ABORT, &planner
La sicurezza ci sarebbe se il Mago confermasse la mia supposizione.
Saluti
Carlo D.
Re: Problema endstop delta autocostruita August 29, 2020 05:50AM |
Registered: 7 years ago Posts: 1,059 |
Re: Problema endstop delta autocostruita August 29, 2020 08:38AM |
Registered: 10 years ago Posts: 3,268 |
Re: Problema endstop delta autocostruita August 29, 2020 09:08AM |
Registered: 6 years ago Posts: 51 |
Quote
bilanciamist
non vorrei insistere, ma se li testi con m119 uno per uno capisci subito se funzionano o no, e se sono accoppiati correttamente.
Re: Problema endstop delta autocostruita August 29, 2020 11:34AM |
Registered: 7 years ago Posts: 1,059 |
M119 returns the correct state of all stops 23:05:28.492 : x_min: NOT TRIGGERED 23:05:28.501 : y_max: NOT TRIGGERED 23:05:28.516 : z_probe: NOT TRIGGERED
/** * Get the stepper positions in the cartesian_position[] array. * Forward kinematics are applied for DELTA. * * The result is in the current coordinate space with * leveling applied. The coordinates need to be run through * unapply_leveling to obtain the "ideal" coordinates * suitable for position, etc. */ void Delta_Mechanics::get_cartesian_from_steppers() { InverseTransform( planner.get_axis_position_mm(A_AXIS), planner.get_axis_position_mm(B_AXIS), planner.get_axis_position_mm(C_AXIS), cartesian_position ); }
Re: Problema endstop delta autocostruita August 30, 2020 03:14AM |
Registered: 6 years ago Posts: 51 |
Re: Problema endstop delta autocostruita August 30, 2020 05:38AM |
Registered: 7 years ago Posts: 1,059 |
/***************************************************************************************** ************************* Endstop pullup resistors ************************************** ***************************************************************************************** * * * Put true for enable or put false for disable the endstop pullup resistors * * * *****************************************************************************************/ #define ENDSTOPPULLUP_XMAX false #define ENDSTOPPULLUP_YMAX false #define ENDSTOPPULLUP_ZMAX false #define ENDSTOPPULLUP_ZPROBE false /*****************************************************************************************/ /***************************************************************************************** ************************************ Endstops logic ************************************* ***************************************************************************************** * * * Mechanical endstop with COM to ground and NC to Signal * * uses "false" here (most common setup). * * * *****************************************************************************************/ #define X_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Y_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Z_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Z_PROBE_ENDSTOP_LOGIC false // set to true to invert the logic of the probe.
Re: Problema endstop delta autocostruita August 30, 2020 07:49AM |
Registered: 6 years ago Posts: 51 |
Quote
onekk
OK, cominciamo a ragionare.
NC e com vuol dire che l'endstop è in corto circuito cioè segna triggered se non è premuto, NC = Normally Closed, normalmente chiuso.
per cui:
1) devi attivare le resistenze di pullup interne oppure collegare una resistenza esterna tra il 5V e il segnale, se non hai problemi di falsi trigger usa il pullup interno (in genere l'esterno è consigliato in ambienti elettricamente rumorosi come una CNC)
2) devi dire a MK4duo che sono NC.
per cui se guardi in Configuration_Delta.h, troverai:
/***************************************************************************************** ************************* Endstop pullup resistors ************************************** ***************************************************************************************** * * * Put true for enable or put false for disable the endstop pullup resistors * * * *****************************************************************************************/ #define ENDSTOPPULLUP_XMAX false #define ENDSTOPPULLUP_YMAX false #define ENDSTOPPULLUP_ZMAX false #define ENDSTOPPULLUP_ZPROBE false /*****************************************************************************************/ /***************************************************************************************** ************************************ Endstops logic ************************************* ***************************************************************************************** * * * Mechanical endstop with COM to ground and NC to Signal * * uses "false" here (most common setup). * * * *****************************************************************************************/ #define X_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Y_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Z_MAX_ENDSTOP_LOGIC false // set to true to invert the logic of the endstop. #define Z_PROBE_ENDSTOP_LOGIC false // set to true to invert the logic of the probe.
le stesse voci le trovi in Configuration_Overall.h
nel tuo caso devi mettere a true le voci relative a ENDSTOPPULLUP_XMAX - YMAX e ZMAX in modo da attivare le resistenze di pullup interne.
secondo la descrizione X_MAX_ENDSTOP_LOGIC e relative altre voci dovrebbero andar bene lasciati a false.
Ora dovrebbero correttamente andare in "triggered" quando premuti e "not triggered" se non premuti, se dovessero andare "al contrario" metti a true le relative voci di ENDSTOP_LOGIC.
Dal punto di vista della configurazione non dovrebbero esserci altre voci.
Sarebbe utile che tu posti:
1) che scheda elettronica hai
2) come allegato una copia di Configuration_Overall.h e Configuration_Pins.h
3) che versione di MK4duo stai cercando di usare, (anche se dovrebbe vedersi da Configuration_Overall.h)
Saluti
Carlo D.
Re: Problema endstop delta autocostruita August 30, 2020 08:56AM |
Registered: 7 years ago Posts: 1,059 |
Re: Problema endstop delta autocostruita August 30, 2020 11:43AM |
Registered: 6 years ago Posts: 51 |
Quote
onekk
OK hai una RAMPS, con Arduino Mega.
Dal file postate sembra che tu non abbia usato il configuratore online, infatti Configuration_Overall.h è praticamente vuoto.
Va visto a questo punto, come vuoi procedere, le alternative, sono:
Opzione A - raccogliere le informazioni sul tuo hardware e usare il configuratore online, che ti fa scaricare una versione del firmware con il Configuration_Overall.h già settato per le scelte che fai durante la configurazione.
Da quella configurazione, poi eventuali piccoli aggiustamenti si possono fare tranquillamente "a mano", se sai come procedere.
Opzione B - configurare tutto a mano fin dal principio (complicato e probabilmente soggetto a molti errori)
Per configurare usando il configuratore online vai su www.marlinkimbra.it e scegli nella tendina del configuratore online la versione del firmware che ti interessa, se non hai i TMC come driver puoi usare anche la 4.3.8 che dovrebbe essere più meaneggevole da parte della scheda a 8 bit, ma questo è controverso, ma molti dopo aver installato la 4.4.0 tornano alla 4.3.8.
Fammi sapere come vuoi procedere.
Saluti
Carlo D.
Re: Problema endstop delta autocostruita August 30, 2020 12:00PM |
Registered: 7 years ago Posts: 1,059 |
Re: Problema endstop delta autocostruita August 30, 2020 12:10PM |
Registered: 6 years ago Posts: 51 |
Quote
onekk
si è meglio partire da una configurazione online, non conosco bene le delta, i dettagli poi si possono modificare anche a mano.
Misure e altri dettagli coinvolgono al massimo qualche valore. Molti sono addirittura modificabili usando comandi Mxcx.
Saluti
Carlo
Re: Problema endstop delta autocostruita August 31, 2020 08:45AM |
Registered: 7 years ago Posts: 1,059 |
Re: Problema endstop delta autocostruita September 02, 2020 06:31AM |
Registered: 6 years ago Posts: 51 |
Re: Problema endstop delta autocostruita September 02, 2020 09:25AM |
Registered: 7 years ago Posts: 1,059 |
Re: Problema endstop delta autocostruita September 03, 2020 08:02AM |
Registered: 6 years ago Posts: 51 |
Quote
onekk
OK era solo per chiarire alcuni problemi a cui potevi andare incontro, usando una RAMPS, io la mia l'ho fusa durante le prove per problemi di loop di massa con un portatile.
Sono passato ad una scheda all in one economica equivalente alla RAMPS.
Scusa se ti ho confuso con il mio intervento, non era mia intenzione complicarti la vita.
Se sei riuscito a far funzionare gli endstop, sono contento che per lo meno a qualcosa sono servito.
Se hai altri problemi chiedi pure, se posso aiuto volentieri, (però delle delta so poco).
Saluti
Carlo D.