🍾 Резонатор Гельмгольца

Дмухніть над шийкою пляшки і почуйте чистий тон: повітряна пробка в шийці діє як маса, а порожнина — як пружна повітряна пружина. Регулюйте геометрію шийки та об'єм порожнини, щоб побачити зміну резонансу в реальному часі.

ЗвукІнтерактив
Повітряна пробка маса-пружина-демпфер збуджується на резонансі · P пауза · R скидання · Розширте шийку або зменшіть порожнину, щоб підвищити тон

Як це працює

Резонатор Гельмгольца поводиться як крихітна маса на пружині. Пробка повітря, що сидить усередині шийки, є рухомою масою; набагато більший об'єм повітря, захопленого в порожнині, поводиться як стискувана пружина — стисніть її, і вона штовхне у відповідь. Коли струмінь повітря з вашого видиху збурює повітряну пробку шийки, ця пробка коливається на повітряній пружині порожнини на одній конкретній власній частоті — точно так само, як маса коливається на реальній пружині.

Оскільки повітряна пробка не зупиняється точно на фізичних кінцях шийки — вона захоплює тонкий комір повітря одразу за кожним отвором під час руху — ефективна довжина, що використовується у формулі частоти, є більшою за фізичну довжину шийки. Ця поправка на кінці, 1,6·√(A/π), додається до фізичної довжини шийки L, щоб отримати ефективну довжину L_еф, яка й фактично визначає тон.

f = (c / 2π) · √( A / (V · L_еф) )
L_еф = L + 1,6 · √(A / π)  (поправка на кінці, обидва кінці)
c ≈ 343 м/с (швидкість звуку в повітрі)
аналогія маса-пружина: m = ρ·A·L_еф,  k = ρ·c²·A² / V,  ω₀ = √(k/m) = 2πf

Поширені запитання

Що визначає висоту тону, який ви чуєте, дмухаючи над пляшкою?

Висота тону — це резонансна частота Гельмгольца f = (c/2π)·√(A/(V·L_еф)), яка повністю визначається площею поперечного перерізу шийки A, об'ємом порожнини V та ефективною довжиною шийки L_еф. Вона не залежить від сили видиху — сильніший видих лише робить тон гучнішим, а не вищим чи нижчим.

Чому дмухання над шийкою (а не в неї) створює тон?

Дмухання над краєм створює нестабільний, коливний струмінь повітря (крайовий тон), який скидає турбулентні пориви в широкому діапазоні частот. Порожнина та шийка приймають і підсилюють лише одну частоту, що відповідає їхньому власному природному (гельмгольцівському) резонансу, фільтруючи шумний струмінь в один чистий тон — той самий механізм зворотного зв'язку, що використовується у флейтах та окаринах.

Чому більші порожнини дають нижчі тони?

Частота масштабується як 1/√V, тож більша повітряна порожнина діє як м'якша, слабша пружина, що повертає повітряну пробку шийки на місце. М'якша пружина коливається повільніше, точно як важчий тягарець маятника чи м'якша підвіска автомобіля: менша жорсткість означає нижчу частоту за тієї ж маси.

Чому довша або вужча шийка також знижує тон?

Довша шийка (більше L) безпосередньо збільшує L_еф, а і L_еф, і V стоять у знаменнику під коренем, тож збільшення будь-якого з них знижує f. Вужча шийка (менше A) теж знижує f, оскільки A стоїть у чисельнику — менша площа перерізу означає слабший поштовх від стисненого повітря порожнини на пробку повітря в шийці.

Що таке поправка на кінці і навіщо вона потрібна?

Поправка на кінці, 1,6·√(A/π), враховує те, що коливна повітряна пробка не зупиняється точно на геометричних кінцях шийки — вона захоплює трохи додаткового повітря одразу за кожним отвором під час руху. Ігнорування цієї поправки занижує ефективну рухому масу і передбачає тон, помітно вищий за реальний, особливо для коротких широких шийок.

Які реальні приклади резонаторів Гельмгольца?

Дмухання над пляшкою з газованим напоєм, резонаторна камера вихлопної системи автомобіля, налаштована на гасіння певних частот гулу двигуна, фазоінверторний (bass-reflex) корпус гучномовця, що підсилює низькі баси через налаштований порт, окарини і навіть резонансні камери деяких гітар та барабанів — усе це працює як резонатори Гельмгольца: порожнина повітря, з'єднана із зовнішнім середовищем через вузьку шийку.

Чим резонанс Гельмгольца відрізняється від гармонічного резонансу труби?

Відкрита або закрита труба (як органна труба чи корпус флейти) підтримує цілу сім'ю гармонік стоячих хвиль, оскільки звукові хвилі рухаються туди-сюди вздовж її довжини. Резонатор Гельмгольца має лише один домінантний резонанс, оскільки поводиться як єдина зосереджена система маса-пружина — повітряна пробка шийки коливається на повітряній пружині порожнини як єдине ціле, а не підтримує картину стоячої хвилі.

Звідки береться демпфування в резонаторі Гельмгольца?

Демпфування виникає через в'язке тертя повітря об стінки шийки, теплові втрати на межі порожнини та акустичне випромінювання звукової енергії з отворів шийки. Вище демпфування розширює і сплощує пік резонансу (нижчий Q), тоді як нижче демпфування дає гостріший, вищий, точніше налаштований пік.

Чи змінює сила видиху резонансну частоту?

Ні — у цій лінійній моделі маса-пружина-демпфер сила видиху лише масштабує амплітуду рушійної сили і, відповідно, розмір коливання, а не його частоту. Частота повністю визначається A, V та L_еф через формулу Гельмгольца, тому показник залишається сталим, коли ви піднімаєте чи опускаєте повзунок сили видиху.

Про цю симуляцію

Автор: Команда MySimulator · Редакційна перевірка: Редакція MySimulator

Оновлено: 11 липня 2026 р.

Ця симуляція розв'язує реальне рівняння маса-пружина-демпфер, що лежить в основі резонансу Гельмгольца: повітряна пробка, захоплена в шийці пляшки, збуджується на власній частоті порожнини, а її рух інтегрується кадр за кадром, а не імітується фіксованою синусоїдою. Ті самі A, V та L_еф, які ви задаєте повзунками, напряму подаються у фізичну масу, жорсткість пружини та демпфування, що використовуються для анімації пробки та побудови кривої резонансної відповіді.

🔬 Що це показує

Переріз пляшки з коливною повітряною пробкою, анімованою всередині шийки за допомогою чисельно інтегрованої моделі маса-пружина-демпфер, поряд із живою кривою амплітуда-частота, обчисленою за тими самими фізичними параметрами, що показує, наскільки гострим або широким є пік резонансу.

🎮 Як користуватися

Задайте площу шийки A, довжину шийки L та об'єм порожнини V, щоб миттєво змінити резонансну частоту; використовуйте повзунок сили видиху, щоб змінити, наскільки енергійно збуджується пробка (гучніше, а не вище за тоном). P — пауза, R — скидання.

💡 Чи знали ви?

Та сама фізика, що дозволяє налаштувати тон пляшки, наливаючи в неї воду (зменшуючи V, підвищуючи f), навмисно використовується автомобільними інженерами, які підбирають розмір резонаторних камер у вихлопній системі, щоб погасити одну конкретну небажану частоту гулу двигуна.

Поширені запитання

Як саме симуляція обчислює частоту, показану на індикаторі?

helmholtzFreq() спочатку викликає effectiveLength(A, L), щоб отримати L_еф = L + 1,6·√(A/π), а потім повертає (c/2π)·√(A/(V·L_еф)), використовуючи ті самі A і V, що ви задали повзунками — показник ніколи не є окремою оцінкою, це буквальне значення, підставлене прямо в осцилятор, що керує анімацією.

Які маса та жорсткість пружини використовуються всередині осцилятора і звідки вони беруться?

airMass() повертає m = ρ·A·L_еф, а springConstant() повертає k = ρ·c²·A²/V — обидва значення виводяться безпосередньо з геометрії шийки та порожнини; підставляючи їх назад у ω₀ = √(k/m), отримуємо точно те саме значення helmholtzFreq(), що й гарантує повну відповідність анімованого коливання та відображуваної частоти.

Чому зміщення повітряної пробки наростає поступово, а не одразу досягає повної амплітуди?

stepPhysics() інтегрує v += acc·dt, а потім x += v·dt на кожному підкроці, де acc містить доданок демпфування −2·ζ·ω₀·v; оскільки збудження прикладається безперервно на резонансній частоті, амплітуда зростає лише поступово до свого стаціонарного значення — так само, як реальній пляшці потрібно кілька циклів коливань, щоб «розкрутитися» до повної гучності після початку видиху.

Що насправді контролює фіксоване значення zeta і чому Q завжди показується як 1/(2·zeta)?

zeta — це коефіцієнт демпфування, що використовується як у stepPhysics() для уповільнення анімованого коливання, так і в sweepAmplitude() для формування аналітичної кривої резонансу, тож показник Q (Q = 1/(2·zeta)) не є окремим декоративним числом — збільшення zeta в коді одночасно розширить накреслений пік і змусить анімовану пробку швидше досягти стаціонарного коливання з меншою кінцевою амплітудою.

Як саме генерується крива резонансної відповіді внизу полотна?

sweepAmplitude(freq) обчислює замкнену формулу керованого осцилятора X(ω) = F₀/√((ω₀²−ω²)² + (2·zeta·ω₀·ω)²) для багатьох вибірок частоти навколо поточної f0, тож ця крива не є декоративною — це те саме рівняння, єдина справжня робоча точка якого, при ω = ω₀, і є тим, що stepPhysics() анімує наживо на діаграмі пляшки над нею.