Оглавление:

Сервотермометр: 6 шагов
Сервотермометр: 6 шагов

Видео: Сервотермометр: 6 шагов

Видео: Сервотермометр: 6 шагов
Видео: Сервотермометр Arduino 2024, Ноябрь
Anonim
Сервотермометр
Сервотермометр
Сервотермометр
Сервотермометр

Это аналоговый индикатор температуры, созданный на основе цифрового датчика DS18B20, мини-сервопривода и электроники на базе модуля esp-12f.

Он имеет следующие особенности.

  • Автономный блок с электроникой, сервоприводом и аккумулятором
  • Хорошая точность и прецизионность с использованием цифрового датчика ds18b20
  • Перезаряжаемый LIPO со встроенным зарядным устройством
  • Очень низкий ток покоя (<20 мкА) для длительного срока службы батареи
  • Сервопривод снова включается только на короткое время, что обеспечивает хорошее время автономной работы.
  • Обычно модуль находится в спящем режиме между обновлениями температуры, но может быть переведен в не спящий режим для проверки и настройки.
  • Загрузка данных конфигурации и проверка сервопривода через веб-интерфейс
  • Минимальная, максимальная температура, градусы Цельсия, Фаренгейта и интервал обновления настраиваются
  • Мониторинг батареи
  • Программное обеспечение можно обновлять через веб-интерфейс.
  • Бюджетный

Шаг 1. Необходимые компоненты и инструменты

Необходимые компоненты и инструменты
Необходимые компоненты и инструменты
Необходимые компоненты и инструменты
Необходимые компоненты и инструменты

Следующие компоненты необходимы

  • Серводвигатель MIni (MG90S)
  • Датчик температуры ds18b20
  • ESP-12F (модуль esp8266)
  • 18650 LIPO аккумулятор
  • Держатель батареи LIPO
  • зарядное устройство micro USB LIPO
  • Стабилизатор низкого тока покоя 3,3 В. LDO. Я использовал XC6203
  • Резисторы 4К7, 10К
  • 220uF 6V Конденсатор развязки
  • n-канальный драйвер MOSFET с низким порогом. Я использовал AO3400
  • P-канальный драйвер MOSFET с низким порогом. Я использовал AO3401
  • Небольшой кусок макета печатной платы
  • Сдвиньте переключатель питания
  • Маленькая кнопка (квадрат 6 мм)
  • Подключите провод
  • Двусторонняя клейкая лента
  • Напечатанный на 3D-принтере дизайн корпуса доступен по адресу
  • Необязательный указатель. Я использовал запасную стрелку часов; может использоваться печатная версия.

Необходимы следующие инструменты

  • Паяльник Fine Point
  • Пистолет для горячего клея
  • Дырокол

Шаг 2: Электроника

Электроника
Электроника

Большая часть электроники представляет собой микроконтроллер ESP8266 Wi-Fi. Требуется небольшое количество вспомогательной электроники для включения серводвигателя и регулирования батареи до 3,3 В, поддержки датчиков и резистивного делителя для контроля напряжения батареи. Питание серводвигателя приводится в действие двумя полевыми МОП-транзисторами. Они включаются на короткий период до того, как потребуется обновление сервопривода, и оставляются включенными на короткий период, чтобы сервопривод мог завершить свое движение. Нагрузка настолько мала, что сервопривод не будет двигаться без питания.

Вся вспомогательная электроника, кроме зарядного устройства LIPO, смонтирована на плате прототипа печатной платы. Я использую компоненты SMD, чтобы сделать это как можно меньше, но это можно сделать с помощью сквозных компонентов, поскольку имеется разумный объем доступного места. Зарядное устройство LIPO имеет порт micro USB, который можно использовать для подзарядки аккумулятора. Ползунковый переключатель питания можно использовать для включения и выключения питания. Кнопка предназначена для отмены спящего режима при включении, что затем обеспечивает доступ в Интернет для настройки и управления.

Шаг 3: Сборка

сборка
сборка
сборка
сборка
сборка
сборка

Я сделал следующие шаги сборки

  • Распечатать 3d корпус
  • Припаяйте провод к переключателю, кнопке и 3-контактному разъему
  • Установите переключатель, кнопку и разъем на корпус, используя небольшое количество полимерного клея для фиксации.
  • Установите сервопривод. Сзади достаточно места для прохождения проводки. Затем можно использовать клин картона, чтобы закрепить его.
  • Закрепите зарядное устройство LIPO на месте. Я использовал провод через четыре отверстия на зарядном устройстве LIPO, чтобы отрегулировать высоту (2 мм) основания, чтобы оно совпадало с отверстием USB. Горячий клей на месте.
  • Держатель аккумулятора, переключатель и зарядное устройство оставьте достаточно провисшими проводами аккумулятора, чтобы они могли находиться сбоку.
  • Создайте периферийную электронику на небольшом куске макетной платы.
  • Установите макетную плату на модуль esp-12.
  • Полная проводка подключения
  • Распечатайте выбранный циферблат (и указатель, если требуется) на плотной глянцевой бумаге и вырежьте его.
  • Используйте дырокол, чтобы создать отверстие для сервопривода
  • Прикрепите циферблат к коробке двусторонней липкой лентой.
  • Прикрепите указатель к сервоприводу
  • Откалибруйте положение указателя, используя веб-интерфейс для установки значения температуры.

Шаг 4: Программное обеспечение

Программное обеспечение для этого проекта доступно на github

Это проект на основе Arduino, поэтому настройте среду разработки esp8266 Arduino. Возможно, вы захотите установить пароли для WifiManager и обновления программного обеспечения в ino-файле на что-то более разумное.

Он должен быть скомпилирован в среде Arduino ESP8266 IDE и серийно загружен в модуль. Хорошо подключить GPIO13 к GND в вашей среде разработки, так как тогда программное обеспечение будет работать в непрерывном режиме.

При первом использовании запускается точка доступа, к которой необходимо подключиться на телефоне или планшете. Смотрите код для пароля. Затем следует использовать браузер на телефоне или планшете для доступа к 192.168.4.1, что позволит выбрать локальный идентификатор Wi-Fi и пароль. Это нужно сделать только один раз или при изменении сети Wi-Fi. С этого момента модуль при необходимости будет подключаться к локальной сети Wi-Fi. Обычный режим глубокого сна не использует Wi-Fi. Он просыпается в интервале сна, считывает температуру, обновляет сервопривод и снова засыпает. При каждом 10-м чтении он снимает показания батареи и записывает их. Это можно проверить, включив режим Wi-Fi без сна и проверив файл журнала.

Также следует загрузить некоторые файлы поддержки. Они находятся в папке данных git. Их можно загрузить, открыв ip / upload. После того, как они были загружены, можно использовать ip / edit, чтобы упростить дальнейшую загрузку.

Шаг 5: Эксплуатация

После настройки устройство будет работать только после включения.

Если он включен при нажатой кнопке, можно использовать несколько веб-команд.

  • http: / ipAddress / upload дает доступ к простой загрузке файла. Используется для начальной загрузки системы.
  • http: / ipAddress / edit дает доступ к файловой системе (например, для ulpoad новой конфигурации или доступа к любому файлу журнала)
  • http: / ipAddress предоставляет доступ к форме для установки значения для отображения. Может использоваться для настройки указателя.
  • http: / ipAddress / firmware для загрузки нового двоичного файла прошивки

Шаг 6: набор номера и настройка

PowerPoint содержит несколько примеров циферблатов для использования по шкале Цельсия или Фаренгейта. Это позволяет использовать 15 сегментов, но диапазон можно легко отрегулировать, изменив интервал шага. Если требуется больше или меньше сегментов, необходимо отредактировать свойства объекта пончика. Таким же образом можно изменить цвет фона сегментов.

Данные конфигурации содержатся в файле servoTempConfig.txt. Он хранится в файловой системе модуля. Чтобы изменить конфигурацию, отредактируйте файл и загрузите его через веб-интерфейс http: ipAddress / edit

Данные конфигурации - это просто значения в следующих строках

  • имя хоста
  • минимальная отображаемая температура (в выбранных единицах)
  • максимальная отображаемая температура (в выбранных единицах измерения)
  • интервал сна между показаниями в секундах
  • спящий режим (0 = постоянно включен с Wi-Fi, 1 = нормальный глубокий сон, 2 = постоянно включен без Wi-Fi
  • запись активности в servoTempLog.txt, если logging = 1. Напряжение батареи всегда регистрируется.
  • единицы измерения температуры 0 = градус Цельсия, 1 = градус Фаренгейта
  • Калибровка ADC_CAL для показаний напряжения батареи.

Убедитесь, что минимальная и максимальная температуры указаны в выбранных единицах измерения C / F.

Рекомендуемые: