Помогите с математикой

Простейшие вопросы в области инженерной разработки
Ответить
Аватара пользователя
jane_wild
advanced
advanced
Сообщения: 177
Зарегистрирован: 30 июн 2016, 02:11
Репутация: 0
Версия LabVIEW: 2016
Контактная информация:

Помогите с математикой

Сообщение jane_wild »

Всем здравствуйте. Ребята нужна помощь с математикой. Суть проблемы в следующем. Генерируется синусоидальный сигнал от 50 до 5000Гц и амплитудой 0-10В, далее этот сигнал проходит через фильтр низких частот и усиливается. Собственно в фильтре вся проблема, он немного ослабляет сигнал и чем выше частота, тем больше это ослабление. Вот я и думаю разработать VI который принимает на вход два параметра - амплитуду и частоту и на выход выдает скорректированную амплитуду. Величина коррекции зависит от частоты. Допустим нужна частота 2200Гц и амплитудой 6в. На вход приходят эти параметры а с выхода выходит не 6в, а 6.113 - после фильтра получится как раз требуемых 6.
Ниже представлены две колонки. В первой частота, во второй амплитуда после фильтра. Подавала 6 вольт на вход. На частотах ниже 400 Гц влияния фильтра практически не замечено.
400 6.000
700 5.999
900 5.995
1200 5.978
1400 5.964
1600 5.948
1900 5.919
2200 5.887
2400 5.863
2600 5.836
2900 5.793
3200 5.756
3400 5.713
3600 5.679
3900 5.624
4300 5.546
4700 5.46
5000 5.394
Собственно не могу сообразить как воплотить эту коррекцию в VI.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1856
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Помогите с математикой

Сообщение Artem.spb »

По-простому можно сделать кусочно-линейную интерполяцию.
interpol.png
Если совсем идеально хочется, можно найти функцию по кривой.
Снимок.PNG
Но всё это как-то сомнительно выглядит.
Какова цель махинаций?

Аватара пользователя
jane_wild
advanced
advanced
Сообщения: 177
Зарегистрирован: 30 июн 2016, 02:11
Репутация: 0
Версия LabVIEW: 2016
Контактная информация:

Re: Помогите с математикой

Сообщение jane_wild »

Artem.spb, Спасибо за идею. Нужно будет подумать как адаптировать для значений (не 6в). В смысле threshold y (на snippet) это вход частоты, константа 6 это вход для амплитуды, выход y это значение на которое нужно умножить вход что бы получить значение 6 после фильтра. Как то путано получилось :)
Цель махинаций простая. Мне нужно получить синусоиду. Я ввожу частоту и амплитуду. Подключаюсь мультиметром на выход усилителя и вижу эту самую частоту и амплитуду. Все хорошо, если частота не превышает 400Гц - выше фильтр оказывает влияние занижая амплитуду. Вывод перед созданием задачи, зная частоту можно скорректировать амплитуду, что бы после фильтра получить желаемое значение. Пользователь ввел 6 вольт и 3200Гц - VI выдал на выходе 6/5.756*6 = 6.25. Создаётся задача Амплитуда 6.25В частота 3200. В результате после фильтра получаем желаемые 6 вольт…
PS. RMS либо Pk-Pk я опускаю для упрощения, что бы был понятен сам смысл проблемы
Если совсем идеально хочется, можно найти функцию по кривой
Это было бы идеально. Я пробовала найти эту самую функцию используя Excel - по данным нарисовала график и создала trendline посмотрела на функцию, но так и не поняла как ей пользоваться, если подставлять реальные значения вместо х и у, то получается полный бред.

Аватара пользователя
jane_wild
advanced
advanced
Сообщения: 177
Зарегистрирован: 30 июн 2016, 02:11
Репутация: 0
Версия LabVIEW: 2016
Контактная информация:

Re: Помогите с математикой

Сообщение jane_wild »

Вообщем вот что получилось. По идее повышающие коэффициенты не должны зависеть от амплитуды, поэтому расчет был произведен для упомянутых 6-ти вольт. Завтра попробую
Level Calcl.png

Юрий
professional
professional
Сообщения: 350
Зарегистрирован: 28 фев 2010, 18:04
Репутация: 0
Версия LabVIEW: LV2015
Контактная информация:

Re: Помогите с математикой

Сообщение Юрий »

Если фильтр цифровой, то его АЧХ без особого труда может быть установлена. А если аналоговый, то её можно определить обычными средствами. Когда то давно я так и поступал для воспроизведения реальной амплитуды вибростенда на его верхних частотах, датчик заваливал значения амплитуды. Но вот как аппроксимировал не помню. В то время любил использовать полиномы.

Аватара пользователя
jane_wild
advanced
advanced
Сообщения: 177
Зарегистрирован: 30 июн 2016, 02:11
Репутация: 0
Версия LabVIEW: 2016
Контактная информация:

Re: Помогите с математикой

Сообщение jane_wild »

Завтра попробую
Работает очень даже точно! :dance:
Artem.spb, Спасибо за идею с интерполяцией

Ответить

Вернуться в «Для чайников»