Welcome! Log In Create A New Profile

Advanced

problema endstop (penso)

Posted by alberto 
problema endstop (penso)
April 20, 2014 02:37PM
Inanzitutto buona pasqua a tutti.
ho finito da poco di assemblare la mia prima stampante prusa i3, prima di effettuare qualsiasi test ho voluto che sia tutto a posto, mi sono informato leggendo un'infinità di guide e discussioni ma purtroppo ora mi trovo a un punto di stallo con la configurazione dei vari assi.
Mi spiego meglio ho configurato marlin per il mio tipo di stampante caricato su arduino e tutto ok fino a quando non provo a muovere i vari assi da repetier.
Ho letto qua nel forum che se non sono collegati i fine corsa lo spostamento degli assi funziona solo in un verso dato che il firmware cerca il fine corsa per stabilire l'home dell'asse e qui sta il problema i fine corsa sono collegati ma quando muovo gli assi oltre ad andare in una sola direzione se manualmente schiaccio il fine corsa non succede nulla il motore continua a girare.
Sempre qua nel forum ho trovato una soluzione parziale togliendo il commento #define DISABLE_MAX_ENDSTOPS nel marlin.
Soluzione parziale perchè il problema si è risolto solo in parte infatti ora l'asse X è perfettamente funzionante cliccando su home si muove verso il fine corsa fino a toccarlo per poi ritrarsi di pochi millimetri e muovendolo manualmente a una corsa esatta di 205 mm, ma l'asse Z e Y continuano ad avere questo problema.
Altra cosa se clicco home sull'asse Y (il piatto) questo va a cercare il fine corsa dalla parte opposta di dove è montato e nella direzione che se provo a farlo muovere manualmente non va.
Se clicco home asse Z i motori cominciano a vibrare senza nessun movimento e l'unico modo per fermare il tutto è togliere l'alimentazione.
invece col movimento manuale i motori dell'asse Z vanno normalmente ma solo in una direzione come detto sopra.
scusate se mi sono dilungato un pò ma ho voluto spiegare ogni anomalia sperando che qualcuno di voi esperti possa darmi qualche delucidazione al riguardo.
Di seguito metto come ho impostato marlin nella sezione degli end stop. grazie in anticipo per l'aiuto

#ifndef 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
#endif

#ifdef ENDSTOPPULLUPS
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false ; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS

// Disable max endstops for compatibility with endstop checking routine
#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
  #define DISABLE_MAX_ENDSTOPS
#endif

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders

// Disables axis when it's not being used.
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
#define DISABLE_E false // For all extruders

#define INVERT_X_DIR true    // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false    // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

#define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true  // If true, axis won't move to coordinates greater than the defined lengths below.

Edit: Quotato codice - Gordie

Edited 1 time(s). Last edit at 04/21/2014 08:23PM by Gordie.
Re: problema endstop (penso)
April 20, 2014 02:50PM
Due domande.
1° Dove hai messo l'y end stop davanti o dietro?
Se hai l'end stop di y dietro allora inverti l'asse y #define INVERT_Y_DIR true


2° che valore hai in #define DEFAULT_MAX_FEEDRATE per lo z?
Metti 2 a quel valore
#define DEFAULT_MAX_FEEDRATE {250, 250, 2, 50}


COMPRA ITALIANO - sostieni le nostre aziende - sostieni la nostra gente - sostieni il tuo popolo - sosterrai te stesso.
Alberto C. felice possessore di una Kossel K2
My Blog - My Thingiverse
Re: problema endstop (penso)
April 20, 2014 03:17PM
Grazie per la tempestiva risposta in effetti come dice MagoKimbra ho il fine corsa dietro e il valore nel firmware era errato (il bello che ci ho pensato ma ho cambiato la voce sbagliata confused smiley)
il valore #define DEFAULT_MAX_FEEDRATE era impostato a 5
domani provo e farò sapere gli sviluppi grazie ancora ciao
Re: problema endstop (penso)
April 20, 2014 03:24PM
Scusa altra domanda ,nel tuo post metti #define DEFAULT_MAX_FEEDRATE {250, 250, 2, 50} i miei valori sono 500,500,5,25 ora cambierò il 5 con il 2 come dici tu ,ma gli altri?confused smiley

Edited 1 time(s). Last edit at 04/20/2014 03:24PM by alberto.
Re: problema endstop (penso)
April 20, 2014 03:29PM
Quote
alberto
Scusa altra domanda ,nel tuo post metti #define DEFAULT_MAX_FEEDRATE {250, 250, 2, 50} i miei valori sono 500,500,5,25 ora cambierò il 5 con il 2 come dici tu ,ma gli altri?confused smiley

Se non hai problemi sugli altri assi lascia pure come ce l'hai, io ho abbassato per non avere problemi... Per ora il tuo problema è sulle z, quindi ti ho detto solo di quel valore...


COMPRA ITALIANO - sostieni le nostre aziende - sostieni la nostra gente - sostieni il tuo popolo - sosterrai te stesso.
Alberto C. felice possessore di una Kossel K2
My Blog - My Thingiverse
Re: problema endstop (penso)
April 20, 2014 03:52PM
ok grazie
Re: problema endstop (penso)
April 22, 2014 12:17PM
eccomi di nuovo ieri ho fatto delle prove con le impostazioni indicate nel post sipra e ora sembra andare tutto bene per quanto riguarda i problemi riscontrati sopra.
ora ho altri due quesiti da sottoporre: Facendo andare su e giu l'asse Z noto che uno dei motori ogni tanto perde passi (credo si dica cosi) infatti misurando l'altezza ai lati dopo uno scorrimento risulta falsata di 1 millimetro.
per ovviare a questo problema come posso fare? Ho pensato di alzare il vref che per rigor di logica dovrebbe essere il doppio rispetto agli altri dato che il driver deve pilotare due motori. O dico una stupidaggine?
Altra cosa come software di gestione uso repetier, nella schermata controllo manuale le frecce per spostare l'asse Y sono invertite ovvero se clicco avanti va indietro e viceversa questa cosa andrà ad influire sulla stampa? c'è qualche impostazione da cambiare nel software? grazie di nuovo.
Re: problema endstop (penso)
April 24, 2014 02:55PM
ok farò prove
Re: problema endstop (penso)
April 24, 2014 03:12PM
Alberto le frecce di cui parli non sono avanti e indietro, bensì aumenta la y o diminuisce la y, avendo il carrello dietro quando y=0 aumentando (freccia in alto) viene avanti, diminuendo (freccia in basso) arretra...
Per quanto riguarda la perdita dei passi su z, non è esatto raddoppiare la v-ref, ma aumentarla un pochino si. Cmq nel firmware abbassa il feedrate di z, e fai delle prove. Se continua dovresti verificare che sono apposto le geometrie e che non sforzi troppo su quel motore far girare la barra filettata per tirare su il carrello X...


COMPRA ITALIANO - sostieni le nostre aziende - sostieni la nostra gente - sostieni il tuo popolo - sosterrai te stesso.
Alberto C. felice possessore di una Kossel K2
My Blog - My Thingiverse
Re: problema endstop (penso)
May 07, 2014 06:47PM
Mi accodo a questo topic perchè anche io adesso sono nella condizione di Alberto quando diceva:
"Ho letto qua nel forum che se non sono collegati i fine corsa lo spostamento degli assi funziona solo in un verso dato che il firmware cerca il fine corsa per stabilire l'home dell'asse e qui sta il problema i fine corsa sono collegati ma quando muovo gli assi oltre ad andare in una sola direzione se manualmente schiaccio il fine corsa non succede nulla il motore continua a girare."
Aggiungo che a me un pochino gli assi ritornano indietro di tanto quanto li avevo spostati in avanti, poi indietro non mi si spostano più e vedo un messaggio, su Pronterface, tipo "echo:endstops hit: X:29.99" (in questo esempio ero andato avanti di 10 per 3 volte e poi indietro di 10 per 3 volte).
Ho provato il comando M119 per testare gli end stop e senza azionarne alcuno leggo:
Reporting endstop status
x_min: TRIGGERED
y_min: TRIGGERED
z_min: TRIGGERED

mentre se ad esempio premo l'end stop X leggo:
Reporting endstop status
x_min: open
y_min: TRIGGERED
z_min: TRIGGERED

Mi pare quindi che gli end stop funzionino (#define DISABLE_MAX_ENDSTOPS abilitato).
Tutto questo accade per i 3 assi.
Guardando la stampante di fronte (motore Y vicino a me) gli end stop li ho posizionati così:
end stop X a sinistra
end stop Y prossimo al motore Y
end stop Z in basso appena sopra un motore Z

Ho provato a fare quello che ha fatto Alberto ma non ho risolto nulla.
Ho spulciato il forum per farmi un'idea di come debbano essere fatti i settaggi del FW ma vi confesso che sono confuso; trovare il settaggio giusto per tentativi non mi piace anche perchè vorrei capire le cose.

Potete aiutarmi?
Grazie


m4kr0bl3nd
Prusa i3: Arduino Mega 2560, RAMPS 1.4, NEMA 17, Pololu A4988, piatto MK2A; J-head Mk V 0.35.
PLA 3mm
Attachments:
open | download - Configuration.h (30.3 KB)
Re: problema endstop (penso)
May 08, 2014 01:50AM
Quando con il comando m119 dice:
Quote
x_min: TRIGGERED
y_min: TRIGGERED
z_min: TRIGGERED


significa che sta rilevando che l'endstop è attivo (premuto). Se i collegamenti sono fatti bene quindi su normalmente chiuso (NC) il problema è sicuramente nel firmware.
infatti:
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

Qui devi mettere tutti e tre a false.
Il triggered lo deve dare solo quando l'endstop è premuto.

Edited 1 time(s). Last edit at 05/08/2014 01:51AM by MagoKimbra.


COMPRA ITALIANO - sostieni le nostre aziende - sostieni la nostra gente - sostieni il tuo popolo - sosterrai te stesso.
Alberto C. felice possessore di una Kossel K2
My Blog - My Thingiverse
Re: problema endstop (penso)
May 08, 2014 02:50AM
Grazie MagoKimbra,
stasera provo il tuo suggerimento.


m4kr0bl3nd
Prusa i3: Arduino Mega 2560, RAMPS 1.4, NEMA 17, Pololu A4988, piatto MK2A; J-head Mk V 0.35.
PLA 3mm
Re: problema endstop (penso)
May 08, 2014 04:23PM
Perfetto, funziona tutto a dovere.
Adesso aspetto l'hotend.

Grazie a tutti


m4kr0bl3nd
Prusa i3: Arduino Mega 2560, RAMPS 1.4, NEMA 17, Pololu A4988, piatto MK2A; J-head Mk V 0.35.
PLA 3mm
Sorry, only registered users may post in this forum.

Click here to login