Meteor писал(а):Фазовый метод хорош на дистанциях до одного периода
Это верно. Плюс погрешности от задержки в ретрансляторе. Плюс ацп, для 8-ми бит всего 256 градаций.
Попробовал разобраться, как работает фазовый метод.
Т.к. период сигнала - это двойное предельное расстояние между передатчиком и ретранслятором, то реальное предельное расстояние составит всего половину периода.
При сложении оригинального и отраженного сигнала, амплитуда выходного сигнала будет уменьшаться от суммы амплитуд сигналов до их разности при разности фаз 0..180, а потом наоборот - от разности до суммы на промежутке 180..360.
- summ.gif
- Зависимость амплитуды от разности фаз
- (126.24 КБ) 617 скачиваний
Удобнее всего не вычислять разность фаз, а замерять амплитуду разностного сигнала.
Таким способом легко измерять разность фаз от 0 до 180, т.е. двойное предельное расстояние будет половина периода, а реальное, всего четверть периода. Точность при 256 градациях равна 180/256=0,7 градуса
В идеале при разности фаз 0, разность амплитуд равна нулю, а сумма - двойной амплитуде генератора.
В реальности тут будут погрешности. Их можно скомпенсировать подбором типа модуляции, точной настройкой, или же программно - за ноль взять разность амплитуд, за 100% взять сумму амплитуд, но тогда количество используемых градаций ацп уменьшится, и точность измерения упадет, хотя это можно исправить, изменив частоту сигнала, но тогда упадет радиус действия дальномера. Т.е. либо теряем точность, либо радиус действия.
Автор что-то там про машины думал - т.е. расстояние может быть от километра и выше.
Допустим, 10км, тогда нужен сигнал 7,5кгц, несущая от 75кгц и выше, точность в идеале 10000*0,7/90=78м.
Т.е. фазовый метод с измерением половины периода и ацп 8-бит до желаемых 10см сильно не дотягивает.
Либо урезать хотелки, либо забить, т.к. вариант со счетчиками, по моему, гораздо сложнее.
Есть одна идея, как совместить простоту (отсутствие высокоскоростных счетчиков), точность и большое расстояние, но есть некоторые ограничения, и возможна потеря точности при определенных обстоятельствах.
По сути это и есть тот самый счетчик целых полупериодов, что упомянут в одной из разновидностей фазового метода. Только здесь его эмуляция - нет необходимости считать целые полупериоды аппаратно, но есть ненулевая вероятность значительной потери точности.
какие параметры у автора - не знаю, у меня же требуемая дальность 0.5 - 20м, точность +\-10см
Точность 10см, разрешение 8 бит, фазовый метод, измеряем полупериод. Радиус действия 0,1*256/2=13м
Точность 10см, разрешение 9 бит, фазовый метод, измеряем полупериод. Радиус действия 0,1*512/2=26м
Т.е. тебе фазовый метод подойдет. Необходимая точность=180/512=0,35 градуса (9 бит). Частота сигнала с/(26*4)=2,9МГц.
Реально, лучше взять ацп больше, чем 9 бит, т.к. часть разрядов может уйти на компенсацию разности сигналов.
На таком близком расстоянии лучше применить не радио, а лазер или УЗ.
К тому же лазерные дальномеры имеют цепь самонастройки - внутренний канал, заранее известной длины, по которому калибруется дальномер. Точно не знаю, что это - вероятно моток стекловолокна, или бесконечные зеркала. Но такое самому можно собрать.