Სარჩევი:

Raspberry Pi სახლის მონიტორინგი Dropbox– ით: 7 ნაბიჯი
Raspberry Pi სახლის მონიტორინგი Dropbox– ით: 7 ნაბიჯი

ვიდეო: Raspberry Pi სახლის მონიტორინგი Dropbox– ით: 7 ნაბიჯი

ვიდეო: Raspberry Pi სახლის მონიტორინგი Dropbox– ით: 7 ნაბიჯი
ვიდეო: Raspberry Pi 3 - განხილვა ქართულად 2024, ნოემბერი
Anonim
ჟოლო Pi სახლის მონიტორინგი Dropbox– ით
ჟოლო Pi სახლის მონიტორინგი Dropbox– ით

ეს გაკვეთილი გაჩვენებთ თუ როგორ უნდა შექმნათ სახლის მონიტორინგის მარტივი და გაფართოება Raspberry Pi- ს, ვებკამერის, რამდენიმე ელექტრო კომპონენტის და თქვენი Dropbox ანგარიშის გამოყენებით. დასრულებული სისტემა საშუალებას მოგცემთ დისტანციურად მოითხოვოთ და ნახოთ სურათები თქვენი ვებკამერიდან, ასევე გამოიყენოთ თაროდან გამორთული ციფრული ტემპერატურის სენსორი თქვენი სახლის ტემპერატურის მონიტორინგისთვის ინტერნეტით, ყველა Dropbox– ის გამოყენებით.

ეს იყო პირველი პროექტი, რომელიც მე მოვიფიქრე Raspberry Pi 2 მოდელის B. მიღების შემდეგ. ჩემი მიზანი იყო შემექმნა პითონზე დაფუძნებული მონიტორინგის სისტემა, რომლის კონტროლიც შემეძლო და მონაცემების მიღება ინტერნეტიდან. მიუხედავად იმისა, რომ ამის გაკეთების მრავალი განსხვავებული გზა არსებობს, მე გადავწყვიტე გამოვიყენო Dropbox როგორც ინტერფეისი Pi და ინტერნეტს შორის, რადგან მათ აქვთ მარტივი Python API, რომელიც საშუალებას გაძლევთ ატვირთოთ, შეცვალოთ და მოძებნოთ ფაილები კონკრეტულ საქაღალდეებში რამდენიმე სტრიქონის გამოყენებით. კოდი.

მე ასევე მინდოდა, რომ ჩემი გამოსავალი ყოფილიყო მსუბუქი და მარტივი და თავიდან ავიცილო ჩემი Pi– ს გადატვირთვა არასაჭირო ბიბლიოთეკებითა და პროგრამებით. ამ პროექტის პროგრამული კომპონენტი შედგება ერთი პითონის სკრიპტისგან, რაც იმას ნიშნავს, რომ თქვენ შეგიძლიათ გააგრძელოთ თქვენი Pi ჩვეულებრივ რეჟიმში, მაშინაც კი, როდესაც მონიტორინგის სისტემა მუშაობს.

ამ პროექტისთვის დაგჭირდებათ:

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

USB ვებკამერა. შევიძინე იაფი ADVENT AWC72015, რომელიც კარგად მუშაობდა. შეიძლება კარგი იდეა იყოს ვებკამერების ამ ჩამონათვალის კონსულტაცია, რომლებიც დადასტურებულია Pi– სთან მუშაობით. გაითვალისწინეთ, რომ ზოგიერთ მათგანს სჭირდება USB კერა (ჩემის გარეშე კარგად მუშაობს)

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

ციფრული ტემპერატურის სენსორი DS18B20 და 4.7k რეზისტორი. თქვენ შეგიძლიათ შეიძინოთ სენსორი აქ და შეიძლება ღირდეს სხვადასხვა რეზისტორების პაკეტის აღებაც

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

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

ნაბიჯი 1: აპარატურის დაყენება

დააყენეთ აპარატურა
დააყენეთ აპარატურა

პირველი ნაბიჯი არის იმის უზრუნველყოფა, რომ თქვენი Pi და მასთან დაკავშირებული პერიფერიული მოწყობილობები შეიქმნას.

პირველი, დაუკავშირეთ თქვენი Pi ინტერნეტს. ეს აუცილებელია იმის უზრუნველსაყოფად, რომ მონიტორინგის პროგრამას შეუძლია მიიღოს თქვენი მოთხოვნები და ატვირთოს მონაცემები Dropbox– ში. მე ვიყენებ Ethernet კავშირს საიმედოობის უზრუნველსაყოფად, მაგრამ Wi-Fi კავშირიც კარგად უნდა მუშაობდეს, ამასთანავე გააჩნია პორტატულობის გაუმჯობესების უპირატესობა. თუ აირჩევთ Wi-Fi- ს, მე გირჩევთ ამ USB დონლს Pi- სთვის.

შემდეგი, შეაერთეთ თქვენი ვებკამერა Pi– სთან ერთ – ერთ USB პორტში ჩართვის გზით. მიუხედავად იმისა, რომ ჩემი Advent ვებკამერის მითითებებში პირდაპირ არ იყო ნათქვამი, რომ ის Linux– თან იმუშავებდა, მე მხოლოდ ის უნდა შემეერთებინა და ჩამტვირთო Pi. დამატებითი ინსტალაცია არ იყო საჭირო. სხვა ვებკამერები შეიძლება განსხვავდებოდეს. თქვენ შეგიძლიათ შეამოწმოთ არის თუ არა თქვენი ვებკამერა ლინუქსმა შემდეგი ბრძანების გამოყენებით:

ლუსუბ

ზემოთ მოცემულ სურათზე, ჩემი ვებკამერა ჩამოთვლილია როგორც '0c45: 6340 Microdia'

დაბოლოს, თქვენ შეგიძლიათ დაუკავშიროთ თქვენი DS18B20 ტემპერატურის სენსორი Pi- ს GPIO სათაურს. მე ვიყენებ ჩემს პურის დაფას სქემების შექმნის პროცესის გასაადვილებლად და გირჩევთ თქვენც იგივე გააკეთოთ, მით უმეტეს, რომ DS18B20 მოითხოვს 4.7k რეზისტორს, რომ მოთავსდეს მის სამ ქინძისთავს ორს შორის. ეს ბმული იძლევა კარგ გაყვანილობის დიაგრამას, რომელიც გვიჩვენებს, თუ როგორ შეიძლება პურის დაფის გამოყენება ამ ტემპერატურის სენსორთან დასაკავშირებლად.

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

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

ნაბიჯი 2: დააყენეთ Dropbox

დააყენეთ Dropbox
დააყენეთ Dropbox

იმისათვის, რომ თქვენი Pi დაუკავშირდეს Dropbox– ს, თქვენ უნდა შექმნათ ახალი Dropbox აპლიკაცია. ეს მოგაწვდით დეტალებს, რომლებიც საჭიროა თქვენი Pi– სთვის ფაილების ონლაინ მართვისთვის Python– ის გამოყენებით. დავუშვათ თქვენ შექმენით Dropbox ანგარიში და შეხვედით სისტემაში, შეგიძლიათ შექმნათ ახალი აპლიკაცია "დეველოპერების" მენიუს ვარიანტის გამოყენებით. იხილეთ ზემოთ მოცემული სურათი მნიშვნელოვანი ნაბიჯების შეჯამებისთვის.

"დეველოპერების" მენიუში აირჩიეთ "ჩემი პროგრამები", შემდეგ დააჭირეთ ღილაკს "შექმენით აპლიკაცია". ფორმის შევსების მიზნით, აირჩიეთ "Dropbox API", რასაც მოჰყვება "აპლიკაციის საქაღალდე". დაბოლოს, თქვენ შეგიძლიათ აირჩიოთ უნიკალური სახელი თქვენი აპლიკაციისთვის Dropbox– ში. დააჭირეთ ღილაკს "შექმენით აპლიკაცია".

შემდეგ თქვენ გადახვალთ თქვენი აპლიკაციის პარამეტრების გვერდზე Dropbox– ში. აქ არის მხოლოდ ერთი რამ, რაც უნდა გააკეთოთ - შექმენით წვდომის ნიშანი. ამისათვის გადადით ქვემოთ "OAuth 2" განყოფილებაში და "გენერირებული წვდომის ნიშნის" ქვეშ, დააჭირეთ ღილაკს "გენერირება".

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

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

ნაბიჯი 3: თქვენი Dropbox აპლიკაციის საქაღალდის მომზადება

თქვენი Dropbox აპლიკაციის საქაღალდის მომზადება
თქვენი Dropbox აპლიკაციის საქაღალდის მომზადება

მას შემდეგ რაც შექმენით თქვენი Dropbox აპლიკაცია, დროა ვიფიქროთ იმაზე, თუ როგორ გამოიყენებთ თქვენს Dropbox ანგარიშში არსებულ საქაღალდეს თქვენს Pi– სთან ურთიერთობისათვის. ეს კეთდება საკმაოდ მარტივად. პითონის სკრიპტი, რომელიც Pi– ზე იმუშავებს, გამოიყენებს Dropbox API– ს ბრძანებების ქვეჯგუფს თქვენი აპლიკაციის საქაღალდეში არსებული ცარიელი, გაფართოების გარეშე ფაილების სახელების მოსაძიებლად და შესაცვლელად. ჩვენ დავარქმევთ ამ ფაილებს "პარამეტრების ფაილებს", რადგან თითოეული მათგანი საშუალებას მოგცემთ გააკონტროლოთ მონიტორინგის სისტემის ქცევის განსხვავებული ასპექტი. ზემოთ მოყვანილი სურათი გვიჩვენებს ოთხ პარამეტრულ ფაილს, რომლებიც უნდა იყოს წარმოდგენილი თქვენი პროექტის Dropbox პროგრამის საქაღალდეში. მათი შექმნა მარტივია:

დაწყებული თქვენი აპლიკაციის საქაღალდით სრულიად ცარიელი, გახსენით ტექსტური რედაქტორის პროგრამა თქვენს კომპიუტერში. მიუხედავად იმისა, რომ ამის გაკეთება Pi- ს გამოყენებით შეიძლებოდა, მე გამიადვილდა ჩემი Windows ლეპტოპის გამოყენება ამ დაყენების ფაზისთვის. მას შემდეგ რაც ტექსტური რედაქტორი გაიხსნება (მე გამოვიყენე Notepad Windows 7 -ში), ყველაფერი რაც თქვენ გჭირდებათ არის შეინახოთ სრულიად ცარიელი ტექსტური ფაილი თქვენს კომპიუტერში სადმე. როგორც ჩვენი პირველი მაგალითი, ჩვენ შევქმნით პირველ პარამეტრს სათაურის სურათში. შენახვისას დაასახელეთ ფაილი "დაგვიანებით = 10".

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

შემდეგი ნაბიჯი არის ამ ფაილის ატვირთვა თქვენს Dropbox პროგრამის საქაღალდეში. ეს არის ისევე, როგორც ნებისმიერი სხვა Dropbox ატვირთვა. უბრალოდ გადადით თქვენი პროგრამის საქაღალდეში და დააწკაპუნეთ "ატვირთვაზე" და შეარჩიეთ თქვენი ფაილი "delay = 10".

როდესაც ეს ფაილი აიტვირთება, თქვენ უნდა წაშალოთ გაფართოება '.txt', რომელიც ახლა ხილული უნდა იყოს ფაილის სახელში. ამისათვის უბრალოდ დააწკაპუნეთ ფაილზე და აირჩიეთ "გადარქმევა". ამოიღეთ ფაილის სახელის '.txt' ნაწილი. ახლა თქვენ უნდა დარჩეთ ფაილი სახელწოდებით "დაგვიანებით = 10" ფაილის გაფართოების გარეშე, როგორც ეს ნაჩვენებია სათაურის სურათში.

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

ნაბიჯი 4: კოდის დაწყება

როგორც განვიხილეთ, ჩვენი მონიტორინგის სისტემის ბირთვი შედგება ერთი პითონის სკრიპტისგან, რომელიც დაუკავშირდება Dropbox– ს. იმისათვის, რომ მონიტორინგის პროგრამა იყოს აქტიური, ეს სკრიპტი უნდა გაუშვა ფონზე თქვენს Pi- ზე. მე ვფიქრობ, რომ ის ყველაზე ზუსტად არის აღწერილი, როგორც "დემონის" დამწერლობა, რაც იმას ნიშნავს, რომ თქვენ შეგიძლიათ უბრალოდ ჩართოთ ის და დაივიწყოთ იგი. სკრიპტი ერთვის ამ ნაბიჯს, ამიტომ აზრი არ აქვს აქ კოდის გამეორებას. ახლა შეიძლება იყოს კარგი დრო გადმოწეროთ და გაეცნოთ მას.

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

იმპორტი dropbox

იმპორტი pygame.camera იმპორტი os იმპორტის დრო

Python– ის ინსტალაცია ჩემს Pi– ზე უკვე მოიცავდა pygame– ს, OS– ს და დროს, ასე რომ ერთადერთი, რაც უნდა დამეყენებინა იყო Dropbox. მე ეს გავაკეთე მათი ძალიან მარტივი ინსტალაციის ინსტრუქციის გამოყენებით პიპით.

ბიბლიოთეკების შექმნის შემდეგ, თქვენ უნდა შეცვალოთ თანდართული სკრიპტის ზედა ორი სტრიქონი, რათა შეესაბამებოდეს თქვენს Dropbox Access Token- ს და თქვენი DS18B20 ტემპერატურის სენსორის უნიკალურ იდენტიფიკატორს. ეს არის ორი სტრიქონი, რომელთა რედაქტირებაა საჭირო:

APP_ACCESS_TOKEN = '**********'

THERMOMETER_FILE = '/sys/bus/w1/devices/28-**********/w1_slave'

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

მნიშვნელოვანია: როდესაც ამ სკრიპტს აწარმოებთ, გსურთ რომ ის გაშვებული იქნას ფონზე ისე, რომ ა) თქვენ შეგიძლიათ გააგრძელოთ Pi- ს გამოყენება და ბ) როდესაც თქვენ დახურავთ თქვენს SSH სესიას, სკრიპტი გააგრძელებს მუშაობას. ეს არის ბრძანება, რომელსაც ვიყენებ სკრიპტის გაშვებისას:

ნოუპ პითონი DropCamTherm.py &

ეს ასრულებს სამ რამეს: ის გაუშვებს სკრიპტს ('python DropCamTherm.py'), ის დაუყოვნებლივ დაუბრუნებს კონტროლის ხაზს, ასე რომ თქვენ შეგიძლიათ გააგრძელოთ Pi- ს ('&') გამოყენება და ის გამოგიგზავნით პითონის გამოსავალს ჩვეულებრივ გამოჩნდება ბრძანების ხაზზე ფაილში სახელწოდებით 'nohup.out'. ამის წაკითხვა შესაძლებელია Linux ტექსტური რედაქტორის გამოყენებით (ჩემი რჩეული ნანოა) და ავტომატურად შეიქმნება იმ დირექტორიაში, საიდანაც სკრიპტი მუშაობს.

ნაბიჯი 5: გაღრმავება კოდში

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

- poll_parameter ():

ეს ფუნქცია აჩვენებს Dropbox პარამეტრების ფაილების მიზანს, რომლებიც ჩვენ შევქმენით მე –3 ნაბიჯში. ის ეძებს Dropbox– ის აპლიკაციის საქაღალდეს ფაილს, რომელიც შეიცავს ტექსტს „param =“. შემდეგ ის ამოიღებს ტექსტს '=' - ის შემდეგ და ცდილობს გადააქციოს ის მთელ რიცხვში. თქვენ ხედავთ, რომ ეს გვაძლევს საშუალებას გავაკონტროლოთ პროგრამა პარამეტრების ფაილების ბოლოს ხელით შესაბამისი რიცხვების დამატებით. შემდეგი ნაბიჯი შეიცავს მოკლე ინსტრუქციის სახელმძღვანელოს, რომელიც გიჩვენებთ თუ როგორ გამოიყენოთ თითოეული პარამეტრიანი ფაილი პროგრამის ასპექტის გასაკონტროლებლად.

- set_parameter ():

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

- set_latest_temp ():

ეს ფუნქცია იყენებს set_parameter () - ს, რათა ატვირთოს უახლესი ტემპერატურა Dropbox პროგრამის საქაღალდეში, მისი დამატებით „ტემპერატურის“პარამეტრების ფაილში. ფუნქცია კითხულობს უახლეს ტემპერატურას DS18B20 ჟურნალის ფაილიდან (რომელიც ხელმისაწვდომია Linux– ზე THERMOMETER_FILE ცვლადის მითითებული გზით).

პროგრამის ბოლო ნაწილი შეიცავს კოდს, რომელიც შესრულდება სკრიპტის გაშვებისას. DS18B20 სენსორისთვის საჭირო რამდენიმე დაყენების ნაბიჯის შემდეგ, ის ხსნის Dropbox სესიას თქვენი წვდომის ნიშნის გამოყენებით და იყენებს pygame– ს თქვენი ვებ კამერის მოსაძებნად. თუ ვებკამერა იქნა ნაპოვნი, ის შევა მარყუჟში, სადაც ის იყენებს poll_parameter () - ს, რათა ამოიღოს ინფორმაცია Dropbox– დან და იმოქმედოს მასზე.

მნიშვნელოვანია: თქვენ შეამჩნევთ კოდის შემდეგ ხაზს:

კამერა = pygame.camera. Camera (კამერის სია [0], (864, 480))

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

ნაბიჯი 6: Dropbox პარამეტრების ფაილების გამოყენება

ასე რომ, ახლა თქვენ უნდა გქონდეთ სამუშაო სკრიპტი, რომელიც, მე –4 ნაბიჯის ინსტრუქციის გამოყენებით, საშუალებას მისცემს თქვენს Pi– ს დაიწყოს აპლიკაციის საქაღალდის მონიტორინგი თქვენი შეყვანისთვის. თქვენი პირველი გაშვებისას, პროგრამის საქაღალდე უნდა შეიცავდეს შემდეგ პარამეტრულ ფაილებს:

დაგვიანებით = 10

exitprogram = 0 სურათის მოთხოვნა = 0 ტემპერატურა = 0

პროგრამასთან ურთიერთქმედება მიიღწევა პარამეტრების ფაილების ხელით გადარქმევით Dropbox– ის საშუალებით. ამისათვის უბრალოდ დააწკაპუნეთ ერთ ფაილზე და აირჩიეთ "გადარქმევა". თითოეულ პარამეტრს აქვს განსხვავებული ფუნქცია:

- დაგვიანება:

ეს ფაილი ეუბნება მონიტორინგის პროგრამას რამდენი წამი უნდა დაელოდოს მონიტორინგის მარყუჟის თითოეულ გამეორებას შორის. როდესაც ვიცი, რომ პროგრამასთან დიდად არ ვითანამშრომლებ, დავაყენე 60 ან 120. როდესაც ვიცი, რომ Pi– სგან მონაცემების ხშირად მოთხოვნა მინდა, მას 10 – ზე ვაყენებ.

- exitprogram:

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

- გამოსახულების მოთხოვნა:

ეს არის ალბათ ყველაზე მნიშვნელოვანი პარამეტრი. ეს უნდა იყოს მითითებული 1 ან 0. თუ პროგრამა აღმოაჩენს, რომ დაყენებულია 1 -ზე, ის ითხოვს სურათს ვებკამერიდან და ატვირთავს მას აპლიკაციის საქაღალდეში (სათაურით 'image.jpg'). თუ სხვა 'image.jpg' არსებობს, ის გადააწერს მას.

- ტემპერატურა:

ეს არის DS18B20 ტემპერატურის კითხვა მითითებული set_latest_temp () ფუნქციით. თქვენ არასოდეს დაგჭირდებათ ამ პარამეტრის ფაილის რედაქტირება - ის ავტომატურად არის დაყენებული პროგრამის მიერ.

გაითვალისწინეთ, რომ თუ თქვენ დააყენებთ 'exitprogram' ან 'imagerequest' 1 -ს, პროგრამა ავტომატურად დაუბრუნებს მათ 0 -ს შესაბამისი კოდის შესრულებამდე. ეს არის მოხერხებულობისთვის. თქვენ ასევე შეგიძლიათ შეამჩნიოთ, რომ კოდი შეიცავს უამრავ „ლელო“და „გარდა“ბლოკებს, რომლებიც გარშემორტყმულია მრავალი კრიტიკული ფუნქციით. ეს არის იმის უზრუნველსაყოფად, რომ სკრიპტი არ გამორიცხავს გამონაკლისს (და ამიტომაც არ შეწყვეტს მუშაობას), თუ რამე არასწორედ წავა (მაგალითად, ინტერნეტთან დაკავშირების პრობლემა, რომელიც ხელს უშლის Dropbox– ის წვდომას).

ნაბიჯი 7: დასკვნა

ამ პროექტმა წარმოადგინა Raspberry Pi– ს კონტროლის საშუალება პითონისა და Dropbox– ის გამოყენებით. მიუხედავად იმისა, რომ ამ პროექტში გამოყენებული ტექნიკა არის ტემპერატურის სენსორი და USB ვებკამერა, Pi– ს კონტროლის ამ მეთოდის მრავალი სხვა პროგრამა არსებობს. ფაქტობრივად, ნებისმიერი ტექნიკური კომპონენტი, რომელიც ხელმისაწვდომია GPIO– ს საშუალებით, შეიძლება გაკონტროლდეს მსგავსი პროგრამული სტრუქტურის გამოყენებით, რაც სისტემის გაფართოებას უადვილებს.

როგორც შემდეგი ნაბიჯი, თქვენ ასევე შეგიძლიათ გამოიყენოთ GUI ბიბლიოთეკა, როგორიცაა Tkinter და Dropbox API, კლიენტის პროგრამის შესაქმნელად, რომელიც საშუალებას მოგცემთ შეცვალოთ პარამეტრების ფაილები Dropbox– ში შესვლის გარეშეც კი.

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

გირჩევთ: