Բովանդակություն:
- Պարագաներ
- Քայլ 1. Designեռուցիչ PCB- ի նախագծում
- Քայլ 2. Կառավարիչի PCB- ի նախագծում
- Քայլ 3: CircuitPython Bootloader
- Քայլ 4: CircuitPython կոդ
- Քայլ 5: Հավաքում
- Քայլ 6: Ավարտված նախագիծ
Video: Rmերմաստիճանի ջերմաստիճանի և խոնավության ցուցադրում - PCB տարբերակ ՝ 6 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Քիչ առաջ մի նախագիծ կատարեց, որը կոչվում էր Thermochromic Temperature & Humidity Display, որտեղ ես պղնձե թիթեղներից 7 հատվածանոց էկրան կառուցեցի, որոնք տաքացվում/հովանում էին ավելի պելետի տարրերով: Պղնձե թիթեղները ծածկված էին ջերմաքրոմապատ փայլաթիթեղով, որը ջերմաստիճանը փոխում է գույնը: Այս նախագիծը դիսփլեյի ավելի փոքր տարբերակն է, որը peltiers- ի փոխարեն օգտագործում է ջեռուցման հետքերով PCB, ինչպես առաջարկել է օգտվող DmitriyU2 մեկնաբանությունների բաժնում: PCB ջեռուցիչի օգտագործումը թույլ է տալիս շատ ավելի պարզ և կոմպակտ ձևավորում: Theեռուցումը նույնպես ավելի արդյունավետ է, ինչը հանգեցնում է գույնի ավելի արագ փոփոխության:
Դիտեք տեսանյութը ՝ տեսնելու, թե ինչպես է աշխատում էկրանը:
Քանի որ ինձ մնացել էր մի քանի հատ PCB, ես նաև վաճառում եմ այս ցուցադրումը իմ Tindie խանութում:
Պարագաներ
- Տաքացուցիչ PCB (տե՛ս Gerit ֆայլերի համար իմ GitHub- ը)
- Կառավարեք PCB- ն (տե՛ս Gerit ֆայլերի և BoM- ի իմ GitHub- ը)
- 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. Designեռուցիչ PCB- ի նախագծում
Heեռուցիչ PCB- ն նախագծվել է Eagle- ում: PCB- ի չափսերը 100x150 մմ են, քանի որ 150x150 մմ -ը իմ օգտագործած ջերմաքրոմապատ թերթերի ստանդարտ չափսերն են: Սկզբում ես կատարեցի Fusion360- ի հատվածների ուրվագիծը, որը պահվեց որպես dxf, այնուհետև ներմուծվեց Արծիվ: Հատվածներն իրենց միջև ունեն բացված բացեր և միացված են միայն փոքր կամուրջներով: Սա բարելավում է առանձին հատվածների ջերմամեկուսացումը և, հետևաբար, թույլ է տալիս ավելի արագ տաքացնել և նվազեցնում է «ջերմային խաչմերուկը»: Հատվածները լցված էին PCB- ի հետքերով վերին շերտի վրա (երևում է կարմիրով) ՝ օգտագործելով արծվի մեանդրի գործիքը: Ես օգտագործեցի ուղու լայնություն և 6 միլիոն տարածություն, որը նվազագույն չափն է, որը կարող է արտադրվել PCBWay- ի կողմից ՝ առանց լրացուցիչ ծախսերի: Յուրաքանչյուր հետք պտտվում է երկու միջանցքների միջև, որոնք այնուհետև կապվում են կապերին ներքևի շերտի միջոցով (երևում է կապույտ գույնով) ՝ օգտագործելով ավելի հաստ 32 միլիոն հետքեր: Բոլոր հատվածները կիսում են ընդհանուր հիմք:
Ես ոչ մի հաշվարկ չեմ կատարել որոշակի ջերմաստիճանի բարձրացման համար պահանջվող ջեռուցման հզորության համար, ոչ էլ հաշվարկել եմ հատվածի ակնկալվող դիմադրությունը: Ես հասկացա, որ ջեռուցման հզորության ցանկացած ճշգրտում կարող է կատարվել `օգտագործելով աշխատանքային ցիկլով PWM ազդանշան: Հետագայում ես պարզեցի, որ հատվածները ողջամիտ արագ են տաքանում, երբ սնվում են 5 Վ USB պորտով ՝ օգտագործելով ~ 5% աշխատանքային ցիկլ: Բոլոր 17 հատվածները տաքացնելիս ընդհանուր հոսանքը կազմում է մոտ 1.6 Ա:
Տախտակի բոլոր ֆայլերը կարելի է գտնել իմ GitHub- ում:
Քայլ 2. Կառավարիչի PCB- ի նախագծում
PCB ջեռուցիչը կառավարելու համար ես ընտրում եմ SAMD21E18 MCU, որը ես նույնպես օգտագործել եմ իմ GlassCube նախագծում: Այս միկրոկառավարիչը ունի բավականաչափ կապում ՝ ջեռուցիչի բոլոր 17 հատվածները կառավարելու և DHT22 սենսորը կարդալու համար: Այն ունի նաև բնիկ USB և կարող է լուսավորվել Adafruit's CircuitPython բեռնիչով: Որպես սնուցման աղբյուր և MCU- ի ծրագրավորման համար օգտագործվել է միկրո USB միակցիչ: Theեռուցիչի հատվածները վերահսկվում են 9 երկակի ալիքով MOSFET- ներով (SP8K24FRATB): Դրանք կարող են աշխատել մինչև 6 Ա և ունեն դարպասի շեմի լարման <2,5 Վ, որպեսզի դրանք փոխարկվեն MCU- ի 3.3 Վ տրամաբանական ազդանշանի միջոցով: Ես գտա, որ այս շարանը շատ օգտակար է ինձ օգնելու նախագծել ջեռուցիչի կառավարման սխեման:
Ես պատվիրեցի PCB- ները PCBWay- ից, իսկ էլեկտրոնային մասերը `առանձին Mouser- ից և ինքս հավաքեցի PCB- ները` ծախսերը խնայելու համար: Ես օգտագործեցի զոդի մածուկի դիսպենսեր, որը մասերը տեղադրեց ձեռքով և դրանք զոդեց ինֆրակարմիր IC տաքացուցիչով: Այնուամենայնիվ, ներգրավված բաղադրիչների համեմատաբար մեծ քանակի և պահանջվող վերամշակման պատճառով դա բավականին հոգնեցուցիչ էր, և ես մտածում եմ ապագայում օգտագործել հավաքման ծառայություն:
Կրկին տախտակի ֆայլերը կարելի է գտնել իմ GitHub- ում: Այնտեղ կարող եք գտնել PCB- ի կատարելագործված տարբերակ, որը միկրո USB- ի փոխարեն օգտագործում է USB-C միակցիչ: Ես նաև ուղղեցի DHT22 սենսորի անցքերի միջով անցումը և ավելացրեցի 10-միակցիչ ՝ J-Link- ի միջոցով բեռնախցիկի ավելի հեշտ բռնկման համար:
Քայլ 3: CircuitPython Bootloader
Սկզբում ես փայլեցրեցի SAMD21- ը UF2 բեռնիչով, որը հիմնված էր Adafruit- ի Trinket M0- ի վրա: Բեռնախցիկը պետք է մի փոքր փոփոխվեր, քանի որ Trinket- ում կա LED, որը միացված է այն կապումներից մեկին, որը ես օգտագործում եմ ջեռուցման համար: Հակառակ դեպքում այս քորոցը բարձրացումից կարճ ժամանակ անց բարձր կլինի և միացված հատվածը ամբողջ հզորությամբ տաքացնի: Բեռնիչ սարքի բռնկումը կատարվում է J-Link- ը MCU- ին SWD և SWC պորտերի միջոցով միացնելու միջոցով: Ամբողջ գործընթացը մանրամասն նկարագրված է Adafruit կայքում: Բեռնիչ սարքը տեղադրելուց հետո MCU- ն ճանաչվում է որպես ֆլեշ կրիչ, երբ միացված է միկրո USB պորտի միջոցով, և հետագա բեռնիչները կարող են պարզապես տեղադրվել `UF2 ֆայլը սկավառակի վրա քաշելով:
Որպես հաջորդ քայլ ես ուզում էի տեղադրել CircuitPython բեռնիչը: Այնուամենայնիվ, քանի որ իմ տախտակն օգտագործում է բազմաթիվ կապում, որոնք միացված չեն Trinket M0- ին, ես առաջին հերթին ստիպված եղա փոքր -ինչ փոփոխել տախտակի կազմաձևը: Կրկին դրա համար հիանալի ձեռնարկ կա Adafruit կայքում: Հիմնականում, պարզապես պետք է մեկնաբանել մի քանի անտեսված կապում mpconfigboard.h- ում, այնուհետև ամեն ինչ նորից հավաքել: Պատվերով բեռնիչ ֆայլերը հասանելի են նաև իմ GitHub- ում:
Քայլ 4: CircuitPython կոդ
CircuitPython բեռնիչը տեղադրվելուց հետո կարող եք պարզապես ծրագրավորել տախտակը `ձեր ծածկագիրը որպես code.py ֆայլ պահելով անմիջապես USB ֆլեշ կրիչում: Իմ գրած կոդը կարդում է DHT22 սենսորը, այնուհետև հերթով ցուցադրում է ջերմաստիճանը և խոնավությունը ՝ տաքացնելով համապատասխան հատվածները: Ինչպես արդեն նշվեց, ջեռուցումն իրականացվում է MOSFET- երը PWM ազդանշանով միացնելու միջոցով: Փիները որպես PWM ելքեր կազմաձևելու փոխարեն, ես ստեղծեցի «կեղծ» PWM ազդանշան ՝ ծածկագրում ցածր անջատման հաճախականությամբ 100 Հց հաճախականության միջոցով: Ընթացիկ սպառումը հետագայում նվազեցնելու համար ես հատվածները չեմ միացնում միաժամանակ, այլ հաջորդաբար, ինչպես ցույց է տրված վերևի սխեմատիկայում: Կան նաև մի քանի հնարքներ `հատվածների ջեռուցումն ավելի հավասարեցնելու համար: Նախ `հերթապահության ցիկլը մի փոքր տարբեր է յուրաքանչյուր հատվածի համար: Օրինակ ՝ «%» նշանի գծիկին անհրաժեշտ է ավելի մեծ հերթապահություն ՝ ավելի բարձր դիմադրության պատճառով: Նաև պարզեցի, որ այն հատվածները, որոնք շրջապատված են բազմաթիվ այլ հատվածներով, պետք է ավելի քիչ տաքացվեն: Բացի այդ, եթե նախորդ «վազքի» ժամանակ մի հատված ջեռուցվում էր, հաջորդ ցիկլը կարող է կրճատվել: Ի վերջո, ջեռուցման և հովացման ժամանակը հարմարեցվում է շրջակա ջերմաստիճանին, որը հարմար չափվում է DHT22 սենսորով: Reasonableամանակի ողջամիտ հաստատուններ գտնելու համար ես իրականում չափագրեցի էկրանը կլիմայի խցիկում, որը, բարեբախտաբար, հասանելի է աշխատավայրում:
Ամբողջական կոդը կարող եք գտնել իմ GitHub- ում:
Քայլ 5: Հավաքում
Theուցադրման հավաքումը բավականին հեշտ է և կարելի է բաժանել հետևյալ քայլերի
- Femaleոդեք իգական կապի վերնագրեր ՝ PCB- ը տաքացնելու համար
- Կցեք ինքնասոսնձվող ջերմաքրոմաթերթ ՝ ջեռուցման PCB- ին
- Oldոդեք DHT22 սենսորը վերահսկիչ PCB- ին և ամրացրեք M2 պտուտակով և ընկույզով
- Maleոդեք արական կապի վերնագրեր վերահսկիչ PCB- ին
- Միացրեք և՛ PCB- ները, և՛ տեղադրեք 3D տպագիր տակդիրում
Քայլ 6: Ավարտված նախագիծ
Ես բավականին գոհ եմ ավարտված երկկողմանի խաղից, որն այժմ անընդհատ պտտվում է մեր հյուրասենյակում: Իմ սկզբնական ջերմաքրոմ էկրանին ավելի փոքր, ավելի պարզ տարբերակ պատրաստելու նպատակը միանշանակ հասավ, և ես կցանկանայի ևս մեկ անգամ շնորհակալություն հայտնել օգտվողին DmitriyU2 առաջարկի համար: Նախագիծը նաև օգնեց ինձ բարելավել PCB- ի նախագծման հմտությունները Eagle- ում, և ես իմացա MOSFET- ների ՝ որպես անջատիչների օգտագործման մասին:
Գուցե կարելի է էլ ավելի կատարելագործել դիզայնը ՝ գեղեցիկ պատյան պատրաստելով PCB- ների համար: Ես նույնպես մտածում եմ նույն ոճով թվային ժամացույց պատրաստելու մասին:
Եթե ձեզ դուր է գալիս այս նախագիծը, կարող եք պարզապես վերափոխել այն կամ գնել այն իմ Tindie խանութում: Նաև հաշվի առեք PCB- ի նախագծման մարտահրավերում իմ օգտին քվեարկելը:
Դատավորների մրցանակ PCB Design Challenge- ում
Խորհուրդ ենք տալիս:
IoT ջերմաստիճանի և խոնավության հաշվիչ OLED էկրանով. 5 քայլ (նկարներով)
IoT ջերմաստիճանի և խոնավության հաշվիչ OLED էկրանով. Ստուգեք ջերմաստիճանը և խոնավությունը OLED էկրանին ցանկացած պահի, և միևնույն ժամանակ հավաքեք այդ տվյալները IoT հարթակում: Անցյալ շաբաթ ես հրապարակեցի նախագիծ, որը կոչվում էր ամենապարզ IoT ջերմաստիճանի և խոնավության հաշվիչ: Դա լավ նախագիծ է, քանի որ կարող եք
Rmերմաստիճանի ջերմաստիճանի և խոնավության ցուցադրում. 10 քայլ (նկարներով)
Rmերմաստիճանի ջերմաստիճանի և խոնավության ցուցադրում. Ես բավականին երկար ժամանակ աշխատում էի այս նախագծի վրա: Սկզբնական միտքը ծագեց այն բանից հետո, երբ աշխատավայրում ստեղծեցի TEC վերահսկիչ ցուցարար ցուցահանդեսի համար: ՏԸՀ -երը ջեռուցման և հովացման հնարավորությունները ցույց տալու համար մենք օգտագործում էինք ջերմաքիմիական ներկ, որը
Երկակի 7 հատվածից բաղկացած ցուցադրում, որը վերահսկվում է շրջանագծի պոտենցիոմետրով Python - Տեսողության համառության ցուցադրում. 9 քայլ (նկարներով)
Երկակի 7 հատվածից բաղկացած ցուցադրումներ, որոնք վերահսկվում են շրջանագծի պոտենցիոմետրով: Python-Տեսողության համառության դրսևորում. Այս նախագիծը օգտագործում է պոտենցիոմետր `7 սեգմենտանոց LED էկրանների (F5161AH) ցուցադրումը վերահսկելու համար: Պոտենցիոմետրի բռնիչը պտտելիս ցուցադրվող թիվը փոխվում է 0 -ից 99 -ի սահմաններում: momentանկացած պահի վառվում է միայն մեկ LED, շատ կարճ, բայց
Arduino 24 ժամ ջերմաստիճանի խոնավության ցուցադրում. 3 քայլ (նկարներով)
Arduino 24 ժամ ջերմաստիճանի խոնավության էկրան. DHT11- ը հիանալի սենսոր է `սկսելու համար: Էժան և հեշտ է միանալ Arduino- ին: Այն հայտնում է ջերմաստիճանի և խոնավության մասին մոտ 2% ճշգրտությամբ, և այս հրահանգը օգտագործում է Gameduino 3 -ը որպես գրաֆիկական ցուցադրում ՝ ցույց տալով 24 ժամ պատմություն: W
Duերմաստիճանի և խոնավության ցուցադրում և տվյալների հավաքագրում Arduino- ով և մշակում. 13 քայլ (նկարներով)
Peratերմաստիճանի և խոնավության ցուցադրում և տվյալների հավաքագրում Arduino- ով և մշակում. Ներածություն. Սա նախագիծ է, որն օգտագործում է Arduino տախտակ, սենսոր (DHT11), Windows համակարգիչ և Processing (անվճար ներբեռնվող) ծրագիր ՝ ջերմաստիճանի, խոնավության տվյալները թվային և գծապատկերի ձևը, ցուցադրման ժամանակը և ամսաթիվը և հաշվարկի ժամանակը գործարկելը