Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
В этом уроке я собираюсь объяснить, как сделать умный чемодан с помощью Raspberry Pi.
Когда вы закончите, вы сможете отслеживать свой чемодан по всему миру и взвешивать его без весов.
Давайте начнем!
Шаг 1. Необходимые компоненты
- Raspberry Pi (конечно же, xd)
- Соединительные кабели
- Чемодан
- Powerbank для питания вашего Pi
- Adafruit Ultimate GPS breakout + антенна
- Усилитель тензодатчика HX711
- Комбинатор датчика нагрузки
- Четыре тензодатчика по 50 кг
- Две (деревянных) доски, которые не гнутся слишком легко (например, фанера). Убедитесь, что доски имеют одинаковые размеры и помещаются в ваш чемодан.
- ЖК-дисплей (необязательно, я буду использовать его для отображения IP моего Raspberry Pi, чтобы пользователь мог знать, на какой веб-сайт ему нужно перейти, чтобы увидеть информацию о чемодане)
Шаг 2: сборка чемодана
На картинке вы можете увидеть, как вам нужно соединить все разные части. Если у вас возникли проблемы, выполните следующие действия:
Чтобы подключить GPS:
- VIN -> Raspberry Pi контакт 1 (3,3 В)
- GND -> Raspberry Pi контакт 6 (GND)
- TX -> Raspberry Pi контакт 10 (RXD)
- RX -> Raspberry Pi контакт 8 (TXD)
Для подключения LCD-дисплея: (не рисовал по схеме Fritzing, потому что будет грязно..)
- VSS -> Raspberry Pi контакт 6 (GND)
- VDD -> Raspberry Pi контакт 2 (5 В)
- V0 -> потенциометр (регулирует контрастность)
- RS -> Raspberry Pi контакт 18 (GPIO24)
- RW -> Raspberry Pi контакт 6 (GND)
- E -> Raspberry Pi контакт 32 (GPIO25)
- D0 -> Raspberry Pi контакт 42 (GPIO12)
- D1 -> контакт 46 Raspberry Pi (GPIO16)
- D2 -> контакт 48 Raspberry Pi (GPIO20)
- D3 -> Raspberry Pi контакт 50 (GPIO21)
- D4 -> контакт 11 Raspberry Pi (GPIO17)
- D5 -> Raspberry Pi контакт 13 (GPIO27)
- D6 -> Raspberry Pi контакт 15 (GPIO22)
- D7 -> Raspberry Pi контакт 33 (GPIO13)
- A -> Raspberry Pi контакт 2 (5 В)
- K -> Raspberry Pi контакт 6 (GND)
Чтобы подключить датчики веса:
-
В середине платы комбинатора вы можете увидеть четыре столбца с тремя подключениями (-, + и C). У одного тензодатчика ровно три провода (белый, красный и черный). Подключите каждый датчик нагрузки к колонке следующим образом:
- - -> Черный
- + -> Белый
- C -> Красный
-
После этого подключите плату комбинатора к усилителю тензодатчика HX711 следующим образом:
- Красный -> E +
- Черный -> E-
- Зеленый -> A-
- Белый -> А
-
Наконец, подключите HX711 к Raspberry Pi:
- VCC -> Raspberry Pi контакт 17 (3,3 В)
- GND -> Raspberry Pi контакт 9 (GND)
- DT -> Raspberry Pi контакт 29 (GPIO5)
- SCK -> Raspberry Pi контакт 31 (GPIO6)
(B- и B + на HX711 и желтый на плате комбинатора остаются пустыми)
Чтобы прикрепить тензодатчики к доскам:
- Во-первых, убедитесь, что датчики веса расположены на плате равномерно.
- Затем для каждого датчика веса сделайте маленькое прямоугольное отверстие, чтобы «крышка» датчика веса не касалась земли. Если бы это было так, вы бы получили отрицательные значения.
- Установите тензодатчики на свои места и прикрепите их к плате винтами.
- Затем прикрепите плату комбинатора к верхней части платы так, чтобы штыри находились «за пределами» поверхности платы.
-
Закрепите провода от тензодатчиков лентой к плате.
- После этого сделайте маленькие кубики из дерева и прикрепите их к средней балке каждого тензодатчика с помощью клея. Вес будет измеряться путем складывания средней перекладины.
- Наконец, прикрепите вторую доску к маленьким кубикам с помощью клея.
Шаг 3. Помещение компонентов в чемодан
Итак, как только вы все подключили, самое время положить все в чемодан.
Весы: единственное, что должно быть на одном месте независимо от того, какие весы, поэтому убедитесь, что вы очень хорошо прикрепили их к нижней части чемодана с помощью сильного клея или винтов.
GPS-модуль: Чтобы получить лучший GPS-сигнал, я проделал в чемодане небольшое отверстие, чтобы верхняя часть антенны могла быть прикреплена к внешней стороне чемодана.
ЖК-экран: Чтобы поместить ЖК-дисплей в чемодан, если хотите, вы проделываете прямоугольное отверстие того же размера, что и ЖК-экран. Затем прикрепите ЖК-экран прочным клеем.
Другие части: вы можете поместить другие части, такие как Raspberry Pi и powerbank, на дно или по бокам чемодана с помощью клея. Вы можете делать это, как хотите.
Таким образом, просто убедитесь, что все компоненты хорошо подключены к чемодану, чтобы ничто не могло выйти из-под контроля.
Шаг 4: Настройка Raspberry Pi
Для начала нам нужно выполнить некоторую настройку, поэтому просто введите следующие команды:
Сначала установите несколько пакетов:
sudo apt updatesudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
-
Затем создайте виртуальный
среда
:
python3 -m pip install --upgrade pip setuptools wheel virtualenvmkdir project1 && cd project1python3 -m venv --system-site-packages envsource env / bin / activatepython -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask- MySQL-коннектор-python passlib
- Затем клонируйте этот проект, например, в PyCharm (в проекте 4 папки)
- Убедитесь, что интерпретатор проекта - это Python на вашем Raspberry Pi.
- Чтобы настроить базу данных:
cd project1
sudo mariadb <sql / db_init.sql
- Установите соединение с вашей базой данных в PyCharm
- Наконец, щелкните правой кнопкой мыши файл «lugapp.sql» в папке «sql» и выберите «запустить». Это поместит таблицы в базу данных на вашем Pi.
Далее, единственное, что вам нужно изменить, это файлы конфигурации в папке «CONF». Прочтите каждый файл в этой папке и при необходимости внесите изменения. (например, рабочий путь, пользователь…).
Заключительные шаги:
Скопируйте файлы «project1-flask.service» и «project1-lcd.service» в / etc / systemd / system, используя следующую команду:
sudo cp conf / project1 - *. служба / etc / systemd / system /
Затем перезагрузите:
sudo systemctl демон-перезагрузка
Наконец, запустите две службы:
sudo systemctl включить проект1- *
sudo systemctl запустить проект1- *