- PVSM.RU - https://www.pvsm.ru -
Я не являюсь экспертом в схемотехнике и разработке печатных плат, это был мой первый опыт в этой области, и, конечно, я ожидал, что мой путь будет долгим и тернистым. Но я был решительно настроен, так как конечный результат должен быть использован в моем доме как полноценно работающее устройство.
передача показаний температуры, влажности, CO2, качества воздуха, уровня освещенности, а также данные с датчика присутствия человека на сервер Home Assistant [1]
передача данных по Ethernet
питание устройства по PoE [2]
устройство должно подходить к китайскому подрозетнику [3]
Для разработки принципиальной схемы и разводки печатной платы я использовал бесплатную он-лайн версию EasyEDA [4]. Как мне кажется, она неплохо подходит для новичков, а для профессионалов есть более сложные программы.
По окончании проектирования встал вопрос, где заказывать сами платы и компоненты к ним. Из раскрученных сервисов, к которым есть доступ из РФ я выбрал NextPCB [5], там все тоже самое, что и у всем известной JLCPCB [6]. Дополнительная задача стояла в максимальной экономии. У данного сервиса есть акция, где напайка компонентов стоит всего 20 долларов, но есть ряд существенных ограничений:
плата должна быть не более 100x100 мм
не более 100 компонентов в сумме
не более 30 уникальных компонентов.
Однако, благодаря разделению платы на две части, эта проблема была решена. В итоге получилась следующая ревизия первого опытного образца:
Питание PoE (модуль SDAPO DP1435 [7])
Ethernet (Wiznet W5500 [8])
Встроенные датчики:
Датчик температуры и влажности (ENS210 [9])
Датчик температуры, влажности и качества воздуха (Bosch BME680 [10])
Датчик температуры, влажности и CO2 (Sensirion SCD40 [11])
Датчик освещенности (BH1750FVI [12])
Контактный разъем под впайку датчика присутствия (HLK-LD2410c [13])
Пищалка (buzzer)
Выходы на пять GPIO, вторую шину I2C, GND, 3V3A и 3V3D для тестов
В качестве прошивки я пробовал CircuitPython [14], но столкнулся с рядом трудностей, таких как отсутствие библиотек (пришлось переписывать Python-библиотеку LD2410c под CircuitPython) и скорость работы (от момента включения устройства до загрузки прошивки пищалка начинает издавать звуки, что можно исправить дополнительным резистором).
Для тестов CircuitPython вполне сойдет, но для полноценной работы больше подойдет ESPHome [15], в виду простоты, широкой поддержки различных библиотек, и то, что конечный код компилируется в C++.
разработка корпуса
приведение показаний с датчиков температуры и влажности к референсным
Датчики очень чувствительны к шумам и нагреву от других компонентов. В следующей ревизии будет изменен дизайн front-платы. Будет разделена “земля” на аналоговую и цифровую, полигоны GND будут отведены от датчиков, сами датчики будут разнесены по-другому, будет улучшена фрезеровка.
На этом все, большое спасибо что прочитали, если у вас есть вопросы и замечания по проекту буду рад ответить в комментариях.
Ссылка на проект с gerber-файлом, принципиальной схемой и прошивкой находится здесь [16].
Автор: alaltitov
Источник [17]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/sensors/395821
Ссылки в тексте:
[1] Home Assistant: https://www.home-assistant.io/
[2] PoE: https://ru.wikipedia.org/wiki/Power_over_Ethernet
[3] подрозетнику: https://aliexpress.ru/item/33040774717.html
[4] EasyEDA: http://www.easyeda.com
[5] NextPCB: https://www.nextpcb.com/
[6] JLCPCB: http://www.jlcpcb.com
[7] модуль SDAPO DP1435: https://www.lcsc.com/datasheet/lcsc_datasheet_2304031800_SDAPO-DP1435-5V_C5380097.pdf
[8] Wiznet W5500: https://www.lcsc.com/datasheet/lcsc_datasheet_2307141200_WIZNET-W5500_C32843.pdf
[9] ENS210: https://www.lcsc.com/datasheet/lcsc_datasheet_2204121130_AMS-ENS210-LQFM_C2991202.pdf
[10] Bosch BME680: https://www.lcsc.com/datasheet/lcsc_datasheet_1811141211_Bosch-Sensortec-BME680_C125972.pdf
[11] Sensirion SCD40: https://sensirion.com/media/documents/48C4B7FB/64C134E7/Sensirion_SCD4x_Datasheet.pdf
[12] BH1750FVI: https://www.lcsc.com/datasheet/lcsc_datasheet_1811081611_ROHM-Semicon-BH1750FVI-TR_C78960.pdf
[13] HLK-LD2410c: https://www.lcsc.com/datasheet/lcsc_datasheet_2312221750_HI-LINK-HLK-LD2410C-P_C19723500.pdf
[14] CircuitPython: https://circuitpython.org/
[15] ESPHome: https://esphome.io/
[16] здесь: https://github.com/alaltitov/little_eva
[17] Источник: https://habr.com/ru/articles/841532/?utm_source=habrahabr&utm_medium=rss&utm_campaign=841532
Нажмите здесь для печати.