В качестве датчика здесь применен советский счетчик Гейгера-Мюллера СБМ-20 (можно так же использовать и его аналоги, например, трубку СТС-5). Сердцем девайса служит популярный микроконтроллер ESP8266 с Wi-Fi на борту.
Так же есть возможность снятия показаний через USB порт, для чего было написано специальное программное обеспечение Radiation Meter Software.
Питание трубки счетчика обеспечивает повышающий преобразователь, собранный на основе дросселя типа "гантелька" на 10 мГн с намотанными поверх четырьмя витками жилы от кабеля обычной витой пары.
Управление напряжением лежит на плечах ESP. С помощью кратковременных импульсов происходит накачка высоковольтной части схемы до ~400 вольт. Обратная связь реализована через делитель напряжения, который подключен ко входу АЦП микроконтроллера.
Детектирование ионизирующих частиц сопровождается появлением отрицательных импульсов на катоде трубки, которые инвертируются с помощью транзистора и вызывают срабатывание прерывания на одном из входов МК.
Что касается корпуса устройства, то он выполнен из отрезка 32 мм пластиковой сантех-трубы, один конец которой закрыт заглушкой, а на другом нарезана резьба. Плата помещается внутрь, в гнездо USB устанавливается кабель и на отверстие накручивается полипропиленовая пробка с внутренней резьбой.
При желании девайс можно прикрепить на стену, используя держатели для сантехнических труб.
В качестве источника питания подойдет обычный адаптер от мобильника.
Все файлы, необходимые для самостоятельной сборки данного дозиметра, находят в GitHub репозитории проекта.
Ссылки на покупку комплектующих оставляю ниже:
- Микроконтроллер ESP-12F https://aliexpress.ru/item/32808593889.html
- USB модуль CP2102 https://aliexpress.ru/item/32700457715.html
- Стабилизаторы LM1117-3.3 https://aliexpress.ru/item/982427143.html
- Транзисторы IRLML6346TRPBF https://aliexpress.ru/item/32764563359.html
- Транзисторы BC847 https://aliexpress.ru/item/32695159024.html
- Диоды 4007 https://aliexpress.ru/item/32855991719.html
- Дроссели 10 мГн https://aliexpress.ru/item/32849196453.html
- Крепления для трубки 6x30мм https://aliexpress.ru/item/32994024299.html
- Высоковольтные конденсаторы https://aliexpress.ru/item/32947505623.html
- Пленочные конденсаторы https://aliexpress.ru/item/32381560417.html
- Танталовые конденсаторы https://aliexpress.ru/item/32889717914.html
- Керамические конденсаторы https://aliexpress.ru/item/32842027469.html
- SMD резисторы https://aliexpress.ru/item/32847115923.html
Правильно собранное устройство не нуждается в настройке и после прошивки сразу готово к работе. Тем не менее, перед сборкой прошивки, можно отредактировать некоторые параметры:
#define PUMPING_PIN 4 // Номер пина генератора накачки #define PUMPING_PULSE 50 // Длина импульса накачки #define PUMPING_FREQ 5 // Частота генератора накачки #define PUMPING_ADC 450 // Максимальное напряжение делителя АЦП #define PUMPING_POWER 400 // Напряжение питания счетчика #define SENSOR_PIN 5 // Номер пина, к которому подсоединен датчик #define SENSOR_TYPE 1 // Тип датчика (СБМ-20/СТС-5/BOI-33 = 1, СБМ-19/СТС-6 = 2) #define SENSOR_NUM 1 // Количество установленных датчиков (параллельное подключение) #define SENSOR_TIME 36 // Время для замера в секундах #define SENSOR_SUM 10 // Количество замеров для усреднения
Для сборки прошивки используется сервис WiFi-IoT. В конструкторе необходимо выбрать SDK версии 1.3.0, отметить модули "Настройки по умолчанию" (указываются параметры подключения к вашей точке доступа), "MQTT клиент", "UART bridge" и "Конструктор кода" (вставляем код прошивки из файла firmware.c) и скомпилировать бинарник.
Скачиваем результат в виде одного файла и прошиваем (я использовал NodeMCU Flasher) с начального адреса 0x00000. Вход в режим программирования осуществляется одновременным нажатием двух кнопок на печатной плате. Чтобы микроконтроллер активировал работу со всеми требуемыми модулями, необходимо зарегистрировать для него PRO-лицензию. Более подробно об этом процессе можно прочитать в официальной инструкции сервиса.
UPD: Jager совместно с @anonymass разработали похожее устройство, но для сетей ZigBee. Советую сходить по ссылке и почитать.
ZmiterIv
Добрый день!
Можете скинуть печатку с отдельным USB модулем (как на фото в статье)? А то не могу в магазинах найти ни кварца такого, ни ch340 в корпусе SOP16 (как на новой версии печатки). Искал у Вас на гитхабе в коммитах и не нашел старой версии печатки. zmiteriv собака tut.by
Спасибо.
Kasito
Плохо искали)))
https://github.com/kasitoru/esp_radiation_meter/raw/c62f8a078a9f4f4d4520a7fcfa379b0cfb79978e/hardware.lay6
ZmiterIv
Спасибо! Оно!
Creo2005
Приветствую, хочу повторить, заказываю плату новой версии (на allpcb есть купон :), какой размер паты - 30х140 мм? И еще, можете сказать размеры smd компонентов, что-то у меня есть в наличии (irlm, кварц ...), но разных размеров. Хотелось бы заказать необходимые, пока будет изготовляться плата. Возможно у Вас есть BOm файл? Спасибо за проект.
Kasito
Размер платы 26х135. Типоразмер кварца 3225, микруха sop16, резисторы и конденсаторы 1206, танталовые любые (но лучше A или B). В принципе, ссылки на большинство компонентов есть в статье. Если чего то нет в наличии, то просто ищем такой же товар у другого продавца.
Creo2005
Спасибо, микруху и кварц сдую со старой платы ESP 🙂
Только не могу понять, как передать данные на MQTT - где задается его адрес, порт и прочее?
И какой топик?
И что передается?
Спасибо.
Kasito
Это настраивается через WEB админку устройства, когда оно уже подключено к вашей Wi-Fi сети.
Creo2005
Посмотрел, Вы убрали из прошивки интеграцию с MQTT?
Можете выложить текст полной прошивки??
Спасибо.
Kasito
Интеграция с MQTT включается при сборке прошивки через конструктор WiFi-IoT. Читайте внимательнее статью. Исходный код счетчика и так опубликован, в статье есть ссылка на GitHub.
Алексей
Доброго дня, есть ли прошивка под Homeassistant через ESPHome?
Kasito
Нет
Евгений
Добрый день. При установке датчика сбм19 выбираем define SENSOR_TYPE 2. Это ясно. А define SENSOR_TIME 36 остаётся прежнее или ставим 9?
Kasito
Да, верно!
евгений
Добрый вечер. Чет я тоже не понял какое время ставить для сбм 19. 36 или 9 сек.
Александр
Предновогоднее Поздравление всем присутствующим ,решил написать ,собрал множество дозиметров на пиках,атмегах и айтини ,преобразователь классический на данном дозиметре ,работает прекрасно,потребление зависит от качества гантельки то есть магнитной проницаемости сердечника,но лучше ставить гантелку 0610 или дроссель 0510 10 миллгенри ,транзистор самый дешёвый и лучше что заложен 3400 на сток исток преобразователя ещё надо поставить супрессор на 12 вольт чтобы при перегрузке транзистор не вышел из строя на измерительный вход adc чтобы меньше жрало поставить пару 100 мегом 200 килоом и меньше нагрузка была на порт ,прошивка компилируется бесплатно это уже плюс ,а как выдаёт дозиметр данные через УАРТ или по ВИ-ФИ .для быстрого реагирования на дозу надо ставить 2-3 СБМ-19 или СТС-6 либо ставить СБТ-10 и это будет 5 СБМ -20 и площадь одинаковая не путать С СБМ-20М это половина СБМ-20 и реакция 72 секунды