
Оглавление:
- Шаг 1: электрическая схема
- Шаг 2: Настройте Raspberry Pi
- Шаг 3. Измените настройки Raspbian
- Шаг 4: Считайте данные датчика
- Шаг 5: База данных MySQL
- Шаг 6. Установите веб-сервер Apache
- Шаг 7. Загрузите код Python в свой Pi
- Шаг 8: Жилье
- Шаг 9: Поместите корпус в холодильник
- Шаг 10: перенаправление портов
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04


У вас когда-нибудь была проблема, что вы действительно не знали, что осталось в вашем холодильнике? Или вы когда-нибудь вынимали что-то из холодильника и забыли его закрыть? Что ж, я определенно сделал. Вот почему я создал этот проект.
Этот SmartFridge уведомляет вас звуковым сигналом, если вы оставили дверь открытой, и запоминает, какие продукты находятся в вашем холодильнике и их количество.
Запасы:
Что вам понадобится для этого проекта:
- Raspberry Pi 3 модель B
- Raspberry PI T-cobbler
- Модуль считывания / сканера штрих-кода
- Даллас (водонепроницаемый)
- ЖК-дисплей для Raspberry Pi
- Провода
- LDR
- MCP3008
- Спикер
все эти детали будут стоить около 146 евро.
Шаг 1: электрическая схема



Сначала вам нужно собрать схему, я предоставил для этого схему Fritzing. Если вы будете использовать мой код, который я предоставил на этапе чтения данных датчика. Важно, чтобы вы подключили датчики и светодиод к одним и тем же контактам GPIO. также просто измените контакты в коде.
Не забудьте подключить сканер штрих-кода к 1 из USB-портов пи
Шаг 2: Настройте Raspberry Pi



- Загрузите образ raspbian с этого веб-сайта:
- Выберите Raspbian Stretch с рабочим столом и рекомендуемым программным обеспечением.
- Установите Balena Etcher:
- Подключите тележку micro SD к компьютеру
- Откройте Etcher и выберите файл iso, который вы только что скачали с raspberrypi.org.
- Выберите корзину micro SD
- Щелкните Flash! & подождите минуту
Шаг 3. Измените настройки Raspbian

При загрузке в raspbian вы можете изменить некоторые настройки:
- Сначала подключитесь к вашей сети Wi-Fi
- Откройте окно терминала и введите: sudo raspi-config
- Перейдите в параметры загрузки> Рабочий стол / CLIC Выберите консоль
- Нажмите Ввод
- Перейти к параметрам интерфейса Включите последовательный и 1-проводный
- Нажмите Finish и дайте Pi перезагрузиться
После перезагрузки введите в консоли:
- sudo apt-get update
- sudo apt-get upgrade
- у
Шаг 4: Считайте данные датчика

Вы будете использовать язык программирования Python для чтения данных с датчиков и отправки данных на ЖК-дисплей.
Вы можете найти весь мой код на github:
Вы увидите, что я использую разные классы для чтения данных с моих датчиков.
- Сканер штрих-кода подключается к Pi через USB и использует последовательный интерфейс. Стандартно сканер настроен как клавиатура. Поэтому нам придется изменить это: Используйте это руководство и отсканируйте эти коды: - Эмуляция COM-порта USB - Нет (страница 12 руководства) - EnableEAN-8 * (страница 24) - EnableEAN-13 * (страница 25)
- Аналоговые значения из LDR преобразуются с помощью MCP3008, а затем преобразуются из значения в процент.
Если вы хотите использовать более 1 цикла while True, вам нужно будет импортировать потоки (это уже сделано в предоставленном коде)
Шаг 5: База данных MySQL

Мы будем хранить наши продукты в холодильнике, а температуру - в нашей базе данных. Для управления базой данных я использую mySQLworkbench. В mysqlworkbench вам необходимо установить соединение с вашим raspberry pi. Но для этого нам нужно установить mariaDB на наш raspberry pi.
Вот как вы это делаете:
sudo apt-get install mariadb-server
Затем настройте mariaDB с помощью:
sudo mysql_secure_installation Введите текущий пароль для root (введите, если нет): root Изменить пароль root? [Y / n] Y Новый пароль: root123 Удалить анонимных пользователей? [Y / n] y Запретить удаленный вход в систему root? [Y / n] y Удалить тестовую базу данных и получить к ней доступ? [Д / Н] Д Обновить таблицы привилегий сейчас? [Д / Н] г
Подключитесь с помощью mysqlworkbench к серверу mariaDB с пользователем root и паролем, который вы выбрали выше на IP-адресе вашего pi.
Вы можете найти свой IP-адрес, набрав в терминале следующее:
ip a
Посмотрите на IP-адрес под wlan0, он, вероятно, будет выглядеть примерно как 192.168. X. X
Шаг 6. Установите веб-сервер Apache

Теперь мы продолжим и установим веб-сервер apcahe, набрав в терминале следующее:
sudo apt-get install apache2
перезагрузка sudo
Теперь скопируйте файлы из каталога ниже в папку / var / www / html через SFTP, используя такую программу, как Cyberduck или Filezilla, по IP-адресу из предыдущего шага.
Шаг 7. Загрузите код Python в свой Pi

Также, используя cyberduck или filezilla, вам нужно будет загрузить код python на свой пи в / home / user_name Файлы предоставлены ниже или на моем github
Затем запустите сценарий, используя эту команду:
python / home / имя_пользователя /back/app.py
Проверьте, все ли работает, набрав IP-адрес вашего raspberry pi в браузере. Вы должны увидеть веб-страницу с температурой и пустой таблицей.
Теперь ваш умный холодильник должен работать безупречно, и мы можем сделать его "красивым".
Примечание: измените user_name выше всегда на имя пользователя, которого вы создали на своем пи, или просто используйте пользователя пи
Шаг 8: Жилье

Корпус, который я сделал, представляет собой пластиковую коробку, которую вы можете закрыть зажимами, но вы можете сделать это как хотите. Только не забудьте убедиться, что датчик освещенности действительно видит свет.
- спрей краска коробка белая
- Просверлите 2 отверстия диаметром 8 мм сзади, одно для датчика температуры и одно для сканера штрих-кода.
- Просверлите 1 отверстие в левой части коробки для кабеля питания вашего пианино.
- Сделайте прямоугольное отверстие в передней части коробки для ЖК-дисплея (не используйте нож, я уже пробовал и порезался)
- Используйте двусторонний скотч, чтобы убедиться, что макетная плата остается на месте.
Шаг 9: Поместите корпус в холодильник

Поместите коробку в холодильник
- Просверлите отверстие в нижней части холодильника для удлинителя.
- Заполните отверстие пенопластом.
- Используйте силикон, чтобы заполнить оставшуюся часть зазора.
- Разровняйте ложкой с мылом на обратной стороне (чтобы пальцы не липли).
- Используйте кабельную транспортировку, чтобы скрыть удлинительный кабель.
Теперь вы можете включить Raspberry Pi в холодильник
- Используйте одну из пластиковых полок от дверцы холодильника, чтобы прикрепить сканер штрих-кода к
- Убедитесь, что он не двигается с помощью двустороннего скотча.
- Используйте кабельные грузоперевозки, чтобы спрятать кабель
Шаг 10: перенаправление портов

Если вы хотите использовать веб-сайт, чтобы проверить, что находится внутри вашего холодильника вне дома, вам необходимо перенаправить свои порты в маршрутизатор.
Вы можете сделать это, перейдя к IP-адресу вашего маршрутизатора в браузере, найдите страницу переадресации портов, установите правило для IP-адреса вашего raspberry pi: открытый порт 80–80 и 5000–5000 с протоколом TCP и сохраните настройки.
Примечание. Чтобы узнать IP-адрес вашего маршрутизатора в Windows, введите cmd в строке поиска, откройте команду ant type: ipconfig. Шлюзом по умолчанию будет IP вашего роутера.
На Mac вы переходите в меню Apple / Системные настройки / Сеть / расширенный / TCPIP, ваш IP-адрес маршрутизатора будет маршрутизатором
Рекомендуемые:
Дизайн игры в Flick за 5 шагов: 5 шагов

Дизайн игры в Flick за 5 шагов: Flick - это действительно простой способ создания игры, особенно чего-то вроде головоломки, визуального романа или приключенческой игры
Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)

Счетчик шагов - Микро: Бит: Этот проект будет счетчиком шагов. Мы будем использовать датчик акселерометра, встроенный в Micro: Bit, для измерения наших шагов. Каждый раз, когда Micro: Bit трясется, мы добавляем 2 к счетчику и отображаем его на экране
Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов

Играйте в Doom на своем IPod за 5 простых шагов!: Пошаговое руководство по двойной загрузке Rockbox на iPod, чтобы играть в Doom и десятки других игр. Это действительно легко сделать, но многие люди до сих пор удивляются, когда видят, как я играю дум на своем iPod, и путаются с инструкциями
Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов

Arduino Uno Fish Feeder за 6 простых и дешевых шагов !: Итак, для этого проекта может потребоваться немного предыстории. Людям с домашними рыбками, вероятно, приходилось сталкиваться с той же проблемой, что и мне: отпуск и забывчивость. Я постоянно забывала покормить рыбу и всегда старалась это сделать, пока она не упала
Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов

Акустическая левитация с Arduino Uno Пошаговая инструкция (8 шагов): ультразвуковые преобразователи звука L298N Женский адаптер питания постоянного тока с штыревым контактом постоянного тока Arduino UNOBreadboard Как это работает: сначала вы загружаете код в Arduino Uno (это микроконтроллер, оснащенный цифровым и аналоговые порты для преобразования кода (C ++)