Სარჩევი:

O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **: 6 ნაბიჯი (სურათებით)
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **: 6 ნაბიჯი (სურათებით)

ვიდეო: O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **: 6 ნაბიჯი (სურათებით)

ვიდეო: O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **: 6 ნაბიჯი (სურათებით)
ვიდეო: Section 9 2024, დეკემბერი
Anonim
Image
Image
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** განახლებულია ივლისი 2019 **

გამარჯობა აქ მე ვარ ახალი პროექტი სახელწოდებით O-R-A

ეს არის RGB LED მატრიქსის კედლის საათი, რომელიც აჩვენებს:

  • საათი: წუთი
  • ტემპერატურა
  • ტენიანობა
  • მიმდინარე ამინდის მდგომარეობის ხატი
  • Google Calendar მოვლენები და შეხსენების 1 საათიანი შეტყობინებები

კონკრეტულ დროს აჩვენებს:

  • Google Calendar დღეს და ხვალ მოვლენების სია
  • ამინდის პროგნოზი
  • ახალი ამბები

დამოკიდებულების ფუნქციები:

  • მიმდინარე თარიღი
  • ჯადოსნური 8 ბურთი
  • სამზარეულოს ტაიმერი

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

ფუნქციონალურობა, როგორიცაა Google Calendar სია, ამინდის პროგნოზი, RSS ახალი ამბები იწყება წინასწარ არჩეულ დროს, როდესაც მოწყობილობა "საათის რეჟიმშია". კიდევ ერთი ფუნქცია "საათის რეჟიმში" აჩვენებს მიმდინარე დღეს/თვე/წელს. მისი გაშვება შესაძლებელია ENTER ღილაკზე დაჭერით. დააჭირეთ ღილაკს CHANGE STATE ღილაკს და შემდეგ ღილაკს ENTER 3 წამის განმავლობაში "საათის რეჟიმში", საშუალებას მოგცემთ შეხვიდეთ პარამეტრების მენიუში. მდგომარეობის შეცვლა ადგენს მენიუს შიგნით გადახვევას, ღილაკს ENTER არის არჩეული ვარიანტის დადასტურება.

ეს პროექტი არის ჩემი წინა LEGOLED და TEMPO ევოლუცია. RGB led მატრიცულ პანელს აქვს გარჩევადობა 32x64 ახლა, ასე რომ შესაძლებელია უფრო ინტელექტუალური გრაფიკის ჩვენება, ფიქსირებული და გადახვევის ტექსტი ერთდროულად. TEMPO ფუნქციონირების გამოყენებით მოწყობილობა ავტომატურად ირთვება და გამორთულია ყოველგვარი ღილაკისა და გარე ტაიმერის გარეშე. PIR მოდული განსაზღვრავს ადამიანების არსებობას, ამიტომ ჩართეთ/გამორთეთ ეკრანი.

ამინდის პროგნოზი და კალენდარული მონაცემები გროვდება ყოველ წუთს Google Calendar- ისა და Open ამინდის რუქის საშუალებით.

ეს პროექტი არის სრულად კონფიგურირებადი დაწყებული Raspberry PI B+, 2 მოდული 16x64 rgb led მატრიცა და კვების წყარო. ის შეიძლება გაფართოვდეს, ისევე როგორც მე, დავამატე USB ხმის კარტები, დინამიკები, ჩართვის/გამორთვის დენის წრე.

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

  • ჟოლო Pi B+ (ჩაშენებული wifi ან dongle)
  • 2 x 16x64 RGB led მატრიცა ან 2 x 32x32
  • ზოგადი ჩარჩო (დაახლოებით 40x50 სმ და 3 სმ სიღრმე დაახლოებით)
  • გაყინული პლასტმასის ფურცელი
  • ფანჯრის მზის ფილმი
  • PS 5V 10A
  • კაბელები
  • თერმოსეტიანი გარსი (*)
  • სარელეო მოდული (*)
  • დამატებითი PS აუდიო გამაძლიერებლისთვის (*)
  • 3W აუდიო გამაძლიერებელი მოდული (*)
  • დინამიკები (*)
  • USB ხმის ბარათი (*)
  • 2 x მიკრო გადამრთველი (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • რეზისტორები: 3x1K, 2x10K, 1x2K (*)
  • ტერმინალური ბლოკი (*)
  • სათაურის ზოლები ქალი (*)
  • სათაურის ზოლები მამრობითი (*)

(*) სურვილისამებრ

ნაბიჯი 2: ჟოლოს Pi დაყენება

ეს სახელმძღვანელო ძირითადად ემყარება Raspbian Jessie Lite, Python 2.7 და RGB LED MATRIX ბიბლიოთეკას Hzeller Github მომხმარებლის მიერ.

პირველ რიგში განაახლეთ და განაახლეთ RPI

დააინსტალირეთ git

su $ sudo apt-get install git

ჩამოტვირთეთ RGB LED MATRIX ბიბლიოთეკა Github– დან

~ $ git კლონი

~ $ cd rpi-rgb-led-matrix

~ $ sudo მარკა

შავი სიის RPI შიდა ხმის ბარათი

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

შავი სია snd_bcm2835

EOF

~ $ sudo განახლება -initramfs -u

დააყენეთ გარე ხმის ბარათის პარამეტრები, თუ საჭიროა აუდიო შესაძლებლობები:

su $ sudo nano /usr/share/alsa/alsa.conf

შეცვლა:

ნაგულისხმევი.ctl.card 0

ნაგულისხმევი. pcm. ბარათი 0

რათა

ნაგულისხმევი.ctl.card 1

ნაგულისხმევი. pcm. ბარათი 1

შემდეგ გადატვირთეთ

ახლა დააინსტალირეთ მატრიცის ბიბლიოთეკა

~ $ cd/home/pi/rpi-rgb-led-matrix

su $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y

make $ make build-python

$ sudo make install-python

და დააინსტალირეთ საჭირო სხვა ბიბლიოთეკები:

su $ sudo easy_install pip

~ $ sudo pip დააინსტალირეთ

Samplepase.py სკრიპტის კოპირება ~/rpi-rgb-led-matrix/bindings/python/samples/საწყისი დირექტორია

მიიღეთ API გასაღები უფასოდ რეგისტრაციისთვის ამინდის რუქის გასახსნელად

დააინსტალირეთ ახლა OWM პითონის შესაფუთი PYthon 2.7 (მადლობა CSPARPAGithub მომხმარებლისთვის)

su $ sudo pip დააინსტალირეთ git+https://github.com/csarpa/[email protected]

მიიღეთ Google Calendar- ის რწმუნებათა სიგელები Google კალენდარული API ინსტრუქციის შესაბამისად

აუდიო სათამაშოდ დააინსტალირეთ Pygame

su $ sudo apt-get დააინსტალირეთ python-pygame

RSS არხებს სჭირდება Feedparser დაყენებული

su $ sudo pip დააინსტალირეთ მიმწოდებელი

დააკოპირეთ ჩემი სკრიპტი ORAeng_131.py (ინგლისური ვერსია) ან ORAita_131.py (იტალიური ვერსია) სახლის დირექტორიაში

შექმენით საქაღალდეები ბგერებისა და სურათებისთვის:

mkdir dbsounds

mkdir owm

ჩამოტვირთეთ და დააკოპირეთ ყველა-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

დაამატეთ თქვენი OWM სერთიფიკატი ხაზზე 69 (API_key)

დააყენეთ ქალაქი ამინდის პროგნოზისთვის (შეამოწმეთ არის თუ არა იგი დაფარული OWM და სწორი სახელი მიღებულია) ხაზებში 213, 215

obs = owm.weather_at_place ('Napoli, IT')

fc = owm.three_hours_forecast ('Napoli, IT')

******************************** განახლება 28/7/2019 ********** ******************

ახალი Google Calendar API ქმნის პრობლემებს. მე გადავწყვიტე ზოგიერთი მოდულის ამოღება:

su $ sudo apt-get remove-purge python-setuptools

su $ sudo apt-get autoremove python-pyasn1

სცადეთ სკრიპტი გაშვებული

su $ sudo python ORAeng_150.py # ან ORAita_150.py იტალიური ვერსიისთვის

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

RAM– ის გადაჭარბებული გამოყენების გამო, რამდენიმე საათის შემდეგ, მე დავწერე სკრიპტი, რომელიც უბრალოდ განაახლებს პითონის სკრიპტს, როდესაც RAM– ის გამოყენება გადააჭარბებს ბარიერის დონეს. შემდეგ დააკოპირეთ სახლის დირექტორიაში სკრიპტი სახელწოდებით memcheck სახელწოდებით memcheck.sh და დაამატეთ crontab -e ერთად მთავარი სკრიპტი

*/5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

ნაბიჯი 3: სკრიპტები

მთავარი სკრიპტი უნდა შეიცვალოს თქვენი საჭიროებების შესაბამისად. ვივარაუდოთ, რომ OWM და Goggle Calendar სერთიფიკატები მითითებულია, როგორც მათი შესაბამისი API ინსტრუქცია, ყველაზე მნიშვნელოვანი პარამეტრები არის:

კალენდარული მოვლენების სია ყოველ საათში ასრულებს წუთს 2, 32 (იხ. სკრიპტის ხაზი 65)

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

ახალი ამბების შესრულება ყოველ საათში მე -11 წუთზე (იხ. სკრიპტის სტრიქონი 67)

ახალი ამბების RSS არხი. შიგნით სკრიპტი დაყენებულია Instructable RSS, მაგრამ შეიძლება შეიცვალოს. (იხ. სკრიპტის ხაზი 366)

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

Attiny85 ჩართვის/გამორთვის ქრონომეტრი უნდა იყოს დაპროგრამებული ესკიზის Tempo_V1_9_1Mhz_bugfix.ino ატვირთვისას.

ეს საშუალებას გაძლევთ ჩართოთ მოწყობილობა დილის 8 საათზე და გამორთოთ 23 -ზე. დამატებითი ინფორმაციისთვის იხილეთ სახელმძღვანელო.

ნაბიჯი 4: წრე

წრე
წრე
წრე
წრე
წრე
წრე

წრე ძირითადად 3 განყოფილებას მოიცავს

- ჩართვის/გამორთვის ტაიმერი, რომელსაც ამუშავებს DS3231 მოდული, Attiny85 და Mosfet

- გადართვა საათის მახასიათებლების ხელით კონტროლისთვის

- კავშირის განყოფილება, სადაც არის RGB LED Matrix მონაცემებისა და სიმძლავრის კაბელირება, აუდიო გამაძლიერებელი და ჟოლო Pi

არ არის ნახსენები რეზისტენტული ძაბვის გამყოფი, რომელიც RPI- ს საშუალებას აძლევს წაიკითხოს მაღალი/დაბალი 5V სიგნალი Attiny85– დან

კონცენტრატორები უკავშირდება RPI pin- ს და GND- ს პირდაპირ შიდა რეზისტორების გამოყენებით

Attiny85 ტაიმერი მოდის ჩემი წინა პროექტიდან სახელწოდებით TEMPO. ძირითადად, DS3231 აგზავნის LOW სიგნალს Attiny85 შეწყვეტის პინზე, რომელიც გამოაღვიძებს მას ძილის რეჟიმიდან. გაღვიძებისთანავე Attiny85 აგზავნის HIGH სიგნალს Mosfet ტრანზისტორზე, ააქტიურებს კვების ბლოკს RPI, LED მატრიცა და აუდიო გამაძლიერებელი (თუ არ არის დაკავშირებული დამატებით PS– ზე რელეზე, როგორც ჩემი ბოლო კონფიგურაცია).

RPI– ს გამორთვისთვის, ჩემი სკრიპტი ითვალისწინებს, რომ RPI ციფრული სიგნალის მოსმენა პინ 14 – ზე, როდესაც ის მაღალია, ეწოდება გამორთვის ბრძანებას. შემდეგ RPI ასრულებს გამორთვის სწორ პროცესს, შემდეგ ერთი წუთის შემდეგ, Attiny85 ბრუნდება ძილის რეჟიმში და Mosfet იღებს LOW სიგნალს, რომელიც გამორთავს მთელ მოწყობილობას. ეს პროცესი არის უხეში, მაგრამ ეფექტური.

PIR მოდული არჩევითია და უშუალოდ უკავშირდება RPI GPIO- ს.

ჩემი კონფიგურაცია მოითხოვს, რომ შემდეგი RPI GPIO ქინძისთავები იყოს დაკავშირებული:

15 PIR– მდე

14 to Attiny85 pin 3 მეშვეობით ძაბვის გამყოფი

21 სარელეო მოდულს

2 გადართვა (ღილაკზე შეყვანა)

3 გადართვა (სახელმწიფო ღილაკის შეცვლა)

საკითხები:

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

წრე ამოღებულია სპილენძის ფირფიტის, 3D პრინტერის, მარკერის და რკინის ქლორიდის გამოყენებით.

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

აწყობა
აწყობა
აწყობა
აწყობა
აწყობა
აწყობა
აწყობა
აწყობა

მე ადაპტირებული მაქვს ზოგადი 40x50 სმ ჩარჩო ამ პროექტზე ერთად 3D დაბეჭდილი ნაწილები და დამატებითი სურვილისამებრ.

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

Led მატრიცები ხრახნიანია ჩარჩოს უკანა პანელზე.

ნაბიჯი 6: და ახლა?

Და ახლა ?
Და ახლა ?
Და ახლა ?
Და ახლა ?

შემდეგი ნაბიჯი იქნება ტემპერატურის სენსორის დამატება, bluetooth შესაძლებლობების გააქტიურება და, რატომაც არა, ინტერნეტ რადიო პლეერი Raspberry Pi- ს მაქსიმალურ პოტენციალამდე.

Ნახვამდის

საათების კონკურსი
საათების კონკურსი
საათების კონკურსი
საათების კონკურსი

მეორე ადგილი საათების კონკურსში

გირჩევთ: