Სარჩევი:

1984 WeatherMan Pi: 7 ნაბიჯი (სურათებით)
1984 WeatherMan Pi: 7 ნაბიჯი (სურათებით)

ვიდეო: 1984 WeatherMan Pi: 7 ნაბიჯი (სურათებით)

ვიდეო: 1984 WeatherMan Pi: 7 ნაბიჯი (სურათებით)
ვიდეო: The Giant Wave - The Perfect Storm (3/5) Movie CLIP (2000) HD 2024, ნოემბერი
Anonim
Image
Image
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi

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

ფირის ფუნქციონალური კარის გახსნით ჩვენ ვხედავთ, რომ მტვრიანი ორიგინალური კომპონენტები შეიცვალა Raspberry Pi Zero W, Pimoroni Unicorn Hat HD (LED Matrix) და პატარა სერვოთი. ამინდის მონაცემები მოპოვებულია პითონის სკრიპტის გამოყენებით, რომელიც ითხოვს უაღრესად ზუსტ Dark Sky Weather API- ს, რომელიც მორგებულია ჩემს კონკრეტულ ადგილას.

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

მარაგები

ჟოლო პი ნულოვანი

Pimoroni Unicorn HAT HD

პატარა სერვო

1984 Hitachi SP-1 პერსონალური სტერეო და ყურსასმენი

USB WiFi ადაპტერი

2 მმ ხრახნიანი ჯოხი

Sugru (შავი და ნაცრისფერი)

GeoMag მაგნიტი

ნაბიჯი 1: Tape Teardown

Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown

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

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

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

ნაბიჯი 2: Dark Sky Pi

Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi

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

უპირველეს ყოვლისა, გადადით https://darksky.net/dev– ზე და დარეგისტრირდით უფასო ანგარიშზე - „საცდელი“ანგარიში საშუალებას გაძლევთ გააკეთოთ 1000 API მოთხოვნა დღეში, რაც საკმარისია ყოველ 1,5 წუთში განახლებისთვის - ხშირად საკმარისი თუნდაც ჩემი ამინდის შეპყრობილობის ბრიტანული დონე.

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

დავიწყე სკრიპტის ადაპტირებით, რომელიც გამოვიყენე YouTube აბონენტთა მრიცხველის მშენებლობაში, რომელიც იყენებს პითონში მოთხოვნის მოდულს API მონაცემების მოსაპოვებლად. სკრიპტი, რომელიც მე გამოვიყენე არის GitHub– ზე, თქვენ უბრალოდ უნდა დაამატოთ თქვენი Dark Sky API გასაღები და, რა თქმა უნდა, ჩაანაცვლოთ თქვენი გრძედი და გრძედის მნიშვნელობები.

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

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

Კოდი
Კოდი

თუ გსურთ ხელახლა გამოიყენოთ ან გამოიყენოთ ტრამპლინი ჩემს მიერ გამოყენებული კოდი, ის არის WeatherMan– ის საცავში GitHub– ში - კლონირება ან გადმოტვირთეთ „ამინდის“საქაღალდე თქვენს Raspberry Pi– ის საქაღალდეში „pi“.

სკრიპტის ძირითადი ფუნქციები შემდეგია:

ამინდის პროგნოზი. py

ეს არის მთავარი სცენარი, რომელიც ამოიღებს ამინდის მონაცემებს Dark Sky– დან. თქვენ უნდა შექმნათ Dark Sky ანგარიში https://darksky.net/dev და განათავსოთ თქვენი საიდუმლო გასაღები სკრიპტში, სადაც მითითებულია. თქვენ ასევე დაგჭირდებათ ამინდის ადგილმდებარეობის გრძედი და გრძედი, რომელიც გაინტერესებთ - ეს შეგიძლიათ ნახოთ Google Maps– ზე, უბრალოდ დააწკაპუნეთ მარჯვენა ღილაკით და აირჩიეთ „რა არის აქ?“და თქვენ მიიღებთ ამომხტარ ფანჯარას, რომელიც აჩვენებს ადგილმდებარეობის ხანგრძლივობას.

API მონაცემების ამოღების შემდეგ weatherman.py გადასცემს პარამეტრებს რამდენიმე პატარა სკრიპტზე, რათა დაიწყოს ანიმაციები და ყურსასმენები.

სკრიპტი დაყენებულია გაშვებისას გაშვების ფაილის რედაქტირებით…

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

… და დამატება:

@python3 /home/pi/weather/weatherman.py &

ფაილის ბოლოს.

icon.py

ეს სკრიპტი იღებს "მიმდინარე პირობების" პარამეტრს weatherman.py სკრიპტიდან და იყენებს მას 16x16 ამინდის ანიმაციის საჩვენებლად - ეს ყველაფერი ინახება "ხატების" საქაღალდეში და არის სტანდარტული Unicorn HAT HD დოკუმენტაციის ნაწილი. თქვენ შეგიძლიათ მარტივად შეცვალოთ-p.webp

ტელეფონები.პია

თუ ამინდის პირობები შეიცვალა API– ს ბოლო მოთხოვნიდან (ან ახალი ჩატვირთვისას და არ თოვს), მაშინ ეს სკრიპტი ეწოდება weatherman.py– ს და ავალებს სერვოს, რომ „დაკნინდეს“წინ და უკან, რათა გააფრთხილოს, რომ პირობები შეიცვალა.

ნალექი. py

ეს სკრიპტი იღებს "ნალექის ალბათობის" პარამეტრს weatherman.py– დან და აჩვენებს ლურჯ ხაზებს Unicorn HAT– ზე % ალბათობასთან დაკავშირებით. თუ 100% ყველა 16 მწკრივი იქნება ლურჯი, თუ 50% მხოლოდ 8 მწკრივი და ა.

temp.py

კიდევ ერთი სტანდარტული Pimoroni დამწერლობა, ეს იღებს "temp" პარამეტრს weatherman.py– დან და აჩვენებს მას გადახვევის ტექსტით. დაყენებულია Herkules truetype შრიფტი ("შრიფტების" საქაღალდეში), მაგრამ შეგიძლიათ გამოიყენოთ სტანდარტული შრიფტი, თუ გირჩევნიათ. თქვენ კი შეგიძლიათ გააძლიეროთ ის ისე, რომ ნაჩვენები ტექსტი შეცვალოს ფერი ტემპერატურის მნიშვნელობიდან გამომდინარე!

ნაბიჯი 4: Unicorn HAT & Servo

Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo

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

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

სერვერის დამატება იყო იდეალური მანქანა ამ სიგნალებისთვის, რადგან ის გამოიწვევდა ცოტა ხმაურს და თვალშისაცემი იქნებოდა ზედმეტად შემაშფოთებელი. როდესაც ქუდი უკვე იძენდა Pi- ს ბევრ ქინძისთავს, მე გავამაგრე servo კაბელები დაფის ქვედა ნაწილში, Pin 17 -ის გამოყენებით გავაკონტროლო servo- ს მოძრაობა Pulse Width Modulation- ის გამოყენებით.

Pi– სგან სერვერის გაძლიერება არ იყო იდეალური, მაგრამ ის მხოლოდ ოდესმე გამოიყენებოდა მომენტალური გადაადგილებისთვის, ასე რომ სიზუსტე აქ დიდი საქმე არ იყო. იგი დაკავშირებულია როგორც დიაგრამაზეა ნაჩვენები, ყავისფერი კაბელით GND, წითელი 5V და ნარინჯისფერი (საკონტროლო კაბელი) GPIO17- თან.

დაბოლოს, მე შევცვალე ამინდის ანიმაციის ფაილები GIMP– ში, რათა დავამატო ჩემი პირადი შეხებები, როგორიცაა ღამურები მთვარეზე და ღიმილიანი სახე მზეზე. მე ასევე დავამატე პერსონალური "Old Tech New Spec" კასეტის ბორბლის ანიმაცია, რომელიც უნდა გაითამაშოს გაშვებისას, მხოლოდ გასართობად.

ნაბიჯი 5: ყურსასმენის გადარევა

ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle
ყურსასმენი Jiggle

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

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

ჯერ მე გამოვწერე 3.5 მმ -იანი დანამატი და დავშალე ბრილიანტის ჩამრთველი, შემდეგ ეს ჩავწექი ხრახნიანი ჯოხის ნაჭერზე. შემდეგ მე დავამატე კაკალი პლასტმასის კონექტორზე, რათა როდმა შეძლოს უსაფრთხოდ (და პირდაპირ) ჯდომა სერვოზე. ჯოხის მეორე ბოლოში დავამატე სხვა თხილი. საბოლოოდ მე ნაცრისფერი სუგრუ გამოვიყენე როდის ზედა ნაწილზე ყურსასმენის ზოლზე და ასევე თხილის დასაფარად შეკრების ბოლოში. თუ თქვენ არ გსმენიათ Sugru– ს შესახებ, ეს არის წებოვანი წებო, რომელიც მოდის პატარა ფერის პაკეტებში - ის ყალიბდება Play -Doh– ის მსგავსად, მაგრამ ის იწებება სუპერწებოს მსგავსად და მყარდება პლასტმასის მსგავსად!

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

ნაბიჯი 6: შეკრება

შეკრება
შეკრება
შეკრება
შეკრება
შეკრება
შეკრება
შეკრება
შეკრება

Pi, HAT და Servo ყველა კარგად მუშაობდნენ სკამზე, ასე რომ შემდეგი სამუშაო იყო მათი საქმეში ჩაბმა. სანამ დიდ კომპონენტებზე დავიწყებდი, გამოვიყენე ნაცრისფერი სუგრუ, მოცულობის აკრიფეთ, ყურსასმენის ბუდე და "რკინის ლენტი" გადამრთველი, კოსმეტიკის დასალაგებლად. მე ასევე დავამაგრე ორიგინალური Play, Stop, FF & Rew ღილაკები პლასტმასის მილსადენზე, რათა ისინი დარჩნენ სწორ ადგილას. სირცხვილი იყო ამჯერად რომელიმე ღილაკის ხელახლა გამოყენება, მაგრამ მათ გასაკონტროლებლად ნამდვილად არაფერი ჰქონდათ!

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

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

ნაბიჯი 7: მშვიდი შეპყრობა

მშვიდი შეპყრობილობა
მშვიდი შეპყრობილობა
მშვიდი შეპყრობილობა
მშვიდი შეპყრობილობა

მეორე პრიზი ხელახალი გამოყენების კონკურსში

გირჩევთ: