Перейти к содержанию
    

Какие алгоритмы измерения расстояния используются в лазерных рулетках

Пока два способа нашел которые работают в устройствах
Вам же давали ссылку

http://www.youtube.com/watch?v=PsnzorA0WSs

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это видео посмотрел. Алгоритм измерения у бытовых рулеток одинаковый, многочастотный с близкими частотами расчет дистанции на видео. В зависимости от производителя отличается частоты. Те рулетки которые попали ко мне на обследование )) в них алгоритм такой же как на видео, но частота до 165мгц. На видео частота выше 400мгц. Но в промышленномдальномере который тоже изучил, частота не меняется лазер модулируется sin(2p48mhz)+sin(2p1.5mhz). Схема тоже стандартная. Там очень хорошо реализована фильтрация, а фазу измеряют ацп max197. Тема интересная кто еще что знает расскажите?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет Mhz. клавиша shift не всегда срабатывает крошки мешают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Немного схемку подправил теперь работает на 45 мгц. Измеряю по двум частотам близким 45мгц и 30мгц. На графике экспериментальные измерения вначале объект не двигается, потом начинает движение в сторону от датчика на 6 метров потом обратно к датчику. Подскажите , как используя данные которые на графике получить примерно линейную функцию? atan2(phase1,phase2) от 0 до 360гр получается меньше 6 метров.

post-27923-1434639905_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не совсем понятно написал.

По X дистанция. Старался более менее равномерно двигать объект после начала движения( правда получилось от датчика немного медленней чем к датчику). Скорость регистрации на графике примерно 100мс. По Х получается дистанция, не время. А по Y разница фаз опорного сигнала и отраженного 0-180гр 0-65535.

Фаза1-фаза2 которые на графике, это модуль abc(фаза1-фаза2)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите , как используя данные которые на графике получить примерно линейную функцию?

С этим "безобразием" (по-другому не получается назвать) Вам придется разобраться самостоятельно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Согласен задача не стандартная. Я пытаюсь решить уверен что все получиться. :) Если считаете что то неправильно делаю направьте как надо для этого спрашиваю советов. Совсем близкие частоты получить не получается. На графике уже подсчитанная разница фаз 45Мгц и 30Мгц измеряются параллельно. Сложность в том как увеличить измеряемое расстояние 45мгц 180(верхушка зеленого) дает 3.725 метра а 30Мгц 5м. Потом добавлю еще измерение на других частотах 15и 7.5Мгц чтобы увеличить измеряемое расстояние до 50м с 5мм точностью.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Задача самая стандартная, классическая. Нет ни больших дальностей, ни автоматической регулировки усиления, ни сверхвысоких разрешений (долей мм), ни учета ухода опорного генератора, ни привязки к GPS и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответ. Почти ничего из перечисленного не нужно. Кроме ару оно есть. Я не колайдер делаю а обычный дальномер. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Согласен задача не стандартная. Я пытаюсь решить уверен что все получиться. :) Если считаете что то неправильно делаю направьте как надо для этого спрашиваю советов. Совсем близкие частоты получить не получается. На графике уже подсчитанная разница фаз 45Мгц и 30Мгц измеряются параллельно. Сложность в том как увеличить измеряемое расстояние 45мгц 180(верхушка зеленого) дает 3.725 метра а 30Мгц 5м. Потом добавлю еще измерение на других частотах 15и 7.5Мгц чтобы увеличить измеряемое расстояние до 50м с 5мм точностью.

Без формул однако никак.

Расстояние

d0 = 50*2

волна 30 Мгц

p1 = 3.*10^8/(30.*10^6)

волна 45МГц

p2 = 3.*10^8/(45.*10^6)

фаза 1

f1 = Mod[d0, p1]

фаза 2

f2 = Mod[d0, p2]

 

d0 = n1*p1 + f1 = n2*p2 + f2 n1 и n2 целые.

 

 

res = n2 /. Solve[n1*p1 + f1 == n2*p2 + f2, n2][[1]]

rT = Table[res, {n1, 0, 12}]

При 30 и 45 МГц получается

{-1., 0.5, 2., 3.5, 5., 6.5, 8., 9.5, 11., 12.5, 14., 15.5, 17.}

Видно, что частоты 30 и 45 кратные.

Надо брать взаимно простые, например 11 и 17 МГц

 

Тогда n2= 5 при n1=3

{0.363636, 1.90909, 3.45455, 5., 6.54545, 8.09091, 9.63636, 11.1818, \

12.7273, 14.2727, 15.8182, 17.3636, 18.9091}

Для точности можно ещё 3 й частотой измерить и применить метод наименьших квадратов.

 

Как то так делают

 

для d0=39*2 получается

{0.909091, 2.45455, 4., 5.54545, 7.09091, 8.63636, 10.1818, 11.7273, \

13.2727, 14.8182, 16.3636, 17.9091, 19.4545}

 

n2= 4 при n1=2

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Благодарю сейчас попробую, что бы получить выше точность частоты ведь лучше брать выше 45Мгц 39Мгц ?

Попробовал подсчитать получается f1 = 0 и f2 тоже. d0 = 100, p1 = 10, p2 = 6.6667. f1= mod(d0,p1) = 0; и f2 тоже = 0 .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Набор простых чисел

{2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,67, 71}

Их просто в PLL реализовать и потом считать проще.

Можно и {307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, \

389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457} / 10

Но тогда возрастает требуемая точность измерений примерно раз в 10

 

Если фазы стремятся к 0, тогда и выбирается 3я частота, чтобы фаза была 0.5

Изменено пользователем mcheb

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне кажется проблема в схемотехнике, конкретной реализации, структуре. sergey sva, что Вы брали за основу? Готовы схему показать? Точность меньше 1 мм получается на двух частотах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда сделаю покажу, схему нужно в порядок приводить. Нет в схеме проблем нет, схему сам сделал, но перед этим изучил промышленные дальномеры и рулетки разных производителей, элементы везде заказные просто слизать не получиться. Собрал пока на макетке сравнил характеристики с коммерческим измерителем выше ссылка, что то лучше что то хуже. Я не использовал столько фильтров сколько в том приборе. поэтому точность выше 5мм не будет. в том приборе два мм. и оптика очень сложная, фильтры интерференционные перед фотодиодами фотодиоды у них pin с большой площадью.

С математикой у меня плохо про эту функцию даже не знал Solve ))

Я так понимаю она находит все варианты когда условие совпало/

таблицу с n1 и n2 заранее нужно заполнить n1 и n2 =[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,67, 71] простыми числами после функция найдет все варианты >> solve(n1*p1 + f1 == n2*p2 + f2) И при частотах 45 и 30 f1=f2=0 их можно убрать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...