www.open-tager.ru http://www.open-tager.ru/forum/ |
|
Умный датчик. Smart sensor. http://www.open-tager.ru/forum/viewtopic.php?f=5&t=4949 |
Страница 17 из 17 |
Автор: | Pingvin [ 08 апр 2017, 18:41 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Поздравляю! Цитата: Баг был непростой, и связан с data race между прерыванием UART и основным циклом обработчика событий. Можно для тупых подоходчивей? Цитата: Поэтому если у нас 10 датчиков, и попали только в один, в худшем случае повязка узнает об этом через 0,03 с. Ситуация интересней, когда два попадания от разных игроков, и первый пакет прилетел чуть раньше - на 0,01 с, к примеру. Честно было бы отдать "предпочтение" тому выстрелу, который раньше прилетел. Но как решить задачу "какой раньше" при таком режиме опроса (последовательном)? |
Автор: | Alexies [ 09 апр 2017, 10:12 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Pingvin писал(а): Цитата: Баг был непростой, и связан с data race между прерыванием UART и основным циклом обработчика событий. Можно подоходчивей? "Data race" или "гонка данных" - это когда два или более потока пытаются работать с одними и теми же данными одновременно, и получается не очень) Даже если нет ОС, в любой момент может сработать прерывание, и прервать текущий поток. Вплоть до того, что если у вас в основном потоке написано counter++, и в прерывании counter++, то результат может быть как +2, так и +1, а в сложных случаях и +0. У меня в редких случаях приемный буфер сбрасывался вместе с ещё не прочитанными полезными данными. Там была проблема с таймаутами. Есть дешевое решение - запрещать прерывания в критичных местах. Но лучше стараться обходиться конструкциями, в которых блокировки не требуются. Поскольку у меня код для работы с шиной выполнен в виде библиотеки, которая не должна зависеть от железа, не хотелось пользоваться такими низкоуровневыми вещами, как запрет прерываний. Так и получилось, сейчас все работает нормально. Pingvin писал(а): Ситуация интересней, когда два попадания от разных игроков, и первый пакет прилетел чуть раньше - на 0,01 с, к примеру. Честно было бы отдать "предпочтение" тому выстрелу, который раньше прилетел. Но как решить задачу "какой раньше" при таком режиме опроса (последовательном)? Пакет выстрела MilesTag2 занимает от 0,019 до 0,028 с. Если стреляют из одной стороны, в большинстве случаев ни один датчик не примет ничего хорошего из-за наложения сигналов, это куда большая проблема. А если выстрелы разнесены больше, чем на 0,03 - все отработает как надо. |
Автор: | Alexies [ 05 май 2017, 22:08 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Новости проекта Электроника Наконец-то пришли платы, и я запаял 3 умных датчика. Протестировал совместную работу - никаких нареканий, на общей шине уживаются прекрасно, никакого лага, пропущенных сообщений и т.п.. Отличить от "глупых" на вид невозможно, только проводов меньше! Плата подходит по корпус от LW. Микроконтроллер прекрасно паяется пастой и феном, ножки корпуса TSSOP-20 относительно редкие, ничего не слипается. В итоге пайка занимает примерно столько же времени, что и для тупого датчика, и время определяется, в основном, пайкой проводов и TSOP-а. Вот так выглядит запаянный датчик: Вложение: 1 сенсор.JPG [ 139.06 KiB | Просмотров: 10108 ] А вот так - "гирлянда" в корпусах LW без стёкол. Обратите внимание на коннектор - тот самый, про который писал выше. Вложение: 3 сенсора.JPG [ 136.22 KiB | Просмотров: 10108 ] Корпуса в стиле DIY Тестирую корпуса из оргстекла, собранные по слоям. Выглядят довольно приятно. Провел краш-тест: корпуса без склеивания (только стянутые двумя винтами) от падения на бетон со второго этажа не ломаются. Но если бросить с силой, расколоть можно. Резку стекла лазером делают в любом городе за недорого и в любом количестве. Куда дешевле, чем фрезеровать. На мой взгляд, корпуса такого типа пригодны не только для HSL, но и в прокате выживут. Вложение: Корпус.JPG [ 115.74 KiB | Просмотров: 10108 ] |
Автор: | MidnightDreamer [ 06 май 2017, 00:12 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Такие корпуса видимо потяжелее будут ) |
Автор: | Alexies [ 06 май 2017, 00:54 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
MidnightDreamer писал(а): Такие корпуса видимо потяжелее будут ) Весит 22 г (в то время, как LW весит 8 г). Тяжелее, но не критично. |
Автор: | Pacifist [ 06 май 2017, 00:55 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
MidnightDreamer писал(а): Такие корпуса видимо потяжелее будут ) Зато можно сделать хитрые "линзы" |
Автор: | tayatlas [ 06 май 2017, 10:05 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Alexies писал(а): Тестирую корпуса из оргстекла, собранные по слоям. Один недостаток у таких корпусов: для гарантированного исключения мертвых зон на повязке их потребуется не менее 5 шт. |
Автор: | Pingvin [ 06 май 2017, 17:21 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Отлично, поздравляю! Ещё один малюсенький шаг - и получим беспроводные датчики! |
Автор: | Alexies [ 08 май 2017, 19:53 ] |
Заголовок сообщения: | Re: Умный датчик. Smart sensor. |
Pingvin писал(а): Ещё один малюсенький шаг - и получим беспроводные датчики! ИМХО, беспроводной датчик не нужен. Он существенно менее удобен, менее надежен и более дорог. Вот основные минусы:
И ради чего это? Какие преимущества беспроводного датчика?
Мне видится гораздо более удобным решением "умные" датчики по 3 проводам. Монтаж произвольной топологией сделать легко. Один раз установил и забыл. Никакой зарядки, проблемы включения, ассоциации датчиков с повязками, дешево и с тем же функционалом. |
Страница 17 из 17 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |