Სარჩევი:

განათების შეცვლა: 7 ნაბიჯი
განათების შეცვლა: 7 ნაბიჯი

ვიდეო: განათების შეცვლა: 7 ნაბიჯი

ვიდეო: განათების შეცვლა: 7 ნაბიჯი
ვიდეო: ციმციმა 2024, ნოემბერი
Anonim
Შუქის ჩამრთველი
Შუქის ჩამრთველი

ამ პროექტში მე მოვიყვან მაგალითს, თუ როგორ შევქმნათ სრულიად უკაბელო სინათლის კონტროლის სისტემა დასასრულს დამატებული ბონუსით. მიჰყევით სრულ გაკვეთილს.

მოთხოვნები:

- ჟოლო პი (ნებისმიერი არომატი კარგია, მაგრამ მე გამოვიყენე 3B+ მოდელი)

- ორი 2n2222 ტრანზისტორი (მე გირჩევთ შეიძინოთ მინიმუმ ხუთი, რადგან დიდი შანსია რომ თქვენ შეცდომით დააკლოთ რამდენიმე)

-მამაკაცი-კაცი და მამაკაცი-მდე ქალი მხტუნავი კაბელები

- პურის დაფა

- (სურვილისამებრ, მაგრამ რეკომენდირებული) Breadboard 5V კვების ბლოკი

- თითოეული 1k და 10k რეზისტორებიდან ორი

- ორმაგი სარელეო მოდული

- ორი ძველი სახლის ნათურა ან სხვა განათების მოწყობილობა (გამოიყენეთ led ნათურები, რადგან ტესტირების დროს ინკანდესენტური ნათურები იწვის)

- წებოვანი ლენტი და საკაბელო საჭრელი შესაკრავად

ნაბიჯი 1: სერვერის დაყენება და დამოკიდებულება ჟოლოს პიზე

ჩემი პროექტისთვის მე გამოვიყენე NGiNX, თუმცა თქვენ შეგიძლიათ გამოიყენოთ რომელი სერვერი გსურთ (Apache2 და ა.შ.). პაკეტის მენეჯერთან ერთად ვანილის ინსტალაცია მშვენიერია, არ არის საჭირო ჩვენი საკუთარი წყაროს შედგენა ან რაიმე მსგავსი. ჩვენ ასევე დაგვჭირდება PHP, Python3 და კომპოზიტორი.

- SSH თქვენს PI– ში და ჩაწერეთ $ sudo nano /etc/dhcpcd.conf

- დააკონფიგურირეთ სტატიკური IP პარამეტრები

- გადატვირთეთ თქვენი PI

- შეამოწმეთ მუშაობს თუ არა ყველაფერი თქვენი ბრაუზერის მისამართების ზოლში აკრიფეთ {the_ip_you_chose} (თქვენ უნდა ნახოთ nginx– ის მისასალმებელი გვერდი)

ნაბიჯი 2: დააინსტალირეთ ვებ ჩარჩო და კონფიგურაცია NGiNX– ისთვის

ჩვენ გვსურს გვქონდეს ვებგვერდი, რომლის წვდომაც შეგვიძლია ჩვენი მობილური ან დესკტოპის ბრაუზერიდან და იმისათვის, რომ თავი დავაღწიოთ უბრალო php/html კოდის წერისგან, რომელიც არ არის ამ გაკვეთილის ფარგლებში, ჩვენ ნაცვლად გამოვიყენებთ PHP ჩარჩოს სახელწოდებით Yii2 მარშრუტიზაცია და სტილი ჩვენთვის.

- გადადით Yii2 ინსტალაციის გვერდზე და გამოიყენეთ კომპოზიტორი მის დასაყენებლად/var/www/html/light-switch

- ჩვენ ჯერჯერობით ვერაფერს ვნახავთ, რადგან ჩვენ ჯერ არ ჩავსვით სერვერის კონფიგურაციის ფაილი

- მე დავამატე ფაილი (ნაგულისხმევი) ამ ნაბიჯს

- გამოიყენეთ ის, როგორც არის ამ ჩარჩოსთან ერთად, ან მოძებნეთ სხვა ინტერნეტში, თუ გირჩევნიათ განსხვავებული უკანა მხარე

- თქვენ უნდა ჩაწეროთ ეს ფაილი/etc/nginx/sites-available/

- გადატვირთეთ NGiNX $ sudo systemctl გადატვირთვით nginx

- თუ რამე არ მუშაობს, შეგიძლიათ გაუშვათ $ sudo nginx -t კონფიგურაციის ფაილების გამოსწორების მიზნით

ნაბიჯი 3: პითონის სკრიპტების დაყენება, რომლებიც ურთიერთქმედებენ GPIO– სთან

ვინაიდან PHP– ს არ უყვარს ასეთი კარგი თამაში სკრიპტებით, როგორიცაა GPIO API და პითონი არ არის ძალიან მეგობრული ვებ პროგრამებთან, ჩვენ თითოეულ მათგანს გამოვიყენებთ მათ ხელსაყრელ კონტექსტში. ამ საფეხურთან ერთად თქვენ ნახავთ 4 აუცილებელ პითონის სკრიპტს, რომლებიც ურთიერთქმედებენ ქინძისთავებთან და იწვევენ შუქებს. განათავსეთ სკრიპტები სადაც გინდათ, მაგრამ გაითვალისწინეთ მათი მდებარეობა, რადგან ჩვენ დაგვჭირდება ის შემდეგ ეტაპზე, როდესაც ჩვენ შევქმნით ნივთების php მხარეს.

ნაბიჯი 4: დასრულება Php საგნების მხარეს

დასრულება Php– ის საგნებზე
დასრულება Php– ის საგნებზე

ყველაფერი რაც ჩვენ გვჭირდება არის ამოიღოთ ნაგულისხმევი ბილიკები და გვერდები ძირითადი განლაგებიდან და დაამატოთ კოდის რამდენიმე ხაზი SiteController– ში პლუს ახალი მეთოდი სახელწოდებით actionLightswitch (). ამის შემდეგ, ის შეასრულებს პითონის სკრიპტებს წინა საფეხურიდან, რაც თავის მხრივ ბრძანებს GPIO ქინძისთავებს.

ნაბიჯი 5: წრის შექმნა

წრის შექმნა
წრის შექმნა
წრის შექმნა
წრის შექმნა
წრის შექმნა
წრის შექმნა
წრის შექმნა
წრის შექმნა

ამ კონკრეტული სარელეო მოდულის ხასიათიდან გამომდინარე (ის გადადის GND– სთან დაკავშირებისას) ჩვენ გვჭირდება სქემის აგება ტრანზისტორების გამოყენებით. PI გახსნის მხოლოდ ტრანზისტორს, რომელიც საშუალებას მისცემს დენის ნაკადს სარელეო მონაცემების ქინძისთავებიდან GND- ში, რაც გამოიწვევს კოჭას და დახურავს ნათურებს. მიჰყევით თანდართულ სურათებში მოცემულ სქემებს და კარგი იქნება.

ამ მომდევნო ნაწილისთვის, თქვენ ნამდვილად უნდა იყოთ ფრთხილად, რადგან დროა რელე დააკავშიროთ. ჯერ გათიშეთ ყველაფერი! რელეს აქვს 3 პორტი თითო კავშირზე. ჩვენ დავუკავშირებთ ჩვენი ტექნიკის კაბელებს შუა და ერთზე ღია ნიშნით. ფრთხილად შეაერთეთ კაბელი სპილენძის გამტარების გამოსაჩენად და ჩასვით ისინი ზემოხსენებულ სარელეო პორტებში. წესრიგს მნიშვნელობა არ აქვს, რადგან ჩვენ ახლა ვმუშაობთ ალტერნატიული მიმდინარეობით.

ნაბიჯი 6: საბოლოო ტესტირება

შეამოწმეთ თქვენი წრე და მინიჭებული ქინძისთავები მინიმუმ ორჯერ და შემდეგ დაუკავშირეთ PI დენს და ჩაწერეთ {the_chosen_ip} ბრაუზერის მისამართების ზოლში. პირველ გვერდზე იქნება ჩვენი ორი გადამრთველი. დააწკაპუნეთ მათზე და უყურეთ შუქების ჩართვას/გამორთვას.

ნაბიჯი 7: ბონუს ნაწილი: ძველი სკოლის კლაპერ ტრიგერი

მოთხოვნები:

- ნებისმიერი USB მიკროფონი (ის არ უნდა იყოს მაღალი ხარისხის)

- ALSA პაკეტი (ინსტალაციის მეთოდი განსხვავდება თქვენი განაწილების მიხედვით)

- PyAudio მოდული

დააკოპირეთ თანდართული პითონის სკრიპტი და შეაერთეთ თქვენი მიკროფონი. გადატვირთეთ PI. შეასრულეთ სკრიპტი და მიჰყევით კონსოლის მოთხოვნებს. მიუახლოვდით მიკროფონს და ხელები ორჯერ დაუკაკუნეთ. თქვენ უნდა ნახოთ, რომ ტაშები დარეგისტრირდება კონსოლის გამომავალში და წარმატების შემთხვევაში, ორივე შუქი აანთებს 2 წამის შემდეგ.

გირჩევთ: