Taula de continguts:
Vídeo: Sensor de temperatura de bricolatge amb un díode: 3 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Així doncs, com un dels fets sobre les unions PN és que la seva caiguda de tensió directa canvia segons el corrent de pas i la temperatura de la unió, ho farem servir per fabricar un senzill sensor de temperatura barat.
Aquesta configuració s'utilitza habitualment en molts circuits integrats per mesurar la seva temperatura interna i molts sensors de temperatura com el famós LM35 que es basa en aquesta propietat.
Simplement, la caiguda de tensió directa d’un díode (que és una única unió PN) canvia a mesura que canvia la quantitat de corrent que el travessa, també a mesura que canvia la temperatura del díode, la caiguda de voltatge canviarà (A mesura que augmenta la temperatura, la la caiguda disminueix en un valor de (1,0 milliVolts a 2,0 milliVolts per a díodes de silici i 2,5 milliVolts per a díodes de germani).
Així, passant un corrent constant pel díode, la caiguda de tensió directa ara només hauria de variar segons la temperatura del díode. Només cal que mesurem la tensió directa del díode, apliqueu algunes equacions simples i voilà, aquí teniu el sensor de temperatura.
Subministraments
1 - 1n4007 díode # 12 - resistència 1 Kohm # 13 - placa Arduino
Pas 1: diagrama del circuit
Com podeu veure a l'esquema, és molt senzill. en connectar el díode en sèrie amb una resistència limitant el corrent i una font de tensió estable, podem obtenir una font de corrent constant bruta, de manera que la tensió mesurada a través del díode només variarà a causa del canvi de temperatura. Assegureu-vos que el valor de la resistència no sigui massa baix que passa molt de corrent pel díode i produeix un autocalentament notable al díode, tampoc és una resistència molt alta, de manera que el pas de corrent no és suficient per mantenir una relació lineal entre la tensió directa i la temperatura.
una resistència d'1 kilo Ohm amb una font de 5 V hauria de donar lloc a un corrent de díode de 4 milliAmpere que és un valor suficient per a aquest propòsit. I (díode) = VCC / (Rseries + Rdiode)
Pas 2: Codificació
Hem de tenir en compte que hi ha alguns valors a modificar en el codi per obtenir els millors resultats com:
1 - VCC_Voltage: com que el valor analogRead () depèn del VCC del xip ATmega, hem d'afegir-lo a l'equació després de mesurar-lo a la placa arduino.
2 - V_OLD_0_C: la caiguda de tensió directa del díode utilitzat a un corrent de 4 mA i una temperatura de 0 Celsius
3 - Temperatura_Coeficient: el gradient de temperatura del díode (millor obtenir del full de dades) o el podeu mesurar mitjançant aquesta equació: Vnew - Vold = K (Tnew - Told)
on:
Vnew = caiguda de tensió acabada de mesurar després d'escalfar el díode
Vold = caiguda de tensió mesurada a alguna temperatura ambient
Tnew = la temperatura a la qual es va escalfar el díode
Dit = temperatura vella a la qual es mesurava Vold
K = Temperatura_Coeficient (un valor negatiu que varia entre -1,0 a -2,5 milliVolts) Finalment, ara podeu penjar el codi i obtenir els resultats de temperatura.
#define Sens_Pin A0 // PA0 per a la placa STM32F103C8
doble V_OLD_0_C = 690,0; // 690 mV Tensió directa a 0 Celsius a 4 mA de corrent de prova
doble V_NEW = 0; // Nova tensió directa a temperatura ambient a 4 mA corrent de prova doble temperatura = 0,0; // Temperatura calculada a l’habitació doble Temperatura_Coeficient = -1,6; //-1,6 mV de canvi per grau Celsius (-2,5 per als díodes de germani), millor obtenir del full de dades del díode doble VCC_Voltage = 5010,0; // Voltatge present al carril de 5V de l’arduino en milliVolts (necessari per a una millor precisió) (3300,0 per a stm32)
configuració nul·la () {
// posa el teu codi de configuració aquí, per executar-lo una vegada: pinMode (Sens_Pin, INPUT); Serial.begin (9600); }
bucle buit () {
// poseu aquí el vostre codi principal per executar-lo repetidament: V_NEW = analogRead (Sens_Pin) * VCC_Voltage / 1024.0; // divideix per 4.0 si utilitzeu una temperatura ADC de 12 bits = ((V_NEW - V_OLD_0_C) / Temperature_Coefficient);
Serial.print ("Temp =");
Serial.print (temperatura); Serial.println ("C");
retard (500);
}
Pas 3: Obtenir millors valors
Crec que és aconsellable tenir un dispositiu de mesura de temperatura de confiança al vostre costat quan feu aquest projecte.
podeu veure que hi ha un error notable en les lectures que pot arribar a 3 o 4 graus centígrads, així que d’on prové aquest error?
1: potser haureu de modificar les variables esmentades al pas anterior
2 - la resolució ADC de l'arduino és inferior a la que necessitem per detectar la petita diferència de tensió
3 - La referència de tensió de l'arduino (5V) és massa alta per a aquest petit canvi de tensió a través del díode
Per tant, si utilitzeu aquesta configuració com a sensor de temperatura, haureu de tenir en compte que, tot i que és barat i útil, no és precís, però us pot donar una bona idea sobre la temperatura del vostre sistema, ja sigui PCB o muntat al motor en funcionament, etc.
Aquesta instrucció està pensada per utilitzar la menor quantitat de components possible, però si voleu obtenir els resultats més precisos d'aquesta idea, podeu fer alguns canvis:
1 - afegiu algunes amplificacions i etapes de filtratge utilitzant amplificadors operatius com en aquest enllaç 2 - utilitzeu un controlador de referència analògic intern inferior com les plaques STM32F103C8 amb voltatge de referència analògic de 3,3 volts (vegeu el punt 4) 3 - utilitzeu la referència analògica interna d’1,1 V a la arduino, però tingueu en compte que no podeu connectar més d'1,1 volts a cap dels pins analògics arduino.
podeu afegir aquesta línia a la funció de configuració:
analogReference (INTERN);
4 - Utilitzeu un microcontrolador que tingui una resolució ADC més alta com STM32F103C8 que tingui una resolució ADC de 12 bits. Així, en poques paraules, aquesta configuració basada en arduino pot proporcionar una bona visió general de la temperatura del vostre sistema, però uns resultats no tan precisos (aproximadament 4,88 mV / lectura)
la configuració STM32F103C8 us donarà un resultat bastant precís ja que té un ADC de 12 bits més alt i un valor de referència analògic de 3,3 V inferior (aproximadament 0,8 mV / lectura)
Bé, ja està !!: D
Recomanat:
Lent macro de bricolatge amb AF (diferent a la resta de lents macro de bricolatge): 4 passos (amb imatges)
Lents macro de bricolatge amb AF (diferents a la resta de lents macro de bricolatge): he vist molta gent fabricant objectius macro amb un objectiu de kit estàndard (normalment de 18 a 55 mm). La majoria són objectius que només s’enganxen a la càmera cap enrere o s’elimina l’element frontal. Hi ha desavantatges per a aquestes dues opcions. Per muntar l'objectiu
Sensor de respiració de bricolatge amb Arduino (sensor d'estirament de punt conductor): 7 passos (amb imatges)
Sensor de respiració de bricolatge amb Arduino (sensor d’estirament de punt conductor): aquest sensor de bricolatge adoptarà la forma d’un sensor d’estirament de punt conductor. S'embolicarà al voltant del pit / estómac i, quan el pit / l'estómac s'expandeixi i es contraurà, el sensor i, en conseqüència, les dades d'entrada que s'alimenten a l'Arduino. Tan
Controlador de díode làser de bricolatge -- Font de corrent constant: 6 passos (amb imatges)
Controlador de díode làser de bricolatge || Font de corrent constant: en aquest projecte us mostraré com vaig extreure un díode làser d’una gravadora de DVD que hauria de tenir el poder d’encendre una coincidència. Per poder alimentar el díode correctament, també demostraré com construeixo una font de corrent constant que proporciona un preci
Extintor de bricolatge amb sensor d’humitat i temperatura (Arduino UNO): 11 passos
Extintor de bricolatge amb sensor d’humitat i temperatura (Arduino UNO): aquest projecte ha estat dissenyat per a ser utilitzat per qualsevol persona de casa o empresa com a sensor de temperatura i humitat que es mostra en una pantalla LCD i un sensor de flama emparellat amb un brunzidor i una bomba d’aigua per incendi en cas d’emergència
Sensor de temperatura de bricolatge amb Arduino i LM 35 Simple: 5 passos
Sensor de temperatura de bricolatge mitjançant Arduino i LM 35 Senzill: Hola amics, Avui construirem un circuit de sensor de mesura de temperatura al voltant del microcontrolador Arduino UNO mitjançant un sensor LM35. Així que sense perdre el temps comencem