Экстремальный регулятор

Захват, обработка и генерирование сигнала
Ответить
Аватара пользователя
noise
interested
interested
Сообщения: 3
Зарегистрирован: 09 фев 2012, 15:23
Версия LabVIEW: 10

Экстремальный регулятор

Сообщение noise »

Нужно сделать экстремальный регулятор, который бы подстраивался под входной сигнал по схеме:
Изображение

Высчитывается разница между двумя сигналами, в зависимости от знака выбираются единичные импульсы, которые накапливаются до некоторого порога и затем снова сравниваются с сигналом. Подстроенный сигнал должен колебаться вокруг максимального значения эталона. Я сделал такую схему, но она не совсем корректно работает:
Вложения
Model_1.vi
(31.99 КБ) 85 скачиваний
Untitled456.jpg
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Экстремальный регулятор

Сообщение IvanLis »

noise писал(а):но она не совсем корректно работает
У Вас вроде как суммарный сигнал раскладывается в ряд Фурье, а потом сумма гармоник вычисляется, на скрине совершенно другое.
Вы для начала с физикой процесса разберитесь, несколько контрольных примеров на калькуляторе прорешайте, а только потом программировать надо начинать.
Аватара пользователя
noise
interested
interested
Сообщения: 3
Зарегистрирован: 09 фев 2012, 15:23
Версия LabVIEW: 10

Re: Экстремальный регулятор

Сообщение noise »

Нет никакого суммарного сигнала, после первого сумматора идут единичные импульсы, знак которых зависит от разности входных сигналов. Они накапливаются и образуют ступенчатую зависимость, которую я условно на рисунке показал прямой. Аппаратно данная схема представляет собой блок выделения резонанса (сумматор и F), реверсивный счетчик (второй сумматор) и управляемый генератор частоты в виде множителя. Начиная с нулевого момента, ЭР осуществляет поиск экстремума резонанса, увеличивая частоту обратной связи. После выявления с помощью первого сумматора значения, ЭР переходит в режим рыскания, формируя число-импульсные последовательности и сигнал в установившемся режиме оказывается модулированным по треугольному закону изменения. На калькуляторе тут считать, вобщем-то, и нечего. Хочу заметить, что это является условной моделью, никаких точных значений тут не надо. Программа работает вполне правильно, просто не точно и я рассчитывал услышать какие-либо рекомендации, так как я впервые работаю в данной среде.
Вложения
Безымянный.PNG
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Экстремальный регулятор

Сообщение IvanLis »

noise писал(а):Нет никакого суммарного сигнала, после первого сумматора идут единичные импульсы, знак которых зависит от разности входных сигналов. Они накапливаются и образуют ступенчатую зависимость, которую я условно на рисунке показал прямой.
............
Программа работает вполне правильно, просто не точно и я рассчитывал услышать какие-либо рекомендации, так как я впервые работаю в данной среде.
Жаль, что разочаровал Ваши ожидания. Но изначально вопрос был поставлен следующим образом.
noise писал(а):Нужно сделать экстремальный регулятор, который бы подстраивался под входной сигнал по схеме
Вероятно по этой причине, особо помогающих и не оказалось.
Вот я посмотрел схему, скрин программы и предпринял попытку.


Если вопрос стоит только в корректности (точности) получаемых результатов...
То возникает встречный вопрос, каким образом Вы эту точность оценили?
Возможно, что выбранная вами модель, изначально имеет подобную погрешность....
Аватара пользователя
noise
interested
interested
Сообщения: 3
Зарегистрирован: 09 фев 2012, 15:23
Версия LabVIEW: 10

Re: Экстремальный регулятор

Сообщение noise »

Возможно, что выбранная вами модель, изначально имеет подобную погрешность....
Возможно. Модель взята из книги 79-го года, наверно сейчас существуют более точные методы.

Насчет получения среднего значения есть ли какие-либо другие способы? Этот со временем считает всё дольше и дольше.
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Экстремальный регулятор

Сообщение IvanLis »

noise писал(а):Насчет получения среднего значения есть ли какие-либо другие способы? Этот со временем считает всё дольше и дольше.
Если Вы имеете ввиду участок кода, где цикл до 20.
То там не понятно вообще.
У Вас получается, что Вы извращенным способом получаете массив из 20 элементов, при чем элементы равны между собой!
Считаете среднее на каждой итерации, но это видимо остатки экспериментов, т.к. дальше это не принимается в расчетах.
Потом из полученного массива вычисляете среднее значение, которое в принципе равно значению элемента.
Т.е. смысла в подобных манипуляциях я вообще не вижу.
Если хотите осреднить значения между итерациями внешнего цикла, то используйте прибор PtByPt, как у вас внутри маленького цикла (до 20).
IORIK
adviser
adviser
Сообщения: 240
Зарегистрирован: 14 дек 2010, 20:46
Версия LabVIEW: 7.0; 8.2

Re: Экстремальный регулятор

Сообщение IORIK »

Здравствуйте noise,
то, что вы привели в первом посте - можно назвать "блок-схемой". Она у вас состоит из 4 "черных ящиков" (неизвестных функций). Хоть вы первый и третий "ящик" называете одним и тем же словом "сумматор", но на самом деле они - разные (в одной 2 входных параметра, а в другой - один).
На рисунке приведено некоторое математическое описание блока F, но оно не полное, что означает 1(iT) - не понятно.

Для начала, вам надо описать с помощью формул, что происходит в каждом блоке, какого типа должны быть входные и выходные параметры. а после всей этой математики, возможно, вы сами все сделаете. А если не сможете реализовать мат. аппарат в LV, на форуме вам помогут.
Раз "блок-схема" взята из книги, не поленитесь, прочитайте не только параграф по вашей проблеме, но и всю главу. Некоторые блоки могут быть описаны в предыдущих пунктах.
Аватара пользователя
mxdamage

Activity
assistant
assistant
Сообщения: 113
Зарегистрирован: 11 авг 2011, 15:45
Награды: 1
Версия LabVIEW: 2011
Откуда: Москва
Контактная информация:

Re: Экстремальный регулятор

Сообщение mxdamage »

Насчет получения среднего значения есть ли какие-либо другие способы? Этот со временем считает всё дольше и дольше.
Мало того, что он берет 20 одинаковых элементов, так еще и на каждой итерации их становится все больше и больше - сдвиговый регистр неинициализирован. Поэтому и считает дольше, ворочает массивами из тысяч элементов...
Ответить

Вернуться в «Обработка сигнала»