Punxsutawney 5000! Датчик температуры Sensirion
Больше не ждут сурка. Punxsutawney 5000 здесь, чтобы держать вас внутри, пока не придет весна! Позвоните сейчас и получите свой выбор из двух дополнительных сезонных мелодий от ваших любимых артистов!
BOM:
- Сенсорный датчик высокой чувствительности Sensirion STS3x
- Его связанная доска для простоя для легкого подключения
- Паяльная паста
- Тепловая пушка
- Вам также понадобятся:
- Arduino Uno
- Соленоид замкового типа
- Мягкий транзистор (TIP120)
- Резистор 220R
- Два резистора 10K
- Конденсатор 0.1uF
- 1N4001 диод
- Питание 12 В
- И триггер Wav, если вы хотите качаться на звуки сезона!
Зачем?
С приближением весны я считаю, что приматовно полагаться на сургу для предсказаний погоды. Почему бы не получить точный отсчет, который может повернуться против вас и заблокировать вас в течение вечности, вроде как Стэнли Кубрик, «2001: Космическая одиссея»? У меня не было много времени, поэтому я схватил tupperware и все, что было в моих силах, чтобы создать то, что мне нужно для умной двери. К сожалению, я не добавлял на звуковую карту не более двух песен, поэтому надеюсь, что не начну с ума сходить …
Датчик температуры STS3x предоставил стандартный протокол связи I 2 C, поэтому я схватил его и окунул руки в пайку DFN, пока я был на ней. Устанавливая соленоид снаружи двери, я заверяю себя, что я действительно никогда не смогу выбраться. К счастью, я включил пороговое значение, которое можно опустить до желаемой температуры, поэтому вам не нужно зимовать с медведями до весны.

Попытка установить корпус на «дверь»
Паяльная станция DFN
Датчик температуры Sensirion STS3x - довольно маленький компонент с размером 2, 5 мм х 2, 5 мм, поэтому нет необходимости говорить, что его необходимо разместить на доске для использования. Для этого я заказал стандартный переходник SMD, который обеспечивает точный размер штыря для макета. При отсутствии духовки и единственного компонента для монтажа я решил использовать паяльную пасту и стандартный термостат для поверхностного монтажа устройства. Я должен отметить, что это была моя первая пайка DFN, и всего несколькими попытками я смог успешно ее выполнить.
Паяльная паста должна быть разбросана по каждому из наземных терминалов прорыва, а также термопанель в центре. Прокладки очень маленькие, и процесс, вероятно, станет немного неряшливым, но с этими инструментами вы не сможете многое сделать. К счастью, при применении тепла припой естественным образом становится гладким и аккуратным и должен принимать каждый отдельный терминал. Поместите компонент в центр прорыва. Нанесите тепло до тех пор, пока не увидите, что припой станет расплавленным.

Паяльная паста, пинцет, прорези, сенсор, палец
Когда вы закончите, возьмите мультиметр и запустите тест непрерывности, чтобы убедиться, что ни один из терминалов не закорочен вместе. Если некоторые из них, попробуйте снова разогреть компонент и сбросить его с помощью пинцета. Когда компонент установлен, подождите, пока он остынет, а затем переверните его, чтобы начать размещать вырезные контакты на плате.
Нижняя часть печатной платы имеет большие клеммные колодки. В комплект входят прорези 90º, а также прокладка PCB, которая используется для правильного перемещения штырей друг от друга. Отделите необходимое количество контактов для каждой стороны и поместите ноги через прокладку печатной платы. Затем выровняйте колено 90º с клеммными колодками и припоем, используя традиционный паяльник и пайку из канифоли. Тогда, бум, у вас есть рекламный щит! Давайте приступим к тестированию!

Нижняя часть контактов и клеммных колодок

Дно прорыва PCB
Как добраться
Существует несколько способов подключения сенсора STS3X - вы можете просмотреть таблицу данных для вашего конкретного использования. С моей конфигурацией я решил использовать «Single Shot Mode» для простоты. Следует отметить, что «через соответствующую проводку выводов ADDR можно выбрать адрес I 2 C» (техническое описание). Подключив мой контакт ADDR к земле, адрес станет «0x4A». Если бы я вместо этого решил подключить штырь к логическому высокому сигналу, тогда адрес стал бы «0x4B».
Имея это в виду, мой дизайн схемы был смоделирован после примера, найденного в техническом описании. Вы заметите, что ALERT и nRESET оставлены плавающими. SDA и SCL подключаются к контактам A4 и A5 Arduino Uno, которые могут использоваться для связи через I 2 C с датчиком. Для этого нам нужно будет включить библиотеку Arduino Wire в наш эскиз, который можно найти ниже.
Когда вы уверены, что все правильно подключено, попробуйте запустить простой эскиз «I 2 C Scanner», который будет обнаруживать любые подключенные устройства I 2 C и отображать их адрес. Если адрес, который последовательный монитор читает, соответствует вашим датчикам, вы успешно подключили его!

Моя цепь датчика температуры
Соленоидный контур довольно прост, и если вы не отстаете от этой серии, вы можете сделать это, закрыв глаза (пожалуйста, не надо!). Ранее мы использовали схему реле для управления сильноточными нагрузками, но с правильным транзистором мы можем избавиться от реле. Мой соленоид здесь потребляет средний ток 500 мА. Используя транзистор TIP120, который может обрабатывать нагрузку более 500 мА, мы можем безопасно использовать транзистор в качестве переключателя для подключения питания к соленоиду.
Эта схема будет управляться логическим высоким сигналом, посылаемым цифровым выводом 2 всякий раз, когда значение температуры датчика нарушает наш порог. Что касается музыки, я включил дополнительные записи Digital Write, которые посылают логический сигнал 5V для управления Wav Trigger. Если вам нужна дополнительная информация об этом, ознакомьтесь с этим замечательным учебником!

Соленоидный контур
Получение температуры
Конкретные подробности для связи I 2 C можно найти в техническом описании и варьироваться для разных целей. Как было указано, я использовал режим Single Shot и смог выполнить простую связь с использованием эскиза ниже (см. «Void gettemp () {» для конкретного протокола).
Сначала мы начинаем передачу с датчика и отправляем ему два байта. Когда датчик принимает эти байты, он выплескивает значение, которое может быть прочитано, а затем преобразовано Arduino.
Для этого мы используем «Wire.requestFrom» и запрашиваем три байта от датчика. Первые два байта указывают температуру, а третья - контрольная сумма, которая используется для проверки правильности номеров. Чтобы преобразовать эти числа в стандарт температуры, мы должны использовать уравнение, включенное в техническое описание. S (t) обозначает выходной сигнал необработанного датчика для температуры (техническое описание).

Уравнение
Теперь откройте свой серийный монитор, и вы увидите точное показание температуры! В первой части цикла я включил простой оператор If / Else для управления соленоидом из показаний датчика. Если вы хотите изменить температурный порог, просто отрегулируйте число внутри этого утверждения!
Теперь у вас должны быть готовые компоненты для создания собственной умной двери! Найдите ближайшую дверь и прикрепите ее все! Не забудьте включить killswitch, чтобы вы не заперлись внутри навсегда!
Punxsutawney 5000 Код
Попробуйте этот проект сами! Получить спецификацию.
Другие инновации MIT-i:
- Кошка-Аппут! (сервопривод, управляемый Arduino для производителей)
- Лазерная Tripwire-сигнализация на Launchpad! (система безопасности Launchpad)
- Пульт дистанционного управления Arduino UNIVERSAL! (ИК-приемник для всего вашего дома)
- Кастрюля-кастрюля! (контролируемая запахом система управления запахом)
- Контроллер светофора! (урок заявления о задержке Arduino)
- Танцующий тостер-призрачный тостер! (урок по соленоидам и индуктивным нагрузкам)
- Игрушка для обнаружения предметов малины Pi! (урок RPIO GPIO)
- Замбромби! (робот-избегающий объект)
- Аналоговый сигнал праздничного сезона! (система защиты подарков)
- IoT Beaglebone Beagle Treat Dispenser-Feeder! (плохое оправдание автоматизации)