Рабочая заметка · динамика вращения · часть I
Ускорение датчика на вертикально вращающемся колесе
Как из кинематики точки на окружности и определения того, что вообще измеряет акселерометр, получить сигнал a(t), обнулить его наверху, удвоить внизу — и разложить в ряд Фурье.
Экспериментальная установка крутит колесо в вертикальной плоскости и снимает показания акселерометра, закреплённого на ободе, — то есть в неинерциальной, вращающейся системе отсчёта. Эта заметка — теоретический ноль-пункт для интерпретации таких данных: мы выводим сигнал датчика с нуля, подбираем угловую скорость так, чтобы наверху обод был «невесомым» (0 g), а внизу перегрузка была ровно 2 g, получаем закрытую формулу и раскладываем её в ряд Фурье. Численная проверка (БПФ) сходится с аналитикой до 10−13. Материал рассчитан на первокурсников, знакомых с кинематикой точки и начатками рядов Фурье.


Постановка задачи
Диск радиуса R вращается в вертикальной плоскости вокруг неподвижной горизонтальной оси с постоянной угловой скоростью ω. На ободе закреплён датчик — трёхосевой акселерометр, который вращается вместе с диском и меряет ускорение в своей собственной, неинерциальной системе отсчёта. Всё происходит на поверхности Земли, в однородном поле тяжести g.
Нас интересует не абстрактное вращение, а конкретный, «настроенный» режим: угловую скорость подбирают так, чтобы в тот момент, когда датчик проходит верхнюю точку обода, модуль его показаний обращался в ноль, а когда он проходит нижнюю точку — был ровно 2g. Это узнаваемая ситуация: то же самое условие определяет минимальную скорость на верхней точке мёртвой петли американских горок. Мы получим её строго, из первых принципов.
Задача из четырёх шагов:
- понять, что вообще «чувствует» акселерометр (§2);
- расписать кинематику точки на ободе в неподвижных осях (§3);
- собрать из них показания датчика a(t) и подобрать ω под условие 0 g / 2 g (§4–§5);
- изучить получившийся сигнал — его форму, годограф и спектр (§6–§8).
| Обозначение | Смысл |
|---|---|
| R | радиус диска (обода), м |
| g | ускорение свободного падения, 9.81 м/с² |
| ω | угловая скорость вращения диска (постоянная), рад/с |
| θ(t) = ωt | угол поворота датчика от верхней точки |
| T = 2π/ω, f = 1/T | период и частота вращения |
| aист(t) | истинное (инерциальное) ускорение точки обода |
| a(t) | показания акселерометра (в его собственных осях) |
Что вообще чувствует акселерометр
Первая и самая важная тонкость: акселерометр не измеряет гравитацию напрямую. Внутри MEMS-акселерометра лежит пробная масса на пружинках; прибор измеряет, с какой силой пружинки должны тянуть эту массу, чтобы она двигалась вместе с корпусом. Гравитация же действует на пробную массу и на корпус одинаково — она не создаёт растяжения пружинок и потому «невидима» для датчика.
Проверьте на бытовом примере: телефон, спокойно лежащий на столе, показывает g ≈ 9.8 м/с² вверх, хотя его истинное ускорение равно нулю (он не движется). Опору держит стол, и именно силу опоры — точнее, ускорение, которое эта сила вызвала бы при отсутствии гравитации — и регистрирует прибор. А в свободном падении, когда единственная сила — гравитация, акселерометр показывает ровно ноль, хотя истинное ускорение равно g.
Здесь N — та самая «неупругая» сила связи (натяжение спиц, реакция опоры и т.п.), которую и меряет акселерометр, делённая на массу. Общая формула показаний прибора:
Векторы здесь и далее выделены жирным курсивом. Это соотношение — по сути формулировка слабого принципа эквивалентности: акселерометр не может отличить «покой в гравитационном поле» от «равноускоренное движение вдали от масс» — он чувствует только разницу между истинным ускорением и g.
Кинематика точки на ободе
Ось диска неподвижна, центр диска в начале координат. Ось x — горизонтально вправо, ось y — вертикально вверх. Пусть в момент t = 0 датчик находится в верхней точке. Положение датчика на ободе:
Дифференцируем дважды по времени. Поскольку ω = const, угол растёт линейно, и вторая производная не содержит «тангенциального» слагаемого — только центростремительное:
Здесь важно физическое допущение: диск вращается равномерно (мотор поддерживает ω = const независимо от угла), поэтому тангенциальное ускорение всегда нулевое — в отличие, скажем, от шарика на нитке, который в верхней точке петли может замедляться под действием той же гравитации. Это упрощение стоит держать в уме: в реальных данных мотор не идеален, и лёгкая тангенциальная составляющая неизбежно появится.
Показания датчика
Подставляем (3) в формулу §2 (уравнение показаний акселерометра), с gвект = (0, −g):
ay(t) = g − ω²R cos θ
Это уже полный ответ на вопрос «что покажет акселерометр в момент t» — для любого R и ω, ещё без всякой настройки под 0g/2g. Дальше подбираем частоту.
Подбор частоты: 0 g наверху, 2 g внизу
Подставим две особые точки. Наверху (θ = 0): ax = 0, ay = g − ω²R. Внизу (θ = π): ax = 0, ay = g + ω²R. Модули:
Требуем |a|верх = 0:
И тут же, без дополнительных условий, из (4) получаем |a|низ = g + g = 2g. Свободного параметра больше нет: как только зафиксировали «0g наверху», «2g внизу» получается автоматически. Это не совпадение — при ω²R = g гравитация ровно компенсирует центростремительное ускорение наверху и ровно удваивает его внизу, потому что в обеих точках они действуют вдоль одной вертикали.
Условие ω²R = g — это в точности условие минимальной скорости в верхней точке мёртвой петли американских горок (там из требования N ≥ 0 для вагонетки, свободно скользящей по треку). Разница в физической постановке: там это нижняя граница скорости для свободного тела на треке, здесь — точное значение для тела, принудительно вращаемого мотором с постоянной ω. Уравнение одно и то же, потому что в обеих задачах в верхней точке требуется именно равенство центростремительного ускорения и g.
Численно, для R = 0.15 м (значение по умолчанию в скрипте): ω ≈ 8.087 рад/с, частота вращения f = ω/2π ≈ 1.287 Гц, период T ≈ 0.777 с. Подставьте реальный радиус вашего стенда — частота изменится как 1/√R.
Итоговая формула сигнала
Подставим ω²R = g в показания датчика: ax = −g sin θ, ay = g(1 − cos θ). Модуль:
По формуле половинного угла 1 − cos θ = 2sin²(θ/2):
Обратите внимание на «половинный» аргумент: несмотря на то, что диск делает полный оборот за период T = 2π/ω, сигнал |a(t)| тоже периодичен ровно с периодом T (не T/2) — проверьте это по графику: между двумя нулями (двумя проходами через верх) укладывается ровно один «горб», соответствующий одному проходу через низ.
А вот и сами компоненты — синус и косинус на удвоенной (по сравнению с половинным аргументом модуля) частоте ω, из которых модуль и складывается:
Годограф: геометрия одной окружности
Есть красивый геометрический способ увидеть тот же результат. Так как ax = −g sin θ и ay − g = −g cos θ, то:
Конец вектора a(t) движется по окружности радиуса g с центром в точке (0, g) — и эта окружность проходит ровно через начало координат (0,0). Отсюда сразу видно, почему в верхней точке возможен точный ноль: начало координат лежит на окружности, а не просто рядом с ней.
Формула |a(t)| = 2g|sin(θ/2)| теперь читается как длина этой хорды: расстояние от точки на окружности радиуса g до фиксированной точки той же окружности, если центральный угол между ними равен θ, равно 2g sin(θ/2) — классический факт геометрии окружности (следствие теоремы о вписанном угле), который мы только что вывели из механики, даже не подозревая об этом заранее.
Ряд Фурье: почему в спектре появляются все гармоники
Диск физически вращается на одной частоте f. Наивно можно ожидать, что и сигнал |a(t)| — синусоида на той же частоте. Это не так: операция «модуль» (выпрямление) — нелинейная, и она порождает целый набор гармоник. Это тот же эффект, что и при двухполупериодном выпрямлении переменного тока в электронике — |sin x| является классическим примером с известным рядом Фурье:
Вывод коэффициентов — стандартное упражнение курса рядов Фурье (интеграл an = (2/π)∫₀π|sin x|cos(2nx)dx через формулы произведения синусов); мы не переписываем его здесь целиком — см. задачу 5 в §10 — а вместо этого проверяем результат численно ниже, что для физика не менее убедительно, чем выкладки на бумаге.
Подставляя x = ωt/2 и умножая на 2g, получаем ряд Фурье для реального сигнала:
Постоянная составляющая A0 = 4g/π ≈ 1.273g — это среднее по времени значение показаний датчика. Наивно ожидаешь среднее между 0 и 2g, то есть ровно 1g — но это неверно: сигнал не линеен по времени, вблизи пика (низа обода) он «задерживается» дольше (там |sin| выходит на плато), поэтому среднее смещено вверх, к 1.273g, а не к 1g.
Гармоники затухают как An ∼ 2g/(πn²) — быстро, поэтому уже 5–6 гармоник дают почти точную реконструкцию сигнала. Ниже — сравнение аналитических амплитуд с численным быстрым преобразованием Фурье (БПФ) точек a(t), и то, как частичные суммы ряда сходятся к точной кривой:
Ключевой методический вывод: наличие гармоник n·f в спектре ускорения не означает, что диск вращается на нескольких частотах — это чисто нелинейный эффект перехода от вектора к модулю. Это важно держать в уме, сравнивая со спектром реальных данных: лишние гармоники сами по себе — не аномалия, аномалия — это отклонение от предсказанных здесь амплитуд An.
Что дальше
Эта модель — идеализированный ноль-пункт: постоянная ω, точечный датчик строго на радиусе R, идеальная ось, однородное g. Реальные записи (папки data_* и спектральный анализ в lomb_scargle_spectrum.py) неизбежно будут отклоняться от неё, и сами отклонения информативны:
- рябь на ω(t) — неидеальность мотора — проявится как боковые полосы вокруг гармоник n·f;
- перекос оси датчика относительно плоскости вращения подмешает третью компоненту и исказит амплитуды An;
- несовпадение измеренного A0 с предсказанным 4g/π — простой и быстрый способ проверить калибровку датчика и точность R;
- шум датчика поднимет пол спектра между гармониками, которые в идеальной модели строго равны нулю.
Следующий шаг — наложить это предсказание (Рис. 4) на реальный спектр вращающегося агента из эксперимента и посмотреть, где они расходятся.
Задачи для самопроверки
- Покажите, что при ω²R > g (диск крутится быстрее, чем нужно для невесомости наверху) разность |a|низ − |a|верх всегда равна ровно 2g — для любого такого ω, не только для решения §5. Что происходит с этой разностью при ω²R < g?
- На одном периоде найдите все моменты t, когда |a(t)| = g (датчик кратковременно показывает то же самое, что лежащий на столе телефон). Сколько таких моментов?
- Центр диска сам разгоняется с постоянным ускорением a0 (например, установка стоит на ускоряющейся тележке). Как изменится формула §4 для a(t)? Останется ли верным условие §5?
- Проверьте результат «Неочевидный результат» из §8 напрямую: проинтегрируйте 2g|sin(ωt/2)| по одному периоду и разделите на T, не используя ряд Фурье.
- Для знакомых с рядами Фурье: выведите коэффициенты an ряда |sin x| самостоятельно, используя an = (2/π)∫₀π sin x cos(2nx) dx и формулу произведения sin αcos β = ½[sin(α+β)+sin(α−β)].