Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном

в 12:00, , рубрики: diy или сделай сам, программирование микроконтроллеров, счетчик гейгера, трубка гейгера-мюлллера

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 1

Я разработал и собрал счётчик Гейгера – устройство, способное обнаруживать ионизирующее излучение и предупреждать об опасных уровнях радиации в окружающей среде знакомыми щелчками. Его также можно использовать для поиска минералов, и определять, есть ли в найденном вами камне урановая руда!

В интернете можно найти много готовых наборов и инструкций по сборке счётчика Гейгера, но я хотел сделать нечто уникальное – и я разработал GUI-дисплей с сенсорным управлением и красивым выводом информации на экран.

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 2

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 3

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 4

Шаг 1: базовая теория

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 5

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 6

Принцип работы счётчика Гейгера прост. Тонкостенная трубка с газом при низком давлении внутри (трубка Гейгера-Мюллера) подвергается действию тока высокого напряжения. Создаваемого электрического поля недостаточно для диэлектрического пробоя, поэтому ток через трубку не течёт – до тех пор, пока фотон ионизирующего излучения не пройдёт через неё.

Когда сквозь трубку проходит бета- или гамма-излучение, оно может ионизировать часть молекул газа внутри, что приводит к появлению свободных электронов и положительных ионов. Частицы начинают двигаться под воздействием электрического поля, и электроны набирают достаточно скорости, чтобы начать ионизировать другие молекулы, что приводит к каскаду заряженных частиц, которые на короткое время начинают проводить ток. Этот краткий импульс тока можно зарегистрировать при помощи приведённой схемы, которая создаёт щёлкающий звук, или, как в данном случае, передаёт информацию в микроконтроллер, который может проводить вычисления с этими данными.

Я использую трубку Гейгера-Мюллера SBM-20, поскольку её легко найти на eBay, и она достаточно чувствительна к бета- и гамма-излучению.

Шаг 2: запчасти и сборка

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 7

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 8

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 9

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 10

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 11

В качестве мозга проекта я использовал плату NodeMCU с микроконтроллером ESP8266. Мне хотелось взять то, что можно программировать как Arduino, и что будет достаточно быстрым, чтобы отрисовывать изображение на экране без задержек.

Для подачи высокого напряжения я использовал трансформатор с Aliexpress – он подаёт 400 В на трубку Гейгера-Мюллера. Учитывайте, что при проверке выходного напряжения его не получится измерять мультиметром напрямую – при слишком малом импедансе напряжение будет падать, и показания будут неточными. Сделайте делитель напряжения с сопротивлением не менее 100 МОм последовательно с мультиметром.

Питается устройство от аккумулятора формата 18650, через ещё один трансформатор, подающий стабильные 4,2 В на оставшуюся схему.

Вот список всех необходимых компонентов:

  • SBM-20 GM трубка (ищите на eBay).
  • Высоковольтный трансформатор (AliExpress).
  • Трансформатор для 4,2В (AliExpress).
  • Плата NodeMCU esp8266 (Amazon).
  • 2.8" SPI сенсорный экран (Amazon).
  • 18650 батарейка (Amazon) или любая LiPo батарейка на 3,7 В (500+ mAh).
  • 18650 держатель для батарейки (Amazon). Этот держатель оказался великоват для платы, и мне пришлось загнуть контакты внутрь. Рекомендую взять батарейку LiPo поменьше, и припаять провода от разъёма JST к контактам для питания на плате.

Различные электронные компоненты:

  • Рещисторы на 330, 1K, 10K, 22K, 100K, 1,8M, 3M Ом. Для создания делителя напряжения также потребуются резисторы на 10 МОм.
  • Конденсаторы: 220 пФ.
  • Транзисторы: 2N3904.
  • Светодиод 3 мм.
  • Пищалка: любой пьезоэлемент на 12-17 мм.
  • Держатель для предохранителя 6,5 х 32 (для надёжного крепления трубки).
  • Выключатель 12 мм.

У себя на GitHub я выложил схему в PDF – там видно, как соединять все компоненты. Скорее всего, дешевле заказывать их у оптовых продавцов типа DigiKey или LCSC. На GitHub есть электронная табличка с моим заказом с LCSC для большинства компонентов.

Плату делать необязательно, но с ней сборка схемы становится проще и аккуратнее. Файлы Gerber для производства платы я также выложил на GitHub. После того, как я получил готовую плату, я сделал несколько исправлений в схеме, поэтому дополнительные джамперы в новой схеме не нужны – хотя я её не проверял.

Корпус распечатан на 3D-принтере из пластика PLA, их можно скачать здесь. Я подправил CAD-файлы, добавив отверстия для крепления новой платы. Всё должно работать, хотя я это не проверял.

Шаг 3: код и интерфейс пользователя

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 12

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 13

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 14

Для создания интерфейса дисплея я использовал библиотеку Adafruit GFX. Код выложен на GitHub.

Главная страница интерфейса показывает текущую дозу, количество срабатываний в минуту и общую накопленную дозу с момента включения устройства. Пользователь может переключаться между быстрым и медленным суммированием, меняя интервал подсчёта промежуточных сумм с 3 до 60 секунд. Пищалку и светодиод можно включать и выключать отдельно.

Есть меню базовых настроек, позволяющее пользователю менять единицы измерения дозы, порог предупреждения и фактор калибровки, соотносящий количество срабатываний в минуту и мощность дозы излучения. Все настройки сохраняются в EEPROM, и восстанавливаются после перезапуска.

Шаг 4: проверка и заключение

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 15

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 16

Самодельный счётчик Гейгера на ESP8266 с сенсорным экраном - 17

Счётчик Гейгера срабатывает 15-30 раз в минуту от естественного фонового излучения, чего и следует ожидать от трубки SBM-20. Небольшой образец урановой руды регистрируется как средне радиоактивный, в районе 400 щелчков в минуту, а ториевая лампа может заставить счётчик регистрировать по 5000 щелчков в минуту, если держать его вплотную к ней!

Счётчик потребляет 180 мА при 3,7 В, поэтому батарейки на 2000 мАч должно хватить примерно на 11 часов.

Я планирую точно откалибровать трубку на стандартном источнике из цезия-137, что сделает показания более точными. В качестве будущих улучшений можно добавить поддержку WiFi и запись данных, поскольку у ESP8266 есть встроенный WiFi.

Надеюсь, мой проект показался вам интересным!

Автор: Вячеслав Голованов

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js