«Да ладно тебе, всё нормально будет! У нас же пашни — от Урала до Камчатки!» — слышу я от коллег, когда рассказываю, что закапываю бочки с тушенкой и гречкой.
Но давайте вспомним: в 1990-х в России реально голодали. Не в смысле «не хватило авокадо в смузи», а в смысле «дети ели хлеб с солью по полгода». И это — в стране с самыми большими запасами пахотных земель в мире. Абсурд? Да. Реальность? Тоже да.
Сегодня — климатические аномалии, деградация почв, нестабильные цепочки поставок, санкции, контрсанкции, «временные трудности»… А завтра? А завтра может не быть «автоматической доставки из Ozon Fresh». И тогда окажется, что самый надёжный продакшен — это твоя собственная бочка под яблоней.
Я — айтишник. Я не верю в «авось пронесёт». Я верю в резервирование, мониторинг и SLA. Поэтому я собрал и закопал продовольственный кластер с IoT-архитектурой. Вот как.
Многие думают: «купил 500 банок тушенки — и спокоен на 10 лет». Но:
Поэтому я решил: мой запас должен быть observable. Как любой уважающий себя микросервис.
Я разделил запас на категории — чтобы не вскрывать всё сразу и не терять резерв при частичной компрометации.
Всё уложено в 200-литровые пищевые еврокубы с плотными крышками. Внутри — толстый пищевой вкладыш, силикагель и картонные прокладки между слоями.
Многие думают: «куплю 300 банок тушенки — и готов». Но без углеводов, витаминов и жиров вы быстро выдохнетесь. Вот сбалансированный минимум, проверенный выживальщиками и военными. Всё рассчитано на умеренную активность (не стройка, но и не лежание в бункере).
Категория | Продукт | Количество на год | Почему нужно | Срок хранения (в прохладе) |
---|---|---|---|---|
Белок / Жир | Тушенка (говядина/свинина) | 150 банок (330 г) | Основной источник животного белка и жира | 4–7 лет |
Рыбные консервы | 30 банок | Омега-3, разнообразие, йод | 3–5 лет | |
Растительное масло | 5 литров | Калории! 1 ст.л. = 120 ккал | 1–2 года (в тёмной таре) | |
Углеводы | Гречка | 25 кг | Белок + медленные углеводы, не требует дрожжей | 2–5 лет (в гермоупаковке — 10+) |
Рис / перловка | 15 кг | Энергия, сытость | 2–4 года | |
Макароны | 10 кг | Быстро варятся, дешево | 3–5 лет | |
Сухой картофель / крупа «Дружба» | 5 кг | Клетчатка, витамины | 2–3 года | |
Мораль / Витамины | Сахар | 8 кг | Глюкоза, энергия, консервация | Вечно |
Чай / кофе | 1–2 кг | Психологическая поддержка | 2–3 года | |
Сухофрукты / мёд | 3–5 кг | Витамины, железо, вкус | 1–3 года | |
Быт / Здоровье | Соль | 3 кг | Электролиты, консервация | Вечно |
Итого на двоих: ~600 банок консервов + 100–120 кг сухих продуктов. Всё это помещается в 3–4 еврокуба по 200 л.
⚠️ Важно: это минимум. Если есть возможность — добавьте сухое молоко, витамины (особенно C и B), дрожжи (для выпечки) и мыло. И не забывайте: лучший запас — тот, что вы регулярно ротируете и частично съедаете.
Глубина закладки — 1.5 метра. Это ниже глубины промерзания в большинстве регионов РФ (кроме вечной мерзлоты, но там, честно, другие проблемы).
Но чтобы точно не рисковать:
Результат: даже при -35°C на поверхности, внутри бочки держится +4…+7°C. А это — идеальные условия для хранения консервов (по ГОСТ: от 0 до +15°C).
Wi-Fi под землёй — миф. Поэтому я собрал ultra-low-power ноду на базе:
Схема работы:
Данные ловит BLE-шлюз (Raspberry Pi Zero W в сарае), который пересылает их в мою самописную IoT-систему. Там — дашборд, алерты и логирование в InfluxDB.
Расчётный срок работы от батареи — 5–7 лет. Но я планирую проверять бочки каждые 3 года: съесть часть запаса, обновить аккумулятор, убедиться, что банки целы.
Срок годности тушенки по ГОСТ — 2–4 года. Но при правильном хранении она живёт и 7 лет. Однако:
Это как CI/CD для выживания: Consume It / Deploy new.
Меня спрашивают: «Ты что, боишься апокалипсиса?»
Нет. Я просто знаю, что в России стабильность — это исключение, а хаос — правило. И если в 90-х голод был реальностью, то в 2040-м он может вернуться в новой упаковке — с QR-кодом и блокчейном.
А мой продовольственный кластер — это не бункер. Это резервная копия цивилизации на случай, если продакшен упадёт.
P.S. Если вдруг начнётся «чёрный день» — знайте: у меня есть тушенка, гречка, и Grafana с температурой в бочке. Приходите — SLA на сытость действует для всех.
Вот минимальный, но рабочий скетч для ESP32, который раз в 48 часов включается (благодаря TPL5110), считывает температуру и влажность с датчика SHT45, отправляет данные по Bluetooth LE и подаёт сигнал на TPL5110 для отключения питания. Всё это потребляет меньше 0.01 мА·ч в сутки.
/*
* Продовольственная IoT-нода для закопанной бочки
* ESP32 + SHT45 + TPL5110
* Режим: ultra-low-power, BLE-рассылка раз в 48 часов
*/
#include <Wire.h>
#include <Adafruit_SHT4x.h>
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEUtils.h>
#include <BLEAdvertising.h>
#define DONE_PIN 25 // Пин для сигнала TPL5110 "DONE"
#define SHT45_ADDR 0x44 // Адрес датчика SHT45
Adafruit_SHT4x sht4 = Adafruit_SHT4x();
void setup() {
pinMode(DONE_PIN, OUTPUT);
digitalWrite(DONE_PIN, LOW);
// Инициализация датчика
if (!sht4.begin(SHT45_ADDR)) {
sendBLEData(-999, -999); // ошибка
signalDone();
return;
}
delay(50);
sensors_event_t humidity, temp;
sht4.getEvent(&humidity, &temp);
sendBLEData(temp.temperature, humidity.relative_humidity);
delay(2000);
signalDone();
while (1) delay(1000); // ждём выключения
}
void sendBLEData(float temp, float hum) {
BLEDevice::init("FoodVault");
BLEServer *pServer = BLEDevice::createServer();
BLEService *pService = pServer->createService("4fafc201-1fb5-459e-8fcc-c5c9c331914b");
BLECharacteristic *pChar = pService->createCharacteristic(
"beb5483e-36e1-4688-b7f5-ea07361b26a8",
BLECharacteristic::PROPERTY_READ | BLECharacteristic::PROPERTY_NOTIFY
);
pService->start();
BLEAdvertising *pAdv = BLEDevice::getAdvertising();
pAdv->addServiceUUID("4fafc201-1fb5-459e-8fcc-c5c9c331914b");
BLEDevice::startAdvertising();
String payload = "{\"temp\":" + String(temp, 1) + ",\"hum\":" + String(hum, 1) + "}";
pChar->setValue(payload.c_str());
pChar->notify();
}
void signalDone() {
digitalWrite(DONE_PIN, HIGH);
delay(100); // по даташиту TPL5110 — минимум 10 мс
}
void loop() {}
Шлюз (например, Raspberry Pi Zero W в сарае) ловит BLE-рекламу от устройства с именем FoodVault
и пересылает данные в твою самописную IoT-систему. А TPL5110, получив сигнал DONE, разрывает цепь питания — ESP32 выключается полностью. Следующее включение — только через 48 часов (настраивается резистором на самом TPL5110).
Блог только запустил, все статьи генерирую через нейросеть т.к. лень, возможны ошибки. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
Если у вас есть вопросы, или Нашли неточность? пишите в коментах — вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.
Комментарии
Пока нет комментариев. Будьте первым!