• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

С чего начать создание спортивного секундомера (1 сенсор запускает секундомер, 2 останавливает)

nikolz

Well-known member
Добавляется погрешность, время передачи пакета может быть не постоянным.
вы заметили что указан протокол ESP-NOW.
Вы рассуждаете, а я с этим протоколом работаю.
Время передачи пакета не более 2 mc. Если приемной нет то делается повтор , в этом случае время не
более 10 mc.
Начало передачи пакета запоздает не более чем на 10мкс.
Нестабильность начала не обнаружил.
Если у Вас иные данные, то прошу показать.
 

nikolz

Well-known member
можно взять TLSR8266
время передачи пакета от 80 до 370 мкс (зависит от длины пакета)
запаздывание 1 мкс.
нестабильность на уровне нестабильности кварца
 

pvvx

Активный участник сообщества
вы заметили что указан протокол ESP-NOW.
Вы рассуждаете, а я с этим протоколом работаю.
Время передачи пакета не более 2 mc. Если приемной нет то делается повтор , в этом случае время не
более 10 mc.
Начало передачи пакета запоздает не более чем на 10мкс.
Вы на соревнование не берете телефон?
Зрителей тоже нет?
"я с этим протоколом работаю" в подземелье с железобетонными стенами в метры? :)
Пересчитывайте - не удалось передать первый пакет, т.к. была помеха. Тайм-аут какой до следующего?
Второй так-же не передался... Что-то помешало... :)
ESP-NOW - это нестандартная халтура от Expressif и никто из окружающих WiFI не будет учитывать синхронизироваться с энтой лажой :p
А где там у вас синхронизация для вычисления времени между событиями?
Очередной огород нагородите? :) :) :)
Какое соревнование при условии, что результат может быть не зафиксирован? :) :)
 

nikolz

Well-known member
10 мс ничего не испортит, но кто ему напишет программу на ESP-NOW.
В SDK есть пример.
Когда изучал ESP-NOW то потратил примерно 30 минут чтобы сделать два теста залить их в два ESP и убедится что все работает.
--------------------
А вот с точками доступа да еще с TCP он будет кувыркаться существенно дольше. И нестабильность будет
---------------------
Но на самом деле такую систему надо делать на BLE а результат можно сразу считать на смартфоне
будет всего два модуля лучше взять NORDIC, если есть деньги на эти игрушки.
 

nikolz

Well-known member
более интересным в этой задаче являются датчики
если это контакт. то переступил с ноги на ногу и датчик сработал. круто будет.
 

nikilex

New member
более интересным в этой задаче являются датчики
если это контакт. то переступил с ноги на ногу и датчик сработал. круто будет.
Тут согласен, попробую, что получится, то получится, на данный момент заказал 4 esp и 4 датчика касания, возможно еще подумаю на счет лазерного дальномера
 

pvvx

Активный участник сообщества
В SDK есть пример.
Когда изучал ESP-NOW то потратил примерно 30 минут чтобы сделать два теста залить их в два ESP и убедится что все работает.
--------------------
А вот с точками доступа да еще с TCP он будет кувыркаться существенно дольше. И нестабильность будет
---------------------
Но на самом деле такую систему надо делать на BLE а результат можно сразу считать на смартфоне
будет всего два модуля лучше взять NORDIC, если есть деньги на эти игрушки.
Уже много раз вам говорил – сначала изучите как работает WiFi, а потом уже выдумывайте свои никчемные протоколы-нашлепки пытающиеся дублировать уже рабочие только ради пиара. Стандартные протоколы WiFi не просто так “прижились”, а прошли систему “естественного отбора” за многие годы :p И там уже встроена система синхронизации с нормированной точностью всех станций для ширпотреб. и проф. оборудования, что на сегодня имеет допуск примерно 25 us и менее 5 us.

На Arduino ESP8266 не получить тайм-штамп от внешнего сигнала с такой точностью, даже если соединить проводами... :p

Первым делом у станции на ESP8266 время TSF (64-битный аппаратный счетчик в 1 us на ESP8266) синхронизируется с AP для арбитража. Затем уже всё остальное. Даже если станция потеряла связь с AP, то при повторном присоединении AP выдаст ей тот-же счетчик в 1 us, идущий от значения вычисленного в момент старта AP (полученный от анализа WiFi эфира – других участников, для поддержки не только 802.11). Т.е. даже “реконнект” не помешает передать и вычислить точное значение времени запомненных событий, как и временное отключение питания ESP, если значения записали в Flash. :p
 

nikolz

Well-known member
Тут согласен, попробую, что получится, то получится, на данный момент заказал 4 esp и 4 датчика касания, возможно еще подумаю на счет лазерного дальномера
вы попробуйте расписать сам процесс старта и финиша, требуемую точность измерения
и далее уже решать тип датчика и все остальное.
а уж железка которая вместо проводов - это дело десятое и не самое сложное.
 

nikolz

Well-known member
Уже много раз вам говорил – сначала изучите как работает WiFi, а потом уже выдумывайте свои никчемные протоколы-нашлепки пытающиеся дублировать уже рабочие только ради пиара. Стандартные протоколы WiFi не просто так “прижились”, а прошли систему “естественного отбора” за многие годы :p И там уже встроена система синхронизации с нормированной точностью всех станций для ширпотреб. и проф. оборудования, что на сегодня имеет допуск примерно 25 us и менее 5 us.

На Arduino ESP8266 не получить тайм-штамп от внешнего сигнала с такой точностью, даже если соединить проводами... :p

Первым делом у станции на ESP8266 время TSF (64-битный аппаратный счетчик в 1 us на ESP8266) синхронизируется с AP для арбитража. Затем уже всё остальное. Даже если станция потеряла связь с AP, то при повторном присоединении AP выдаст ей тот-же счетчик в 1 us, идущий от значения вычисленного в момент старта AP (полученный от анализа WiFi эфира – других участников, для поддержки не только 802.11). Т.е. даже “реконнект” не помешает передать и вычислить точное значение времени запомненных событий, как и временное отключение питания ESP, если значения записали в Flash. :p
Ну вот опять разволновались...
Вам мои результаты как быку красная тряпка.
Спокойнее никто Ваших достижений не умоляет.
Вы свое рассказали, я рассказал свое.
мне ваше решение по..
Пусть автор сам решает.
 

pvvx

Активный участник сообщества
Ну вот опять разволновались...
Вам мои результаты как быку красная тряпка.
Спокойнее никто Ваших достижений не умоляет.
Где вы видели мои достижения? o_O
Вы свое рассказали, я рассказал свое.
мне ваше решение по..
В рекламе так было и есть. Главное - впендюрить нерабочий вариант... :)
Тут согласен, попробую, что получится, то получится, на данный момент заказал 4 esp и 4 датчика касания, возможно еще подумаю на счет лазерного дальномера
Система усложняется... Далее вешается акселерометр на ногу и по несложному алго вычисляется, что за последней флуктуацией ускорения последовало движение от стартовой черты... :)
 

nikilex

New member
Где вы видели мои достижения? o_O
В рекламе так было и есть. Главное - впендюрить нерабочий вариант... :)

Система усложняется... Далее вешается акселерометр на ногу и по несложному алго вычисляется, что за последней флуктуацией ускорения последовало движение от стартовой черты... :)
Еще вопросик, как сделать или есть где купить готовую сенсорную пластину под ладонь на переключение, чтоб спортсмен ударил по ней в любом месте, возможно под оргстеклом, и она сработала как остановка таймера?
 

pvvx

Активный участник сообщества
Еще вопросик, как сделать или есть где купить готовую сенсорную пластину под ладонь на переключение, чтоб спортсмен ударил по ней в любом месте, возможно под оргстеклом, и она сработала как остановка таймера?
аварийная кнопка грибок в корпусе - Поиск в Google :)
 

pvvx

Активный участник сообщества
Но на самом деле такую систему надо делать на BLE а результат можно сразу считать на смартфоне
будет всего два модуля лучше взять NORDIC, если есть деньги на эти игрушки.
Готовый конкурент вашего BLE:
Рабочее расстояние в помещении: Макс. 25 м/75 футов :)
Источник: 16 каналов
Частота: 433 мГц
Синхронизация. Скорость: Max.1/250 s :)
PS: не думаю, что у вас выйдет лучше на BLE.
 

pvvx

Активный участник сообщества
Просмотр что натворили Ардунщики за последние годы показал, что синхронизация для включения лампочек им не нужна.
TSF Timer Accessibe? - ESP32 Forum
Хотя в рекламке по ESP32:
upload_2019-5-17_18-39-20.png
и у ESP8266:
upload_2019-5-17_18-39-39.png
Но реализовать доступ к TSF так и не смогли, не смотря на наличие полной методички подготовленной тут на форуме годами ранее...
Так что @nikolz, никто и не будет использовать что-то отличающееся от детсадовских упражнений "делай как я" на ютубе с Arduino...
А кто может копнуть глубже, тот уже давно проблемы синхронизации решил и без проблем может это хорошо "продать". Но я такой мелочевкой не занимаюсь...
 

pvvx

Активный участник сообщества
Еще вопросик, как сделать или есть где купить готовую сенсорную пластину под ладонь на переключение, чтоб спортсмен ударил по ней в любом месте, возможно под оргстеклом, и она сработала как остановка таймера?
Ещё: Смотреть и гуглить "Системы хронометража".
Минимальная стоимость базовых ужасных комплектов от 100 т.р. :)
Как я понял, полистав инет, тема неразвитая, ниша пуста...
 

svs2007m

Active member
Господа, Мы уже запаслись Попкорном и Колой следя за вышей перепалкой ! Еще =АК= пригласите и я сам ящик бухла выкачу )))) А по теме "РЕАЛЬНО" , без понтов можно ? Просто у меня схожая тема тоже нарисовалась.
 

nikolz

Well-known member
Рассмотрим варианты с использованием трех ESP по протоколу ESP-NOW.
Данный протокол удобно использовать например на стадионе или в поле.
В этом режиме нет надобности в роутере и ESP обмениваются сообщениями по мас адресам.
------------------
Чтобы определить погрешность измерения проведем следующий эксперимент
ESP1 посылает через интервалы времени 200 ms свое системное время на ESP2, на которой определяем разность текущего времени ESP1 и ESP2
синхронизация производится в момент приема первой посылки запоминанием значений в качестве начальных.
Полученный результат приведен на картинке
upload_2019-5-19_8-5-21.png
Таким образом, максимальная ошибка измерения такой системой составит +-5 ms, для интервала времени до 1200 сек.
Если надо обеспечить более высокую точность, то можно использовать
внешние RTC, которые синхронизируются перед разнесением их в поле, а ESP используется для передачи показаний.
 

nikolz

Well-known member
предварительный расчет при использовании внешней RTC с термокомпенсацией
позволит получить погрешность не более +-0.1 ms на 1000 секунд.
 
Сверху Снизу