|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 12:38 am
|
Страница 1 от 1
|
[ 7 мнения ] |
|
определяне на фазова разлика .....
| Автор |
Съобщение |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 определяне на фазова разлика .....
Знаи, в момента ползвам FFT но той е оптимизиран точно за тая цел, при което семплирането се прави с 4/3 F, но пък самия алгоритъм не е много точен.
Гледам различни FFT алгоритми, но нещо не мога да вдяна, досега съм ползвал ето това http://alglib.sources.ru/fft/ като за РС, но не ми се е налагало да определям фазово отместване а само честтотен спектър. Тая библиотека ми дава или честотно разпределение или ми възстановява сигнала, но как обаче се смята фазово отместване, за сведение само сигнала е cosin функция. По дебелите книги пише artang(Im/Re), но това не ми дава тея стойности ..... естествено това съм го чел толкова отдавна че нищо не ми еостанало в главата, няма да откажа малко свежи идеи.
|
| Нед Окт 29, 2006 6:42 pm |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
това дето го пише в дебелите книги е така, atan(Y/X) ти дава фазата. Y е интеграл на сигнала умножен по sin(w*t), Х е интеграл на сигнала умножен по cos(w*t). ако сигнала ти е само cos, както твърдиш, фазата ти е 0, понеже У ще излезе 0. имай предвид, че в съседните канали ще получиш сигнал, който е с фазова модулация, тоест в зависимост от момента време, ще дава различни стойности. предполагам, сигнала ти няма да съвпадне по честота с никой от каналите на спектъра, така че нито един канал няма да отразява вярно фазата му. въобще, най-добре кажи какво се мъчиш да правиш.
|
| Нед Окт 29, 2006 11:16 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Ами това е все за далекомера, оригиналния алоритъм позлва този начин за намиране на фзовата разлика м-у излъчения и приетия сигнал, но там изпозлват някакво оптимизирано фурие което семплира на 4/3 от честотта на носещия сигнал. В момент аиам възможност да семплирам на по висока честота, това ще подобри и точноста на корелация. Тъй като сметката ще се прави на РС а не в контролера имам възможност да ползвам и не толкова оптимизирано фурие.
Идеята е да си сметна тази фазова ралика, за да се повиши точноста на измерване, т.е. да влезе под това кеото дава корелацията. Та корелацията ми дава моента в който имам съвпадение, това е точно ехото което ми трябва. Като знам къде се намира като отети вземма времеви интервал от двете страни на точката в която имам корелация, по 32 от двете страни. Така към фурието подавам основно ехото. От там нататък ледва да определя каква е фазовата разлика, и най-накрая да я компенсирам според това от кой отчет съм почнал фурието. Та .... намерих една статийка по въпроса, по скоро дискусия http://www.dsprelated.com/showmessage/62741/1.php а по специално това :
phi2-ph1 = sgn( Im )*pi/2 - arctan(Re/Im)
where Re = mean{ x1(t)*x2(t) }
and Im = -mean{ x1'(t)*x2(t) }
кудето х1 е еталонна честота, това в случай че се сравняват две честоти.
|
| Нед Окт 29, 2006 11:39 pm |
|
 |
|
zaphod
Ранг: Форумен бог
Регистриран на: Нед Юли 24, 2005 10:28 am Мнения: 2658
|
а, ясно. според мене, самата идея за фурие е лоша. в случая е ясно че върнатия сигнал е с честотата на предавания, така че защо ти е спектър? проектирай сигнала само върху носещата (предполагам не спираш генератора), демек интегрирай произведението по носещата и по дефазираната на 90 градуса носеща. произведението по носещата ти е реалната част, по дефазираната носеща ти е имагинерната част. все едно правиш фурие, но само за един канал - носещата. иначе, както ти казах, приемания сигнал ще се окаже между два канала на фурието, и ще стане така че и двата ще ти показват глупости.
|
| Пон Окт 30, 2006 9:30 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Да, това което предлагаш е подобно, да не кажа същото на линка който съм дал, наистина това е по добрия вариант ми се струва. А фурието, защото така беше направен оригиналният алгоритъм, те го използват за да намерят фазата но това няма някакво особенно значение, въпросът е да има резултат. Ще го пробвам това, то аз почнах д го пробвам, ама нещо се отвлякох с други неща 
|
| Вто Окт 31, 2006 9:55 am |
|
 |
|
Syrius-B
Ранг: Форумен бог
Регистриран на: Пон Яну 30, 2006 2:48 am Мнения: 1248 Местоположение: София
|
Честотен анализ ти е нужен, само ако ще отчиташ бързи движения на обекта, който отразява сигнала.
Ако те интересува само разстоянието - напълно достатъчно е амплитудния анализ.
Има и други "номера" в акустиката - но ... всъщност пътя зависи от това, "къде искаш да отидеш".
Така и не се разбра, какво точно правиш (сигурно е тайна  )
|
| Вто Окт 31, 2006 12:05 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Ами знчи с фазовтаа ралика се орпавих, мерси за съветите.
А относно това какво равя, не е тйана, няколк ъпъти споменах, далекомер, трбяв ад амери разстоянието до лицето, и от там идва такава грешка че и без температурна компнесация да е пак няма да разберът,обаче възложителя си държи на точност и ше му я дам щом иска 
|
| Вто Ное 07, 2006 1:18 am |
|
|
|
Страница 1 от 1
|
[ 7 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|