Мазмуну:

Термохромдук температура жана нымдуулук дисплейи - PCB версиясы: 6 кадам (сүрөттөр менен)
Термохромдук температура жана нымдуулук дисплейи - PCB версиясы: 6 кадам (сүрөттөр менен)

Video: Термохромдук температура жана нымдуулук дисплейи - PCB версиясы: 6 кадам (сүрөттөр менен)

Video: Термохромдук температура жана нымдуулук дисплейи - PCB версиясы: 6 кадам (сүрөттөр менен)
Video: STC-3028 Thermostat with Heat and Humidity Fully Explained and demonstrated 2024, Июнь
Anonim
Image
Image
Жылыткыч PCB долбоорлоо
Жылыткыч PCB долбоорлоо

Бир аз мурун "Thermochromic Temperature & Humidity Display" долбоору ишке ашкан, анда мен жез табактан 7 сегменттүү дисплей кургам, алар пельтиер элементтери менен ысытылган/муздаган. Жез плиталар температурасы менен түсүн өзгөрткөн термохромдук фольга менен капталган. Бул долбоор дисплейдин кичирээк версиясы, ал пельтерлердин ордуна комментарийлер бөлүмүндө DmitriyU2 колдонуучусу сунуштаган жылытуу издери бар ПХБны колдонот. ПХБ жылыткычын колдонуу бир топ жөнөкөй жана компакт дизайнга мүмкүндүк берет. Жылытуу дагы эффективдүү, бул түстүн тез өзгөрүшүнө алып келет.

Дисплей кантип иштээрин көрүү үчүн видеону көрүңүз.

Менде бир нече ПХБ калгандыктан, мен дагы бул дисплейди Tindie дүкөнүмдө сатам.

Жабдуулар

  • Жылытуучу PCB (Gerber файлдары үчүн менин GitHub -ды караңыз)
  • PCB көзөмөлдөө (Gerber файлдары жана BoM үчүн GitHubымды караңыз)
  • DHT22 сенсору (мис. Ebay.de)
  • 3D басылган стенд (stl файлы үчүн GitHubымды караңыз)
  • Thermochromic Adheive Sheet, 150x150 мм, 30-35 ° C (SFXC)
  • M2x6 болт + гайка
  • 2x пин баш 1x9, 2.54 мм (мис. Mouser.com)
  • 2x SMD тактасынын туташтыргычы 1x9, 2.54 мм (мис. Mouser.com)

1 -кадам: Жылыткыч PCB долбоорлоо

Жылыткыч PCB долбоорлоо
Жылыткыч PCB долбоорлоо
Жылыткыч PCB долбоорлоо
Жылыткыч PCB долбоорлоо

Жылытуучу ПХБ Бүркүттө иштелип чыккан. ПХБ өлчөмдөрү 100х150 мм, анткени 150х150 мм мен колдонгон термохромикалык баракчалардын стандарттык өлчөмү. Башында мен Fusion360 сегменттеринин эскизин түздүм, ал dxf катары сакталып, андан кийин Eagleге киргизилген. Сегменттердин ортосунда боштуктар бар жана алар кичинекей көпүрөлөр менен гана байланышкан. Бул айрым сегменттердин жылуулук изоляциясын жакшыртат, ошондуктан тезирээк жылытууга мүмкүндүк берет жана "жылуулук кесилишин" азайтат. Сегменттер Бүркүттөгү меандр куралын колдонуу менен үстүңкү катмардагы (кызыл түстө көрүнгөн) ПХБ издери менен толтурулган. Мен тректин туурасын жана 6 миль аралыкты колдондум, бул PCBWay тарабынан кошумча чыгымдарсыз өндүрүлө турган минималдуу өлчөм. Ар бир из эки виастын ортосуна бурулат, алар түбүнө катмары аркылуу туташат (көк түстө көрүнөт) 32 миль издерин колдонуу менен. Бардык сегменттердин жалпылыгы бар.

Белгилүү бир температуранын көтөрүлүшү үчүн керектүү болгон жылытуу кубаттуулугу үчүн мен эч кандай эсептөө жасаган эмесмин жана сегменттин күтүлгөн каршылыгын эсептеген эмесмин. Мен жылытуу кубаттуулугун ар кандай жөндөө PWM сигналын колдонуу менен өзгөрүшү мүмкүн экенин түшүндүм. Мен кийинчерээк сегменттер 5V USB порту аркылуу ~ 5% милдети циклди колдонуп, тез эле ысый турганын байкадым. Бардык 17 сегменттин жылытуусундагы жалпы ток болжол менен 1,6 А.

Бардык тактай файлдарын менин GitHub -дан тапса болот.

2 -кадам: Контроллер PCB долбоорлоо

Контроллер PCB долбоорлоо
Контроллер PCB долбоорлоо
Контроллер PCB долбоорлоо
Контроллер PCB долбоорлоо
Контроллер PCB долбоорлоо
Контроллер PCB долбоорлоо

PCB жылыткычын башкаруу үчүн мен GlassCube долбоорумда колдонгон SAMD21E18 MCUну тандайм. Бул микроконтроллерде 17 жылыткычтын бардык сегменттерин көзөмөлдөө жана DHT22 сенсорун окуу үчүн жетиштүү төөнөгүчтөр бар. Ал ошондой эле жергиликтүү USBге ээ жана Adafruitтин CircuitPython жүктөгүчүнүн жардамы менен жаркырайт. Микро USB туташтыргычы электр менен камсыздоо жана MCUну программалоо үчүн колдонулган. Жылыткыч сегменттери 9 кош каналдуу MOSFET (SP8K24FRATB) тарабынан башкарылат. Булар 6 А чейин иштей алат жана дарбазанын босогосун <2,5 В түзөт, андыктан аларды MCUдан 3.3 В логикалык сигнал менен которсо болот. Мен бул теманы жылыткычты башкаруу схемасын түзүүгө жардам берүү үчүн абдан пайдалуу деп таптым.

Мен PCBWayден PCBлерди жана электрондук бөлүктөрдү Mouserден өзүнчө заказ кылдым жана чыгымдарды үнөмдөө үчүн ПХБларды өзүм чогулттум. Мен тетиктерди колго салып, инфракызыл IC жылыткычы менен ширетип койгом. Бирок, салыштырмалуу көп өлчөмдөгү компоненттердин жана керектүү кайра иштөөнүн айынан бул абдан түйшүктүү болду жана мен келечекте монтаждоо кызматын колдонууну ойлонуп жатам.

Дагы тактай файлдарын менин GitHub -дан тапса болот. Ал жерден микро USB ордуна USB-C туташтыргычын колдонгон ПХБнын жакшыртылган версиясын таба аласыз. Мен ошондой эле DHT22 сенсорунун тешиктеринин аралыгын оңдоп, жүктөгүчтү J-Link аркылуу жеңилирээк күйгүзүү үчүн 10-пин туташтыргычын коштум.

3 -кадам: CircuitPython жүктөгүч

Башында мен SAMD21ди Adafruit's Trinket M0 негизинде UF2 жүктөгүч менен жаркырадым. Жүктөгүчтү бир аз өзгөртүүгө туура келди, анткени Trinketте мен жылытуу үчүн колдонгон казыктардын бирине туташкан LED бар. Болбосо бул пин жүктөлгөндөн кийин кыска убакытка чейин бийик болуп, туташкан сегментти толук кубаты менен жылытат. Жүктөгүчтү жаркылдатуу J-Linkти MCUга SWD жана SWC порттору аркылуу туташтыруу аркылуу жасалат. Бардык процесс Adafruit веб -сайтында кеңири сүрөттөлгөн. Жүктөгүчтү орноткондон кийин MCU микро USB порту аркылуу туташканда флешка катары таанылат жана кийинки жүктөгүчтөр UF2 файлын дискте сүйрөп орнотсо болот.

Кийинки кадам катары мен CircuitPython жүктөгүчүн орноткум келди. Бирок, менин тактамда Trinket M0до туташпаган көптөгөн төөнөгүчтөр колдонулгандыктан, мен алгач тактанын конфигурациясын бир аз өзгөртүүгө туура келди. Дагы Adafruit веб -сайтында бул үчүн чоң окуу куралы бар. Негизинен, mpconfigboard.h ичинде этибарга алынбаган бир нече казыкты комментарийлеп, анан баарын кайра чогултуу керек. Ыңгайлаштырылган жүктөгүч файлдары менин GitHubымда да бар.

4 -кадам: CircuitPython коду

CircuitPython коду
CircuitPython коду
CircuitPython коду
CircuitPython коду

CircuitPython жүктөгүч орнотулгандан кийин, жөн эле USB флэш -дискке кодуңузду code.py файлы катары сактоо менен тактайга программалай аласыз. Мен жазган код DHT22 сенсорун окуйт, андан кийин тиешелүү сегменттерди жылытуу менен температураны жана нымдуулукту кезектешип көрсөтөт. Жогоруда айтылгандай, жылытуу PWM сигналы менен MOSFETтерди которуу жолу менен жүргүзүлөт. Төөнөгүчтөрдү PWM чыгуулары катары конфигурациялоонун ордуна, мен кечигүүнү колдонуп, коддо 100 Гц которуу жыштыгы аз "жасалма" PWM сигналын түздүм. Учурдагы керектөөнү андан ары төмөндөтүү үчүн, мен сегменттерди бир эле учурда эмес, жогоруда схемада көрсөтүлгөндөй удаалаш күйгүзөм. Ошондой эле сегменттерди жылытууну бир калыпта кылуу үчүн бир нече амалдар бар. Биринчиден, кызмат цикли ар бир сегмент үчүн бир аз башкача. Мисалы, "%" белгисинин сызыгы, анын каршылыгы жогору болгондуктан, чоңураак кызмат циклине муктаж. Ошондой эле, мен башка сегменттер менен курчалган сегменттерди азыраак жылытуу керек экенин түшүндүм. Мындан тышкары, эгерде сегмент мурунку "иштөөдө" жылытылган болсо, анда кийинки циклде кыскартылышы мүмкүн. Акыр -аягы, жылытуу жана муздатуу убактысы ыңгайлуу DHT22 сенсору менен өлчөнүүчү чөйрөнүн температурасына ылайыкташтырылган. Акылга сыярлык убакыттын константаларын табуу үчүн мен дисплейди климаттын камерасында калибрледим, ага бактыга жараша жумушта жетүү мүмкүнчүлүгү бар.

Толук кодду менин GitHub -дан таба аласыз.

5 -кадам: Ассамблея

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея

Дисплейдин курулушу өтө оңой жана аны төмөнкү кадамдарга бөлүүгө болот

  1. Жылытуучу ПХБга ургаачы аялдын пин баштары
  2. Жылытуучу ПХБга өз алдынча жабышуучу термохромдук баракты тиркеңиз
  3. Пластикалык контроллерди текшерүүчү DHT22 сенсору жана M2 болт жана гайка менен бекитүү
  4. Контролеру PCB үчүн Solder эркек пин баштары
  5. ПХБны туташтырыңыз жана 3D басылган стендге коюңуз

6 -кадам: Долбоор аяктады

Долбоор аяктады
Долбоор аяктады
Долбоор аяктады
Долбоор аяктады

Мен азыр биздин бөлмөдө тынымсыз иштеп жаткан даяр дипломго абдан кубанычтамын. Менин баштапкы термохромикалык дисплейимдин кичирээк, жөнөкөй версиясын чыгаруу максаты сөзсүз ишке ашты жана мен сунуш үчүн дагы бир жолу DmitriyU2 колдонуучусуна ыраазычылык билдиргим келет. Долбоор мага Eagleдеги PCB дизайн көндүмдөрүмдү жакшыртууга жардам берди жана мен MOSFETтерди коммутатор катары колдонуу жөнүндө билдим.

ПКБ үчүн жакшы корпус жасоо менен дизайнды андан ары өркүндөтсө болот. Мен дагы ушул эле стилде санариптик саат жасоону ойлонуп жатам.

Эгерде сизге бул проект жакса, сиз аны кайра жасай аласыз же менин Tindie дүкөнүнөн сатып алсаңыз болот. Ошондой эле PCB дизайн сынагында мага добуш берүүнү карап көрүңүз.

PCB Дизайн Чакырык
PCB Дизайн Чакырык
PCB Дизайн Чакырык
PCB Дизайн Чакырык

PCB Дизайн Чакырыктар боюнча Соттор сыйлыгы

Сунушталууда: