Gtlab Forum
Тематический => Негитарная электроника => Тема начата: Spiteful от Марта 20, 2013, 09:14:36 pm
-
Есть мысль сделать простой для повторения проект самодельной омеги, т.е. устройства хронометража для засечки времени прохождения горнолыжником трассы. Штука простая, к.м.к., но фирменная стоит оч. приличных денег.
Устройство простое: стартовая калитка, финишный створ, радио, секундомер. Калитка механическая, по сути шарнир с прутиком и концевик. Финишный створ - оптический. Калитка передаёт сигнал (по факту старта участника) по радио вниз, где некое устройство измеряет время до пересечения участником финиша и отображает результат. (В идеале ещё, конечно, подробное логирование всех событий.)
Штука очень удобная, но в большинстве даже серьёзных спортивных клубов по старинке пользуются рациями и секундомером. И это очень бесит, порой)) Результаты плывут, ошибки, перестартовки, фальстарты и т.д.
Оговорюсь, точность требуемая - до сотой доли секунды, т.е. +/- 5 мс. Важна морозоустойчивость, долгая безотказная автономная работа на холоде.
Из желаемых доп. фич - логирование и возможность старта след. участника до того как финишировал предыдущий (не вижу сложностей).
Итак, кто дочитал, вот мой вариант наипростейшей реализации.
1. На 5-10 секунд, дающихся участнику чтобы тот стартовал, включается рация (включает её стартёр, человек, допустим).
2. Участник открывает калитку, концевик врубает звуковой сигнал, на подобии тонового набора в телефоне (да, жульничество тут возможно, подбор подходящего свистка.. но пока что пусть так).
3. Внизу устройство включает осчёт времени по звуковому сигналу рации. И останавливает осчёт по пересечению финишного створа (оптопара на двух штативах.. может лазерная указка.. не знаю). И отображает время, например, на ЖКИ.
Критика? Другие варианты? Может, у кого-то есть опыт.
Для велосоревнований, например, используют радио-маяки (как в магазинах книжных) и рамку, фиксирующую прохождение рамки маяком. Кто в курсе, как реализовано? Ткните в ссылку.
П.С. Вариант со звуковым сигналом на старте мне всё больше нравится. Участник сразу слышит, когда он стартовал. С такой системой не будет лишних разговоров после старта (о мухлеже организаторов, секретной кнопке "для своих" на омеге и т.д.). Спортсмены ведь те ещё параноики.
-
С передачей тоналки ненадежный вариант (помехи).
Делал следующим образом - в момент открытия калитки стартовый передатчик начинает передавать цифровые посылки содержащие время, прошедшее с момента открытия калитки. Естествено посылки защищены ЕСС.
Как только финишный приемник принимает валидную посылку, он использует время из посылки как точку отсчета и перестает воспринимать посылки до закрытия стартовой калитки.
В этом случае, даже если приемник пропустит несколько посылок, он будет считать время именно с момента открытия калитки.
PS Время в посылке нужно передавать с учетом времени передачи самой посылки (так как сильно поднимать битрэйт нельзя, из за полосы радиоканала)
-
Время хорошо бы синхронизировать по внешнему калибратору - например, GPS - посылка содержащая время плюс фронт начала секунды по отдельному выходу с большой точностью. Ну и финишную оптику программно защитить от дребезга/нестабильности срабаьывания.
-
Даже тот факт, что рация использует радиоволну, распространяющуюся со скоростью со скоростью света, не позволит такой системе реализовать заявленную точность.
ХИНТ: скорость распространения звуковой волны - около 1 фут/сек. То есть, примерно 1 м за 3 мс.
Так, что со звуком не стоит связываться - не говоря уж о непредсказуемом запаздывании в радиоканале.
Единственно разумным решением видится использование микроконтроллера с стандартным радиомодулем + адекватно написанный софт...
ХИНТ: скорей всего подобная задача в DIY уже кем то решена - поскольку спрос явно присутствует: мне уж лет тридцать периодически её подбрасывают для решения ::)
ХИНТ: меньше всего гемору будет при использовании стандартного железа - и скорей всего Arduino (с широким набором разнообразной периферии) позволит ограничить всё только разработкой софта: пара процессорных + пара радиоканальных модулей + интерфейс для ноута (wi-fi).
Учитывая, что софт для радиоканала уже сочинён и есть в открытом доступе - останется написать только саму систему...
-
Еще замучаешься искать ЖК, работающий на минусовой температуре.
-
Еще замучаешься искать ЖК, работающий на минусовой температуре.
А разве LED уже запретили к применению? :o
-
Женя, это девайс с автономным питанием, придется экономить электричество.
-
Насчёт автономного питания в ТЗ не было ни слова.
И питание в виде автомобильного акка тут тоже как бы вполне себе уместно - на гору только стартовый датчик закидывается, а табло на финише на автО разместить можно. Там же и ноут с программой статистической обработки и раздачей через вафлю на личные мобилоиды - в тёплом салоне...
Так, что без инфраструктуры всё равно не обойтись...
-
Женя, парковка обычно достаточно далеко от склона. Из соображений безопасности.
Еще момент, для нелицензируемых приемопередатчиков мощность сильно ограничена, и такой вариант пройдет только для "коротких" дисциплин типа специального слалома, да и то только с учетом прямой видимости.
-
Коллега, вопросы не ко мне, а к задачедателю...
:-*
-
Большое спаисбо за комментарии, друзья-соГТЛабовцы!
Ещё есть вариант - два точных секундомера, синхронизирванных друг с другом. В этом случае не нужна спешка при доставке вниз сообщения о времени старта. Это сообщение может передать даже стартёр по рации )) Вопрос - удастся ли сделать часы с уходом меньше 5мс за три, скажем, часа. Это 5/(3*60*60*1000) = 0.46 ppm. Да ещё чтоб от температуры не плясали.
Об этом ведь толкует Андрей, я правильно понял?
Время хорошо бы синхронизировать по внешнему калибратору - например, GPS - посылка содержащая время плюс фронт начала секунды по отдельному выходу с большой точностью.
-
Можно сделать небольшое послабление требований к системе, которое всё упростит. А именно - не заморачиваться с абсолютным временем. Т.е. не париться из-за задержки сигнала со стартовой калитки. Этот лаг будет много меньше времени прохождения дистанции. Главное, чтобы эта задержка была одинаковой для всех участников.
Автономность - да. Если табло светодиодное делать (вообще фантастика, участник сразу видит свой результат на финише) - то цеплять к машине. А сам хронометрах - автономный. Не вижу проблем со светодиодами - время надо показывать только пару секунд, чтобы судья на финише переписал его в протокол.
Радиоканальные модули, система на их базе - это самый грамотный путь. Но я не хочу огрести проблем с дальностью и, вообще, общей глючностью радиоканала. Просто рация надёжней, к тому же она у всех есть (у организаторов).
-
С передачей тоналки ненадежный вариант (помехи).
Ну в телефонии ведь применяют успешно. Есть спец. микрухи с узкополосными фильтрами под эту задачу.
ХИНТ: скорость распространения звуковой волны - около 1 фут/сек. То есть, примерно 1 м за 3 мс.
Блин, не знал что звук такой тормозной. Т.е. знал, но забыл) Ну, можно примотать пьезик-гуделку прямо к корпусу рации.
-
Большое спаисбо за комментарии, друзья-соГТЛабовцы!
Ещё есть вариант - два точных секундомера, синхронизирванных друг с другом. В этом случае не нужна спешка при доставке вниз сообщения о времени старта. Это сообщение может передать даже стартёр по рации )) Вопрос - удастся ли сделать часы с уходом меньше 5мс за три, скажем, часа. Это 5/(3*60*60*1000) = 0.46 ppm. Да ещё чтоб от температуры не плясали.
Об этом ведь толкует Андрей, я правильно понял?
Время хорошо бы синхронизировать по внешнему калибратору - например, GPS - посылка содержащая время плюс фронт начала секунды по отдельному выходу с большой точностью.
Синхронизировать надо не с каким то там спутником, а два удалённых друг от друга модуля - этого совершенно достаточно.
Вопрос только в параметрах радиоканала и алгоритме синхронизации...
А так - да, стартовый модуль должен передавать не событие старта (с учётом латенси радиоканала), а сообщение о факте старта с меткой точного времени...
-
Делал следующим образом ...
Кстати, расскажи пожалуйста, как ты сделал калитку и финишный створ? (если не комерческая тайна)
-
чтобы судья на финише переписал его в протокол.
Уже в который раз говорю - протокол выдается в любой мобилоид по вай-фаю. На открытом пространстве в пределах прямой видимости сотня метров - это реальность. А если озаботиться эффективными антеннами - то и больше...
Ручной труд - нафиг. Надо себя уважать и делать в 21 веке изначально правильную систему...
-
Но я не хочу огрести проблем с дальностью и, вообще, общей глючностью радиоканала. Просто рация надёжней, к тому же она у всех есть (у организаторов).
Воки-токи - это как раз глючный путь. А стандартные модули для создания удалённых радиосетей стоят копейки - и вопросы стабильности и надёжности там решены на системном уровне.
Надо только сесть и часок покопаться в интернете.
http://habrahabr.ru/post/139947/
http://habrahabr.ru/post/142472/
В данном случае я привёл ссылки на маломощные модуля для домашних сетей - но таких же модулей с дальностью в километры, полностью готовых к употреблению с компом (микропроцессором) тоже немало.
Потусуйся на сайтах RC-моделистов - они как раз в материале, в отличие от музыкантов...
-
Ручной труд - нафиг.
Это абсолютно верно. Это я утрированно-упрощённо написал, про "руками переписать в протокол". Логирование нужно атоматическое. На смартфон ли, или на нетбук, по радио или проводу - не важно.
Проблемы главные две (в ручном труде, с которым и затеяна борьба в этой теме):
1. Стартёр говорит "Марш!", и... участник стартует. Задержка может быть огромной (и в плюс и в минус). Опытные всегда уходят на "внимание")). Это +/- 1 секунда. Калитка по факту старта, сигнал по факту калитки - это решение проблемы, даже с учётом всяких там других, гораздо меньших и одинаковых для всех лагов.
2. Судья на финише, он же логгер, слышит по рации "Марш" и жмёт секундомер. Он же видит пересекающего финиш гонщика, и жмёт на секундомер опять. Это тоже ошибки вплоть до секунды.
Хочу решить эти две огромные проблемы наиболее доступным способом. Это программа минимум.
-
Потусуйся на сайтах RC-моделистов - они как раз в материале, в отличие от музыкантов...
Точняк, есть под рукой сотрудник такого толка. Спасибо за хинт.
-
@ Spiteful
Какова максимальная длинна трассы?
К примеру, "пчёлки" обеспечивают до 1 км в прямой видимости:
http://www.kosmodrom.com.ua/data/zigbee/zigbeemodem.php
Но я видел и направленные антенки - волновой канал. Они раз в пять способны поднять дальность при прочих равных...
ХИНТ: можно совсем уж тупо поступить - взять модуль на невысокий диапазон и использовать комнатные ТВ-антенны для ДМВ :P
Воткнуть шесты на старте/финише и ориентировать их друг на друга - не велика заморочка...
-
Помехи в радиоканале огромные, ты их не замечаешь когда слушаешь ушами.
Единственный вариант, который работает - это цифровые посылки с передачей времени от окрывания калитки.
Иначе плавание определения старта будет гулять до десятых секунды.
Я передавал манчестером с битовой синхронизацией преамбулой, с ЕСС посылки, алгоритм был стащен из сотовых телефонов.
На открытом пространстве в пределах прямой видимости сотня метров - это реальность.
Женя, трасса спецального слалома (самая коротка дисциплина) около 600 метров.
Скоростной спуск больше 3 км.
-
Ну, вот - тут и за 3 км могут:
http://wireless-e.ru/articles/market/2010_03_20.php
И выход - не в проволоку, а в разъём, что позволяет подоткнуть эффективную антенну...
-
Современная RC-аппаратура для управления авиамоделями работает в диапазоне 2,4 ГГц, и обеспечивает гарантировано уверенную дальность связи до 1,5 км при условии: передатчик на высоте ~1 м от уровня земли (у пупа пилота), а модель в воздухе. Передатчик работает в режиме спредспектрум, и вдобавок на не очень эффективную антенну (пипка длиной 80-100 мм). Тем не менее обеспечивается сверхвысокая селективность системы управления одновременно нескольких комплектов аппаратуры, работающих рядом, в одном частотном диапазоне, с автоматическим выбором частотного канала каждым комплектом передатчик-приемник. И никакой взаимной синхронизации. Просто каждый комплект ищет для себя свободный частотный участок в пределах отведенного диапазона, а в случае возникновения помехи уходит с одной частоты на другую.
Система кодирования позволяет реализовать до 12-16 пропорциональных каналов (в простых моделях аппаратуры - 6-8 каналов). Каждый пропканал может быть легко превращен в несколько дискретных каналов. Кодер передатчика опрашивает задатчики (джойстики, тумблеры) всех каналов с периодичностью 20 мс, из которых часть времени (~ 5 мс) отведено на синхропаузу, а остальное время распределено между каналами.
Таким образом, информационная пачка, передаваемая в эфир передатчиком, длится 20 мс, 5 из которых, грубо говоря, мертвое время, не несущее информации. Следовательно, худшая ошибка запуска системы фиксации времени не превышает 5 мс.
Датчик выпускной "калитки" на старте инициирует сразу все каналы передатчика. Даже если по какой-то причине приемник отреагирует на сигнал не первого, а n-ного канала, то для устранения мгновенной ошибки связи достаточно будет считать сигнал не с первого канала декодера приемника, а с n-ного.
Питание передатчика - 10-11 вольт, мощность - сотни милливатт. Питание приемника - 4,8 вольта. Если сделать более эффективную передающую антенну, и поднять над землей на финише приемную, то гарантированная дальность увеличится в разы. Разумеется, непременное условие - прямая видимость между передающей и приемной антеннами.
Цена вопроса может вполне уложиться в 150-200 долларов (передатчик и приемник без сервомашинок).
Счетчик времени (таймер) может быть любым, это отдельная задача, так же, как и задача визуализации индикации времени прохождения трассы.
P.S. Добавлю.
RC-аппаратура предыдущего поколения работала (в том числе) в диапазоне 40 МГц, а там есть небольшой участок, в котором официально разрешена эксплуатация подобной техники без согласования с надзирающими органами, и без официальной регистрации этой аппаратуры с выходной мощностью до 1 Вт.
-
@ SpitefulК примеру, "пчёлки" обеспечивают до 1 км в прямой видимости
ЗигБи гарантирует доставку сообщения за 5 мс? По-моему, это неспешная сеть, с упором на устойчивость и гибкую топологию.
Современная RC-аппаратура для управления авиамоделями работает в диапазоне 2,4 ГГц, и обеспечивает гарантировано уверенную дальность связи до 1,5 км при условии: передатчик на высоте ~1 м от уровня земли (у пупа пилота), а модель в воздухе.
Как правило, даже на короткой трассе на "пупырях", прямой видимости между стартом и финишем нет. К сожалению, горы, даже маленькие, обычно выпуклые, а не вогнутые )
Valentinych, спасибо за ликбез.
-
ЗигБи гарантирует доставку сообщения за 5 мс?
Большинство сетевых протоколов вообще не гарантирует время доставки пакетов.
Причем время доставки не так важно, главное чтобы оно было одинаковым для всех участников.
Именно поэтому я использовал низкоуровневый протокол.
В момент начала передачи первого бита преамбулы пакета в него фиксировалось значение таймера с момента открытия калитки+длительность передачи самого пакета. В пакет также входило состояние калитки, чтобы отличать один старт от другого. Этот алгоритм повторялся постоянно до закрытия калитки(+некоторое время чтобы обеспечить фиксацию факта закрытия).
Если приемник по причине помех пропускал один или несколько пакетов это не имело значения, так как в каждом пакете было точное время с момента открытия калитки.
PS я делал устройство только для оптимизации тренировочного процесса, так как серийно делать не собирался, а для одного устройства затевать сертификацию (без нее на соревнованиях никто не даст использовать) не имело смысла.
-
Зигби гарантирует доставку вообще. А это немало. Сейчас переводим проводную систему хронометража/старта на зигби и ЖПС модули для времени (для скоростных заездов на автомобилях - точность нужна никак не меньше)
-
Кстати - вопрос полуофф: какого рода рфид используются на всяческих соревнованиях (это когда манжеты надевают)?
Может лучше сразу по этому пути пойти?
А то калитка калиткой - а фоторегистратор на финише, это сильно вещь в себе...
-
Ivana, идея ориентироваться на абсолютное время GPS вполне неплоха, так как исключает необходимость ориентироваться на время доствки пакета.
Если не секрет, какой протокол обмена с GPS приемником Вы ориентируетесь?
NMEA протокол специфицирует передачу времени с точностью до сотых долей секунды, что маловато.
Женя, не думаю что RFID обеспечит точную фиксацию пересечения участником финишного створа по времени.
При учете что финишный створ порядка 15-20 метров в ширину.
Даже если проложить петлю антенны под снегом по линии финишного створа, все равно остается неоднозначность срабатывания.
На ютьюбе полно роликов с кубка мира.
Там хорошо видно и стартовую калитку, и промежуточные фото створы на середине дистанции, и финишные ворота.
-
Женя, не думаю что RFID обеспечит точную фиксацию пересечения участником финишного створа по времени.
На всяческих соревнованиях я вижу кабель, проложенный вдоль финишной ленточки.
Например, в биатлоне. И промежуточные замеры на трассе - тоже кабель...
-
Здесь расписаны все требования FIS для хронометража.
http://www.fis-ski.com/data/document/timingbooklet-v2_45.pdf
FIS
Level 3 and 4 events may use timing solutions that do not
require any hard wire connection between start and
finish for either A and/or B sy
stems. Level 2,1 and 0 events are
not allowed to use
this solution.
PS насчет системы отображения, хороший вариант - блинкерные табло. Они большие по размеру, хорошо читаются и потребляют энергию только в момент переворота блинкеров.
-
KMG идея хорошая, но не моя :) Насчет точности и NMEA - берем любую посылку, содержащую время и флаг валидности (хоть ту же RMC), и смотрим не только её содержимое, а ещё и
1PPS, Pin13
This pin provides one pulse[ch8208]per[ch8208]second outputfromthemodule, which issynchronized toGPS
time. If not used, keep floating; default duration 100ms.
...
Timing Accuracy (1PPSOutput) 100 ns RMS
http://www.auroramobile.ru/content/files/pdf/gtop/globaltopgmsu1lpdatasheetv0e.pdf
Peratron когда за одну секунду финишный створ пересекают несколько десятков велосипедистов или роллеров, то никакие манжеты и ворота не спасут - фотофиниш наше все. А если побаловаться - посчитать круги каждого, чтобы не обманывали, или просто примерный хронометраж по кругам на тренировке - тогда могут и манжеты с воротами использоваться.
-
Проблема в том, что некоторые приемники выдают UTC hhmmss.sss, а некоторые hhmmss.ss, но это ладно, можно выбрать соответствующий приемник.
Также интересный вопрос, какому моменту соответствует время в посылке по отношению к самой посылке.
В случае двух приемников на старте и финише, не есть факт что часы будут абсолютно (с точностью до 0.001С) синхронны.
Даже если получать время по запросу, а не периодически, не факт что latency ответа величина абсолютно постоянная.
-
Peratron когда за одну секунду финишный створ пересекают несколько десятков велосипедистов или роллеров, то никакие манжеты и ворота не спасут - фотофиниш наше все.
У велосипедистов и иже с ними в групповом финише всей группе даётся одно время.
У биатлонистов-лыжников при одновременном финише фиксируется факт финиша и ставится в протокол ФОТО - то есть, при судействе учитывается возможная неточность и решение отдаётся человеку.
Но чисто технически система сама расставляет по порядку следования - и как правило потом то, что видно на экране и подтверждается.
Понятно, что одновременный хронометраж нескольких меток затруднён - но речь не об этом, а о том, что радиомаркеры вполне успешно используются на практике.
В случае горнолыжных дисциплин большая группа исключена - а при раздельном прохождении так и вовсе невозможна по системным причинам.
А то, что используются радиомаркеры - по крайней мере у биатлонистов и прочих лыжников - хорошо видно в репортажах: как перед или после трассы судья вешает или забирает маркеры - по одному на лодыжку и плюс на плечо...
-
RFID не подходит из-за точности. Если велосипедисты крутят час неск. кругов, то горнолыжники летят 25 секунд и в одной секунде могут финишировать >10 участников. Надо определить их места.
К тому же, надо штробить склон под провод, укладывать его. А потом как вытаскивать? Он же замёрзнет там.
-
В свете публикации правил FIS на русском языке (http://www.fis-ski.com/mm/Document/documentlibrary/AlpineSkiing/03/29/55/ICRRussian_neu_formatiert_Dez2014_Neutral.pdf), обновлю тему.
Ну, во-первых, есть документ (https://data.fis-ski.com/media/alpine-skiing/timing/timing-booklet-v-250.pdf), регламентирующий всё, что связано с сабжем (касательно FIS соревнований).
Во-вторых, открыл для себя существование TCXO с точностью <1ppm в достаточно обширном диапазоне температур.
В-третьих, нашёл интересное обсуждение (http://www.epicski.com/t/50922/ski-timing-equipment-on-the-cheap-build-your-own) сабжа (на английском).
-
И ещё добавка к теме, готовое решение найдено здесь:
Осваиваем CC430 — микроконтроллеры с радиомодулем: фотофиниш своими руками (http://habrahabr.ru/post/245035/)
Финиш на TSOP-е я тоже макетировал. Правда, излучатель зажигал без контроллера - с помощью кварца и счётчика.
С TI-шными сабгига SOC-ами мне тоже довелось поработать (правда, на 8051). Поэтому и смущает это решение, в смысле дальности. Но, практика - мерило истины. Это уже второй законченный работающий самодельный хронометраж на просторах рунета. Респект автору!