Оглавление:

Автоматическая розетка Switch-it с измерением тока в реальном времени: 6 шагов
Автоматическая розетка Switch-it с измерением тока в реальном времени: 6 шагов

Видео: Автоматическая розетка Switch-it с измерением тока в реальном времени: 6 шагов

Видео: Автоматическая розетка Switch-it с измерением тока в реальном времени: 6 шагов
Видео: Когда тренер - твой друг😏 2024, Ноябрь
Anonim
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени
Switch-it, автоматическая розетка с измерением тока в реальном времени

Мне очень нравится автоматизация, возможность контролировать, когда что-то должно произойти. Вот что заставило меня задуматься: самодельная автоматическая розетка. Его можно использовать для планирования, когда нужно включить свет, когда нужно зарядить телефоны или когда нужно включить экран. В дополнение ко всему этому, у вас есть возможность увидеть, какой ток проходит через розетку.

Компоненты, необходимые для этого проекта:

Запасы

Прежде чем мы начнем, это те вещи, которые вам обязательно понадобятся для создания коммутатора Switch-IT, подобного моему. Эти расходные материалы будут стоить от 50 до 100 евро в зависимости от вашего региона и текущих цен.

Аппаратное обеспечение

Электроника

  • Малина пи 4
  • Карта Micro SD емкостью 16 ГБ (или больше)
  • Ардуино Уно
  • Переключатель уровня 5V-3.3V
  • Модуль реле 5V
  • ACS712 20A - токовый модуль
  • Модуль ИК-приемника 1838 37,9 кГц
  • ИК-пульт (я использую Elegoo)
  • общий катод RGB
  • Резисторы 3 * 330 Ом
  • нажать кнопку
  • RFID-RC522
  • ЖК-дисплей 1602A-1
  • Настенная розетка Niko
  • Потенциометр 10 кОм
  • 230 в 5 В - источник питания 7 А

Кабели

  • Кабель USB-B - USB-A
  • Кабель питания USB-C
  • сетевой кабель

Различный

  • Перемычки между мужчинами и женщинами
  • Перемычки между мужчинами и женщинами
  • Оловянный припой
  • Термоусадочная трубка

Части корпуса (ДОПОЛНИТЕЛЬНО)

  • 50 * орехов и жирных шрифтов
  • металлический футляр 40x40x5 см с крышкой
  • двухсторонний скотч
  • Прокладки высотой 6 * 1 см
  • led-держатель
  • Лента на липучке
  • кабельные направляющие

Программное обеспечение

  • balenaEtcher:
  • PuTTy
  • расбийский
  • Код Visual Studio
  • IDE Arduino

Шаг 1. Установите Rasbian

Настроить Rasbian
Настроить Rasbian
Настроить Rasbian
Настроить Rasbian

Прежде всего, мы прошиваем Rasbian на SD-карту. Сделаем это с помощью balenaEtcher.

  1. Открыть balenaEtcher
  2. Выберите изображение Rasbian
  3. Выберите вашу SD-карту
  4. Нажмите Flash и подождите несколько минут, пока он не начнет мигать.

Добавление APIPA в загрузочный каталог: мы будем использовать адрес APIPA для программирования и настройки параметров RPI. Сделать это:

  1. Доступ к загрузочному каталогу на SD-карте
  2. Откройте "cmdline.txt"
  3. Добавьте «169.254.10.1» в конец документа и сохраните его.
  4. Добавьте файл с именем "ssh" в каталог загрузки (НЕ ДАЙТЕ ЭТОМ ФАЙЛУ РАСШИРЕНИЯ)
  5. После этого вы можете извлечь SD-карту из вашего ПК.

Доступ к RPI с помощью PuTTy

Теперь мы можем подключить SD-карту к нашему RPI, подключить RPI к вашему ПК с помощью кабеля Ethernet.

Для подключения к RPI мы будем использовать PuTTy с нашим APIPA-адресом.

  1. Открыть PuTTy
  2. Заполняем наш APIPA-адрес как имя хоста (169.254.10.1)
  3. Убедитесь, что порт 22 и выбран SSH
  4. Теперь вы можете открыть соединение
  5. Имя пользователя по умолчанию: pi
  6. С паролем по умолчанию: малина

настройки raspi-config

Откройте raspi-config, используя:

sudo raspi-config

  • Измените пароль пользователя
  • В параметрах локализации выберите свой часовой пояс
  • Настройте Wi-Fi, используя параметры сети, затем параметр Wi-Fi, где вы должны ввести свой SSID и пароль.

Установить Python 3

В этом проекте мы используем Python, поэтому мы установим значение по умолчанию на Python3 вместо Python2, используя следующие команды

альтернативы обновления --install / usr / bin / python python /usr/bin/python2.7 1

альтернативы обновления --install / usr / bin / python python / usr / bin / python3 2

Пакеты Python

Нам понадобится несколько пакетов, чтобы все работало правильно, в основном пакеты Flask и один для подключения к нашей базе данных. Мы можем установить эти пакеты, используя следующие команды:

pip install Flask

pip install Flask_cors pip install Flask_socketio pip install Python-mysql-connecton

База данных

Далее мы собираемся установить нашу систему управления базами данных (MariaDB), мы сделаем это, используя:

sudo apt установить mariadb-server

Введите «Y» и нажмите Enter, чтобы продолжить. Через несколько секунд процесс установки будет завершен, и MariaDB почти готов к использованию.

Чтобы установить пароль для базы данных, используйте команду:

sudo mysql_secure_installation

Затем нажмите Enter, так как текущий пароль пуст. Затем нажмите «Y», чтобы установить пароль, теперь вы можете ввести любой пароль, который хотите, обязательно запомните его, потому что он нам нужен для правильного соединения между внутренним и внешним интерфейсом.

Теперь нажмите «Y» 3 раза, чтобы: удалить анонимных пользователей, запретить удаленный вход root и удалить тестовую базу данных. Наконец, снова нажмите «Y», чтобы перезагрузить привилегии.

Теперь MariaDB и все необходимые пакеты успешно установлены.

Шаг 2. Получение кода и его настройка

Получение кода и его настройка
Получение кода и его настройка
Получение кода и его настройка
Получение кода и его настройка

Теперь, когда у нас установлены все пакеты, мы можем получить код.

Код доступен на Github, поэтому вы можете клонировать его, используя:

git clone

Это интерфейс

git clone

Это бэкэнд

Установка самой базы данных

Чтобы установить базу данных, перейдите к файлу.sql, который находится в внутренней папке, с помощью следующих команд (обязательно укажите свой собственный путь.

MySQL

создать переключатель базы данных выйти из mysql -u root -p switchit <Your_Path_to_Backend_Repo / switchit.sql

Установка Apache

Теперь, когда у нас есть весь код и настроена база данных, мы можем установить Apache и запустить на нем наш бэкэнд. Мы сделаем это с помощью:

apt-get install apache2 -y

Затем замените файлы в / var / ww / html на файлы в папке из папки внешнего интерфейса.

Если все прошло хорошо, вы сможете подключиться к своему веб-сайту, используя адрес APIPA: 169.254.10.1 в своем браузере.

Шаг 3: Связь с Arduino

Связь Arduino
Связь Arduino

Чтобы прочитать наш датчик тока и наш датчик RFID, мы используем arduino, для этого используйте код arduino, приведенный ниже. Загрузите его с помощью кабеля USB-A - USB-B и программного обеспечения Arduino IDE. После загрузки часть Arduino готова.

Теперь нам нужно найти имя последовательного устройства на PI. Для этого убедитесь, что в /boot/config.txt "enable_uart = 1" установлен правильно. Также убедитесь, что "console = serial0, 115200" удален из cmdline.txt.

Затем проверьте порты, используя

ls -l / dev

Тогда одно из серийных имен должно быть Arduino. Введите это имя в функцию arduinocom в app.py

ser = serial. Serial ('/ dev / ttyS0', 9600)

Делайте это только в том случае, если последовательная связь не работает.

Шаг 4: Подключение Switch-it

Подключение Switch-it
Подключение Switch-it
Подключение Switch-it
Подключение Switch-it

Подключить все довольно просто, хотя вы должны помнить следующее:

  • Будьте осторожны с розеткой, 230 вольт могут быть смертельно опасными.
  • Обязательно используйте преобразователь уровня для связи между RPI и Arduino.
  • Перед пайкой RGB убедитесь, что вы используете красный и зеленый контакты. Проверьте это заранее!
  • ПЕРЕД включением цепи проверьте, нет ли короткого замыкания.

Шаг 5: запуск кода

Теперь все подключено правильно, мы можем запускать нашу программу.

Чтобы он запускался автоматически при запуске, создайте файл, используя:

sudo nano myscript.service

Затем вставьте (убедитесь, что используете свой собственный каталог app.py:

[Unit] Description = Switchit After = network.target [Service] ExecStart = / usr / bin / python3 -u app.py WorkingDirectory = // перейти в каталог app.py // StandardOutput = наследовать StandardError = наследовать Restart = always User = pi [Установить] WantedBy = multi-user.target

Затем нажмите «ctrl + X» и скопируйте его в / etc / systemd / system.

Затем выполните следующую команду для автоматического запуска:

sudo systemctl включить myscript.service

Вы можете найти больше информации об этом на сайте RaspBerry Pi.

Перезагрузитесь и готово

Теперь перезагрузите PI, используя:

sudo reboot -h сейчас

Вот как вы делаете Switch-it!

Спасибо, что продолжили читать, надеюсь, это было полезно. Если у вас есть какие-либо советы или отзывы, не стесняйтесь оставлять комментарии.

Шаг 6: (НЕОБЯЗАТЕЛЬНО) Корпус

(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье
(ДОПОЛНИТЕЛЬНО) Жилье

Вы можете построить жилье полностью по своему вкусу. Я использовал металлический футляр размером 40х40х5 см с крышкой. Так как я использовал металлический, мне пришлось просверлить отверстия и использовать распорки, чтобы снять все с плиты заземления. Я решил использовать центральную точку, где доступны 5 В, 3,3 В и земля. Каждое электрическое соединение припаивается куском термоусадочной трубки сверху. Для управления кабелем я использовал накладки с крепежными ремнями.

Рекомендуемые: