Სარჩევი:
- ნაბიჯი 1: კომპონენტის შერჩევა
- ნაბიჯი 2: მშენებლობა
- ნაბიჯი 3: კოდი - დაბალი სიმძლავრის სენსორების ბიბლიოთეკა, მომხმარებლის ინტერფეისი და არდუინოს ესკიზი
- ნაბიჯი 4: მიწოდების დენის გაზომვა
- ნაბიჯი 5: მთლიანი მიწოდების მიმდინარე და ბატარეის ხანგრძლივობა
- ნაბიჯი 6: მიაწოდეთ ალტერნატივები - მზის დამხმარე, მხოლოდ ბატარეის, მხოლოდ მზის
- ნაბიჯი 7: დასკვნა
ვიდეო: მარტივი ძალიან დაბალი სიმძლავრის BLE არდუინოში ნაწილი 2 - ტემპერატურის/ტენიანობის მონიტორი - რევ. 3: 7 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:15
განახლება: 2020 წლის 23 ნოემბერი - 2 x AAA ბატარეის პირველი შეცვლა 2019 წლის 15 იანვრიდან, ანუ 22 თვე 2xAAA Alkaline– ის განახლება: 7 აპრილი მონაცემები
განახლება: 2019 წლის 24 მარტი - lp_BLE_TempHumidity Rev 2, დასძენს ნაკვეთის მეტ ვარიანტს და i2c_ClearBus
ეს სასწავლო, ძალიან დაბალი სიმძლავრის ტემპერატურის ტენიანობის მონიტორი, არის ნაწილი 3 3 -დან.
ნაწილი 1 - ძალიან დაბალი სიმძლავრის BLE მოწყობილობების შექმნა Arduino– ს საშუალებით ადვილია Arduino– ს დაბლოკვა nRF52 დაბალი სიმძლავრის მოწყობილობებისთვის, პროგრამირების მოდული და გაზომვის მიწოდება. ის ასევე მოიცავს სპეციალიზირებულ დაბალი სიმძლავრის ქრონომეტრებს და კომპარატორებს და გამოტოვებულ საშუალებებს და pfodApp– ის გამოყენებით nRF52 მოწყობილობასთან დასაკავშირებლად და გასაკონტროლებლად.
ნაწილი 2 - ძალიან დაბალი სიმძლავრის ტემპერატურის ტენიანობის მონიტორი, ეს მოიცავს Redbear Nano V2 მოდულის და Si7021 ტემპერატურის / ტენიანობის სენსორის გამოყენებას დაბალი სიმძლავრის ბატარეის / მზის მონიტორის შესაქმნელად. იგი ასევე მოიცავს Si7021 ბიბლიოთეკის მცირე სიმძლავრის შეცვლას, BLE მოწყობილობის რეგულირებას, რათა შეამციროს მისი ამჟამინდელი მოხმარება <25uA და შეიმუშაოს ტემპერატურის/ტენიანობის ჩვენება თქვენი მობილური ტელეფონისთვის.
ნაწილი 3 - Redbear Nano V2 ჩანაცვლება მოიცავს სხვა nRF52 დაფუძნებულ მოდულებს ნანო V2- ის ნაცვლად. იგი მოიცავს მომარაგების კომპონენტების შერჩევას, კონსტრუქციას, nRF52 ჩიპების პროგრამირების დაცვის ამოღებას, NFC ქინძისთავების გამოყენებას როგორც ჩვეულებრივ GPIO- ს და არდუინოში ახალი nRF52 დაფის განსაზღვრას.
ეს სასწავლო არის პრაქტიკული პროგრამა ნაწილი 1 შენობის ძალიან დაბალი სიმძლავრის BLE მოწყობილობებისათვის, რომელიც ადვილი გახდა Arduino– ს მიერ ძალიან დაბალი სიმძლავრის BLE ტემპერატურისა და ტენიანობის მონიტორის აგებით. მონიტორი წლების განმავლობაში იმუშავებს Coin Cell– ზე ან 2 x AAA ბატარეაზე, კიდევ უფრო დიდხანს მზის დახმარებით. ეს გაკვეთილი მოიცავს BLE პარამეტრების დარეგულირებას დაბალი ენერგიის მოხმარებისთვის და როგორ გამოვხატოთ მოწყობილობა ბატარეიდან, ბატარეიდან + მზის ან მზის მხოლოდ.
მიმდინარე ტემპერატურისა და ტენიანობის ჩვენების გარდა, მონიტორი ინახავს ბოლო 36 სთ 10 წუთის კითხვას და ბოლო 10 დღის საათობრივ კითხვას. ეს შეიძლება აისახოს თქვენს Android მობილურზე და ღირებულებები შეინახოთ ჟურნალის ფაილში. არ არის Android პროგრამირება საჭირო, pfodApp ამუშავებს ამ ყველაფერს. Android დისპლეი და დიაგრამა მთლიანად კონტროლდება თქვენი Arduino ესკიზით, ასე რომ თქვენ შეგიძლიათ მისი მორგება საჭიროებისამებრ.
Redbear Nano V2 დაფა გამოიყენება nRF52832 BLE კომპონენტისთვის და Sparkfun Si7021 გამანადგურებელი დაფა გამოიყენება ტემპერატურის / ტენიანობის სენსორისთვის. შეცვლილი დაბალი სიმძლავრის ბიბლიოთეკა გამოიყენება Si7021– ით. პატარა PCB შეიქმნა NanoV2- ის შესანახად და კომპონენტების მიწოდებისთვის. თუმცა, ვინაიდან ზედაპირზე დამონტაჟებული კომპონენტები არ გამოიყენება, თქვენ შეგიძლიათ მარტივად ააწყოთ ეს vero დაფაზე. დაფარულია დენის წყაროს სამი ვერსია. ი) ბატარეა პლუს მზის დამხმარე, ii) მხოლოდ ბატარეა, iii) მხოლოდ მზე. მზის მხოლოდ ვარიანტს არ აქვს ბატარეის საცავი და ის იმუშავებს მხოლოდ შუქის განათების დროს. საკმარისია ოთახის ნათელი შუქი ან სამაგიდო ნათურა.
მონახაზი
ამ პროექტს აქვს 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 mA– მდე მონაცემების გადაცემისას I2C საშუალებით. ვინაიდან ჩვენ მუდმივად არ ვიღებთ გაზომვას, 4mA არ არის საშუალო მიწოდების დენის მნიშვნელოვანი ნაწილი. წაკითხვის ძალიან 30 წამის განმავლობაში 1uA- ზე ნაკლები ემატება საშუალო მიწოდების დენს, იხილეთ მიწოდების მიმდინარე გაზომვები ქვემოთ.
არსებობს ორი ადვილად ხელმისაწვდომი Si7021 გარღვევის დაფა. ერთი ადაფრუტიდან და ერთი სპარკფუნიდან. ორი დაფის სწრაფი თვალით გეტყვით, რომ ადაფრუტის დაფას გაცილებით მეტი კომპონენტი აქვს ვიდრე სპარკფუნის დაფა, ასე რომ თქვენ მიდრეკილი იქნებით აირჩიოთ სპარკფუნის დაფა. თითოეული დაფის სქემატების დათვალიერება გვიჩვენებს, რომ Sparkfun დაფა არის მხოლოდ შიშველი სენსორი და ორი 4k7 გამყვანი რეზიზორი, ხოლო Adafruit დაფაზე არის ბორტზე, MIC5225, მარეგულირებელი, რომელიც, როგორც წესი, ამახვილებს 29uA– ს ყველა დროს. ეს მნიშვნელოვანია მაშინ, როდესაც წრედის დანარჩენზე მეტი დენი <30uA. ვინაიდან ჩვენ უკვე გვაქვს nRF52832 ჩიპის მარეგულირებელი, ეს დამატებითი კომპონენტი არ არის საჭირო და Si7021 შეიძლება იკვებებოდეს იმ 3.3 ვ წყლით. ასე რომ, ეს პროექტი გამოიყენებს Si7021 გარღვევის დაფას Sparkfun– დან.
მაქსიმალურად შეამცირეთ დენი შეყვანის გარე გამწევი/დაწეული რეზისტორების საშუალებით
4K7 I2C გამყვანი რეზისტორები არ არიან განსაკუთრებით მაღალი ღირებულების და დაბალ გაყვანისას 0,7 mA- ს მიაპყრობენ. ეს იქნება პრობლემა, თუ ისინი იქნებიან გადამრთველის შეყვანისას, რომელიც დასაბუთებული იყო ხანგრძლივი პერიოდის განმავლობაში. თუმცა ამ პროექტში დენი ამ რეზისტორების მეშვეობით მცირდება მხოლოდ I2C ინტერფეისის გამოყენებით იშვიათად და მხოლოდ მოკლე დროში. უმეტესად I2C ხაზები არ გამოიყენება და არის მაღალი / სამმხრივი, ამიტომ ამ რეზისტორებში არ გადის დენი.
ნაბიჯი 2: მშენებლობა
პროექტი აგებულია პატარა PCB– ზე, მაგრამ ვინაიდან არ არსებობს SMD კომპონენტები, ის შეიძლება ადვილად აშენდეს vero დაფის გამოყენებით. PCB დამზადებულია pcbcart.com– ის მიერ ამ გერბერის ფაილებიდან, TempHumiditySensor_R1.zip PCB არის ზოგადი დანიშნულების საკმარისი იმისათვის, რომ გამოვიყენოთ სხვა BLE პროექტებისთვის.
სქემა ნაჩვენებია ზემოთ. აქ არის pdf ვერსია.
ნაწილების სია
ერთეულის სავარაუდო ღირებულება 2018 წლის დეკემბრისთვის, ~ 62 აშშ დოლარი, გადაზიდვისა და პროგრამისტის გამოკლებით 1 ნაწილიდან
- Redbear NanoV2 ~ 17 აშშ დოლარი
- Sparkfun Si7021 გარღვევის დაფა 8 აშშ დოლარი
- 2 x 53 მმ x 30 მმ 0.15W 5V მზის უჯრედები მაგ. გადაფრენა ~ 1.10 აშშ დოლარი
- 1 x PCB TempHumiditySensor_R1.zip 25 25 აშშ დოლარი 5 ფასდაკლებით www.pcbcart.com ან Vero დაფა (სპილენძის ზოლები) მაგ. ჯეიკარ HP9540 ~ 5 AUD
- 2 x 1N5819 schottky დიოდები მაგ. დიგიკეი 1N5819FSCT-ND ~ 1 აშშ დოლარი
- 1 x 470R 0.4W 1% რეზისტორი მაგ. Digikey BC3274CT-ND 0. 0,25 აშშ დოლარი
- 6 x 6 პინიანი მამრობითი სათაურის ქინძისთავები მაგ. Sparkfun PRT-00116 ~ 1.5 აშშ დოლარი
- ქალი მდედრობითი სქესის მხტუნავი მაგ. ადაფრუტის ID: 1950 ~ 2 აშშ დოლარი
- 3 მმ x 12 მმ ნეილონის ხრახნები, მაგ. ჯეიკარ HP0140 ~ 3 AUD
- 3 მმ x 12 მმ ნეილონის თხილი, მაგ. ჯეიკარ HP0146 ~ 3 AUD
- სკოჩის მუდმივი სამონტაჟო ლენტი კატა 4010 მაგ. ამაზონიდან ~ 6.6 აშშ დოლარი
- AAA x 2 ბატარეის დამჭერი, მაგ. Sparkfun PRT-14219 ~ 1.5 აშშ დოლარი
- 2 x AAA 750mA ტუტე ბატარეები, მაგ. Sparkfun PRT-09274 1.0 1.0 აშშ დოლარი ეს ბატარეები უნდა გაგრძელდეს> 2 წელი. Energizer ტუტე ბატარეებს აქვთ უფრო მაღალი ტევადობა
- პლასტიკური ყუთი (ABS) 83 მმ x 54 მმ x 31 მმ, მაგ. ჯეიკარ HB6005 ~ 3 AUD
- pfodApp ~ 10 აშშ დოლარი
- 1 x 22uF 63V დაბალი ESR კონდენსატორი (სურვილისამებრ) მაგ. ჯეიკარ RE-6342 0.5 0.5 AUD ან Digikey P5190-ND 0. 0.25 აშშ დოლარი
მშენებლობა პირდაპირ წინ მიდის. ბატარეის დამჭერი და მზის უჯრედები პლასტმასის ყუთზეა დამაგრებული მძიმე ორმხრივი ლენტით.
გაითვალისწინეთ Gnd კავშირის მავთული CLK– დან GND– ში მზა ნაწილში. ეს არის დაინსტალირებული პროგრამირების შემდეგ, რათა თავიდან იქნას აცილებული ხმაური CLK შეყვანისას, რამაც გამოიწვია nRF52 ჩიპი მაღალი მიმდინარე გამართვის რეჟიმში
ნაბიჯი 3: კოდი - დაბალი სიმძლავრის სენსორების ბიბლიოთეკა, მომხმარებლის ინტერფეისი და არდუინოს ესკიზი
ჩამოტვირთეთ ZIP კოდი, lp_BLE_TempHumidity_R3.zip და გახსენით იგი თქვენს Arduino Sketches დირექტორიაში. თქვენ ასევე უნდა დააინსტალიროთ lp_So7021 ბიბლიოთეკა ამ zip ფაილიდან და ასევე დააინსტალიროთ pfodParser ბიბლიოთეკა.
დაბალი სიმძლავრის სენსორების ბიბლიოთეკა, lp_Si7021
ორივე ადაფრუტი და სპარკფუნი უზრუნველყოფენ დამხმარე ბიბლიოთეკებს Si7021 სენსორზე წვდომისათვის, თუმცა ორივე ბიბლიოთეკა უვარგისია ძალიან დაბალი ენერგიის გამოყენებისთვის. ორივე იყენებს კოდის შეფერხებას (25) სენსორის წაკითხვის გადადებას, სანამ ის გაზომავს. როგორც 1 ნაწილში აღინიშნა, შეფერხებები ბოროტებაა. Arduino- ს შეფერხება () უბრალოდ ინარჩუნებს მიკრო პროცესორს ენერგიის გამოყენებით, სანამ ელოდება შეფერხების დროის ამოწურვას. ეს არღვევს დაბალი სიმძლავრის BLE– ს პირველ წესს, უმეტესობისას არაფერს აკეთებთ. შეცვლის ბიბლიოთეკა lp_Si7021, ცვლის ყველა შეფერხებას lp_timers– ით, რაც მიკრო პროცესორს აძინებს სენსორის გაზომვის დასრულების მოლოდინში.
რამდენად განსხვავებულია lp_Si7021 ბიბლიოთეკა? ორიგინალური SparkFun Si7021 დამხმარე ბიბლიოთეკის გამოყენებით და წამში ერთი კითხვის გარეშე სერიული ანაბეჭდების გარეშე, საშუალოდ ~ 1.2mA გამოდის. Sparkfun ბიბლიოთეკის შეცვლა lp_Si7021 ბიბლიოთეკით ამცირებს საშუალო დენს u 10uA- მდე, ანუ 100 -ჯერ ნაკლებს. ამ პროექტში ყველაზე სწრაფი გაზომვის მაჩვენებელია 30 წამში ერთხელ, როდესაც მობილური არის დაკავშირებული, რაც იწვევს საშუალო სენსორის დენს 1uA– ზე ნაკლები. როდესაც არ არსებობს BLE კავშირი, გაზომვის სიჩქარეა ყოველ 10 წუთში ერთხელ და საშუალო სენსორის მიწოდების დენი უმნიშვნელოა.
Მომხმარებლის ინტერფეისი
ზემოთ არის მთავარი ეკრანის ჩვენება და 10 დღის საათობრივი ისტორიის მასშტაბირებული ხედი. ნაკვეთების გაფართოება და გაფანტვა შესაძლებელია ორივე მიმართულებით, ორი თითის გამოყენებით.
მომხმარებლის ინტერფეისი დაშიფრულია Arduino სკეტჩში და შემდეგ იგზავნება pfodApp– ში პირველი კავშირის დროს, სადაც ის დაცულია განმეორებითი გამოყენებისა და განახლებებისთვის. გრაფიკული ჩვენება აგებულია პრიმიტივების ხატვისგან. იხილეთ პერსონალური Arduino Controls Android- ისთვის, რათა გაეცნოთ როგორ შექმნათ თქვენი საკუთარი კონტროლი. თერმომეტრი, RHGauge და Button ფაილები შეიცავს ამ ელემენტების ნახაზის ბრძანებებს.
შენიშვნა: არა თუ ეს ჩვენება ჩაშენებულია pfodApp– ში. მთელი ეკრანი მთლიანად კონტროლდება თქვენი Arduino ესკიზის კოდით
SendDrawing_z () მეთოდი lp_BLE_TempHumidity_R3.ino ესკიზში განსაზღვრავს მომხმარებლის ინტერფეისს.
void sendDrawing_z () {dwgs.start (50, 60, dwgs. WHITE); // ფონი ნაგულისხმევია 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 დღით 10PlotButton.draw (); // დახაზეთ კონტროლი dwgs.popZero (); dwgs.end (); }
PushZero ბრძანებები ცვლის წარმოშობას და მასშტაბურობას შემდეგი კომპონენტის დახატვისთვის. ეს საშუალებას გაძლევთ ადვილად შეცვალოთ ღილაკების და გაზომვების ზომა და პოზიცია.
პირველ კავშირზე საწყის ეკრანს სჭირდება 5 ან 6 წამი ~ 800 ბაიტის ჩატვირთვაზე, რომელიც განსაზღვრავს ეკრანს. pfodApp ინახავს ეკრანს, ასე რომ სამომავლო განახლებებს მხოლოდ ცვლილებების, მრიცხველების პოზიციებისა და კითხვების გაგზავნა სჭირდებათ. ამ განახლებებს მხოლოდ რამდენიმე წამი სჭირდება, რომ 128 ბაიტი გაგზავნოს ეკრანის განახლებისთვის.
ეკრანზე განსაზღვრულია ხუთი (5) აქტიური შეხების ზონა. თითოეულ ღილაკს აქვს განსაზღვრული მისი დახაზვის () მეთოდით, ასე რომ თქვენ შეგიძლიათ დააწკაპუნოთ მასზე შესაბამისი ნაკვეთის გასახსნელად, ხოლო ეკრანის ზედა ნახევარი კონფიგურირებულია როგორც მესამე შეხების ზონა
dwgs.touchZone (). cmd ('u'). ზომა (50, 39). გაგზავნა ();
როდესაც დააჭირეთ ღილაკებს ზემოთ არსებულ ეკრანზე, 'u' dwg ბრძანება იგზავნება თქვენს ესკიზზე, რათა აიძულოს ახალი გაზომვა და ეკრანის განახლება. ჩვეულებრივ, როდესაც დაკავშირებულია, განახლებები ხდება მხოლოდ ყოველ 30 წამში. ნახატის თითოეული დაწკაპუნება ან განახლება აიძულებს ახალ გაზომვას. Arduino სკეტჩის პასუხი pfodApp– ზე გადაიდება მანამ, სანამ ახალი გაზომვა არ დასრულდება (m 25mS), ასე რომ უახლესი მნიშვნელობის გაგზავნა შესაძლებელია განახლებაში.
არდუინოს ესკიზი
Arduino Sketch, lp_BLE_TempHumidity_R3.ino, არის ნაწილში გამოყენებული ესკიზის მაგალითის გაფართოებული ვერსია. Lp_BLE_TempHumidity_R3.ino ესკიზი ცვლის მენიუს ზემოთ ნაჩვენები ნახატით. იგი ასევე ამატებს lp_Si7021 სენსორის მხარდაჭერას და მონაცემთა მასივებს 10 წუთის და საათობრივი ისტორიული გაზომვების შესანახად.
Lp_BLE_TempHumidity_R3.ino ესკიზის მთავარი გართულება არის ნაკვეთის მონაცემების გაგზავნა. გაზომვისას ხდება readRHResults () ამუშავებს შედეგების შეგროვებას და ისტორიულ მასივებში შენახვას. მასივები 120 სიგრძისაა, მაგრამ მონაცემების გაგზავნისას პირველი 30 მონაცემი უფრო ზუსტი დროის ინტერვალშია.
არსებობს რამდენიმე პუნქტი, რომელიც უნდა გავუფრთხილდეთ 200 უცნაური ნაკვეთის საჩვენებლად გაგზავნისას:-
- თითოეული მონაცემთა წერტილი არის ~ 25 ბაიტი, CSV ტექსტის ფორმატში. ასე რომ 150 ქულა არის 3750 ბაიტი მონაცემები. Lp_BLESerial კლასს აქვს 1536 ბაიტიანი ბუფერი, აქედან 1024 საკმაოდ დიდია ყველაზე დიდი pfod შეტყობინებისთვის. დანარჩენი 512 ბაიტი დაცულია მონაცემების გასაგზავნად. მას შემდეგ, რაც ისტორიულმა მონაცემებმა შეავსო 512 ბაიტი, დამატებითი მონაცემების გაგზავნა გადაიდო მანამ, სანამ ადგილი არ დარჩა ბუფერში.
- ნაკვეთის მონაცემების თავიდან ასაცილებლად მთავარი ეკრანის განახლება, ნაკვეთის მონაცემები იგზავნება მხოლოდ ნაკვეთის ეკრანის ჩვენებისას. მას შემდეგ, რაც მომხმარებელი გადადის მთავარ ეკრანზე, ნაკვეთის მონაცემების გაგზავნა შეჩერებულია. ნაკვეთის მონაცემების გაგზავნა განახლდება, როდესაც მომხმარებელი დააწკაპუნებს ნაკვეთის ღილაკზე, რათა ნაკვეთი კვლავ აჩვენოს.
- ისტორიული ნაკვეთები იწყება 0 -დან (ახლა) და უკან ბრუნდება დროში. თუ ბოლო ნაკვეთის ჩვენების შემდეგ ახალი გაზომვა არ ყოფილა, წინა მონაცემები, რომლებიც უკვე გადმოწერილია, უბრალოდ დაუყოვნებლივ გამოჩნდება დაუყოვნებლივ. თუ არის ახალი გაზომვა, მაშინ მას ემატება წინა ნაკვეთის მონაცემები.
- როდესაც მონიტორი პირველად იკვებება, არ არსებობს ისტორიული კითხვა და 0 ინახება მასივებში, როგორც არასწორი კითხვა. როდესაც ნაკვეთი ნაჩვენებია, არასწორი კითხვები უბრალოდ გამოტოვებულია, რის შედეგადაც ხდება მოკლე ნაკვეთი.
ცელსიუსი და ფარენჰაიტი
Lp_BLE_TempHumidity_R3.ino ესკიზი აჩვენებს და ასახავს მონაცემებს ცელსიუსში. შედეგების ფარენჰეიტზე გადასაყვანად შეცვალეთ ყველა მოვლენა
parser.print (sensor. Temp_RawToFloat (..
თან
parser.print (sensor. CtoF (sensor. Temp_RawToFloat (…
და შეცვალეთ უნიქოდის degC სიმბოლო ოქტალში / 342 / 204 / 203 დეგფ სიმბოლოთი / 342 / 204 / 211
pfodApp აჩვენებს ნებისმიერ უნიკოდს, რომლის ჩვენებაც შეგიძლიათ თქვენს მობილურზე.
დამატებითი ინფორმაციისთვის იხილეთ არდუინოში არა-ASCII სიმბოლოების გამოყენება. ასევე შეცვალეთ MIN_C, MAX_C პარამეტრები თერმომეტრში.თ. საბოლოოდ დაარეგულირეთ ნაკვეთის ლიმიტები როგორც გსურთ მაგ. ცვლილება | ტემპერატურა C ~ 32 ~ 8 ~ deg C |
თქმა
| ტემპერატურა F ~ 90 ~ 14 ~ deg F |
ნაბიჯი 4: მიწოდების დენის გაზომვა
Lp_Si7021 ბიბლიოთეკის გამოყენებით, თუნდაც ტემპერატურის/ტენიანობის გაზომვა ყოველ 10 წამში მხოლოდ u 1uA ხელს უწყობს საშუალო მიწოდების დენს, ამიტომ მიწოდების დენის მთავარი ფაქტორი და, შესაბამისად, ბატარეის ხანგრძლივობა არის BLE რეკლამისა და კავშირისა და მონაცემთა გადაცემის მიერ გამოყენებული დენი. რა
შეაერთეთ ტემპერატურის/ტენიანობის დაფა პროგრამისტთან, რომელიც აღწერილია 1 ნაწილში, როგორც ეს ნაჩვენებია ზემოთ.
მზის უჯრედების და ბატარეების გამორთვისას, 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) მარეგულირებელი, ერთ -ერთი NanoV2 დაფაზე Vin- ის საშუალებით და MAX8881 პროგრამისტის მარაგზე. ეს ნიშნავს, რომ გაზომილი მიწოდების დენები იქნება u 5uA უფრო მაღალი ვიდრე რეალური, მეორე მარეგულირებლის გამო. ქვემოთ მოყვანილი მნიშვნელობები არის გაზომილი დენები გამოკლებული ამ დამატებით 5uA.
Tx სიმძლავრე
Tx დენის ეფექტები ამარაგებს მიმდინარეობას როგორც დაკავშირებისას, ასევე რეკლამის დროს (დაუკავშირებელი). ეს პროექტი იყენებს მაქსიმალური სიმძლავრის პარამეტრს (+4) და უზრუნველყოფს საუკეთესო დიაპაზონს და ყველაზე დიდ ხმაურის იმუნიტეტს ყველაზე საიმედო კავშირებისთვის. თქვენ შეგიძლიათ გამოიყენოთ lp_BLESerial setTxPower () მეთოდი ენერგიის პარამეტრების შესაცვლელად. ძალაუფლების გაზრდისას ძალაშია -40, -30, -20, -16, -12, -8, -4, 0 +4. თქვენ უნდა დარეკოთ lp_BLESerial begin () მეთოდზე, სანამ დარეკავთ setTxPower () - ში. იხილეთ lp_BLE_TempHumidity_R3.ino ესკიზი.
თქვენ შეგიძლიათ ექსპერიმენტი ჩაატაროთ Tx სიმძლავრის შემცირებაზე, მაგრამ კომპრომისი უფრო მოკლე დიაპაზონშია და მეტი კავშირი იშლება ჩარევის გამო. ამ პროექტში Tx Power დარჩა ნაგულისხმევი, +4. როგორც ქვემოთ ნახავთ, თუნდაც ამ პარამეტრით, ძალიან დაბალი მიწოდების დენი მაინც შესაძლებელია.
რეკლამის ინტერვალი
მოცემული Tx სიმძლავრისთვის, როდესაც კავშირი არ არის, სარეკლამო ინტერვალი ადგენს საშუალო მიმდინარე მოხმარებას. რეკომენდებული დიაპაზონი არის 500 -დან 1000mS. აქ გამოყენებული იქნა 2000mS. კომპრომისი არის ის, რომ რეკლამის უფრო გრძელი ინტერვალი ნიშნავს, რომ თქვენი მობილური ტელეფონისთვის უფრო ნელია მოწყობილობის პოვნა და კავშირის დამყარება. შინაგანად, სარეკლამო ინტერვალები განისაზღვრება 0.625mS მრავლობით 20mS– დან 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) ანუ min 100mS to max 150mS. ამ მნიშვნელობების გაზრდა ამცირებს მიწოდების დენს დაკავშირებისას, მაგრამ კომპრომისი არის მონაცემთა ნელი გადაცემა. ეკრანის თითოეული განახლება იღებს დაახლოებით 7 BLE შეტყობინებას, ხოლო სრული 36 საათის განმავლობაში 10 წთ გაზომვას იღებს დაახლოებით 170 BLE შეტყობინება. ამრიგად, კავშირის ინტერვალების გაზრდა ანელებს ეკრანის განახლებებს და ნაკვეთის ჩვენებებს.
Lp_BLESerial კლასს აქვს 1536 ბაიტიანი გაგზავნის ბუფერი და აგზავნის მხოლოდ ერთ ბლოკს 20 ბაიტიდან ამ ბუფერიდან, თითოეული მაქსიმალური კავშირის ინტერვალით, რათა თავიდან იქნას აცილებული BLE ბმული მონაცემებით. ასევე ნაკვეთის მონაცემების გაგზავნისას, ესკიზი აგზავნის მონაცემებს მხოლოდ მანამ, სანამ 512 ბაიტი ელოდება გაგზავნას, შემდეგ აჭიანურებს მეტი მონაცემების გაგზავნას, სანამ ზოგიერთი მონაცემი არ გაიგზავნება. ეს თავიდან აიცილებს წყალდიდობის გაგზავნის ბუფერს. გზავნილების ეს შეფერხება ხდის მონაცემთა გადაცემას მობილურზე საიმედო, მაგრამ არ არის მაქსიმალურად ოპტიმიზირებული დაყენების გზით.
ამ პროექტში კავშირის ინტერვალები დარჩა, როგორც ნაგულისხმევი მნიშვნელობები.
მონა ლატენტობა
როდესაც არ არის მონაცემები მობილურზე გასაგზავნად, მოწყობილობას შეუძლია სურვილისამებრ იგნორირება გაუკეთოს მობილურთან დაკავშირების ზოგიერთ შეტყობინებას. ეს ზოგავს Tx ენერგიას და მიწოდების დენს. Slave Latency პარამეტრი არის კავშირის შეტყობინებების რაოდენობა, რომელთა იგნორირება უნდა მოხდეს. ნაგულისხმევი არის 0. ამ პარამეტრის შესაცვლელად შეგიძლიათ გამოიყენოთ lp_BLESerial setSlaveLatency () მეთოდი.
ნაგულისხმევი Slave Latency of 0 u 50uA მიწოდების მიმდინარე, იგნორირება ეკრანზე განახლება ყოველ 30 secs, მაგრამ მათ შორის keepAlive შეტყობინებები ძალიან 5 secs. Slave Latency– ის დაყენება 2 – ზე მისცა საშუალო დაკავშირებული მიწოდების დენი u 25uA. Slave Latency პარამეტრი 4 -მა მისცა u 20uA. როგორც ჩანს, უფრო მაღალმა პარამეტრებმა არ შეამცირა მიწოდების დენი, ამიტომ გამოყენებული იყო Slave Latency პარამეტრი 4.
როდესაც დაკავშირებულია, ყოველი 30 წამი pfodApp ითხოვს ჩვენების განახლებას. ეს აიძულებს სენსორის გაზომვას და უკან აგზავნის მონაცემებს გრაფიკული ეკრანის განახლებისთვის. ამ განახლების შედეგად მიიღება დამატებითი ~ 66uA 2 წამი თითოეული 30 წამის განმავლობაში. ეს არის საშუალოდ 4.4uA 30 წამის განმავლობაში. ამას 20uA- ს დამატება, იძლევა საშუალო კავშირის დენის current 25uA
ნაბიჯი 5: მთლიანი მიწოდების მიმდინარე და ბატარეის ხანგრძლივობა
ზემოთ მოყვანილი პარამეტრების გამოყენებით, როგორც მითითებულია lp_BLE_TempHumidity_R3.ino– ში, მიწოდების მთლიანი მიმდინარეობა დაკავშირებისას და ეკრანის განახლება ყოველ 30 წამში, დაახლოებით 25uA. როდესაც არ არის დაკავშირებული, ეს არის დაახლოებით 29uA.
ბატარეის ხანგრძლივობის გამოსათვლელად ვარაუდობენ, რომ მუდმივი მიმდინარე გათამაშება u 29uA.
სხვადასხვა ბატარეებს აქვთ განსხვავება სიმძლავრეებსა და ძაბვის მახასიათებლებში. აქ განხილული ბატარეებია CR2032 მონეტის უჯრედი, CR2450 (N) მონეტის უჯრედი, 2 x AAA ტუტე, 2 x AAA ლითიუმი და LiPo.
ბატარეის შეჯამება
თუ იყენებთ მზის დამხმარე მოწყობილობას, დაამატეთ ბატარეის მუშაობის ხანგრძლივობა 50% -ით (ვარაუდობთ, რომ დღის შუქი 8 საათია)
შენიშვნა: 22uF LowESR კონდენსატორი (C1), ბორტზე NanoV2 22uF კონდენსატორის გარდა, ინახავს მზის უჯრედის დენს და შემდეგ ამარაგებს მას TX დენის იმპულსებისთვის. სხვა მხრივ ბატარეა ამარაგებს ზოგიერთ TX დენს. ეს დამატებითი 22uF LowESR ამატებს ბატარეის დენზე დაახლოებით 10% -ს, როდესაც მზის უჯრედი არ არის მარაგი, მაგრამ ასევე ახანგრძლივებს ბატარეის მუშაობას ბატარეის შიდა წინააღმდეგობის გაზრდის კომპენსაციით, როდესაც ბატარეა სიცოცხლის ბოლომდე აღწევს. ქვემოთ მოყვანილი გაზომვები იქნა მიღებული დამატებითი 22uF კონდენსატორის გარეშე.
CR2032 - 235mAHr - ბატარეის ხანგრძლივობა 10 თვე CR2450 (N) - 650mAHr (540mAHr) - ბატარეის ხანგრძლივობა 2.3 წელი (2 წელი) 2 x AAA Alkaline - 1250mAHr - ბატარეის ხანგრძლივობა 3.8 წელი. 2 წ AAA ლითიუმი - 1200mAHr - ბატარეის ხანგრძლივობა 4.7 წელი ლიბლი მაღალი თვითგამორკვევის გამო.
CR2032
ამ მონეტის უჯრედს აქვს ტევადობა 235 mAHr (ენერგიის ბატარეა), ნომინალური ძაბვა 3V და განსაზღვრული გამონაბოლქვი 2V. ეს გულისხმობს ბატარეის ხანგრძლივობას 8100 საათი ან 9 0.9 წელი. თუმცა, უჯრედის შიდა წინააღმდეგობა იზრდება, როდესაც ბატარეა სიცოცხლის ბოლომდე აღწევს და შესაძლოა ვერ შეძლოს უზრუნველყოს პიქსელი Tx მიმდინარე იმპულსები. უფრო დიდი მიწოდების კონდენსატორი შეიძლება გამოყენებულ იქნას ამ ეფექტის შესამცირებლად, მაგრამ ვთქვათ 10 თვის სიცოცხლე.
CR2450 (N)
ამ მონეტის უჯრედს აქვს როგორც წესი 620mAHr (540mAHr for CR2450N), ნომინალური ძაბვა 3V და განსაზღვრული გამონაბოლქვი 2V. ეს გულისხმობს ბატარეის ხანგრძლივობას 22, 400 სთ ან yr 2 წ 6 მ (18600 სთ ~ 2 წ 2 მ CR2450N– ისთვის). თუმცა, უჯრედის შიდა წინააღმდეგობა იზრდება, როდესაც ბატარეა სიცოცხლის ბოლომდე აღწევს და შესაძლოა ვერ შეძლოს უზრუნველყოს პიქსელი Tx მიმდინარე იმპულსები. უფრო დიდი მიწოდების კონდენსატორი შეიძლება გამოყენებულ იქნას ამ ეფექტის შესამცირებლად, მაგრამ ვთქვათ 2 წელი 4 მ (2 წ N) სიცოცხლე.
შენიშვნა: CR2450N ვერსიას აქვს უფრო სქელი ტუჩი, რაც ხელს უწყობს CR2450N მფლობელში არასწორი ინსტალაციის თავიდან აცილებას. თქვენ შეგიძლიათ ჩაწეროთ CR2450N და CR2450 უჯრედი CR2450 დამჭერში, მაგრამ არ შეგიძლიათ CR2450 უჯრედი ჩასვათ CR2450N დამჭერში
2 x AAA ტუტე უჯრედი
ამ ბატარეებს აქვთ სიმძლავრე დაახლოებით 1250 mAHr (ენერგიის ბატარეა) ძალიან დაბალი დენებისთვის, ნომინალური ძაბვა 2x1.5V = 3V და გამონადენის განსაზღვრული ძაბვა 2x0.8V = 1.6V. მაგრამ ეს განსაზღვრული განმუხტვის ძაბვა ნაკლებია Si7021 სენსორის (1.9V) სამუშაო ძაბვაზე, ასე რომ ბატარეის გამოყენება შესაძლებელია მხოლოდ ~ 1 ვ -მდე. ეს ამცირებს სიმძლავრეს დაახლოებით 10% -დან 15% -მდე, ანუ ~ 1000mAHr.
ეს გულისხმობს ბატარეის ხანგრძლივობას 34, 500 საათი ან 4 ფუნტი. თუმცა, უჯრედის შიდა წინააღმდეგობა იზრდება, როდესაც ბატარეა სიცოცხლის ბოლომდე აღწევს და შესაძლოა ვერ შეძლოს უზრუნველყოს პიქსელი Tx მიმდინარე იმპულსები. უფრო დიდი მიწოდების კონდენსატორი შეიძლება გამოყენებულ იქნას ამ ეფექტის შესამცირებლად, მაგრამ ვთქვათ 3 წთ 10 მ სიცოცხლე. შენიშვნა ტუტე ბატარეებს აქვთ საკუთარი გამონადენი 2% -დან 3% -მდე წელიწადში.
2 x AAA ლითიუმის უჯრედი
ამ ბატარეებს აქვთ სიმძლავრე დაახლოებით 1200 mAHr (ენერგიის ბატარეა), ნომინალური ძაბვა 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 მმ, იაფი, 0. 0.50 $ და დაბალი სიმძლავრის. ისინი ნომინალურად 5 ვ პანელებია, მაგრამ სჭირდებათ მზის პირდაპირი სხივები, რომ გამოიმუშაოს 5 ვ. ამ პროექტში ორი პანელი ერთმანეთთან არის დაკავშირებული ისე, რომ მონიტორის განთავსება ფანჯრის მახლობლად, მზის პირდაპირი სხივების გარეშე, საკმარისია ბატარეის ენერგიის შესაცვლელად. კარგად განათებული ოთახიც, ან სამაგიდო ნათურაც კი საკმარისია მზის უჯრედებისათვის, რომ გამოიმუშაოს> 3.3V> 33uA- ზე და ბატარეის ხელში აიღოს.
მარტივი საცდელი პანელი შეიქმნა იმის დასადგენად, თუ სად შეიძლება განთავსდეს ტემპერატურის / ტენიანობის მონიტორი, მზისგან და მზის ენერგიაზე. როგორც ხედავთ ზემოთ მოყვანილი ფოტოდან, 100K რეზისტორთან დაკავშირებული ორი პანელი აწარმოებს 5.64V 100K– ზე, ანუ 56uA დენს 5.64V– ზე. ეს საკმარისზე მეტია იმისთვის, რომ მონიტორის ბატარეიდან ჩართვა. ნებისმიერი ძაბვის მაჩვენებელი ნომინალური ბატარეის ძაბვის 3V ნიშნავს, რომ მზის უჯრედები ბატარეის ნაცვლად მონიტორს ააქტიურებენ.
ორი დიოდი ტემპერატურის ტენიანობის მონიტორის წრეში იზოლირებს მზის უჯრედებს და ბატარეებს ერთმანეთისგან და იცავს მათ საპირისპირო პოლარობის შეკავშირებისგან. 10V 1W ზენერი და 470R სერიის რეზისტორი იცავს NanoV2– ის ბორტ რეგულატორს მზის სხივების ორი მზის უჯრედიდან ზედმეტი ძაბვისგან, განსაკუთრებით იმ შემთხვევაში, თუ 12 ვ უჯრედები გამოიყენება 5V– ის ნაცვლად. <5V- ზე ნორმალური მუშაობისას, 10V ზენერი მხოლოდ ~ 1uA- ს იზიდავს.
მხოლოდ ბატარეა
მხოლოდ ბატარეისთვის, უბრალოდ გამოტოვეთ R1, D1 და D3 და მზის უჯრედები. თქვენ ასევე შეგიძლიათ შეცვალოთ D1 მავთულის ნაჭერით, თუ არ გსურთ უკუ პოლარობის დაცვა.
მხოლოდ მზის
მონიტორის ჩართვა მხოლოდ მზის უჯრედებიდან, ბატარეის გარეშე, მოითხოვს კვების ბლოკის სხვა წრეს. პრობლემა ისაა, რომ სანამ მონიტორი იმუშავებს 29uA– ზე, nRF52- ის გააქტიურებისას გამოიყოფა m 5mA 0.32 წმ. ზემოთ ნაჩვენები წრე (pdf ვერსია) ინახავს MAX8881 რეგულატორს, სანამ შეყვანის კონდენსატორები, 2 x 1000uF, არ დატენავს 4.04 ვ -მდე. შემდეგ MAX6457 ავრცელებს MAX8881 SHDN შეყვანას nRF52 (NanoV2) გასაძლიერებლად. 2 x 1000uF კონდენსატორები ამარაგებენ საჭირო დაწყების დენს.
ეს საშუალებას აძლევს მონიტორს გააქტიურდეს, როგორც კი საკმარისი მზის ენერგია გააგრძელებს მუშაობას 29uA- ზე.
ნაბიჯი 7: დასკვნა
ამ სახელმძღვანელოში წარმოდგენილია ბატარეის/მზის ენერგიაზე მომუშავე ტემპერატურის ტენიანობის მონიტორი, როგორც არდუინოს ძალიან დაბალი სიმძლავრის BLE პროექტი nRF52832 ჩიპისთვის. მიაწოდეთ დენები u 29uA, სადაც მიიღწევა კავშირის პარამეტრების დარეგულირებით. ამან გამოიწვია CR2032 მონეტის ელემენტის ბატარეის ხანგრძლივობა 10 თვეზე მეტი. დიდი ხანია უფრო მაღალი სიმძლავრის მონეტის უჯრედები და ბატარეები. ორი იაფი მზის უჯრედის დამატება მარტივად ახანგრძლივებს ბატარეის მუშაობას 50% -ით ან მეტით. ოთახის ნათელი შუქი ან სამაგიდო ნათურა საკმარისია მონიტორის მზის უჯრედებიდან.
წარმოდგენილი იყო სპეციალური დენის წრე, რომელიც საშუალებას მისცემდა მონიტორს იმუშაოს წმინდა დაბალი სიმძლავრის მზის უჯრედებიდან.
უფასო pfodDesigner საშუალებას გაძლევთ შეიმუშაოთ მენიუები/ქვემენიუები, შეადგინოთ თარიღი/დრო და შეიყვანოთ მონაცემები და შემდეგ შექმნათ დაბალი სიმძლავრის არდუინოს ესკიზი თქვენთვის. აქ მორგებულია ინტერფეისი დაშიფრული pfodApp პრიმიტივების გამოყენებით. PfodApp– თან დაკავშირება აჩვენებს მომხმარებლის ინტერფეისს და აახლებს კითხვებს, სანამ მონიტორი იყენებს u 29uA
Android პროგრამირება არ არის საჭირო. pfodApp ამუშავებს ამ ყველაფერს.
გირჩევთ:
დაბალი დაბალი წინააღმდეგობის მარტივი ტესტერი (მილიომეტრი): 5 ნაბიჯი
მარტივი დაბალი წინააღმდეგობის გამომცდელი (მილიომეტრი): თუ გსურთ იცოდეთ დაბალი წინააღმდეგობის ისეთი კომპონენტების წინააღმდეგობა, როგორიცაა მავთულები, კონცენტრატორები და კოჭები, შეგიძლიათ გამოიყენოთ ეს მილიოჰმ მეტრი. მისი დამზადება მარტივია და იაფი. ის ჯიბეშიც კი ჯდება. ოჰმეტრების უმეტესობა ზუსტია 1 ომამდე
მარტივი ძალიან დაბალი სიმძლავრის BLE Arduino ნაწილში 3 - Nano V2 შეცვლა - Rev 3: 7 ნაბიჯი (სურათებით)
მარტივი ძალიან დაბალი სიმძლავრის BLE Arduino ნაწილში 3 - Nano V2 შეცვლა - Rev 3: განახლება: 7 აპრილი 2019 - Rev 3 of lp_BLE_TempHumidity, დასძენს თარიღი/დრო ნაკვეთებს, pfodApp V3.0.362+ - ის გამოყენებით და მონაცემთა გაგზავნის ავტომატურ ჩამორთმევას განახლება: 24 მარტი 2019 - lp_BLE_TempHumidity Rev 2, ამატებს ნაკვეთის მეტ ვარიანტს და i2c_ClearBus, ამატებს GT832E
კიბის ღამის ნათურა - ძალიან დაბალი სიმძლავრის და 2 სენსორი: 5 ნაბიჯი
კიბის ღამის ნათურა - ძალიან დაბალი სიმძლავრის და 2 სენსორი: მე ავაშენე ეს დაბალი სიმძლავრის კიბის ღამის ნათურა ორი ინფრაწითელი მოძრაობის სენსორით, ასე რომ მე შემიძლია დავაყენო ერთი მოწყობილობა, კიბეზე ნახევარი გზა და ეს აიძულა ან ვინმე ახვიდეს ან მოვიდეს ქვემოთ კიბეებზე. მე ასევე გავაკეთე ჩემი დიზაინი ძალიან დაბალი სიმძლავრის
PixelMeteo (ულტრა დაბალი სიმძლავრის პროგნოზის მონიტორი): 6 ნაბიჯი (სურათებით)
PixelMeteo (ულტრა დაბალი სიმძლავრის პროგნოზის მონიტორი): IOT არის მაგარი რამ, რადგან გაძლევთ საშუალებას დაუკავშიროთ ყველაფერი ინტერნეტს და გააკონტროლოთ იგი დისტანციურად, მაგრამ არის ერთი რამ, რომ ის ასევე მაგარია და ლიდერობს … მაგრამ არის კიდევ ერთი რამ, უმეტესობა ხალხს არ მოსწონს მავთულები, მაგრამ მათ არ სურთ
ძალიან მარტივი მაგრამ ძალიან ეფექტური ხუმრობა (კომპიუტერული ხუმრობა): 3 ნაბიჯი
ძალიან მარტივი … მაგრამ ძალიან ეფექტური ხუმრობა (კომპიუტერული ხუმრობა): ეს ინსტრუქცია არის ძალიან მარტივი, მაგრამ ძალიან ეფექტური! რა მოხდება: თქვენ მალავთ ყველა ხატს მსხვერპლის სამუშაო მაგიდაზე. მსხვერპლი გაგიჟდება, როცა დაინახავს კომპიუტერს მას შემდეგ რაც შენ ხუმრობ. ეს არანაირად არ შეიძლება ზიანი მიაყენოს კომპიუტერს