Სარჩევი:
- მარაგები
- ნაბიჯი 1: ჟოლოს პიის დაყენება
- ნაბიჯი 2: დააკავშირეთ ელექტრონიკა
- ნაბიჯი 3: მონაცემთა ბაზის დიზაინი
- ნაბიჯი 4: Arduino დაყენება
- ნაბიჯი 5: ჟოლო Pi Backend
- ნაბიჯი 6: საქმე
ვიდეო: გაიღვიძე - ჭკვიანი მაღვიძარა: 6 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
Wake me up არის ჭკვიანი მაღვიძარა, რომელიც ასევე შეიძლება გამოყენებულ იქნას როგორც ჭკვიანი შუქი.
ჩაშენებული ledstrip ახდენს თქვენი ოთახში შემომავალი ბუნებრივი შუქის სიმულაციას. ეს საშუალებას გაძლევთ მიიღოთ მშვიდი და ბუნებრივი გზა თქვენი დღის დასაწყებად.
მაღვიძარა ასევე აღჭურვილია 4*7 სეგმენტის დისპლეით დროის წასაკითხად, დინამიკები თქვენი საყვარელი მუსიკით გაღვიძებისთვის, სენსორული ღილაკი, ldr led led- ის სიკაშკაშის ადაპტირებისთვის და ტემპერატურის სენსორი, რომლის საშუალებითაც შეგიძლიათ ნახოთ თქვენი ოთახის ტემპერატურა.
მარაგები
გადასახდელი ზუსტი ფასების სია შეგიძლიათ იხილოთ აქ:
მიკროკონტროლერები და კომპიუტერები:
Raspberry Pi 4I ვიყენებდი ჟოლოს 4 4GB თუმცა, ნებისმიერი ჟოლოს მოდელი 3+ უნდა იყოს კარგი
არდუინო უნო
Arduino გამოიყენება 4*7 სეგმენტის საათის ჩვენების გასაკონტროლებლად.
სენსორები:
- TMP36: ტემპერატურის სენსორი
- LDR: სინათლეზე დამოკიდებული რეზისტორი
აქტივატორები:
- WS2801: ინდივიდუალურად ადრესადი ledstrip
- LCD დისპლეი: 16*2 LCD დისპლეი.
- 4*7 სეგმენტიანი საათის ჩვენება
IC- ები:
- 74HC595: Shiftregister LCD ეკრანისთვის
- MCP3008: 8 ბიტიანი ციფრული ანალოგური გადამყვანი
- ლოგიკური დონის გადამყვანი: გამოიყენება რასპსა და არდუინოს შორის კომუნიკაციისთვის
Სხვა რაღაცეები:
- Adafruit MAX9744 გამაძლიერებელი დინამიკების დასატენად
- ნებისმიერი სპიკერი, მე გამოვიყენე Visaton 4Ohm 8Watt სრული დიაპაზონი (ხელოვნება No. 2240)
- 9 ვოლტიანი დენის წყაროს გამაძლიერებელი
- 5 ვოლტიანი დენის წყაროს მიაწოდოს ledstrip და სხვა კომპონენტები. გაითვალისწინეთ, რომ თითოეულ led ledstrip შეიძლება drow 60mA ასე რომ დარწმუნდით თქვენი კვების წყარო არის საკმარისი.
- რამდენიმე 220Ohm რეზისტორი
- პატარა პურის დაფა თქვენს ქეისში ჩასასმელად.
ინსტრუმენტები:
- გასაყიდი რკინა.
- რაღაცის გასაკეთებლად (მე გამოვიყენე 3D პრინტერი PLA და PETG და ვინილის სტიკერები ხის ეფექტის მისაღებად.)
ნაბიჯი 1: ჟოლოს პიის დაყენება
ჟოლოს პი არის ჩვენი მთავარი მიკრო კონტროლერი.
ჟოლოს პი მართავს ჩვენს ადგილობრივ ვებ სერვერს, მონაცემთა ბაზას, აკონტროლებს ledstrip- ს, დინამიკებს,…
ნაწილი 1: Raspbian– ის დაყენება
გამოიყენეთ ეს გაკვეთილი raspbian– ის დასაყენებლად:
დარწმუნდით, რომ SSH ჩართულია
ნაწილი 2: დაკავშირება
იმისათვის, რომ დაუკავშირდეთ ინტერნეტს, თქვენ უნდა შეხვიდეთ თქვენს ჟოლოს პი ტერმინალში. მე გირჩევთ გამოიყენოთ ბოთლი. ტერმინალის ტიპში:
wpa_passphrase "YourNetwork" "YourSSID" >> /etc/wpa_supplicant/wpa_supplicant.conf
"YourNetwork" არის თქვენი wifi ქსელის სახელი და "YourSSID" არის ქსელის პაროლი.
მას შემდეგ რაც დაამატებთ ქსელს სცადეთ გადატვირთოთ Raspberry Pi.
ჩაწერეთ ბრძანება "პინგი 8.8.8.8", ეს გამოგიგზავნით პაკეტს google სერვერებზე, თუ მიიღებთ პასუხს, რომ თქვენი ქსელი დაყენებულია და მუშაობს!
ნაწილი 3: დააინსტალირეთ საჭირო პროგრამები
ჩვენ დაგვჭირდება დამატებითი პროგრამების დაყენება, რომ ეს პროექტი ამოქმედდეს.
სანამ დავიწყებთ, გაუშვით ეს 2 ბრძანება, რათა დარწმუნდეთ, რომ ყველაფერი განახლებულია.
sudo apt განახლება
sudo apt განახლება
ამას შეიძლება გარკვეული დრო დასჭირდეს.
აპაჩი
sudo apt დააინსტალირეთ apache2 -y
sudo apt დააინსტალირეთ php libapache2-mod-php -y
მარია დბ
sudo apt დააინსტალირეთ mariadb-server mariadb-client -y
sudo apt დააინსტალირეთ php -mysql -y
PHPMyAdmin
sudo apt დააინსტალირეთ phpmyadmin -y
პითონის პიპი
ჩვენ გვჭირდება პიპის დაყენება, რათა გავუშვათ პითონის ბიბლიოთეკები
pip3 დააინსტალირეთ mysql-connector-python
pip3 დააინსტალირეთ flask-socketio
pip3 დააინსტალირეთ კოლბები
pip3 დააინსტალირეთ gevent
pip3 დააინსტალირეთ gevent-websocket
ნაბიჯი 2: დააკავშირეთ ელექტრონიკა
მე დავამატე 2 სქემა, 1 არის პურის დაფის სქემა ტესტირების მიზნით. მე გირჩევ პირველი სქემის აგებას და კოდის მუშაობას.
ქვემოთ დავამატე გამაოგნებელი ფაილები.
ნაბიჯი 3: მონაცემთა ბაზის დიზაინი
ეს არის მონაცემთა ბაზის სქემა, რომელიც მე გავაკეთე. სიტყვები ჰოლანდიურია, მაგრამ თითოეულ ცხრილს დეტალურად ავუხსნი.
ცხრილი 1: tblMuziek
ეს არის საკმაოდ ძირითადი მაგიდა. ეს ინახავს მხატვრის სახელს, სიმღერის სახელს და სიმღერის ფაილის სახელს.
ცხრილი 2: tblLedstrip
ეს ცხრილი თვალყურს ადევნებს ledstrip– ის ამჟამინდელ მდგომარეობას და ზოგავს ledstrip– ის მდგომარეობას. ჩვენ გვჭირდება ეს ჭკვიანი განათების ფუნქციისთვის.
ცხრილი 3: tblSensoren
ეს ცხრილი თვალყურს ადევნებს ჩვენს განგაშის სენსორებს. ჩვენ ვინახავთ სენსორის სახელს და MCP3008 არხს
ცხრილი 4: tbl შეხვედრა
ეს ცხრილი ინახავს ჩვენი სენსორების მნიშვნელობებს მათ დროსთან ერთად.
ცხრილი 5: tblWekker
ეს მაგიდა ინახავს თქვენი მაღვიძარის პაროლს და სახელს (მაგალითად, საძინებელი) ეს მაგიდა არ არის სავალდებულო, მაგრამ მე დავამატე, რადგან ვვარაუდობ, რომ თქვენ გექნებათ 1 -ზე მეტი მაღვიძარა თქვენს სახლში.
ცხრილი 6: tblAlarrm
ეს არის ალბათ ყველაზე მნიშვნელოვანი მაგიდა. ის თვალყურს ადევნებს თქვენს მიერ დაყენებულ მაღვიძარას და რა უნდა გააკეთოს საათმა (რომელი სიმღერა უნდა ითამაშოს, რომელია თანმიმდევრობა, რა დღეებში უნდა გათიშოს,…). ძალიან მნიშვნელოვანია 2 თარიღის თვალყურის დევნება. 1 თარიღი გამოიყენება შესანახად, რომელ საათზე უნდა გააქტიურდეს სიგნალიზაცია. მეორე თვალყურს ადევნებს ბოლოს როდის დაირეკა მაღვიძარა. იმის გასაგებად, თუ რომელი კვირის დღე უნდა გათიშოს, გამოვიყენე ვარჩარი, რომელიც შეიცავს 7 ციფრის რაოდენობას. პირველი ციფრი არის ორშაბათი, მეორე სამშაბათი,… თუ ეს არის 1, ის უნდა გაითიშოს, თუ ეს არის 0 არ უნდა იყოს. მაგალითი: 1111100 ეს ნიშნავს, რომ ეს მაღვიძარა უნდა გააქტიურდეს ორშაბათს, სამშაბათს, ოთხშაბათს, ხუთშაბათს და პარასკევს.
ნაბიჯი 4: Arduino დაყენება
ეს ნაბიჯი ძალიან ადვილია. შემდეგი ნაბიჯი იქნება ჩემი github– ის ბმული, სადაც შეგიძლიათ ჩამოტვირთოთ arduino ფაილი.
რას აკეთებს პროგრამა?
პროგრამა ელოდება სერიული მონაცემების მიღებას pi- დან.
მონაცემების მიღებისთანავე ის იჭრება სტრიქონის მეშვეობით და აგზავნის დადასტურებას pi- ს.
სიმებიანი იქნება მსგავსი რამ: '1201' ეს ნიშნავს, რომ ის არის 12:01. მე გამოვიყენე საერთო ანოდი 7 სეგმენტის ჩვენება, რაც ნიშნავს რომ ციფრები უნდა იყოს მაღალი და A, B, C, D, E, F, G და DP დაბალი უნდა იყოს მათი ჩართვისთვის. თუ თქვენ იყენებთ საერთო კათოდს, თქვენ უბრალოდ უნდა შეცვალოთ HIGH LOW და LOW მაღალი.
აქ არის ბმული დამატებითი ინფორმაციისთვის, თუ როგორ მუშაობს 7 სეგმენტის ჩვენება. (ბიბლიოთეკის გამოყენებით):
www.instructables.com/id/Using-a-4-digit-7…
აქ არის ბმული ბიბლიოთეკის გამოყენების გარეშე 7 სეგმენტის ჩვენების შესახებ:
create.arduino.cc/projecthub/SAnwandter1/p…
ნაბიჯი 5: ჟოლო Pi Backend
თქვენ შეგიძლიათ ჩამოტვირთოთ ჩემი კოდი Github– ის გამოყენებით. (https://github.com/VanHevelNico/WakeMeUp)
როგორ დააყენოთ პროგრამა:
უკანა მხარე ჩაწერილია პითონში კოლბის გამოყენებით. შეგიძლიათ გააკეთოთ სერვისი, რომელიც იწყებს ამ პროგრამას (app.py) ავტომატურად.
თქვენ უნდა განათავსოთ frontend კოდი apache სერვერის html ფაილში, რომელიც ჩვენ ადრე გადმოვწერეთ. (/var/html)
როგორ მუშაობს პროგრამა?
როდესაც მაღვიძარა ჩართულია გადადით თქვენი საათის IP მისამართზე (ის გამოჩნდება LCD– ზე)
როგორც კი მიხვალთ იმ ბრაუზერის IP მისამართზე, თქვენი კომპიუტერი გამოგიგზავნით socket.io თხოვნას უკანა მხარეს, რომელშიც ნათქვამია, რომ კლიენტი დაკავშირებულია. როდესაც უკანა მხარე ამას მიიღებს, დაიწყება რამდენიმე თემა, რომელსაც ქვემოთ განვმარტავ.
Აწყობა
ეს ინიციალებს ყველა საჭირო ობიექტს.
GetTemp
ეს კითხულობს mcp3008 არხს 0 და გარდაქმნის ორობითი მონაცემებს რეალურ ტემპერატურაზე და ათავსებს მონაცემთა ბაზაში მიმდინარე თარიღით და საათით.
GetTempGrafiek
ეს იღებს ტემპერატურის სენსორის ბოლო 20 მნიშვნელობას და ასხივებს მას წინა მხარეს.
tijd_sturen
ეს მეთოდი იღებს მიმდინარე დროს და ამოწმებს, შეიცვალა თუ არა წუთი. თუ ის შეიცვალა პროგრამა აგზავნის ახალ დროს arduino– ს სერიული კომუნიკაციის გამოყენებით
შემოწმება
ეს არის ყველაზე მნიშვნელოვანი მეთოდი. ის იღებს ყველა სიგნალს, რომელიც ჩართულია და ამოწმებს, თუ რომელიმე ამ სიგნალიზაციიდან უნდა გადიოდეს ახლა და 5 წუთის წინ (ეს არის ბუფერი, რათა დარწმუნდეთ, რომ თითოეული სიგნალიზაცია გადის საჭიროების შემთხვევაში). თუ მაღვიძარა უნდა ჩაქრეს, ჩვენ დავიწყებთ მუსიკას, ledstrip,… ჩვენ ვკითხულობთ ძალის მიმართ მდგრად რეზისტორს განუწყვეტლივ და როდესაც მნიშვნელობა 1000 -ზე ქვემოთ ეცემა (წაიკითხეთ fsr არის დაჭერილი) ჩვენ ვრთავთ განგაშის სიგნალს და განვაახლებთ სიგნალს მონაცემთა ბაზა. ჩვენ განვსაზღვრეთ თარიღი, როდესაც მაღვიძარა ბოლოჯერ ჩაირთო მიმდინარე თარიღზე.
statusLight
ეს მეთოდი გამოსცემს ledstrip- ის მნიშვნელობას და საჭიროების შემთხვევაში ჩართავს ledstrip- ს.
lichtAanpassen
ეს არის დამატებითი მეთოდი იმის უზრუნველსაყოფად, რომ ledstrip და განგაშის შუქი არ ეწინააღმდეგება.
ნაბიჯი 6: საქმე
ჩემი ფაილების ბმული შეგიძლიათ იხილოთ აქ:
გარსაცმის დასაბეჭდად გამოვიყენე 3D პრინტერი. იგი დაბეჭდილია 4 სხვადასხვა ნაწილად:
- წინა ფირფიტა ხვრელებით სპიკერისთვის და რამდენიმე კედელი 7 სეგმენტის ჩვენებისთვის
- გარეთა ბეჭედი გამჭვირვალე PETG- ში ledstrip- ისთვის.
- შუა ნაწილი
- უკანა დაფა ხვრელი LCD– ისთვის და ხვრელი კაბელებისთვის.
თავდაპირველ მოდელში არ იყო ხვრელი 7 სეგმენტის ჩვენებისთვის, თუმცა ეს საჭიროა, რადგან წინააღმდეგ შემთხვევაში 7 სეგმენტის ეკრანის შუქი არ ანათებს.
როგორც ხედავთ ყველა კომპონენტის ჩასმის შემდეგ ვინილის სტიკერები გამოვიყენე ხის იერით, რათა საბოლოო შედეგი უკეთესად გამოიყურებოდეს. საათის ჩვენება ანათებს სტიკერზე, რაც ქმნის ძალიან ლამაზ ეფექტს.
გირჩევთ:
Twin Bell მაღვიძარა სოდადან: 7 ნაბიჯი (სურათებით)
Twin Bell მაღვიძარა სოდადან: ეს ინსტრუქცია გიჩვენებთ თუ როგორ უნდა გააკეთოთ ორმაგი ზარი მაღვიძარა სოდადან. პროექტი იყენებს სოდა ქილებს, სადაც მელანი ამოიღეს (ბმული: მელნის მოცილება სოდადან). ამ მაღვიძარა სრულად ფუნქციონირებისათვის ინტეგრირებული იყო DIY კვარცის საათის მოდული
ხმაურიანი მაღვიძარა: 3 ნაბიჯი
ხმაურიანი მაღვიძარა: მე ვარ 13 წლის სტუდენტი ტაივანში. მე პირველად ვაკეთებ ნივთებს არდუინოსთან, თუ შეგიძლიათ მითხრათ როგორ გავაუმჯობესო ეს სამუშაო, გთხოვთ დატოვეთ კომენტარები ჩემთვის, რათა მე უკეთესი გავხადო. (მადლობა ) ამ საათს შეუძლია გაიღვიძოს, როცა გძინავს, მაგრამ მე
გაიღვიძე !!!: 5 ნაბიჯი
გაიღვიძე !!!: ეს პროექტი ხალხის გაღვიძებისთვისაა. ბევრი ადამიანია, ვინც ვერ გაიღვიძა განგაშისგან, ამიტომ ეს პროექტი ეხმარება მათ, რომ ადვილად და სწრაფად გაიღვიძონ. პროექტმა გამოიყენა სერვომოტორული და ფოტორეზისტენტული, როდესაც შუქები ფოტორეზისტორზე
მარტიქს სცენა გაიღვიძე ნეო ვბს: 4 ნაბიჯი
Martix Scene გაიღვიძე ნეო … Vbs: გამარჯობა ეს არის პროგრამირების ინსტრუქცია და მე მოგცემ კოდს, ასე რომ თქვენ შეგიძლიათ გადააკეთოთ სცენა მატრიცის დასაწყისში, სადაც ნეოს კომპიუტერი გატეხილია და კომპიუტერი ამბობს: გაიღვიძე ნეო
LED მზის ამოსვლის მაღვიძარა დააკონფიგურიროთ სიმღერის მაღვიძარა: 7 ნაბიჯი (სურათებით)
LED მზის ამოსვლის მაღვიძარა დასაკონფიგურირებელი სიმღერის სიგნალიზაციით: ჩემი მოტივაცია ამ ზამთარს ჩემს შეყვარებულს დილის გაღვიძებისთანავე ბევრი უბედურება ჰქონდა და თითქოს სნეულებას განიცდიდა (სეზონური აფექტური აშლილობა). მე კი ვამჩნევ, რამდენად რთულია ზამთარში გაღვიძება, რადგან მზე არ ამოდის