Neopixel 2812 + MK4Duo February 10, 2019 06:31AM |
Registered: 8 years ago Posts: 174 |
#define NEOPIXEL_LED #define NEOPIXEL_TYPE NEO_RGB #define NEOPIXEL_PIXELS 8 #define NEOPIXEL_IS_SEQUENTIAL #define NEOPIXEL_BRIGHTNESS 127 #define NEOPIXEL_STARTUP_TEST #define PRINTER_EVENT_LEDS //#define LASER //#define CNCROUTER #define CASE_LIGHT #define INVERT_CASE_LIGHT false #define CASE_LIGHT_DEFAULT_ON false #define CASE_LIGHT_DEFAULT_BRIGHTNESS 255 #define CASE_LIGHT_USE_NEOPIXELAlla accensione della stampante ho il check con tutto Verde, tutto rosso, tutto blu poi tutto spento.
Re: Neopixel 2812 + MK4Duo February 10, 2019 09:25AM |
Registered: 10 years ago Posts: 6,409 |
Re: Neopixel 2812 + MK4Duo February 10, 2019 10:15AM |
Registered: 8 years ago Posts: 174 |
Re: Neopixel 2812 + MK4Duo February 10, 2019 11:49AM |
Registered: 10 years ago Posts: 6,409 |
Re: Neopixel 2812 + MK4Duo February 10, 2019 12:06PM |
Registered: 8 years ago Posts: 174 |
Re: Neopixel 2812 + MK4Duo February 10, 2019 12:54PM |
Registered: 10 years ago Posts: 6,409 |
Re: Neopixel 2812 + MK4Duo February 10, 2019 03:30PM |
Registered: 8 years ago Posts: 174 |
Re: Neopixel 2812 + MK4Duo February 11, 2019 02:47AM |
Registered: 10 years ago Posts: 6,409 |
Re: Neopixel 2812 + MK4Duo February 11, 2019 06:31AM |
Registered: 8 years ago Posts: 174 |
Re: Neopixel 2812 + MK4Duo February 11, 2019 07:18AM |
Registered: 10 years ago Posts: 6,409 |
Re: Neopixel 2812 + MK4Duo February 11, 2019 12:03PM |
Registered: 8 years ago Posts: 174 |
Configurare la funzione Neopixel: Questa funzione sfrutta i Led tipo Neopixel Adafruit per segnalare con diversi colori lo stato della stampante e lo stato della fase di riscaldamento del Bed e dell'HotEnd. Nel caso descritto si utilizza il Neopixel tipo 2812/8. E' una strip da 8 LED (pixel) di prova. Si possono comunque collegare in serie piu' strip per avere un numero maggiore di led. Tutto questo è verificato con MK4Duo vers. 4.3.8 del 09/02/2019. RAMPS+Arduino Mega 2560 8bit. Collegamenti elettrici: Questo tipo di Neopixel Strip, ma anche il tipo circolare, viene alimentato a 5V, quindi abbiamo un positivo (5V) un negativo ed un ingresso segnale (tipo seriale) che va collegato ad un pin della scheda stampante definito con la configurazione qui di seguito. Attenzione, questi led assorbono molta corrente, 8 led sembrano ancora sopportabili dall'alimentatore a 5V sulla scheda, ma se si va oltre occorre prevedere un 5V dedicato sufficiente al carico. CONFIGURATORE ON LINE: Selezionare “Adafruit Neopixel LED” Selezionare “Printer Event Leds” Adafuit Neopixel Type “NEO_GRB Normal” Adafuit Neopixel Pixels “N. di led da controllare” (In questo caso 8) Adafruit Neopixel pin: Pin al quale è collegato il segnale seriale Neopixel. (In questo caso Y MAX PIN) Se siete interessati anche alla funzione illuminazione: Selezionare "Case Light" Case Light PIN: Pin al quale è collegato il segnale seriale Neopixel. (In questo caso si usa la stessa strip come illuminazione e quindi stesso pin Y MAX PIN) Configurazione editando il Configuration_overall.h: #define NEOPIXEL_LED Attiva funzione #define NEOPIXEL_TYPE NEO_GRB Tipo Neopixel 2812 #define NEOPIXEL_PIXELS 8 N. di led sulla strip #define NEOPIXEL_IS_SEQUENTIAL Accende uno dopo l’altro per temperatura #define NEOPIXEL_BRIGHTNESS 127 Luminosità generale per tutto il ciclo #define NEOPIXEL_STARTUP_TEST Alla accensione Red/Green/Blue circa 2sec ciascun colore. #define PRINTER_EVENT_LEDS Altri Eventi stampante (Riscaldamento, Fine stampa=Verde, altro ancora da verificare) Qui si abilita la funzione illuminazione usando lo stesso pin #define CASE_LIGHT Attiva illuminazione stampante #define INVERT_CASE_LIGHT false #define CASE_LIGHT_DEFAULT_ON false #define CASE_LIGHT_DEFAULT_BRIGHTNESS 255 Luminosità generale #define CASE_LIGHT_USE_NEOPIXEL Usa stesso pin della funzione sopra Se tutto funziona come previsto cosa ci si aspetta? Accensione stampante: Se è definito NEOPIXEL_STARTUP_TEST, si avrà la sequenza (circa due secondi per colore): Tutto spento, tutto Rosso, tutto Verde, tutto Blu e infine tutto spento. Questo farà già capire se il tipo di Neopixel selezionato è quello corretto. Illuminazione: Col Nextion 7" (In questo caso si ha il Nestion a disposizione) premendo il tasto "Lampada da tavolo" si accende/spegne tutta la stricia di LED di Bianco ed alla luminosità impostata in config_overall CASE_LIGHT_DEFAULT_BRIGHTNESS (min=0 max=255). Stampa: Il G-Code si incarica (oltre che di altre cose) di riscaldare il Piano se è richiesto e sicuramente L'HotEnd. Durante il riscaldamento del Piano di stampa i LED assumono inizialmente un colore Blu, man mano che si scalda tendono al violetto, alla fine saranno di un Viola intenso. Raggiunta la temperatura target diventeranno Bianchi (luminosità max quella impostata in config_overall NEOPIXEL_BRIGHTNESS min=0 max=255). Durante il riscaldamento dell'HotEnd i LED assumono inizialmente un colore Blu, man mano che si scalda tendono al violetto, alla fine saranno di un Rosso intenso. Raggiunta la temperatura target diventeranno Bianchi (luminosità max quella impostata in config_overall NEOPIXEL_BRIGHTNESS min=0 max=255). Ora, per avere il massimo effetto scenografico, è necessario che il G-Code del pezzo da stampare abbia la parte iniziale come segue: (Si tralascia tutto quello che non riguarda il contesto Neopixel) M140 S90 ; Set Bed temperature ed esce subito M190 S90 ; set bed temperature ed aspetta (EFFETTO COLORI NEOPIXEL completo per il Bed) M109 S245 ; set HotEnd temperature ed aspetta (EFFETTO COLORI NEOPIXEL completo per l'HE) G28 ; home all axes G29 ; ABL .... resto del gcode..... Questa inizializzazione pero' non è molto efficiente perchè si potrebbe già lanciare il riscaldamento dell'HotEnd prima dell'ABL, cosi si risparmierebbe tempo, l'HE si scalderebbe durante la fase Homing e ABL. Questa invece è piu' efficiente, l'HE si scalda durante la fase Homing e ABL, ma si perde l'effetto scenografico dei led del dell'HE perchè durante l'ABL ha già quasi raggiunto la temperatura target. M140 S90 ; Set Bed temperature ed esce subito M190 S90 ; set bed temperature ed aspetta (EFFETTO COLORI NEOPIXEL completo) M104 S245 ; set HotEnd temperature ed esce subito G28 ; home all axes G29 ; ABL M109 S245 ; set HotEnd temperature ed aspetta (EFFETTO COLORI NEOPIXEL ridotto perchè HE già caldo) .... resto del gcode..... Descritta la differenza dei due esempi di G-Code, ciascuno può quindi scegliere la metodologia preferita. Fine stampa: Tutti i Led diventano Verdi e dopo un po' si spengono. Altre indicazioni luminose: Dovrebbero esserci altre indicazioni fatte con i led a vari colori, purtroppo però ancora non le ho verificate, spero che il Mago possa completare l'opera.