Სარჩევი:

იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი: 11 ნაბიჯი (სურათებით)
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი: 11 ნაბიჯი (სურათებით)

ვიდეო: იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი: 11 ნაბიჯი (სურათებით)

ვიდეო: იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი: 11 ნაბიჯი (სურათებით)
ვიდეო: როგორ შევამციროთ ჰაერის ტემპერატურა სათბურში დაჩრდილვით? 2024, დეკემბერი
Anonim
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი
იაფი და ეფექტური სახლის ავტომატიზაცია ჟოლოს პი

მე ყოველთვის მინდოდა შემეძლო შუქების უკაბელო კონტროლი, მაგრამ კომერციული პარამეტრები ჩვეულებრივ ძვირია. Philips Hue განათება ღირს დაახლოებით $ 70, ხოლო WiFi- თან დაკავშირებული განათება ასევე ძვირია. ეს გაკვეთილი გეტყვით, თუ როგორ გააკონტროლოთ ხუთამდე შუქი/ნათურა/საშობაო შუქები დაახლოებით 50 დოლარად და შეიძლება გაფართოვდეს, რათა უფრო მეტი განათებაც მოიცვას.

ნაბიჯი 1: რაც დაგჭირდებათ

რაც დაგჭირდებათ
რაც დაგჭირდებათ

მასალები:

Raspberry Pi Zero W (უკაბელო გამოცემა)

მიკრო SD ბარათი (მინიმუმ 4 გბ)

მინი HDMI to HDMI კაბელი/კონვერტორი (არსებობს განსხვავება მინისა და მიკროს შორის, დარწმუნდით, რომ მიიღეთ სწორი!)

მიკრო USB USB კაბელი/გადამყვანი

USB კლავიატურა

შენიშვნა: მე მივიღე Raspberry Pi Zero W შემქმნელის ნაკრები ამაზონიდან, რომელიც მოყვა Raspberry Pi Zero W, SD ბარათი, საქმე, კვების კაბელი, HDMI გადამყვანი და USB კონვერტორი. მხოლოდ 30 დოლარად, ეს არის საკმაოდ კარგი ვარიანტი (ბმული)

თქვენ შეგიძლიათ გამოიყენოთ Raspberry Pi– ს განსხვავებული მოდელი, მაგრამ Raspberry Pi– ს უნდა ჰქონდეს ინტერნეტ კავშირის რაიმე ფორმა და Pi Zero W არის ყველაზე იაფი ვარიანტი.

დისტანციური მაღაზიები - მე ეს გამოვიყენე

RF გადამცემი და მიმღები (შენიშვნა: გადამცემი/მიმღების სიხშირე უნდა ემთხვეოდეს დისტანციური განყოფილებების სიხშირეს) - მე ეს გამოვიყენე

მავთული ანტენისთვის (მე გამოვიყენე 22 ლიანდაგი მყარი ძირითადი სპილენძის მავთულები, სხვა მავთულები შეიძლება მუშაობდეს)

პურის დაფა, ჯამპერის მავთულები, 40 პინიანი მამრობითი სქესის თავსახური

პროგრამული უზრუნველყოფა:

Raspberry Pi OS (ჩამოტვირთეთ Raspbian Desktop)

Etcher დისკის გამოსახულება (Pi OS– ს SD ბარათზე დასაწერად)

ინსტრუმენტები:

გასაყიდი რკინა

კომპიუტერი Pi OS და Etcher ჩამოტვირთვისთვის

ნაბიჯი 2: დააყენეთ მაღაზიები

დააყენეთ მაღაზიები
დააყენეთ მაღაზიები
დააყენეთ მაღაზიები
დააყენეთ მაღაზიები

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

ნაბიჯი 3: შექმენით PubNub ანგარიში

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

ნაბიჯი 4: მოამზადეთ ჟოლო პი

ჩამოტვირთეთ Etcher და Raspberry Pi OS თქვენს კომპიუტერზე (ბმულები ნაწილების სიაში)

დააინსტალირეთ Etcher თქვენს კომპიუტერზე და გახსენით (საჭიროების შემთხვევაში) Raspberry Pi OS. ჩადეთ თქვენი მიკრო SD ბარათი თქვენს კომპიუტერში და გახსენით Etcher. დააწკაპუნეთ "აირჩიეთ სურათი" და გადადით გახსნილ Raspberry Pi OS ფაილზე. შეარჩიეთ იგი, შემდეგ დააჭირეთ ღილაკს "აირჩიეთ დრაივი" და შეარჩიეთ თქვენი მიკრო SD ბარათი სიიდან. დააჭირეთ ღილაკს "Flash" და დაელოდეთ Etcher– ის დასრულებას. მას შემდეგ რაც Etcher დასრულდება, ამოიღეთ თქვენი SD ბარათი თქვენი კომპიუტერიდან (Etcher ავტომატურად ამოიღებს მას) და ჩადეთ იგი Raspberry Pi– ში. ამ ეტაპზე, თქვენ უნდა დაუკავშიროთ თქვენი Raspberry Pi მონიტორს HDMI კონვერტორით. შეაერთეთ კლავიატურა (და მაუსი თუ გაქვთ მრავალ USB კერა) და შეაერთეთ კვების კაბელი. არის ორი მიკრო USB პორტი. ერთი არის ენერგიისთვის, მეორე არის ნამდვილი USB პორტი. პიის ბოლომდე ყველაზე ახლოს არის ძალა, ხოლო შუაზე უფრო ახლოს არის USB. თქვენი ჟოლოს პი დაიწყებს ჩატვირთვას. ის შეიძლება რამდენჯერმე გადატვირთოს პირველი ჩატვირთვისას, მაგრამ ეს ნორმალურია. მას შემდეგ რაც თქვენი ჟოლოს pi დაიწყება, დაუკავშირეთ იგი თქვენს WiFi- ს. WiFi– სთან დაკავშირების შემდეგ, შეგიძლიათ გამოიყენოთ SSH სერვერი, მაგრამ მე ახლა უფრო ადვილია GUI– ს გამოყენება. გახსენით ტერმინალის ფანჯარა და შეიყვანეთ ეს ბრძანებები:

sudo pip3 დააინსტალირეთ "pubnub == 3.9.0"

cd git კლონი git: //git.drogon.net/wiringPi git კლონი

sudo git კლონი

sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend

cd გაყვანილობა Pi

./ აშენება

ახლა გახსენით Raspberry Pi ფაილის ბრაუზერი და თქვენ უნდა ნახოთ pi-home-automation საქაღალდე. ორჯერ დააწკაპუნეთ მასზე და თქვენ უნდა ნახოთ ფაილი სახელწოდებით RFControl.py. დააკოპირეთ (საპირისპირო დაწკაპუნებით და აირჩიეთ "კოპირება"), შემდეგ დაბრუნდით pi საქაღალდეში და ჩასვით იქ.

გათიშეთ თქვენი ჟოლოს პი (ან მენიუდან ან ბრძანების სტრიქონიდან sudo poweroff გაშვებით) და გამორთეთ მას შემდეგ, რაც მწვანე შუქი აანთებს.

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

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

ახლა დროა შევქმნათ წრე. მე გამოვიყენე პურის დაფა, მაგრამ თქვენ შეგიძლიათ გააკეთოთ ის, როგორც გსურთ.

პირველ რიგში, ჩვენ უნდა შევქმნათ ანტენა RF გადამცემისთვის. ეს სასწავლო ინსტრუქცია მოგვითხრობს, თუ როგორ უნდა გაკეთდეს ანტენა RF გადამცემისთვის. მიჰყევით ინსტრუქციას, შემდეგ შეაერთეთ იგი გადამცემის ანტენის საყრდენზე (მე ვიყენებდი მას ეტიკეტით ANT) მოკლე გვერდით გადამცემთან ყველაზე ახლოს

მავთულის გადამცემი

გადამცემი იყენებს ამ ქინძისთავებს:

მონაცემები: GPIO 17, ფიზიკური პინ 11

VCC: ჟოლო Pi 5v, ფიზიკური pin 2

GND: ჟოლო Pi GND, ფიზიკური პინ 6

მავთულის მიმღები

მიმღები იყენებს ამ ქინძისთავებს:

GND: ჟოლო Pi GND, ფიზიკური პინ 9

VCC: ჟოლო Pi 5v, ფიზიკური pin 4

მონაცემები: GPIO 27, ფიზიკური პინი 13 (მიმღებზე არის ორი მონაცემთა პინი, მე ვიყენებ და მე ვიყენებ VCC– სთან უახლოესს)

ნაბიჯი 6: მიიღეთ თქვენი RF კოდები

მიიღეთ თქვენი RF კოდები
მიიღეთ თქვენი RF კოდები

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

sudo/var/www/rfoutlet/RFSniffer

შემდეგი, გახსენით RFControl პროგრამა. ტერმინალის ფანჯრისა და პროგრამის ფანჯრის გვერდიგვერდ განთავსება შეიძლება მომდევნო ეტაპზე სასარგებლო იყოს.

თქვენ დაგჭირდებათ პულტი, რომელიც შედიოდა განყოფილებაში. დაიჭირეთ იგი მიმღებთან ახლოს და დააჭირეთ თითოეულ ცალკეულ ღილაკს. ღილაკზე დაჭერისას ნახავთ ეკრანზე დაბეჭდილ ორ რიცხვს. ერთი მათგანი ექვს -შვიდნიშნა კოდი იქნება, მეორე კი სამნიშნა კოდი. თქვენ დაგჭირდებათ პროგრამის კოდის ლექსიკონის რედაქტირება. შეიყვანეთ 7 ციფრიანი კოდი შესაბამისი გადართვის ადგილას პროგრამაში და თითოეული ჩართვის/გამორთვის ღილაკზე შეიყვანეთ 3-ნიშნა კოდი (ეს არის სიგრძე) შესაბამისი გადამრთველის ლენში პროგრამაში.

მაგალითად, თუ ჩართვის 1 აქვს კოდი 1234567, გამორთული კოდი 7654321 და სიგრძე 890, კოდი ასე გამოიყურება:

კოდები = {

'switch1': {'on': 1234567, #ეს არის გადართვა 1 'გამორთვა': 7654321, #ეს არის გამორთვა 1 off 'len': 890, #ეს არის გადართვა 1 კოდის სიგრძე}, 'switch2': {… },…}

გაიმეორეთ ეს თითოეული ღილაკისთვის. სანამ ამ ფაილს არედაქტირებთ, შეცვალეთ ის სტრიქონები, სადაც ნათქვამია „YOUR-SUB-KEY“თქვენს PubNub გამოწერის გასაღებად და „YOUR-PUB-KEY“თქვენი გამოქვეყნების გასაღებად.

მას შემდეგ, რაც თითოეული ღილაკი ჩაწერილია, შეგიძლიათ გააგრძელოთ შემდეგი განყოფილება.

ნაბიჯი 7: პროგრამის გაშვება

პროგრამის გაშვება
პროგრამის გაშვება

ახლა, როდესაც თქვენ გაქვთ ყველა თქვენი კოდი, გადადით ამ GitHub გვერდზე (თქვენს კომპიუტერში, არა ჟოლოს პი) და დააწკაპუნეთ მწვანე ღილაკზე, რომელიც ამბობს "კლონირება ან გადმოტვირთვა", შემდეგ დააჭირეთ "ჩამოტვირთეთ ZIP". როდესაც ეს ფაილი გადმოწერილია, გახსენით იგი და გახსენით საქაღალდე. გახსენით ფაილი სახელწოდებით main.js. თქვენ უნდა შეიყვანოთ თქვენი გამოწერის და გამოაქვეყნოთ გასაღებები პროგრამაში, შეცვალეთ "YOUR-PUB-KEY" თქვენი გამოქვეყნების გასაღებით და "YOUR-SUB-KEY" თქვენი გამოწერის გასაღებით.

შემდეგი, დაბრუნდით თქვენს ჟოლოს პიზე და შედით

python3 RFControl.py

როგორც კი იბეჭდება "მზადაა", დაბრუნდით თქვენს კომპიუტერში და გახსენით index.html ფაილი ვებ ბრაუზერში საპირისპირო დაწკაპუნებით, აირჩიეთ "გახსენით" და შეარჩიეთ სასურველი ბრაუზერი. თქვენ უნდა ნახოთ 5 ღილაკის 2 სვეტი, მათ შორის გადამრთველების სახელებით. დააჭირეთ ნებისმიერ ღილაკს. თუ ის სწორად აკონტროლებს სოკეტს, შესანიშნავია! თუ არა, აქ არის რამოდენიმე რამ, რაც უნდა სცადოთ:

  1. დარწმუნდით, რომ Raspberry Pi იღებს შეტყობინებებს. ის უნდა დაბეჭდოს ეკრანზე, როდესაც ის მიიღებს შეტყობინებას ვებ გვერდიდან. თუ არა, დარწმუნდით, რომ თქვენი გამოწერის/გამოქვეყნების გასაღებები სწორია.
  2. თუ Raspberry Pi იღებს შეტყობინებებს, დარწმუნდით, რომ თქვენი RF კოდები სწორია. დარწმუნდით, რომ თქვენი პულტები დაწყვილებულია თქვენს პულტთან, თქვენს პულტს შეუძლია მათი კონტროლი და რომ პროგრამაში შეყვანილი კოდები სწორია.
  3. თუ RF კოდები სწორია, დარწმუნდით, რომ თქვენი Raspberry Pi არის მაღაზიების დიაპაზონში. თუ ისინი დაიწყებენ მუშაობას მისი დაახლოების შემდეგ, შეიძლება დაგჭირდეთ თქვენი ანტენის ხელახლა გაკეთება.
  4. თუ ისინი ჯერ კიდევ არ მუშაობენ, გთხოვთ მითხრათ თქვენი პრობლემა კომენტარებში და მე შევეცდები და დავეხმარო მას.

ნაბიჯი 8: გაშვება გაშვებისას

იმისათვის, რომ თქვენი პითონის პროგრამა გაშვებული იყოს, ჩაწერეთ ეს თქვენს ჟოლოს პი ტერმინალში:

crontab -e

შემდეგი, გადადით ფაილის ბოლოში და შეიყვანეთ ეს:

@reboot python3 /home/pi/RFControl.py &

ეს გახდის თქვენს პითონის სკრიპტს გაშვებისას ყოველ ჯერზე. ახლა გადატვირთეთ თქვენი Raspberry Pi.

ნაბიჯი 9: მეტი კონცენტრატორის დამატება

დამატებითი გადამრთველების დამატება
დამატებითი გადამრთველების დამატება

თუ გსურთ დაამატოთ მეტი მაღაზია, მიჰყევით ამ ინსტრუქციას:

გახსენით RFControl.py თქვენს Raspberry Pi– ზე და დაამატეთ ახალი გადამრთველი გადამრთველთა ლექსიკონში.

მაგალითი:

კონცენტრატორები = {

… სხვა გადამრთველები… 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}

შემდეგი, დაამატეთ ახალი ღილაკი თქვენს ვებ აპლიკაციაში, შეცვალეთ ცვლის ცვლადი main.js თქვენს კომპიუტერში.

მაგალითი:

var კონცენტრატორები = [… ძველი გადამრთველები… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];

შეცვალეთ NAME-TO-DISPLAY იმ სახელით, რომლის ნახვა გსურთ საიტზე და NAME-OF-SWITCH ორივე ფაილზე თქვენთვის სასურველი ნებისმიერით. ის სხვებისგან უნიკალური უნდა იყოს!

ნაბიჯი 10: ამის შემდგომი განხორციელება

იმის შემდგომი
იმის შემდგომი

PubNub მხარდაჭერილია მრავალ სხვადასხვა პლატფორმაზე, რაც იმას ნიშნავს, რომ თქვენ შეგიძლიათ გააგზავნოთ შეტყობინებები თითქმის ნებისმიერი მოწყობილობიდან! მე გამოვიყენე Raspberry Pi AIY Voice ნაკრები და PubNub ბრძანებების გასაგზავნად ჩემი ხმით, მაგრამ ეს შეიძლება იყოს მოგვიანებით ინსტრუქციის თემა. გმადლობთ, რომ კითხულობთ ჩემს ინსტრუქციას, ვიმედოვნებ, რომ ეს სასარგებლო იყო!

ნაბიჯი 11: კრედიტები

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

მადლობა diy_bloke ანტენის შექმნის გაკვეთილისთვის: სამეურვეო

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

გირჩევთ: