Съдържание:

Магическо огледало с новини, време, аларма, таймер и тодолист: 9 стъпки
Магическо огледало с новини, време, аларма, таймер и тодолист: 9 стъпки

Видео: Магическо огледало с новини, време, аларма, таймер и тодолист: 9 стъпки

Видео: Магическо огледало с новини, време, аларма, таймер и тодолист: 9 стъпки
Видео: 26 сентября не смотрите в зеркало. Что нельзя делать в Корнилов день по народным приметам 2024, Юли
Anonim
Магическо огледало с новини, време, аларма, таймер и тодолист
Магическо огледало с новини, време, аларма, таймер и тодолист
Магическо огледало с новини, време, аларма, таймер и тодолист
Магическо огледало с новини, време, аларма, таймер и тодолист

Magic Mirror е специално еднопосочно огледало с дисплей зад него. Дисплеят, който е свързан с Raspberry Pi, показва информация като време, стайна температура, час, дата, todolist и много други. Можете дори да добавите микрофон и да настроите интелигентен асистент. Възможностите са безкрайни.

Този проект може да бъде доста скъп, една от най -скъпите части, от които се нуждаете, разбира се е дисплеят. Ето защо рециклирах дисплей от стар лаптоп. Препоръчвам обаче да получите голям, ярък дисплей с висок контраст, за да направите този проект. Заслужава си.

Огледалото, което направих, има следните характеристики:

  • Новини от избрана от потребителя RSS емисия
  • Метеорологично време
  • Вътрешна температура
  • Алармена система
  • Таймерна система
  • Тодолист
  • Множество потребители: цветът на лентата на лентата и новият източник се променят в зависимост от това кой потребител е избран.

Консумативи

За да създадете това Magic Mirror, ще ви трябва:

  • Еднопосочно огледало
  • дърво
  • Малина Пи
  • Micro SD карта (8+GB)
  • Макет
  • Два 20W високоговорителя
  • MAX9744 20W усилвател за захранване на високоговорителите
  • 1m 30-led WS2801 ledstrip
  • DS18B20 1-жичен температурен сензор
  • HC-SR501 Инфрачервен сензор
  • Ротационен енкодер
  • Монитор или стар дисплей на лаптоп

    Ако използвате стар дисплей за лаптоп, ще трябва да закупите адаптер за лаптоп. Можете да ги получите от AliExpress, Ebay или Amazon. Просто потърсете серийния номер на дисплея

Ще ви трябват и следните малки компоненти:

  • Диод
  • Резистор 4.7k Ohm
  • Резистор от 470 ома
  • Проводи за свързване на сензори към Raspberry Pi

И тези захранвания:

  • 5V 2A за захранване на LED лентата
  • 12V 2A за захранване на дисплея
  • 12V 2A за захранване на усилвателя
  • 5.1V 3A за захранване на Raspberry Pi (използвайте официално захранване RPi)

Стъпка 1: Инсталиране на Raspbian

Дисплеят и всички компоненти зад огледалото се захранват от Raspberry Pi. Ще трябва да инсталирате Raspbian, операционната система по подразбиране на Pi, на SD картата.

  1. Изтеглете Win32 Disk Imager. Потребителите на Linux и MacOS могат да използват нещо като Etcher.
  2. Изтеглете най -новото изображение на Raspbian от уеб сайта на Raspberry Pi. Изберете опцията „Raspbian Buster с десктоп“
  3. Отворете Win32 Disk Imager и запишете файла с изображение на SD картата.

SD картата вече е почти готова. Трябва само да се уверим, че можем да се свържем с Raspberry Pi от разстояние:

  1. Отидете до дяла за зареждане на SD картата, като използвате файловия преглед на вашата система.
  2. Добавете файл, наречен „ssh“без разширение.
  3. Добавете „ip = 169.254.10.1“(без кавички) в края на първия ред на „cmdline.txt“.

Безопасно извадете SD картата от компютъра си, поставете я в Raspberry Pi и я стартирайте.

Стъпка 2: Конфигуриране на WiFi

За да сканирате WiFi мрежи, изпълнете следната команда:

sudo iw dev wlan0 сканиране | grep SSID

Ще видите списъка с всички SSID, към които Raspberry Pi може да се свърже.

Създайте мрежов запис с криптирана парола, като изпълните следната команда и въведете паролата на вашата мрежа:

wpa_passphrase "YOUR_NETWORK_SSID_HERE"

Сега поставете резултата от горната команда в този файл:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Сега рестартирайте Raspberry Pi. Ще бъдете свързани с интернет.

Стъпка 3: Инсталиране и конфигуриране на софтуер

За този проект ще трябва да изтеглите тези пакети на вашия Raspberry Pi:

pip3 инсталирайте mysql-конектор-python колба-socketio колба-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744

sudo apt инсталирате apache2 mariadb-сървър

Добавете този ред в долната част на /boot/config.txt, за да активирате аудио чрез GPIO щифтове 12 (вляво) и 13 (вдясно):

dtoverlay = audremap

Използвайте raspi-config, за да зададете разделителната способност на дисплея си и да активирате i2c, One-wire и SPI. Също така задайте метода за зареждане на „Desktop Autologin“.

В/etc/xdg/lxsession/LXDE-pi/autostart добавете следното:

@xset s off@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html # заредете chromium след зареждане и отворете уебсайта в режим на цял екран

Това отваря браузъра на правилната страница, когато се зарежда LXDE (работна среда на Raspbian). Премахнете или коментирайте реда @xscreensaver, за да деактивирате скрийнсейвъра.

Хранилище на Github

Клонирайте моето хранилище на GitHub и поставете съдържанието на папката Frontend в/var/www/html. По -късно ще ни трябва папка Backend.

Стъпка 4: Базата данни

Базата данни
Базата данни

Това е схемата на базата данни, оптимизирана за 3NF. Той съхранява всички аларми, нови източници, потребители, сензорни данни, звуци и тодолист.

  1. Използвайте MySQL Workbench за достъп до сървъра на базата данни на вашия pi (mariadb)
  2. Създайте база данни с помощта на тази схема и вмъкнете свои собствени данни.
  3. Редактирайте config.py в папката Backend на моето хранилище на GitHub: променете името на базата данни, избраното от вас потребителско име и паролата.
  4. Редактирайте app.py и променете URL адреса на API на OpenWeatherMap на свой собствен. (Създайте свой собствен тук)

Стъпка 5: Изграждане на огледална рамка

Изграждане на огледална рамка
Изграждане на огледална рамка
Изграждане на огледална рамка
Изграждане на огледална рамка
Изграждане на огледална рамка
Изграждане на огледална рамка

Изградих рамката около огледалото, използвайки митриращи фуги с метални ъгли. Дървените дъски, които използвах, са с дебелина 18 мм и широчина 10 см. В изображенията можете да видите точните размери за огледало 45см x 60см. Зад огледалото има цялата електроника, така че се уверете, че дъските ви са достатъчно широки, за да им паснат.

Използвах метални куки за закрепване на високоговорителите към рамката. По този начин те не почиват върху огледалото, намалявайки вибрационното напрежение върху стъклото.

Стъпка 6: Електрониката

Електрониката
Електрониката
Електрониката
Електрониката

Следвайте горните схеми, за да изградите веригата. Използвах лента, за да фиксирам електрониката към огледалото.

Стъпка 7: Поставяне на електрониката в рамката

Поставяне на електрониката в рамката
Поставяне на електрониката в рамката
Поставяне на електрониката в рамката
Поставяне на електрониката в рамката

След като прикрепите високоговорителите към металните кукички отгоре, добавете останалата електроника към огледалото. Поставих и тънка дървена дъска между огледалото и електрониката, така че вместо да залепя електрониката към огледалото, залепих електрониката върху дървената дъска. Дисплеят на лаптопа е бял панел в долната част на огледалото.

Както можете да видите на снимките, включих всички адаптери за захранване във вътрешен контакт, така че само един кабел да напуска рамката. Ето защо имах нужда от достатъчно широки дъски (10 см).

Пробих отвор с ширина 2 см в дясната страна на огледалото, за да може ротационният енкодер да се побере. Това ви позволява лесно да променяте силата на звука (завъртане) или да отхвърляте таймери и аларми (натискане).

Пробих две 8 мм отвори от двете страни на огледалото, за да прокарам кабелите за лентите.

Стъпка 8: Довършителни щрихи

Довършителни щрихи
Довършителни щрихи
Довършителни щрихи
Довършителни щрихи
Довършителни щрихи
Довършителни щрихи

Добавих черна кърпа към задната част на огледалото, за да скрия електрониката. Той също така потъмнява вътрешността на кутията, което прави много по -трудно да се видят проводниците през огледалото. Прикрепих го с велкро, което улеснява достъпа до електрониката, когато е необходимо.

Копирайте Backend папката от моето хранилище на Github на място, което ще запомните.

Добавете системна единица, така че скриптът на python да работи при зареждане:

sudo nano /etc/systemd/system/magicmirror.service

[Мерна единица]

Описание = Услугата за скрипта на python на magicmirror After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = наследяване StandardError = наследяване Рестартиране = винаги Потребител = pi [Инсталиране] WantedBy = многопотребителска цел

Променете „WorkingDirectory“в Backend директория и променете User на вашето собствено потребителско име.

Стъпка 9: Взаимодействие с Webapp

Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp
Взаимодействие с Webapp

Сърфирайте до IP адреса (който е на дисплея). Ще видите първи уебсайт за мобилни устройства със следните функции:

  • График на взаимодействаща температура
  • Време. Когато таймерът работи, ще видите и обратно броене на самото огледало.
  • Алармена система
  • Раздел с настройки, където можете да редактирате потребители, нови източници и силата на звука на високоговорителите.
  • Тодолист. Елементите на задачата ще бъдат показани на огледалото

Mirror.html е страницата, която се показва на Magic Mirror. Добавих пример в изображенията по -горе.

Препоръчано: