Testina per stampa 3D da applicare alla CNC

Tecnologia, meccanica, materiali, utilizzo.
Rispondi
Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » sabato 22 novembre 2014, 23:21

@turbina

Permettiti...permettiti...!!
Eh..eh...ci mancherebbe altro!
Mi hai dato in pasto materiale da studiare per giorni...che cercavo da tempo!
Lo so che il wiki della reprap è la prima fonte dove cercare...ma per me è come una porta girevole: entro....giro...giro... e mi trovo fuori senza aver trovato quello che cercavo!!!
Poi io ti considero un maestro da cui imparare, ho letto molti dei tuoi interventi, e come molti altri qui sul forum sei una persona con molta esperienza, quindi sempre ben accetti, anzi, attesi i consigli! =D>

Approfitto a sto punto per ringraziare tutti i partecipanti del forum: grazie a tutti voi ho una cnc interamente autocostruita e funzionante con cui mi divertirei un mondo se solo non mi venissero in mente sempre nuove idee...tipo adattarla a stampante 3d...!!! #-o

G R A Z I E
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

nazca84
Member
Member
Messaggi: 330
Iscritto il: mercoledì 20 agosto 2008, 22:59
Località: Ivrea (TO)

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da nazca84 » domenica 23 novembre 2014, 11:28

La community reprap è piena di materiale, e di conseguenza anche molto dispersiva!.. personalmente mi sono informato in maniera molto sommaria su internet, e poi ho deciso di iniziare a costruire e proseguire da solo.
Se può essere d'aiuto vi dico che facendo delle prove e delle simulazioni termiche ho individuato due fattori chiave che sono ampiamente discussi in reprap, in sintesi:
1- la porzione di condotto tra la parte calda e quella fredda deve essere il più breve possibile (questo implica un rapido abbattimento della temperatura)
2-il condotto deve essere il più possibile lineare (a tal proposito, ganzissimo, ti invito a fare attenzione alle giunzioni specie quella nell ugello che intendi fare)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » domenica 23 novembre 2014, 12:52

Mi sa che farò così pure io...però i consigli prima di cominciare evitano spreco di tempo in prove già fatte!!
Ora sto vedendo i vari hot end, ma siccome sono testardo e penso di sperimentare la candeletta...mi sa che improvvisero' qualcosa di nuovo...poi ovviamente documentero'...
Intanto tengo a mente i tuo due punti
Ciao
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » martedì 9 dicembre 2014, 19:28

:evil:
non riesco a sbloccarmi!!!
sono giorni che cerco, scarico ,modifico, carico firmware per arduino uno per controllare la stampante 3d e non trovo la soluzione!!
ho adattato un firmware (teacup) alla mia scheda (tb6560) usando Repetier Host: non sono stato a settare molto dettagliatamente, me non risponde molto bene, alcuni motori tendono a muoversi mentre si esegue un comando su uno ed in generale abituato ad usare linuxcnc non lo sopporto!
ho deciso quindi che VOGLIO usare linuxcnc per controllare la stampante 3d!
quindi mi rimane da usare arduino per il controllo della temperatura....facile no?!? :evil:
'na cippa!! non riesco a trovare un firmware semplice semplice che legga la temperatura e di conseguenza mandi i comandi a emc2 che li smista poi alla parallela...
1) devo far "capire" i nuovi codici M a emc2
2) trovare detto firmware...visto che farlo da solo mi sembra non alla mia portata
l'idea sarebbe di modificare il sistema che uso per leggere gli rpm e di conseguenza gestire in pwm il riscaldatore.
ho provato a caricare gcode generati da slic3r per emc2 e facendogli riconoscere i vari M "nuovi" tramite un app-mcodes trovato al volo ma creato per dialogare con arduino (e qui sta l'inghippo: non riesco a compilare il firmware annesso per un errore di "setTimerResolution" che non risolvo) il tutto si muove.
addirittura il gcode esce già con la A al posto della E per l'estrusore
...se almeno capissi come riuscire a far interpretare questi codici M per la stampa 3d potrei cominciare a modificare i miei file hal , ini, e via dicendo per tentare una strada nuova...
oltretutto arduino non è neanche indispensabile...basterebbe convertire il segnale analogico in frequenza...
a proposito....risulta a nessuno che sulla porta parallela si possa leggere valori di tensione in continua da 0 a 5v? praticamente quello che dovrebbe leggere arduino...
preciso infine che non uso arduino come controller unico con firmware già completi come marlin o sprinter in quanto troppo grandi per la memoria della uno....ho perso ore a configurare marlin...e quando finalmente ha compilato lo sketch è venuto fuori di 60000kb contro i 32000 di capienza della uno!!!
H E L P !!!
mi sto scoraggiando...ma non mollo!!
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da billielliot » martedì 9 dicembre 2014, 21:02

Ciao ganzissimo,

non ho esperienza con stampanti 3D ne' con le CNC ma direi che quello che vuoi fare non e' impossibile.

NON e' possibile leggere un segnale analogico instradato direttamente nella porta parallela. E' possibile convertirlo e acquisirlo come numero binario (bit). In alternativa puoi usare un convertitore tensione frequenza. A 0 volt avrai 0 Hertz, a 5 volt avrai 5000Hertz (I valori sono puramente indicativi)

Di seguito alcuni link sulla teoria per leggere un segnale in frequenza direttamente da LinuxCNC:
http://wiki.linuxcnc.org/cgi-bin/wiki.p ... ed_Control
http://linuxcnc.org/docs/html/examples/spindle.html
http://www.linuxcnc.org/docs/2.4/html/e ... indle.html
http://linuxcnc.org/docs/html/man/man9/motion.9.html

Direi che potresti assumere la temperatura di fusione come il parametro principe da cui dipende tutto il resto, portandoti nella condizione "6.1. Spindle Synchronized Motion"

Questa funzione e' usata per creare filetti e lavorazioni delle superfici a velocita' costante.

Ripeto: solo un suggerimento a sensazione. NON ho realizzato nulla di quanto sopra.

Ciao :-)

Mauro
Amat victoria curam

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » martedì 9 dicembre 2014, 22:12

grazie
sto leggendo di tutto e di più...in effetti vorrei proprio non utilzzare l'arduino ma un convertitore, senza firmware ne niente.
il concetto è un pò come il controllo della velocità del mandrino: io uso sulla cnc un motore brushless da modellismo, controllato dal suo esc tramite pwm di linuxcnc con pid grazie al segnale di feedback letto sui giri reali del mandrino.
per la stampa 3d è lo stesso: si imposta la temperatura, si aspetta che sia raggiunta e parte il codice, si controlla che venga mantenuta e nel caso si superi una certa differenza si mette in pausa il lavoro e si riprende appena tornano le condizioni.
per tutto il resto ci pensa il codice generato dal software di slicing...credo!
ho provato a generare un gcode da slic3r(il software appunto per lo slicing) per emc2/mach3 e linuxcnc lo legge correttamente. il problema sono i codici M che sono diversi e che vanno aggunti per farli interpretare correttamente.
il problema sta proprio qui: non so come crearli. mi servirebbero dei comandi ad hoc,, tipo M104 setta la temperatura ad un determinato valore come adesso m3 s8000 setta la velocità a 8000rpm.
poi il controllo lo dovrei indirizzare su un pin della parallela che attiva un riscaldatore, piuttosto che un relè o un mosfet.
il resto lo deve fare linuxcnc: legge in ingresso la temperatura effettiva (tramite adc) e si adatta in pid il pwm da mandare al pin del riscaldatore (ciclo chiuso)
come adesso se freno il mandrino compensa per mantenere i giri impostati.
mettendo un app-mcodes trovata in giro sono riuscito a non farmi dare errore e quindi ho lanciato il gcode che avevo generato: gli assi si muovono tutti correttamente e l'estrusore viene gestito come 4 asse.
addiritture il soft slic3r esporta già con lettera A al posto della E classica delle 3d. in più si può modificare anche l'output del gcode con altre funzioni adattabili per la propria macchina.
insomma il problema per me sembrerebbe solo creare questi benedetti mcode speciali e poi poter modificare la mia configurazione da rpm a temperatura.
ci sto diventando matto e non avendo le conoscienze necessarie per poter scrivere i vari file hal, python, ini ecc dipendo molto da quello che trovo in rete.
in compenso studierò i manuali di linuxcnc e di hal...speriamo servano!!
intanto grazie
Fabrizio
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da billielliot » mercoledì 10 dicembre 2014, 11:14

Ciao ganzissimo,

probabilmente mi sfugge un dettaglio (e magari anche piu' di uno).

Tu sei in grado di gestire la velocita' del mandrino con un PID.

Cosa cambia se invece di scrivere S8000 (una possibile velocita' di rotazione del mandrino) scrivi S220 (temperatura che deve mantenere l'estrusore)

Il segnale che modula la velocita' del mandrino lo hai gia';
Il segnale di ritorno (feedback) che ti dice la reale velocita' di rotazione lo hai gia' (altrimenti non potresti chiudere il PID).

Al massimo hai bisogo di un convertitore tensione/frequenza tipo LM331. Il segnale analogico che rappresneta la temperatura istantanea dell'estrusore, lo converti in una frequenza. La frequenza puo' essere letta da un pin della parallela e la puoi usare come segnale di ritorno (sostituendola al segnale dell'encoder sull'albero del mandrino)

Forse ho semplificato troppo?

Ciao :-)

Mauro
Amat victoria curam

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » mercoledì 10 dicembre 2014, 15:28

ciao
no no...è esattamente così che voglio fare...
il problema al momento sta nel fatto che i codici generati per la stampa 3d usano degli M diversi da quelli di linuxcnc: tipo M101 M104 M108 e così via per settare la temperatura, aspettare che la si raggiunga ed altri comandi specifici. quindi devo trovare il modo di far leggere questi codici a linuxcnc (in realtà, usando un app-mcodes scaricata da un utente in rete che usa arduino per gestire motore e temperatura dell'estrusore, sono riuscito a far leggere questi codici, ma il comando associato viene indirizzato e interpretato da arduino stesso, sul quale non riesco a compilare il firmware associato a causa di diversi errori) ed inidirizzare i comandi verso i pin della parallela.
oggi infatti provo questa strada: cerco di studiare i file di questi codici e provo a cambiare il percorso del comando associato verso la parallela appunto.
:idea: in realtà però mi dai un idea: potrei vedere la reale funzione ed utilità dei vari codici della stampa 3d e semmai cambiarli nel gcode con gli M come dici tu, quindi settaggio temperatura (velocità) e retroazione. c'è da dire che vorrei estrudere come idea solo pla, quindi non mi servirebbe il piatto riscaldato (complicazione in meno). per l'attesa della temperatura credo che ci siano comandi apppositi anche in linuxcnc (che per altro volevo già utilizzare anche per il mandrino ma ho sempre rimandato e quindi acceso manualmente 'elettromandrino prima di avviare il codice #-o )
devo smanettare un pò...chissà che la soluzine sia più semplice del previsto....
nel soft slic3r potrebbe addirittura essrci un modo per far scrivere i codici M personalizzati...
per il convertitore ancora non ci ho messo mano ma non credo sia particolarmente difficile...

vi terrò informati

Fabrizio
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » mercoledì 10 dicembre 2014, 17:23

:D :mrgreen:


ALLORA:
ho fatto il punto sul gcode che genera slic3r per emc2/mach3...facendo alcuni settaggi gli unici codici M che inserisce nel codice sono M104 per impostare la temperatura, M109 per attendere che sia raggiunta la temperatura impostata, M106 per attivare la ventola di raffreddamento, M104 dopo il primo layer per settare una temperatura diversa, M107 per disattivare la ventola a fine programma, M104 con P impostato a 0 per impostare la temperatura a zero e quindi spegnere il riscaldatore. Ho sostituito il codice con M3 S7000 (ho lasciato montato il mandrino per fare una prova quidni ho settato la velocità e non la temperatura), ho omesso M109 che comunque aggiungendo nel file hal le opportune modifiche verrà sostituito dalla funzione di attesa del raggiungimento del valore S impostato, ho sostituito M106 con M6 per attivare un uscita che può essere mandata ad un relè per la ventola, il secondo M104 con un nuovo valore S, M107 con M7 per disattivare l'uscita del relè di cui sopra e l'ultimo M104 per spegnere il riscaldatore con M5....
sembra funzionare!!
il 4 asse si comporta come dovrebbe ed il mandrino esegue correttamente i comandi mentre la macchina si sposta nei vari percorsi.
diciamo che dopo tanti giorni nel buio finalmente vedo l'uscita!!
ovvio che ci sono tanti possibili aggiustamenti ma diciamo che come partenza al netto di tanti fronzoli è ottima. ora devo implementare la funzione di attesa per il mandrino (temperatura) poi devo realizzare il convertitore in frequenza per leggere le temperature. a seguire proverò il tutto "in aria" e poi costruirò l'estrusore vero e proprio.
dopo che tutto funzionerà passerò alla sgrossatura: vedere se controllare in pwm anche la ventola (slic3r da la possibilità di modulare la velocità in base all'estrusione) ma soprattutto creare un filtro che converta automaticamente il gcode generato in quello da usare con queste modifiche (ora ho effettuato le sostituzioni manualmente, anche se sono solo poche da fare, ma è sempre meglio automatizzare...!
dando un'occhiata ai codici M usati nel firmware Mertlin (che è uno dei migliori) mi sono reso conto che tutti i vari codici che usa sono per lo più per gestire le schedine SD (cosa che io non ho intenzione di usare) ed altre cosucce che non influenzano la stampa.
sarà tutto vero?! speriamo di si...non mi resta che provare...certo che se bastasse veramente questo per stampare in 3d partendo da una nostra cnc con linuxcnc sarebbe veramente la scoperta dell'acqua calda!!! a portata di mano di tutti noi e senza programmare una riga!! figo!!
a presto

Fabrizio

p.s.: Grazie molto Billielliot per l'input che mi hai dato...ci avevo pensato ma non ci credevo, poi me lo hai detto anche tu e mi è sembrato più realistico...vedremo che salta fuori!!
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » venerdì 12 dicembre 2014, 23:26

aggiornamento:

sono appena riuscito da solo (dopo due giorni di studio dei comandi e componenti hal con varie funzioni) ad aggiungere alla mia cnc una delle funzioni che mi mancava: l'attesa del raggiungimento della velocità del mandrino prima di cominciare il taglio!!
lo so che per molti di voi sarà una funzione elementare, ma per me è stata una grande soddisfazione riuscirci senza chiedere aiuto!! :mrgreen:
fatto questo si apre la strada all'estrusore....

spero in settimana prossima di riuscire a realizzare l'estrusore e cominciare a provare a fondere...
vi aggiornerò
ciao

Fabrizio
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da billielliot » domenica 14 dicembre 2014, 13:33

Ciao ganzissimo,

nulla e' elementare fino a quando non riesci a farlo funzionare. Subito dopo diventa.....ELEMENTARE!

Bravo!

Ciao :-)

Mauro
Amat victoria curam

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » domenica 14 dicembre 2014, 15:58

Vero!
....e con le nuove conoscenze sono riuscito anche ad eliminare parti di file hal inutilizzato ( e non lo sapevo) e regolato molto meglio l'homing (capito pure quello che fa!!!) ed il pid del mandrino...
Ora sono pronto per cominciare seriamente la trasformazione in stampante 3d!!!
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » mercoledì 17 dicembre 2014, 23:55

#-o di nuovo piantato!!!

c'è qualche anima buona che mi sa spiegare come leggere un numero generato sul pin analogico di arduino uno (il ritorno della lettura del sensore temperatura che viene convertito in un nnumero intero scalato da 0 a 300) da linuxcnc?
ho lo sketch già caricato in arduino, sul monitor seriale vedo già il valore, ma devo riuscire a leggerlo da linuxcnc per poter regolare sta benedetta temperatura!
deve passare da un file python, caricato da un fil hal, questo credo di averlo capito...il problema che il file hal dovrei riuscire a farlo, creare il pin di collegamento e mandarlo come feedback al pid, ma la lettura da python proprio non riesco a trovare come fare.
dovrebbero giusto essere due righe con l'importazione delle librerie, l'inizializzazione della porta (usb) e i comandi per leggere il valore che già arduino manda alla seriale....

se qualcuno può aiutarmi mi darebbe una grossa mano!!

grazie

Fabrizio
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

Avatar utente
ganzissimo
Member
Member
Messaggi: 256
Iscritto il: giovedì 13 novembre 2008, 22:21
Località: marina di pietrasanta

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da ganzissimo » lunedì 22 dicembre 2014, 15:45

...progressi...
sono riuscito a far lavorare lo script python ed ora leggo il pin analogico di arduino da linuxcnc...andiamo avanti...
Tutto è possibile, basta volerlo!
"siamo noi gli inabili che pure avendo avvolte non diamo" (R.Zero)

turbina

Re: Testina per stampa 3D da applicare alla CNC

Messaggio da turbina » lunedì 22 dicembre 2014, 16:55

Bisogna dire che non sei come quelli che fanno la domanda e si aspettano la risposta e se non la ricevono si lamentano e imprecano..... tù invece ti dai da fare: Sei positivo, molto bene! :)

Rispondi

Torna a “Stampanti 3D”