Водный эксперимент Arduino HC-SR04

Я работаю над экспериментом с датчиком звука HC-SR04 и использую его для записи скорости звука. Я успешно измерил скорость звука в воздухе, но при измерении в воде я столкнулся с небольшой проблемой. Звуковые волны, испускаемые датчиком, как поглощаются, так и отражаются от воды. Очевидно, что отраженные звуковые волны первыми достигают датчика, и поэтому они используются для расчета скорости звука. Есть ли способ закодировать программу Arduino, чтобы игнорировать первый набор волн и записывать только набор волн, поглощенных водой? Я думал об увеличении времени задержки для импульса, но не уверен, что это сработает.

Спасибо.

, 👍0

Обсуждение

Вы погружаете свой HC-SR04 в воду?, @GBG

Я не шучу, я подаю сигнал извне, и поэтому волна отражается. Думаю, если бы я его погрузил, он бы работал, но я не могу придумать, как это сделать, не сломав его., @Tiago


1 ответ


Лучший ответ:

1

Все, что вам нужно сделать, это игнорировать любые показания в течение первых миллисекунд. Мне на ум приходит оператор задержки перед считыванием с этого датчика, просто измените его. Вы можете вычислить, сколько времени это должно быть, вычислив, как быстро звуковые волны распространяются по воздуху, и измерив расстояние между датчиком и источником отражения. Я думаю, вы знаете, как это сделать :)

,