
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05




Этот проект представляет собой ремикс моего детектора уровня банки Coke Machine (https://www.instructables.com/id/Coke-Machine-Can-Level-Detector/) с новыми датчиками и добавлением голосового звука!
После того, как я сделал свой первый детектор уровня, я добавил пьезозуммер, чтобы слышать обратную связь для слабовидящих. Это сработало, но вроде как… Что означает каждый конкретный звук? Это требовало объяснений, поэтому решение было не слишком практичным. Я оставил это и ушел заниматься другими делами.
Недавно я сделал несколько турелей для порталов, в которых использовался MP3-плеер DFPlayer Mini (или MP3-TF-16P). Этот проект сработал довольно хорошо, и однажды, когда я доставал напиток из своей кофемашины с колой, меня осенило: я мог бы использовать чип DFPlayer с динамиком и, наконец, получить решение, которое я изначально хотел помочь слабовидящим! Он будет делать то, что делал изначально, но теперь ГОВОРИТ на уровне машины!
Я также хотел использовать датчики VL53LOX, чтобы изменить ситуацию. Я знал, что они использовали шину I2C, и все они использовали один и тот же адрес, поэтому было дополнительной проблемой использовать 2 из них вместе с ЖК-экраном на одной шине.
Итак, теперь эта версия обеспечивает такой же графический дисплей при приближении к машине, но когда вы подойдете немного ближе, она также покажет вам, сколько банок осталось! Я настроил его таким образом, чтобы говорить на относительно коротком расстоянии, чтобы избежать неприятных поездок, когда я работаю с машиной.
На мой взгляд, это дешевая платформа для предоставления звуковой информации с различных датчиков. В коробке и на Nano гораздо больше места для других сенсорных входов. Теперь осталось только придумать другие приложения!
Шаг 1: напечатанные детали

Физическая конструкция коробки практически такая же, как и у предыдущей конструкции, но мне пришлось переставить все вокруг, чтобы включить чип DFPlayer и 4-сантиметровый динамик, который использовался в проекте Turret.
Компоненты печатаются так же, как и в моей предыдущей сборке, с красно-белой лицевой панелью, напечатанной с использованием веб-сайта многоцветной печати Prusa: (https://www.prusaprinters.org/color-print/). Я до сих пор не знаю, будет ли это включение gcode работать на других принтерах без многоцветных надстроек, но результат мне нравится!
Размеры такие же, как и в предыдущей сборке, что означает, что вы можете поменять местами напечатанные детали (лицевую панель и держатель датчика) и использовать любые комбинации датчиков, которые вам нравятся: HC-SR04 или VL53LOX. Разница сводится к коду!
Показанные здесь верх и низ работают вместе, поэтому они не взаимозаменяемы со старым дизайном.
Шаг 2: Электроника

Вот список внутренних частей этой сборки:
- Ардуино Нано
- Kuman 0,96-дюймовый 4-контактный желтый синий IIC OLED (SSD 1306 или аналогичный).
- VL53LOX (кол-во: 2 для этой версии)
- стандартный разъем 5,5 мм x 2,1 мм для монтажа на панель гнезда постоянного тока (см. изображение)
- Динамик 4 см, 4 Ом, 3 Вт (номер детали CLT1026 или EK1794 на Amazon)
- DFPlayer Mini MP3-плеер (или MP3-TF-16P)
- Немного проводки
Штекерный разъем 2.1 не является обязательным, так как устройство имеет такую проводку, что его можно запитать через Nano.
Учитывая потребляемую мощность динамика и других компонентов, теперь необходим хороший источник питания по сравнению с предыдущей конструкцией.
Шаг 3: Подключение




Большинство соединений спаяны вместе непосредственно проводом. Области, которые требуют нескольких подключений, - это источники питания 5 В и подключения GND к датчикам и устройствам от Nano. То же самое относится к шине I2C к датчикам и ЖК-экрану. Я спаял их вместе и использовал термоусадочную пленку, чтобы сохранить порядок и предотвратить короткое замыкание.
Мне нравится предварительно подключать отдельные компоненты, а затем устанавливать соединения между ними и Nano. В конце концов, я сделал некоторые подключения с помощью вставных разъемов, например, с ЖК-экраном. Это означает, что я могу легко заменить их, если они перегорят, но, поскольку дисплей включается только тогда, когда кто-то идет впереди, это должно длиться долго.
Шаг 4: Механическая сборка



Это устройство предназначено для сборки без застежек. Маленькие перья или булавки на верхней крышке тонкие и могут сломаться. Я разработал его таким образом, чтобы вы могли высверлить их и при желании использовать 2 мм или аналогичные винты. Я добавляю крышку только после того, как, наконец, закончу, и мне не пришлось прибегать к винтам (хотя я сломал несколько фиксирующих штифтов), поскольку фиксирующие крючки выполняют свою работу.
Верхняя крышка с крючками сконструирована таким образом, что вы слегка сжимаете нижние стороны, где крючки входят в зацепление с нижней пластиной, чтобы освободить их и снять крышку. Чтобы упростить задачу, вы можете немного просверлить отверстия там, где входят штифты. Это упростит сборку / разборку.
Nano и DFPlayer довольно легко встанут на место. Разъем питания проталкивается, и гайка фиксирует его на месте. Динамик просто вставляется в подставку для печати. VL53LOX запрессовывается в крышку и в отдельный держатель датчика. Когда на них давят, они не двигаются. (не забывайте, в какую сторону должен указывать датчик, и не забудьте удалить небольшую пластиковую пленку с датчика перед установкой!) То же самое верно и для ЖК-экрана, но может потребоваться некоторое уточнение, если размеры печатной платы от поставщика немного отличаются от тех, что я использую. (Я пробовал некоторые, которые имеют немного другие размеры.) Я мог бы добавить версию, в которой будут использоваться 2 винта и ремешок, как я сделал с моим главным контроллером турели.
Шаг 5: Код
Код начался с моей первой сборки, но затем был изменен. Я использую те же библиотеки для ЖК-экрана, но мне нужно было включить библиотеки VL53LOX и DFPlayer. Изначально я пробовал использовать библиотеку Adafruit для датчиков VL53LOX, но они израсходовали ВСЮ память на Nano, прежде чем я смог закончить свой код! Мне пришлось отказаться от этой библиотеки и перейти на то, что потребляет меньше памяти. В результате используемые библиотеки намного компактнее и оставляют место для большего количества датчиков! Намного лучший результат.
Я попытался разбить код и прокомментировать его там, где это имеет смысл, так что надеюсь, это должно быть довольно очевидно относительно того, что там происходит. Как обычно, в этом проекте потребовалось небольшое исследование, чтобы выяснить, как заставить библиотеки делать то, что я хочу. При поиске ответов я обнаружил, что результаты поиска - это в основном проблемы, с которыми сталкиваются люди, а не примеры решений их проблем. Надеюсь, вы найдете эти примеры полезными. Я включил некоторые в качестве комментариев в код.
Звуки, которые я использую, прикреплены в виде zip-файла. Это просто записи, на которых я говорю: «У вас…» [количество банок] «осталось». Файлы используются так же, как и мои предыдущие проекты, с файлами, сохраненными как 0001.mp3, 0002.mp3 и т. Д. В этом случае 0001 - это просто чтение числа "один", которое соответствует числу, прочитанному вслух.
Я начал искать звуковые файлы хорошего качества, в которых кто-то читает от 1 до 30, но те, которые я нашел, находились за платным доступом и тому подобным, поэтому я просто взял старый микрофон, подключил его и записал свой подсчет. Затем я вырезал и сохранил их как mp3 с помощью Audacity. Довольно просто сделать простое решение. Самое интересное в том, чтобы включить другие записи или звуки! Удачи здесь!
Шаг 6: Заключительные мысли
Это был довольно быстрый редизайн, так как он возник в результате проекта Portal Turret, и я многое сохранил от первоначального дизайна. Изначально предназначенная для отслеживания моих запасов напитков, я надеюсь, что эту простую коробку можно будет использовать для других целей, где требуется сенсорная информация, отображаемая или озвученная.
Дайте мне знать, если вы придумаете другие варианты использования этой простой платформы!
Рекомендуемые:
Детектор уровня воды: 7 шагов

Детектор уровня воды: ультразвуковой датчик работает по тем же принципам, что и радар. Ультразвуковой датчик может преобразовывать электрическую энергию в акустические волны и наоборот. Знаменитый ультразвуковой датчик HC SR04 генерирует ультразвуковые волны с частотой 40 кГц. Типа
Детектор уровня света LDR: открытие и закрытие глаз: 6 шагов

Детектор уровня освещенности LDR: Открывающиеся и закрывающиеся глаза: Всем привет, я надеюсь, что это руководство вам по душе. Любые сомнения, комментарии или исправления будут приняты. Эта схема была реализована как модуль управления для предоставления информации о том, сколько света находится в окружающей среде, чтобы
Детектор уровня коксовой машины: 5 шагов (с изображениями)

Coke Machine Can Level Detector: версия 2.5 - упорядочены детали, напечатанные на 3D-принтере, и обновлен штекерный соединитель до обычного блока печатной платы. Rev 2 - ультразвуковая "кнопка"; заменяет ручную кнопку. Нажимать кнопку - это старомодно, особенно когда я уже использую ультразвуковой датчик
Детектор уровня воды: 6 шагов

Детектор уровня воды:
Вертикальный травильный резервуар для коксовой бутылки: 12 шагов

Резервуар для вертикального травления бутылок из-под кокса: Не уверены, подходит ли вам вертикальное травление? Попробуйте! Сделайте небольшой герметичный резервуар для травления размером с пинту примерно за 10 минут из двух вещей, которые у вас уже есть: футляра для DVD и бутылки объемом 2 л