Welcome! Log In Create A New Profile

Advanced

Cr-10 Marlinkimbra autotune fallito.

Posted by Ohmmasters 
Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 06:31AM
Ciao ragazzi io ho una cr10 che ho montato una gt2560 a+ con caricato il firmware marlin e un doppio estrusore.
La stampante va apparte il secondo estrusore che quando stampa si inceppa di continuo, il problema secondo me è che sul mio firmware non sono riuscito a fare la taratura degli step per mm del secondo motore .

Adesso vi spiego dopo questa info cosa centra Marlinkimbra.Lol

Ho provato a configurare Marlinkimbra come ho configurato Marlin caricato e tutto è mi chiede di eseguire un autotune.
Lo faccio su entrambi gli estrusori tutto ok sul piatto fallisce per via del timeout.
Su Marlin normale non ho di questi problemi.
Chi mi sa aiutare?
Sbaglio qualche configurazione?
Ho se mi sapete dire come faccio a calibrare i step/mm del motore del secondo estrusore Su Marlin?

Grazie mille a tutti in anticipo
Re: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 08:11AM
Allora in timeouts ci va perché non riesce a farli oscilla troppo... Il mio consiglio è che i pid per il bed non servono a nulla e appesantiscono il già carico processore a 8 bit..
Il bed va benissimo on off...
In marlin devi attivare un #define se vuoi che gli step per mm siano diversi da estrusore a estrusore, non mi ricordo quale altrimenti usa sempre quello del primo...


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: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 02:52PM
Quote
MagoKimbra
Allora in timeouts ci va perché non riesce a farli oscilla troppo... Il mio consiglio è che i pid per il bed non servono a nulla e appesantiscono il già carico processore a 8 bit..
Il bed va benissimo on off...
In marlin devi attivare un #define se vuoi che gli step per mm siano diversi da estrusore a estrusore, non mi ricordo quale altrimenti usa sempre quello del primo...

Solo che se non lo faccio e avvio la stampa mi dice riscaldamento fallito parlo di MK

Se mi riesci ad aiutare vorrei mettere quello mi piace di più.
Marlin adesso controllo.
Grazie Mille della tua risposta.
Re: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 03:39PM
Te l'ho detto disattiva i pid per il bed molto meglio...


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: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 03:59PM
Si ma se lo disattivo mi da il problema di riscaldamento fallito con Mk se avvio una stampa.
È quello che non riesco a capire il perché.
Re: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 04:09PM
Sicuro di aver disattivato i pid del BED??


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: Cr-10 Marlinkimbra autotune fallito.
May 16, 2018 04:29PM
Si adesso riprovo appena rientro a casa e ti dico.
Grazie mille intanto.
Re: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 05:59AM
Quote
MagoKimbra
Sicuro di aver disattivato i pid del BED??
Ho appena montato il FW MK ma niente se vado ad avviare la stampa mi da riscaldamento piatto fallito anche omettendo nel configuratore pidbed
se vado a preriscaldare il piatto prima della stampa invece ci riesce.
sono disperato. LOL
Re: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 06:03AM
arriva a 45 gradi e poi si ferma dandomi il messaggio "riscal. fallito"
Re: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 06:04AM
Ma non è che non ce la fa l'alimentatore.. Una cosa è da solo una cosa è quando tutto è acceso...


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: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 06:08AM
tengo acceso solo il piatto e con marlin attivo tutti gli estrusori e piatto in contemporanea e va tranquillamente
adesso neanche preriscaldando il piatto riesce ad arrivare a temperatura.
non so se è un problema tra smplify3d e FW.
Re: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 06:48AM
Quote
Ohmmasters
tengo acceso solo il piatto e con marlin attivo tutti gli estrusori e piatto in contemporanea e va tranquillamente
adesso neanche preriscaldando il piatto riesce ad arrivare a temperatura.
non so se è un problema tra smplify3d e FW.

Ma guarda che la cosa è semplice c'è un comando che è M140 che fa accendere il bed e questo lo fa sia con marlin che con MK non cambia nulla... E non è un problema di Simplify o firmware...
Se non ce la fa ad arrivare a temperatura vuol dire che non ce la fa... Controlla che che nello start gcode ci sia M190 in modo che aspetti che arriva alla temperatura settata prima di partire...
Oltre a questo se usi i PID aumenta il PID_DRIVE_MAX del bed lo fai con il comando gcode M306

* M306 - Set Heaters parameters: H[heaters] H = 0-3 Hotend, H = -1 BED, H = -2 CHAMBER, H = -3 COOLER,
 *          A[int] Pid Drive Min, B[int] Pid Drive Max, C[int] Pid Max,
 *          L[int] Min temperature, O[int] Max temperature, U[bool] Use Pid/bang bang, I[bool] Hardware Inverted, P[int] Pin


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: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 07:32AM
Quote
MagoKimbra
Quote
Ohmmasters
tengo acceso solo il piatto e con marlin attivo tutti gli estrusori e piatto in contemporanea e va tranquillamente
adesso neanche preriscaldando il piatto riesce ad arrivare a temperatura.
non so se è un problema tra smplify3d e FW.

Ma guarda che la cosa è semplice c'è un comando che è M140 che fa accendere il bed e questo lo fa sia con marlin che con MK non cambia nulla... E non è un problema di Simplify o firmware...
Se non ce la fa ad arrivare a temperatura vuol dire che non ce la fa... Controlla che che nello start gcode ci sia M190 in modo che aspetti che arriva alla temperatura settata prima di partire...
Oltre a questo se usi i PID aumenta il PID_DRIVE_MAX del bed lo fai con il comando gcode M306

* M306 - Set Heaters parameters: H[heaters] H = 0-3 Hotend, H = -1 BED, H = -2 CHAMBER, H = -3 COOLER,
 *          A[int] Pid Drive Min, B[int] Pid Drive Max, C[int] Pid Max,
 *          L[int] Min temperature, O[int] Max temperature, U[bool] Use Pid/bang bang, I[bool] Hardware Inverted, P[int] Pin

Adesso vedo, ho notato che mi da questa serie di scritte rosse mentre compila e poi lo carica non so se il problema dipenda da questo: "è solo una parte"
In file included from sketch\src/inc/pins.h:28:0,
                 from sketch\MK4duo.h:111,
                 from C:\Users\Nicola\Desktop\MK4duo\MK4duo.ino:302:
sketch\src/inc/../boards/75.h:186:0: warning: "SD_DETECT_PIN" redefined
     #define SD_DETECT_PIN     38
 ^
sketch\src/inc/../boards/75.h:150:0: note: this is the location of the previous definition
 #define SD_DETECT_PIN              NoPin
 ^
In file included from sketch\MK4duo.h:112:0,
                 from C:\Users\Nicola\Desktop\MK4duo\MK4duo.ino:302:
sketch\src/inc/conditionals_post.h:763:0: warning: "X_IS_TRINAMIC" redefined
 #define  X_IS_TRINAMIC  (ENABLED( X_IS_TMC2130) || ENABLED( X_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:528:0: note: this is the location of the previous definition
 #define  X_IS_TRINAMIC      (ENABLED( X_IS_TMC2130) || (ENABLED( X_IS_TMC2208) && PIN_EXISTS( X_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:764:0: warning: "X2_IS_TRINAMIC" redefined
 #define X2_IS_TRINAMIC  (ENABLED(X2_IS_TMC2130) || ENABLED(X2_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:529:0: note: this is the location of the previous definition
 #define X2_IS_TRINAMIC      (ENABLED(X2_IS_TMC2130) || (ENABLED(X2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:765:0: warning: "Y_IS_TRINAMIC" redefined
 #define  Y_IS_TRINAMIC  (ENABLED( Y_IS_TMC2130) || ENABLED( Y_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:530:0: note: this is the location of the previous definition
 #define  Y_IS_TRINAMIC      (ENABLED( Y_IS_TMC2130) || (ENABLED( Y_IS_TMC2208) && PIN_EXISTS( Y_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:766:0: warning: "Y2_IS_TRINAMIC" redefined
 #define Y2_IS_TRINAMIC  (ENABLED(Y2_IS_TMC2130) || ENABLED(Y2_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:531:0: note: this is the location of the previous definition
 #define Y2_IS_TRINAMIC      (ENABLED(Y2_IS_TMC2130) || (ENABLED(Y2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:767:0: warning: "Z_IS_TRINAMIC" redefined
 #define  Z_IS_TRINAMIC  (ENABLED( Z_IS_TMC2130) || ENABLED( Z_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:532:0: note: this is the location of the previous definition
 #define  Z_IS_TRINAMIC      (ENABLED( Z_IS_TMC2130) || (ENABLED( Z_IS_TMC2208) && PIN_EXISTS( Z_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:768:0: warning: "Z2_IS_TRINAMIC" redefined
 #define Z2_IS_TRINAMIC  (ENABLED(Z2_IS_TMC2130) || ENABLED(Z2_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:533:0: note: this is the location of the previous definition
 #define Z2_IS_TRINAMIC      (ENABLED(Z2_IS_TMC2130) || (ENABLED(Z2_IS_TMC2208) && PIN_EXISTS(Z2_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:769:0: warning: "E0_IS_TRINAMIC" redefined
 #define E0_IS_TRINAMIC  (ENABLED(E0_IS_TMC2130) || ENABLED(E0_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:534:0: note: this is the location of the previous definition
 #define E0_IS_TRINAMIC      (ENABLED(E0_IS_TMC2130) || (ENABLED(E0_IS_TMC2208) && PIN_EXISTS(E0_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src/inc/conditionals_post.h:770:0: warning: "E1_IS_TRINAMIC" redefined
 #define E1_IS_TRINAMIC  (ENABLED(E1_IS_TMC2130) || ENABLED(E1_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:535:0: note: this is the location of the previous definition
 #define E1_IS_TRINAMIC      (ENABLED(E1_IS_TMC2130) || (ENABLED(E1_IS_TMC2208) && PIN_EXISTS(E1_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:771:0: warning: "E2_IS_TRINAMIC" redefined
 #define E2_IS_TRINAMIC  (ENABLED(E2_IS_TMC2130) || ENABLED(E2_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:536:0: note: this is the location of the previous definition
 #define E2_IS_TRINAMIC      (ENABLED(E2_IS_TMC2130) || (ENABLED(E2_IS_TMC2208) && PIN_EXISTS(E2_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:772:0: warning: "E3_IS_TRINAMIC" redefined
 #define E3_IS_TRINAMIC  (ENABLED(E3_IS_TMC2130) || ENABLED(E3_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:537:0: note: this is the location of the previous definition
 #define E3_IS_TRINAMIC      (ENABLED(E3_IS_TMC2130) || (ENABLED(E3_IS_TMC2208) && PIN_EXISTS(E3_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:773:0: warning: "E4_IS_TRINAMIC" redefined
 #define E4_IS_TRINAMIC  (ENABLED(E4_IS_TMC2130) || ENABLED(E4_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:538:0: note: this is the location of the previous definition
 #define E4_IS_TRINAMIC      (ENABLED(E4_IS_TMC2130) || (ENABLED(E4_IS_TMC2208) && PIN_EXISTS(E4_SERIAL_RX)))
 ^
sketch\src/inc/conditionals_post.h:774:0: warning: "E5_IS_TRINAMIC" redefined
 #define E5_IS_TRINAMIC  (ENABLED(E5_IS_TMC2130) || ENABLED(E5_IS_TMC2208))
 ^
sketch\src/inc/conditionals_post.h:539:0: note: this is the location of the previous definition
 #define E5_IS_TRINAMIC      (ENABLED(E5_IS_TMC2130) || (ENABLED(E5_IS_TMC2208) && PIN_EXISTS(E5_SERIAL_RX)))
 ^
In file included from sketch\src\HAL\../../src/inc/pins.h:28:0,
                 from sketch\src\HAL\../../MK4duo.h:111,
                 from sketch\src\HAL\I2cEeprom.cpp:28:
sketch\src\HAL\../../src/inc/../boards/75.h:186:0: warning: "SD_DETECT_PIN" redefined
     #define SD_DETECT_PIN     38
 ^
sketch\src\HAL\../../src/inc/../boards/75.h:150:0: note: this is the location of the previous definition
 #define SD_DETECT_PIN              NoPin
 ^
In file included from sketch\src\HAL\../../MK4duo.h:112:0,
                 from sketch\src\HAL\I2cEeprom.cpp:28:
sketch\src\HAL\../../src/inc/conditionals_post.h:763:0: warning: "X_IS_TRINAMIC" redefined
 #define  X_IS_TRINAMIC  (ENABLED( X_IS_TMC2130) || ENABLED( X_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:528:0: note: this is the location of the previous definition
 #define  X_IS_TRINAMIC      (ENABLED( X_IS_TMC2130) || (ENABLED( X_IS_TMC2208) && PIN_EXISTS( X_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:764:0: warning: "X2_IS_TRINAMIC" redefined
 #define X2_IS_TRINAMIC  (ENABLED(X2_IS_TMC2130) || ENABLED(X2_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:529:0: note: this is the location of the previous definition
 #define X2_IS_TRINAMIC      (ENABLED(X2_IS_TMC2130) || (ENABLED(X2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:765:0: warning: "Y_IS_TRINAMIC" redefined
 #define  Y_IS_TRINAMIC  (ENABLED( Y_IS_TMC2130) || ENABLED( Y_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:530:0: note: this is the location of the previous definition
 #define  Y_IS_TRINAMIC      (ENABLED( Y_IS_TMC2130) || (ENABLED( Y_IS_TMC2208) && PIN_EXISTS( Y_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:766:0: warning: "Y2_IS_TRINAMIC" redefined
 #define Y2_IS_TRINAMIC  (ENABLED(Y2_IS_TMC2130) || ENABLED(Y2_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:531:0: note: this is the location of the previous definition
 #define Y2_IS_TRINAMIC      (ENABLED(Y2_IS_TMC2130) || (ENABLED(Y2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:767:0: warning: "Z_IS_TRINAMIC" redefined
 #define  Z_IS_TRINAMIC  (ENABLED( Z_IS_TMC2130) || ENABLED( Z_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:532:0: note: this is the location of the previous definition
 #define  Z_IS_TRINAMIC      (ENABLED( Z_IS_TMC2130) || (ENABLED( Z_IS_TMC2208) && PIN_EXISTS( Z_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:768:0: warning: "Z2_IS_TRINAMIC" redefined
 #define Z2_IS_TRINAMIC  (ENABLED(Z2_IS_TMC2130) || ENABLED(Z2_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:533:0: note: this is the location of the previous definition
 #define Z2_IS_TRINAMIC      (ENABLED(Z2_IS_TMC2130) || (ENABLED(Z2_IS_TMC2208) && PIN_EXISTS(Z2_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:769:0: warning: "E0_IS_TRINAMIC" redefined
 #define E0_IS_TRINAMIC  (ENABLED(E0_IS_TMC2130) || ENABLED(E0_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:534:0: note: this is the location of the previous definition
 #define E0_IS_TRINAMIC      (ENABLED(E0_IS_TMC2130) || (ENABLED(E0_IS_TMC2208) && PIN_EXISTS(E0_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:770:0: warning: "E1_IS_TRINAMIC" redefined
 #define E1_IS_TRINAMIC  (ENABLED(E1_IS_TMC2130) || ENABLED(E1_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:535:0: note: this is the location of the previous definition
 #define E1_IS_TRINAMIC      (ENABLED(E1_IS_TMC2130) || (ENABLED(E1_IS_TMC2208) && PIN_EXISTS(E1_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:771:0: warning: "E2_IS_TRINAMIC" redefined
 #define E2_IS_TRINAMIC  (ENABLED(E2_IS_TMC2130) || ENABLED(E2_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:536:0: note: this is the location of the previous definition
 #define E2_IS_TRINAMIC      (ENABLED(E2_IS_TMC2130) || (ENABLED(E2_IS_TMC2208) && PIN_EXISTS(E2_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:772:0: warning: "E3_IS_TRINAMIC" redefined
 #define E3_IS_TRINAMIC  (ENABLED(E3_IS_TMC2130) || ENABLED(E3_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:537:0: note: this is the location of the previous definition
 #define E3_IS_TRINAMIC      (ENABLED(E3_IS_TMC2130) || (ENABLED(E3_IS_TMC2208) && PIN_EXISTS(E3_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:773:0: warning: "E4_IS_TRINAMIC" redefined
 #define E4_IS_TRINAMIC  (ENABLED(E4_IS_TMC2130) || ENABLED(E4_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:538:0: note: this is the location of the previous definition
 #define E4_IS_TRINAMIC      (ENABLED(E4_IS_TMC2130) || (ENABLED(E4_IS_TMC2208) && PIN_EXISTS(E4_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:774:0: warning: "E5_IS_TRINAMIC" redefined
 #define E5_IS_TRINAMIC  (ENABLED(E5_IS_TMC2130) || ENABLED(E5_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:539:0: note: this is the location of the previous definition
 #define E5_IS_TRINAMIC      (ENABLED(E5_IS_TMC2130) || (ENABLED(E5_IS_TMC2208) && PIN_EXISTS(E5_SERIAL_RX)))
 ^
In file included from sketch\src\HAL\../../src/inc/pins.h:28:0,
                 from sketch\src\HAL\../../MK4duo.h:111,
                 from sketch\src\HAL\SpiEeprom.cpp:28:0
sketch\src\HAL\../../src/inc/../boards/75.h:186:0: warning: "SD_DETECT_PIN" redefined
     #define SD_DETECT_PIN     38
 ^
sketch\src\HAL\../../src/inc/../boards/75.h:150:0: note: this is the location of the previous definition
 #define SD_DETECT_PIN              NoPin
 ^
In file included from sketch\src\HAL\../../MK4duo.h:112:0,
                 from sketch\src\HAL\SpiEeprom.cpp:28:
sketch\src\HAL\../../src/inc/conditionals_post.h:763:0: warning: "X_IS_TRINAMIC" redefined
 #define  X_IS_TRINAMIC  (ENABLED( X_IS_TMC2130) || ENABLED( X_IS_TMC2208) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:528:0: note: this is the location of the previous definition
 #define  X_IS_TRINAMIC      (ENABLED( X_IS_TMC2130) || (ENABLED( X_IS_TMC2208) && PIN_EXISTS( X_SERIAL_RX)) || ENABLED(IS_TRAMS))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:764:0: warning: "X2_IS_TRINAMIC" redefined
 #define X2_IS_TRINAMIC  (ENABLED(X2_IS_TMC2130) || ENABLED(X2_IS_TMC2208))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:529:0: note: this is the location of the previous definition
 #define X2_IS_TRINAMIC      (ENABLED(X2_IS_TMC2130) || (ENABLED(X2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))
 ^
sketch\src\HAL\../../src/inc/conditionals_post.h:765:0: warning: "Y_IS_TRINAMIC" redefined

 #define  Y_IS_TRINAMIC  (ENABLED( Y_IS_TMC2130) || ENABLED( Y_IS_TMC2208) || ENABLED(IS_TRAMS))

 ^

sketch\src\HAL\../../src/inc/conditionals_post.h:530:0: note: this is the location of the previous definition

 #define  Y_IS_TRINAMIC      (ENABLED( Y_IS_TMC2130) || (ENABLED( Y_IS_TMC2208) && PIN_EXISTS( Y_SERIAL_RX)) || ENABLED(IS_TRAMS))

 ^

sketch\src\HAL\../../src/inc/conditionals_post.h:766:0: warning: "Y2_IS_TRINAMIC" redefined

 #define Y2_IS_TRINAMIC  (ENABLED(Y2_IS_TMC2130) || ENABLED(Y2_IS_TMC2208))

 ^

sketch\src\HAL\../../src/inc/conditionals_post.h:531:0: note: this is the location of the previous definition

 #define Y2_IS_TRINAMIC      (ENABLED(Y2_IS_TMC2130) || (ENABLED(Y2_IS_TMC2208) && PIN_EXISTS(X2_SERIAL_RX)))

 ^

sketch\src\HAL\../../src/inc/conditionals_post.h:767:0: warning: "Z_IS_TRINAMIC" redefined

 #define  Z_IS_TRINAMIC  (ENABLED( Z_IS_TMC2130) || ENABLED( Z_IS_TMC2208) || ENABLED(IS_TRAMS))

 ^

sketch\src\HAL\../../src/inc/conditionals_post.h:532:0: note: this is the location of the previous definition

 #define  Z_IS_TRINAMIC      (ENABLED( Z_IS_TMC2130) || (ENABLED( Z_IS_TMC2208) && PIN_EXISTS( Z_SERIAL_RX)) || ENABLED(IS_TRAMS))




Re: Cr-10 Marlinkimbra autotune fallito.
May 18, 2018 08:19AM
No sono warning e devi disattivarli da arduino IDE


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: Cr-10 Marlinkimbra autotune fallito.
May 20, 2018 07:44PM
Quote
MagoKimbra
... Il mio consiglio è che i pid per il bed non servono a nulla e appesantiscono il già carico processore a 8 bit..
Il bed va benissimo on off...

Mago, io il PID per il bed ce l'ho attivo per un semplice motivo: ho controllato con un comparatore al centro del piatto quando lo alimentavo tramite relè e ho notato oscillazioni tra on e off (circa 3 sec) di 5 centesimi, decisamente troppo per layer da 0.1mm che significa 1/2 layer!
Ho un vetro borosilicato da 3mm abbondanti (non ricordo se 3.2 o 3.4mm) con sotto il pcb anycubic a 24V
Il pid dà frequenti piccoli impulsi che mantengono la temperatura senza causare dilatazioni non volute.
Ci hai mai fatto caso?
Qual è il modo migliore per poter comandare il FET con brevissimi e regolari impulsi e disattivare quindi il pid?


Ciao,
Fabio

---
Cartesiana multifunzione:
MK4duo 4.4.0 - Alimentazione 24v - Mega2560 - DRV8825 - Ramps1.4
Display touch 4,3" FT800 su AT1284p e Seriale2
Viti e guide a ricircolo di sfere
Tavola 340x240 - cinghie T2.5 da 10mm rinforzate con core in acciaio per X e Y - Kress 800 FME
Trascinamento a cinghia del filamento 1,75mm sopra l'HotEnd - ugello 0,35mm E3D
Re: Cr-10 Marlinkimbra autotune fallito.
May 21, 2018 02:26AM
Modificando questi due valori:

#define BED_HYSTERESIS        2 // Only disable heating if T maggiore di target+BED_HYSTERESIS and enable heating if T minore di target-BED_HYSTERESIS
#define BED_CHECK_INTERVAL 5000 // ms between checks in bang-bang control

Il bang-bang è appunto l'on-off

Edited 1 time(s). Last edit at 05/21/2018 02:28AM 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: Cr-10 Marlinkimbra autotune fallito.
May 21, 2018 09:34AM
Ok, ma in questo modo c'è una scarsa reattività del sistema, nel senso che il piatto riscaldante sta acceso troppi secondi per far salire anche di un solo grado il piano in vetro e questo comporta la problematica descritta poco sopra, ieri sera. La resistenza si surriscalda e poi si raffredda comportando un significativo spostamento in Z del centro del piatto.
E' per caso possibile inserire il decimale nel valore dell'isteresi? Impostando 0.5 (1/2 grado) potrebbe forse risolvere il problema accorciando i tempi, ma ho la sensazione che non si possa fare.

Sarebbe utile se lo stato di ON per il mantenimento della temperatura fosse in realtà un PWM con duty cycle chessò, del 50% con una frequenza di 1 o più Hz.
Ma sono l'unico ad aver fatto caso a questa cosa?
Grazie e chiedo scusa per questa intromissione.


Ciao,
Fabio

---
Cartesiana multifunzione:
MK4duo 4.4.0 - Alimentazione 24v - Mega2560 - DRV8825 - Ramps1.4
Display touch 4,3" FT800 su AT1284p e Seriale2
Viti e guide a ricircolo di sfere
Tavola 340x240 - cinghie T2.5 da 10mm rinforzate con core in acciaio per X e Y - Kress 800 FME
Trascinamento a cinghia del filamento 1,75mm sopra l'HotEnd - ugello 0,35mm E3D
Re: Cr-10 Marlinkimbra autotune fallito.
May 21, 2018 11:32AM
Si se metti il PID_MAX a 127 dai una potenza del 50% quando è in on, ma non so se ce la fa ad arrivare a temperatura cosi..
Prova cambiandolo da host con il comando M306 H-1 C127
Puoi mettere anche i decimali quindi puoi fare 0.5...

Edited 1 time(s). Last edit at 05/21/2018 11:33AM 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: Cr-10 Marlinkimbra autotune fallito.
May 21, 2018 12:09PM
Piccolo aggiornamento.
Ho provato a mettere la versio e 4.3.5 e se metto il piatto in preriscaldamento dal meno prepara o da simplify3d o Avio una stampa a piatto freddo mi fallisce e sono con il pid del piatto disattivato.
Se vado su controllo temperatura e metto io la temperatura va tranquillamente.

Off.topic

Ho messo un singolo estrusore con il flusso canalizzatore a 2 vie.
E messo lo script per il cambio del filo ma non riesco a capire appena avvia la stampa con il filo che deve stampre inizialmente ma fa la procedura di cambio utensile anche se non serve ma non lo ricarica a pieno.
sistemo io il tutto manualmente e poi da lì non ha problemi può cambiare filo oggni layer senza problemi.
Come mai?

Lo script è
G90
G1 X 10 Y 10 F4800; Move X Y for tool change
T[old_tool]; Select Old Tool
G92 E0; Zero Extruder
G91; Relative Coordinates
G1 E-15 F3600; Fast Retract 15mm
G4 P600
G1 E13 F3600; Fast Reinsert 13mm
G1 E-13 F3600; Fast Retract 13mm
G4 P1000; Pause 1secs
G1 E-100 F3600; Fast long retract
G90; Absolute Coordinates
G92 E0; Zero Extruder
T[new_tool]; Select New tool
G92 E0; Zero Extruder
G91; Relative Coordinates
G1 E110 F3600; Fast insert 110mm
G1 E5 F300; 5mm/s Feed 5mm
G92 E0; Zero Extruder
G90; Absolute Coordinates
Re: Cr-10 Marlinkimbra autotune fallito.
June 12, 2018 09:54AM
Quote
MagoKimbra
No sono warning e devi disattivarli da arduino IDE
Dopo da tanto tempo sono riuscito a rimettere mano alla stampante.
Oggi o cambiato alimentatore mettendo un doppio alimentatore da 400w luno uno per il piatto è uno per il resto ma da lo stesso problema.
Cosa può essere
Re: Cr-10 Marlinkimbra autotune fallito.
June 21, 2018 05:59PM
ciao,
hai più risolto il problema del timeout?
anche io con il bed ho un problema simile. nel mio caso raggiunge la temperatura, fa un paio di cicli e poi, quando il led inizia a lampeggiare a frequenza elevata è come se non desse più potenza sufficiente a tornare in temperatura, così non riesce a concludere i cicli successivi.
Re: Cr-10 Marlinkimbra autotune fallito.
June 22, 2018 02:18AM
No non ho ancora risolto.
Speriamo che qualcuno risca a risolvercelo questo problema.
Re: Cr-10 Marlinkimbra autotune fallito.
June 22, 2018 09:14AM
Prima di cambiare l'impossibile, magari una verifica dei cablaggi e delle tensioni nelle varie parti del sistema può essere rivelatore di qualche problema.

A parte i settaggi firmware che possono avere la loro importanza, un filo allentato o altro rischiano di vanificare qualsiasi tentativo di risoluzione del problema.

Misurare la tensione a piano riscaldato acceso nei punti chiave:

all'uscita dellì'alimentatore (tester + e - sui morsetti dell'alimentazione)
all'ingresso della scheda di comando o del mosfet esterno se ne avete uno (sempre con due puntali + e - sulla morsettiera del componente in causa)
all'uscita della scheda di comando
sui terminali del piano riscaldato.

Se avete una caduta di tensione anomala tra un ingresso o un uscita quello è il componente in questione.

Pilotare il BED con un PID non sembra una buona opzione perché essendo una resistenza estesa e "progettatata" per essere alimentata in permanenza, il progetto originale prevedeva di alimentarlo in permanenza in modo che il piano raggiunga circa i 110° (o almeno così si legge in giro per il progetto originale di Prusa da cui tutti i cinesi poi hanno copiato le specifiche MK2A e MK3 in pratica sono lo stesso piatto)

Quindi pilotarlo in PWM (PID) non serve ad un tubo, al limite se alimentate il piano diciamo a 18V con piano predisposto per 12V avrebbe un senso perché la resistenza lavora in "surriscaldamento" e quindi un controllo in PID che in soldoni è come se accendeste e spegneste un interruttore velocemente avrebbe il risultato trattandosi di un carico puramente resistivo di ottenre una tensione "media" diciamo di 14,4 V all'inizio e poi di avvicinarsi alla tensione di lavoro a 12V quando il piano è in temperatura.

Non sempre le opzioni hanno una utilità reale con tutti gli hardware, il PID serve per piani riscaldati particolari o usati nel senso che ho descritto prima.

Nemmeno alimentarlo a 24V fa miracoli perché in pratica questo serve solo per "dimezzare" la corrente che scorre nei cavi e non per velocizzare il riscaldamento, i piani riscaldati a doppia tensione sono realizzati in due sezioni che vengono collegate in modo diverso se alimentate a 12V o a 24V a 12V tutte e due le metà sono collegate al 12V mentre a 24V si alimentano alle due estremità e i due punti centrali sono collegati insieme.

Saluti

Carlo D.


P3Steel - MKS GEN v1.2 e REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + Gen 7 MOSFET (HotBed) + alimentatore step-down 12V -> 5V
Firmware MK4duo 4.3.6 con ABL induttivo con LJ18A3 - Slic3R (Originale) ed ESP3D per controllare la stampante da remoto.
HotEnd Cinese V6 clone con ugello da 0.4mm.

[My Building Log]
Re: Cr-10 Marlinkimbra autotune fallito.
June 22, 2018 04:43PM
mi sono imbattuto nel pid bed cercando di risolvere alcune imperfezioni delle mie stampe. ciò che mi ha convinto a provarlo sono state le diverse esperienze trovate in rete, tra cui quella descritta qui https://www.akeric.com/blog/?p=4276

relativamente ai cablaggi non ho fatto verifiche, ma ad occhio tenderei ad escludere problemi, dato che il piatto funziona correttamente ed arriva tranquillamente in temperatura, oggi come quando avevo il bang bang.

il mio problema è concettualmente semplice ma non ho bene idea di come risoverlo (lato configurazione): il piatto arriva in temperatura ed inizia i cicli di tuning, quando poi inizia a dare gli impulsi questi non sono in grado di far tornare in temperatura.
è un problema di intensità e durata di questi impulsi. le perdite di temperatura sono superiori a quanto si guadagna con gli impulsi, quindi paradossalmente il piatto tende a raffreddarsi.
al prossimo esperimento posto grafico e log di repetier.

ho alzato a 220 il drive min, ancora da testare. ma questo regola la corrente degli impulsi non la durata. temo non sia sufficiente.
#define BED_PID_MAX       255   // Limits current to bed while in PID mode;       255 = full current
#define BED_PID_DRIVE_MIN  220   // Limits min current to bed while PID is active;   0 = no current
#define BED_PID_DRIVE_MAX 255   // Limits max current to bed while PID is active; 255 = full current

sapete se per agire sulla durata c'è modo?
Re: Cr-10 Marlinkimbra autotune fallito.
June 22, 2018 06:02PM
Durante la fase dei pid il pin viene pilotato on off quindi massima potenza BED_PID_DRIVE_MAX minima potenza. Il firmware manda a palla 255 e poi appena arriva alla temperatura settata spegne, come riscende riaccende. nel frattempo controlla il tempo che impiega a passare da una fase all'altra. Quindi non c'è nessuna frequenza, solo on off.. Io continuo a dire che è un grandissimo errore mettere i pid per il bed, non serve a nulla. Però se proprio insisti allora devi capire il motivo per cui una volta spento non riesce più ad arrivare in temperatura il bed.


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: Cr-10 Marlinkimbra autotune fallito.
June 23, 2018 04:28AM
Lascia perdere le esperienze in rete, chi ha progettato il piano non lo ha progettato per il PID, tutti i piani in giro tranne pochissimi "speciali" sono copiati dal piano che Josef Prusa ha progettato per la Mendel qualche anno fa, si basano su una pista di circuito stampato che essendo lunga si comporta come una resistenza e scalda il piano.

Questa pista se lasciata collegata al 12V scalda il piano a 110°C circa, quindi fai tu se il piano è progettato per essere collegato sempre al 12V e raggiungere 110°C, mi spieghi cosa ottieni a pilotarlo con un comando in frequenza proporzionale, PWM o PID che dir si voglia.

un comando in PWM o in PID (che poi è un sistema raffinato per stabilire i parametri corretti del PWM per ottenere un certo valore) servono solo se l'utilizzatore collegato è più potente del risultato che si vuole ottenere, ad esempio ho una lampadina da 1000W e volgio avere una luce del 30% rispetto alla sua intensità massima, come faccio, lo piloto in PID e ottengo il 30% di luce da una lampadina che me ne fornisce il 100%.

Se invece "sovraalimenti" il piano diciamo a 18V (ma il piano è collegato per essere alimentato a 12V) allora il PID ha senso, ma perché lo stai usando al di fuori delle sue specifiche e un controllo che "regoli" l'alimentazione può sortire qualche effetto.

Poi ognuno è padrone della sua stampante, ma con la fisica non esistono scorciatoie.

Saluti

Carlo D.


P3Steel - MKS GEN v1.2 e REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + Gen 7 MOSFET (HotBed) + alimentatore step-down 12V -> 5V
Firmware MK4duo 4.3.6 con ABL induttivo con LJ18A3 - Slic3R (Originale) ed ESP3D per controllare la stampante da remoto.
HotEnd Cinese V6 clone con ugello da 0.4mm.

[My Building Log]
Re: Cr-10 Marlinkimbra autotune fallito.
June 23, 2018 05:32AM
Spetta ONEKK tutto giusto il tuo discorso, ma stai usando la parola PID nel modo errato. I PID o Proportional Integral Derivated, che sono appunto i tre valori Proporzionale Integrale e Derivata, che servono per stabilire l'intervento sul riscaldatore modulando la frequenza PWM.
Quindi nell'esempio della lampadina al 100% per pilotarla al 30% non usi i PID, che in questo caso non vengono proprio usati, ma la frequenza PWM. Se accendi la luce al 100% hai sull'uscita una tensione fissa, se l'accendi al 30% invece hai una frequenza.
Immaginiamo di avere una frequenza di 1 secondo, il che vuol dire che per 0,5 secondi il valore è alto e per 0,5 secondi il valore è basso, questa frequenza ha il PWM al 50% cioè per il 50% del tempo è alto e per il 50% è basso. Ora se mandiamo questa frequenza alla luce la luce si accenderà al massimo per 0,5s e si spegnerà per 0,5s ai tuoi occhi sembrerà che la luce abbia diminuito l'intensità al 50%. Cosi se vuoi accenderla al 30% ecco che per 0,3 s starà accesa al massimo e per 0,7 secondi spenta.
Cosi funziona il PWM per i riscaldatori, l'uscita è sempre al massimo del voltaggio, ma solo per un tot di tempo, se stai al 100% della potenza quindi in byte 255 per tutto il tempo è al massimo, se invece piloto a 127 cioè al 50% per la metà del tempo esce il massimo del voltaggio e per l'altra metà 0v. Questa frequenza viene modulata dai PID che sapendo (tramite auto tune) il tempo d'intervento del riscaldatore come modulare questa frequenza in modo che il riscaldatore sia stabile su quella temperatura.

Ora durante la fase dell'autotune la frequenza PWM non viene proprio usata, ma viene usato solo ON OFF cioè accendo al massimo, 255 e poi appena superata la temperatura richiesta, spegne, a quel punto il firmware comincia a tenere conto del tempo che impiega il riscaldatore a finire di salire ancora di temperatura, perchè ha ancora un'energia riscaldate accumulata, per poi cominciare a scendere. Quel tempo viene memorizzato per i calcoli. Dopo di che il riscaldatore comincerà a scendere, andrà sotto la soglia e a quel punto il firmware riaccende al massimo e comincerà a tenere conto del tempo che impiega il riscaldatore a risalire, infatti per un po la temperatura continuerà a scendere per poi fermarsi e risalire, anche questo tempo servirà per poter fare i calcoli.
Ora però se questi tempi sono lunghissimi oltre una certa soglia non fa i calcoli e ci riprova, se dopo 20 minuti non riesce a fare questi calcoli ferma tutto e da l'errore.
Questo che vuol dire che se il bed non è veloce nella sua risposta non può essere usato con i pid, non riuscirebbe il firmware a modulare per tenere ferma la temperatura, quindi l'unica è ON OFF...
E se oscilla di qualche grado non succede assolutamente nulla con il bed... Se invece si vuole un bed pilotato in PWM e PID c'è bisogno di un bed veloce nella sua risposta e quindi che possa arrivare tranquillamente a 150° per esempio in modo che 80 o 100 li tenga facilmente.

Edited 1 time(s). Last edit at 06/23/2018 05:34AM 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: Cr-10 Marlinkimbra autotune fallito.
June 23, 2018 06:44AM
Ciao Mago hai ragione, ma era per esemplificare.

Ma qui il problema era che tu hai ripetuto l'inutilità del PID per il BED perché ovviamente in quelle condizione fa lo stesso effetto "dell'incenso al morto" e la risposta è stato non funziona bene, è ovvio che non funzioni bene un controllo in PID anche perché magari a 50% potrebbe avere un senso ma a 110°C magari con NTC starato che legge in modo diverso e alimentazione a 12V, magari che si siede o con i fili leggermente sottodimensionati e quindi con 11.5V al piatto se va bene, col cavolo che ci arriva a leggere la temperatura anche con il piatto alimentato per il 100% del tempo.

Saluti

Carlo D.


P3Steel - MKS GEN v1.2 e REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + Gen 7 MOSFET (HotBed) + alimentatore step-down 12V -> 5V
Firmware MK4duo 4.3.6 con ABL induttivo con LJ18A3 - Slic3R (Originale) ed ESP3D per controllare la stampante da remoto.
HotEnd Cinese V6 clone con ugello da 0.4mm.

[My Building Log]
Re: Cr-10 Marlinkimbra autotune fallito.
June 25, 2018 04:36PM
Carlo e Alberto,
anzitutto vi ringrazio delle spiegazioni che ho letto e riletto e riletto insieme alle spiegazioni del Mago sul suo blog. Non so se ho colto tutto (o almeno l'essenziale). provo a riportare quello che ho capito:
- PWM (appunto Power Width Modulation) significa modulare gli impulsi in termini di durata (non di "livello di intensità"). per una parte dell'unità di tempo il riscaldatore rimane attivo e per la rimanente parte no
- PID (proportional integral derivative) è una modalità di controllo che serve a stabilire i tre parametri proporzionale, integrale e derivata utilizzati per di decidere il livello di modulazione PWM
- per far funzionare il PID occorre un piatto reattivo, capace cioè di rialzare la temperatura in poco tempo (ma poco quanto? parliamo di ms, secondi o minuti?)
- alimentare il piano con tensioni superiori (es. 18V al posto degli attuali 12V) aumenta questa reattività perchè aumenta la corrente che circola nel piatto e quindi la velocità di riscaldamento dando senso all'utilizzo del PWM
- l'uso del pid per il bed potrebbe essere adeguato quando non si intende raggiungere temperature elevate

sull'ultimo punto ho omesso un particolare: al momento stampo solo PLA e PETG e non ho mai avuto necessità di portare il piatto oltre i 50°

Siccome vorrei capire per bene la questione (dalle mie parti si dice che mi sono "amminchiato" su sta storia), vi sottopongo alcune considerazioni:
- mi sembra non completamente insensato il concetto generale (non parlo dell'applicazione specifica) del pilotare un carico puramente resistivo, benché da non esperto in materia lo abbia visto molto più frequentemente per la regolazione di velocità dei motori
- sempre a livello concettuale, il calcolo dei parametri Kp, Ki e Kd dovrebbe portare, nel corso della procedura di autotune, ad un utilizzo di impulsi PWM di durata adeguata a tornare in temperatura. Se così non fosse (come nel mio caso) significa che il calcolo degli impulsi PWM è stato "ottimistico", con l'effetto di un controllo insufficiente per tornare alla temperatura setpoint senza utilizzare alimentazioni "sovradimensionate"

a mero scopo "didattico" per me, ho colto qualcosa?

Volutamente dopo la teoria, giusto per la cronaca, ho comunque completato con successo l'autotune del bed variando un minimo i valori costanti utilizzati nell'algoritmo all'interno di temperature.cpp e nel configuration overall in questo modo:

Configuration overall
//#define BED_PID_DRIVE_MIN  80
#define BED_PID_DRIVE_MIN  255

Temperature.cpp -> funzione void Temperature:tongue sticking out smileyID_autotune(...) -> ciclo for(;winking smiley
// OLD: if (time - t1 > (act->type == IS_HOTEND ? 5000 : 3000))
if (time - t1 > (act->type == IS_HOTEND ? 8000 : 1500)) // riduco i tempi di spegnimento del bed e allungo quelli dell'hotend
e poi
          if (cycles > 2) {
                        // OLD: Ku = (4.0 * d) / (M_PI * (maxTemp - minTemp));
                        Ku = (6.0 * d) / (M_PI * (maxTemp - minTemp)); // incremento Ku usato per calcolare successivamente Kp, Ki e Kd
                        Tu = ((float)(t_low + t_high) * 0.001);
                        SERIAL_MV(MSG_KU, Ku, 2);
                        SERIAL_EMV(MSG_TU, Tu, 2);

            if (method == 0) {
                          // OLD: workKp = 0.6 * Ku;
                          workKp = 0.95 * Ku; // aumento anche il coefficiente di Kp
              
			  // OLD: workKi = workKp * 2.0 / Tu;
                          workKi = workKp * 4.0 / Tu; // aumento solo il coefficiente di Ki senza modificare Tu
			  
			  // OLD: workKd = workKp * Tu * 0.125;
                         workKd = workKp * Tu * 0.3; // aumento solo il coefficiente di Kd senza modificare Tu
                         SERIAL_EM(MSG_CLASSIC_PID);
            }

ci sono andato un po' pesantuccio con gli incrementi dei coefficienti, ma a primo colpo l'autotune del bed è andato a buon fine. ora cerco di trovare l'equilibrio giusto per avere reazioni più "pacate" anche dall'hotend.

grazie ancora per gli spunti!
Re: Cr-10 Marlinkimbra autotune fallito.
June 25, 2018 05:05PM
Io perlomeno sono riusciro ad arrivare fio 80gradi oltre non va più!
Oltre non vado.
Sorry, only registered users may post in this forum.

Click here to login