Pull to refresh

Comments 137

Надо еще электронную очередь организовать :)

«Туалет свободен, ваша очередь: 5, примерное время ожидания: 27 минут 43 секунды»
ИМХО — не хватает аналитики, а ля:
> последним гадил Вася
> свет не вырубил Андрей
> за собой не смыл…
> а Баб Нюра там сидит уже 43 мин.
Да, BigData сейчас в моде… добавить функцию предсказания времени освобождения, на основе предыдущего поведения пользователей.
А если через API получать данные из столовой, можно так же исследовать интересные зависимости…
И кнопка «Заплатить 100р и подвинуться в очереди»
UFO just landed and posted this here
если есть люди, которые стоят выше вас в очереди на посещение, то можно «обгонять» их.
UFO just landed and posted this here
А потом занимать очередь без надобности и продавать свое место в очереди со скидкой!
Кстати, если серьёзно, то это справедливо: а то некоторые про запас начнут бежать и после того, как появится оповещение об освободившемся туалете, несколько человек сорвутся со своих мест и, ставя друг другу подножки, наперегонки побегут к туалету…
Если уж действительно говорить серьезно, то такая ситуация возможна только при нарушении каких-нибудь там норм по количеству туалетов на душу населения. У нас на этаже всего один унитаз и один уринал (для мужчин). Лично я сталкиваюсь с ситуацией «пришел — занято» раз в 2-3 месяца от силы, а то и реже. «Побегут наперегонки» — это начальная школа какая-то :)
Тогда можно будет вести статистику посещения и время пребывания в туалете у сотрудников с возможностью выбора временного интервала :) Так, в конце года составлять шуточный рейтинг например)
Пришлось перепостить из-за бюрократии.
На хабре нельзя публиковать топики, в которых ты в первом же абзаце даешь ссылку на свою компанию, а потом уже рассказываешь суть поста :)…
Это в планах на следующие релизы. Назвали фичу «Я следующий»:)
Функции перекупа очередь для тех, кому приперло :)
Купоны и купоны спецобращений как в техподдержке битрикса.
Сразу видно, кто зачитался в «библиотеке». :)

image
Слегка назойливо с уведомлениями) Иконку бы в таскбар
Она там есть (Красный/зеленый круг).
Свет включен == туалет занят

Не все люди за собой свет выключают, увы. Было бы лучше по замку отслеживать.

Другая проблема — если «сервисом» пользуется весь офис, при получении нотификации сразу 5 человек бегут к освободившемуся туалету, и все равно приходится ждать.
Практика показала, что для 15-ти человек «сервиса» вполне достаточно. Пробки не создаются.
Интересно, какое предельное число пользователей можно подключить до первых пробок)
И народные комментарии.
Было бы лучше отслеживать емкостным датчиком.
Классический race-condition, который можно решить, добавлением рандомного промежутка времени когда отсылать уведомление.
O, теперь вот тут! «Пошли 'iToilet' на короткий номер ХХХХ и уменьши свой рандомный промежуток времени вдвое»
У нас есть такие личности, которые за собой свет не выключают.
М.б. стоило использовать датчик движения? Ибо вероятность нахождения зверьков в туалете гораздо меньше той, что человек забудет выключить за собой свет.
Датчик движения не прокатит, так как человек там сидит в неподвижном состоянии:)
И правда, как-то не подумал об этом;)
У нас в одном из офисных туалетов свет в кабинке включался по движению. Короче приходилось как-то двигаться, либо сидеть в темноте :)
Полезно сидеть в темноте, наедине с собственными мыслями.
Повесьте лампу с детектером движения. К ней подключите девайс. Если не хочет сидеть в темноте — будет шевелить руками, чего мы и добиваемся.
Как эксперт с мировым именем по данному вопросу, могу заметить: если человек пришел в неподвижное состояние — пора беспокоиться…
А если человек постоянно движется, то скорее всего их два ;)
Поза не совсем естественная для живого человека, может у него судороги были.
Решается достаточно просто.

У датчика движения есть два события: «алярм» и «дизалярм», что значит «движение обнаружено» и «ухожу из режима тревоги».
Суть в том, что можно настроить таймер, по срабатыванию которого датчик уходит в «дизалярм».

Человек пошевелился в 4 минутном отрезке времени? Таймер сбрасывается и снова ждёт.
4 минуты движения не обнаружено? Уходим в режим «дизалярм».

Если 3 минуты человек неподвижно ещё сможет просидеть на унитазе, то 4 минуты — едва ли (нос почесать, взять баллончик освежителя воздуха, чтоб этикетку почитать и т.п.).

Таким образом состояние датчика «дизалярм» можно считать как состояние туалета «Свободно».

Минус описанного метода в том, что если человек покинул туалет через минуту, то датчик будет продолжать ждать истечения времени для перехода в режим «дизалярм».
Датчик света. (Свет включен == туалет занят)


У нас такое не прокатит, ибо свет в туалете включен всегда в течении всего раболчего дня. А так прикольно.
Ну заодно будем воспитывать культуру экономии света.
Можно добавить таймер. Например через 15-30 мину статус меняется на «Возможно забыли выключить свет»
а у нас в туалете какие-то медленные лампы, из выключенного состояния долго разогреваются, поэтому свет никогда не выключается :)
Можно поставить датчик в сам унитаз, если свет внезапно пропадает, значит туалет занят.
Прикрутите систему ачивок и рейтинг участников. Будет круто. А так же возможность написать тому, кто находится внутри.
Установить веб-камеру и сразу все знают занято или нет :) И монетизация с канала на YouTube. И смс голосование за лучшего серуна.
Вы бы ещё комментатора посадили :D
UFO just landed and posted this here
Еще систему скилов. В том числе и негативных вроде «сломать слив» или «разбросать бумагу».
И обязательно возможность выкладывать фото.
А можно ещё миссии придумать — например, навалить 2 кг за 3 минуты. А за это давать бонусы, например в виде одного прохода без очереди в следующий раз.
«Король туалета», «Завсегдатай», плюс таблица лидеров. Да, поле не паханное )
Для пущего веселья не хватает квестов: «Не промахнуться», «управиться за 60 секунд», «ДВОЙНОЕ ПОСЕЩЕНИЕ» и т.д.: )
Да, а потом соберут статистику, скрестят со статистикой активноси в браузере и вычислят главного сруна и писуна.

Кто то же не сможет расслабится из за того что за ним косвенно но «следят». От этого в туалете не будут долго находиться и как следствие скорости — лужи перед унитазом)

Как сейчас помню хотели с админом найти у какой заразы прицел сбит.
UFO just landed and posted this here
К сожалению разместить датчик уровня в мочевом пузыре не так просто.
Фиксированный по времени прогресс бар… с катапультой )
UFO just landed and posted this here
А за 0 что примим?) Может у посетителя простатит и он на пару капель пришел?)
Можно по среднему времени продвигать прогрессбар. Ну а если «клиент» сидит больше положенного, то вводить штрафные санкции ))
Можно сделать по примеру TeamCity: собирать статистику по времени выполнения и выводить прогресс относительно ее )
Еще нужно отслеживать тех, кто не смывает и руки после сортира не моет и вывешивать их на доску позора.
Ну что за туалет в ІТ-компании без WiFi?!
Так доберемся скоро до диаграмм использования туалета, автооповещении о заканчивающейся бумаге и кнопка приглашения уборщицы (последняя затея, кстати, неплоха).

Хотя, если с другой стороны, раз мы в таком месте проводим 6 месяцев своей жизни, почему бы не привлекать технологии и сюда, что японцы и так давно уже делают?)
может попробовать повесить датчик на защелку? Её только изнутри можно закрыть = внутри кто-то есть.
Ваш комментарий самый разумный, но тогда не нужна ардуина и датчик освещенности.
A как «датчик на защелке» будет слать данные на компы и телефоны сотрудников?
Занятость еще можно определять инфракрасным датчиком типа такого

> Sharp GP2Y0A02YK0F has an analog output that varies from 2.8V at 15cm to 0.4V at 150cm with a supply voltage between 4.5 and 5.5VDC
Это датчик для измерения расстояния. Вы хотите просвечивать место над унитазом, и если расстояние меньше, чем расстояние до стены, то считать занятым? А если человек стоит?
Освещённость им тоже можно мерить. Вопрос только в том как использовать.
Не получится, там стоит фильтр пропускающий только все то, что ИК и ниже.
А отковырять его нельзя?
Не в курсе. Возможно, если сенсор не залит этим самым фильтром, то можно.
Все равно расстояние будет отличным от пустого помещения, а если помещение не большое, то стоять так, чтобы не попасть в поле зрения датчика нужно постараться. Зато решится проблема с забытым светом и можно рассылать уведомления «помоги сэкономить электричество — сходи выключи свет». А если прикрутить метки на вход, то можно рассылать «Увидишь Васю, скажи ему, что свет не выключать плохо».
… а если помещение не большое, то стоять так, чтобы не попасть в поле зрения датчика нужно постараться.

А за это будет даваться ачивка «Невидимка» ;)
А если стоит — то просто запускать таймер на разумный интервал (от минуты для здоровых молодых людей с брюками на молнии до пяти минут для старпёров с пуговицами и проблемами мочеиспускания)
Что вы имеете против джинсов с пуговицами на ширинке? :)
Можно повесить над дверью и направить на унитаз, тогда он будет срабатывать и на сидящего, и на стоящего человека.
У данного датчика максимальное измеряемое расстояние, как я понимаю, составляет 1,5 метра. Может не хватить. Придется использовать ультразвуковой.
Мерять не от стены до стены а от спинки унитаза до двери. Но мне всё-таки больше датчик объёма по душе, вряд ли на толчке все как статуи сидят. Ну а лучше объединить датчики для пущей надёжности.
Проще всего кнопку подогнать к щеколде.
Вы самое главное забыли сделать: автоматический постинг в Твиттер!
Главное, чтоб не в Инстаграм.
Я думаю система получит большее распространение, если в качестве датчика использовать Android смартфон/планшет с камерой. Практически в любом IT офисе можно найти человека, у которого есть ненужный старый Android девайс.
Поставить его на зарядку в туалете и камерой измерять освещённость. Я думаю приложение получится тривиальным и снимет необходимость заказывать pcduino.

Кто возьмётся реализовать?
Сопрут ваш телефон
Ну, в офисах обычно все свои и никто воровать не станет. Но в качестве антивандальных мер можно снять экран/корпус, прикрутить к стене саморезом и спрятать всё в какой-нибудь невзрачный корпус.
Еще OpenCV, распознавание лиц и тогда можно будет гораздо точнее определять занятость и отслеживать кто именно забыл выключить свет, отправлять смс забывчивым и т.п.
А по сигналу с микрофона отслеживать кто не моет руки и не смывает за собой!
Ещё нужна возможность подключения датчика метана! Для определения безопастно ли заходить в туалет в данный момент или нет.
Ну и включать вытяжку если данный параметр превышает какое-то пороговое значение.

А пороговое значение определить опытным путем…
А в случае «засиделся дольше 5 минут», автоматом в паблик инстаграммится лицо сидящего с соответствующей подписью.
И в соцсетях его выставлять статус: «Какаю 43 минуты». :)
У нас в тренажерке вот такое висит — вроде работает)
image
Добро пожаловать в Интернет.
Практика показывает, что подобных лозунгов нужно пару десятков. И менять где-то раз в две недели.
Один и тот же текст посетителям надоедает и перестаёт работать.
Ну, испортили весь цимус. После «просим смывать за собой» должна стоять подпись «Администрация» печатным шрифтом. А ниже — рукописно, про цели, ожидания и ёршик. И подпись «уборщица».
UFO just landed and posted this here
А не проще ли устройство подключить параллельно лампочке? Тогда если опросилось, то туалет занят, если нет — свободен. Погрешность, конечно, вносится временем поднятия сети, но не нужно датчиков. Но ваш вариант хорош в плане удовольствия от реализации и масштабируемости :)
Две вещи, убивающие идею:
1. Лампочки, забытые во включенном состоянии
2. Туалеты с окном — в дневное время
ага, это точно. Предлагаю прикрутить вебку, направленную на дверь, и с помощью OpenCV по положению ручки анализировать закрытость двери изнутри. Беспроигрышный вариант! :)
Столько идей, и никто не посоветовал просто установить ещё один унитаз image
Это дороже, чем купить плату и датчик ;)
Ах вот что имели в виду строители небезызвестного недавно нашумевшего «туалета на двоих»!.. :)
Распараллеливание процессов IRL.
А может просто датчики давления? Датчики на полу(под ковриком) и под ободком унитаза? :D
Это вы чего?

$this->data = exec("cat /proc/adc".$this->port);

Смеётесь что ли? PHP и сам отлично умеет файлы читать:

$this->data = file_get_contents("/proc/adc".$this->port);
Правильно ли я понял, что клиенский софт обращается напрямую к ардуине с датчиком, на которой установлен веб-сервер?

Предвижу проблемы в такой архитектуре: нехватка производительности самой ардуины, узкий или нестабильный канал до датчика — могут привести к нестабильной работе сервиса.

Чтобы решить эти проблемы, предлагаю перейти на трехзвенную архитектуру:
1. датчик (или датчики) — та самая ардуина или прибитый гвоздем старый android, постит информацию на сервер
2. сервер — размещен в быстром стабильном дата-центре, хранит информацию со всех датчиков и отдает ее клиентам
3. клиенты (iOS, Mac OS и т.п.) — получают данные от сервера (и кстати, push неплохо было бы сделать)

Кроме повышения надежности, такая архитектура позволит развязать стандарт взаимодействия сервера с датчиком и сервера с клиентом. Таким образом, можно будет, не меняя софт на клиенте, подключать новые типы датчиков (например, работающие только по poll-режиму или использующие нестандартный канал типа sms).
Хороший поинт. Если проект выйдет за рамки хакатона — обсудим.
Комментарии прелестны!
Но мне кажется Вы усложняете, может поставить просто датчик на задвижку что изнутри?
Мы думали над этим. Но задвижки везде разные, к тому же возле двери не очень удобно монтировать устройство.
Но идея такая была, да:)
«Ваша очередь через 5… 4… 3… 2… 1 минуту» — и тут тебе по работе звонок на настольный телефон прилетает!
«Вы пропустили вашу очередь, в виде штрафа теперь вы сможете пойти в туалет через 43… 42… 41 минуту»

Затем начнутся ответы по телефону «не могу говорить, моя очередь подходит, не хочу получить штраф и iКарму». Затем пойдут идеи сделать на входе в туалет QR-сканер, и печатать очередникам «билеты», чтобы пускать именно того, кому сейчас пришла очередь… А ведь еще можно внутри туалета повесить моник с клавой, выводить юзеру на экран персонализированный контент, в завосимости от личности, времени в туалете за сегодня, за неделю, числа коммитов за сегодня и за 7 дней по прямой работе…

P.S. Один вопрос — там что, один туалет и 100 человек в него очень хотят, что нужно было столько труда тратить, или это все потому, что автор, написавший свое имя латиницей, не знал, чем заняться в течении хакинтона? )
Нет, не 100, всего 15. Хакатоны собираются just for fun (прошу прощения за латиницу), и «столько труда» было потратить действительно интересно, никто ведь не претендует на «изобретения года».
Не понял зачем это в уведомлении: «Был занят 0:13». Это чтобы показать, что последний человек успел за 13 секунд?
Вы ситуацию однобоко рассматриваете.
У нас вот в туалете (это только мужской) 5 кабинок и два писуара. Свет горит постоянно. Выключается общим выключателем, соответственно, в течение дня он никогда не выключается. Как тут быть?
Ставить детектор веса по круг унитаза и детектор жидкости в писуар.
Ждем релиза датчика для мочевого пузыря)
pcduino это какой-то оверкилл для такой простой задачи.
Да, видели этот пост пару недель назад. Хорошая идея приходит сразу нескольким:)
Тупиковый путь. Великолепный пример реализации без привязки к реальной жизни.

Будет работать только первое время в небольшом коллективе.
Как только люди начнут завязываться на индикатор, то происходит вот что:

Индикатор гаснет (семафор зеленый), одновременно несколько человек, которые ждали очереди, срываются с места. Таким образом один идет в туалет, а остальные остаются с помытой шеей.
Разбредаются по местам. И с удвоенной энергией начинают мониторить семафор. Во второй и все последующие разы количество желающих будет увеличиваться.

Когда нет электронного датчика, естесвенным регулятором является равномерный генератор импульсов на основе датчиков кишечника отдельно взятого индивида.

Удачи.
Раз уж заговорили о датчиках, то тогда самым выгодным с точки зрения организации процессов будет запуск перистальтики в нужное специально отведенное этому индивиду время.
Sign up to leave a comment.

Articles