www.open-tager.ru

открытый лазертаг форум
Текущее время: 28 ноя 2024, 21:02

Часовой пояс: UTC + 3 часа [ Летнее время ]


Реклама

Правила форума


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



Начать новую тему Ответить на тему  [ Сообщений: 1076 ]  На страницу Пред.  1 ... 65, 66, 67, 68, 69, 70, 71 ... 108  След.
Автор Сообщение
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 01 апр 2016, 20:09 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Сейчас появилось время, активнее доделываю проект. Может кому пригодится, немного хождения по граблям:

Некоторое время назад я обошел баг китайских версий nrf24 - не устанавливающийся флаг TX done по окончании передачи. Стало работать лучше, однако радиосвязь по-прежнему иногда отваливалась. Причём было два варианта бага: связь пропадала просто по истечении некоторого времени, и связь пропадала при интенсивной стрельбе из оружия.

Несколько дней ушло на отладку. Причина проблем была в организации связи с радиомодулем по шине SPI. Поскольку я использую FreeRTOS, я работал в SPI polling mode (это когда нет прерываний, просто в цикле опрашивается флаг окончания передачи). Казалось бы, проблем не будет: другие-то треды в процессе ожидания смогут выполняться. Но в процессе настройки SPI на прием/передачу, скрытой внутри стандартной библиотеки, а также поочередного приёма/передачи байтов с поллингом флага окончания передачи, операционная система может переключить контекст. Такое маловероятно, но - возможно. И иногда это приводит к потере шиной работоспособности. То-ли нужный флаг пропускается, то-ли ещё чего-то, но функции приёма и передачи данных по SPI (что stdperiph, что HAL) зависают навсегда. В итоге тред, который взаимодействует с модулем, заморожен, и работает всё, кроме радио.
Очевидное решение - запретить переключение контекста на время передачи через функции операционной системы taskENTER_CRITICAL() и taskEXIT_CRITICAL(). Но такое решение, конечно же, неприемлемо: в это время не будут работать ни прерывания, ни другие треды, и, например, повязка может пропустить пулю. Тотальная блокировка на время операции ввода-вывода - плохой стиль для систем реального времени.
Чтобы спасти ситуацию, нужно общаться по SPI через прерывания, при этом запуск передачи (короткая операция, просто запись в несколько регистров) выполнять из критической секции. Тогда залипание будет ничтожным (и не зависящим от объёма данных), а прерывания "всё сделают сами".
Сказано - сделано, баг с самопроизвольным отвалом радио пропал. Но остался баг с отвалом при стрельбе! Причина оказалась более прозаичной. Помеха по питанию от ИК-светодиода на максимальной мощности (то около 1,5 А) нарушает обмен по SPI, и снова зависание в ожидании окончания передачи или приёма. Программное решение простое: ввести таймаут на ожидание прерывания от SPI. Если данные не прошли - ну и наплевать, когда теряется один пакет из 200 - нет никаких проблем, ведь есть подтверждения о доставке и повторная передача. А ещё, всё-таки нужен банальный электролит по питанию.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 01 апр 2016, 20:39 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
Alexies писал(а):
....Причина оказалась более прозаичной. Помеха по питанию от ИК-светодиода на максимальной мощности (то около 1,5 А) ....
Скоро Вы ещё прикрутите вибрик для имитации отдачи, и искренне порадуетесь тому сколько он может жрать в момент старта и выдавать взамен сожранного помех :)

_________________
Нет предела совершенству, но ресурсы заканчиваются быстро.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 01 апр 2016, 21:28 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pacifist писал(а):
Alexies писал(а):
....Причина оказалась более прозаичной. Помеха по питанию от ИК-светодиода на максимальной мощности (то около 1,5 А) ....
Скоро Вы ещё прикрутите вибрик для имитации отдачи, и искренне порадуетесь тому сколько он может жрать в момент старта и выдавать взамен сожранного помех :)


Я ставил мощный вибрик, когда ещё использовал отдельную плату усилителя. PAM8610 уходил в защиту, а контроллеру и радио - пофиг :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 07 апр 2016, 12:46 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Время развиваться дальше. У Caustic два нововведения, которые приближают систему к тому, что было запланировано изначально.

Экран
У всех есть экранчики. Все любят экранчики, с эранчиком как-то спокойней. Я решил тоже добавить, чтобы не быть в стороне. Взял самый распространенный и дешевый - монохромный графический LCD от Nokia 5110.

Вот он показывает здоровье, патроны и количество магазинов внутри "Хищника". Наружу пока не вывел.
Это только тестовый вариант, потом будут всякие полоски здоровья и пиктограммы, а пока текст:
Вложение:
2016-04-05+12-23-49low.JPG
2016-04-05+12-23-49low.JPG [ 121.42 KiB | Просмотров: 7681 ]

Экранчик может выводить что угодно, оружие всё что нужно запрашивает по радио автоматически у повязки.

Смена оружия, RFID-метки
С самого начала я хотел сделать безболезненную смену оружия. Сейчас начинаю воплощать это в жизнь. Пока ещё не готово, но базовая часть работает, данные считываются и записываются. План такой: у каждого игрока есть карточка, брелок или браслет, работающий на основе MIFARE MF1S503x (это один из самых распространенных типов, применяется в электронных пропусках, домофонах и московском метро). Стоит копейки. Чтобы привязать оружие к своей повязке, нужно просто поднести к нему брелок. Радиус действия считывателя довольно маленький, так что самопроизвольное переключение на соседа невозможно.

Разумеется, это позволит также реализовывать сценарии. Через карточку можно получать здоровье, дополнительные патроны, "апгрейды", да всё, что угодно.
Вот считыватель подключен к повязке. В принципе они будут поддерживаться и повязкой, и оружием, но в повязке от них мало толку.
Вложение:
2016-04-05+12-24-59low.JPG
2016-04-05+12-24-59low.JPG [ 136.89 KiB | Просмотров: 7681 ]


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 07 апр 2016, 14:17 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
Смена оружия идея здравая и правильная. Но раз делаете с нуля, то мне кажется надо сделать сразу правильно. Безо всяких "подношений" оружия к голове и прочих нелогичных ритуалов.
Принцип должен быть простой - держит игрок оружие в руках - может стрелять (если жив и имеет патроны). Положил одно ружьё, взял другое - стреляет из другого (если есть патроны нужного калибра :) ). Взял в руки аптечку - подлечился, и т.д...
Изображение

_________________
Нет предела совершенству, но ресурсы заканчиваются быстро.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 07 апр 2016, 16:14 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pacifist писал(а):
Смена оружия идея здравая и правильная. Но раз делаете с нуля, то мне кажется надо сделать сразу правильно. Безо всяких "подношений" оружия к голове и прочих нелогичных ритуалов.
Принцип должен быть простой - держит игрок оружие в руках - может стрелять (если жив и имеет патроны). Положил одно ружьё, взял другое - стреляет из другого (если есть патроны нужного калибра :) ). Взял в руки аптечку - подлечился, и т.д...


Спасибо за информацию, интересная технология. Только не могу найти в продаже что-либо кроме development kit-а за $125. Не знаете, где можно достать что-нибудь удобное для разработки подешевле?

Насчёт "правильно" - это ведь не вопрос выбора архитектуры. Пока RFID, а как только будет возможность - сразу на BodyCom перейду.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 07 апр 2016, 17:38 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
Эти микросхемы у Микрочипа и отдельно продавались. Но продаются ли сейчас и стали они популярными - не в курсе. Может так и осталось на уровне "мы это можем".

Интересно, а что получится, если в том же FRID вместо антенны использовать тело человека? Имеется ввиду что приемник имеет свой источник питания, и антенну использует только для передачи данных.

_________________
Нет предела совершенству, но ресурсы заканчиваются быстро.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 07 апр 2016, 20:01 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pacifist писал(а):
Эти микросхемы у Микрочипа и отдельно продавались. Но продаются ли сейчас и стали они популярными - не в курсе. Может так и осталось на уровне "мы это можем".

Интересно, а что получится, если в том же FRID вместо антенны использовать тело человека? Имеется ввиду что приемник имеет свой источник питания, и антенну использует только для передачи данных.


Если теоретически, то получится как раз то, что у микрочипа :)
Только здесь тело человека - это не антенна в прямом смысле слова, а скорее фидер. Вдоль проводящего тела распространяется волна примерно как вдоль однопроводной линии.

На практике, конечно, нельзя взять микросхемы RFID и приделать тело человека вместо рамочной антенны. Приёмный и передающий тракты не будут согласованы с такой нагрузкой, и, скорее всего, сигнал не будет распространяться. А подключить внешнее питание к микросхеме, что внутри карточки, вообще нельзя, нету таких ножек :)

Тогда проще взять тот же радиомодуль nrf24l01 и экспериментировать с размером антенны, соединяя земли через человека. Но результат вряд ли получится стабильным.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 13 апр 2016, 14:28 
Не в сети
Прохожий

Зарегистрирован: 12 апр 2016, 11:01
Сообщений: 5
Откуда: Москва
Alexies, приветствую!

Вы как-то говорили про то, что к Caustic можно будет подключать лазерные модули. Расскажите пожалуйста по подробнее какие излучатели планируете использовать. Много слышал разного про излучатель Полигона, одни говорят это ЗЛО, другие относятся нормально. Самому как-то довелось поиграть на Полигоновском оборудовании с лазерами. Мне понравилось.
Я тут нашел ссылку на форум, где всплыл потенциальный производитель модулей http://m.vk.com/public59418450. Я сам не специалист в области электроники поэтому написал вам, возможно будет полезным.

И еще один вопрос, возможно ли сделать Caustic совместимым с оборудованием Полигона. Я планирую сделать свой личный тагер и играть с народом, но у них у всех Полигон.

С уважением,
MacAlex


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Система Caustic
СообщениеДобавлено: 22 апр 2016, 10:40 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
MacAlex писал(а):
Alexies, приветствую!

Вы как-то говорили про то, что к Caustic можно будет подключать лазерные модули. Расскажите пожалуйста по подробнее какие излучатели планируете использовать. Много слышал разного про излучатель Полигона, одни говорят это ЗЛО, другие относятся нормально. Самому как-то довелось поиграть на Полигоновском оборудовании с лазерами. Мне понравилось.
Я тут нашел ссылку на форум, где всплыл потенциальный производитель модулей http://m.vk.com/public59418450. Я сам не специалист в области электроники поэтому написал вам, возможно будет полезным.

И еще один вопрос, возможно ли сделать Caustic совместимым с оборудованием Полигона. Я планирую сделать свой личный тагер и играть с народом, но у них у всех Полигон.

С уважением,
MacAlex


Я экспериментировал с лазерными модулями со встроенным драйвером с ТТЛ-управлением, как вот эти: http://www.ebay.com/itm/INDUSTRIAL-Focu ... xy8hNRjJLN Они не подошли из-за неполной глубины модуляции. TSOP на них крайне плохо реагирует. К сожалению такой лазерный модуль неразбираем, всё залито герметиком, поэтому заменить драйвер нельзя.

Моя позиция по лазерам такая:
  • Безопасный лазер сделать можно. Безопасность обеспечивается при помощи поглощающих фильтров в первую очередь, чтобы даже при мощности, на которой лазер сгорает, наружу выходило мало энергии.
  • Нужно делать драйвер для лазера, просто подключить вместо светодиода лазерный диод - нельзя.
  • Работать с лазером без профессиональной измерительной аппаратуры - нельзя.
Моя система имеет TTL-выход, кторый можно хоть к драйверу лазера, хоть к драйверу рентгеновской трубки подключить :)
Лазеры обладают кучей преимуществ, и я считаю, что в лазертаге они должны применяться.
Насчёт излучателей Полигона - ничего не знаю, не видел их вблизи. Если они сделали хороший драйвер, провели полноценные испытания в различных условиях - то почему бы и нет.

Насчёт совместимости с протоколом Полигона - насколько я понимаю, там не Miles Tag 2. Я пока поддерживаю только MT2, но в перспективе будет возможна смена протоколов. Инфраструктура в коде проекта для этого уже готова. Другое дело, что у Полигона, вроде, "закрытый" протокол, или я ошибаюсь?


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 1076 ]  На страницу Пред.  1 ... 65, 66, 67, 68, 69, 70, 71 ... 108  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB