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

Секундомер на 8266.

AVL

Member
Всем привет!
Начну с того, что я новичок, так-что не удивляйтесь вопросам.
Что я умею: прошить 8266 разніми прошивками и разніми флешерами.
Помигать светодиодом.
Написать простенькую програмку на Си. Разобраться в не сложном коде на Асме.
Читать електросхемі.
Создать електросхему чего-либо стандартного.
Паять под микроскопом.
Кататься на горніх ліжах.

Что хочу:
Сделать секундомер для легкоатлета-спринтера (для сіна).
Как я вижу блок-схему девайса:
две штуки 8266 (на старте и на финише).
Также на финише Андроид телефон, которій фиксирует время (сигналі для фиксации Андроид получает от 8266, которій на финише).
Вопрос: 8266 на финише сможет ОДНОВРЕМЕННО получать сигнал щт 8266, которій на старте и общаться с Андроидом?
Спасибо!
 

Andy Korg

Moderator
Команда форума
Какая-то задержка будет конечно. Но может быть посмотреть в сторону ntp-протокола? В локальной сети можно достичь точности синхронизации часов в 200 мкс.
 
  • Like
Реакции: AVL

abdurino

New member
В теории да. Много зависит от трассы, на каком удалении будут ESP.
Если до 300м то присобачить антенну Wifi, может и без антенны пойдёт. Но лучше бы конечно радиомодуль, якобы до 2Км берёт.
На одном жмём кнопку - посылает сигнал на второй "начинай считать время", тот засекает время по модулю часов (миллисекунды будет не победить - я так понял их нет в модуле часов).
Можно конечно поиграться в цикле типа с delay(10) и без модуля часов...
Спортсмен добегает до второго 8266, жмёт на кнопку и led дисплей (лучше чем андроид) показывает время забега или отправляет время на android.

Но зачем так париться? Не лучше ли купить электнонный кЯтайский секундомер за 200р? )))
 
  • Like
Реакции: AVL

AVL

Member
Всем спасибо за ответі.
Расстояние у нас всего 100м (ето ж на стадионе).
Если задержка срабатівания есть и она всегда примерно одинаковая, то её можно учесть и убрать (прибавлять автоматически 0.1 сек к результату, к примеру).
Спортсмен сам должен себе засекать время (фото-старт и фото-финиш).
ЛЕД дисплей не лучше, на мой взгляд, ибо с ЛЕД дисплеем я сделал лет 5 назад.
Не лучше потому, что нужно корпус герметичній, нужно лог результатов сохранять, нужно автоматически результат мне на мейл отправлять, нужно батарейки менять, нужно провода тянуть.
С Андроидом во всех єтих моментах, думаю, будет попроще.
Итак, на мой вопрос так никто и не ответил: 8622 на финише момет служить точкой доступа и для стартового модуля 8622 и для финишного Андроида?
То-есть можно одновременно подключить два девайса к 8266 по файфаю?
Если можно, то на какую прошивку, скрипт мне надо обратить внимание, с чего начинать?
Спасибо!
 

abdurino

New member
Итак, на мой вопрос так никто и не ответил: 8622 на финише момет служить точкой доступа и для стартового модуля 8622 и для финишного Андроида?
То-есть можно одновременно подключить два девайса к 8266 по файфаю?
Если можно, то на какую прошивку, скрипт мне надо обратить внимание, с чего начинать?
Спасибо!
Ну а почему же нет. Я бы скачал Arduino IDE, подключил библиотеку ESP если её там нет и вперёд.
Одна ESP сервер, другая клиент, андроид клиент, всё в одну сетку. Подключаем датчики на которые фантазии хватит.
В теории на фотофинише можно дальномер поставить с камерой )
 
  • Like
Реакции: AVL

AVL

Member
Спасибо, а под NodeMcu нет решения? Ибо, дома Ардуино у меня работает нормально с 8622, а на работе не копилирует, постоянно відаёт ошибки библиотк, и ничего я исправить немогу (удалял, ставил по новой, перекачивал библиотеки), єто во-первіх, а вовторіх, Ардуино очень дооооолллгггоооо компилирует. Надо мнуту ждать пока оно перекомпилирует и зашёт 8622.
Буду рад любім подсказкам, я очень плохо ориентируюсь в терминологиии "сетивиков" и єто сильно стопорит, я тупо н знаю с чего начать.
Спасибо.
 

abdurino

New member
Спасибо, а под NodeMcu нет решения? Ибо, дома Ардуино у меня работает нормально с 8622, а на работе не копилирует, постоянно відаёт ошибки библиотк, и ничего я исправить немогу (удалял, ставил по новой, перекачивал библиотеки), єто во-первіх, а вовторіх, Ардуино очень дооооолллгггоооо компилирует. Надо мнуту ждать пока оно перекомпилирует и зашёт 8622.
Буду рад любім подсказкам, я очень плохо ориентируюсь в терминологиии "сетивиков" и єто сильно стопорит, я тупо н знаю с чего начать.
Спасибо.
NodeMcu с Lua это извращение. Я бы не рекомендовал даже вслух говорить такие слова )))

Долго )))) это ещё не долго. На заре программы компилились сутками. А если вдруг ошибка то процесс повторялся заново )
 

AVL

Member
Какой конкретно проект можно взять за основу? Я не могу стартануть :(
 

AVL

Member
Спасибо, прочитал, прошил, прочитал опять и пошагово протестировал. Вс' работает у меня.
Что дальше?
 

AVL

Member
Программиста я таки найму, но когда совсем в тупик упрусь и когда будет коммерческий интерес к проекту, а пока-что сам уверенно продвигаюсь в изучении.
 

AVL

Member
Девайс вс' ещ' актуален.
Никто не встречал реализации такого секундомера?
 
Девайс вс' ещ' актуален.
Никто не встречал реализации такого секундомера?
Нечто подобное сейчас пытаюсь замутить. Только мне нужно сразу 4 секундомера. И промежуточные отсечки по кругам. Да к тому же, фиксация ошибок прохождения трассы, это добавляет штрафное время.
Но если Вы за 1,5 года не смогли решить свою довольно простую задачу, мои потуги могут оказаться гораздо более длительными...
Но если что-то получится, секретов делать не буду.
 

Romchik

New member
Привет ребята чисто ради интереса зашел в эту тему, потому как тоже начинаю, и уже успел столкнуться с некоторыми проблемами. Но если честно, то не думал, что вы пойдёте таким сложным путем)))
Что касается прошивки, то я использовал прошивку NodeMCU 2.0.0 со встроенным языком программирования LUA, как по мне, то на много проще, чем морочить голову с АТ командами или программировать через SDK ARDUINO. На LUA можно прямо писать и отлаживать программы прямо на контроллере через ESPlorer и не ждать копиляции и прошивки каждый раз при изменении в программе. Прошивку скомпилировал на облачном сервисе NodeMCU custom builds там выбрал нужные мне модули и скачал, прошил фирменной программой NodeMCU Flasher. Короче, для этого есть хорошая статья, советую почитать, я всё делал как там и всё отлично получилось! <<Ссылка здесь>>
Ну а теперь по поводу таймеров. Не знаю как для других, то для меня это оказалось довольно сложно. Казалось такая простая операция, сделать чтобы моргал светодиод через определённый промежуток времени, но не тут-то было. Ну ладно, с одним светодиодом на LUA пример есть и то, запустил, оно работает в замкнутом цикле, моргает постоянно. А например, чтобы загорелся на какое-то время, потом потух и программа продолжила работу? Или сделать чтобы сразу несколько светодиодов моргало и каждый своей частотой? Мне лень переходить на ARDUINO SDK, уже привык к LUA, ну и конечно же нашел решение, которое работает: This is how you use the Timer on NodeMCU (ESP8266) – Maker Cup – Medium
Это модуль таймера, отдельный, который позволяет всё это делать, ну по крайней мере у меня все эти примеры заработали...
А вообще я хотел просто проверить простую операцию, сделать цикл с задержкой, ну что-то типа:
Код:
for i = 1, 10 do
  print(i)
end
Но не знаю как сделать, как поместить внутрь этого цикла задержку, когда помещаю таймер, он не работает, либо программа отрабатывает один раз с задержкой и всё....
Буду благодаен, если кто подскажет, спасибо!
 
Сверху Снизу