فهرست مطالب:

صفحه نمایش دما و رطوبت ترموکرومیک - نسخه PCB: 6 مرحله (همراه با تصاویر)
صفحه نمایش دما و رطوبت ترموکرومیک - نسخه PCB: 6 مرحله (همراه با تصاویر)

تصویری: صفحه نمایش دما و رطوبت ترموکرومیک - نسخه PCB: 6 مرحله (همراه با تصاویر)

تصویری: صفحه نمایش دما و رطوبت ترموکرومیک - نسخه PCB: 6 مرحله (همراه با تصاویر)
تصویری: نمایش دما و رطوبت با استفاده از NODEJS 2024, جولای
Anonim
Image
Image
طراحی PCB بخاری
طراحی PCB بخاری

چندی پیش طرحی به نام Thermochromic Temperature & Humidity Display (صفحه نمایش دما و رطوبت ترموکرومیک) انجام داد که در آن من یک صفحه نمایش 7 قسمتی از صفحات مسی که توسط عناصر peltier گرم یا سرد می شد ، ساختم. صفحات مسی با یک فویل ترموکرومیک پوشانده شده بود که با تغییر دما تغییر رنگ می دهد. این پروژه نسخه کوچکتری از صفحه نمایش است که به جای peltiers از PCB با آثار حرارتی استفاده می کند که توسط کاربر DmitriyU2 در قسمت نظرات پیشنهاد شده است. استفاده از بخاری PCB امکان طراحی بسیار ساده تر و جمع و جورتر را می دهد. گرمایش نیز کارآمدتر است که منجر به تغییر سریع رنگ می شود.

برای مشاهده نحوه عملکرد صفحه نمایش ، ویدیو را تماشا کنید.

از آنجا که چند PCB برای من باقی مانده بود ، من نیز این صفحه نمایش را در فروشگاه Tindie خود می فروشم.

تدارکات

  • PCB بخاری (برای فایل های Gerber به GitHub من مراجعه کنید)
  • PCB را کنترل کنید (برای فایل های Gerber و BoM به GitHub من مراجعه کنید)
  • سنسور DHT22 (به عنوان مثال ebay.de)
  • پایه چاپ سه بعدی (برای فایل stl به GitHub من مراجعه کنید)
  • ورق چسب حرارتی ، 150x150 میلی متر ، 30-35 درجه سانتی گراد (SFXC)
  • پیچ M2x6 + مهره
  • سربرگ 2x پین 1x9 ، 2.54 میلی متر (به عنوان مثال mouser.com)
  • 2 عدد کانکتور برد SMD 1x9 ، 2.54 میلی متر (به عنوان مثال mouser.com)

مرحله 1: طراحی PCB بخاری

طراحی PCB بخاری
طراحی PCB بخاری
طراحی PCB بخاری
طراحی PCB بخاری

PCB بخاری در Eagle طراحی شده است. ابعاد PCB 100x150 میلی متر است زیرا 150x150 میلی متر اندازه استاندارد ورق های ترموکرومیک است که استفاده کردم. در ابتدا من یک طرح از بخش ها در Fusion360 تهیه کردم که به عنوان dxf ذخیره شد و سپس به Eagle وارد شد. قطعات دارای شکاف های بین آنها هستند و فقط توسط پل های کوچک به هم متصل می شوند. این امر عایق حرارتی بخشهای جداگانه را بهبود می بخشد و بنابراین باعث گرم شدن سریعتر و کاهش "تقاطع حرارتی" می شود. قسمت ها با استفاده از ابزار پیچ در Eagle با آثار PCB در لایه بالا (با رنگ قرمز دیده می شود) پر شد. من از عرض و فاصله 6 میل استفاده کردم که حداقل اندازه ای است که می تواند بدون هزینه اضافی توسط PCBWay تولید شود. هر ردیابی بین دو ویاس پیچیده می شود که سپس از طریق لایه زیرین (به رنگ آبی دیده می شود) با استفاده از آثار بسیار ضخیم تر 32 میلیون به پین ها متصل می شوند. همه بخشها یک نقطه مشترک دارند.

من هیچ محاسبه ای برای توان حرارتی مورد نیاز برای افزایش دمای خاص انجام ندادم و همچنین مقاومت مورد انتظار یک بخش را محاسبه نکردم. من تصور کردم که هرگونه تنظیم قدرت گرمایش را می توان با استفاده از سیگنال PWM با چرخه کاری متفاوت انجام داد. بعداً متوجه شدم که بخش ها هنگامی که از طریق پورت USB 5V با استفاده از چرخه کار 5 ~ تغذیه می شوند ، به طور قابل توجهی گرم می شوند. جریان کلی هنگام گرم کردن تمام 17 قسمت حدود 1.6 آمپر است.

همه فایلهای برد را می توانید در GitHub من پیدا کنید.

مرحله 2: طراحی PCB کنترل کننده

طراحی PCB کنترلر
طراحی PCB کنترلر
طراحی PCB کنترل کننده
طراحی PCB کنترل کننده
طراحی PCB کنترل کننده
طراحی PCB کنترل کننده

برای کنترل بخاری PCB ، من یک SAMD21E18 MCU را انتخاب می کنم که از آن در پروژه GlassCube خود نیز استفاده کردم. این میکروکنترلر دارای پین های کافی برای کنترل تمام 17 بخش بخاری و خواندن سنسور DHT22 است. همچنین دارای USB اصلی است و می توان آن را با بوت لودر Adafruit's CircuitPython فلش کرد. از کانکتور میکرو USB به عنوان منبع تغذیه و برنامه نویسی MCU استفاده شد. قسمت های بخاری توسط 9 ماسفت دو کاناله (SP8K24FRATB) کنترل می شود. این می تواند تا 6 A را اداره کند و دارای ولتاژ آستانه دروازه <2.5 ولت باشد تا بتوان آنها را با سیگنال منطقی 3.3 V از MCU تغییر داد. من این موضوع را برای کمک به طراحی مدار کنترل بخاری بسیار مفید دیدم.

من PCB ها را از PCBWay و قطعات الکترونیکی را جدا از Mouser سفارش دادم و برای صرفه جویی در هزینه ها ، PCB ها را خودم مونتاژ کردم. من از یک دستگاه خمیر لحیم کاری استفاده کردم که قطعات را با دست قرار داد و آنها را با بخاری IC مادون قرمز لحیم کرد. با این حال ، به دلیل حجم نسبتاً زیاد اجزای درگیر و بازسازی مورد نیاز ، این کار بسیار خسته کننده بود و من در آینده از استفاده از سرویس مونتاژ استفاده نمی کنم.

دوباره فایلهای هیئت مدیره را می توان در GitHub من پیدا کرد. در آنجا می توانید نسخه بهبود یافته PCB را پیدا کنید که به جای میکرو USB از اتصال USB-C استفاده می کند. همچنین فاصله بین سوراخ ها را برای سنسور DHT22 تصحیح کردم و یک کانکتور 10 پین برای چشمک زدن آسان تر بوت لودر از طریق J-Link اضافه کردم.

مرحله 3: CircuitPython Bootloader

در ابتدا ، من SAMD21 را با یک بوت لودر UF2 بر اساس Trinket M0 Adafruit فلش کردم. بوت لودر باید کمی اصلاح شود زیرا Trinket دارای LED متصل به یکی از پین هایی است که من برای گرمایش استفاده می کنم. در غیر این صورت این پین برای مدت کوتاهی پس از راه اندازی بالا می رود و قسمت متصل شده را با قدرت کامل گرم می کند. فلش بوت لودر با اتصال J-Link به MCU از طریق پورت های SWD و SWC انجام می شود. کل فرایند به طور مفصل در وب سایت Adafruit شرح داده شده است. پس از نصب بوت لودر ، MCU هنگام اتصال از طریق درگاه micro USB به عنوان یک درایو فلش شناخته می شود و بوت لودرهای بعدی را می توان به سادگی با کشیدن یک فایل UF2 بر روی درایو نصب کرد.

در مرحله بعد می خواستم یک بوت لودر CircuitPython را نصب کنم. با این حال ، از آنجا که برد من از پین های زیادی استفاده می کند که در Trinket M0 متصل نیستند ، ابتدا مجبور شدم کمی پیکربندی برد را تغییر دهم. باز هم یک آموزش عالی برای این کار در وب سایت Adafruit وجود دارد. در اصل ، فقط باید چند پین نادیده گرفته شده را در mpconfigboard.h کامنت کنید و سپس همه چیز را دوباره کامپایل کنید. فایل های سفارشی بوت لودر نیز در GitHub من موجود است.

مرحله 4: کد CircuitPython

کد CircuitPython
کد CircuitPython
کد CircuitPython
کد CircuitPython

پس از نصب بوت کننده CircuitPython ، فقط می توانید با ذخیره کد خود به عنوان یک فایل code.py مستقیماً روی درایو فلش USB ، برد را برنامه ریزی کنید. کدی که من نوشتم سنسور DHT22 را می خواند و سپس با گرم کردن بخش های مربوطه دما و رطوبت را به طور متناوب نمایش می دهد. همانطور که قبلاً ذکر شد ، گرمایش با تغییر MOSFET با سیگنال PWM انجام می شود. به جای تنظیم پین ها به عنوان خروجی PWM ، من یک سیگنال PWM "جعلی" با فرکانس سوئیچینگ پایین 100 هرتز در کد با استفاده از تاخیر ایجاد کردم. برای کاهش بیشتر مصرف فعلی ، من قطعات را به طور همزمان ، اما به صورت متوالی ، همانطور که در شماتیک بالا نشان داده شده است ، روشن نمی کنم. چند ترفند نیز وجود دارد که باعث گرم شدن بیشتر بخش ها می شود. اول از همه ، چرخه وظیفه برای هر بخش کمی متفاوت است. به عنوان مثال خط تیره علامت "٪" به دلیل مقاومت بیشتر نیاز به چرخه کاری بسیار بزرگتری دارد. همچنین متوجه شدم که بخشهایی که توسط بخشهای دیگر احاطه شده اند باید کمتر گرم شوند. علاوه بر این ، اگر قسمتی در "اجرا" قبلی گرم شده باشد ، چرخه وظیفه در مرحله بعدی کاهش می یابد. سرانجام ، زمان گرمایش و سرمایش متناسب با دمای محیط است که به راحتی توسط سنسور DHT22 اندازه گیری می شود. برای یافتن ثبات زمانی معقول ، من در واقع صفحه نمایش را در یک اتاق آب و هوا که خوشبختانه در محل کار به آن دسترسی دارم ، تنظیم کردم.

می توانید کد کامل را در GitHub من پیدا کنید.

مرحله 5: مونتاژ

مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ

مونتاژ صفحه نمایش نسبتاً آسان است و می توان آن را در مراحل زیر تقسیم کرد

  1. هدرهای زنانه را برای گرم کردن PCB لحیم کنید
  2. ورق ترموکرومیک خود چسب را به PCB بخاری وصل کنید
  3. سنسور DHT22 را برای کنترل PCB لحیم کرده و با پیچ و مهره M2 محکم کنید
  4. سرصفحه های پین نر را به PCB کنترل کننده لحیم کنید
  5. هر دو PCB را وصل کرده و در پایه چاپ سه بعدی قرار دهید

مرحله 6: پروژه به پایان رسید

پروژه به پایان رسید
پروژه به پایان رسید
پروژه به پایان رسید
پروژه به پایان رسید

من از دیپلی به پایان رسیده که اکنون دائماً در اتاق نشیمن ما اجرا می شود ، بسیار خوشحالم. هدف از ساخت نسخه کوچکتر و ساده تر از صفحه نمایش ترموکرومیک اصلی من قطعاً محقق شد و من می خواهم یک بار دیگر از کاربر DmitriyU2 برای پیشنهاد تشکر کنم. این پروژه همچنین به من کمک کرد تا مهارت های طراحی PCB خود را در Eagle ارتقا دهم و با استفاده از MOSFET به عنوان سوئیچ آشنا شدم.

شاید بتوان با ایجاد یک محفظه زیبا برای PCB ها ، طراحی را بهبود بخشید. من همچنین در مورد ساخت یک ساعت دیجیتال به همان سبک فکر می کنم.

اگر این پروژه را دوست دارید می توانید آن را بازسازی کنید یا آن را در فروشگاه Tindie من خریداری کنید. همچنین در چالش طراحی PCB به من رای دهید.

چالش طراحی PCB
چالش طراحی PCB
چالش طراحی PCB
چالش طراحی PCB

جایزه داوران در چالش طراحی PCB

توصیه شده: