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

Простейшие вопросы в области инженерной разработки

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

Postby jane_wild on 11 Jul 2019, 14:55

Всем здравствуйте. Ребята нужна помощь с математикой. Суть проблемы в следующем. Генерируется синусоидальный сигнал от 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.
User avatar
jane_wild
assistant
assistant
 
Posts: 124
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 5

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

Postby Artem.spb on 11 Jul 2019, 15:53

По-простому можно сделать кусочно-линейную интерполяцию.
interpol.png


Если совсем идеально хочется, можно найти функцию по кривой.
Снимок.PNG


Но всё это как-то сомнительно выглядит.
Какова цель махинаций?
Artem.spb
expert
expert
 
Posts: 1580
Joined: 31 Jul 2011, 23:05
Medals: 2
Activity (1) Автор (1)
LabVIEW Version: 12,14,15
Karma: 254
CLD hardware I/O VIP freelance

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

Postby jane_wild on 11 Jul 2019, 18:21

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 посмотрела на функцию, но так и не поняла как ей пользоваться, если подставлять реальные значения вместо х и у, то получается полный бред.
User avatar
jane_wild
assistant
assistant
 
Posts: 124
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 5

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

Postby jane_wild on 11 Jul 2019, 23:16

Вообщем вот что получилось. По идее повышающие коэффициенты не должны зависеть от амплитуды, поэтому расчет был произведен для упомянутых 6-ти вольт. Завтра попробую
Level Calcl.png
User avatar
jane_wild
assistant
assistant
 
Posts: 124
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 5

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

Postby Юрий on 12 Jul 2019, 17:29

Если фильтр цифровой, то его АЧХ без особого труда может быть установлена. А если аналоговый, то её можно определить обычными средствами. Когда то давно я так и поступал для воспроизведения реальной амплитуды вибростенда на его верхних частотах, датчик заваливал значения амплитуды. Но вот как аппроксимировал не помню. В то время любил использовать полиномы.
Юрий
developer
developer
 
Posts: 297
Joined: 28 Feb 2010, 18:04
LabVIEW Version: LV2015
Karma: 55

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

Postby jane_wild on 12 Jul 2019, 20:57

Завтра попробую

Работает очень даже точно! :dance:
Artem.spb, Спасибо за идею с интерполяцией
User avatar
jane_wild
assistant
assistant
 
Posts: 124
Joined: 30 Jun 2016, 02:11
LabVIEW Version: 2016
Karma: 5


Return to Для чайников

Who is online

Users browsing this forum: Bing [Bot] and 3 guests

cron