{"id":14275,"url":"\/distributions\/14275\/click?bit=1&hash=bccbaeb320d3784aa2d1badbee38ca8d11406e8938daaca7e74be177682eb28b","title":"\u041d\u0430 \u0447\u0451\u043c \u0437\u0430\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u044b \u0430\u0432\u0442\u043e?","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"f72066c6-8459-501b-aea6-770cd3ac60a6"}

Пол — это лава: история разработки прототипа интерактивной светодиодной игровой платформы

Дурная голова рукам покоя не даёт… история началась несколько месяцев назад: я увидел в интернете забавное видео игры в комнате с пиксельным светодиодным полом и решил сделать подобное для своих детей. За эти месяцы я получил массу удовольствия от процесса разработки и даже заразился идеей масштабирования проекта, но обо всём по порядку! Внимание, ниже будет много фото!

Идея

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

Пара слов обо мне

Пользуясь случаем, позвольте кратко представиться, так текст будет менее обезличенным.

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

Меня весьма вдохновляет прорабатывать полный производственный цикл изделия: от разработки схемотехники и написания низкоуровневого ПО на микроконтроллеры до продумывания конструктива и поиска редких метизов для сборки (это когда ты немного ошибся в 3D модели крепления датчика, а их уже напечатано более 320 штук *facepalm*).

На VC публикуюсь впервые, раньше немного писал на Хабре (аля Как я в армии в экселе сетевого Бомбермена писал или Как банкоматы взрывоопасным газом накачивал), теперь решил попробовать VC. Будем знакомы!

Концепция

Вот примерный концепт того, каким я видел проект:

Игровая комната:

  • пиксельный RGB-светодиодный интерактивный игровой пол с адекватным временем реакции на нажатие;
  • настенные кнопки для разнообразия игрового процесса;
  • табло с информацией по игре (название игры, общее время, время этапа, очки, жизни и т.п.);
  • колонки со звуковым сопровождением игры (озвучивать ошибки/победы/поражения, называть цели этапов, цвета и прочее).

Игровой контроллер:

  • приёмопередатчик для шины данных;
  • Ethernet / Wi-Fi канал для связи с внешним миром;
  • аудио выход для звукового сопровождения;
  • видео выход для табло.

Админ интерфейс:

  • отображение текущего состояния платформы и информации по игре;
  • запуск/остановка игр;
  • индивидуальная настройка пикселей (назначение адресов, коэффициентов, калибровка, дефектовка и т.д.);
  • конструктор игр;
  • всякого рода журналирование (игры, логи контроллера, ошибки и пр.).

Основная цель: на старте заложить техническую возможность масштабирования платформы до размеров средней комнаты ~20-30 м2. На этом этапе лбами сталкиваются проблемы частоты обновления платформы и надёжности связи. По своей сути это взаимовытесняющие вещи: хочешь надёжно — пожертвуй скоростью, хочешь быстро — будь готов к потерям данных. Я не хотел тупо гнать сигнал через адресную ленту на базе WS2812B, это путь в никуда.

Скриншот из видео Activate Games

По итогу всех изысканий, в качестве интерфейса связи к пикселям, мной была выбрана шина CAN, я считаю она идеально ложится на вышеизложенную концепцию:

  • количество устройств в одной подсети может достигать до 120 шт. При группировке по 4 пикселя это обеспечит мне теоретический предел в 476 пикселей или примерно 34 м2, чего более чем достаточно на начальном этапе. Далее можно расширять путём введения дополнительных подсетей или увеличения количества пикселей в группах;
  • скорость передачи данных до 500 Кбит/с на 100 метров кабеля, чего как раз должно хватить, чтобы окольцевать 34 м2 площади. В эту скорость для тех же 476 пикселей, в зависимости от выбора протокола цветопередачи, можно будет уложить от 20 до 80 кадров в секунду;
  • возможность выстраивания приоритета сообщений в сети и разруливание коллизий через аппаратный механизм арбитража, что хорошо ложится на концепцию быстрого реагирования на нажатия. Короче говоря, сообщения о нажатии отправляются в шину вне очереди;
  • достаточно устойчивая связь вследствие использования дифференциального сигнала;
  • широкое распространение и дешевизна микросхем, что немаловажно.

Пессимистично делим все теоретические пределы на 4 и всё равно остаёмся в рамках разумного, жить будет. Поехали дальше!

Пиксель

Пиксель представляет собой классическую рамку с боковым расположением светодиодов, накрытую оргстеклом. Рамку выгрызали на ЧПУ фрезере из чёрной ламинированной фанеры толщиной 21 мм. Оргстекло мне тоже раскроили на ЧПУ при заказе, так доставка ТК обошлась в копейки, нежели доставлять лист 2х3 метра.

Первая сложность возникает при выборе типа датчика нажатия. Рассматривал несколько вариантов:

  • концевой переключатель;
  • тензодатчики (как в напольных весах).

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

То ли дело работа с аналоговыми тензодатчиками, когда свободный ход практически отсутствует (вспомните ваши напольные весы). К тому же есть пара идей, как применить аналоговый сигнал в играх…

Так и поступил: было решено собирать ~85 напольных весов собственной разработки с проводным каналом связи и RGB подсветкой. Крепления для датчиков рисовал сам и заказывал печать на 3D принтере. Было напечатано около 340 таких креплений. Конструкцией доволен, получилось весьма надёжно и доступно для массового производства, в т.ч. и для литья. Нижняя часть пикселя выглядит колхозно, но это прототип, да простят меня эстеты.

Электронная начинка и встроенное ПО пикселя

Как я упомянул ранее, я сгруппировал пиксели по 4 шт, а значит нужно два вида плат: групповая плата с модулем связи и контроллером и 4 маленьких платы просто с внешним АЦП для датчиков. По итогу я собрал 21 большую и 84 маленьких платы (на фото маленьких — это только половина от общего количества).

Основная идея была сделать пиксель максимально тупым. Он должен принимать/отображать цвет и отправлять нажатие. На словах это просто, а на деле, т.к. работа идёт с аналоговыми датчиками, нужен был периодический опрос с цифровыми фильтрами, всякими коэффициентами к ним, калибровками нуля и чувствительности и т.д., чтобы, в случае чего, можно было с бэкенда подкрутить параметры прямо на ходу, в т.ч. вывести пиксель из игры, если он начал неадекватно себя вести или залип.

Контроллер и управляющее ПО

Сначала у меня была идея делать собственный 3х канальный USB-CAN преобразователь и управлять платформой с обычного компьютера. Я даже успел развести и заказать платы, но потом передумал и в качестве контроллера выбрал обычную Raspberry Pi 4. В ней есть всё необходимое: Wi-Fi, аудио/hdmi выходы, а также к ней продаются готовые модули CAN шины. Сложной математики там нет, так что процессор справляется легко, я даже вывел метрики в админку на всякий случай.

Управляющее ПО писал сам полностью с нуля: фронтенд — Vue.js, бэкенд — Golang, база данных — SQLite. Из того, что реализовано на данный момент:

  • отображение текущего состояния платформы (подсветка нажатий и текущего веса в кг);
  • игровое табло (время, очки, жизни);
  • просмотр информации по каждому пикселю в отдельности и отправка индивидуальных команд;
  • отправка широковещательных команд;
  • вывод метрик контроллера (загрузка/температура CPU, потребление памяти, основные метрики бэкенда);
  • простой конструктор кадров для игр;
  • несколько игровых механик: пол — это лава (нужно собрать все синие, не наступая на красные), море волнуется/пиксель дуэль (соревновательные режимы по сбору своего цвета, побеждает самый ловкий), безопасный цвет (робот озвучивает цвет, нужно успеть его найти и занять), классики (пропрыгать случайный паттерн), несколько демо режимов;

  • старт/стоп/пауза игр с возможностью конфигурации непосредственно в момент старта игры (например, для детей я отключал контроль жизней и увеличивал время этапа);
  • имитация игр мышкой прямо через админку для непосредственного тестирования игры после конструктора (ну или вмешивания прямо в процесс игры… хе-хе, я так помогал своей дочке побеждать пару раз, чтоб не расстраивалась).

Сборка прототипа и выявленные проблемы

Сборка такого количества плат и пикселей в одиночку у меня заняла больше месяца: сверлить, прикручивать, приклеивать, паять, отлаживать и перепаивать сгоревшее. К расстановке компонентов на платы я привлекал даже дочь… как говорится, любишь играть, люби и платы собирать!

Какие ошибки допустил в процессе разработки:

Ошибка 1: Россыпь плат, а не панель

Я торопился и заказал платы не панелями, а россыпью… это было немного больно и приходилось наносить пасту на платы поштучно. Я купил трафаретный принтер для нанесения пасты и мини стол для оплавления припоя, это в десятки раз ускорило процесс. Трафаретный принтер — самоделка одного замечательного человека с ютуба, кому будет интересно, могу дать контакт в комментариях.

Ошибка 2: Оргстекло

Найти оргстекло или поликарбонат подходящей толщины оказалось проблемой. В наличии из импортного ничего нет, толстое вообще не в почёте, а если заказывать, то нужен объём + большие сроки. Взял лист оргстекла от какого-то российского производителя, а оно оказалось недостаточно молочным (см. фото), очень сильно просвечивал источник света, пришлось каждый квадратик вручную дополнительно матовать шлиф машинкой… то ещё удовольствие.

Ошибка 3: Танталовые конденсаторы

Танталовые конденсаторы сами по себе достаточно капризная штука, а заказывать их с Китая было вдвойне ошибкой… брака было около 40%: они просто взрывались при напряжении в половину от номинала. Я проверял их непосредственно перед пайкой, но даже это не помогло… несколько штук вышло из строя прямо в день мероприятия, проработав перед этим около месяца дома. В следующий раз поставлю бочонки, благо высота позволяет, они не так горят.

Ошибка 4: Таблица на фронтенде

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

Ошибка 5: Экономия на протоколе передачи

Цветовые эффекты немного скудные, недостаточная цветопередача, т.к. сэкономил на протоколе. Рассчитать всё в теории — легко, но опыт подсказывал, что теоретические пределы скорости не практике недостижимы, боялся не получить требуемую частоту обновления, поэтому заранее ужимал протокол, хотя при таком размере поля можно было особо не беспокоиться.

Ошибка 6: Размытая граница пикселя и неравномерность засветки

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

Ошибка 7: Дешёвая светодиодная лента

Было куплено около 90 метров "высококлассной" китайской светодиодной ленты… которая оказалась явно б/у, имела разное свечение и много раз перегорала. Но тут вынужденная экономия на прототипе.

Идеи на будущее:

  • Расширение группы до 9 шт. — это будет явное удешевление, повышение надёжности связи за счёт уменьшения устройств на шине и расширение теоретического предела площади игровой зоны;
  • Соты! Очень хочу гексагональное игровое поле, это должно выглядеть весьма круто!
  • Настенные кнопки;
  • Быстрые соединения. Из-за использования в прототипе винтовых клеммников, сборка платформы перед детским праздником у меня заняла около 2.5 часов, что очень много. Буду прорабатывать быстрые соединения;
  • Ну и конечно, разные-разные механики игр! В голове масса идей: всякого рода змейки, пакман, эстафеты, арканоид, захват территорий, повтор рисунка, те же танцы…

Как корабль назовёшь… и заключение

При выборе кодового имени проекта было несколько разных вариантов. Больше всего мне симпатизирует название «Pixel Quest» ввиду широкого распространения в народе понятия «квест-комната». Сразу завёл под это дело домен PixelQuest.ru и, как это водится, отдельный TG канал @pixel_quest для публикации прогресса разработки и дальнейших обсуждений с заинтересованными людьми. Заходите в гости, буду держать в курсе событий!

На VC пишу ради новых знакомств, поиска поддержки и идей для дальнейшего развития проекта. Я технарь, а не предприниматель, и, если честно, плохо представляю, как правильно превратить это в бизнес. Я не умею в эти ваши «найди инвестиции / собери команду / захвати мир» (но это пока что), не умею писать бизнес-планы, хочу просто делать интересный продукт и радовать людей. Буду рад любым советам! Личный телеграм для связи: @AnatoliyB

В ближайший планах найти подходящее помещение у себя в городе (Смоленске) для построения первой комнаты с увеличенной игровой зоной и полноценного тестирования. Хочу развивать идею как по направлению целых игровых квест-комнат, так и небольших игровых платформ 4-6 м2 для установки в детских комнатах или сдачи в аренду на детские праздники.

Итого:

  • Потрачено: пол года жизни и очень много денег
  • Заработано: 0 руб.
  • Удовольствие от процесса разработки и праздника для детей: бесценно!

Спасибо всем, кто дочитал! Пишите свои мысли и идеи игр в комментариях!

Продолжение истории:

Pixel Quest: от прототипа до игрового заведения за полгода

Полгода прошло с момента публикации моей статьи о прототипе интерактивной светодиодной игровой платформы «Пол — это лава». Самое время рассказать, что с проектом и куда движемся сейчас. Мы основали компанию, запустили в Москве первую пиксельную игровую и даже успели стать резидентами Сколково, но обо всём по порядку...

0
151 комментарий
Написать комментарий...
Anatoliy B
Автор

А в случае проигрыша будет опускаться потолок 🤣

Ответить
Развернуть ветку
Максим Жук

это уже следующий уровень крутости аттракциона

Ответить
Развернуть ветку
Антон Борисов

какие-то игры кальмара получаются)

Ответить
Развернуть ветку
2 комментария
D.

Добро пожаловать в игру! Вообще такую тему нужно продавать эйчарам, чтобы на собесе смотрели как кандидат принимает решения и отвечает на вопросы, бегая по квадратикам.

Ответить
Развернуть ветку
1 комментарий
Прокофьева Аза

тогда лучше заранее предупредить об этом))

Ответить
Развернуть ветку
3 комментария
Timur Agaev

это уже какая-то пила

Ответить
Развернуть ветку
Слегка Придурковатый

Стоит признать: это самый охуенный пост в этом году.

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

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо 🤓

Ответить
Развернуть ветку
Лев Аристов

"К расстановке компонентов на платы я привлекал даже дочь… как говорится, любишь играть, люби и платы собирать!"-с такой установкой ,дочь далеко пойдет

Ответить
Развернуть ветку
Anatoliy B
Автор

В своё оправдание скажу, что ей было интересно) она как раз увлекалась подобными детскими мозайками, на которых стразики пинцетом расставлять надо

Ответить
Развернуть ветку
Сергей Утин

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

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо за отзыв! Эмоционально очень зацепил ваш комментарий... я не стал упоминать это в статье, но у моей младшей дочери есть отклонения (ДЦП, правосторонний гемипарез), надеюсь удастся применить игру в том числе и в лечебных целях, когда она подрастет

Ответить
Развернуть ветку
1 комментарий
Полина Антонова

Разработка - бомба! Для большой компании то, что надо. Постарались на славу !

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо! 🤝 Будем думать, как это развивать!

Ответить
Развернуть ветку
Ян Лус

сколько же труда вложено,получилось супер!

Ответить
Развернуть ветку
Anatoliy B
Автор

Да, было сложно, но интересно

Ответить
Развернуть ветку
1 комментарий
Vpcoder 0 0

По протоколу, не совсем понял идеи с "опрашиванием" пикселей. Пиксель это глупое устройство, нельзя его опрашивать (в случае когда у нас сотни устройств, перебор устройств займёт слишком много времени, за которое половина пикселей уже сменит состояние), он сам должен слать данные, событийно, без спама, только по факту смены состояния. Если сервер идёт к пикселю в фиксированный интервал времени и спрашивает - а что у тебя с состоянием? - это архитектурная ошибка для системы с сотнями пикселей. Опционально пиксель может получать свойство от сервера (например цвет).

По таблице - не надо рисовать всю таблицу, нужна двойная буферизация, нужен каллбек который будет обновлять конкретный пиксель в таблице по событию от пикселя, не должно быть никаких проблем со скоростью обновления (не те масштабы, даже если пикселей/групп будет под сотни штук), если они у вас есть - что то не так сделали (возможно делаете новый table, и просите всю таблицу перерисовывать по всем пикселям). Не принципиально как вы этот пиксель отображать будете, можно и графикой, а можно оставить table.

Ответить
Развернуть ветку
Anatoliy B
Автор

Конечно вы правы, делать опрос пикселей было бы неправильно. Я попробую переписать те абзацы про связь, видимо не совсем корректно описал, раз возникло такое недопонимание. Я почему и выбрал CAN шину: там есть арбитраж сообщений на аппаратном уровне, таким образом событие нажатия имеет более высокий приоритет, чем пакет с цветом от бэкенда, и будет доставлено по событию в кратчайшие сроки.

По поводу фронтенда согласен, где-то моя недоработка ввиду нехватки опыта.

Ответить
Развернуть ветку
2 комментария
g1mb0s

Отличный проект и великолепная статья! Давно такого удовольствия от VC.ru не получал. Спасибо.

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо за положительный отзыв!

Ответить
Развернуть ветку
Маргарита

А пухляшей потянет? 😁

Ответить
Развернуть ветку
Anatoliy B
Автор

Хороший вопрос! Я забыл описать это в статье: каждый датчик расчитан до 50 кг, т.е общий вес на пиксель может достигать 200 кг.

Ответить
Развернуть ветку
9 комментариев
ZIPA

Вот это классно! Я кстати до сих пор иногда на некоторых типах покрытий стараюсь шагать только на плитку не наступая на стыки ))

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Anatoliy B
Автор

В душЕ мы все немного дети!

Ответить
Развернуть ветку
Валентин Потапов

Сделать лендинг и принимать предзаказы. В чем видите проблему ?

Ответить
Развернуть ветку
Anatoliy B
Автор

Руки пока не дошли... не особо умею в дизайн и нет бюджета на дизайнера. Изучал техническую сторону реализации

Ответить
Развернуть ветку
2 комментария
Кирилл Добряков

даже взрослым такое интересно,если добавить танцы и крутую музыку

Ответить
Развернуть ветку
Anatoliy B
Автор

Это да, родители тоже были в восторге!

Ответить
Развернуть ветку
1 комментарий
Евгений В.

Аплодирую стоя 🤝
Очень круто! Влад Бумага поперхнулся чипсами от удивления)
Уверен, что личка у вас завалена предложениями 😉

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Evil Pechenka

Подскажи, пожалуйста, а в каком сервисе ты эту схемку рисовал?

Ответить
Развернуть ветку
Anatoliy B
Автор
Ответить
Развернуть ветку
1 комментарий
Точка Лагранжа

Офигенная тема. И ресурсов много уже вложено.
По пластику - для улучшения фрикционных свойств можно оклеить пленкой с микрофактурой, она изностостойкая, нужно просто загибать край конечно.
По алгоритмам игр по-моему - бездонные перспективы. Кроме лавы, например бегущие стены, и нужно пробежать от края до края не наступая на них как в Индиане Джонсе. Или Наоборот плывыущие островки определенных цветов, прыгая по которым нужно добраться из одного угла в другой быстрее соперника. Утащил в закладки. Успехоф.

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо за развернутый комментарий по теме. Да, игр можно придумать огромное множество, только успевай программировать! Я уже написал движок, который позволяет делать игры с движущимися частями, на видео, кстати, они видны. Буду реализовывать и другие игровые механики

Ответить
Развернуть ветку
Сергей Леопольдович

Так, а где можно погоняться за пикселями на полу или пока только как прототип?

Ответить
Развернуть ветку
Anatoliy B
Автор

Это пока только прототип и мне не известны подобные заведения в РФ. Есть в Канаде и Польше

Ответить
Развернуть ветку
4 комментария
Александр Кузнецов

Круто!
Для ивентов залетит на ура
Если довести до ума реализацию под "коммерцию", то хоть завтра можно продавать на ивенты
Если буду полезен - пишите

Ответить
Развернуть ветку
Гора Жора

Вот это прелесть конечно. Всем бы такого папу..

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо, приятно! Как и любому родителю, хочется дать им отличное детство🤞

Ответить
Развернуть ветку
2 комментария
Максим Жук

классный опыт, жаль, что я не настолько рукастый... и слишком ленивый

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо! Аппетит приходит во время еды... сам не думал, что доделаю до конца

Ответить
Развернуть ветку
1 комментарий
Igor Batkovich

Для этого проектор сверху вниз на пол и камера.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Anatoliy B
Автор

Рад стараться 🙂

Ответить
Развернуть ветку
Серёга Гы
>> Настенные кнопки

И потолочные! Ну, или типа болтающихся светильников на длинном шнуре.

Ответить
Развернуть ветку
Серёга Гы

Плюс "лазерные" лучи между стенами и дым-машину

Ответить
Развернуть ветку
Anatoliy B
Автор

Супер идея, спасибо!!

Ответить
Развернуть ветку
Bo.G

Супер!
Сам тожеp хоббийно колхожу девайсы для дома полным процессом (от схемотехники до ПО). Но мои умения в электронике на очень среднем уровне.
Всегда восхищаюсь такими как Вы! Умеющими работать руками и головой.
Самое сложное для меня - это выбор корпуса и его поиск))
чтобы был адекватен и ценник и качество.
Искренне желаю Вам успеха! И доработки до промышленной серии

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо, коллега по цеху 🤝
Насчет корпусов - да, очень часто разработка устройства начинается от обратного: сначала нужно найти корпус и продумать конструктив, а потом уже делать под него платы. Но в данном случае мне повезло, ибо платы можно было не прятать внутрь корпуса.

Ответить
Развернуть ветку
3 комментария
Андрей

Крутой проект!!! Автору удачи)!!!

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо ✌️

Ответить
Развернуть ветку
Юрий Хрусталев

Вот это класс ,кропотливая работа на самом деле ,но это того стоит

Ответить
Развернуть ветку
Роман Рабочий

Отлично. Просто ох#енно, лови лайк.

Ответить
Развернуть ветку
Мария Овчинникова

Я бы и сама в такую сыграла 🤪

Ответить
Развернуть ветку
Анна Литвинко

Больше половины не поняла, но прочитала с удовольствием. Приятно, что есть такие увлечённые люди 😍
Соседям автора не завидую. Но было бы круто пустить это дело на поток)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Bo.G

"Соты! Очень хочу гексагональное игровое поле, это должно выглядеть весьма круто!" - Вот читал и подумал про это. Соты хорошо могут ложиться и в сложные поверхности.

"Быстрые соединения. Из-за использования в прототипе винтовых клеммников, сборка платформы перед детским праздником у меня заняла около 2.5 часов, что очень много. Буду прорабатывать быстрые соединения"
Клеммники на защелках.
Коннекторы на шлейфах от частого, простити, передергивания тоже могут отвалиться.
Концы проводов обжать в гильзы и в клеммники.

И еще. Вы очень круты в техническом плане.
Но не забывайте, что мы живем в нашей объективной реальности, где много халявщиков и мошенников.
Обязательно нужно оформить патент на полезное устройство!!!
Обязательно!

Ответить
Развернуть ветку
Dmitriy Vishnevsky

Клёвая задумка, Анатолий!
Вдохновения и успехов в продвижении!

Ответить
Развернуть ветку
Сергей Суслов

Идея супер! Классный стартап!

Ответить
Развернуть ветку
BaiGuiKa

Если исходить из конечной цели - "Организация соревнований по индивидуальному и командному зачёту среди школьников в CubaPix" то можно посвятить этому направлению всё свободное время. В Китае такие площадки уже лет как 10 интерактивные, просто из проектора поступает луч света на пол, стены и потолок, а дети как в игре Марио, просто бегают, прыгают целенаправленно собирают монетки, подарки и бонусы жизни, спасаясь от всяких животных, адреналин зашкаливает от эмоций. Стоимость программного обеспечения и проектора в районе 50 000 рублей.
Главный вопрос любого ноухау это стоимость обслуживания и расходы на амортизацию. Там где срок окупаемости проекта месяц, больше шансов на маштабирование.

Ответить
Развернуть ветку
Родитель 1

Покрытие не слишком скользкое? Кто-нибудь падал?

В целом, очень круто, желаю успехов!

Ответить
Развернуть ветку
Anatoliy B
Автор

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

Ответить
Развернуть ветку
2 комментария
Maxim Syabro

Я бы еще рассмотрел альтернативу в виде пары (или больше чтобы исключить тени) проекторов и несколько камер.
Мне кажется это будет сильно проще масштабировать. Ну и отсутствие движущихся деталей сильно большой плюс

Ответить
Развернуть ветку
Anatoliy B
Автор

Хорошая идея... просто у меня был бэкграунд в электронике и совсем не было опыта в computer vision, отсюда и проект такой 🙂

Ответить
Развернуть ветку
Vpcoder 0 0

Я вот думал что вместо датчиков нажатия можно было бы использовать например дальнометры или фоторезисторы с подсветкой, крепим на дно за пластик, направляем вверх, куда будут приходить ноги, а вся суть будет... в тапочках! Повышающие рефлексию тапочки будут отсвечивать в сторону датчика. Но, я не конструктор, не уверен что это будет проще или дешевле, просто мысли в слух)) Так же, можно было бы датчиком мерить индукцию, а в тапочках использовать маленькую таблетку магнита, вот этот вариант кажется дешевле...

Ну, я к тому, что можно абстрагироваться от понятия "нажатие") Можно считывать факт наличия объекта над пикселем.

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

Ответить
Развернуть ветку
3 комментария
Андрей Ионов

когда уже создадут форд боярд с львами

Ответить
Развернуть ветку
Anatoliy B
Автор

Львов не обещаю, но клетки и опускающийся потолок - можно 😅

Ответить
Развернуть ветку
Лара Брестова-Устинова

Как молоды мы были)

Ответить
Развернуть ветку
Anatoliy B
Автор

Почему же "были"?)

Ответить
Развернуть ветку
Boris G

В какую стоимость квадратный метр такого удовольствия вышел, если не секрет?

Ответить
Развернуть ветку
Anatoliy B
Автор

Числа пока не подбивал... возможно выложу математику позже

Ответить
Развернуть ветку
Veta Ibragimova

Звучит классно все!

Ответить
Развернуть ветку
Anatoliy B
Автор

Я просто не придумал лучшего заголовка для российской аудитории 😁 Все же в детстве любили игру "Пол — это лава"!

Ответить
Развернуть ветку
Денис Пешехонов

Охрененно :) Я сам увлекаюсь электроникой немного, но, наверное, терпения собирать 100+ плат у меня бы не хватило.

Но у вас очень круто вышло, и видно, что аккуратно и с вниманием с деталям.

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо, я действительно достаточно скрупулезно подошел к этому проекту 🤓

А что касается 100+ плат: с трафаретным принтером и мини-печкой это оказалось не такой большой проблемой. А компоненты я расставлял во время скучных митингов 🤫

Ответить
Развернуть ветку
1 комментарий
Bolt-0n

Не лучше было разделить часть с датчиками и часть со световыми приборами на два интерфейса? DMX- для ленты..

Ответить
Развернуть ветку
Anatoliy B
Автор

Думал про два канала и полнодуплексную связь, не нашел преимуществ и в итоге остановился на своём решении.

Ответить
Развернуть ветку
Мимо проходивший

По фронтенду:
таблица = тяжело для браузера, так как он пересчитывает все ячейки из-за "резиновости" таблицы (она всегда есть, такой элемент). А вот таблица на основе div блоков - легко для браузера. Плюс использовать лучше нечто типа React (там virtual dom), тогда браузер будет перерисовывать только тот блок, который нужно поменять (ведь пересчет(поиск) таких блоков делает virtual dom в оперативной памяти). Будет быстро и без использования canvas (с ним можно сильно запарится). Да даже и без реакта, на чистых div должно быть очень быстро.

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо, попробую. Там сейчас Vue.js

Ответить
Развернуть ветку
1 комментарий
Sylvie Jackson

Очень крутой проект! Всегда был интересен вопрос в контексте напольных весов. А стекло безопасное (если на нем бегать, прыгать)?

Ответить
Развернуть ветку
Igor Batkovich

это не стекло

Ответить
Развернуть ветку
Anatoliy B
Автор

Спасибо 😎 Да, в данном случае это толстое оргстекло, оно достаточно крепкое и безопасное. Можно использовать монолитный поликарбонат, он будет еще крепче в десяток раз

Ответить
Развернуть ветку
Сгенерированный Кот

Крутая работа! Вы молодец! Жаль вот только что детям это ненадолго и через несколько десятков игр надоест - знаю по своей дочери. Поэтому желаю успешно продать какому-нибудь ТЦ, где есть парки развлечений!

Ответить
Развернуть ветку
Дмитрий Неизвестный

"блаженство надоесть не может"
я б в такое на улице с детьми гонят с огромным удовольствием
жаль конечно что летом темнеет поздно, но уж ради такого можно и задержаться.

Ответить
Развернуть ветку
Aaron Zipfer

Прототипом данной игры послужило психическое расстройство.)))

Ответить
Развернуть ветку
PriceLoom.com

Отличная задумка, отличная реализация. Напрягает только оргстекло, а если увесистый взрослый с дуру прыгнет. Ноги порежет и пиксель сломает

Ответить
Развернуть ветку
Anatoliy B
Автор

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

Ответить
Развернуть ветку
Alexey Timofeev

Можно ли сделать эту штуку без сложной платформы? Типа эластичную и разворачивающуюся? Или квадраты не выдержат нагрузки? И еще были ли мысли сделать отдельное устройство типа умный квадрат и потом из объединять в сеть?

Ответить
Развернуть ветку
Anatoliy B
Автор

Про эластичную не подскажу, не обладаю подобной экспертизой.
А что вы имеете ввиду под «умный квадрат»? Тут и так получился достаточно умный и самостоятельный пиксель (а точнее по 4 пикселя в группе), которые объединены в сеть по CAN шине.

Ответить
Развернуть ветку
1 комментарий
Владимир Воловцев

Идея интересная для игровых площадок, но не для обычных квартир, если дети прыгают этажом выше.

Ответить
Развернуть ветку
Corbyan

Если использовать резиновые ножки у пикселей то не будет слышно

Ответить
Развернуть ветку
1 комментарий
Gri

Реально крутая идея, молодцы)

Ответить
Развернуть ветку
Ымфкщп

Круто конечно.
Но у меня в пользовании был интерактивный пол из проектора + ИК камеры + ИК фонаря.
Это выглядело проще в плане подхода к устройству пола - все оборудование на потолке.
Но отзывчивость вероятно меньше чем у автора.
Зато чтобы поменять игру нужны только софтовые изменения.
Нет идеальной технологии пока

Ответить
Развернуть ветку
Александр Ковтунов

А точность?
Корпус игрока - больше чем "плитка" в обсуждаемом примере
и т.п.

Ответить
Развернуть ветку
Boris Kotov

Очень круто, вы молодец 👍
Я думаю, достаточно интересно прикрутить музыкальную составляющую к этому проекту. Посмотрите Roli lightpad block ради интереса. Там можно интересные идеи найти по соединению блоков вместе. Также у них есть ряд игр и простенькая студия разработки под это дело. Ну и мобильные приложения, UI - я думаю оттуда можно многое почерпнуть для вашего проекта, так как по сути отличия только в масштабе

Ответить
Развернуть ветку
Андрей Петров

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

Ответить
Развернуть ветку
Александр Ковтунов

Респект и уважуха!

Ответить
Развернуть ветку
Антон Антонов

Надо упрощать и удешевлять кмк. Для простоты развертывания делать гибкие сегменты — заливать светодиоды в полуматовый гибкий полиуретан, избавляться от лишней электроники (тут явно можно сделать проще).

Ответить
Развернуть ветку
Leonid Sobchenko

сама идея крутая - имеется в виду идея о том чтобы превратить пол в некий аналог тачпада а людей и их вес в емкостное нажатие
Но глядя на заглавную картинку я подумал что это реализовано с помощью проекторов, создающих интерактивную поверхность. Когда же я углубился и увидел сколько железа нужно для реализации данной идеи у вас, я несколько поразился.
Может вариант с тензорным датчиком и самый лучший, но вы пробовали по другому проверять наступил человек на плитку или нет, чтобы исключить взаимосвязь вес-срабатывание. а сделать плитку неподвижной, но меняющей цвет.
есть же датчики движения, объема, веса, опять эти проекторы интерактивные как то же понимают где происходит нажатие.
Вы уже прикидывали себестоимость комнаты 34 метра для условного центра развлечений, стоимость сервисного обслуживания и себестоимость игры для конечного покупателя например 5 минут игры?

В любом случае то что вы делаете - это очень круто, желаю вам заработать много денег и сделать много крутых проектов.

Ответить
Развернуть ветку
Leonid Sobchenko

может мвп упростить таким образом без привлечения многоцветности а использовать только вкл и выкл плитку?загорелась плитка - заскочил, или появилась пустая среди всех горящих - заскочил.

Ответить
Развернуть ветку
Крипто-Мойша

Круто!

Ответить
Развернуть ветку
Дмитрий Неизвестный

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

Ответить
Развернуть ветку
Михаил Иванов

Проект огонь!!

Ответить
Развернуть ветку
Nikolay Fedorov

Если нужно, могу помочь с фронтендом, ради фана
Идея очень крутая, готов оказать помощь ))

Ответить
Развернуть ветку
Полина Суворова

Огненная идея, шикарная реализация, крутая статья!
Автору респект!

Ответить
Развернуть ветку
Anatoliy B
Автор

Прошу прощения, тестовый коммент: просто хочу понять, как работают комментарии с сылками на youtube https://youtu.be/J3Z0j-lRbr4

Ответить
Развернуть ветку
Anatoliy B
Автор

Что-то как-то не очень)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
148 комментариев
Раскрывать всегда