Სარჩევი:
- ნაბიჯი 1: საჭირო მასალები
- ნაბიჯი 2: გარემოს დაყენება
- ნაბიჯი 3: დიზაინის მიმოხილვა
- ნაბიჯი 4: პერსონალური პატჩების შექმნა XOD ძირითადი ბიბლიოთეკიდან
- ნაბიჯი 5: შექმენით პერსონალური პატჩები C ++ - ის გამოყენებით
- ნაბიჯი 6: მშენებლობა
- ნაბიჯი 7: ტესტირება, ნაწილი 1
- ნაბიჯი 8: ტესტირება, ნაწილი 2
- ნაბიჯი 9: დანართი საეჭვო ლოგიკაზე
ვიდეო: XOD ენერგიით დატენვის მზის ნათურა: 9 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:20
არის იაფი მზის ბაღის/საფეხმავლო ნათურები, რომლებიც ხელმისაწვდომია უმეტეს საყოფაცხოვრებო საქონლისა და ტექნიკის მაღაზიებში. როგორც ძველი გამონათქვამია, თქვენ ჩვეულებრივ იღებთ იმას, რასაც იხდით. ჩვეულებრივი დატენვისა და განათების სქემები, რომლებსაც ისინი იყენებენ, მარტივი და იაფია, მაგრამ სინათლის გამომუშავება თქვენ არაფერს შთამბეჭდავია (და ძლივს საკმარისი არავისთვის, ვინც თქვენს საფეხმავლო ბილიკს იყენებს, რომ ნახოს სად მიდიან!)
ეს არის ჩემი მცდელობა, განვსაზღვრო განათების მოდული, რომელიც მნიშვნელოვანი გაუმჯობესებაა, მაგრამ ჯერჯერობით შედარებით იაფია. რაღაც "ტვინის" მიცემით. XOD.io არის ახალი IDE, რომელიც თავსებადია Arduino- ს ჩამონტაჟებულ განვითარების პლატფორმასთან, სადაც შეგიძლიათ გრაფიკულად ჩაწეროთ კოდი. გარემო გადააქვს თქვენი გრაფიკული ესკიზი თანამედროვე C ++ - ზე, რაც საოცრად ეფექტურია კომპაქტური კოდის წარმოქმნისას და ქმნის წყაროს სრულად თავსებადი Arduino IDE– ს აქციებთან, შემდგომი გარე დამოკიდებულებების მოთხოვნის გარეშე. ამრიგად, მცირე, იაფი მიკროკონტროლერები შეზღუდული პროგრამითა და მონაცემთა შენახვის რესურსებით შეიძლება გამოყენებულ იქნას რთული ამოცანების შესასრულებლად.
ეს პროექტი გვიჩვენებს, თუ როგორ შეიძლება გამოყენებულ იქნას Arduino- თან თავსებადი ATTiny85 მიკროკონტროლერი, რომელიც მუშაობს ერთად ნათურის ენერგიის მოთხოვნილებებზე. პირველი პროცესორი ამუშავებს გარე აპარატურის გარე გარემოს მონაცემებს, მეორე ცდილობს დღის განმავლობაში მიიღოს ყველაზე მეტი ენერგია მზისგან, შემდეგ კი აკონტროლებს მაღალი სიმძლავრის LED განათებას, რადგან ღამით ბატარეა იტენება. მეორე პროცესორი ასრულებს თავის სამუშაოს კომპაქტური განხორციელების გზით "ბუნდოვანი ლოგიკა" კონტროლი. ორივე ჩიპის პროგრამული უზრუნველყოფა შემუშავდა ექსკლუზიურად XOD გარემოში.
ნაბიჯი 1: საჭირო მასალები
Arduino IDE, უახლესი ვერსია, ATTinyCore გაფართოებით დაინსტალირებული "დაფების" მენეჯერისგან
Sparkfun USBTinyISP ATTiny პროგრამისტი, 11801 ან ექვივალენტი Sparkfun პროდუქტის გვერდი
Pololu რეგულირებადი დაბალი ძაბვის გამაძლიერებელი კონვერტორი გამორთვის შეყვანით, U1V11A ან ექვივალენტი Pololu პროდუქტის გვერდი
მაღალი სიმძლავრის თეთრი ან RGB LED გამაცხელებელი, საერთო ანოდი, Adafruit 2524 ან ექვივალენტი Adafruit პროდუქტის გვერდი
მიკროჩიპი ATTiny85 8 პინიანი DIP პაკეტში, 2 Mouser პროდუქტის გვერდი
8 პინიანი DIP IC სოკეტი, 2
ნაყარი შესანახი კონდენსატორი, 16 ვ 220 uF
გამომავალი კონდენსატორი, 6.3v 47uF
დენის შემზღუდველი რეზისტორები, 50 ohm 1/4 ვატი
i2c გამყვანი რეზისტორები, 4.7k, 2
პანელის ძაბვის გრძნობის გამყოფი რეზისტორები, 1/4 ვატი, 100k, 470k
მიმდინარე გრძნობის რეზისტორი, 10 ohm 1⁄2 watt 1% ტოლერანტობა
შემოვლითი კონდენსატორები, 0.1uF კერამიკული, 2
2 3.7 ვ 100mAh ლითიუმ-იონური დატენვის ბატარეა, PKCELL LP401 ან ექვივალენტი
ლულის დანამატის შეყვანის ბუდე პანელისთვის, 1
მინი ტერმინალი ბლოკავს 3”x3” სანტიმეტრის დაფას და თხელი მყარი ბირთვით მავთულს კავშირების დასამყარებლად
შესამოწმებლად თითქმის აუცილებლად იქნება საჭირო ოსცილოსკოპი, მულტიმეტრი და სკამის კვების წყარო
ნაბიჯი 2: გარემოს დაყენება
XOD გარემო არ უჭერს მხარს ATTiny პროცესორების სერიას ყუთში, მაგრამ Arduino სამყაროს მესამე მხარის რამდენიმე ბიბლიოთეკის გამოყენებით, პირდაპირი დამატებაა AVR– ების ამ სერიისთვის. პირველი ნაბიჯი არის დააინსტალიროთ „ATTinyCore“ბიბლიოთეკა Arduino IDE– ს ჩამოსაშლელი მენიუდან „Tools → Board → Board Manager“. დარწმუნდით, რომ შეტანილი სურათის მიხედვით ნაჩვენები პარამეტრები სწორია - გახსოვდეთ, რომ ნებისმიერი კოდის ატვირთვამდე თქვენ უნდა დააჭიროთ ღილაკს "Burn bootloader", რათა შეცვალოთ ბრაუნტის ძაბვისა და საათის სიჩქარის დაყენების დამცავი!
ამ ბიბლიოთეკის წყაროს კოდი ხელმისაწვდომია:
საცავიდან კიდევ ერთი დამხმარე ბიბლიოთეკა არის „FixedPoints“, რომელიც არის Arduino- ს მიერ მხარდაჭერილი პროცესორებისთვის ფიქსირებული წერტილების მათემატიკის შედგენის დროული განხორციელება. ATTiny– ს აქვს შეზღუდული SRAM და პროგრამის მეხსიერება და ეს მნიშვნელოვნად უწყობს ხელს საბოლოო ესკიზის ზომის შემცირებაში მონაცემების შენახვისათვის 2 ბაიტი მთლიანი რიცხვის გამოსაყენებლად, ვიდრე მცურავი წერტილის ტიპისათვის, რომელიც მოითხოვს 4 ბაიტს AVR– ზე. შესრულების სიჩქარე ასევე უნდა გაუმჯობესდეს, რადგან ATTiny– ს არ გააჩნია აპარატურა-გამრავლების ერთეული, მით უმეტეს აპარატურის მცურავი წერტილი!
წყაროს კოდი ხელმისაწვდომია:
გაკვეთილი, თუ როგორ უნდა შექმნათ, გადმოიტანოთ და განათავსოთ XOD გრაფიკული ესკიზები:
ნაბიჯი 3: დიზაინის მიმოხილვა
დაფაზე ორი ATTiny85 პროცესორი დაკავშირებულია i2c ინტერფეისის საშუალებით და გამოიყენება ერთად, მზის პანელის ძაბვის შეგრძნების მართვის მიზნით, ბატარეაში ჩადის გამაძლიერებელი გადამყვანი, ხოლო პანელი განათებულია, ბატარეის ძაბვა და ბატარეა ტემპერატურა
გამაძლიერებელი კონვერტორი არის off-the-shelf მოდული, რომელიც დაფუძნებულია Texas Instruments TPS6120 IC– ზე, რომელსაც შეუძლია აიღოს შემავალი ძაბვა 0.5 ვოლტამდე და გაზარდოს იგი 2 ვოლტიდან 5 ვოლტამდე. სენსორის ბირთვი მოიცავს რამდენიმე ფუნქციურ ბლოკს. სამაგისტრო საათი იწყებს მუშაობას, როგორც კი მზის პანელის შეყვანისას გამაძლიერებელ კონვერტორზე ენერგია გამოიყენება. ეს იწყებს ესკიზის შესრულებას და პირველი არის იმის დადგენა, არის თუ არა პანელი საკმარისად განათებული, რომ უზრუნველყოს ბატარეის დატენვის დენი.
მზის პანელის ძაბვა გადის ორი ციფრული ფილტრის საშუალებით და თუ ის გარკვეულ ზღურბლს აჭარბებს, სისტემა განსაზღვრავს, რომ პანელი განათებულია და ათავსებს სამაგისტრო საათს მიმდინარე მნიშვნელობის მონიტორში. ეს არის ჩიპის ანალოგიურ ციფრული გადამყვანი არხი, კონფიგურირებული დიფერენციალურად, რომელიც გრძნობს ძაბვას 10 ohm 1% ტოლერანტობის რეზისტორზე, რომელიც დაკავშირებულია სერიულად გამაძლიერებელი გადამყვანის გამომუშავებასა და ბატარეის შეყვანას შორის. როდესაც პანელი არ არის განათებული, ეს ATTiny აგზავნის სიგნალს მეორე ATTiny– ს, რომელიც ეუბნება, რომ დააკვირდეს LED ენერგიას დატენვის ნაცვლად, და გამორთეთ გამაძლიერებელი კონვერტორი და გამოყავით შეყვანა ისე, რომ ბატარეა არ გამოაგზავნოს მიმდინარეობა პანელის მეშვეობით. რა
მეორე ATTiny ბირთვი არის იქ, სადაც მუშაობს LED კონტროლერი და ბატარეის დატენვის მონიტორინგის სისტემა. პანელის ძაბვა, ბატარეის ძაბვა და ბატარეის დატენვის მიმდინარე მონაცემები იგზავნება ამ ბირთვში გაურკვეველი ლოგიკური ქსელის დამუშავების მიზნით, რომელიც ცდილობს შექმნას შესაბამისი PWM სიგნალი, რომელიც გამოიყენება SHTDN პინზე, რითაც აკონტროლებს ბატარეაზე გაგზავნილი დენის რაოდენობას მისი დატენვა განათების დროს-მაქსიმალური სიმძლავრის წერტილის თვალყურის დევნის ძირითადი ფორმა (MPPT.) ის ასევე იღებს სიგნალს სენსორის ბირთვიდან, რომელშიც ნათქვამია, უნდა ჩართოს თუ გამორთოს LED, რაც დამოკიდებულია სენსორის ბირთვის დღის გამომუშავებაზე/ ღამის ფლიპ ფლოპი.
როდესაც LED ღამით აქტიურია, ეს ATTiny მონიტორინგს უწევს ბატარეის ძაბვის მონაცემებს, რომლებიც მას ეგზავნება მისი მეგობრისგან და მისი საკუთარი ჩიპური ტემპერატურის სენსორი, რათა მიიღოთ უხეში შეფასება იმის შესახებ, თუ რამდენი ენერგია მიედინება LED- ში (ბატარეის ძაბვა მცირდება და ჩიპების ტემპერატურა იზრდება მისი ქინძისთავებიდან ამოღებული დენით.) ბუნდოვანი ლოგიკური ქსელი, რომელიც დაკავშირებულია LED PWM პატჩთან, ცდილობს გამოიტანოს გადაწყვეტილება ბატარეის სიმძლავრის შესახებ, და შეამციროს LED ინტენსივობა ბატარეის ამოწურვისას.
ნაბიჯი 4: პერსონალური პატჩების შექმნა XOD ძირითადი ბიბლიოთეკიდან
ამ დიზაინისთვის გამოყენებულია რამდენიმე პერსონალური პატჩი კვანძი, რომელთაგან ზოგი შეიძლება ადვილად აშენდეს მთლიანად XOD კვანძებიდან, ზოგი კი C ++ - ში.
პირველი ორი პერსონალური პატჩი კვანძიდან სურათებში, ექსპონენციალური მოძრავი საშუალო ფილტრის განხორციელება. ეს არის დაბალი ოვერჰედის დაბალი გამავლობის ციფრული ფილტრი, რომელიც გამოიყენება სერიაში ესკიზში, ერთხელ ლოგიკური ბირთვის შემომავალი მზის პანელის ძაბვის გასაფილტრავად და კიდევ ერთხელ საკვების შესანახად, რომელიც განსაზღვრავს გარემოს ხანგრძლივ განათებას. იხილეთ ვიკიპედიის ჩანაწერი ექსპონენციალური გასწორების შესახებ.
კვანძის სტრუქტურა გამოსახულებაში არის მხოლოდ სტატიის გადაცემის ფუნქციის პირდაპირი გრაფიკული წარმოდგენა, რომელიც დაკავშირებულია ერთმანეთთან შესაბამისი შეყვანის ბმულების გამოყენებით. ბიბლიოთეკიდან არის გადავადების კვანძი, რომელიც იძლევა უკუკავშირის მარყუჟის შექმნას (XOD გაგაფრთხილებთ, თუ შექმნით უკუკავშირის მარყუჟს მარყუჟის შეფერხების გარეშე, როგორც ეს აღწერილია XOD შესრულების მოდელში.) ამ დეტალზე ზრუნვა პატჩი კარგად მუშაობს, ეს მარტივია.
მეორე საბაჟო პატჩი კვანძი არის ვარიაცია საფონდო ფლიპ ფლოპზე XOD– თან ერთად, რომელიც იკვებება გაფილტრული პანელის ძაბვით. ის იკეტება მაღალი ან დაბალი იმისდა მიხედვით, არის თუ არა შეყვანის სიგნალი გარკვეული ბარიერის ზემოთ ან ქვემოთ. Cast კვანძები გამოიყენება ლოგიკური გამომავალი მნიშვნელობების პულსის მონაცემების ტიპად გადასაყვანად, რათა მოხდეს ფლიპ ფლოპის გამოწვევა, რადგან მდგომარეობა გადადის დაბალიდან მაღალზე. ამ პატჩის კვანძის დიზაინი იმედია უნდა იყოს გარკვეულწილად გასაგები ეკრანის ანაბეჭდიდან.
ნაბიჯი 5: შექმენით პერსონალური პატჩები C ++ - ის გამოყენებით
სპეციალური მოთხოვნებისთვის, სადაც საჭიროა კვანძის ფუნქციონირება ძალიან რთული გრაფიკული გამოსახულებისთვის, ან რომელიც ემყარება Arduino ბიბლიოთეკებს, რომლებიც არ არიან Arduino გარემოს მკვიდრი, XOD აადვილებს C/C ++ ცოდნის მქონე პირებს დაწერონ ნაკბენის ზომის ნაჭრები კოდი, რომელიც შემდეგ შეიძლება ინტეგრირებული იყოს პატჩში, ისევე როგორც სხვა მომხმარებლის მიერ შექმნილი ან საფონდო კვანძი. ფაილის მენიუდან "შექმნა ახალი პაჩის" არჩევა ქმნის ცარიელ ფურცელს სამუშაოდ, ხოლო შესასვლელი და გამომავალი კვანძების გადატანა შესაძლებელია ძირითადი ბიბლიოთეკის "კვანძების" განყოფილებიდან. შემდეგ "შეუსრულებელი- in-xod" კვანძი შეიძლება გადაიტანოს და როდესაც დააწკაპუნებს ის გამოიტანს ტექსტურ რედაქტორს, სადაც საჭირო ფუნქციონირება შეიძლება განხორციელდეს C ++-ში. როგორ უნდა გაუმკლავდეთ შიდა მდგომარეობას და C ++ კოდიდან შესასვლელ და გამომავალ პორტებზე წვდომას აქ.
როგორც მაგალითი C ++ - ში მორგებული პატჩების დანერგვისთვის, მძღოლის ბირთვის შემდგომი ორი პერსონალური პატჩი გამოიყენება მძღოლის ბირთვის მიწოდების ძაბვის და ძირითადი ტემპერატურის შეფასების მიზნით. თავის ბუნდოვან ქსელთან ერთად, ეს საშუალებას გაძლევთ უხეშად შეაფასოთ დარჩენილი ბატარეა, რომელიც ხელმისაწვდომია LED- ებისთვის, როდესაც ბნელია.
ტემპერატურის სენსორის პატჩი ასევე იკვებება მიწოდების ძაბვის სენსორის გამომუშავებით უკეთესი შეფასების მისაღებად - ძირითადი ტემპერატურის შეგრძნება საშუალებას გვაძლევს მივიღოთ უხეში შეფასება იმის შესახებ, თუ რამდენი ენერგია იწვის LED- ებში და შერწყმულია მიწოდების ძაბვის კითხვას, როდესაც ბატარეის ამოწურვა კიდევ ერთი უხეში შეფასებით რამდენი ბატარეის ენერგიაა დარჩენილი. ის არ უნდა იყოს სუპერ ზუსტი; თუ ბირთვმა "იცის", რომ LED- ები ბევრ დენს ახორციელებენ, მაგრამ ბატარეის ძაბვა სწრაფად იკლებს, ალბათ უსაფრთხოდ შეიძლება ითქვას, რომ ბატარეის სიმძლავრე არ გაგრძელდება დიდხანს და დროა ნათურის ჩაქრობა.
ნაბიჯი 6: მშენებლობა
მე პროექტი შევქმენი პროტოტიპის დაფის პატარა ნაჭერზე, სპილენძის ბალიშებით ხვრელი ნაწილებისთვის. IC– ების სოკეტების გამოყენება ძალიან უწყობს ხელს პროგრამირებას/მოდიფიკაციას/ტესტირებას; USBTiny პროვაიდერს Sparkfun– ს აქვს მსგავსი სოკეტი მის დაფაზე, ასე რომ, ორი ჩიპის დაპროგრამება მხოლოდ შედგება პროგრამისტის კომპიუტერის USB პორტში ჩართვისგან, გადმოწერილი XOD კოდის ჩათვლით Arduino.ino ფაილებიდან შესაბამისი დაფისა და პროგრამისტის პარამეტრებით და შემდეგ ნაზად ამოიღეთ ჩიპი პროგრამისტის სოკეტიდან და ჩასვით პროტობორდის სოკეტებში.
Pololu TPS6120 დაფუძნებული გამაძლიერებელი კონვერტორი მოდული მოდის ამოსვლის დაფაზე, რომელიც გაერთიანებულია პროტო დაფაზე, სათაურებზე, ასე რომ შესაძლებელია სივრცის დაზოგვა ზოგიერთი კომპონენტის ქვემოთ დამონტაჟებით. ჩემს პროტოტიპზე მე დავაყენე ორი 4.7k გამყვანი რეზისტორი. ეს აუცილებელია ჩიპებს შორის i2c ავტობუსის სწორად მუშაობისთვის - მათ გარეშე კომუნიკაცია არ იმუშავებს! დაფის მარჯვენა მხარეს არის მზის პანელის დანამატის შეყვანის ბუდე და შესასვლელი კონდენსატორი. უმჯობესია შეეცადოთ დააკავშიროთ ჯეკი და ეს თავსახური პირდაპირ ერთმანეთთან შედუღების და არა მავთულის "გაშვების" საშუალებით, რათა მიიღოთ რაც შეიძლება დაბალი წინააღმდეგობა. მყარი შედუღების გაშვება შემდეგ გამოიყენება შენახვის კონდენსატორის პოზიტიური ტერმინალის დასაკავშირებლად უშუალოდ გამაძლიერებელი მოდულის შეყვანის ძაბვის ტერმინალთან, ხოლო გამაძლიერებელი მოდულის გრუნტის პინი პირდაპირ ჯეკის გრუნტის პინთან.
ორი ATTinys- ის სოკეტების მარჯვნივ და მარცხნივ არის 0.1uF despike/deglitching capacitors. ეს კომპონენტები ასევე მნიშვნელოვანია, რომ არ გამოტოვოთ და უნდა იყოს დაკავშირებული IC– ების დენსა და მიწასთან, რაც შეიძლება მოკლე და პირდაპირი გზით. 10 ohm მიმდინარე გრძნობადი რეზისტორი არის მარცხნივ, ეს არის დაკავშირებული გამავალი კონვერტორიდან გამომავალთან და თითოეული მხარე დაკავშირებულია სენსორის ძირითადი შესასვლელთან მიმდინარე ბატარეაში. კავშირი IC ქინძისთავებს შორის i2c ავტობუსისთვის და გამაძლიერებელი კონვერტორის გამორთვის ქინძისთათვის და ა.შ. ეს აადვილებს ცვლილებებს და ასევე ბევრად უფრო ლამაზად გამოიყურება, ვიდრე ხვრელებს შორის მხტუნავები.
LED მოდული, რომელიც მე გამოვიყენე, იყო სამი ფერის RGB ერთეული, ჩემი გეგმა იყო სამივე LED- ები აქტიური ყოფილიყო თეთრი წარმოებისათვის, როდესაც ბატარეა თითქმის სრულად დატენული იყო და ნელ-ნელა ჩამქრალიყო ლურჯი LED ყვითლად, როგორც დამუხტვისას. მაგრამ ეს ფუნქცია ჯერ კიდევ არ არის დანერგილი. ერთი თეთრი LED ერთი დენის შემზღუდველი რეზისტორით ასევე კარგად იმუშავებს.
ნაბიჯი 7: ტესტირება, ნაწილი 1
ორივე ATTiny IC– ს დაპროგრამების შემდეგ ჩართული ესკიზის ფაილები USB პროგრამისტის საშუალებით Arduino გარედან, ეს ეხმარება შეამოწმოთ, რომ პროტოტიპის ორი ბირთვი სწორად ფუნქციონირებს მზის ბატარეიდან ბატარეის დატენვის მცდელობამდე. იდეალურ შემთხვევაში, ეს მოითხოვს ძირითად oscillscope- ს, მულტიმეტრს და სკამის კვების ბლოკს.
პირველი რაც უნდა შეამოწმოთ არის ის, რომ ბორტზე არ არის მოკლე ჩართვა სადმე, სანამ IC- ებს, ბატარეას და პანელს შეაერთებთ მათ სოკეტებში, რათა თავიდან აიცილოთ შესაძლო დაზიანება! ამის უმარტივესი გზაა სკამზე დენის წყაროს გამოყენება, რომელსაც შეუძლია ამ სიტუაციის შემთხვევაში მისი გამომავალი დენის უსაფრთხო მნიშვნელობამდე შეზღუდვა. მე გამოვიყენე ჩემი სკამი 3 ვოლტზე და 100 mA ლიმიტზე, რომელიც დაკავშირებულია მზის პანელის შეყვანის ჯეკ ტერმინალებთან დადებით და უარყოფით დენის წყაროსთან. პასიური კომპონენტების გარდა სხვა არაფერია, არსებითად არ უნდა იყოს რეგისტრირებული დენის წყაროს დენის მიმდინარე მონიტორზე ლაპარაკი. თუ არსებობს მნიშვნელოვანი მიმდინარე ნაკადი, ან მარაგი გადადის დენის შეზღუდვაში, რაღაც არასწორედ წარიმართა და დაფა უნდა შემოწმდეს, რათა დარწმუნდეს, რომ არ არსებობს არასწორი კავშირი ან კონდენსატორები საპირისპირო პოლარობით.
შემდეგი ნაბიჯი არის უზრუნველყოს გამაძლიერებელი კონვერტორი სწორად მუშაობს. დაფაზე არის ხრახნიანი პოტენომეტრი, დენის წყაროსთან ჯერ კიდევ ჩართული და კონვერტორის ოთხი ქინძისთავი, რომელიც სათანადოდ არის დაკავშირებული, პოტენომეტრი უნდა იყოს შემობრუნებული პატარა ხრახნიანი წვერით, სანამ მოდულის გამომავალი ტერმინალის ძაბვა არ იკითხება 3.8-დან 3.9 ვოლტამდე. ეს DC მნიშვნელობა არ შეიცვლება ოპერაციის დროს, დრაივერის ბირთვი გააკონტროლებს საშუალო გამომავალ ძაბვას მოდულის გამორთვის პინსის საშუალებით.
ნაბიჯი 8: ტესტირება, ნაწილი 2
შემდეგი, რაც უნდა შემოწმდეს არის ის, რომ i2c კომუნიკაცია მუშაობს ნორმალურად, როდესაც დაფაზე მუშაობს სენსორის ძირითადი IC შეიძლება დამონტაჟდეს. ოსცილოსკოპზე უნდა იყოს პულსირებული სიგნალები ფიზიკური ჩიპის ორივე პინ 5 -ზე და 7 -ზე, ჩიპზე ეს i2c დრაივერი ცდილობს მონაცემების გაგზავნას თავის მეგობართან. დრაივერის ბირთვის გათიშვის და კავშირის კვლავ ოსცილოსკოპით გადამოწმების შემდეგ, ორივე ხაზზე უნდა იყოს ხილვადი იმპულსების უფრო დიდი თანმიმდევრობა. ეს ნიშნავს, რომ ჩიპები სწორად ურთიერთობენ.
ეს ხელს უწყობს ბატარეის ოდნავ დატენვას საბოლოო სრული გამოცდისთვის. სკამების მიწოდება ასევე შეიძლება გამოყენებულ იქნას ამის მისაღწევად, მიმდინარე ლიმიტი დადგენილია დაახლოებით 50 mA და ძაბვა კვლავ 3.8 ვოლტი, რის გამოც LiPo ბატარეა უშუალოდ არის დაკავშირებული რამდენიმე წუთის განმავლობაში.
საბოლოო ნაბიჯი არის სრული სისტემის გამოცდა - ყველაფერთან დაკავშირებული, თუ პანელი დაფარულია ათი ან 15 წამის განმავლობაში, შუქი უნდა აინთოს დრაივერის ძირითადი PWM გამომავალი საშუალებით. პანელი მზის სინათლის ქვეშ, ბატარეა უნდა დატენოს გამაძლიერებლის გადამყვანის გამომუშავებიდან. გაურკვეველი ლოგიკური ქსელი შეიძლება არაპირდაპირ შემოწმდეს იმის გასაგებად, მუშაობს თუ არა ის სწორად PWM ხაზის შემხედვარე გამაძლიერებლის კონვერტორის გამორთვის ქინძისთავზე; როდესაც განათება იზრდება ბატარეასთან დაბალი დატენვისას, პულსის სიგანე უნდა გაიზარდოს, რაც აჩვენებს, რომ რაც უფრო მეტი ენერგია ხდება მზის სხივებისგან, დრაივერის ბირთვი მიანიშნებს იმაზე, რომ მეტი ენერგია უნდა გაიგზავნოს ბატარეაში!
ნაბიჯი 9: დანართი საეჭვო ლოგიკაზე
გაურკვეველი ლოგიკა არის მანქანათმცოდნეობის ტექნიკა, რომელიც შეიძლება გამოყენებულ იქნას აპარატურის სისტემების კონტროლისას, სადაც გაურკვევლობაა სისტემის მიერ კონტროლირებად ბევრ პარამეტრში, რაც მკაფიოდ ასახავს გამომავალი კონტროლის გადაწყვეტას იმ მიზნისთვის, რაც ძნელია მათემატიკურად ჩაწერა. ეს მიიღწევა ლოგიკური მნიშვნელობების გამოყენებით, რომლებიც სადღაც 0 -ს შორისაა (ყალბი) და 1 -მდე (ჭეშმარიტი), გამოხატავენ გაურკვევლობას იმ მნიშვნელობით, რომელიც უფრო მეტად ჰგავს ადამიანებს („უმეტესად მართალია“ან „ნამდვილად არ არის ჭეშმარიტი“) და აძლევს ნაცრისფერ ზონას განცხადებებს შორის, რომლებიც 100% მართალია და 100% ყალბი. ამის მიღწევა ხდება პირველი შეყვანის ცვლადების ნიმუშების აღებით, რომლებზედაც გადაწყვეტილება უნდა იყოს დაფუძნებული და მათი „დაბნეულობა“.
ნებისმიერი ბუნდოვანი ლოგიკური სისტემის გული არის "ბუნდოვანი ასოციაციური მეხსიერება". ეს ახსენებს მატრიცას, სადაც ბატარეის დატენვის სქემის შემთხვევაში ინახება 3x3 მნიშვნელობების ნაკრები 0 -დან 1 -მდე. მატრიცაში არსებული ღირებულებები შეიძლება უხეშად იყოს დაკავშირებული იმასთან, თუ როგორ მსჯელობს ადამიანი იმაზე, თუ რა უნდა იყოს PWM ფაქტორი, რომელიც აკონტროლებს გამაძლიერებელი გადამყვანის SHTDN პინს, იმისდა მიხედვით, თუ როგორ აფასებს ზემოთ მოცემული წევრობის ფუნქცია მოცემულ ნაკრებებს. მაგალითად, თუ პანელის შეყვანის ძაბვა მაღალია, მაგრამ ბატარეაში შეყვანილი დენი დაბალია, ეს ალბათ ნიშნავს იმას, რომ მეტი ენერგიის მოხმარება შეიძლება და PWM პარამეტრი არ არის ოპტიმალური და უნდა გაიზარდოს. პირიქით, თუ პანელის ძაბვა მცირდება, მაგრამ დამტენი კვლავ ცდილობს ბატარეის სიმძლავრეში დიდი დენის შეყვანას, ასევე დაიკარგება, ამიტომ უმჯობესია PWM სიგნალის შემცირება გამაძლიერებელ კონვერტორზე. მას შემდეგ, რაც შეყვანის სიგნალები "გაურკვევლდება" საეჭვო ნაკრებში, ისინი მრავლდება ამ მნიშვნელობებით, ანალოგიურად, როგორც ვექტორი მრავლდება მატრიცაზე, გენერირებული ტრანსფორმირებული ნაკრების წარმოსადგენად, რომელიც წარმოადგენს რამდენად მძიმედ შეიცავს "ცოდნა" უჯრედს მატრიცა უნდა იყოს გათვალისწინებული საბოლოო კომბინაციის ფუნქციაში.
"არა-დანერგილი-in-xod" კვანძის გამოყენება, რომელიც საშუალებას აძლევს XOD კვანძებს, რომლებიც ახორციელებენ პერსონალურ ფუნქციებს ძალიან რთულად, რათა გონივრული იყოს საფონდო სამშენებლო ბლოკებისგან და მცირე Arduino სტილის C ++, ასოციაციური მეხსიერება, წონის ფუნქცია და " fuzzifier "მსგავსი მითითებით აღწერილი ბლოკებში: https://www.drdobbs.com/cpp/fuzzy-logic-in-c/184408940 არის მარტივი დამზადება და გაცილებით ადვილია ექსპერიმენტი.
გირჩევთ:
გასაოცარი წვრილმანი მზის ენერგიით გარე გარე ნათურა: 9 ნაბიჯი
გასაოცარი წვრილმანი მზის ენერგიაზე მომუშავე გარე ნათურა: გამარჯობა! ამ ინსტრუქციებში შეგიძლიათ გაიგოთ როგორ ავაშენოთ იაფი და მარტივი მზის ენერგიაზე მომუშავე LED ნათურა! ის იტვირთება ბატარეის დღის განმავლობაში და ანათებს ძალიან ნათელ COB LED ღამით! უბრალოდ მიყევით ნაბიჯებს! Შენ შეგიძლია ამის გაკეთება! ეს მართლაც ადვილი და სახალისოა! ეს არის
მზის ენერგიით აღჭურვილი LED პარკინგის სენსორი: 8 ნაბიჯი (სურათებით)
მზის ენერგიაზე მომუშავე LED პარკინგის სენსორი: ჩვენს ავტოფარეხს არ აქვს ბევრი სიღრმე და ბოლოს აქვს კაბინეტები, რაც კიდევ უფრო ამცირებს სიღრმეს. ჩემი ცოლის მანქანა უბრალოდ მოკლეა, რომ მოერგოს, მაგრამ ის ახლოსაა. ეს სენსორი გავაკეთე პარკირების პროცესის გასამარტივებლად და მანქანის სავსეობის უზრუნველსაყოფად
მზის ენერგიით დამტენი 18650 ლითიუმის იონური უჯრედისთვის: 4 ნაბიჯი
მზის ენერგიით დამტენი 18650 ლითიუმის იონური უჯრედისთვის: ლითიუმის იონური ბატარეების დამუხტვა არის სახიფათო საქმე და ასევე მზის ენერგიით, რადგან ლითიუმ-იონური ბატარეები საშიშია და საჭიროებს კონტროლირებად დატენვის გარემოს. წინააღმდეგ შემთხვევაში, ამან შეიძლება აფეთქებაც გამოიწვიოს. აქ მე ვაპირებ 18650 ლითიუმის აშენებას
მზის ენერგიით აღჭურვილი WiFi ამინდის სადგური V1.0: 19 ნაბიჯი (სურათებით)
მზის ენერგიით აღჭურვილი WiFi ამინდის სადგური V1.0: ამ ინსტრუქციურად მე ვაპირებ გაჩვენოთ თუ როგორ უნდა ავაშენოთ მზის ენერგიაზე მომუშავე WiFi ამინდის სადგური Wemos დაფით. Wemos D1 Mini Pro– ს აქვს მცირე ფორმის ფაქტორი და plug-and-play ფარის ფართო სპექტრი მას იდეალურ გადაწყვეტას აძლევს სწრაფად მისაღებად
მზის ენერგიით მოტოციკლის აკრიფეთ საათი: 5 ნაბიჯი (სურათებით)
მზის ენერგიით მოტოციკლის აკრიფეთ საათი: მე მქონდა ტაჩო აკრიფეთ ძველი ძრავიდან, როდესაც მექანიკური ბრუნვის მრიცხველი შევცვალე ელექტრონული პანელით (ეს სხვა პროექტია!) და არ მინდოდა მისი გადაგდება. ეს საგნები შექმნილია უკანა განათებისთვის, როდესაც ველოსიპედის განათება