Код для определения ударов в минуту при измерении хода деревянных часов
Я новичок в Arduino и программировании, но я делаю деревянные часы. Самая большая проблема — это синхронизация часов с правильными ударами в минуту при регулировке длины маятника. Я думаю, Arduino и ИК-датчик?? для определения момента, когда маятник прерывает балку, тогда было бы возможно отображать удары в минуту в реальном времени. Если не в реальном времени, то просто удары в переменный период времени, например, 1 мин, 2, 5 или 10 мин. Я искал такой тип кода и схемы, но не смог найти. Любая помощь была бы искренне оценена.
@Scott Hamby, 👍0
Обсуждение1 ответ
Я бы предложил, чтобы Arduino отправлял сообщение на ПК, когда происходит «тик». Затем ПК выполняет вычисления на большем количестве тиков. Вы даже можете заставить ПК измерить свой дрейф с помощью NTP (часы ПК также не очень точны, но лучше, чем кристалл на Arduino).
Процедуру, которую я использовал, я нашел на https://www.logre.eu/wiki/Horloge_analogique_24h/en#Quartz_calibration. Я запустил ее на несколько часов. Что также может быть полезно в вашем случае, чтобы увидеть, является ли колебание постоянным.
Я использовал это для калибровки моих часов Arduino с точностью до нескольких секунд в год,
Спасибо большое за информацию и направление. Теперь буду разбираться, понял ли я всю эту мудрость, как я и сказал, новичок в кодировании. Оценил быстрый ответ., @Scott Hamby
В этот момент вы можете просто использовать ПК для записи тикающего звука и обработки его в программном обеспечении. Или, если вы не можете работать в тихой обстановке, соедините датчик с аудиовходом ПК с помощью конденсатора., @Chris Stratton
- Как разделить входящую строку?
- Как использовать SPI на Arduino?
- Как сбросить или отформатировать Arduino?
- Управление скоростью вентилятора с помощью библиотеки Arduino PID
- Arduino Due vs Mega 2560
- Как получить уникальный идентификатор для всех плат Arduino?
- Почему я получаю avrdude: stk500v2_ReceiveMessage(): timeout error when uploading to Arduino Mega?
- Тайм-аут связи Arduino Mega с ошибкой программатора
Какой уровень точности вам нужен? Например, несколько ppm?, @Edgar Bonet
Нет, нужно до десятых или сотен минут. Сейчас я использую секундомер для измерения 60 ударов (например) и смотрю, какой это период времени. Очевидно, что 60 ударов в минуту будут точными (однако некоторые часы имеют 90 ударов в минуту). Если это невозможно, то подсчет ударов в цикле в 2, 5 или 10 минут начнет сужать круг поиска., @Scott Hamby