|
|
  |
Измерение фазового сдвига Sin, точность лучше 0,01градуса. |
|
|
|
Dec 18 2006, 17:59
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(sera_os @ Dec 17 2006, 22:47)  2 Stanislav а что вы там говорили о цифровых фазоврателях? Смотрел у аналога, не нашол, мож не там смотрел... Например, любой цифровой КИХ-фильтр с антисимметричными к-тами даёт поворот фазы всех спектральных компонент входного сигнала на 90 град (с учётом задержки, ессно.  Если АЧХ его плоская, для получения произвольного фазового сдвига нужно просто сложить с каким-либо к-том входной сигнал, задержанный на соотв. количество отсчётов, с выходом такого фильтра. Если АЧХ не совсем плоская, нужно её учитывать при сложении. Если интересно, могу рассказать подробнее, или почитайте о "фильтре Гильберта" где-нить. Если частота измерения фиксирована, достаточно имет гораздо более простой (короткий) фильтр, поворачивающий сигнал на 90 гр. и имеющий на заданной частоте известный к-т передачи (напр., 1). Вот структурная схемма предложенного фазовращателя (конечно, могут быть и другие реализации):  Здесь ГФ - гильбертов (или узкополосный) фильтр, поворачивающий фазу на 90 гр., Nз - задержка такого фильтра в отсчётах. Такая штука будет сдвигать сигнал на 45 гр. Варьируя к-ты сложения (не нарисованы), и, при необходимости инвертируя знаки, можно получить произвольный фазовый сдвиг сигнала.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Dec 18 2006, 19:32
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(sera_os @ Dec 18 2006, 19:10)  Мужики я столько умных слов не знаю  . Простиче но я нехочу задавать глупые вопросы, но на вашем "языке" общение поддерживать трудно. Думаю на даный момент подберу DSP и ADC согласно вашим рекомендациям, походу буду разбиратся с методами и когда вознут обоснованые вопросы, куда я от вас денусь, буду спрашивать. Спрашивайте, на то он и форум. "Умные слова" выучить придётся: без этого нормального технического общения, как видите, не получается. Речь же шла о довольно простых вещах, думаю, поковырявшись с Матлабом, можно освоить методику довольно быстро. Ну, и литература по ЦОС, конечно. В родных закромах её довольно много, есть и на русском.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Jan 13 2007, 17:02
|
Частый гость
 
Группа: Свой
Сообщений: 133
Регистрация: 27-05-05
Пользователь №: 5 445

|
Цитата(Oldring @ Dec 18 2006, 13:57)  Что-то Вы путаете http://www.priborelektro.ru/price/F2-16.ph...686&print=1У рекомендованной замены http://www.priborelektro.ru/price/F2-34.php4?deviceid=689 точность не намного выше. Т. е. человек все-таки хочет получить более чем на порядок более высокую точность, чем была у серийной советской техники. Напутал, бесспорно. Повспоминал и всплыло в памяти, что все-таки было гетеродинирование. В качестве компенсации морального вреда. В разработках измерять такую разность фаз не приходилось, но компенсировать как-то понадобилось. Разность фаз приводилась к определенной величине при помощи обратной связи. Детектор - очень хороший балансный смеситель + УПТ. Регулировалась емкость слабо связанного варикапа . Достигнуто разрешение не хуже требующегося, относительно простыми средствами. Однако, вне петли обратной связи будут проблемы со стабильностью. И еще. Посоветую книгу для общего развития: Кузнецов В.А. Измерения в электронике: справочник 1987 Там перечислены популярные методы измерения (на тот момент). Есть в "колхозе" (lib.homelinux.org)
--------------------
Зачем скоту свобода мысли?
|
|
|
|
|
Jul 28 2007, 20:33
|
Частый гость
 
Группа: Новичок
Сообщений: 129
Регистрация: 4-08-06
Пользователь №: 19 327

|
Цитата(bureau @ Jul 28 2007, 10:28)  Может у кого-то есть пинцыпиальная схема за этим алгоритмом? Что б лутше понять как оно работает... Или может кто подскажет где можно ее найти? В аналоговой формре я бы не взялся такое делать. А вот в цифровом доводилось. Формируются три суммы ("интегралы") - из квадратов синусоид и из их произведения (на самом деле формировалось пять сумм - ещё суммировались сами синусоиды, после чего эти данные использовались для исключения постоянной составляющей). В результате получаются два квадрата амплитуд и их произведение кмнлженное ещё и на косинус_фи. Теперь найти этот самый фи - раз плюнуть, так? Но есть и серьёзные проблемы. Главная - суммы должны браться за целое число периодов или накапливаться очень-очень долго. В цифровой форме невязка будет всегда, она обусловлена некратностью и несинхронностью частоты оцифровки и входного сигнала. Цифровой фильтр, обеспечивающий нужную степень подавления переменной составлящей на выходе сумматоров мне создать не удалось, а то что получалось по формулам из умных книжек выходило за рамки вычислительных возможностей i196. Вот и приходилось ловить переходы через ноль и балансировать между пляской младших цифр и скоростью обновления табло. Боюсь, что с заявленной Вами точностью этот метод не справится. Впрочем, это относится и к любому другому методу - малейшее нелинейное искажение в тракте или гармоники в самих сигналах - и всё. Перегнать входные сигналы в дискретные уровни и непосредственно замерить задержку? В момент преобразования возникнут те же проблемы. Но, тем не менее, именно этот путь мне представляется самым надёжным.
|
|
|
|
|
Jul 29 2007, 09:04
|
Участник

Группа: Участник
Сообщений: 70
Регистрация: 22-04-07
Из: Poltava/Kharkov
Пользователь №: 27 243

|
Цитата(Stanislav @ Dec 14 2006, 21:47) Для измерения сдвига фазы можно использовать 2 метода: аналоговый и цифровой (или их комбинацию). Первый состоит в измерении среднего значения произведения двух синусоид с последующей нормировкой этого значения по их амплитудам и вычислении арккосинуса от этой величины, с использованием аналоговых умножителей, фильтров и функциональных преобразователей. По нынешним временам, довольно сложен и неудобен. Цитата(bureau @ Jul 28 2007, 11:28)  Может у кого-то есть пинцыпиальная схема за этим алгоритмом? Что б лутше понять как оно работает... Или может кто подскажет где можно ее найти? Мне тоже интересно. Я вот набросал, что скажут понимающие?
phase.pdf ( 76.46 килобайт )
Кол-во скачиваний: 667
|
|
|
|
|
Jul 29 2007, 13:17
|
Частый гость
 
Группа: Новичок
Сообщений: 129
Регистрация: 4-08-06
Пользователь №: 19 327

|
Цитата(Sergey Reva @ Jul 29 2007, 11:04)  Мне тоже интересно. Я вот набросал, что скажут понимающие?
phase.pdf ( 76.46 килобайт )
Кол-во скачиваний: 667Отлично, за исключением нескольких моментнов. 1. Попробуй поиграть частотой f в пределах одного герца, чтобы в 1 секунду не укладывалось целое число периодов. 2. Попробуй добавить чуть-чуть гармоник. 3. Добавь конечную разрядность АЦП.
Сообщение отредактировал SasaTheProgrammer - Jul 29 2007, 13:20
|
|
|
|
|
Jul 29 2007, 19:31
|
Участник

Группа: Участник
Сообщений: 70
Регистрация: 22-04-07
Из: Poltava/Kharkov
Пользователь №: 27 243

|
Добавил разрядность АЦП, тут MathCad 2001 расчёт и pdf с результатом.
mcd_pdf.zip ( 122.49 килобайт )
Кол-во скачиваний: 415 То что алгоритм работает при частоте большей чем выборок/сек имеет мат.доказательство? Потому что при установке частоты больше, получается нормальный результат, или это только на модели? Можно пример как добавить гармоник, а самое главное, в каком количестве?
Сообщение отредактировал Sergey Reva - Jul 29 2007, 19:32
|
|
|
|
|
Jul 29 2007, 23:11
|
Частый гость
 
Группа: Новичок
Сообщений: 129
Регистрация: 4-08-06
Пользователь №: 19 327

|
Цитата(Sergey Reva @ Jul 29 2007, 21:31)  Добавил разрядность АЦП, тут MathCad 2001 расчёт и pdf с результатом.
mcd_pdf.zip ( 122.49 килобайт )
Кол-во скачиваний: 415 То что алгоритм работает при частоте большей чем выборок/сек имеет мат.доказательство? Потому что при установке частоты больше, получается нормальный результат, или это только на модели? Можно пример как добавить гармоник, а самое главное, в каком количестве? Связь погрешности с частотой выборок довольно простая - время между выборками ограничивает невязку. Точнее, должно ограничивать, суммирование нужно прекращать на границе периодов, а не устанавливать жёстко 4096. Как "обучить" этому MathCad - не знаю. В рассматриваемом случае, скорее всего, ещё сказывается отличие дискретной математики от непрерывной, сумма амё-таки не интеграл, но чем больше соотношение частот выборки и входного сигнала - тем меньше эти отличия сказываются. При заданом соотношении добавлять гармоники, собственно, некуда, они "вылетят" за Котельникова-Найквиста (в данном случае - 2048Гц). Добавить их просто - нужно к функцям входного сигнала прибавить ещё пару-тройку синусоид с частотами 2f, 3f, etc. А вот с какой амплитудой - зависит от реальных условий. Итого: некратность частот и 16-ти битное преобразование уже в семь раз портят точнось (по сравнению с требуемой) :-( .
|
|
|
|
|
Dec 10 2007, 08:22
|
Бывалый
    
Группа: Свой
Сообщений: 1 584
Регистрация: 7-08-07
Пользователь №: 29 615

|
Цитата(SasaTheProgrammer @ Jul 30 2007, 02:11)  Связь погрешности с частотой выборок довольно простая - время между выборками ограничивает невязку. Точнее, должно ограничивать, суммирование нужно прекращать на границе периодов, а не устанавливать жёстко 4096. Как "обучить" этому MathCad - не знаю. В рассматриваемом случае, скорее всего, ещё сказывается отличие дискретной математики от непрерывной, сумма амё-таки не интеграл, но чем больше соотношение частот выборки и входного сигнала - тем меньше эти отличия сказываются. При заданом соотношении добавлять гармоники, собственно, некуда, они "вылетят" за Котельникова-Найквиста (в данном случае - 2048Гц). Добавить их просто - нужно к функцям входного сигнала прибавить ещё пару-тройку синусоид с частотами 2f, 3f, etc. А вот с какой амплитудой - зависит от реальных условий.
Итого: некратность частот и 16-ти битное преобразование уже в семь раз портят точнось (по сравнению с требуемой) :-( . До кучи. Добавьте смещения y1 и y2. Измените частоты y1 и y2 незначительно и в разы (там у автора было требование, кажется).  Рекомендую, не привязываться к максимумам, т.к. это пологий участок синусоиды (дополнительная погрешность).
|
|
|
|
|
Dec 17 2007, 17:58
|
Частый гость
 
Группа: Участник
Сообщений: 82
Регистрация: 25-04-06
Пользователь №: 16 480

|
Интересная тема - такое жаркое обсуждение вышло! Правда, до конца не дочитал. Прецизионные измерения фазового сдвига я производил неоднократно, пользуясь модулями цифрового приёма на основе 12..16-разрядных АЦП и DDC (Digital Down Conwerter). В случае, если для формирования сигнала используется DDS - вообще лафа - можно сделать систему с общим тактированием, в которой низкочастотные фазовые шумы опоры взаимно компенсируются. Чувствительность 0,01 градуса - вполне нормальное значение. Узкая полоса фильтров DDC и высокая разрядность с их выхода позволяют получать значение фазы (арктангенс отношения I/Q)с очень высокой точностью. Основная проблема - калибровка (для компенсации межканального фазового рассогласования) каналов. Всего требуется 2 измерительных канала с АЦП и DDC. Но оба канала вначале можно откалибровать по входному сигналу от DDS, а затем второй канал переключить на выход. В общем-то, даже не приводя выкладок, скажу - инструментальная точность и дискрет 0,01 градуса вполне реальны. Смотрите изделия insys.ru
|
|
|
|
|
Dec 17 2007, 18:24
|
Гуру
     
Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261

|
Цитата(Alias @ Dec 17 2007, 20:58)  Прецизионные измерения фазового сдвига я производил неоднократно, пользуясь модулями цифрового приёма на основе 12..16-разрядных АЦП и DDC (Digital Down Conwerter). Для вычисления фазового сдвига нужно лишь найти два коэффициента в разложении в ряд Фурье: a = (2/M)*Sum[S(t)*cos(2*Pi*F*t)] и b = (2/M)*Sum[S(t)*sin(2*Pi*F*t)], где M - число отсчетов синуса S(t). Тогда аппроксимация синуса: S'(t) = a*cos(2*Pi*F*t)+b*sin(2*Pi*F*t). Зная a и b, можно вычислить сдвиг. Для грубой оценки точности вычисления фазы можно воспользоваться известной формулой для отношения сигнал/шум на выходе АЦП: SNR = 6.02*N+1.76 С учетом усреднения по M точкам, SNR будет: SNR = 6.02*N+1.76+10*lg(M/2) Ошибка при вычислении коэффициентов a и b составит: ERR(a) = 10^(-(6.02*N+1.76+10*lg(M/2))/20) = = SQRT(2/M)*10^(-(6.02*N+1.76)/20) В разложении арктангенса вблизи нуля в ряд Тейлора можем оставить один член: Ошибка_Фазы = arctg((a+/-ERR(a))/(b+/-ERR(b ))) = = (a+/-ERR(a))/(b+/-ERR(b )) = 2*ERR(a) = = 2*SQRT(2/M)*10^(-(6.02*N+1.76)/20) Для 10-ти разрядного АЦП: M = 256 точек и N = 10 бит АЦП находим: Ошибка_Фазы = 1.411e-4 [радиан] или Ошибка_Фазы = 0.0081 [градус].
Сообщение отредактировал blackfin - Dec 17 2007, 18:28
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|