Բովանդակություն:
- Քայլ 1: Պատմություն հետևում…
- Քայլ 2: Ինչպես է այն աշխատում
- Քայլ 3: Նյութեր և գործիքներ
- Քայլ 4: Միասին շտկեք իրերը
- Քայլ 5: Լարային իրեր միասին
- Քայլ 6: Սենսորների միացում
- Քայլ 7: Վերահսկիչ ծրագրակազմ
- Քայլ 8: Եզրակացություն
Video: Սխալներին հանդուրժող ջերմաստիճանի տվիչների ցանցի վերահսկիչ `8 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Այս Instructable- ը ցույց է տալիս, թե ինչպես փոխարկել Arduino Uno տախտակը մեկ նպատակի վերահսկիչի համար DS18B20 ջերմաստիճանի տվիչների մի շարք, որոնք ունակ են անսարք տվիչների ավտոմատ մեկուսացում:
Կարգավորիչը կարող է կառավարել մինչև 8 սենսոր Arduino Uno- ով: (Եվ շատ ավելին Arduino Mega- ի կամ ծրագրակազմի փոքր փոփոխությամբ):
Քայլ 1: Պատմություն հետևում…
Մի քանի տարի առաջ ես հորս ջերմոցում ստեղծեցի ջերմաստիճանի տվիչների DS18B20 ցանց իմ պի վրա հիմնված ջեռուցման վերահսկիչի համար: Unfortunatelyավոք, վերահսկիչի հուսալիությունը վատ էր հիմնականում սենսորների հաճախակի անջատումների պատճառով: Ես փորձեցի բազմաթիվ կարգավորումներ ՝ մակաբույծ էներգիա, ուղղակի էներգիա, ցանցը միացնելով pi- ին, ինչպես նաև միացնելով Atmega- ի վրա հիմնված հատուկ տախտակին (որի հիմնական նպատակը փականային շարժիչներ վարելն էր):
Ավելի վատ, սենսորային ցանցի հուսալիությունը հիմնականում ընկավ ձմեռային գիշերների ընթացքում, մինչդեռ ամռանը գրեթե խնդիրներ չկային: Ի՞նչ լավ է կատարվում այստեղ:
Հետազոտելու համար, թե որ սենսորն է առաջացնում խնդիրը, անհրաժեշտություն առաջացավ միացնել դրանք մեկ առ մեկ կամ միացնել դրանց ցանկացած համադրություն:
Քայլ 2: Ինչպես է այն աշխատում
DS18B20- ը (ջերմաստիճանի ցուցիչ) օգտագործում է 1 լարի սեփական արձանագրություն, որը թույլ է տալիս բազմաթիվ սենսորների կիսել տվյալների ընդհանուր կապը (այդ մեկ մետաղալարը): Տվյալների ընդհանուր այս կապը միացված է Arduino- ի GPIO կապումներից մեկին և + 5 V- ին `ձգվող դիմադրության միջոցով:
Խաբեությունն այն է, որ յուրաքանչյուր սենսորի հոսանքի լարերը միացված են սեփական (նվիրված) GPIO կապումներին, այնպես որ դրանք կարող են անջատվել և անջատվել առանձին: Օրինակ, եթե սենսորին Vcc կապը միացված է թիվ 3 կապին, իսկ GND- ը ՝ թիվ 2 կապին, ապա թիվ 3 կապը բարձրության վրա ապահովում է սենսորի հզորությունը (զարմանալի չէ), իսկ թիվ 2 կապը դեպի OWԱOWՐ ապահովում է հիմք (փոքր անակնկալ ես): Երկու կապում մուտքային ռեժիմի կարգավորելը (գրեթե) ամբողջովին մեկուսացնելու է սենսորը և դրա լարերը.
(Արդարացի է ասել, որ տվյալների հաղորդալարը Arduino- ին ինչ -որ կերպ միացված այլ բանի հետ միացնելն իրոք միջամտություն կառաջացնի, բայց իմ պարամետրերում դա գրեթե անհնար է):
Ուշադրություն դարձրեք, որ DS18B20- ը սպառում է մինչև 1, 5 մԱ, մինչդեռ մեկ Arduino- ի քորոցը կարող է սնուցել / խորտակել մինչև 40 մԱ, ուստի անթույլատրելի է սենսորները միացնել GPIO կապում ուղղակիորեն:
Քայլ 3: Նյութեր և գործիքներ
Նյութական
- 1 Arduino UNO տախտակ
- 3 կին գլխիկ ՝ 1 × 4, 1 × 6 և 1 × 6 (կամ ավելի երկար ՝ դրանք կտրել եմ մեկ 1 × 40 վերնագրից)
- սոսինձ
- մի կտոր մերկ կոպերի մետաղալար (առնվազն 10 սմ)
- մեկուսիչ ժապավեն
- զոդման ծախսվող նյութեր (մետաղալար, հոսք …)
Գործիքներ
- զոդման սարքավորումներ (երկաթ, ամրակներ,…)
- փոքր տափակաբերան աքցան
Քայլ 4: Միասին շտկեք իրերը
Կին սոսինձները կպցրեք Arduino- ի տախտակի վերնագրերին.
- 1 × 4 վերնագիր «անալոգային» կապի վերնագրի կողքին, A0 – A4 կապում կողք կողքի
- 1 × 6 վերնագիր առաջին թվային կապի վերնագրի կողքին, կողք կողքի 2-7 կապում
- 1 × 6 վերնագիր երկրորդ թվային կապի վերնագրի կողքին, 8-13 կապում կողք կողքի
Ուշադրություն դարձրեք, որ իմ վերնագրերը մի փոքր ավելի երկար են … ենթադրում եմ, որ դա ոչ մի վատ և լավ կողմ չունի:
Քայլ 5: Լարային իրեր միասին
1-մետաղալար ավտոբուսի գծի միացում
- Միացրեք սոսնձված վերնագրերի բոլոր կապերը «թվային» կողմում (2-13 կապումներին կից) ՝ դրանց վրա զոդելով մի կտոր մերկ մետաղալար
- Այս մետաղալարերի ծայրը կպցրեք SCL կապի կապին (ներքին միացված է A5- ին)
- Միացրեք սոսնձված վերնագրի բոլոր տողերը «անալոգային» կողմում (կապեր A0 – A3) ՝ նրանց վրա զոդելով մի մերկ մետաղալար
- Այս մետաղալարերի ծայրը միացրեք A4 և A5 լարերին (ես օգտագործել եմ A5 և A6, քանի որ ունեմ տախտակ, որն ունի A6 և A7)
- Այս մետաղալարերի մյուս ծայրերի և +5 V կապի կապարի միջև զոդեք 4k7 ռեզիստոր
Նշումներ
- A0 – A5 կապում, թեև նշվում է որպես «անալոգային», կարող են օգտագործվել նաև որպես GPIO թվային կապում:
- «Թվային» կողմի SCL կապը ներքին միացված է «անալոգային» կողմի A5- ին; վերնագրերի հետ կապված ՝ սա կազմում է 1-լարային ավտոբուսի գիծը
- A4 (օգտագործվում է որպես անալոգային մուտք) չափում է ավտոբուսի լարումը ախտորոշիչ նպատակներով: Դա է պատճառը, որ այն ուղղակիորեն միացված է ավտոբուսին:
- Ես օգտագործել եմ A6- ը A4- ի փոխարեն, քանի որ ունեմ տախտակ, որն ունի A6 & A7; ի սկզբանե ես ուզում էի օգտագործել A7- ը որպես 1-լարի ավտոբուսի վարպետ, բայց այս երկու կապում հնարավոր չէ կարգավորել թվային GPIO- ներ:
- Սենսորային միակցիչների սխալ միացումը կանխելու համար դուք կարող եք բաց թողնել / կտրել չօգտագործված կոնտակտը (միացված չէ որևէ մետաղալարերի) յուրաքանչյուր արական միակցիչից և տեղադրել այն սոսնձված կապի վերնագրի համապատասխան անցքին:
Քայլ 6: Սենսորների միացում
Դուք պարզապես ստեղծել եք eight 2 × 2 վարդակից զանգված: Դուք կարող եք զոդել և հավաքել 2 × 2 Dupont միակցիչ սենսորային մալուխներին և միացնել դրանք այս վարդակներին: Theրագրակազմը կարգավորում է կապումներն այնպես, որ նույնիսկ կապումներն են GND կապում, իսկ կենտ կապերը ՝ Vcc կապում: Յուրաքանչյուր սենսորի համար Vcc կապը պարզապես GND կապ է + 1. 2 × 2 վարդակից մնացած երկու կապումներից մեկը (սոսնձված և զոդված վերնագրում նշված երկուսից մեկը) սենսորի տվյալների հաղորդալարի համար է: Կարևոր չէ, թե որն եք օգտագործում:
Քայլ 7: Վերահսկիչ ծրագրակազմ
SerialThermometer ուրվագիծը գործարկում է վերահսկիչը: Դուք կարող եք գտնել այն github- ում: Բացեք և վերբեռնեք Arduino IDE- ի միջոցով:
Քայլ առ քայլ:
- Բացեք ձեր Arduino IDE- ն և տեղադրեք DallasTemperature գրադարանը և դրա բոլոր կախվածությունները Sketch | - ի միջոցով Ներառել գրադարան | Կառավարեք գրադարանները:
- Կլոնավորել git պահեստը: Եթե ծանոթ չեք git- ին, ներբեռնեք և բացեք այս փոստային հասցեն ձեր համակարգչի ցանկացած վայրում:
- Բացեք SerialThermometer ուրվագիծը ձեր Arduino IDE- ում:
- Միացրեք ձեր փոփոխված Arduino տախտակը ձեր համակարգչին USB մալուխի միջոցով (ստանդարտ եղանակ)
- Վերբեռնեք ուրվագիծը ՝ օգտագործելով ձեր Arduino IDE- ն
- Բացեք սերիական մոնիտորը գործիքների միջոցով | Սերիական մոնիտոր
- Դուք պետք է տեսնեք ախտորոշիչ ելք, որը պարունակում է մի քանի ֆիզիկական չափումներ, որին հաջորդում են ջերմաստիճանի ընթերցումները. Եթե սենսորների քանակը տարբերվում է, երբ այն միացված է առանձին և երբ բոլորը միացված են), ախտորոշիչ օղակները մինչև լուծումը: Բայց մի անհանգստացեք, ախտորոշումը նաև ապահովում է ջերմաստիճանի չափումներ:
Ախտորոշման արդյունքի մասին ավելի մանրամասն տես տե՛ս ծանոթագրված նկարը:
Քայլ 8: Եզրակացություն
Ես ուժեղ զգացում ունեմ, որ իմ սենսորային ցանցի խափանումները պայմանավորված էին իմ երկար լարերի բարձր հզորությամբ `յուրաքանչյուր սենսորի համար LIYY 314 (3 × 0, 14 մմ²) մալուխի մոտ 10 մ հեռավորության վրա: Իմ փորձերը ցույց տվեցին, որ հաղորդակցությունը խզվում է, եթե մեկ լարային ավտոբուսի և գետնի միջև 0.01 μF- ի շուրջ կամ ավելի բարձր հզորություն կա, ես կարծում եմ, որ 4k7 ձգվող դիմադրիչը չի կարող ավտոբուսը բավականաչափ արագ քաշել + 5 Վ լարման համար, որպեսզի համապատասխանի արձանագրության սահմաններին:.
Իմ տեղադրման ժամանակ դա տեղի է ունենում, երբ ավելի քան 3 սենսորներ միացված են միասին: Այնուհետև վերահսկիչը շրջանցում է ախտորոշիչ ցիկլը ՝ չափելով ջերմաստիճանը սենսոր առ սենսոր (ինչը նույնպես թույն է …)
Բայց նաև 5 -րդ սենսորը (28: ff: f2: 41: 51: 17: 04: 31) բավականին վատ տեսք ունի (գուցե սխալ է զոդում), այնպես որ ես կարող եմ հետաքննություն անցկացնել:
Խորհուրդ ենք տալիս:
Սկսելով երկար հեռահար անլար ջերմաստիճանի և թրթռման տվիչների միջոցով `7 քայլ
Սկսելով երկար հեռահար անլար ջերմաստիճանի և թրթռման սենսորների օգտագործմամբ. Երբեմն թրթռումը լուրջ խնդիրների պատճառ է դառնում բազմաթիվ ծրագրերում: Մեքենայի լիսեռներից և առանցքակալներից մինչև կոշտ սկավառակի աշխատանքը, թրթռումը առաջացնում է մեքենայի վնասում, վաղ փոխարինում, ցածր կատարողականություն և մեծ հարված հասցնում ճշգրտությանը: Մոնիտորինգ
Լույսի և ջերմաստիճանի տվիչների տվյալների ընթերցում և գծագրում ազնվամորի Pi- ով. 5 քայլ
Light and Temperature Sensor Data- ի ընթերցումը և գծագրումը Raspberry Pi- ով. Այս Ուսումնական ձեռնարկում դուք կսովորեք, թե ինչպես կարդալ ազնվամորի pi- ով և ADS1115 անալոգով թվային փոխարկիչով լույսի և ջերմաստիճանի ցուցիչ և գրաֆիկացնել այն matplotlib- ի միջոցով: Սկսենք անհրաժեշտ նյութերից
Arduino AMS5812_0050-D-B ureնշման և ջերմաստիճանի տվիչների ձեռնարկ ՝ 4 քայլ
Arduino AMS5812_0050-D-B ureնշման և ջերմաստիճանի տվիչների ձեռնարկ. AMS5812 ուժեղացված ճնշման սենսորը անալոգային և թվային արդյունքներով բարձր ճշգրտության տվիչ է `անալոգային լարման ելքով և թվային I2C ինտերֆեյսով: Այն համատեղում է պիեզոռեսիստիվ զգայուն տարրը ազդանշանի կոնդենսացիոն տարրով իր գործունեության համար:
Տնային ցանցի ջերմաստիճանի տվիչ ՝ 7 քայլ
Տնային ցանցի ջերմաստիճանի տվիչ. Ի՞նչ պետք է իմանաք այս նախագիծն իրականացնելու համար. Դուք պետք է իմանաք հետևյալի մասին. arduino.esp8266.com/stable/package_esp8266 …) - թարմացում
IoT ցանցի վերահսկիչ: Մաս 9. IoT, տան ավտոմատացում. 10 քայլ (նկարներով)
IoT ցանցի վերահսկիչ: Մաս 9. IoT, տան ավտոմատացում. Հերքում ՍՏԱԵՔ ԱՅՍ ԱՌԱԻՆ Այս հրահանգը մանրամասն ներկայացնում է մի նախագիծ, որն օգտագործում է էլեկտրական էներգիա (այս դեպքում ՝ UK 240VAC RMS), մինչդեռ ամեն ինչ արվել է անվտանգ պրակտիկայի և դիզայնի լավ սկզբունքների օգտագործման համար, միշտ կա պոտենցիալ մահացու վտանգ: ընտրել