Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Постомат для ящиков с пивом

    Постомат для ящиков с пивом





    Идея этой самоделки - сделать шкаф, доступ к которому будет иметь только тот, кто введет определенный код. По сути, это похоже на постомат. Мастер делал его специально для ящиков с пивом. Т.е. поставщик загружает вечером ящики с пивом, а утром, заказчик забирает их. Причем заказчиками могут быть разные люди, а открыть шкаф можно только введя номер заказа и одноразовый код на сенсорном экране.

    Управлять шкафчиком можно также через локальный веб-сайт на Raspberry Pi. Через него можно управлять заказами и устанавливать код шкафчика. Устройство также обнаруживает, если кто-то проходит перед шкафчиком, и отслеживает температуру в шкафчике.

    Инструменты и материалы:
    -Raspberry Pi 4;
    -Корпус Raspberry Pi;
    -SD-карта 16 ГБ;
    -Зарядное устройство USB-C;
    -Набор резисторов;
    -МОП-транзистор IRF3205 - 2 шт;
    -Диод (1N4007) - 2 шт;
    -Шнур переменного тока с вилкой;
    -40-контактный разъем GPIO;
    -Перемычки;
    -2-контактный винтовой зажим - 5 шт;
    -3-контактный винтовой зажим;
    -Макетная плата;
    -3,5-дюймовый TFT-дисплей (NX4832K035);
    -Электромагнитный замок 12 В - 2 шт;
    -Однопроводной датчик температуры;
    -Детектор движения (AM312);
    -ЖК-дисплей (LCD1602) (опционально);
    -Пиломатериалы;
    -Навесы;
    -Шесть пластиковых ножек для мебели;
    -Крепеж;
    -Паяльник;
    -Циркулярный станок;
    -Электролобзик;
    -Молоток;

    Шаг первый: схема
    Электромонтаж производится по схеме представленной ниже.




    Так же можно скачать файл со схемой и эскизом.
    Breadboard.pdf
    Schema.pdf

    Шаг второй: настройка Raspberry Pi
    Перед сборкой нужно настроить Raspberry Pi. Чтобы использовать Raspberry Pi, нужно будет выполнить следующие шаги:
    1. Загрузка образа.
    Образ содержит следующие элементы:
    Apache
    MariaDB
    Код для проекта
    Пользовательские настройки
    Образ можно загрузить из OneDrive .
    2. Запись образ на SD карту
    Для записи образа на SD-карту мастер использует win32diskimager.
    3. Подключение через ssh
    Как только карта будет записана, нужно вставить ее в Raspberry Pi и включить устройство. Также нужно подключить сетевой кабель между компьютером и Raspberry Pi.
    Теперь можно использовать клиент putty для подключения к Raspberry Pi через SSH со следующими настройками:
    IP: 192.168.168.168
    Порт: 22
    Тип подключения: SSH

    4. Вход
    Чтобы войти в Raspberry Pi, используется имя пользователя student и пароль W8w00rd .
    5. Подключение к Wi-Fi
    После входа в систему Pi нужно подключиться к локальной сети Wi-Fi. Для этого шага потребуются данные для входа в пользовательскую сеть Wi-Fi, которые нуно прописать в следующих строках кода:
    > sudo -i
    > wpa_passphrase "your_SSID" "your_wifi-password" >> /etc/wpa_supplicant/wpa_supplicant.conf
    > wpa_cli -i wlan0
    > reconfigure wlan0

    6. Обновление Raspberry Pi.
    Теперь Raspberry Pi подключен к Интернету и нужно обновить его с помощью следующих команд:
    > sudo update
    > sudo upgrade
    > sudo reboot


    Шаг третий: настройка базы данных
    Чтобы сохранить данные истории датчиков и информацию о шкафчиках и пользователях, нужно сохранить эти данные в базе данных MariaDB. Эта база данных уже установлена в пользовательском образе с диаграммой EER, показанной на изображении ниже.
    В базе три основных таблицы
    1. Таблица истории
    В этой таблице будут храниться данные истории датчиков или исполнительных механизмов. У каждого элемента истории есть отметка времени, устройства (это датчик или исполнительный механизм), значение и действие.

    2. Шкафчик
    В этой таблице будут храниться информацию о каждом шкафчике. Это id устройства (замка), реквизиты заказа, код и статус шкафчика.

    3. Таблица пользователей
    В последней таблице будут храниться учетные записи для входа на сайт. У каждого пользователя есть уникальное имя пользователя, хешированный пароль и случайная строка, используемая при хешировании пароля.

    Для входа в базу данных мастер будет использовать MySQL Workbench. Это клиент MySQL для визуализации базы данных. Если приложение установлено, можно настроить новое соединение со следующими данными:
    Connection method: Standard (TCP/IP) over SSH
    SSH Hostname: ip of the raspberry pi
    SSH Username: student
    SSH Password: W8w00rd
    Username database: student
    Password database: W8w00rd

    Примечание: если был изменен пароль сервера Raspberry Pi или MariaDB, то нужно будет сделать это также здесь.

    Шаг четвертый: бэкенд*
    *Бэкенд (англ. back-end) — программно-аппаратная часть сервиса. Бэкенд отвечает за осуществление функционирования внутренней части веб-сайта.
    Код для бэкэнда можно скачать на авторском Github, и он уже включен в пользовательский образ. Эта папка содержит классы для датчиков и исполнительных механизмов в каталоге / helpers. В этом каталоге также можно найти класс для отправки электронных писем через SMTP. В репозитории можно найти классы для связи с базой данных. А файл app.py - это главный скрипт бэкэнда.

    Конфигурация бэкэнда:
    В файле с именем config.py, можно настроить параметры базы данных и SMTP-сервера. Настройки базы данных уже установлены. Для отправки электронного письма, если температура слишком высокая или слишком низкая, нужно настроить параметры SMTP. Для изменения адреса электронной почты или интервала между предупреждениями, можно установить эти параметры в главном приложении app.py .
    Кроме того, в файле app.py необходимо изменить два секретных ключа. По умолчанию это "Secret!". Но чтобы обезопасить свой проект, нужно будет изменить их.

    Добавление пользователя:
    Чтобы защитить веб-приложение, мастер будет использовать токены JWT для защиты сайта в сети. Если войти на веб-сервер с учетной записью пользователя, то получим токен с датой истечения срока действия. Чтобы добавить пользователя в свой проект, нужно установить имя пользователя и пароль в файле addUser.py и запустить его. Для удаления учетной записи можно удалить ее из базы данных.
    Запуск app.py при загрузке:
    Для запуска app.py при загрузке потребуется создать сервис. Создаем файл с именем mijnproject.service:
    [Unit]
    Description=ProjectOne Project
    After=network.target
    
    [Service]
    ExecStart=/usr/bin/python3 -u /home/student/WUK-afhaalautomaat/Code/Backend/app.py
    WorkingDirectory=/home/student/WUK-afhaalautomaat/Code/Backend<br>StandardOutput=inherit
    StandardError=inherit
    Restart=always
    User=student
    
    [Install]
    WantedBy=multi-user.target

    Дальше копируем этот файл в системный каталог:
    > sudo cp mijnproject.service /etc/systemd/system/mijnproject.service

    Для запуска службы:
    > sudo systemctl stop mijnproject.service

    Чтобы остановить службу:
    > sudo systemctl stop mijnproject.service

    Чтобы разрешить запуск службы при загрузке:
    > sudo systemctl enable mijnproject.service

    Чтобы отключить запуск службы при загрузке:
    > sudo systemctl disable mijnproject.service


    Шаг пятый: интерфейс
    Код для бэкэнда можно найти на авторском Github , и он уже включен в настраиваемый образ. Эта папка содержит HTML-страницы веб-сайта, стили CSS и сценарии для взаимодействия между веб-интерфейсом и серверной частью.
    Интерфейс будет работать на сервере apache на Raspberry Pi, поэтому IP-адрес веб-сайта будет IP-адресом Raspberry Pi.
    Чтобы изменить каталог внешнего интерфейса сервера Apache, необходимо отредактировать /etc/apache2/apache2.conf .
    > sudo nano /etc/apache2/sites-available/000-default.conf

    Теперь нужно изменить DocumentRoot на новую папку внешнего интерфейса. Дальше нужно только сохранить файл и перезапустить сервер.
    > sudo service apache2 restart


    Постомат для ящиков с пивом

    Шаг шестой: дисплей Nextion
    Для разработки и программирования сенсорного дисплея будут использоваться Nextion Editor и Adobe XD. Окончательную версию можно найти на Github мастера.

    Дизайн страниц:
    Для разработки новой страницы используется Adobe XD. В этом приложении можно легко создать страницу и экспортировать ее в изображение. Это изображение можно установить в качестве фона страницы в редакторе Nextion.

    Редактор Nextion:
    Используя редактор Nextion, можно создавать страницы, размещать интерактивные элементы и программировать их. Более подробную информацию о редакторе и командах можно найти в документации.

    Копирование проект на дисплей:
    1. Экспортируем проект в файл .tft.
    Нужно перейти в file > TFT FILE OUTPUT и экспортировать файл на пустую SD-карту.
    2. Копируем файл на дисплей.
    Выключаем дисплей. Устанавливаем SD-карту и включаем дисплей. Теперь файл .tft будет скопирован на дисплей.

    Шаг седьмой: шкаф
    Когда электронная часть собрана и протестирована, можно приступить к изготовлению шкафчика. Для этого шкафчика вы можете использовать готовый шкаф для хранения или сделать его, как это сделал мастер. Чертежи шкафа можно скачать ниже.
    final.skp
    После сборки шкафа можно устанавливать электронику. Первое, что нужно сделать, это установить замки. Замок можно установить на раме в центре шкафчика, а металлическую деталь - на дверь. После их установки нужно проверить замки и при необходимости отрегулировать их. Провода замков нужно будет удлинить.

    Для установки дисплея нужно выпилить лобзиком отверстие в передней части шкафчика.
    Для установки датчика движения нужно просверлить отверстие диаметром 10 мм, оно должно идеально подходить.
    Остальная электроника размещается в верхнем отсеке.

    Все готово.


    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
    Подборки: Raspberry Pi Дисплей

    Прибор для проверки не электролитических, высоковольтных конденсаторов

    Беспроводной сигнализатор с режимом глубокого сна

    0
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    0
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 0.0 из 10 (голосов: 0 / История оценок)

    Добавить комментарий

    2 комментария
    Гость Андрей

    Эээ... вот гляжу я на данное сооружение из досок на маленьких гвоздиках и сразу хочется рядом открыть маленький ларечек по сдаче в аренду универсальных ключей типа фомка! 

    Гость Степан

    Так и хочется вскрикнуть....Как же далеки они от народа!

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

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

    Все комментарии