Мазмуну:

O-R-A RGB Led Matrix дубал сааты жана башкалар ** 2019-жылдын июль айында жаңыртылган **: 6 кадам (сүрөттөр менен)
O-R-A RGB Led Matrix дубал сааты жана башкалар ** 2019-жылдын июль айында жаңыртылган **: 6 кадам (сүрөттөр менен)

Video: O-R-A RGB Led Matrix дубал сааты жана башкалар ** 2019-жылдын июль айында жаңыртылган **: 6 кадам (сүрөттөр менен)

Video: O-R-A RGB Led Matrix дубал сааты жана башкалар ** 2019-жылдын июль айында жаңыртылган **: 6 кадам (сүрөттөр менен)
Video: LED matrix board using "max7219" and Arduino #led #arduino #soldering 2024, Ноябрь
Anonim
Image
Image
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **
O-R-A RGB Led Matrix дубал сааты жана башкалар ** жаңыланган июль 2019 **

Салам. Бул жерде мен O-R-A аттуу жаңы долбоор менен болом

Бул RGB LED Matrix дубал сааты:

  • саат: мүнөт
  • температура
  • нымдуулук
  • учурдагы аба ырайынын сүрөтчөсү
  • Google Жылнаамадагы окуялар жана 1 с. Эскертүү эскертмелери

белгилүү бир убакта көрсөтөт:

  • Google Календары бүгүн жана эртеңки окуялардын тизмеси
  • аба ырайы
  • акыркы кабар

Кошумча функциялар:

  • учурдагы дата
  • Сыйкырдуу 8 топ
  • Ашкана таймери

Каалаган функциялар үчүн түзмөк башка аудио сигналын ойнойт. Аба ырайынын бардык шарттары үчүн, функционалды чакырганда тиешелүү аудио файл ойнотулат.

Google Жылнаама тизмеси, Аба ырайы, RSS жаңылыктары сыяктуу функциялар түзмөк "саат режиминде" болгондо, аларды түз эле өчүргүчтөрдү иштетүү деп атаса болот. "Саат режиминде" дагы бир функция учурдагы күндү/айды/жылды көрсөтөт. Аны ENTER баскычын басып иштетсе болот. МАМЛЕКЕТТИ ӨЗГӨРТҮҮ баскычын жана "ENTER" баскычын 3 сааттын ичинде "саат режиминде" басып, тандоолор менюсуна кирүүгө уруксат бериңиз. МАМЛЕКЕТТИ ӨЗГӨРТҮҮ баскычы - менюнун ичинде жылдыруу үчүн, ENTER баскычы тандалган вариантты ырастоо үчүн.

Бул долбоор мурунку LEGOLED жана TEMPOнун эволюциясы. RGB жетектөөчү матрицанын панели азыр 32x64 токтомго ээ, андыктан бир эле учурда акылдуу графиканы, туруктуу жана жылдыруучу текстти көрсөтүүгө болот. TEMPO функцияларын колдонуу менен, түзмөк эч кандай баскычсыз же тышкы таймерсиз автоматтык түрдө күйүп -өчөт. PIR модулу адамдардын бар экендигин аныктайт, андыктан дисплейди күйгүзүү/өчүрүү.

Аба ырайы жана календардык маалыматтар Google Календар жана Аба ырайынын картасы тарабынан берилген ар бир мүнөт сайын чогултулат.

Бул долбоор толугу менен Raspberry PI B+, 2 модулу 16x64 rgb LED матрицасынан жана электр менен камсыздоодон баштап толугу менен ыңгайлаштырылган. Аны мен кылгандай, USB үн карталарын, динамиктерди кошуу/өчүрүү электр схемасын кошуп кеңейтсе болот.

1 -кадам: Сизге эмне керек

  • Raspberry Pi B+ (камтылган wifi же Dongle менен)
  • 2 x 16x64 RGB LED матрицасы же 2 x 32x32
  • жалпы кадр (болжол менен 40х50 см жана 3 см тереңдикте)
  • муздак пластикалык барак
  • терезе күн пленкасы
  • PS 5V 10A
  • кабелдер
  • термореактивдүү кабык (*)
  • реле модулу (*)
  • аудио күчөткүч үчүн кошумча PS (*)
  • 3W аудио күчөткүч модулу (*)
  • динамиктер (*)
  • USB үн картасы (*)
  • 2 x microswitch (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Резисторлор: 3x1K, 2x10K, 1x2K (*)
  • терминалдык блок (*)
  • ургаачы тилке тилкелери (*)
  • ат тилкеси эркек (*)

(*) милдеттүү эмес

2 -кадам: Raspberry Pi орнотуусу

Бул колдонмо негизинен Hzeller Github колдонуучусу тарабынан Raspbian Jessie Lite, Python 2.7 жана RGB LED MATRIX китепканасына негизделген.

Биринчи кезекте RPIди жаңыртуу жана жогорулатуу

Git орнотуу

~ $ sudo apt-get install

Githubдан RGB LED MATRIX китепканасын жүктөп алыңыз

~ $ git клону

~ $ cd rpi-rgb жетектеген матрица

~ $ sudo жасоо

кара тизме RPI ички үн картасы

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

кара тизме snd_bcm2835

EOF

~ $ sudo update -initramfs -u

Аудио мүмкүнчүлүктөрү керек болсо, тышкы үн картасынын параметрлерин коюңуз:

~ $ sudo нано /usr/share/alsa/alsa.conf

өзгөртүү:

демейки.ctl.card 0

демейки.pcm.card 0

чейин

демейки.ctl.card 1

демейки.pcm.card 1

андан кийин кайра жүктөө.

Эми матрицалык китепкананы орнотуңуз

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

~ $ sudo apt-get update && sudo apt-get python2.7-dev python-жаздык -y орнотуу

~ $ build-python жаса

~ $ sudo make-python түзөт

жана керектүү башка китепканаларды орнотуңуз:

~ $ sudo easy_install пипи

~ $ sudo pip орнотуу

Samplebase.py скриптин ~/rpi-rgb-led-matrix/bindings/python/sample/үй каталогуна көчүрүү

Ачык аба -ырайы картасына API ачкычын бекер каттоону алыңыз

PYthon 2.7 үчүн азыр OWM Python орогучту орнотуңуз (CSPARPAGithub колдонуучусуна рахмат)

~ $ sudo pip орнотуу git+https://github.com/csarpa/[email protected]

Google Календарь APIсиндеги нускамаларды аткарып, Google Календарынын ишеним грамотасын алыңыз

Аудио ойнотуу үчүн Pygame орнотуңуз

~ $ sudo apt-get python-pygame орнотуу

RSS каналдары Feedparser орнотулушу керек

~ $ sudo pip feedparser орнотуу

ORAeng_131.py (англисче версиясы) же ORAita_131.py (италиялык версиясы) үй каталогуна менин сценарийимди көчүрүү

үндөр жана сүрөттөр үчүн папкаларды түзүү:

mkdir dbsounds

mkdir owm

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

69 -сапка OWM грамотасын кошуу (API_key)

аба ырайы үчүн шаарды коюңуз (ал OWM тарабынан камтылганын жана туура аталыш кабыл алынганын текшериңиз) 213, 215 -саптарда

obs = owm.weather_at_place ('Наполи, IT')

fc = owm.three_hours_forecast ('Наполи, IT')

********************************** UPDATE 28/7/2019 ********** ******************

Жаңы Google Календар API көйгөйлөрдү жаратат. Мен кээ бир модулдарды алып салууну чечтим:

~ $ sudo apt-get remove-python-setuptools тазалаңыз

~ $ sudo apt-get autoremove python-pyasn1

иштеп жаткан скриптти сынап көрүңүз

~ $ 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 Календарынын грамоталары тиешелүү API көрсөтмөлөрү катары коюлган деп эсептесек, эң маанилүү параметрлер:

2, 32 мүнөт сайын саат сайын аткарылган календардык окуялардын тизмеси (скрипт линиясын караңыз 65)

аба ырайынын шарттары жана болжолу саат сайын 7, 37де аткарылат (скрипт линиясын караңыз)

акыркы жаңылыктар саат сайын 11де аткарылат (67 -сценарийди караңыз)

акыркы кабар rss каналы. Inside скрипт Instructable RSS коюлган, бирок аны өзгөртүүгө болот. (скрипт линиясын караңыз 366)

Албетте, скрипт кирешелердин календардык окуясына же эскертүү билдирмелерине артыкчылык берет. Кээде функциялар өтпөшү үчүн саат өзгөчөлүктөрүн аткарбайт.

Attiny85 күйгүзүү/өчүрүү таймери Tempo_V1_9_1Mhz_bugfix.ino эскизин жүктөө үчүн программаланышы керек.

Бул эртең мененки 8де түзмөктү күйгүзүүгө жана 23тө өчүрүүгө мүмкүндүк берет. Көбүрөөк маалымат алуу үчүн окуу куралын караңыз.

4 -кадам: Circuit

Circuit
Circuit
Circuit
Circuit
Circuit
Circuit

Район негизинен 3 бөлүмдөн турат

- DS3231 модулу, Attiny85 жана Mosfet тарабынан иштетилген күйгүзүү/өчүрүү таймери

- саат өзгөчөлүктөрүн кол менен башкаруу үчүн которгуч

- RGB LED Matrix маалыматы жана кубаттуулугу, аудио күчөткүч жана Raspberry Pi үчүн кабелдик байланыш бөлүмү

RPIге Attiny85тен Жогорку/ТӨМӨН 5В сигналын окууга мүмкүндүк берүүчү резистивдүү чыңалуу бөлүүчү жөнүндө айтылган эмес

Коммутаторлор RPI пин менен GNDге түздөн -түз ички резисторлорду колдонуу менен туташат

Attiny85 таймери TEMPO аттуу мурунку долбоорумдан келип чыккан. Негизинен, DS3231 Attiny85 үзүлүү пинине LOW сигналын жиберип, аны уйку режиминен ойготот. Ойгонгондо Attiny85 Mosfet транзисторуна жогорку сигналды жөнөтөт, RPI, LED Matrix жана аудио күчөткүч үчүн электр менен камсыздоо схемасын активдештирет (эгер менин акыркы конфигурациям катары реле аркылуу кошумча PSге туташпаса).

RPIди өчүрүү үчүн менин сценарийим RPI 14 -пиндеги санариптик сигналды угат деп ойлонуп көрүңүз, эгер ал жогору болсо, өчүрүү буйругу деп аталат. Андан кийин RPI туура өчүрүү процессин аткарат, андан кийин бир мүнөттөн кийин Attiny85 кайра уйку режимине өтөт жана Мосфет LOW сигналын алат, ал бүт аппаратты өчүрөт. Бул процесс орой, бирок натыйжалуу.

PIR модулу милдеттүү эмес жана RPI GPIO менен түз байланышкан.

Менин конфигурациям төмөнкү RPI GPIO казыктарына туташууну талап кылат:

PIRге 15

14 чыңалуу бөлүүчү аркылуу Attiny85 пин 3кө

21 реле модулуна

2 которуштуруу үчүн (ENTER BUTTON)

3 которуштуруу үчүн (МАМЛЕКЕТТИК ТҮЙМӨНҮ ӨЗГӨРТҮҮ)

Маселелер:

- LED Matrix электр энергиясынан улам ызы -чуу, кичине PS аркылуу аудио күчөткүч үчүн гана чечилет. Кошумча реле күчөткүчтү керектүү учурда гана күйгүзүүгө мүмкүндүк берет. Бул күйгүзүлгөндө/өчүргөндө, ызы -чууга алып келиши мүмкүн.

Бул схема жез табак, 3D принтер, маркер жана темир хлориди менен чегилген.

5 -кадам: чогултуу

Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу

Мен бул долбоорго жалпы 40х50см алкакты 3D басылган бөлүктөрдү жана кээ бир кошумча кошумча каражаттарды ылайыкташтырдым.

Айнек терезе күн пленкасы менен капталган жана пластмассадан жасалган. Led матрицаны ак түстөгү леддерди көрбөө үчүн айнектен болжол менен 1 см сактоо керек. Чакан бурамалар M3 гайкалары жана болттору сыяктуу зарыл. Милдеттүү түрдө кабелдер жана термореактивдүү кабык.

Леддүү матрицалар алкактын арткы панелине бурмаланган.

6 -кадам: Эми?

Ал эми азыр?
Ал эми азыр?
Ал эми азыр?
Ал эми азыр?

Кийинки кадам - температура сенсорун кошуу, bluetooth мүмкүнчүлүктөрүн активдештирүү жана эмне үчүн Raspberry Pi максималдуу потенциалына чейин интернет радио ойноткуч.

Кош болуңуз

Сааттар сынагы
Сааттар сынагы
Сааттар сынагы
Сааттар сынагы

Сааттар конкурсунда экинчи орунду ээледи

Сунушталууда: