Taula de continguts:

Pantalla termocròmica de temperatura i humitat - Versió PCB: 6 passos (amb imatges)
Pantalla termocròmica de temperatura i humitat - Versió PCB: 6 passos (amb imatges)

Vídeo: Pantalla termocròmica de temperatura i humitat - Versió PCB: 6 passos (amb imatges)

Vídeo: Pantalla termocròmica de temperatura i humitat - Versió PCB: 6 passos (amb imatges)
Vídeo: Bitcoin a Live - ARDUINO!! 2024, Desembre
Anonim
Image
Image
Disseny del PCB de l'escalfador
Disseny del PCB de l'escalfador

Fa un temps vaig fer un projecte anomenat Thermochromic Temperature & Humidity Display on vaig construir una pantalla de 7 segments a partir de plaques de coure que eren escalfades / refrigerades per elements més grollers. Les plaques de coure es van cobrir amb una làmina termocròmica que canvia de color amb la temperatura. Aquest projecte és una versió més petita de la pantalla que en lloc de pelers utilitza un PCB amb traces de calefacció tal com suggereix l’usuari DmitriyU2 a la secció de comentaris. L’ús d’un escalfador de PCB permet un disseny molt més senzill i compacte. La calefacció també és més eficient, cosa que comporta un canvi de color més ràpid.

Mireu el vídeo per veure com funciona la pantalla.

Com que em quedaven uns quants PCB, també estic venent aquesta pantalla a la meva botiga Tindie.

Subministraments

  • Heater PCB (vegeu el meu GitHub per a fitxers Gerber)
  • Control PCB (vegeu el meu GitHub per a fitxers Gerber i BoM)
  • Sensor DHT22 (per exemple, ebay.de)
  • Suport imprès en 3D (vegeu el fitxer stl del meu GitHub)
  • Full adhesiu termocromàtic, 150x150 mm, 30-35 ° C (SFXC)
  • Pernell M2x6 + femella
  • Capçalera de 2 pins 1x9, 2,54 mm (per exemple, mouser.com)
  • 2x connector de placa SMD 1x9, 2,54 mm (per exemple, mouser.com)

Pas 1: dissenyar el PCB de l'escalfador

Disseny del PCB de l'escalfador
Disseny del PCB de l'escalfador
Disseny del PCB de l'escalfador
Disseny del PCB de l'escalfador

El PCB de l'escalfador va ser dissenyat a Eagle. Les dimensions del PCB són de 100x150 mm, ja que 150x150 mm és la mida estàndard de les làmines termocròmiques que he utilitzat. Al principi vaig fer un esbós dels segments a Fusion360 que es va desar com a dxf i després es va importar a Eagle. Els segments tenen buits fresats entre ells i només estan connectats per petits ponts. Això millora l'aïllament tèrmic dels segments individuals i, per tant, permet un escalfament més ràpid i redueix la "diafonía tèrmica". Els segments es van omplir amb traces de PCB a la capa superior (vist en vermell) mitjançant l’eina meandre a Eagle. He utilitzat una amplada i un espaiat de pista de 6 mil, que és la mida mínima que pot fabricar PCBWay sense costos addicionals. Cada traça es serpenteja entre dues vies que després es connecten als passadors mitjançant la capa inferior (vista en blau) mitjançant traces de 32 mil. Tots els segments comparteixen una base comuna.

No he fet cap càlcul de la potència de calefacció necessària per a un augment de temperatura determinat ni he calculat la resistència esperada d’un segment. Vaig pensar que qualsevol ajust de la potència de calefacció es pot fer mitjançant un senyal PWM amb cicle de treball variable. Més tard vaig descobrir que els segments s’escalfen raonablement ràpid quan s’alimenten a través del port USB de 5V mitjançant un cicle de treball del ~ 5%. El corrent total en escalfar els 17 segments és d’uns 1,6 A.

Tots els fitxers de la placa es poden trobar al meu GitHub.

Pas 2: Dissenyar el PCB del controlador

Disseny del PCB del controlador
Disseny del PCB del controlador
Disseny del PCB del controlador
Disseny del PCB del controlador
Disseny del PCB del controlador
Disseny del PCB del controlador

Per controlar l’escalfador de PCB, trio un MCU SAMD21E18 que també he utilitzat en el meu projecte GlassCube. Aquest microcontrolador té prou pins per controlar els 17 segments de la calefacció i llegir el sensor DHT22. També té USB natiu i es pot llançar amb el carregador d’arrencada CircuitPython d’Adafruit. Es va utilitzar un connector micro USB com a font d'alimentació i per programar l'MCU. Els segments de l'escalfador estan controlats per 9 MOSFET de doble canal (SP8K24FRATB). Aquests poden gestionar fins a 6 A i tenen un voltatge de llindar de porta <2,5 V, de manera que poden ser commutats mitjançant el senyal lògic de 3,3 V de la MCU. He trobat aquest fil molt útil per ajudar-me a dissenyar el circuit de control de l’escalfador.

Vaig demanar els PCB a PCBWay i les peces electròniques per separat de Mouser i vaig muntar jo mateix els PCB per estalviar costos. He utilitzat un dispensador de pasta de soldadura que he col·locat les peces a mà i les heu soldat amb un escalfador de circuits infrarojos. Tanmateix, a causa de la quantitat relativament gran de components implicats i de la reelaboració necessària, va ser bastant tediós i estic considerant utilitzar un servei de muntatge en el futur.

Una vegada més, els fitxers del tauler es poden trobar al meu GitHub. Allà podeu trobar una versió millorada del PCB que utilitza un connector USB-C en lloc de micro USB. També vaig corregir l’espaiat dels forats passants del sensor DHT22 i vaig afegir un connector de 10 pins per facilitar el parpelleig del carregador d’arrencada mitjançant J-Link.

Pas 3: CircuitPython Bootloader

Al principi, vaig llançar el SAMD21 amb un carregador d’arrencada UF2 basat en el Trinket M0 d’Adafruit. Es va haver de modificar lleugerament el carregador d’arrencada perquè el Trinket té un LED connectat a un dels pins que faig servir per escalfar. En cas contrari, aquest pin augmentarà durant un curt temps després de l'arrencada i escalfarà el segment connectat amb tota la potència. El flaix del carregador d’arrencada es fa connectant un J-Link a l’MCU mitjançant els ports SWD i SWC. Tot el procés es descriu detalladament al lloc web d’Adafruit. Després d'instal·lar el carregador d'arrencada, la MCU es reconeix com a unitat flash quan es connecta a través del port micro USB i els carregadors d'arrencada posteriors es poden instal·lar simplement arrossegant un fitxer UF2 a la unitat.

Com a pas següent, volia instal·lar un carregador d’arrencada CircuitPython. Tanmateix, com que la meva placa utilitza molts pins que no estan connectats al Trinket M0, primer vaig haver de modificar lleugerament la configuració de la placa. De nou, hi ha un fantàstic tutorial al respecte al lloc web d'Adafruit. Bàsicament, només cal comentar uns quants pins ignorats al mpconfigboard.h i després tornar a compilar-ho tot. Els fitxers personalitzats del carregador d’arrencada també estan disponibles al meu GitHub.

Pas 4: CircuitPython Code

CircuitPython Code
CircuitPython Code
CircuitPython Code
CircuitPython Code

Després d'instal·lar el carregador d'arrencada CircuitPython, podeu programar la placa desant el codi com a fitxer code.py directament a la unitat flash USB. El codi que he escrit llegeix el sensor DHT22 i després mostra alternativament la temperatura i la humitat escalfant els segments corresponents. Com ja s'ha esmentat, la calefacció es fa canviant els MOSFET amb un senyal PWM. En lloc de configurar els pins com a sortides PWM, vaig generar un senyal PWM "fals" amb una freqüència de commutació baixa de 100 Hz al codi mitjançant retards. Per reduir encara més el consum actual, no encenc els segments simultàniament, sinó de manera seqüencial, tal com es mostra a l'esquema anterior. També hi ha alguns trucs per fer més uniforme l'escalfament dels segments. En primer lloc, el cicle de treball és una mica diferent per a cada segment. Per exemple, el guió del signe "%" necessita un cicle de treball molt més gran a causa de la seva major resistència. També he descobert que els segments envoltats de molts altres segments s’han d’escalfar menys. A més, si un segment es va escalfar en la "cursa" anterior, el cicle de treball es pot reduir en la següent. Finalment, el temps de calefacció i refrigeració s’adapta a la temperatura ambient que es mesura convenientment amb el sensor DHT22. Per trobar constants de temps raonables, he calibrat la pantalla en una cambra climàtica a la qual afortunadament tinc accés a la feina.

Podeu trobar el codi complet al meu GitHub.

Pas 5: Muntatge

muntatge
muntatge
muntatge
muntatge
muntatge
muntatge

El muntatge de la pantalla és bastant fàcil i es pot dividir en els passos següents

  1. Capçals de passador femella de soldadura per escalfar PCB
  2. Col·loqueu una làmina termocròmica autoadhesiva al PCB de l'escalfador
  3. Soldeu el sensor DHT22 al PCB del controlador i subjecteu-lo amb pern i femella M2
  4. Capçaleres de soldadura masculines de pin al controlador PCB
  5. Connecteu els dos PCB i col·loqueu-los en un suport imprès en 3D

Pas 6: projecte finalitzat

Projecte finalitzat
Projecte finalitzat
Projecte finalitzat
Projecte finalitzat

Estic molt content amb el joc acabat que ara funciona constantment a la nostra sala d'estar. L’objectiu de fer una versió més petita i senzilla de la meva pantalla termocroma original es va assolir definitivament i voldria agrair una vegada més a l’usuari DmitriyU2 el suggeriment. El projecte també em va ajudar a millorar les meves habilitats de disseny de PCB a Eagle i vaig conèixer l’ús dels MOSFET com a commutadors.

Es podria millorar encara més el disseny fent un bon recinte per als PCB. També estic pensant en fer un rellotge digital amb el mateix estil.

Si t’agrada aquest projecte, només pots refer-lo o comprar-lo a la meva botiga Tindie. Penseu també a votar-me pel repte del disseny de PCB.

Desafiament de disseny de PCB
Desafiament de disseny de PCB
Desafiament de disseny de PCB
Desafiament de disseny de PCB

Premi als jutges al PCB Design Challenge

Recomanat: