Բովանդակություն:

Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3: 7 քայլեր
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3: 7 քայլեր

Video: Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3: 7 քայլեր

Video: Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3: 7 քայլեր
Video: Home Automation: Change direction of rotation of DC motor using 2 relays and Arduino - Robojax 2024, Նոյեմբեր
Anonim
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3

Թարմացում ՝ 23 նոյեմբերի, 2020 թ. - 2 x AAA մարտկոցների առաջին փոխարինում ՝ 2019 թվականի հունվարի 15 -ից, այսինքն ՝ 22 ամիս 2xAAA Alkaline- ի համար Թարմացում. 7 ապրիլի, 2019 թ. տվյալները

Թարմացում ՝ 24 մարտի 2019 - lp_BLE_TempHumidity Rev 2, ավելացնում է սյուժեի ավելի շատ տարբերակներ և i2c_ClearBus

Այս ուսանելի, Շատ ցածր էներգիայի ջերմաստիճանի խոնավության մոնիտորը, մաս է 3 -ից:

Մաս 1 - Շատ ցածր էներգիայի BLE սարքերի ստեղծում, որոնք դյուրին դարձան Arduino- ի միջոցով ՝ Arduino- ն կարգավորելով nRF52 ցածր էներգիայի սարքերով, ծրագրավորման մոդուլով և չափելով մատակարարման հոսանքը: Այն նաև ընդգրկում է ցածր էներգիայի մասնագիտացված ժամաչափեր և համեմատիչներ և անջատված մուտքեր և օգտագործելով pfodApp ՝ nRF52 սարքին միանալու և վերահսկելու համար:

Մաս 2 - Շատ ցածր էներգիայի ջերմաստիճանի խոնավության մոնիտոր, այս մեկը ներառում է Redbear Nano V2 մոդուլը և Si7021 ջերմաստիճանի / խոնավության տվիչը ՝ ցածր էներգիայի մարտկոց / արևային մոնիտոր կառուցելու համար: Այն ներառում է նաև փոփոխել Si7021 գրադարանը ՝ որպես ցածր էներգիա, կարգավորել BLE սարքը ՝ նվազեցնելու նրա ընթացիկ սպառումը <25uA- ից և նախագծել ձեր բջջայինի համար հարմարեցված ջերմաստիճանի/խոնավության էկրան:

Մաս 3 - Redbear Nano V2 փոխարինումը ծածկում է Nano V2- ի փոխարեն օգտագործելով այլ nRF52 մոդուլներ: Այն ներառում է մատակարարման բաղադրիչների ընտրություն, շինարարություն, հեռացնել nRF52 չիպերի ծրագրավորման պաշտպանությունը, օգտագործել NFC կապում որպես սովորական GPIO և սահմանել նոր nRF52 տախտակ Arduino- ում:

Այս հրահանգը գործնական կիրառում է 1 -ին մասի կառուցման շատ ցածր էներգիայի BLE սարքեր, որոնք հեշտացվել են Arduino- ի միջոցով ՝ կառուցելով շատ ցածր էներգիայի BLE ջերմաստիճանի և խոնավության մոնիտոր: Մոնիտորը տարիներ շարունակ կաշխատի Coin Cell- ով կամ 2 x AAA մարտկոցներով, նույնիսկ ավելի երկար ՝ արևային օժանդակությամբ: Այս ձեռնարկը ներառում է ցածր էներգիայի սպառման համար BLE պարամետրերի կարգավորումը և ինչպես սարքը սնուցել մարտկոցից, մարտկոցից + արևից կամ միայն արևից:

Ինչպես նաև ցուցադրում է ընթացիկ ջերմաստիճանը և խոնավությունը, մոնիտորը պահում է 10 րոպեանոց ընթերցումների վերջին 36 ժամը և ժամային ընթերցումների վերջին 10 օրերը: Դրանք կարող են գծանշվել ձեր Android բջջայինի վրա և արժեքները պահպանվել տեղեկամատյանում: Android ծրագրավորում չի պահանջվում, pfodApp- ը զբաղվում է այդ ամենով: Android- ի ցուցադրումն ու գծապատկերն ամբողջությամբ վերահսկվում են ձեր Arduino էսքիզով, այնպես որ կարող եք այն հարմարեցնել ըստ պահանջի:

NRF52832 BLE բաղադրիչի համար օգտագործվում է Redbear Nano V2 տախտակ, իսկ ջերմաստիճանի / խոնավության տվիչի համար ՝ Sparkfun Si7021 ճեղքման տախտակ: Si7021- ի հետ օգտագործվում է փոփոխված ցածր էներգիայի գրադարան: Փոքր PCB- ն նախատեսված էր NanoV2- ի և բաղադրիչների մատակարարման համար: Այնուամենայնիվ, քանի որ մակերևույթի վրա տեղադրված բաղադրիչներ չեն օգտագործվում, կարող եք դա նույնքան հեշտությամբ կառուցել vero տախտակի վրա: Powerածկված են էներգիայի մատակարարման երեք տարբերակ: i) Մարտկոց գումարած Արևային օժանդակություն, ii) Միայն մարտկոց, iii) Միայն արևային: The Solar Only տարբերակը մարտկոցի պահեստ չունի, և այն կաշխատի միայն այն ժամանակ, երբ լույս կա: Բավական է սենյակի պայծառ լույսը կամ գրասեղանի լամպը:

Ուրվագիծ

Այս նախագիծը ունի 4 հարաբերական անկախ մաս ՝

  1. Բաղադրիչի ընտրություն և կառուցում
  2. Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
  3. Չափման մատակարարման ընթացիկ և մարտկոցի ժամկետը
  4. Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային

Քայլ 1: Բաղադրիչի ընտրություն

Բաղադրիչի ընտրություն

Ինչպես նշվեց 1-ին մասում. Իրոք, ցածր էներգիայի լուծում ստանալու հնարքն այն է, որ շատ ժամանակ ոչինչ չանել, նվազագույնի հասցնել հոսանքը մուտքերի վրա արտաքին քաշվող/քաշվող դիմադրիչների միջոցով և չունենալ լրացուցիչ բաղադրիչներ: Այս նախագիծը կօգտագործի այդ հնարքներից յուրաքանչյուրը ՝ ցածր էներգիայի լուծում ստանալու համար:

NRF52832 բաղադրիչը

NRF52832 չիպը կարող է աշխատել 1.7V- ից 3.6V- ի միջև (բացարձակ առավելագույն լարման 3.9V): Սա նշանակում է, որ դուք կարող եք չիպը սնուցել անմիջապես մետաղադրամից կամ 2 x AAA մարտկոցից: Այնուամենայնիվ, խելամիտ է ավելացնել լարման կարգավորիչը `չիպը վոլտերից պաշտպանելու համար: Այս լրացուցիչ բաղադրիչը գալիս է էներգիայի արժեքով, սակայն NanoV2 տախտակի դեպքում ներկառուցվող կարգավորիչը ՝ TLV704- ը, սպառում է ավելի քիչ, քան 5.5uA, սովորաբար ՝ ընդամենը 3.4uA: Այս փոքր լրացուցիչ էներգիայի օգտագործման համար դուք ստանում եք պաշտպանություն մինչև 24 Վ լարման մուտքերի համար:

Si7021 բաղադրիչը

Si7021 սենսորը ինքնին սովորաբար <1uA է քաշում, երբ չափումներ չեն կատարում, այսինքն ՝ սպասման ռեժիմում, և մինչև 4 մԱ ՝ տվյալները I2C- ով փոխանցելիս: Քանի որ մենք անընդհատ չափումներ չենք կատարում, 4 մԱ -ն միջին մատակարարման հոսանքի էական մասը չէ: Շատ 30 վայրկյան ընթերցելը 1uA- ից պակաս է ավելացնում մատակարարման միջին հոսանքին, տե՛ս մատակարարման ընթացիկ չափումները ստորև:

Կան երկու մատչելի Si7021 բեկման տախտակներ: Մեկը Ադաֆրուտից և մեկը Սպարկֆունից: Երկու տախտակներին արագ հայացք գցելը ձեզ կասի, որ Adafruit տախտակն ունի շատ ավելի շատ բաղադրիչներ, քան Sparkfun տախտակը, այնպես որ դուք հակված կլինեք ընտրել Sparkfun տախտակը: Յուրաքանչյուր տախտակի սխեմաներին նայելը ցույց է տալիս, որ Sparkfun տախտակն ընդամենը մերկ սենսոր է և երկու 4k7 քաշման երկու ռեզիստորներ, մինչդեռ Adafruit- ի տախտակն ունի ներկառուցված, MIC5225 կարգավորիչ, որը սովորաբար անընդհատ ձգում է 29uA: Սա նշանակալի է, երբ մնացած հոսանքի ամբողջ հոսանքը <30uA է: Քանի որ մենք արդեն ունենք կարգավորիչ nRF52832 չիպի համար, այս լրացուցիչ բաղադրիչը անհրաժեշտ չէ, և Si7021- ը կարող է սնուցվել այդ 3.3 Վ լարման միջոցով: Այսպիսով, այս նախագիծը կօգտագործի Sparkfun- ի Si7021 ջարդման տախտակը:

նվազագույնի հասցնել հոսանքը մուտքերի վրա արտաքին քաշվող/քաշվող դիմադրիչների միջոցով

4K7 I2C քաշման դիմադրիչները առանձնապես բարձր արժեք չունեն և ցածր քաշելիս կքաշեն 0,7 մԱ: Սա խնդիր կլինի, եթե նրանք միացված լինեն անջատիչին, որը երկար ժամանակ հիմնավորված էր: Այնուամենայնիվ, այս նախագծում այս դիմադրիչների միջոցով հոսանքը նվազագույնի է հասցվում միայն I2C ինտերֆեյսի օգտագործմամբ ՝ հազվադեպ և միայն կարճ ժամանակով: 2ամանակի մեծ մասը I2C գծերը չեն օգտագործվում և գտնվում են բարձր / եռակի վիճակում, այնպես որ այս դիմադրիչների միջով հոսանք չի հոսում:

Քայլ 2: Շինարարություն

Շինարարություն
Շինարարություն
Շինարարություն
Շինարարություն
Շինարարություն
Շինարարություն

Նախագիծը կառուցված է փոքր PCB- ի վրա, բայց քանի որ SMD բաղադրիչներ չկան, այն կարելի է նույնքան հեշտությամբ կառուցել vero տախտակի միջոցով: PCB- ն արտադրվել է pcbcart.com- ի կողմից ՝ Gerber- ի այս ֆայլերից, TempHumiditySensor_R1.zip

Սխեմատիկան ներկայացված է վերևում: Ահա pdf տարբերակը:

Մասերի ցուցակ

Մեկ միավորի մոտավոր արժեքը ՝ 2018 թվականի դեկտեմբեր ամսվա դրությամբ, ~ 62 ԱՄՆ դոլար, առանց առաքման և ծրագրավորողի ՝ առանց մաս 1 -ի

  • Redbear NanoV2 ~ 17 ԱՄՆ դոլար
  • Sparkfun Si7021 ճեղքման տախտակ ՝ 8 ԱՄՆ դոլար
  • 2 x 53 մմ x 30 մմ 0.15W 5V արևային բջիջներ, օրինակ. Overfly 1. 1,10 ԱՄՆ դոլար
  • 1 x PCB TempHumiditySensor_R1.zip 25 25 ԱՄՆ դոլար 5 զեղչով www.pcbcart.com OR Vero տախտակ (պղնձե շերտ) օրինակ. Jaycar HP9540 ~ 5 ԱՄՆ դոլար
  • 2 x 1N5819 schottky դիոդներ օրինակ. Digikey 1N5819FSCT-ND ~ 1 ԱՄՆ դոլար
  • 1 x 470R 0.4W 1% դիմադրություն, օրինակ. Digikey BC3274CT-ND 0. 0,25 ԱՄՆ դոլար
  • 6 x 6 փին արական վերնագրի կապում օրինակ. Sparkfun PRT-00116 1.5 1.5 ԱՄՆ դոլար
  • էգից թռիչք կատարող կին օրինակ. Adafruit ID: 1950 ~ 2 ԱՄՆ դոլար
  • 3 մմ x 12 մմ նեյլոնե պտուտակներ, օրինակ. Ayեյքար HP0140 ~ 3 ԱՄՆ դոլար
  • 3 մմ x 12 մմ նեյլոնե ընկույզներ, օրինակ. Ayեյքար HP0146 ~ 3 ԱՄՆ դոլար
  • Scotch Permanent Mounting Tape Cat 4010 օրինակ. Amazon- ից 6. 6,6 ԱՄՆ դոլար
  • AAA x 2 մարտկոցի կրիչ, օրինակ. Sparkfun PRT-14219 1.5 1.5 ԱՄՆ դոլար
  • 2 x AAA 750mA ալկալային մարտկոցներ, օրինակ. Sparkfun PRT-09274 1.0 1.0 ԱՄՆ դոլար Այս մարտկոցները պետք է աշխատեն> 2 տարի: Energizer ալկալային մարտկոցներն ունեն ավելի մեծ հզորություն
  • Պլաստիկ տուփ (ABS) 83 մմ x 54 մմ x 31 մմ, օրինակ. Jaycar HB6005 ~ 3 ԱՄՆ դոլար
  • pfodApp ~ 10 ԱՄՆ դոլար
  • 1 x 22uF 63V ցածր ESR կոնդենսատոր (ըստ ցանկության) օր. Jaycar RE-6342 0.5 0.5 ԱՄՆ դոլար կամ Digikey P5190-ND 0. 0.25 ԱՄՆ դոլար

Շինարարությունն ուղիղ առաջ է ընթանում: Մարտկոցի կրիչն ու արևային բջիջները ամրացված են պլաստիկ տուփի վրա `երկկողմանի ծանր ժապավենով:

Ավարտված մասում ուշադրություն դարձրեք Gnd կապի լարին CLK- ից GND- ին: Սա տեղադրված է ծրագրավորումից հետո, որպեսզի CLK մուտքի վրա աղմուկը կանխի nRF52 չիպը բարձր ընթացիկ կարգաբերման ռեժիմը:

Քայլ 3. Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ

Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ
Կոդ - ցածր էներգիայի տվիչների գրադարան, օգտագործողի միջերես և Arduino ուրվագիծ

Ներբեռնեք փոստային հասցեն, lp_BLE_TempHumidity_R3.zip և այն բացեք ձեր Arduino Sketches գրացուցակում: Դուք նաև պետք է տեղադրեք lp_So7021 գրադարանը այս zip ֆայլից և տեղադրեք նաև pfodParser գրադարանը:

Powerածր էներգիայի տվիչների գրադարան, lp_Si7021

Թե՛ Adafruit- ը, և՛ Sparkfun- ը տրամադրում են օժանդակ գրադարաններ ՝ մուտք գործելու Si7021 սենսոր, սակայն երկուսն էլ այդ գրադարանները պիտանի չեն շատ ցածր էներգիայի օգտագործման համար: Երկուսն էլ օգտագործում են ծածկագրի ուշացում (25) `սենսորը կարդալը հետաձգելու համար, երբ այն չափում է: Ինչպես նշվեց 1 -ին մասում, ուշացումները չարիք են: Arduino- ի հետաձգումը () պարզապես պահպանում է միկրոպրոցեսորը `օգտագործելով էներգիան, մինչ սպասում է հետաձգման ժամանակի ավարտին: Սա խախտում է ցածր էներգիայի BLE- ի առաջին կանոնը, մեծ մասամբ ոչինչ մի արեք: Փոխարինող lp_Si7021 գրադարանը, բոլոր ուշացումները փոխարինում է lp_timers- ով, ինչը միկրոպրոցեսորին քնեցնում է սպասելով, երբ սենսորը կավարտի չափումը:

Որքա՞ն տարբերություն ունի lp_Si7021 գրադարանը: Օգտագործելով օրիգինալ SparkFun Si7021 օժանդակ գրադարանը և մեկ վայրկյան ընթերցելով ՝ առանց որևէ սերիական տպման, միջինում հավաքում է m 1,2 մԱ: Sparkfun գրադարանը lp_Si7021 գրադարանով փոխարինելը միջին հոսանքը նվազեցնում է մինչև 10uA,, այսինքն ՝ 100 անգամ ավելի քիչ: Այս նախագծում չափման ամենաարագ արագությունը 30 վայրկյանը մեկ է, երբ բջջայինը միացված է, ինչը հանգեցնում է 1uA- ից պակաս սենսորային միջին հոսանքի: Երբ չկա BLE միացում, չափման արագությունը յուրաքանչյուր 10 րոպեն մեկ է, իսկ սենսորի մատակարարման միջին հոսանքը աննշան է:

Օգտագործողի ինտերֆեյս

Վերևում հիմնական էկրանի ցուցադրումն է և 10 օրվա ժամային պատմության խոշորացված տեսքը: Սյուժեները կարելի է մեծացնել և երկու ուղղությամբ ուղղել ՝ օգտագործելով երկու մատ:

Օգտվողի միջերեսը կոդավորված է Arduino էսքիզում և այնուհետև ուղարկվում է pfodApp առաջին կապին, որտեղ այն պահվում է կրկնակի օգտագործման և թարմացումների համար: Գրաֆիկական ցուցադրումը կառուցված է պարզունակ նկարչությունից: Տեսեք Android- ի Custom Arduino Controls- ը ՝ ձեր սեփական կառավարման վահանակների ստեղծման վերաբերյալ ձեռնարկի համար: Theերմաչափ, RHGauge և Button ֆայլերը պարունակում են այդ տարրերի գծագրման հրամանները:

Նշում. Ոչ մեկը, եթե այս ցուցադրումը ներկառուցված է pfodApp- ի մեջ: Ամբողջ էկրանը լիովին վերահսկվում է ձեր Arduino էսքիզների ծածկագրով:

Lp_BLE_TempHumidity_R3.ino էսքիզում sendDrawing_z () մեթոդը սահմանում է օգտագործողի միջերեսը:

void sendDrawing_z () {dwgs.start (50, 60, dwgs. WHITE); // ֆոնի լռելյայն սպիտակը, եթե բաց թողնված է, այսինքն `սկիզբը (50, 60); parser.sendRefreshAndVersion (30000); // կրկին պահանջել dwg յուրաքանչյուր 30 վրկ վայրկյանում: սա անտեսվում է, եթե ոչ մի վերլուծիչ տարբերակ սահմանված չէ // դիպչեք վերևի կոճակներին ՝ թարմացումները ցուցադրելու համար dwgs.touchZone (). cmd ('u'). չափը (50, 39).ուղարկել (); dwgs.pushZero (35, 22, 1.5); // զրո տեղափոխել dwg կենտրոն 35, 22 և մասշտաբով 1,5 անգամ rhGauge.draw (); // նկարել վերահսկիչ dwgs.popZero (); dwgs.pushZero (18, 33); // զրո տեղափոխել dwg- ի կենտրոն 18, 33 սանդղակը 1 է (կանխադրված) ջերմաչափ: նկարել () // նկարել վերահսկիչ dwgs.popZero ();

dwgs.pushZero (12.5, 43, 0.7); // զրո տեղափոխել dwg- ի կենտրոն `մինչև 12.5, 43, իսկ մասշտաբը` 0.7

hrs8PlotButton.draw (); // նկարել վերահսկիչ dwgs.popZero (); dwgs.pushZero (37.5, 43, 0.7); // զրո տեղափոխել dwg կենտրոն 37.5, 43 և մասշտաբը 0.7 օր 1PlotButton.draw (); // նկարել վերահսկիչ dwgs.popZero ();

dwgs.pushZero (12.5, 54, 0.7); // զրո տեղափոխել dwg- ի կենտրոն մինչև 12.5, 54, իսկ մասշտաբը `0.7

days3PlotButton.draw (); // նկարել վերահսկիչ dwgs.popZero (); dwgs.pushZero (37.5, 54, 0.7); // զրո տեղափոխել dwg կենտրոն 37.5, 54 և սանդղակ 0.7 օրով // նկարել վերահսկիչ dwgs.popZero (); dwgs.end (); }

PushZero հրամանները փոխում են ծագումն ու մասշտաբը հաջորդ բաղադրիչը գծելու համար: Սա թույլ է տալիս հեշտությամբ փոխել կոճակների և չափիչների չափը և դիրքը:

Առաջին միացման դեպքում սկզբնական ցուցադրումը տևում է 5 կամ 6 վայրկյան ՝ էկրանը սահմանող ~ 800 բայթ բեռնելու համար: pfodApp- ն պահում է ցուցադրումը, այնպես որ ապագա թարմացումներին անհրաժեշտ է ուղարկել միայն փոփոխությունները, չափիչ դիրքերը և ընթերցումները: Այս թարմացումներն ընդամենը մի քանի վայրկյան են պահանջում էկրանը թարմացնելու համար 128 բայթ ուղարկելու համար:

Theուցադրման մեջ սահմանված է հինգ (5) ակտիվ հպման գոտի: Յուրաքանչյուր կոճակ ունի իր գծագրման () մեթոդով սահմանված մեկը, այնպես որ կարող եք սեղմել դրա վրա ՝ համապատասխան գծապատկերը բացելու համար, և էկրանի վերին կեսը կազմաձևված է որպես երրորդ հպման գոտի

dwgs.touchZone (). cmd ('u'): չափը (50, 39). ուղարկեք ();

Երբ կտտացնում եք կոճակների վերևի էկրանին, 'u' dwg հրամանը ուղարկվում է ձեր ուրվագծին `նոր չափումներ և էկրանի թարմացում պարտադրելու համար: Սովորաբար, երբ միացված է, թարմացումները տեղի են ունենում միայն յուրաքանչյուր 30 վայրկյանում: Գծագրի յուրաքանչյուր կտտացում կամ թարմացում ստիպում է նոր չափման: Arduino- ի էսքիզից պատասխանը pfodApp- ին հետաձգվում է մինչև նոր չափման ավարտը (m 25mS), որպեսզի վերջին արժեքը ուղարկվի թարմացման մեջ:

Arduino Էսքիզ

Arduino Sketch- ը, lp_BLE_TempHumidity_R3.ino, 1 -ին մասում օգտագործված էսքիզների օրինակելի ընդլայնված տարբերակն է: lp_BLE_TempHumidity_R3.ino էսքիզը մենյուը փոխարինում է վերևում պատկերված նկարով: Այն նաև ավելացնում է lp_Si7021 սենսորային աջակցությունը և տվյալների զանգվածները `10 րոպե և ժամյա պատմական չափումները պահելու համար:

Lp_BLE_TempHumidity_R3.ino էսքիզի հիմնական բարդությունը հողամասի տվյալների ուղարկումն է: Երբ չափումները կատարվում են readRHResults () կարգավորում է արդյունքների հավաքումը և դրանք պահելը պատմական զանգվածներում: Theանգվածները 120 են, բայց երբ տվյալները ուղարկվում են, առաջին 30 տվյալների կետերը գտնվում են ավելի նուրբ ժամանակային ընդմիջման մեջ:

Կան մի քանի կետեր, որոնց պետք է ուշադրություն դարձնել ցուցադրման 200 կենտ սյուժեի կետերն ուղարկելիս.

  1. Տվյալների յուրաքանչյուր կետը կազմում է ~ 25 բայթ, CSV տեքստային ձևաչափով: Այսպիսով, 150 միավորը 3750 բայթ տվյալ է: Lp_BLESerial դասը ունի 1536 բայթ բուֆեր, որից 1024 -ը բավական մեծ է ամենամեծ pfod հաղորդագրության համար: Մնացած 512 բայթը վերապահված է տվյալները ուղարկելու համար: Երբ պատմական տվյալները լրացնեն 512 բայթը, հետագա տվյալների ուղարկումը հետաձգվում է մինչև բուֆերում տեղ լինի:
  2. Հողամասի տվյալները դանդաղեցնելու հիմնական ցուցադրման թարմացումները, սյուժեի տվյալները ուղարկվում են միայն սյուժեի էկրանին ցուցադրվելիս: Երբ օգտվողը վերադառնա հիմնական էկրան, սյուժեի տվյալները ուղարկելը դադարեցված է: Հողամասի տվյալները ուղարկելը վերսկսվում է, երբ օգտվողը կտտացնում է սյուժեի կոճակը `նորից սյուժեն ցուցադրելու համար:
  3. Պատմական սյուժեները սկսվում են 0 -ից (այժմ) և հետ են գնում ժամանակի մեջ: Եթե վերջին գծապատկերի ցուցադրումից ի վեր ոչ մի նոր չափում չի եղել, ապա արդեն ներբեռնված նախորդ տվյալները անմիջապես անմիջապես կրկին ցուցադրվում են: Եթե կա նոր չափում, ապա այն ավելացվում է նախորդ գծապատկերի տվյալներին:
  4. Երբ մոնիտորը առաջին անգամ միացված է, պատմական ընթերցումներ չկան, և 0 -ը զանգվածներում պահվում է որպես անվավեր ընթերցում: Երբ գծապատկերը ցուցադրվում է, անվավեր ընթերցումները պարզապես բաց են թողնվում, ինչը հանգեցնում է ավելի կարճ գծագրի:

Elsելսիուս և Ֆարենհայտ

Lp_BLE_TempHumidity_R3.ino էսքիզը ցուցադրում և գծագրում է տվյալները Celsius- ում: Արդյունքները Ֆարենհեյթ փոխարկելու համար փոխարինեք բոլոր դեպքերը

parser.print (sensor. Temp_RawToFloat (..

հետ

parser.print (sensor. CtoF (sensor. Temp_RawToFloat (…

Եվ փոխարինեք Unicode degC խորհրդանիշը Octal / 342 / 204 / 203- ում degF խորհրդանիշով / 342 / 204 / 211

pfodApp- ը կցուցադրի ցանկացած շարժական Unicode, որը կարող եք ցուցադրել:

Լրացուցիչ մանրամասների համար տե՛ս Arduino- ի ոչ ASCII նշանների օգտագործումը: Փոխեք նաև MIN_C, MAX_C կարգավորումները rmերմաչափում: h: Վերջապես կարգավորեք սյուժեի սահմանները, ինչպես ցանկանում եք, օրինակ. փոփոխություն | Temp C ~ 32 ~ 8 ~ deg C |

ասել

| Ջերմաստիճան F ~ 90 ~ 14 ~ աստիճան F |

Քայլ 4: Մատակարարման հոսանքի չափում

Մատակարարման հոսանքի չափում
Մատակարարման հոսանքի չափում

Օգտագործելով lp_Si7021 գրադարանը, նույնիսկ յուրաքանչյուր 10 վրկ ջերմաստիճանի/խոնավության չափումը միայն u 1uA է նպաստում մատակարարման միջին հոսքին, ուստի մատակարարման հոսանքի և, հետևաբար, մարտկոցի տևողության հիմնական գործոնը BLE- ի գովազդի և միացման և տվյալների փոխանցման ընթացիկ հոսանքն է:.

Միացրեք Partերմաստիճանի/խոնավության տախտակը 1 -ին մասում նկարագրված merրագրավորողին, ինչպես ցույց է տրված վերևում:

Արևային բջիջներն ու մարտկոցները միացված չեն, Vin- ը և Gnd- ը միացված են ծրագրավորողի Vdd և Gnd (դեղին և կանաչ կապեր), իսկ SWCLK և SWDIO միացված են ծրագրավորողի վերնագրի տախտակի Clk և SIO (կապույտ և վարդագույն կապարներ)

Այժմ կարող եք ծրագրավորել NanoV2- ը և չափել մատակարարման հոսանքը, ինչպես նկարագրված է Մաս 1 -ում:

Տեղադրեք ցածր էներգիայի Si7021 գրադարանը այս zip ֆայլից, lp_Si7021.zip և տեղադրեք pfodParser գրադարանը և զտեք lp_BLE_TempHumidity_R3.zip ձեր Arduino էսքիզների գրացուցակում և ծրագրեք Temp/Humditiy տախտակը lp_BLE_TempHumidity_R3.ino- ով:

Ինչպես նշվեց վերևում, սենսորի ներդրումը <1uA, միջին, այս նախագծում օգտագործվող չափման ամենաբարձր արագությամբ, այնպես որ BLE գովազդի և միացման պարամետրերը մարտկոցի որոշիչ գործոնն են:

BLE- ի գովազդի և միացման պարամետրերը, որոնք ազդում են ընթացիկ սպառման վրա.

Նշում. Օգտագործելով վերը նշված կապերը, մատակարարման մեջ կան երկու (2) կարգավորիչներ, մեկը `Vin- ի միջոցով NanoV2 տախտակի վրա և ծրագրավորողի մատակարարման վրա` MAX8881- ը: Սա նշանակում է, որ չափված մատակարարման հոսանքները կլինեն u 5uA ավելի բարձր, քան իրականը `երկրորդ կարգավորիչի շնորհիվ: Ստորև բերված արժեքները չափված հոսանքներն են ՝ հանած այս լրացուցիչ 5uA- ն:

Tx Power

Tx Power էֆեկտները մատակարարում են հոսանքը ինչպես միացման ժամանակ, այնպես էլ գովազդի ժամանակ (չմիացված): Այս նախագիծը օգտագործում է առավելագույն հզորության պարամետրը (+4) և ապահովում է լավագույն տիրույթը և ամենամեծ աղմուկի իմունիտետը ամենահուսալի միացումների համար: Էլեկտրաէներգիայի կարգավորումը փոխելու համար կարող եք օգտագործել lp_BLESerial setTxPower () մեթոդը: Վավեր արժեքները, աճող հզորության դեպքում, -40, -30, -20, -16, -12, -8, -4, 0 +4 են: Դուք պետք է զանգահարեք lp_BLESerial begin () մեթոդը ԱՌԱ զանգահարեք setTxPower (): Տեսեք lp_BLE_TempHumidity_R3.ino ուրվագիծը:

Դուք կարող եք փորձարկել Tx Power- ը նվազեցնելու ուղղությամբ, սակայն փոխզիջումն ավելի կարճ է և միջամտության պատճառով կապի ավելի շատ ընդհատումներ են տեղի ունենում: Այս նախագծում Tx Power- ը մնում է իր կանխադրված ՝ +4: Ինչպես կտեսնեք ստորև, նույնիսկ այս պարամետրով, դեռևս հնարավոր է շատ ցածր մատակարարման հոսանք:

Գովազդային միջակայք

Տվյալ Tx Power- ի դեպքում, երբ կապ չկա, Գովազդային միջակայքը սահմանում է ընթացիկ միջին սպառումը: Առաջարկվող միջակայքը 500 -ից 1000mS է: Այստեղ օգտագործվել է 2000mS: Փոխզիջումն այն է, որ գովազդի ավելի երկար ընդմիջումները նշանակում են, որ ձեր բջջայինի համար ավելի դանդաղ է գտնել սարքը և կապ հաստատել: Ներքին առումով գովազդային ընդմիջումները սահմանվում են 0.625 մՍ բազմապատիկ 20 մՍ -ից մինչև 10.24 վրկ միջակայքում: Lp_BLESerial setAdvertisingInterval () մեթոդը հարմարության համար որպես փաստարկ ընդունում է mS- ը: +4 TxPower և 2000mS գովազդային միջակայքի համար ընթացիկ սպառումը կազմել է 18uA ~: 1000mS գովազդային միջակայքի համար այն կազմել է 29uA ֆունտ: Rev 2 -ն օգտագործեց 2000mS գովազդային միջակայք, բայց դա հանգեցրեց դանդաղ կապերի: Rev 3 -ը փոխվեց 1000mS գովազդի միջակայքի `կապերն ավելի արագ դարձնելու համար:

Առավելագույն և նվազագույն միացման միջակայքերը

Երբ կապ հաստատվի, կապի ընդմիջումը որոշում է, թե որքան հաճախ է բջջայինը կապվում սարքի հետ: Lp_BLESerial setConnectionInterval () թույլ է տալիս սահմանել առաջարկվող առավելագույնը և նվազագույնը, սակայն բջջայինը վերահսկում է, թե որն է իրականում կապի միջակայքը: Հարմարության համար setConnectionInterval () - ի փաստարկները գտնվում են mS- ում, սակայն ներքին կապի միջակայքերը 1.25mS- ի բազմապատիկ են ՝ 7.5mS- ից 4sec միջակայքում:

Կանխադրված պարամետրը սահմանվում է `ConnectionInterval (100, 150), այսինքն` նվազագույնը 100mS- ից մինչև առավելագույնը 150mS: Այս արժեքների ավելացումը նվազեցնում է մատակարարման հոսանքը միացված վիճակում, բայց փոխզիջումը տվյալների դանդաղ փոխանցումն է: Էկրանի յուրաքանչյուր թարմացում տևում է մոտ 7 BLE հաղորդագրություն, մինչդեռ 36 րոպեանոց 10 րոպեանոց չափումների համար անհրաժեշտ է մոտ 170 BLE հաղորդագրություն: Այսպիսով, կապի ընդմիջումների ավելացումը դանդաղեցնում է էկրանի թարմացումները և գծապատկերի ցուցադրումը:

Lp_BLESerial դասը ունի 1536 բայթ ուղարկելու բուֆեր և այս բուֆերից ուղարկում է միայն մեկ բլոկ 20 բայթ, յուրաքանչյուր կապի առավելագույն ընդմիջում ՝ կանխելու համար տվյալների BLE հղումը ողողելը: Նաև գծապատկերի տվյալներ ուղարկելիս էսքիզը միայն տվյալներ է ուղարկում մինչև 512 բայթ սպասում են ուղարկվելուն, այնուհետև հետաձգում է ավելի շատ տվյալների ուղարկումը մինչև որոշ տվյալների ուղարկումը: Սա խուսափում է ջրհեղեղից ուղարկելու բուֆերը: Ուղարկումների այս հարվածը տվյալների փոխանցումը բջջայինին դարձնում է հուսալի, սակայն այն օպտիմիզացված չէ դնելու միջոցով առավելագույնի համար:

Այս նախագծում կապի ընդմիջումները մնացել են որպես կանխադրված արժեքներ:

Ստրուկ ուշացում

Երբ բջջայինին ուղարկելու համար տվյալներ չկան, սարքը կարող է ընտրովի անտեսել բջջայինից ստացվող կապի որոշ հաղորդագրություններ: Սա խնայում է Tx Power- ը և մատակարարման հոսանքը: Slave Latency- ի կարգավորումը կապի հաղորդագրությունների թիվն է, որոնք պետք է անտեսել: Լռելյայն է 0. Այս կարգավորումը փոխելու համար կարող է օգտագործվել lp_BLESerial setSlaveLatency () մեթոդը:

0 -ի կանխադրված Slave Latency- ը տալիս էր u 50uA մատակարարման հոսանք ՝ անտեսելով էկրանի թարմացումները յուրաքանչյուր 30 վայրկյանում, սակայն KeepAlive հաղորդագրությունները ներառելով շատ 5 վայրկյան: Slave Latency- ը 2 -ի սահմանելը տվեց միացված մատակարարման միջին հոսանք ~ 25uA: Slave Latency- ի 4 պարամետրը տվել է 20uA: Ավելի բարձր պարամետրերը, կարծես, չեն նվազեցնում մատակարարման հոսանքը, ուստի օգտագործվել է Slave Latency պարամետրը `4:

Երբ միացված է, յուրաքանչյուր 30 վրկ pfodApp- ը պահանջում է ցուցադրման թարմացում: Սա ստիպում է սենսորի չափումը և հետ է ուղարկում տվյալները ՝ գրաֆիկական ցուցադրումը թարմացնելու համար: Այս թարմացումը հանգեցնում է լրացուցիչ u 66uA- ի ՝ 2 վայրկյան յուրաքանչյուր 30 վրկ: Դա միջինը 4.4uA է 30 վայրկյանի ընթացքում: Սա ավելացնելով 20uA- ին ՝ տալիս է կապի մատակարարման միջին հոսանք of 25uA

Քայլ 5. Ընդհանուր մատակարարման հոսանքը և մարտկոցի ժամկետը

Օգտագործելով վերը նշված կարգավորումները, ինչպես նշված է lp_BLE_TempHumidity_R3.ino- ում, Միացված մատակարարման ընդհանուր հոսանքը և միացնել էկրանը յուրաքանչյուր 30 վայրկյանում `մոտավորապես 25uA: Երբ միացված չէ, այն մոտավորապես 29uA է:

Մարտկոցի կյանքը հաշվարկելու համար ենթադրվում է u 29uA- ի շարունակական ընթացիկ վիճակահանություն:

Տարբեր մարտկոցներ ունեն տարբեր հզորություններ և լարման բնութագրիչներ: Այստեղ դիտարկվող մարտկոցներն են ՝ CR2032 մետաղադրամ, CR2450 (N) մետաղադրամ, 2 x AAA ալկալային, 2 x AAA լիթիում և LiPo:

Մարտկոցի ամփոփում

Եթե օգտագործում եք Solar Assist, ապա մարտկոցի այս ցուցանիշներին ավելացրեք 50% (օրական 8 ժամ լույսի ներքո)

Նշում. 22uF LowESR կոնդենսատորը (C1), բացի NanoV2 22uF կոնդենսատորից, պահում է Արևային բջիջների հոսանքը և այն մատակարարում այն TX ընթացիկ իմպուլսների համար: Մյուս իմաստով, մարտկոցը մատակարարում է TX հոսանքի մի մասը: Այս լրացուցիչ 22uF LowESR- ը մարտկոցի հոսքին ավելացնում է մոտ 10%, երբ արևային բջիջը մատակարար չէ, բայց նաև երկարացնում է մարտկոցի ժամկետը ՝ փոխհատուցելով մարտկոցի ներքին դիմադրության բարձրացումը, քանի որ մարտկոցը հասնում է կյանքի ավարտին: Ստորև բերված չափումները կատարվել են ԱՌԱՆ լրացուցիչ 22uF կոնդենսատորի:

CR2032 - 235mAHr - մարտկոցի տևողություն 10 ամիս բարձր ինքնազբաղման պատճառով:

CR2032

Մետաղադրամի այս բջիջն ունի 235mAHr հզորություն (էներգիայի մարտկոց), անվանական 3 Վ լարման և սահմանված լիցքավորման 2 Վ լարման: Սա ենթադրում է մարտկոցի տևողություն 8100 ժամ կամ 9 0.9 տարի: Այնուամենայնիվ, ներքին բջիջների դիմադրողականությունը մեծանում է, քանի որ մարտկոցը լրանում է կյանքի վերջը և, հետևաբար, կարող է չկարողանալ ապահովել Tx ընթացիկ առավելագույն իմպուլսներ: Ավելի մեծ մատակարարման կոնդենսատոր կարող է օգտագործվել այս ազդեցությունը նվազեցնելու համար, բայց ասենք 10 ամիս կյանք:

CR2450 (N)

Մետաղադրամի այս բջիջն ունի, որպես կանոն, 620mAHr հզորություն (540mAHr CR2450N- ի համար), անվանական լարումը `3 Վ և արտանետման լարման 2 Վ: Սա ենթադրում է մարտկոցի կյանք 22, 400 ժամ կամ yr 2 տարի 6 մ (18600 ժամ ~ 2 տարի 2 մ CR2450N- ի համար): Այնուամենայնիվ, ներքին բջիջների դիմադրողականությունը մեծանում է, քանի որ մարտկոցը լրանում է կյանքի վերջը և, հետևաբար, կարող է չկարողանալ ապահովել Tx ընթացիկ առավելագույն իմպուլսներ: Ավելի մեծ մատակարարման կոնդենսատոր կարող է օգտագործվել այս ազդեցությունը նվազեցնելու համար, բայց ասենք 2 տարի 4 մ (2 տարի N) կյանք:

Նշում. CR2450N տարբերակն ունի ավելի հաստ շրթունք, որն օգնում է կանխել սխալ տեղադրումը CR2450N ամրակի մեջ: Դուք կարող եք տեղադրել CR2450N և CR2450 բջիջը CR2450 կրիչի մեջ, բայց չեք կարող CR2450 բջիջ տեղադրել CR2450N ամրակի մեջ:

2 x AAA ալկալային բջիջներ

Այս մարտկոցներն ունեն մոտ 1250mAHr հզորություն (Energizer մարտկոց) շատ ցածր հոսանքների դեպքում, անվանական լարումը `2x1.5V = 3V և լիցքավորման սահմանված լարումը` 2x0.8V = 1.6V: Բայց լիցքաթափման այս նշված լարումը ավելի փոքր է, քան Si7021 տվիչի (1.9 Վ) աշխատանքային լարումը, այնպես որ մարտկոցը կարող է օգտագործվել միայն մինչև V 1 Վ յուրաքանչյուրը: Սա նվազեցնում է հզորությունը մոտ 10% -ից մինչև 15%, այսինքն ՝ m 1000mAHr:

Սա ենթադրում է մարտկոցի կյանք 34, 500 ժամ կամ ~ 4 տարի: Այնուամենայնիվ, ներքին բջիջների դիմադրողականությունը մեծանում է, քանի որ մարտկոցը լրանում է կյանքի վերջը և, հետևաբար, կարող է չկարողանալ ապահովել Tx ընթացիկ առավելագույն իմպուլսներ: Ավելի մեծ մատակարարման կոնդենսատոր կարող է օգտագործվել այս ազդեցությունը նվազեցնելու համար, բայց ասենք 3 տարի 10 մ կյանք: Նշում Ալկալային մարտկոցների ինքնալիցքավորումը տարեկան 2% -ից 3% է:

2 x AAA լիթիումի բջիջ

Այս մարտկոցներն ունեն մոտ 1200 mAHr հզորություն (Energizer մարտկոց), անվանական լարումը `2x1.7V = 3.4V, ցածր հոսանքների դեպքում և լիցքաթափվող լարման 2x1.4V = 2.4V: Սա ենթադրում է մարտկոցի տևողություն 41, 400 ժամ կամ 4 տարի 8 մ:

LiPo վերալիցքավորվող մարտկոց

Այս մարտկոցները գալիս են տարբեր հզորությունների ՝ 100mAHr- ից մինչև 2000mAHr, հարթ ձևաչափերով, ունեն 4.2V լիցքավորված լարում և> 2.7V լիցքավորված լարում: Այնուամենայնիվ, նրանք ունեն բարձր լիցքաթափում ՝ 2% -3%/ամիս (այսինքն ՝ տարեկան 24% -ից 36%), և այդքան հարմար չեն այս կիրառման համար, որքան մյուս մարտկոցները:

Քայլ 6. Այլընտրանքային մատակարարումներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային

Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային
Մատակարարման այլընտրանքներ `արևային օժանդակություն, միայն մարտկոց, միայն արևային

Մարտկոց և արևային օժանդակություն

Վերոնշյալ կառուցվածքում օգտագործվում է մարտկոցի գումարած արևային օժանդակ աղբյուր: Երբ արևային վահանակներն ավելի շատ լարում են արտադրում, քան մարտկոցի լարումը, արևային բջիջները կաշխատեցնեն մոնիտորը ՝ այդպիսով երկարացնելով մարտկոցի կյանքը: Սովորաբար մարտկոցի կյանքը կարող է երկարացվել ևս 50%-ով:

Օգտագործված արևային վահանակները փոքր են ՝ 50 մմ x 30 մմ, էժան, 50 0.50 դոլար և ցածր էներգիա: Դրանք անվանական 5V վահանակներ են, սակայն 5V արտադրելու համար անհրաժեշտ է ուղղակի ուղիղ պայծառ արևի լույս: Այս նախագծում երկու վահանակներ միացված են շարքով, այնպես որ մոնիտորը պատուհանի մոտ, ուղղակի արևից հեռու, տեղադրելը բավարար է մարտկոցի էներգիան փոխարինելու համար: Նույնիսկ լավ լուսավորված սենյակը կամ գրասեղանի լամպը բավական են, որ արևային բջիջները արտադրեն> 3.3 Վ> 33uA ջերմաստիճանում և վերցնեն մարտկոցը:

Կառուցվեց պարզ փորձնական վահանակ `որոշելու, թե որտեղ կարող է տեղադրվել ջերմաստիճանի / խոնավության մոնիտորը` արևից հեռու և դեռ արևային էներգիայով աշխատող: Ինչպես տեսնում եք վերևի լուսանկարից, 100K ռեզիստորին միացված երկու վահանակները արտադրում են 5.64V 100K- ով, այսինքն ՝ 56uA հոսանք ՝ 5.64V- ով: Սա ավելի քան բավարար է մարտկոցից մոնիտորը սնուցելու համար: 3 վ լարման մարտկոցի անվանական լարումից բարձր ցանկացած ցուցիչ նշանակում է, որ արևային բջիջները մարտկոցի փոխարեն կաշխատեցնեն մոնիտորը:

Temերմաստիճանի խոնավության մոնիտորի շղթայի երկու դիոդները մեկուսացնում են արևային բջիջներն ու մարտկոցները միմյանցից և պաշտպանում դրանք հակառակ բևեռայնության միացումից: 10V 1W zener- ի և 470R շարքի դիմադրիչը պաշտպանում է NanoV2- ի ներքին կարգավորիչը լիարժեք արևի տակ գտնվող երկու արևային բջիջների գերլարումից, հատկապես, եթե 5 Վ-ի փոխարեն օգտագործվում է 12 Վ բջիջ: <5V- ի նորմալ շահագործման դեպքում 10V զեները ձգում է միայն ~ 1uA:

Միայն մարտկոց

Միայն մարտկոցի մատակարարման համար պարզապես բաց թողեք R1, D1 և D3 և արևային բջիջները: Կարող եք նաև D1- ը փոխարինել մետաղալարով, եթե չեք ցանկանում հակադիր բևեռայնության պաշտպանություն:

Միայն արևային

Մոնիտորը միայն Արևային բջիջներից սնուցելով, առանց մարտկոցի, պահանջում է այլ էներգիայի մատակարարման միացում: Խնդիրն այն է, որ մինչ մոնիտորը կաշխատի 29uA- ով, միացման դեպքում nRF52- ը քաշում է 5 մԱ ~ 0,32 վրկ: Վերևում ցուցադրված միացումը (pdf տարբերակ) պահում է MAX8881 կարգավորիչը մինչև մուտքային կոնդենսատորները ՝ 2 x 1000uF, լիցքավորեն մինչև 4.04V: Այնուհետև MAX6457- ը թողարկում է MAX8881 SHDN մուտքը ՝ nRF52 (NanoV2) հզորացնելու համար: 2 x 1000uF կոնդենսատորները ապահովում են անհրաժեշտ մեկնարկային հոսանքը:

Սա թույլ է տալիս մոնիտորին լիցքավորել, քանի դեռ կա բավարար արևային էներգիա, այն պահել մինչև 29uA:

Քայլ 7: Եզրակացություն

Այս ձեռնարկը ներկայացրել է մարտկոցով/արևային էներգիայով աշխատող ջերմաստիճանի խոնավության մոնիտորը ՝ որպես Arduino- ում nRF52832 չիպի համար շատ ցածր էներգիայի BLE նախագիծ: Մատակարարման current 29uA հոսանքներ, որտեղ դրանք հասնում են միացման պարամետրերը կարգավորելու միջոցով: Սա հանգեցրեց CR2032 մետաղադրամի մարտկոցի մարտկոցի տևողության գերազանցմանը 10 ամսից: Ավելի երկար հզորության մետաղադրամների բջիջների և մարտկոցների համար: Երկու էժան արևային բջիջ ավելացնելով ՝ մարտկոցի կյանքը կարող է երկարացվել 50% -ով կամ ավելի: Սենյակի պայծառ լույսը կամ գրասեղանի լամպը բավարար են մոնիտորը արևային բջիջներից սնուցելու համար:

Ներկայացվեց էներգիայի հատուկ միացում, որը թույլ կտա մոնիտորին աշխատել բացառապես ցածր հզորության արևային բջիջներից:

Անվճար pfodDesigner- ը թույլ է տալիս նախագծել ընտրացանկեր/ենթամենյուներ, գծագրել ամսաթվի/ժամի և գրանցել տվյալները, այնուհետև ստեղծել ցածր էներգիայի Arduino էսքիզ ձեզ համար: Այստեղ հարմարեցված ինտերֆեյսը կոդավորված էր `օգտագործելով pfodApp նկարչական պարզունակները: PfodApp- ի հետ կապը ցուցադրում է օգտագործողի միջերեսը և թարմացնում ընթերցումները, երբ մոնիտորը օգտագործում է u 29uA

Android ծրագրավորում չի պահանջվում: pfodApp- ը զբաղվում է այդ ամենով:

Խորհուրդ ենք տալիս: