www.open-tager.ru

открытый лазертаг форум
Текущее время: 23 ноя 2024, 17:42

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 169 ]  На страницу Пред.  1 ... 13, 14, 15, 16, 17
Автор Сообщение
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 08 апр 2017, 18:41 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Поздравляю!

Цитата:
Баг был непростой, и связан с data race между прерыванием UART и основным циклом обработчика событий.


Можно для тупых подоходчивей? :?


Цитата:
Поэтому если у нас 10 датчиков, и попали только в один, в худшем случае повязка узнает об этом через 0,03 с.


Ситуация интересней, когда два попадания от разных игроков, и первый пакет прилетел чуть раньше - на 0,01 с, к примеру.
Честно было бы отдать "предпочтение" тому выстрелу, который раньше прилетел.
Но как решить задачу "какой раньше" при таком режиме опроса (последовательном)?

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 09 апр 2017, 10:12 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
Цитата:
Баг был непростой, и связан с data race между прерыванием UART и основным циклом обработчика событий.

Можно подоходчивей? :?

"Data race" или "гонка данных" - это когда два или более потока пытаются работать с одними и теми же данными одновременно, и получается не очень) Даже если нет ОС, в любой момент может сработать прерывание, и прервать текущий поток. Вплоть до того, что если у вас в основном потоке написано counter++, и в прерывании counter++, то результат может быть как +2, так и +1, а в сложных случаях и +0.
У меня в редких случаях приемный буфер сбрасывался вместе с ещё не прочитанными полезными данными. Там была проблема с таймаутами. Есть дешевое решение - запрещать прерывания в критичных местах. Но лучше стараться обходиться конструкциями, в которых блокировки не требуются. Поскольку у меня код для работы с шиной выполнен в виде библиотеки, которая не должна зависеть от железа, не хотелось пользоваться такими низкоуровневыми вещами, как запрет прерываний. Так и получилось, сейчас все работает нормально.
Pingvin писал(а):
Ситуация интересней, когда два попадания от разных игроков, и первый пакет прилетел чуть раньше - на 0,01 с, к примеру.
Честно было бы отдать "предпочтение" тому выстрелу, который раньше прилетел.
Но как решить задачу "какой раньше" при таком режиме опроса (последовательном)?

Пакет выстрела MilesTag2 занимает от 0,019 до 0,028 с. Если стреляют из одной стороны, в большинстве случаев ни один датчик не примет ничего хорошего из-за наложения сигналов, это куда большая проблема. А если выстрелы разнесены больше, чем на 0,03 - все отработает как надо.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 05 май 2017, 22:08 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Новости проекта
Электроника
Наконец-то пришли платы, и я запаял 3 умных датчика. Протестировал совместную работу - никаких нареканий, на общей шине уживаются прекрасно, никакого лага, пропущенных сообщений и т.п.. Отличить от "глупых" на вид невозможно, только проводов меньше! :)
Плата подходит по корпус от LW. Микроконтроллер прекрасно паяется пастой и феном, ножки корпуса TSSOP-20 относительно редкие, ничего не слипается. В итоге пайка занимает примерно столько же времени, что и для тупого датчика, и время определяется, в основном, пайкой проводов и TSOP-а.
Вот так выглядит запаянный датчик:
Вложение:
1 сенсор.JPG
1 сенсор.JPG [ 139.06 KiB | Просмотров: 11492 ]


А вот так - "гирлянда" в корпусах LW без стёкол. Обратите внимание на коннектор - тот самый, про который писал выше.
Вложение:
3 сенсора.JPG
3 сенсора.JPG [ 136.22 KiB | Просмотров: 11492 ]


Корпуса в стиле DIY
Тестирую корпуса из оргстекла, собранные по слоям. Выглядят довольно приятно. Провел краш-тест: корпуса без склеивания (только стянутые двумя винтами) от падения на бетон со второго этажа не ломаются. Но если бросить с силой, расколоть можно.
Резку стекла лазером делают в любом городе за недорого и в любом количестве. Куда дешевле, чем фрезеровать. На мой взгляд, корпуса такого типа пригодны не только для HSL, но и в прокате выживут.
Вложение:
Корпус.JPG
Корпус.JPG [ 115.74 KiB | Просмотров: 11492 ]


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 06 май 2017, 00:12 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 07 апр 2011, 18:05
Сообщений: 3669
Такие корпуса видимо потяжелее будут )


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 06 май 2017, 00:54 
Не в сети
Старожил

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

Весит 22 г (в то время, как LW весит 8 г). Тяжелее, но не критично.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 06 май 2017, 00:55 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
MidnightDreamer писал(а):
Такие корпуса видимо потяжелее будут )

Зато можно сделать хитрые "линзы" :)
Изображение

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 06 май 2017, 10:05 
Не в сети
Аксакал форума

Зарегистрирован: 07 фев 2012, 13:03
Сообщений: 2294
Откуда: Полтава
Alexies писал(а):
Тестирую корпуса из оргстекла, собранные по слоям.


Один недостаток у таких корпусов: для гарантированного исключения мертвых зон на повязке их потребуется не менее 5 шт.

_________________
Лазертаг - приходите к нам с друзьями, а лучше со своими врагами.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 06 май 2017, 17:21 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Отлично, поздравляю!
Ещё один малюсенький шаг - и получим беспроводные датчики! ;) :)

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 08 май 2017, 19:53 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
Ещё один малюсенький шаг - и получим беспроводные датчики! ;) :)


ИМХО, беспроводной датчик не нужен. Он существенно менее удобен, менее надежен и более дорог. Вот основные минусы:
  • Питание датчиков. В каждом будет своя батарейка. Эти батарейки будут садиться в разное время. Заряжать нужно сразу все датчики и до максимума, поскольку подзаряжать по одному придётся практически постоянно. Если использовать проводную зарядку, то будет чистый геморрой: на 5 датчиков подключать 5 проводов. Использование беспроводной зарядки требует во-первых приемной части в каждом датчике, которая на данный момент не дешевая, во-вторых правильной ориентации источника и приемника энергии. То есть нужны неочевидные телодвижения, которые окажутся даже сложнее, чем подключить провод.
  • Пусть я снял датчики с двух повязок для зарядки. Зарядил. Какой датчик откуда, как не перепутать? Ну а если беспроводные датчики не снимаются с повязки или жилета, у них в принципе нет никаких преимуществ.
  • Включение датчиков. На каждый приделать выключатель? Это глупо. Держать их в спящем режиме? Если радиомодуль принимает, то всё равно заметно потребляет. Батарейка типа CRxxxx высадится за неделю-другую ожидания (вспомните беспроводные мыши: там пальчиковые батарейки, и если мышь не отключить выключателем, за пол года они садятся. А у CR-ки на два порядка меньше ёмкость). Может быть, включать ИК-сигналом? Так то же самое, плюс нужен пульт и нужно попасть в каждый датчик.
  • Загрузка радиоканала. Общение каждого игрока с каждым своим датчиком увеличит число коллизий и увеличит средние задержки прохождения пакетов. А если использовать дополнительный физический канал - придется ставить второй радиомодуль, что удорожит конструкцию.
  • Датчик будет существенно больше. Уже не засунуть в корпус от LW (это неплохой "стандарт" размера).
  • Цена. Особенно если делать беспроволочную зарядку, себестоимость только электроники (по розничным ценам) будет рублей в 300.

И ради чего это? Какие преимущества беспроводного датчика?
  • Незначительно проще монтаж
  • Нет провода, идущего к жилету. Но тут нужен либо радиожилет с едмным питанием, либо просто "телефонный провод" к повязке. Люди - не совы, и голову на 270 градусов не поворачивают =)
  • ???

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


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 169 ]  На страницу Пред.  1 ... 13, 14, 15, 16, 17

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


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

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


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

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