Умный будильник на основе интервалов — проект OpenMiAlarm

Есть умные будильники которые основаны на разных технологиях. Например, на основаны на работе акселерометра и анализа медленный/быстрый сон. Я же у себя заметил другую закономерность. Оказывается я не один такой…

Уже лет 5 знаю, что если я сплю с интервалом равным определенной длине, то я становлюсь абсолютно бодрый после этого интервала. У меня он равен ровно 4 часа. То есть я могу поспать 4 часа, 8 часов, 12 часов. Я буду абсолютно бодрым после каждого интервала.

До 4-х часов подъем практически невозможен, будильник просто не слышен сколько бы он не орал и лишь крик ребенка может тебя разбудить, но это больше что-то инстинктивное. В интервале с 4 до 8 часов очень трудно подняться, если поднимешься то будешь вареный весь день. С 8 до 12 часов, в случае подъема — болит голова от пересыпа. Но проснуться на 4, 8, 12 час очень просто. В подавляющем количестве случаях замечал у себя, что я пропускаю будильник и просыпаюсь ровно до момента пока не досплю второй четырехчасовой интервал.

Например: поставил будильник в 8, лег спать в 23:00, проворочился и фактически заснул 01:00, в результате будильник как и положено будет через 7 часов, далее по 10 минут откладывая его досыпаешь ровно до интервала в 8 часов и очухиваешься.

Вот пример, где будильник начал долбить меня ровно с 7-ми часов, но я упорно говорил, что я хочу досмотреть мой прекрасный сон с сексом или че там у кого снится.

MiBand Sleep Control
MiBand Sleep Control

Какое решение этой проблемы?

Решение проблемы появилось недавно. Я купил себе фитобраслет который определяет начало сна с точности до минуты. Это означает, что возможно написать приложение которое контролирует начало твоего сна и будит тебя только на границах интервалов сна, когда ты входишь в очередной интервальный цикл.

Настройки данного будильника следующие.

  1. Предполагаемое время когда требуется проснуться
  2. Время на которое можно проспать
  3. Настройка интервала (у каждого свое, у меня ровно 4 часа, минуту в минуту)

Получается, что будильник определяет момент, когда ты заснул, далее нехитрой математической операцией определяет возможное время сна и точки пробуждения (текущее время + (настройка 3)). По возможности программа пытается предложить максимальный уровень высыпания, то есть если ты немного проспишь это на здоровье (настройка 2). Но если ты проспишь слишком много, то программа будет будить тебя раньше срока на определенное количество часов.

Разберем финальный пример работы

Конфигурация:

  1. 8:00
  2. 1 час
  3. 4 часа

Ситуация 1: я лег в 23:00 поворочился и фактически заснул в 01:00. Значит программа разбудит ровно в 9:00 через 2 интервала и ты будешь полностью выспавшимся, но проспишь работу на 1 час.

Ситуация 2: я заснул в 22 часа. Будильник отсчитал 2 интервала, получилось 6:00 утра. Вы получаете 2 часа свободного времени с утра, без ненужного пересыпа.

Ситуация 3: вышел фильм Шерлок, вы просмотрели его и пошли спать в 3:40, будильник пробил в 7:40.

Дополнительная функциональность. Гарантированный минимальный сон

Можно ввести еще одну настойку. В случае если она активирована, то не зависимо от того сколько ты проспишь, он будет будить тебя после минимального цикла (4 часа).

Ситуация 4, я лег в 5 часов, кровь из носа надо поспать, но встать тоже хочется а подняться надо за максимально короткое время по возможности в 7:00. Значит он тебе даст проспать ровно до 9:00. 2 часа проспал — это лучше чем проспать пол дня рабочего дня если просишь все 6 часов от того что ты просто выкинул в окно свой будильник во сне.

Альтернатива этой настройки, это просто не спать. На кофе до следующего вечера. И именно так надо делать, если у тебя важная встреча.

Терапевтическая выгода

В чем выгода. В том, что ты всегда просыпаешься «бобрым». Но если ты в какой-то день недосыпаешь — спишь по программе 1 интервал, то ты в день пробуждения засыпаешь раньше, просто потому что к вечеру тебя клонит спать. Если ты спишь нормально, то все нормально, если ты пересыпаешь, то будильник пытается сохранить тебе твое здоровье, что бы у тебя не болела голова от пересыпа или «недосыпа пересыпа» =))

Just shut up and make this code…

ЗЫ: очень хочу приложуху, но у меня нет время на нее. Если кто-нибудь хочет, и может, поспособствуйте… Я даже могу денег заплатить и подарить фитобраслет, и у вас OpenSource проект в копилке и у меня будильник.


Пошаримся?

Автор

Артур Кривцов

Мой лозунг "Быть, а не казаться!". Потомственный инженер. Являюсь PHP разработчиком (Yii2) и SEO оптимизатором.

Умный будильник на основе интервалов — проект OpenMiAlarm: 2 комментария

    1. А я свой браслет потерял =(
      Но вообще было бы круто, если хочешь.
      Кроме того, сорян, сейчас у меня загрузка 200%, нет пока ни времени, ни денег этим заниматься. эххх.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.