Სარჩევი:

უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით: 5 ნაბიჯი
უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით: 5 ნაბიჯი

ვიდეო: უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით: 5 ნაბიჯი

ვიდეო: უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით: 5 ნაბიჯი
ვიდეო: ღირს ყველაფრის აღება?? და რა არის კარგი ATS25X1 რადიოს მიმღების დეტალური მიმოხილვა 2024, ნოემბერი
Anonim
Image
Image
უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით
უკაბელო ენერგიის მრიცხველი დატვირთვის კონტროლით

შესავალი

Youtube არხი::::

ეს პროექტი ემყარება ატმელის Atmega16 მიკროკონტროლერს, როგორც გამოთვლების მთავარ ტვინს.

NRF24L01+ უკაბელო საკომუნიკაციო მოდული გამოიყენება უკაბელო მონაცემთა გადაცემისთვის.

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

აქ მე შევიმუშავე მარტივი პროექტი, რომელიც დაზოგავს ადამიანურ ძალას და ხარჯებს ავტომატურად გადასცემს ენერგიის რაოდენობის მრავალჯერადი ენერგიის მრიცხველს მასპინძელს ან მომსახურების მიმწოდებელს.

მე ავიღე მისი მონაცემები სამი ენერგიის მრიცხველიდან და გადავეცი მონაცემები მიმღებს, რომლებმაც გამოთვალეს დატვირთვა და მთლიანი მოხმარება ერთ მეტრზე.

თუ დატვირთვა გადააჭარბებს დასაშვებ დონეს, მაშინ ჩნდება ზარი.

მონაცემები ინახება გამგზავნის მხარეს, ასე რომ მონაცემთა დაკარგვა არ წარმოიქმნება, თუ მიმღები გამორთულია ან კავშირი დაკარგულია.

აქ არის სამუშაო ვიდეო.

სხვადასხვა კომპონენტებია:

  • ენერგიის მრიცხველი X 3
  • NRF24L01 X 2
  • ატმეგა 16 X 2
  • Optocoupler X 3

ნაბიჯი 1: ენერგიის მრიცხველის დაყენება

ენერგიის მრიცხველის დაყენება
ენერგიის მრიცხველის დაყენება
ენერგიის მრიცხველის დაყენება
ენერგიის მრიცხველის დაყენება
ენერგიის მრიცხველის დაყენება
ენერგიის მრიცხველის დაყენება

1. ჯერ გახსენით ენერგიის მრიცხველი

2. უბრალოდ გათიშეთ Cal LED- ის კათოდური ტერმინალი

3. შეაერთეთ 2 მავთული LED- ის 2 ბოლოზე.

4. შეაერთეთ LED- ის კათოდი Opto-coupler- ის Pin1- თან (MCT2E) და LED- ის მეორე ბოლო Opto-coupler- ის Pin2- თან.

5. შეაერთეთ ოპტო-წყვილის pin 4 შავ მავთულს და Pin5 ყავისფერ მავთულს. დააკავშირეთ შავი მავთული მიკროსქემის დაფაზე მიწასთან დაკავშირებული პროექტებისათვის წინასწარი გადახდის ენერგიის მრიცხველი ან ავტომატური მრიცხველის კითხვის პროექტები. ყავისფერი მავთული ატარებს პულსის გამომუშავებას.

6. შეაერთეთ კვების ბლოკი და დატვირთეთ ამ სურათის მიხედვით.

ნაბიჯი 2: ძირითადი ალგო გაანგარიშებისთვის

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

მას შემდეგ, რაც 0.3125 ვატი ენერგია იყენებს მეტრის LED (დაკალიბრების) ციმციმებს. ნიშნავს იმას, რომ თუ ჩვენ გამოვიყენებთ 100 ვატიან ნათურას ერთი წუთის განმავლობაში, პულსი წუთში 5.3 -ჯერ აციმციმდება. და ეს შეიძლება გამოითვალოს მოცემული ფორმულის გამოყენებით.

პულსი = (მეტრის პულსი * ვატი * 60) / (1000 * 3600)

თუ მეტრის პულსი არის 3200 imp და გამოყენებული ვატი არის 100 მაშინ გვაქვს

პულსი = (3200 * 100 * 60) / (1000 * 3600)

პულსი = 5.333333333 წუთში

თუ 5.3333333333 პულსი მოხდა წუთში, მაშინ ერთ საათში მოხდება პულსი..

პულსი = 5.3333333333* 60 პულსი = ~ 320 ~ 320 პულსი მოხდება ერთ საათში

ასე რომ, ერთ საათში 100 ვატიანი ნათურა მოიხმარდა 100 ვატს ელექტროენერგიას და თითქმის 320 პულსი ციმციმებს.

ახლა ჩვენ შეგვიძლია გამოვთვალოთ ერთი პულსი ელექტროენერგია მოხმარებული ვატში

ერთი პულსი (ვატი) = 100 / 320

ერთი პულსი (ვატი) = 0.3125

ნიშნავს 0.3125 ვატი ელექტროენერგიას მოხმარებული ერთი პულსი.

ახლა ერთეულის ერთეული = (ერთი პულსის ენერგია (ელექტროენერგია))* იმპულსები / 1000

თუ ერთი პულსი = 0.3125 ვატი იმპულსები 10 საათში = 3200

მაშინ ერთეული იქნება ერთეული = (0.3125 * 3200)/1000 ერთეული = 1 საშუალება, ერთი ერთეული 10 საათში 100 ვატიანი ნათურისთვის.

ახლა დავუშვათ, რომ ერთი ერთეულის განაკვეთი არის 7 რუპია, მაშინ ერთი პულსის ღირებულება იქნება

ერთი პულსის ღირებულება = (7 * ერთი მოხმარებული პულსის ენერგია) / 1000

ერთი პულსის ღირებულება = (7 * 0.3125) / 1000

ერთი პულსის ღირებულება = 0.0021875 რუპია

ნაბიჯი 3: Nrf24L01 (კრედიტი

Nrf24L01 (კრედიტი Http://gizmosnack.blogspot.in/)
Nrf24L01 (კრედიტი Http://gizmosnack.blogspot.in/)

შეისწავლეთ ეს ბმული

NRF24L01 მოდული არის გასაოცარი RF მოდული, რომელიც მუშაობს 2, 4 GHz დიაპაზონში და შესანიშნავია უკაბელო კომუნიკაციისთვის სახლში, რადგან ის შეაღწევს ბეტონის სქელ კედლებსაც კი. NRF24L01 აკეთებს ყველა რთულ პროგრამირებას თქვენს წინაშე და აქვს ფუნქციაც კი, რომ ავტომატურად შეამოწმოს გადაცემული მონაცემები მიღებულია მეორე ბოლოში. არსებობს nRF ოჯახის ჩიპების რამდენიმე განსხვავებული ვერსია და ყველა მათგანი მუშაობს მსგავსი გზა. მე მაგალითად გამოვიყენე nRF905 (433MHz) მოდული თითქმის იგივე კოდით, რასაც მე ვიყენებ nRF24L01 და nRF24L01+ უპრობლემოდ. ამ პატარა მოდულებს აქვთ შთამბეჭდავი დიაპაზონი, ზოგიერთი ვერსიით, რომელიც მართავს 1000 მ -მდე (თავისუფალი მხედველობით) კომუნიკაციას და 2000 მ -მდე ორკაციანი ანტენით.

nRF24L01 წინააღმდეგ nRF24L01+

(+) ვერსია არის ჩიპის ახალი განახლებული ვერსია და მხარს უჭერს მონაცემთა სიჩქარეს 1 Mbps, 2 Mbps და "საქალაქთაშორისო რეჟიმი" 250 kbps რაც ძალიან სასარგებლოა მაუწყებლობის ხანგრძლივობის გახანგრძლივების მიზნით. ძველი nRF24L01 (რომელიც მე გამოვიყენე ჩემს წინა პოსტებში) მხოლოდ 1 Mbps ან 2 Mbps მონაცემთა სიჩქარის მხარდაჭერა. ორივე მოდელი ერთმანეთთან თავსებადია, რამდენადაც ისინი დაყენებულია მონაცემთა ერთი და იგივე სიჩქარით. რადგან ორივე ერთი და იგივე ღირს (თითქმის არაფერი) გირჩევთ შეიძინოთ + ვერსია!

ნაწილი პირველი - დაყენება კავშირის განსხვავებები 3, 3 V მიწოდება, ერთმანეთის გვერდით. თუ მოდული იცვლება ახალი + ვერსიიდან ძველზე, დარწმუნდით, რომ არ დაგავიწყდეთ GND კაბელის გადატანა სწორ ადგილას, წინააღმდეგ შემთხვევაში ის შეამცირებს თქვენს წრეს. აქ არის + ვერსიის სურათი (ზედა ხედი), სადაც თქვენ ხედავთ ყველა კავშირს ლეიბლით. ძველ ვერსიას აქვს ორი GND კავშირი ზედა ნაწილში და არა ქვედა მარჯვენა კუთხეში.

ელექტრომომარაგება (GND & VCC) მოდული უნდა იკვებებოდეს 3, 3 ვ და არ უნდა იკვებებოდეს 5 ვ ძაბვით! ვინაიდან ძალიან ცოტა მიმდინარეობაა საჭირო, ვიყენებ ხაზოვან მარეგულირებელს ძაბვის 3, 3 ვ -მდე დაწევის მიზნით. ჩვენთვის რამის გასაადვილებლად, ჩიპს შეუძლია 5 V გაუმკლავდეს i/O პორტებს, რაც სასიამოვნოა იყოს ტკივილი, რომ დაარეგულიროს ყველა i/O კაბელი AVR ჩიპიდან. Chip Enable (CE) გამოიყენება მაშინ, როდესაც მონაცემებს (გადამცემს) აგზავნის ან მონაცემების მიღებას (მიმღებს) იწყებს. CE-pin დაკავშირებულია ნებისმიერ გამოუყენებელთან i/O პორტი AVR– ზე და დაყენებულია როგორც გამომავალი (დააყენეთ ბიტი ერთზე DDx რეგისტრში, სადაც x არის პორტის ასო.) Atmega88: PB1, ATtiny26: PA0, ATtiny85: PB3SPI ჩიპების არჩევა (CSN) ასევე ცნობილია როგორც „გემი არ აირჩიო ". CSN-pin ასევე დაკავშირებულია AVR– ის ნებისმიერ გამოუყენებელ I/O პორტთან და დაყენებულია გამომავალზე. CSN პინი ყოველთვის მაღალია, გარდა იმ შემთხვევისა, თუ როდის უნდა გაიგზავნოს SPI ბრძანება AVR– დან nRF– ში. Atmega88: PB2, ATtiny26: PA1, ATtiny85: PB4SPI საათი (SCK) ეს არის სერიული საათი. SCK აკავშირებს SR-pin- თან AVR- ზე. Atmega88: PB5, ATtiny26: PB2, ATtiny85: PB2SPI ძირითადი გამომავალი Slave input (MOSI ან MO) ეს არის მონაცემთა ხაზი SPI სისტემაში. თუ თქვენი AVR ჩიპი მხარს უჭერს SPI- გადაცემას ისევე როგორც Atmega88, ეს აკავშირებს MOSI– ს AVR– ზეც და არის მითითებული, როგორც გამომავალი. AVR– ში, რომელსაც არ გააჩნია SPI, ATtiny26 და ATtiny85– ის მსგავსად, ისინი მოდიან USI– სთან ერთად და მონაცემთა ფურცელში ნათქვამია: „USI სამ მავთულის რეჟიმი არის შეესაბამება სერიული პერიფერიული ინტერფეისის (SPI) რეჟიმს 0 და 1, მაგრამ არ გააჩნია slave select (SS) pin ფუნქციონირება. თუმცა, ეს ფუნქცია შეიძლება განხორციელდეს პროგრამულად საჭიროების შემთხვევაში "" SS "მითითებული იგივეა, რაც" CSN " და გარკვეული კვლევის შემდეგ აღმოვაჩინე ეს ბლოგი, რომელიც დამეხმარა. USI– ს SPI– ის ამოქმედების მიზნით აღმოვაჩინე, რომ მე უნდა დავუკავშირო MOSI pin nRF– დან MISO pin– ზე AVR– ზე და გამოვსაყენო როგორც გამოსავალი. Atmega88: PB3, ATtiny26: PB1, ATtiny85: PB1SPI სამაგისტრო შეყვანის Slave output (MISO ან MI) ეს არის მონაცემთა ხაზი SPI სისტემაში. თუ თქვენი AVR ჩიპი მხარს უჭერს SPI- გადაცემას Atmega88– ის მსგავსად, ეს აკავშირებს MISO– ს AVR– ზე და ეს რჩება შეყვანის სახით. ATtiny26 და ATtiny85– ზე მუშაობისთვის, მე უნდა გამოვიყენო USI, როგორც ზემოთ აღვნიშნეთ. ეს მხოლოდ მაშინ მუშაობდა, როდესაც მე nRF– ზე MISO pin– ს ვუკავშირებდი AVR– ზე MOSI– ს და ვდებდი შეყვანის სახით და ვაქცევდი შიდა გაყვანის საშუალებას. Atmega88: PB4, ATtiny26: PB0, ATtiny85: PB0, მაგრამ დიდი გზა იმის ცოდნის, თუ რა მოხდა nRF– სთან. შეგიძლიათ, მაგალითად, უთხრათ nRF- ს, რომ დააყენოს IRQ მაღალი პაკეტის მიღებისას, ან წარმატებული გადაცემის დასრულების შემდეგ. ძალიან სასარგებლოა! თუ თქვენს AVR- ს აქვს 8 -ზე მეტი ქინძისთავი და ხელმისაწვდომია interrupt -pin, მე გირჩევთ, რომ დაუკავშიროთ IRQ ერთს და დააყენოთ შეწყვეტის მოთხოვნა. Atmega88: PD2, ATtiny26: PB6, ATtiny85: -

ნაბიჯი 4: ძირითადი კავშირის დიაგრამა

ძირითადი კავშირის დიაგრამა
ძირითადი კავშირის დიაგრამა
ძირითადი კავშირის დიაგრამა
ძირითადი კავშირის დიაგრამა

კავშირის ეს სქემა სქემატურია

ნაბიჯი 5: კოდი

CODE– სთვის ეწვიეთ GitHub– ს

გირჩევთ: