Створіть світлодіодний індикатор з Raspberry Pi (для електронної пошти, погоди чи чогось іншого)

Oct 30, 2025
Апаратне забезпечення
НЕЗАГОТОВЛЕНИЙ ЗМІСТ

Raspberry Pi - це приємна компактна платформа, до якої можна підключити індикатор для різноманітних проектів - сповіщення про погоду, нові електронні листи тощо. Прочитайте далі, коли ми покажемо, як підключити світлодіодний модуль до вашого Pi та налаштувати деякі основні сповіщення .

Чому я хочу це зробити?

Тому що це весело. На відміну від багатьох наших навчальних посібників, де ми вгорі включаємо невелику розмивку, в якій окреслюється, яку саме користь Ви отримаєте від проекту, розмиття в цьому випадку є досить коротким, оскільки вигода просто отримує задоволення.

Raspberry Pi - ідеальний пристрій, з яким можна пограти, поекспериментувати з електронікою та навчитися деякому програмуванню. Ніхто потреби Наприклад, індикатор навколишнього дощу на їх кухні, але побудова такого - це весела вправа та чудове нагадування про те, щоб взяти з собою парасольку у потенційно штормові дні.

Що мені потрібно?

Щоб продовжити підручник, вам знадобиться кілька речей. По-перше, ми припускаємо, що ви вже дотримувались нашого попереднього підручника: Посібник HTG з початку роботи з Raspberry Pi (і, таким чином, розкрити основи встановлення Raspbian на нашому Raspberry Pi).

Якщо ви хочете зробити цей проект з обмеженим бюджетом, ми можемо впевнено сказати вам, що найновіша модель Raspberry Pi є значним надмірним для роботи, і ми радимо вам здути пил зі старої Raspberry Pi, яку вам засунули у шафі або забрати дешевий вживаний на eBay чи тому подібному. З точки зору бюджету, довга зубна модель Raspberry Pi 1, модель A або модель B, відірвана від eBay за 10-15 доларів, ідеально підходить для цього проекту, ніж придбання абсолютно нового сучасного покоління Pi за $ 35.

На додаток до функціонального блоку Pi, на якому встановлено Raspbian, вам знадобляться такі речі:

  • 1 Модуль LedBorg (~ 5,00 доларів США при доставці з Великобританії до США 4 доларів, працює з усіма моделями Raspberry Pi).
  • 1 Прозорий чохол Raspberry Pi, сумісний з вашою конкретною моделлю Pi як цей корпус Raspberry Pi 1 Model B. .

Примітка: Прозорий / матовий чохол Pi є зовсім необов’язковим, але якщо ви зараз використовуєте непрозорий футляр, тоді ваш світлодіодний індикатор буде захований всередині. Вам потрібно буде вирізати отвір у вашому корпусі, щоб вийшло світло, або використовувати подовжувач GPIO з набором для прориву - наприклад цей від Adafruit Industries —Прив’язати LedBorg до вашого Raspberry Pi. Хоча використання проривного кабелю додає близько 8 доларів на витрати проекту, він надає більше можливостей для налаштування кінцевого продукту, завдяки чому ви можете легше розмістити світлодіод всередині речей або під тим, що ви хочете підсвітити.

Встановлення LedBorg

Хоча ви могли б напевно створити собі повністю світлодіодний індикатор (і запит у пошуковій системі виявить багато людей, які це зробили), організація Piborg виробляє такий компактний та недорогий світлодіодний модуль LedBorg, що ми не могли ' Не втримаємось від використання його як основи для нашого проекту світлодіодних індикаторів Raspberry Pi.

Встановлення модуля є швидким, оскільки він призначений для прямого розміщення на штифтах GPIO на Pi. Спочатку вимкніть Pi і відкрийте корпус.

Найважливіша частина процесу встановлення полягає в тому, що ви орієнтуєте модуль так, щоб піктограма LedBorg була найближчою до модуля RCA на платі Raspberry Pi (і, отже, край LedBorg знаходився на одному рівні з краями дошки Pi з звисаючим частина LedBorg, що висить над дошкою Pi, а не з краю). Дивіться фотографію вище.

Поки у вас відкрита плата Pi, зараз буде чудовий час, щоб покрити вбудовані світлодіодні індикатори (поруч із портами USB), особливо якщо ви використовуєте прозорий футляр. Ви не хочете, щоб читати індикатор LedBorg було заплутаним, оскільки індикатори живлення та мережі настільки яскраві.

Ми покрили нашу шаром білої стрічки. Це затьмарило їх досить, щоб ми все ще могли посилатися на них, але вони були настільки тьмянішими, ніж LedBorg, і це вже не відволікало.

Після того, як ви встановили LedBorg і, за бажанням, покрили світлодіодні індикатори Pi електричною стрічкою, пора закрити корпус. Завантажте свій Pi до того, як перейти до наступного етапу підручника.

Встановлення програмного забезпечення LedBorg

PiBorg пропонує чудовий програмний пакет для LedBorg, що включає як контролер графічного інтерфейсу, так і драйвери для доступу до LedBorg із командного рядка.

Перш ніж ми почнемо, вам потрібно переконатися, що ви берете правильний пакет для вашої версії Rasbian та номер редакції вашої плати Raspberry Pi.

Якщо ваша плата Raspberry Pi не має отворів для кріплення, це Ревізія 1. Якщо ваша Raspberry Pi має кріпильні отвори (розташовані через порти USB та між портом живлення та HDMI), це Ревізія 2. Вам також потрібно знати версію ядра вашої інсталяції Rasbian. Відкрийте термінал і введіть таку команду для перевірки:

uname -r

Отримавши номер версії та номер ядра, ви можете відвідайте розділ "Пакети" тут щоб захопити посилання для вашого пакету. У нашому випадку ми використовуємо плату версії 1 із ядром 3.6.11, щоб взяти файл raspbian-2013-02-09-rev1.zip.

Для того, щоб встановити всі смаколики, нам потрібно відкрити термінал на Pi. а потім введіть наступні команди, щоб встановити пакет LedBorg.

Примітка: Ви повинні замінити URL-адресу в третій команді URL-адресою пакета для вашої комбінації плати / ядра.

mkdir ~ / ledborg-setup
cd ~ / ledborg-setup
wget -O setup.zip http://www.piborg.org/downloads/ledborg/raspbian-2013-02-09-rev1.zip
розпакуйте setup.zip
chmod + x install.sh
./install.sh

На цьому етапі у вас є оболонка графічного інтерфейсу для драйверів LedBorg та встановлених самих драйверів. На робочому столі Raspbian ви побачите піктограму обгортки графічного інтерфейсу:

Вперед і натисніть на піктограму LedBorg, щоб запустити обгортку графічного інтерфейсу. Інтерфейс вибору кольору буде сприймати вас так:

Зараз ідеальний час, щоб переконатися, що ваш модуль функціонує. Виберіть будь-який колір, крім чорного, щоб спробувати його. Ми збираємося перевірити це, вибравши кілька кольорів:

Виглядає добре! Це яскравий і матовий пластик корпусу, який ми замовили для проекту, пропонує помірну дифузію. Якщо ви хочете більше пограти зі світлодіодним модулем, перш ніж рухатися далі, натисніть Демо-режим:

У демонстраційному режимі ви можете прокручувати всі кольори з різною швидкістю, перевіряти високий / низький вихід, а в іншому випадку прокладати світлодіодний модуль через темпи.

Тут, у розділі Демо-режим, ви також можете перетворити свій LedBorg на перший із багатьох показників. Вибравши ЦП у розділі Кольори, світлодіод почне змінюватися із зеленого на жовтий на червоний, щоб вказати навантаження на ARM-процесор Raspberry Pi. Ми радимо змінити швидкість на повільну, поки ви працюєте. Швидке оновлення світлодіода занадто швидко і робить індикатор процесора відволікаючим, а не корисним

На додаток до використання графічного інтерфейсу для вибору кольорів, ви можете вибирати кольори з терміналу, використовуючи значення RGB. Відкрийте термінал і введіть таку команду, щоб вимкнути світлодіод:

echo "000"> / dev / ledborg

Спосіб, яким LedBorg обробляє значення RGB, полягає в тому, що 0 означає, що канал вимкнений, 1 означає, що канал має половину потужності, а 2 означає, що канал має повну потужність. Так, наприклад, 001 встановив би червоний канал на 0%, зелений канал на 0%, а синій канал на 50% потужності.

Змініть значення на 002, і вихід світлодіода залишатиметься синім, але стане яскравішим, оскільки синій канал тепер має 100% вихід. Змініть значення на 202, а червоний і синій на повній потужності поєднуються, щоб отримати пурпуровий колір.

Тепер, коли ми знаємо, як маніпулювати світлодіодом вручну, давайте розглянемо використання скриптів, щоб перетворити наш світлодіод із простого світла на фактичний індикатор.

Налаштування LedBorg як індикатора дощу

У цій частині уроку ми будемо поєднувати кілька речей, щоб перетворити наш світлодіодний модуль LedBorg на індикатор дощу на основі прогнозу погоди для нашого місцезнаходження. Ми використовуватимемо скрипт Python для виклику API погоди, який, у свою чергу, буде зчитувати ймовірність дощу протягом дня, а потім перемкне світлодіод з вимкненого на яскраво-синій, щоб вказати прогнозований дощ.

По-перше, нам потрібно отримати ключ доступу до API для Weather Underground. Для особистого користування та невеликих проектів розвитку API безкоштовний. Відвідайте сторінку реєстрації Weather API тут і підпишіться на ключ API.

Отримавши ключ API, відвідайте Weather Underground та знайдіть місто, за яким хочете стежити. У нашому випадку ми збираємося спостерігати за Сан-Франсіско, штат Каліфорнія. URL-адреса сторінки прогнозу Сан-Франциско:

http://www.wunderground.com/US/CA/San_Francisco.html

Важливою частиною для наших цілей є остання частина URL-адреси: /CA/San_Francisco.html. Ми будемо використовувати це для редагування прогнозованої URL-адреси інструмента API. Базова URL-адреса:

http://api.wunderground.com/api/ТЕХНІЧНИЙ КЛЮЧ API API / forecast / q / STATE / CITY.json

Ви можете сформувати прогноз для будь-якого міста США, ввівши свій ключ API, двобуквенний код штату та назву міста за URL-адресою, яку ви витягли з результатів пошуку Weather Underground.

Після того, як ви вставите URL-адресу API із введеним ключем API і штатом / містом, ви зможете відредагувати наступний сценарій Python, створивши новий текстовий документ на своєму Pi за допомогою Leafpad і вставивши в нього наступний код:

з urllib2 імпорт urlopen
імпортувати JSON

req = urlopen ('http://api.wunderground.com/api/YUR API KEY / forecast / q / STATE / CITY.json ')
parsed_json = json.load (req)
pop = int (проаналізований_json['forecast']['txt_forecast']['forecastday'][0]['pop'])

# Далі наведено значення налагодження.
# Видаліть хеш і змініть
# ціле число до 0-100 для перевірки
# відповідь світлодіода.

# поп = 0

print "Поточна ймовірність опадів - {}.". формат (поп)

# За замовчуванням налаштування включається світлодіод
# для будь-якого шансу на дощ вище 20%. Ви можете налаштувати
# значення в "if pop> 20:" як завгодно.

якщо поп> 20:
LedBorg = відкрито ('/ dev / ledborg', 'w')
LedBorg.write ('002')
від LedBorg
print ('Дощ!')
ще:
LedBorg = відкрито ('/ dev / ledborg', 'w')
LedBorg.write ('000')
від LedBorg
print ('Без дощу!')

Збережіть файл як wunderground.py у каталозі / home / pi /. Відкрийте термінал і введіть таку команду:

python wunderground.py

Якщо ви правильно ввели ключ API та коди штатів / міст, він повинен відповісти таким чином:

Якщо прогнозовано кількість опадів для вашої області, результат LedBorg повинен виглядати так:

Тепер чекати дощового дня, щоб правильно протестувати сценарій, було б нудно. Якщо сьогодні у вашій місцевості немає шансів на дощ, і ви хочете, щоб світлодіод загорівся, відредагуйте сценарій wunderground.py і замініть значення пропуску «pop = pop» у рядку 13 на значення більше 20, наприклад 60 що наш прогноз повернувся. Просто не забудьте змінити рядок назад на “pop = pop”, коли закінчите.

Останній крок - це налаштування завдання cron для автоматичного запуску сценарію, який ми щойно зберегли, через регулярний інтервал, щоб підтримувати світлодіодний індикатор постійним. Оскільки це завдання необхідне як для цього сценарію, так і для наступного індикатора електронної пошти, ми розглянемо налаштування завдання cron після того, як ми показали вам, як налаштувати інший сценарій.

Налаштування LedBorg як індикатора Gmail

Кому не подобається виправлення дофаміну, яке з’являється при перегляді нової електронної пошти у вхідних? У цій частині підручника ми покажемо вам, як використовувати LedBorg як новий індикатор Gmail. Як і минулого разу, ми збираємось поєднати зовнішній вхід (у цьому випадку канал Atom замість API) та простий скрипт для керування нашим світлодіодом.

Нам потрібно трохи розширити функціональність нашої установки Python, встановивши FeedParser , інструмент читання стрічок RSS / Atom Python. Відкрийте термінал і введіть таку команду:

sudo easy_install feedparser

Після завершення встановлення ми можемо приступити до створення нашого скрипта перевірки Gmail. Знову ж, використовуючи Leafpad, вставте наступний текст у редактор. Змініть ім’я користувача та пароль, щоб вони відповідали імені користувача та паролю облікового запису Gmail, який ви хочете перевірити.

імпорт feedparser

# Введіть своє ім’я користувача Gmail
# та пароль. Не включайте
# частина @ gmail.com
# Ваше ім'я користувача.

username = "ім'я користувача"
password = "пароль"

пошта = int (feedparser.parse ("https: //" + ім'я користувача + ":" + пароль + "@ mail.google.com/gmail/feed/atom")["feed"]["fullcount"])

# Далі наведено значення налагодження.
# Видаліть хеш і змініть
# ціле число до 0 або 1 для перевірки
# відповідь світлодіода.

# пошта = 0

якщо пошта> 0:
LedBorg = відкрито ('/ dev / ledborg', 'w')
LedBorg.write ('020')
від LedBorg
print ('Пошта!')
ще:
LedBorg = відкрито ('/ dev / ledborg', 'w')
LedBorg.write ('000')
від LedBorg
print ('Без пошти!')

Збережіть сценарій як gmailcheck.py. Відкрийте термінал і введіть таку команду:

python gmailcheck.py

Якщо у вас є електронна пошта, яка сидить у вашій скриньці Gmail, світлодіод загориться зеленим, і ви отримаєте таку відповідь:

Якщо у вашій поштовій скриньці Gmail є пошта, ваш LedBorg буде виглядати так:

Подібно до сценарію перевірки дощу, ми включили значення налагодження. Якщо у вас немає нового електронного листа, ви можете або надіслати собі електронне повідомлення, щоб збільшити кількість вхідних повідомлень до 1, або відредагувати хеш коментаря та змінити рядок налагодження на “mail = 1”, щоб перевірити сценарій. Не забудьте повернути рядок, коли закінчите тестування.

Перейдіть до наступного розділу підручника, щоб налаштувати скрипт Gmail для роботи за розкладом.

Налаштування завдання Cron для запуску вашого сценарію

Тепер, коли у нас є два сценарії для гри, нам потрібно налаштувати завдання cron, щоб запускати їх протягом дня, щоб підтримувати світлодіодний індикатор постійним.

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

echo “000”> / dev / ledborg

Поки ви все ще знаходитесь у командному рядку, ви можете відкрити редактор cron. Якщо ви ніколи раніше не налаштовували роботу cron, ми настійно рекомендуємо ознайомтесь з нашим посібником з його використання тут . Тим не менш, ми проведемо вас із встановленням основного графіка прямо тут.

Для типу терміналу:

sudo crontab –e

Це відкриє таблицю Raspbian cron у текстовому редакторі Nano. За допомогою клавіш зі стрілками прокрутіть вниз до самого низу. Тут ми збираємося налаштувати повторюване завдання cron для наших скриптів Python.

Якщо ви хочете налаштувати сценарій дощу, введіть наступний рядок у таблицю cron:

* / 5 * * * * python /home/pi/wunderground.py

Натисніть CTRL + X, щоб вийти; виберіть так, щоб зберегти та перезаписати існуючу таблицю cron. Значення, яке ми ввели в таблиці cron “* / 5 * * * *”, встановлює сценарій для запуску кожні 5 хвилин назавжди.

Кожні 5 хвилин - це чудовий проміжок часу для сценарію, який перевіряє прогнозований дощ - ви навіть можете стверджувати, що це занадто агресивно, - але якщо ви намагаєтеся тримати вгорі електронну пошту, це занадто довгий проміжок часу для сповіщення . Якщо ви налаштовуєте розклад для сценарію сповіщення Gmail, введіть наступний рядок у таблиці cron:

* / 1 * * * * python /home/pi/wunderground.py

Цей запис щохвилини запускає сценарій gmailcheck.py для набагато швидшого сповіщення про оновлення.


Це все! Ви можете експериментувати зі своїми власними сценаріями Python, виймаючи оператори if / else з наших і випробовуючи їх із абсолютно новими змінними. Якщо ви можете знайти джерело вхідних даних, ви можете перетворити його на змінну у своєму сценарії Python - середні показники на фондовому ринку, кількість пилку, згадки в Twitter, якщо для них є API, ви можете перетворити їх на навколишній світлодіодний індикатор.

Нарешті, я хочу подякувати усім великим ресурсам, якими я працював над цим проектом. Минуло трохи більше десяти років з тих пір, як я активно писав програми, і потрібно було кілька стукотів, щоб вивести пил і іржу. Автори на / r / LearnPython допоміг мені розібратися з висновком API для Weather Underground, вивчаючи, як Майкл працював у Mitch Tech займався стрічкою Gmail Atom полегшив розбір для LedBorg і вивчення модулів навчання Python в академії Code це був чудовий спосіб підібрати основний синтаксис і структуру мови, якою я ніколи раніше не користувався.

Raspberry Pi Email Tutorial (Sending & Receiving With SendGrid)

Raspberry Pi Tutorial - Gmail LED Email Notifier

#255 Node-Red, InfluxDB, And Grafana Tutorial On A Raspberry Pi

Raspberry Pi Project: Online Weather Data Log With MySQL And PHP With Sense Hat.

Raspberry Pi: How To Turn On A Light With Your Phone

Raspberry Pi IoT Tutorial Series Part-3

Make A Raspberry Pi Gmail Notification Light

Top 5 Raspberry Pi DIY Projects Of All Time

Raspberry Pi DHT11 DHT22 Temperature And Humidity Sensor

5 Arduino Project Ideas That Could Be Used As Raspberry Pi Project Ideas


Апаратне забезпечення - Найпопулярніші статті

Чому ІР-бластер все ще корисний на телефонах у 2020 році

Апаратне забезпечення Aug 9, 2025

klss / Shutterstock Існує ймовірність (хоча і постійно зменшується), що ваш телефон пост�..


Як налаштувати статичний DHCP, щоб IP-адреса вашого комп’ютера не змінювалася

Апаратне забезпечення Jul 12, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ DHCP спрощує налаштування мережевого доступу для вашої домашньої мережі, а пе..


Як перевірити та зарядити пульт дистанційного керування Apple TV

Апаратне забезпечення Nov 16, 2024

Новий Apple TV 2015 року випуску має абсолютно новий пульт з новою системою акумуляторів та новим способ..


Що таке Miracast і чому я повинен піклуватися?

Апаратне забезпечення Nov 4, 2024

Miracast - це стандарт бездротового дисплея, призначений для віддзеркалення екрана смартфона, планшет�..


Яка різниця між 1080p та 1080i?

Апаратне забезпечення Jan 9, 2025

Дисплеї HDTV та мультимедійний вміст HD маркуються позначеннями 1080p та 1080i, але що саме означає це позн..


Чи впливає орієнтація жорсткого диска на термін його служби?

Апаратне забезпечення Nov 8, 2024

Багато випадків дозволяють встановлювати накопичувачі у вертикальній або горизонтальній конфігурац..


Машина для туману “зроби сам” додає атмосферу дешевого бруду до вашої вечірки на Хелловін

Апаратне забезпечення Oct 28, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Туманні машини додають приємного моторошного відчуття святкуванню Хелло..


Огляди HTG: Бездротовий ретранслятор Diamond WR300N

Апаратне забезпечення Aug 25, 2025

НЕЗАГОТОВЛЕНИЙ ЗМІСТ Цього тижня ми отримали огляд товару! WR300N від Diamond - надзвичайно компактний б..


Категорії