Друкарня від 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 є чудовим проектом для початківців, який демонструє основи взаємодії між веб-технологіями та фізичним світом. Це не лише надає вам практичні навички розробки, але й відкриває шлях для подальших експериментів з автоматизацією дому.

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

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

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

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

  • 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

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

  • Авто переведення часу для Arduino на C++

    Сьогодні я зіткнувся з проблемою що коли переводять годинник мої ардуіно пристрої починають показувати неточний час і я знайшов рішення

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

    Arduino
  • Чому micro:bit краще за Arduino для початкової школи

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

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

    Освіта
  • Чим небезпечні розумні пристрої для дому та як вберегтися від загроз?

    Розумні пристрої для дому значно полегшують наше життя, але не завжди роблять його безпечнішим. Чим небезпечні “розумні” пристрої, які вони мають уразливості та яку загрозу несуть для безпеки ваших конфіденційних даних — читайте у статті.

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

    Кібербезпека

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

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

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

  • Авто переведення часу для Arduino на C++

    Сьогодні я зіткнувся з проблемою що коли переводять годинник мої ардуіно пристрої починають показувати неточний час і я знайшов рішення

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

    Arduino
  • Чому micro:bit краще за Arduino для початкової школи

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

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

    Освіта
  • Чим небезпечні розумні пристрої для дому та як вберегтися від загроз?

    Розумні пристрої для дому значно полегшують наше життя, але не завжди роблять його безпечнішим. Чим небезпечні “розумні” пристрої, які вони мають уразливості та яку загрозу несуть для безпеки ваших конфіденційних даних — читайте у статті.

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

    Кібербезпека