Друкарня від WE.UA

Створення простого веб-інтерфейсу для управління смарт-освітленням

Автор: Stephan Bechert. Опубліковано на Unsplash

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

Крок 1: Підготовка обладнання

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

Крок 2: Налаштування Raspberry Pi

Встановіть необхідне програмне забезпечення:

sudo apt-get update sudo apt-get install python3-pip sudo pip3 install flask

Flask — це мікрофреймворк для Python, який дозволяє створювати веб-додатки.

Крок 3: Створення веб-додатку

Створіть файл app.py та додайте наступний код для запуску веб-сервера:

from flask import Flask, render_template, request
app = Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html')

@app.route('/switch', methods=['POST'])
def switch():
    # Тут буде логіка управління освітленням
    return "Освітлення змінено"

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)

Крок 4: Створення веб-інтерфейсу

Створіть файл templates/index.html для веб-інтерфейсу:

<!DOCTYPE html>
<html>
<head>
    <title>Управління освітленням</title>
</head>
<body>
    <h1>Управління освітленням</h1>
    <form action="/switch" method="post">
        <input type="submit" value="Вмикання/Вимикання">
    </form>
</body>
</html>

Крок 5: Логіка управління освітленням

Для управління реле використовуйте GPIO піни Raspberry Pi. Додайте логіку у функцію switch у файлі app.py:

import RPi.GPIO as GPIO LIGHT_PIN = 18 GPIO.setmode(GPIO.BCM) GPIO.setup(LIGHT_PIN, GPIO.OUT) @app.route('/switch', methods=['POST']) def switch(): current_state = GPIO.input(LIGHT_PIN) GPIO.output(LIGHT_PIN, not current_state) return "Освітлення змінено"

Не забудьте імпортувати RPi.GPIO та налаштувати пін, до якого підключено реле.

Крок 6: Запуск веб-додатку

Запустіть ваш веб-додаток, виконавши команду:

python3 app.py

Тепер ви можете відкрити веб-інтерфейс у браузері, перейшовши за адресою http://<IP_адреса_вашого_Raspberry_Pi>:8080, та керувати освітленням у вашому домі.

Висновок

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

Статті про вітчизняний бізнес та цікавих людей:

  • CRM keyCRM: зручне рішення для продажів, комунікацій і керування командою

    Успіх компанії залежить від того, наскільки швидко вона здатна опрацьовувати вхідні запити. Коли дані про клієнтів розпорошені між різними месенджерами, виникає хаос. CRM keyCRM пропонує вихід із цієї ситуації, об’єднуючи всі робочі процеси в єдиному зручному інтерфейсі.

    Теми цього довгочиту:

    Crm
  • Різниця між UX і UI, яку варто зрозуміти ще до першого заняття

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

    Теми цього довгочиту:

    Ui-ux
  • Логіка змін: як SEO оптимізація прибирає бар’єри до зростання

    Багато компаній приходять у SEO з очікуванням швидкого ривка, але дійсний ефект починається там, де сайт перестають латати точково. Тому в центрі роботи стоїть не окрема дія, а послідовні зміни. Оптимізація сайту має прибирати системні перешкоди, а не маскувати їх новими текстами

    Теми цього довгочиту:

    Seo
  • Музичний футуризм: неймовірні інструменти XXI століття

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

    Теми цього довгочиту:

    Музичні Інструменти
  • Стіл – всьому голова? Так, якщо його правильно підібрати

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

    Теми цього довгочиту:

    Столи
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Volodymyr Zhyliaev
Volodymyr Zhyliaev@digitalowltop

91Довгочити
13.4KПерегляди
32Підписники
Підтримати
На Друкарні з 7 травня 2023

Більше від автора

  • Ubuntu Server – czym jest i jakie są podstawowe komendy

    Ubuntu Server to jeden z najczęściej wybieranych systemów operacyjnych do obsługi serwerów VPS, aplikacji webowych, baz danych oraz środowisk DevOps.

    Теми цього довгочиту:

    Впс
  • CSS: Everything You Need to Know

    Cascading Style Sheets (CSS) are the backbone of modern web design. They transform plain HTML into engaging, responsive, and accessible experiences.

    Теми цього довгочиту:

    Css

Це також може зацікавити:

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити: