Покерный RFID-стол с REST-общением

ksnow-be

✩✩✩✩✩✩✩
13 Авг 2024
3
0
Всем доброго дня.

Задача:
Собрать систему передачи данных по ситуации на покерном столе на удаленный сервер.
У каждого игрока за столом есть свое место, именуемое "бокс".
При раздаче карт, игрок откладывает их в специально отведенное для них место, карты лежат рядом друг с другом.
Карты будут снабжены либо RFID-стикером на каждой карте, либо будет куплена специальная RFID-колода.
На каждом боксе будет расположено по 2 RFID-читалки с парой диодов индикации (об этом позже).
Всего 10 игроков, то есть 20 читалок только под игроков.
В центре стола будут располагаться 5 читалок под флоп, терн, и ривер. То есть просто 5 "общих" карт, от которых идет игра.

Как вижу это я:

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

Вся эта информация уходит в "головной"контроллер, который должен уметь в REST и передачу данных по HTTP или сокетам.
Мне сказали для этого подойдет ESP32.

Во время раздачи некоторые игроки будут отправлять свои карты в пас.
Этот сценарий надо проговорить, но суть такая, что контроллер читалок игрока который выбывает из раздачи перестает видеть сигнал с читалок, ждет секунд 5, потом врубает диод "не в раздаче", какой-нить красный например.
Общая шина это передает на сервер, сервер рисует нужную графику.

Какие моменты мне непонятны и что я жду от исполнителя:
1) Вопрос с питанием.
По-хорошему, чтобы эта история была автономна и питалась не от розетки.
Если будем понимать что так не получится - окей.
Так же надо понять как питать все компоненты на столе.

2) Выбор оборудования.
Все компоненты, от читалок до контроллеров.
Я не знаю какое решение подойдет для этой задачи.

3) Мобильность
В идеале нужно сделать все так, чтобы это можно было разбирать и собирать без особых трудностей.
Если можно каждый бокс (2 читалки, контроллер и диоды) цеплять по какому-нибудь USB - то вообще сказка.

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

5)Какая-нибудь админка или логгер, чтобы можно было диагностировать это по логам.

Если что, жду всех в телеге: @kl1movich
По срокам не прям горит.
По оплате - в личке или в телеге.

Макетна фото примерный просто чтоб визуал хоть какой-то был
 

Вложения

Геннадий П

★★★★★★✩
14 Апр 2021
1,974
633
45
По-хорошему, чтобы эта история была автономна и питалась не от розетки.
Ага, и чтобы игроки не знали, что у них все карты меченные и читаются столом. :ROFLMAO:
А потом еще можно на сервере куда передаются данные врубить нейросетку и предсказывать ходы подставному игроку.
 
  • Лойс +1
Реакции: Boroda22

wizard suleiman

✩✩✩✩✩✩✩
13 Окт 2023
43
2
@Геннадий П, это его дело что с этим делать... по крайней мере вроде оплата чуть больше чем у обычных "заказчиков" но все равно оплатить цену 100 устройств не хочет как я понял... + надо общаться и вникать что все таки нужно)) сами наверное поймете... могу посоветовать откликнуться, оплата чуть лучше чем обычно, но для меня это все равно оплата едой))) а так все в принципе легко...
 

Krypt0n

✩✩✩✩✩✩✩
3 Авг 2018
12
1
А можно пояснение для тупых, кто в покер не играл? Сколько карт у игрока? Как на слайде по 2? сколько диодов будет использоваться? В тексте упоминаются 2, на слайде их 3 (на каждого игрока).
Нужно ли делать какую-то защиту от тупого игрока, который может положить карты друг на друга?

Протокол общения с сервером уже описан? Или его тоже нужно придумать?

"В идеале нужно сделать все так, чтобы это можно было разбирать и собирать без особых трудностей."
Боксы будут интегрированы в стол? или это отдельные устройства, которые лежат на столе?

Питание центрального модуля (с 5 картами) и игроков предполагается общее? Или они все питаются не зависимо и просто передают друг другу информацию?
 

ksnow-be

✩✩✩✩✩✩✩
13 Авг 2024
3
0
@Krypt0n,

"Сколько карт у игрока?"
Две, техасский холдем

"сколько диодов будет использоваться? В тексте упоминаются 2, на слайде их 3 (на каждого игрока)."
Обговаривается. Схема представлена для примерного понимания что происходит. Не думаю, что больше трех точно.

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

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

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

"Протокол общения с сервером уже описан? Или его тоже нужно придумать?"
Эту часть я беру на себя.




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

ему, я так понял, и миллиарда мало, он в день на еду больше тратит.
 

Alex_Sen

✩✩✩✩✩✩✩
30 Окт 2022
18
4
Это вы зря так Он как раз его сделать и мог. Так и будете носиться со своим проектом по форумам. Спецам платить надо и очень хорошо.
 

ksnow-be

✩✩✩✩✩✩✩
13 Авг 2024
3
0
@Alex_Sen,

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

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