Год 2040. Города пульсируют под светом неоновых фильтров, но где-то в подвалах, бункерах и сельских домах до сих пор работают приборы, созданные задолго до того, как слово «IoT» появилось в лексиконе. Один из них — легендарный ДП-5. А что, если мы не выбросим его, а подключим к будущему?
Советская надёжность против цифровой эпохи
У меня есть ДП-5. Не цифровой симулятор из AliExpress, а настоящий — в деревянном ящике, с ручной обработкой, стрелочным индикатором и наушниками, в которых слышен тот самый, знаменитый щелчок радиации.
Прибор работает от 12 вольт, имеет механическую логику и не нуждается в интернете. Он не сломается от EMP, не требует обновлений прошивки и не шпионит за тобой. Это — аппаратная честность.
Но в 2040 году хочется большего. Хочется, чтобы он:
- Сам включался раз в день,
- Фиксировал уровень фонового излучения,
- Отправлял данные в облако или просто писал в лог,
- И — да — предупреждал, если что-то пошло не так.
Короче, пора его цифровизировать.
Идея: ДП-5 как IoT-сенсор
Я не буду трогать внутренности прибора. Никаких паяльников вблизи катушек и резисторов времен Хрущёва. Вместо этого — нечто простое, костыльное, но рабочее:
Слушаем наушники. Если слышим щелчок — значит, счётчик Гейгера сработал. Считаем щелчки в минуту — получаем уровень радиации. Всё.
Что нужно?
- ДП-5 (с рабочим наушником и питанием 12 В)
- Микроконтроллер (например, ESP32 — он умеет Wi-Fi и MQTT)
- Звуковой датчик (модуль с микрофоном, например, KY-038 или лучше — аналоговый MAX4466)
- Реле (чтобы включать/выключать питание ДП-5 по расписанию)
- Блок питания 12 В (для ДП-5) и 5 В (для ESP32)
- MQTT-брокер (например, Mosquitto на Raspberry Pi или в Docker)
- Самописный домашний ассистент (на Python, Node.js или даже в Home Assistant)
Как это работает?
Вот сценарий на каждый день:
- В 3:00 ночи ESP32 включает реле — подаёт 12 В на ДП-5.
- Через 30 секунд (чтобы прибор прогрелся) — ESP32 начинает слушать микрофон, подключённый к наушнику ДП-5.
- В течение 60 секунд он считает количество звуковых импульсов (щелчков).
- Конвертирует в примерный уровень радиации (например, 1 щелчок ≈ 0.1 μSv/h — калибровка нужна!)
- Отправляет данные по MQTT в топик:
sensor/dp5/radiation - Выключает реле — экономит ресурс прибора.
Код для ESP32 (на примере Arduino + WiFi + MQTT)
#include <WiFi.h>
#include <PubSubClient.h>
// Настройки Wi-Fi
const char* ssid = "ваш_вайфай";
const char* password = "пароль";
// Настройки MQTT
const char* mqtt_server = "192.168.1.100"; // IP вашего брокера
WiFiClient espClient;
PubSubClient client(espClient);
// Пины
const int micPin = 34; // Аналоговый вход от микрофона
const int relayPin = 12; // Реле для включения ДП-5
const int threshold = 1000; // Порог срабатывания звука (калибровать!)
const int sampleTime = 60; // Время измерения в секундах
void setup() {
Serial.begin(115200);
pinMode(relayPin, OUTPUT);
digitalWrite(relayPin, LOW); // Реле выключено
setup_wifi();
client.setServer(mqtt_server, 1883);
}
void setup_wifi() {
delay(10);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi подключён");
}
void loop() {
static unsigned long lastRun = 0;
unsigned long now = millis();
// Запуск раз в 24 часа (86400000 мс)
if (now - lastRun > 86400000) {
lastRun = now;
// Включаем ДП-5
digitalWrite(relayPin, HIGH);
Serial.println("ДП-5 включён");
delay(30000); // Ждём 30 секунд на прогрев
// Считаем щелчки
int clicks = 0;
unsigned long start = millis();
while (millis() - start < sampleTime * 1000) {
int sound = analogRead(micPin);
if (sound > threshold) {
clicks++;
delay(50); // Антидребезг
}
}
// Выключаем
digitalWrite(relayPin, LOW);
Serial.println("ДП-5 выключён");
// Отправляем данные
float radiation = clicks * 0.1; // Примерная калибровка
String payload = String(radiation, 2) + "," + String(clicks);
if (client.connect("DP5_Sensor")) {
client.publish("sensor/dp5/radiation", payload.c_str());
client.disconnect();
}
Serial.print("Щелчков: "); Serial.print(clicks);
Serial.print(", Уровень: "); Serial.print(radiation); Serial.println(" μSv/h");
}
delay(60000); // Проверка раз в минуту
}
Интеграция с домашним ассистентом
Представь: у тебя есть самописный ассистент (на Python, Node.js или через Home Assistant). Он слушает MQTT.
Каждый день утром он говорит:
«Доброе утро. Уровень радиации в бункере — 0.12 мкЗв/ч. Норма. ДП-5 выполнил измерение. Всё чисто.»
Или, если уровень повышен:
«Внимание! Обнаружено повышение радиационного фона. Рекомендую проверить герметичность укрытия.»
Ты можешь:
- Записывать данные в базу (InfluxDB, SQLite),
- Строить графики (Grafana),
- Получать уведомления в Telegram,
- Голосовое оповещение через TTS (текст-в-речь).
Почему это гениальный костыль?
Потому что:
- Ты не ломаешь оригинальный прибор — он остаётся музейным экспонатом.
- Ты используешь его по назначению — как счётчик Гейгера.
- Ты добавляешь интеллект — через современные технологии.
- Это устойчивое решение к коллапсу: если интернет умрёт — ESP32 может писать в SD-карту.
А что дальше?
Можно пойти дальше:
- Добавить датчик температуры/влажности в ящик — для мониторинга хранения.
- Сделать автономное питание от солнечной панели и аккумулятора.
- Подключить к LoRa — чтобы передавать данные из бункера без Wi-Fi.
- Сделать веб-интерфейс с анимацией стрелки ДП-5.
Заключение: прошлое служит будущему
ДП-5 — это не просто прибор. Это символ эпохи, когда технологии делали на века. А мы — не выбрасываем его, а интегрируем.
Это и есть подготовка к 2040: не гнаться за новым, а уметь оживлять старое. Не просто «умный дом», а дом с историей, совестью и щелчками радиации в наушниках.
Пусть бункер знает, что происходит за стенами. Даже если это — 1951 год в деревянном ящике.
Комментарии
Пока нет комментариев. Будьте первым!