Vai al contenuto

Sensori di temperatura


Chaos

Messaggi raccomandati

Sto progettando una stampante che elimini(riduca) i problemi della mia, dopo aver progettato/dimensionato ciò che concerne il movimento degli assi XYZ, mi è sorto un piccolo problema..
[Introduzione]
Vi sarà capitato che le vostre stampe si staccassero da sole, a causa di temperature troppo basse, o che i vostri oggetti avessero le zampe da elefante; oppure di far fatica a far partire la stampa perchè il piatto fatica ad arrivare ad una temperatura sufficientemente alta.
Bene, ridotti tutti questi problemi al massimo risultato ottenibile ho notato che talune volte i problemi citati sono da imputare alla non costanza della temperatura lungo l'area  del piatto di stampa, 
quindi volevo creare un programma ad hoc per le temperature del piatto, letture e accensione del piatto.
Fino a qui tutto abbastanza banale, quindi incremento un po la dose; volevo, cambiando il mio fido MK3 con un pad silconico da 220v(da 1kv circa),  eliminare il problema del raggiungimento di una temperatura elevata. E data anche la dimensione del piatto che voglio mettere in opera (50x50 riscaldato) munirlo di almeno 9 termistori (capisco che sembra un' esagerazione ma non voglio neanche partire con la stampa se l'unico punto in temperatura è quello centrale).

Ora il mio problema è quasi formato, l'unico dato mancante è che voglio controllarli con Raspberry e non con arduino, questo perchè nel mio progetto vi sono anche altri elementi che deve controllare tra cui i relè per il piatto altri sensori di temperatura ma ambientale, gestione delle ventole sul lato elettronico solo se necessario (ky028) ; in pratica un sacco di cose di cui vorrei tenere ben traccia e controllo su un 27". Quindi avrei {ARDUINO+RAMPS} e {RASPBERRY}, i termistori sarebbero i classici ntc 100k 3950. Quello che mi manca è come leggere le temperatura "direttamente" con raspberry (con arduino ho già provato con altri termistori e sembra andare). Stavo pensando ad un modulo(per ogni termistore) dedicato allo scopo di mandare un segnale digitale, dove il termistore deve essere rimovibile e del tipo citato. Conoscete moduli di questo genere e/o alternative piu sensate (considerando che in ogni caso voglio gestire il tutto mouse in mano e non premendo tasti sulla stampante, perchè le due componenti sono si separata ma devono essere controllate dal medesimo pc nello stesso momento)?

P.S. Solo per farsi un idea pensavo di usare diversi pad siliconici per accendere o spegnere aree del piatto , 1 per termistore sarebbe il massimo, ma è molto poco pratica la gestione, penso che 4/5 sia una buona scelta .[Per questo però devo ancora valutarne la fattibilità e per il problema citato la differenza non esiste, è solo qualche relè in più; e del tutto inutile se non risolvo]

 

Link al commento
Condividi su altri siti

Uno dei tanti motivi di successo di arduino è legato al fatto che ha un assortimento di ingressi ed uscite davvero vasto tra cui 8 ingressi analogici e avere un basso costo, mentre il grande successo del raspberry è di essere un normale computer in una micro scheda e avere basso costo. 

Quello che serve le leggere i termistori sono gli ingressi analogici ed i computer non hanno ingressi analogici e quindi raspberry non ha ingressi analogici e quindi rasperry direttamente non può leggere ingressi analogici e quindi non può leggere i termistori. Però siccome non sei il primo con questa esigenza esistono schede aggiuntive che danno al raspberry questo magico potere.

Io ti posto il link di una delle marche più famose (ce ne sono tante altre sia famose che no e funzionano tutte uguali se basate sullo stesso chip)

 https://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi/overview

Invece devo dirti che basterebbe usare un secondo arduino (solo arduino mega e non arduino +ramps) dedicato solo a quello.

L'arduino di persè è abbastanza potente, certo che se deve controllare temperature e stampare è un pò strozzato e la temperatura la controlla ogni tot secondi, se invece l'arduino dovesse solo controllare le temperature potrebbe arrivare a controllarle anche 100 volte al secondo senza una goccia di sudore.

Invece attento che dare una fortissima potenza al piatto vuol dire aumentare di molto gli sbalzi di temperatura che avresti ad ogni accensione spegnimento perchè c'è l'inerzia termica prima di arrivare al termistore e rischieresti di peggiorare notevolmente la situazione. Questo se fai un sistema on/off (facilissimo da fare) . Diverso se fai un controllo lineare ma molto più complesso da fare, direi che servirebbe un ingegnere elettronico, io stesso che ho una pratica decente ma artigianale sarei in difficoltà per quelle potenze

 

 

Link al commento
Condividi su altri siti

@Chaos l'idea è sensata ed interessante.... io però vedo un problema... ovvero se il piatto scalda in maniera troppo difforme.... è un problema di come è costruito e tu non ci puoi fare nulla ( a meno che non decidi di mettere altre resistenze sotto al piatto per compensare questi punti) e quindi una volta che sai che il centro è 20° più alto dei bordi... sempre così sarà..... ovvero non capisco il motivo di un monitoraggio continuo puoi solo cambiare piatto o mettere altre resistente in punti "strategici" ed anche in quest'ultimo caso una volta messe avrai presumibilmente il piatto sempre omogeneo e quindi di nuovo cade la necessità di una verifica continua.
Invece io vorrei trovare uno strumento per leggere (e quindi comportarmi di conseguenza) quale temperatura raggiunge veramente il piatto del mio vetro...  e ti dirò alla fine anche questa info non è utile.... cioè se ho capito che la mia stampante settata a 90 mi fa stampare bene l'ASA, a me che in realtà il vetro sia a 80° o 100° tutto sommato importa poco....

O sbaglio ?

  • Like 1
Link al commento
Condividi su altri siti

 

@Marcott, ipotizza di avere una sola resistenza e di stampare 2 oggetti uno con una base molto ampia e uno molto piu piccola, il primo al centro(e centrato sul termistore) ed il secondo quasi sul perimetro, se il termistore è al centro dopo un certo periodo il primo oggetto funge da isolante mantenedo un calore maggiore rispetto al punto del secondo oggetto. Bene a questo punto diciamo che bilanciando la temperatura rispetto al centro la temperatura cala sul perimetro e il secondo pezzo può presentare problematiche di distaccamento(ed altri fenomeni non voluti) in quanto non raggiunge la temp minima scelta. 
Ok a questo punto ipotiziamo di avere  2 termistori uno al centro e uno sul perimetro; posso scegliere a vista quale leggere per scegliere la temperatura, così da raggiungere la temperatura minima in entrambi i termistori, se il centro è piu caldo scelgo quello sul perimetro. Ovvio che ci sono dei difetti (per esempio se la differenza è eccessiva  tra le temperature miglioro al perimetro ma peggioro al centro; se però la differenza non è eccessiva allora evito i problemi di basse temperature in zone periferiche, mantenedo una temperatura piu alta ma accettabile al centro),ed è per questo che stavo pensando di separare la sezione riscaldante in più parti così da spegnere per esempio il centro  fino a raggiungere e mantenere la temperatura o minima o pari a quella dei termistori adiacenti. (PS se metto più resistenze necessito di almeno un termistore per resistenza altrimenti le si guida a sentimento, e il monitoraggio è necessario per ottenere il piatto di temp uniforme)

Sarebbe interessante produrre manualmente il piatto integrando  X relè collegati alla resistenza sviluppando un alta quantità di moduli che dividono il piatto, ma devo rifletterci.. tutta teoria.{tante sezioni quanti i pixel di uno schermo, ahahah pateticamente teorico, e dove li metto tutti quei relè XD)Però sarebbe bello se in un fururo vendessero piatti con 50 sezioni regolabili.

Per vedere la temperatura effettiva io mi sono fatto uno schemino settando il piatto(aspettando un bel po) e misurandolo con un termometro a infrarossi, sicuramente un termistore esattamente sulla superficie di stampa sarebbe il top, ma poco praticabile in quanto dovresti poterci stampare sopra. E ti dirò non è neanche vero che sia irrilevante in quanto dovresti prima fare andare in temperatura il piatto e poi mantenerlo per un po di tempo prima di stampare, altrimenti come succede praticamente a tutti la stampa parte perchè il termistore è in temperatura, ma in realtà la superficie di stampa è differente (ip termistore 90° piatto 80°, e che la temp del piatto sia perfetta) ; dopo diciamo 20-30min il termistore è ancora in temperatura ma la superficie è cambiata(ip termistore 90° piatto 88°, e ora la temp del piatto comporta un certo tipo di fenomeno negativo) . Però oltre a mettere i termistori più vicino alla sup di stampa non saprei come migliorare questa effetto se non con l' esperienza; ad esempio se setto 85° , magari i fenomeni non si presentano perchè raggiungo 83° ma devo aspettare che vada in temp la superficie perchè a 75°, temp di start quando il sensore segna 85°, magari non attacca.
 

@Alep Ci ho pensato anche io di usare un altro arduino, però devo ammettere che non mi sono informato su come far comunicare arduino al pc di controllo, per quello sn un po restio ad usarlo temo di infilarmi in un ginepraio, mentre col raspberry è piuttosto semplice essendo effetivamente un computer. 
Interessantissimo il modulo che mi hai indicanto devo approfondire(mi sorge spontaneo riflettere sul effettivo numero di pin  che voglio usare e quindi di termistori che posso gestire).
E devo anche approfondire l'inerzia termica ( di cui sono all'oscuro), anche se per come lo ho ipotizzato, il piatto, non credo che subisca repentini ed eccessivi cambi di temperatura dove viene deposto il materiale (posso sbagliarmi e per questo studierò un po l'argomento).
Avevo pensato ad un piatto del genere(dal basso verso l'alto):
1°Strato Lana di roccia 2-3cm
2°Strato Pad siliconico (uno o più adiacenti)
3°Strato lastra di alluminio di più di 4mm (devo fare qualche calcolo) con incisione sul top per posizionare i termistori (le incisioni fatte con criterio per evitare di creare problemi di dispersione)
4°Strato Vetro Ceramico di circa 5mm(anche su questo il dimensionamento è a occhio al momento).

cosi ottengo un strato isolante prima, poi riscaldate, uno dispersivo/uniformante, uno isolante su cui la stampa non è difficoltosa { ho fatto molte prove e mi trovo bene col vetro ceramico, perchè con le alternativa mi rompo le scatole, il kapton va da dio ma quando stacco gli oggetti delle volte si rompe e sinceramente ci perdo un sacco di tempo per ottenere una superficie perfetta.
Stavo anche riflettendo sull incidere il vetro per infilare i termistori ma credo che creerei piu problemi di quanti non ne risolva (meccanici sopratutto, al distaccamento del pezzo).
Con questo numero e spessore di strati dovrei aver aumentato il tempo di riscaldamento (purtroppo), ma dovrei anche mitigato effetti venefici di un eccessivi cambi di temperatura.

Controllo lineare, decisamente al di sopra delle mie capacità attuali; sono piu un informatico che un elettronico ed oltre ai relè diodi resistenze e qualche transistor non vado, per quello che cercavo un modulo che per esempio mi passase un volore numerico relativo alla resistenza e io tramite una tabella potessi ipotizzare una temperatura ragionevolmente coerente raffrontando gli estremi dell intervallo in cui si trova il valore; con un solo pin di comunicazione sarebbe stato il massimo (come il KY-015, con la possibilità di usare i termistori), in quanto ne avrei potuti usare davvero molti con un solo raspberry.

Link al commento
Condividi su altri siti

Io sarò sincero sono convinto che uno studio del genere sia una perdita di tempo perchè per la mia modesta esperienza la stabilità della temperatura del piatto non è un elemento cosi critico ma l'idea è comunque interessante per cui ti darò in ogni caso tutto l'aiuto che posso darti 

Per prima cosa il circuito che ti ho segnalato, è in grado di leggere 8 sensori con la stessa precisione con cui li legge Arduino ossia 10 bit, Puoi usare più di un circuito in parallelo. anche 7 o 8 per assurdo, semplicemente selezionando dal Raspberry il cs (chip select) di ogni circuito.

Il raspberry invece dispone di 26 pin di input output (ossia quelli che servirebbero a te uno per ogni resistenza meno quelli per leggere le temperature) ma di questi una buona parte sono utilizzati ma con un pò di riconfigurazione del raspberry in parte liberabili.

Quelli direttamente utilizzabili se non erro sono 16 (di raspberry non ne so molto)

Se ti occorressero più uscite ti consiglierei l'olimex olinuxino a20 micro che ha 160 input output (non tutti utilizzabili) almeno 60 sono disponibili subito se non ricordo male e gli altri in parte liberabili. Questo è un prodotto che conosco molto bene, ne avrò comperato almeno una 50ina per un lavoro che ho fatto e direi che gli ho tirato fuori l'anima. 

Stai attento all'aumento di peso del piatto, cosi come lo stai configurando tu quasi certamente occorrono 2 motori per muoverlo adeguatamente.

 

Link al commento
Condividi su altri siti

Passo a comprare qualche pezzo per fare dei test pensavo a questo per il raspi dovrebbe andare bene, anche se devo ben capire precisamente come funziona e vedo 8 canali analogici, non sono 9  ma penso che siano piu che sufficienti.
olinuxino a20 micro è davvero notevole se uno avesse la voglia potrebbe gestirci tutta la stampante, non ne conoscevo l'esistenza ed è anche piuttosto economico per quello che fa.
Il piatto si muove solo sull'asse Z su due viti a sfera centrate ognuna su uno di 2 lati opposti, ognuno con un nema 17 (però essendo da 16mm di diametro devo ragionare se mi serve un motore nema-23 o basta il 17)
Devo essere sincero, sul piano pratico anche io ho dubbi se questo discorso sia utile o meno; ma ammetto che su piani da 20cm di lato è aria fritta; però su piani da 40/50cm penso che possa avere un qualche senso. Sicuramente fare anche un semplice prototipo con  3 resistenze e 5 resistori seppur al più inutile mi darebbe soddisfazione.quindi credo che lo farò, dopo aver studiato una soluzione ipotetica un po più complicata e valutandone la fattibilità .
@Alep se mi confermi che non ho scelto un oggetto a caso , passo all acquisto (l'ho scelto perchè mi sembra molto Pratico nell'utilizzo fisico lasciando liberi i GPIO). E davvero grazie per la tua esperienza, in una parola illuminante. PS se non erro non avendoli mai usati tutti i pin del raspberry 2,3 utilizzabili dovrebbero essere 26= 40-(5v,3v,GND,ID_SC)

Link al commento
Condividi su altri siti

La schedina va bene ha appunto 8 canali analogici a 10 bit (la risoluzione di arduino) e rende disponibili facilmente 15 ouput, ti consiglierei contestualmente di comperare i connettori (magari con pezzetto di filo) tipo quelli che ti danno in dotazione o collegarci poi qualcosa diventa difficile. Hai il link nella stessa pagina dello schedino subito prima delle foto e ti consiglierei anche di scrivergli per assicurarti un unica spedizione, quella dello schedino ha la consegna che di solito avviene in 25 giorni, i cavetti in 45, se li avvisi sei certo che ti mandano tutto in 25 gg, cosi gli richiedi la documentazione che non guasta mai (sperando che non sia in cinese hihihihii). Con i cinesi non si sa mai meglio evitare di rischiare che facciano due spedizioni con tempi cosi diversi,

Per alcuni pin di output il raspberry propone un utilizzo già impostato, questo parlando del pi3 ed i numeri di sotto si riferiscono ai GPIO

2 per interfaccia seriale, 14 15

2 per I2C, 2 3

5 per interfaccia spi  7 8 9 10 11 (il 7 serve nel caso si debbano controllare due dispositivi)

ma se non utilizzati col tipo di interfaccia predisposto parte di questi si possono rendere disponibili

se non erro i pin direttamente disponibili senza dover riconfigurare niente dovrebbero essere questi non barrati, 17 pin

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 

che per te sono più che sufficienti, ma se ti occorressero più pin si dovrebbero poter liberare solo il 3,5 ed il 7

La spi la usi per colloquiare con l'integrato analogico (4 pin e questi quindi non sono certamente utilizzabili per altro) mentre (ricordo che io non ho esperienza diretta sul raspberry) dubito che la seriale  sia liberabile (non so infatti se sia utilizzata anche per il debug di avvio, linux ama molto avere una seriale per questa funzione) mentre l'I2c lo dovrebbe essere quindi dovresti poter recuperare altri 3 pin massimo ed arrivare a 20 pin.

Con la schedina che hai scelto c'è qualche discrasia sulla numerazione che ho rilevato io nel senso che la schedina propone come disponibili i seguenti pin

4 5 6 12 13 14 15 16 10 20 21 25 26 27 

ossia 15 pin più una presa per la seriale (marcata con U) ed un per l'i2c (marcata con I). Probabilmente la scelta di limitare a 15 i/o che sono tanti è solo una scelta costruttiva.

Fondamentalmente è la stessa situazione di prima e la differenza di numerazione può essere semplicemente frutto di una diversa interpretazione o configurazione del Raspberry e comunque è un prodotto più che collaudato e costruito da una grossa casa specializzata in questo tipo di prodotti e se guardi sotto la scheda le uscite sono tutte dotate di transitor che rende le uscite più idonee a pilotare direttamente dei relays 

Se hai già due motori probabilmente muovi il piatto senza problemi anche con i 17, poi naturalmente dipende dalla dimensione che pensi di adottare di piatto.

 

Link al commento
Condividi su altri siti

Si, ho già i 2 nema 17 che attualmente tengo nel cassetto per eventuali ricambi della mia stampante in uso, poi se vedo che non ce la fanno , pensavo di lasciare degli spessori aumentati con i nema17 che se rimossi mi permettono di usare i 23 senza modifiche; il piatto io l ho progettatto come un 60x60 con 50x50 di sezione riscaldante {ho anche un progetto alternativo scalato di 10 cm ovvero 50x50 e 40x40 riscaldato,tutti e due usano come perimetro profilati 2020(vetro,Aluminio avvitati sopra; isolante e pad dentro), sceglierò alla fine del progetto quando avrò tutto ben visibile sotto al naso}, 

Sei stato davvero preciso, non so come ringraziarti; e sicuramente farò tesoro di ogni consiglio. (anche volendo no avrei più nulla da chiederti sull'argomento, mi è successo ben poche volte su un forum)

grazie!:thumbsup:

Link al commento
Condividi su altri siti

Partecipa alla conversazione

Puoi pubblicare ora e registrarti più tardi. Se hai un account, accedi ora per pubblicarlo con il tuo account.

Ospite
Rispondi a questa discussione...

×   Hai incollato il contenuto con la formattazione.   Rimuovere la formattazione

  Sono consentiti solo 75 emoticon max.

×   Il tuo collegamento è stato incorporato automaticamente.   Mostra come un collegamento

×   Il tuo contenuto precedente è stato ripristinato.   Pulisci editor

×   Non puoi incollare le immagini direttamente. Carica o inserisci immagini dall'URL.

×
×
  • Crea Nuovo...