Სარჩევი:

თერმოქრომული ტემპერატურისა და ტენიანობის ჩვენება - PCB ვერსია: 6 ნაბიჯი (სურათებით)
თერმოქრომული ტემპერატურისა და ტენიანობის ჩვენება - PCB ვერსია: 6 ნაბიჯი (სურათებით)

ვიდეო: თერმოქრომული ტემპერატურისა და ტენიანობის ჩვენება - PCB ვერსია: 6 ნაბიჯი (სურათებით)

ვიდეო: თერმოქრომული ტემპერატურისა და ტენიანობის ჩვენება - PCB ვერსია: 6 ნაბიჯი (სურათებით)
ვიდეო: როგორ ვთქვათ თერმოქრომიზმი? #თერმოქრომიზმი (HOW TO SAY THERMOCHROMISM? #thermochromi 2024, ივლისი
Anonim
Image
Image
გათბობის PCB- ის დიზაინი
გათბობის PCB- ის დიზაინი

ამას წინათ გავაკეთე პროექტი სახელწოდებით Thermochromic Temperature & Humidity Display, სადაც მე ავაშენე 7 სეგმენტიანი დისპლეი სპილენძის ფირფიტებისგან, რომლებიც თბებოდა/გაცივებოდა პელტიერის ელემენტებით. სპილენძის ფირფიტები დაფარული იყო თერმოქრომული კილიტით, რომელიც იცვლის ფერს ტემპერატურასთან ერთად. ეს პროექტი არის ეკრანის უფრო მცირე ვერსია, რომელიც პელტიერების ნაცვლად იყენებს PCB გათბობის კვალს, როგორც ეს შემოთავაზებულია მომხმარებლის DmitriyU2 კომენტარების განყოფილებაში. PCB გამათბობლის გამოყენება იძლევა ბევრად უფრო მარტივ და კომპაქტურ დიზაინს. გათბობა ასევე უფრო ეფექტურია, რაც იწვევს ფერის სწრაფ შეცვლას.

უყურეთ ვიდეოს, რომ ნახოთ როგორ მუშაობს ეკრანი.

მას შემდეგ, რაც რამდენიმე PCB დამრჩა, მე ასევე ვყიდი ამ ჩვენებას ჩემს Tindie მაღაზიაში.

მარაგები

  • გამათბობელი PCB (იხილეთ ჩემი GitHub Gerber ფაილებისთვის)
  • აკონტროლეთ PCB (იხილეთ ჩემი GitHub Gerber ფაილებისთვის და BoM)
  • DHT22 სენსორი (მაგ. Ebay.de)
  • 3D დაბეჭდილი სტენდი (იხილეთ ჩემი GitHub stl ფაილისთვის)
  • თერმოქრომული წებოვანი ფურცელი, 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- ის დიზაინი

გამათბობელი PCB შექმნილია Eagle- ში. PCB ზომები არის 100x150 მმ, რადგან 150x150 მმ არის თერმოქრომული ფურცლების სტანდარტული ზომა, რომელიც მე გამოვიყენე. თავდაპირველად მე გავაკეთე სეგმენტების ესკიზი Fusion360– ში, რომელიც შენახული იყო როგორც dxf და შემდეგ იმპორტირებული იქნა არწივში. სეგმენტებს აქვთ დაფარული ხარვეზები მათ შორის და დაკავშირებულია მხოლოდ მცირე ხიდებით. ეს აუმჯობესებს ცალკეული სეგმენტების თერმული იზოლაციას და, შესაბამისად, იძლევა უფრო სწრაფ გათბობას და ამცირებს "თერმულ კვეთას". სეგმენტები ივსება PCB კვალი ზედა ფენაზე (ჩანს წითლად) მეანდერის ინსტრუმენტის გამოყენებით არწივში. მე გამოვიყენე ბილიკის სიგანე და მანძილი 6 მლნ, რაც არის მინიმალური ზომა, რომლის დამზადებაც PCBWay– ს შეუძლია დამატებითი ხარჯების გარეშე. თითოეული კვალი მეანდრირდება ორ ვიას შორის, რომლებიც შემდეგ ქვედა ფენის გავლით უკავშირდება ქინძისთავებს (ჩანს ლურჯ ფერში) ბევრად სქელი 32 მლნ კვალის გამოყენებით. ყველა სეგმენტს აქვს საერთო საფუძველი.

მე არ გავაკეთე გათვლები გათბობის სიმძლავრისთვის, რომელიც საჭიროა გარკვეული ტემპერატურის ზრდისთვის და არც გამოვთვალე სეგმენტის მოსალოდნელი წინააღმდეგობა. მივხვდი, რომ გათბობის სიმძლავრის ნებისმიერი კორექტირება შესაძლებელია PWM სიგნალის გამოყენებით, განსხვავებული მოვალეობის ციკლით. მოგვიანებით აღმოვაჩინე, რომ სეგმენტები საკმაოდ სწრაფად თბება, როდესაც იკვებება 5V USB პორტით, ~ 5% სამუშაო ციკლის გამოყენებით. მთლიანი დენი ყველა 17 სეგმენტის გათბობისას არის დაახლოებით 1.6 ა.

ყველა დაფის ფაილი შეგიძლიათ იხილოთ ჩემს GitHub– ზე.

ნაბიჯი 2: დიზაინის კონტროლერის PCB

Controller PCB- ის დიზაინი
Controller PCB- ის დიზაინი
Controller PCB- ის დიზაინი
Controller PCB- ის დიზაინი
კონტროლერის PCB- ის დიზაინი
კონტროლერის PCB- ის დიზაინი

PCB გამათბობლის გასაკონტროლებლად მე ვირჩევ SAMD21E18 MCU რომელიც მე ასევე გამოვიყენე ჩემს GlassCube პროექტში. ამ მიკროკონტროლერს აქვს საკმარისი ქინძისთავები, რომ გააკონტროლოს ყველა 17 გამათბობელი სეგმენტი და წაიკითხოს DHT22 სენსორი. მას ასევე გააჩნია მშობლიური USB და მისი გაშვება შესაძლებელია Adafruit's CircuitPython ჩატვირთვის საშუალებით. მიკრო USB კონექტორი გამოიყენებოდა როგორც კვების ბლოკი და MCU პროგრამირებისათვის. გამათბობლის სეგმენტები კონტროლდება 9 ორ არხიანი MOSFET– ით (SP8K24FRATB). მათ შეუძლიათ გაუმკლავდნენ 6 A– მდე და აქვთ კარიბჭის ბარიერი ძაბვა <2.5 V, ასე რომ მათ შეუძლიათ გადართვა MCU– დან 3.3 V ლოგიკური სიგნალით. მე აღმოვაჩინე, რომ ეს თემა ძალიან დამხმარეა გამათბობელის კონტროლის სქემის დიზაინში.

მე შევუკვეთე PCB– ები PCBWay– დან და ელექტრონული ნაწილები Mouser– ისგან ცალკე და შევიკრიბე PCB– ები თვითონ ხარჯების დაზოგვის მიზნით. მე გამოვიყენე გამწოვი პასტის გამანაწილებელი ნაწილები ხელით და მოვათავსე ინფრაწითელი IC გამათბობლით. თუმცა, კომპონენტების შედარებით დიდი რაოდენობის და საჭირო გადამუშავების გამო, ეს საკმაოდ დამღლელი იყო და მე მომავალში განვიხილავ ასამბლეის სერვისის გამოყენებას.

ისევ დაფის ფაილები შეგიძლიათ იხილოთ ჩემს GitHub– ზე. აქ შეგიძლიათ იპოვოთ PCB– ის გაუმჯობესებული ვერსია, რომელიც იყენებს USB-C კონექტორს მიკრო USB– ის ნაცვლად. მე ასევე გავასწორე ხვრელების დაშორება DHT22 სენსორისთვის და დავამატე 10 პინიანი კონექტორი ჩამტვირთველის უფრო ადვილად მოციმციმე J-Link- ის საშუალებით.

ნაბიჯი 3: CircuitPython ჩამტვირთავი

თავდაპირველად, მე SAMD21 გავანათე UF2 ჩამტვირთვით, რომელიც დაფუძნებულია Adafruit's Trinket M0- ზე. ჩამტვირთავი ოდნავ უნდა შეცვლილიყო, რადგან Trinket– ს აქვს LED, რომელიც დაკავშირებულია ერთ – ერთ ქინძისთავთან, რომელსაც ვიყენებ გათბობისთვის. წინააღმდეგ შემთხვევაში, ეს ბალიში მაღალი იქნება ჩატვირთვის შემდეგ მცირე ხნით და გაცხელდება დაკავშირებული სეგმენტი სრული სიმძლავრით. ჩატვირთვის ჩამუქება ხდება J-Link– ის MCU– სთან დაკავშირებით SWD და SWC პორტების საშუალებით. მთელი პროცესი დეტალურად არის აღწერილი ადაფრუტის ვებსაიტზე. ჩამტვირთველის დაყენების შემდეგ MCU აღიარებულია როგორც ფლეშ დრაივი, როდესაც ის დაკავშირებულია მიკრო USB პორტის საშუალებით და შემდგომი ჩამტვირთვები შეიძლება უბრალოდ დაინსტალირდეს UF2 ფაილის დისკზე გადმოტანით.

როგორც შემდეგი ნაბიჯი მინდოდა დამეყენებინა CircuitPython ჩამტვირთავი. თუმცა, ვინაიდან ჩემი დაფა იყენებს ბევრ ქინძისთავს, რომლებიც არ არის დაკავშირებული Trinket M0– ზე, მე პირველად მომიწია დაფის კონფიგურაციის ოდნავ შეცვლა. კიდევ ერთხელ არის ამის დიდი გაკვეთილი ადაფრუტის ვებსაიტზე. ძირითადად, თქვენ უბრალოდ უნდა გააკეთოთ კომენტარი mpconfigboard.h– ში რამდენიმე იგნორირებული ქინძისთავის შესახებ და შემდეგ გადააკეთოთ ყველაფერი. მორგებული ჩატვირთვის ფაილები ასევე ხელმისაწვდომია ჩემს GitHub– ზე.

ნაბიჯი 4: CircuitPython კოდი

CircuitPython კოდი
CircuitPython კოდი
CircuitPython კოდი
CircuitPython კოდი

CircuitPython ჩატვირთვის დაყენების შემდეგ შეგიძლიათ უბრალოდ დაფის დაპროგრამება თქვენი კოდის შენახვით code.py ფაილი პირდაპირ USB ფლეშ დრაივში. კოდი, რომელიც მე დავწერე, კითხულობს DHT22 სენსორს და შემდეგ მონაცვლეობით აჩვენებს ტემპერატურასა და ტენიანობას შესაბამისი სეგმენტების გათბობით. როგორც უკვე აღვნიშნეთ, გათბობა ხდება MOSFET– ების გადართვით PWM სიგნალით. იმის ნაცვლად, რომ ქინძისთავები დამეყენებინა როგორც PWM შედეგები, მე შევქმენი "ყალბი" PWM სიგნალი დაბალი გადართვის სიხშირით 100 ჰც კოდში შეფერხებების გამოყენებით. მიმდინარე მოხმარების კიდევ უფრო შესამცირებლად მე არ ვრთავ სეგმენტებს ერთდროულად, არამედ თანმიმდევრულად, როგორც ეს ნაჩვენებია ზემოთ სქემატურად. ასევე არსებობს რამდენიმე ხრიკი, რათა სეგმენტების გათბობა უფრო თანაბარი გახდეს. უპირველეს ყოვლისა, მოვალეობების ციკლი ოდნავ განსხვავდება თითოეული სეგმენტისთვის. მაგალითად "%" ნიშნის ტირს სჭირდება გაცილებით დიდი სამუშაო ციკლი მისი უფრო მაღალი წინააღმდეგობის გამო. ასევე აღმოვაჩინე, რომ სეგმენტები, რომლებიც გარშემორტყმულია მრავალი სხვა სეგმენტით, ნაკლებად უნდა გაცხელდეს. გარდა ამისა, თუ წინა ნაწილში გაცხელდა სეგმენტი, სამუშაო ციკლი შეიძლება შემცირდეს შემდეგში. დაბოლოს, გათბობისა და გაგრილების დრო ადაპტირებულია გარემოს ტემპერატურაზე, რომელიც მოხერხებულად იზომება DHT22 სენსორით. გონივრული დროის მუდმივების საპოვნელად მე რეალურად დავაკალიბრე ეკრანი კლიმატის კამერაში, რომელზეც საბედნიეროდ მაქვს წვდომა სამსახურში.

თქვენ შეგიძლიათ იპოვოთ სრული კოდი ჩემს GitHub– ზე.

ნაბიჯი 5: შეკრება

შეკრება
შეკრება
შეკრება
შეკრება
შეკრება
შეკრება

ეკრანის შეკრება საკმაოდ მარტივია და შეიძლება დაიყოს შემდეგ ნაბიჯებად

  1. Solder ქალი pin headers გამათბობელი PCB
  2. მიამაგრეთ თვითწებვადი თერმოქრომული ფურცელი გამათბობელ PCB– ზე
  3. შეაერთეთ DHT22 სენსორი PCB კონტროლერთან და დამაგრეთ M2 ჭანჭიკითა და კაკლით
  4. Solder მამრობითი pin სათაურები კონტროლერი PCB
  5. შეაერთეთ ორივე PCB და მოათავსეთ 3D დაბეჭდილ სადგამზე

ნაბიჯი 6: დასრულებული პროექტი

დასრულებული პროექტი
დასრულებული პროექტი
დასრულებული პროექტი
დასრულებული პროექტი

მე საკმაოდ კმაყოფილი ვარ დიპლიმით, რომელიც ახლა მუდმივად ტრიალებს ჩვენს მისაღებ ოთახში. ჩემი ორიგინალური თერმოქრომიული ეკრანის უფრო პატარა, მარტივი ვერსიის შექმნის მიზანი ნამდვილად მიღწეული იყო და მინდა მადლობა გადავუხადო მომხმარებელს DmitriyU2 კიდევ ერთხელ შემოთავაზებისთვის. პროექტი ასევე დამეხმარა არწივში ჩემი PCB დიზაინის უნარების გაუმჯობესებაში და შევიტყვე MOSFET– ის კონცენტრატორებად გამოყენების შესახებ.

შეიძლება კიდევ უფრო გააუმჯობესოს დიზაინი PCB– ებისთვის ლამაზი შიგთავსის დამზადებით. მე ასევე ვფიქრობ იმავე ციფრული საათის დამზადებაზე.

თუ მოგწონთ ეს პროექტი, შეგიძლიათ უბრალოდ გადააკეთოთ იგი ან იყიდოთ ჩემს Tindie მაღაზიაში. ასევე განიხილეთ ჩემთვის ხმის მიცემა PCB დიზაინის გამოწვევაში.

PCB დიზაინის გამოწვევა
PCB დიზაინის გამოწვევა
PCB დიზაინის გამოწვევა
PCB დიზაინის გამოწვევა

მოსამართლეთა პრიზი PCB დიზაინის გამოწვევაში

გირჩევთ: