Содержание
- Устройство лазерного дальномера
- Виды дальномеров
- Применение и функции лазерного дальномера
- Рекомендации по выбору лазерной рулетки
- Как работает инструмент лазерный дальномер
- Принцип работы лазерного дальномера
- Зависимость техники от условий
- Как работать инструментом на улице?
- Правильная эксплуатация
- Самодельный сканирующий лазерный дальномер
Устройство лазерного дальномера
Лазерный дальномер предназначен для измерения расстояний. Работа этого прибора основана на следующем принципе: он посылает лазерный сигнал, который отражается от объекта и возвращается обратно, измеряет время его прохождения и относительно него высчитывает расстояние до объекта. Большинство современных дальномеров имеет компактную форму и удобны в применении. Чтобы пользоваться таким устройством, не нужно особых умений. Лазерные измерители расстояния получили широкое распространение в астрономии, строительстве, военной отрасли и навигации. Дальномеры также применяются для топографических съёмок.
Фотогалерея: разновидности лазерных дальномеров
Топографический лазерный дальномер позволяет вычислять расстояние до территорий или участков землиНавигационный дальномер помогает определять расстояние до объектов на водеЛазерные дальномеры используют в военной отрасли для оружейных прицеловСтроительным лазерным дальномером можно определять расстояния до стен и высчитывать площадь и объём помещений
В строительстве лазерный дальномер часто используется для измерения расстояния до стен и порогов. С его помощью можно также вычислять площади помещений. Прибор нужно установить на нужную опцию, установить на рабочей поверхности и направить лазер на интересующий объект, например, противоположную стену. Для получения более точных показаний дальномер необходимо устанавливать строго перпендикулярно. Для облегчения этой задачи в строительных лазерных измерителях имеется специальный уровень с пузырьком.
Основные элементы строительного дальномера
- Оптический лазерный излучатель — служит для генерирования и посылки луча в нужную точку.
- Оптический отражатель — принимает отражённый луч.
- Компьютерный преобразователь или микропроцессор.
- Встроенная программа вычислений — предназначена для обработки результатов измерений и выдачи их в нужном виде.
- Фиксатор дальномера.
- Оптический прицел — позволяет направить луч точно в нужное место.
- Пузырьковый уровень.Пузырьковый уровень, встроенный в лазерный дальномер, позволяет устанавливать прибор ровно на поверхности
В строительных лазерных дальномерах есть блокнот и калькулятор. Прибор сам будет производить вычисления и сохранять данные в памяти.
Виды дальномеров
По принципу работы лазерные дальномеры разделяются на фазовые и импульсные.
Фазовые измерители
Фазовые дальномеры имеют не очень большую дальность действия, но они намного точнее в силу принципа своей работы и дешевле из-за того, что в них не встраивают дорогой сверхточный таймер.
Фазовый дальномер работает на небольших расстояниях, но имеет хорошую точность и низкую цену
Принцип работы дальномеров такого типа заключается в том, что лазерная волна посылается на объект с одной фазой, а отражаясь, возвращается с другой. Рассчитав сдвиг фаз, прибор определяет расстояние до объекта. Благодаря такому принципу работы измерения фазовым дальномером имеют высокую точность. При необходимости работы на расстояниях, превышающих длину излучаемой волны, прибор посылает сигнал несколько раз, изменяя частоту модуляции. Затем процессор устройства определяет точное расстояние до цели путём решения системы линейных уравнений.
Импульсные измерители
Импульсный дальномер состоит из детектора излучения и импульсного лазера. Он вычисляет расстояние до объекта путём умножения времени прохождения луча на величину скорости света. Импульсные измерители работают на гораздо больших расстояниях, чем фазовые, благодаря более высокой мощности излучаемого импульса. Такие дальномеры часто применяют для военных прицелов.
Сравнение принципов работы импульсных и фазовых измерителей
- Фазовый дальномер при измерении расстояния использует модулированный световой сигнал, а импульсный — световой импульс.
- Импульсные дальномеры измеряют гораздо большие расстояния, чем фазовые, так как мощность посылаемых импульсов у них гораздо больше.
- Импульсный метод измерения расстояния менее точен, чем метод измерения разности фаз. Но благодаря современным методикам обработки сигнала в импульсных дальномерах это различие становится не таким значительным.
- Размер отражаемой лазерной точки становится больше с увеличением расстояния. Это справедливо для обоих принципов измерения, хотя отклонение лазера от точки отражения разное, так как отличаются размер и форма лазерного пятна.
- Фазовый и импульсный принципы работы различаются также чувствительностью к прерыванию сигнала. При работе под воздействием некоторых внешних факторов (в потоке транспорта, при плохих погодных условиях) фазовый дальномер будет работать хуже, чем импульсный.
Видео: принцип работы лазерного дальномера
Применение и функции лазерного дальномера
С помощью лазерной рулетки можно рассчитать объём, вычислить площадь помещения, замерить сложные недоступные отрезки, определить длину ската крыши и угол его наклона, найти площадь стены с наклоном у потолка, а также её диагональ.
Дополнительные функции некоторых современных дальномеров
- Подсветка.
- Ватерпас или пузырьковый уровень. Это приспособление чаще всего устанавливают на строительных лазерных рулетках. Оно поможет определить, ровно ли располагается прибор на поверхности.
- Визир — специальное устройство, приближающее точку, до которой ведётся измерение. Функция работает аналогично цифровому увеличению (зуму) на видеокамерах и особенно актуальна для работы на больших расстояниях.Визир представляет собой миниатюрную камеру, которая позволяет приблизить объект измерений
- Дисплей с цветным экраном.
- Измеритель температуры воздуха. Допустимые погодные условия для использования каждого прибора указаны в инструкции. В любом случае при работе на морозе необходимо дать устройству некоторое время на адаптацию к окружающей температуре.
- Датчик для измерения наклона в пределах до 45o. Он нужен для проведения расчёта угла ската крыши, наклона навеса и других аналогичных операций.Лазерный дальномер со встроенным датчиком измерения угла наклона позволяет вычислять расстояния на криволинейной поверхности
- Индикатор уровня зарядки батареи.
- Функция Bluetooth.
- Трекинг — непрерывное измерение расстояний. При перемещении дальномера трекинг производит замеры не один, а несколько раз с определённой периодичностью и показывает получаемые результаты. Такая опция необходима для того, чтобы отмерить нужную длину конструкции или помещения.
- Различные математические функции.
Наличие в лазерном дальномере дополнительных функций помогает более точно и удобно производить необходимые замеры и во многом облегчает работу. Но и цена таких приборов гораздо выше.
Работа с лазерной рулеткой
- Установить и зафиксировать прибор в точке начала измерений.
- Включить дальномер при помощи специальной кнопки.
- Выбрать нужную точку отсчёта. Во многих моделях для удобства встроена возможность выбора точки — от передней части корпуса прибора или от задней. Такая функция нужна для определения расстояния без учёта размеров корпуса. Некоторые устройства также оснащены специальными скобами, позволяющими проводить измерения в неудобных местах. Точку отсчёта в них можно выбрать от края корпуса либо от самой скобы.
- Выбрать необходимые единицы измерения.
- Начать измерения, нажав функциональную кнопку.
- Просмотреть результат на дисплее прибора.Лазерный дальномер позволяет определить длину, ширину и высоту помещений, а также автоматически посчитать его площадь и объём
Например, если нужно определить расстояние от одной стены до другой, необходимо провести следующие действия:
- Установить прибор на одной стене.
- Убедиться, что прибор зафиксирован ровно на поверхности и плотно у стены.
- Назначить точкой отсчёта прижатую часть корпуса. Это позволит учесть в расчётах толщину самой рулетки.
- Включить функцию начала замеров.
- Посмотреть полученные результаты на экране.Для того чтобы измерить необходимое расстояние, нужно приложить прибор к стене и нажать функциональную кнопку — все остальные действия прибор произведёт сам
Для получения более точных расчётов не рекомендуется держать прибор в руках при измерении. Запрещается направлять лазерный луч прибора в лицо, потому что он может обжечь сетчатку глаза.
Видео: как пользоваться лазерной рулеткой
Правила эксплуатации дальномера
- Лазерную рулетку следует эксплуатировать согласно технической инструкции.
- Нельзя допускать попадания влаги и грязи в прибор, а также перегрева и переохлаждения дальномера.
- Необходимо беречь прибор от падения и ударов.
- Проводить ремонт дальномера следует только в специальных мастерских.
- Хранить лазерный дальномер рекомендуется в специальном чехле.
Рекомендации по выбору лазерной рулетки
- Каждый лазерный дальномер имеет определённый диапазон расстояний. При выборе рулетки необходимо знать, какие приблизительные размеры вам надо будет определять. Приобретать рулетку следует с несколько большей максимальной дальностью, чтобы был хотя бы небольшой запас.
- Чем мощнее микропроцессор дальномера, тем быстрее и точнее анализируются данные. Но если лазерная рулетка нужна для несложных измерений в быту, будет достаточно самой простой модели, иначе вы переплатите деньги за функции и способности прибора, которыми не будете пользоваться. Простые рулетки настроены только на измерение расстояния. Приборы с мощным микропроцессором и улучшенным программным обеспечением могут производить множество расчётов с применением сложных геометрических формул (площади, объёма, углов и т. д.).Современные лазерные дальномеры с мощными процессорами позволяют рассчитывать расстояния до объектов, площади и объёмы помещений и переводить результат в разные системы единиц
- Лазерную рулетку лучше приобретать с надёжным штативом, если в корпусе прибора есть крепёжная резьба. Для произведения расчётов в комнатных условиях достаточно будет неподвижно зафиксировать прибор на полу, у стены или на предмете с ровной поверхностью. Если при измерении дальномер плотно зафиксирован, то погрешность в расчётах сведётся к минимуму.
- При покупке важно учитывать тип элементов питания дальномера. Не стоит приобретать прибор со встроенным аккумулятором, так как по истечении ресурса заменить его будет сложно. Лучше остановить выбор на рулетке, работающей от батареек.
Видео: обзор лазерного дальномера ЛДМ-70
Дополнительные функции дальномера
- Функция измерения площади полезна во время ремонта, когда требуется рассчитать необходимое количество материала. Нужно включить специальную опцию дальномера (кнопка обычно имеет обозначение в виде плоской и объёмной фигуры, они символизируют измерение площади и объёма соответственно) и измерить все стороны помещения. Далее аппарат проведёт расчёты путём умножения сторон и выдаст результат на дисплее. С помощью этой функции можно определить площадь пола, стен и потолка.Выбор режима вычислений производится при помощи специальной кнопки с изображением плоской и объёмной фигуры
- Измерение объёма проводится аналогично измерению площади. При нахождении объёма помещения сначала замеряются стороны пола, затем высота. Прибор анализирует полученные данные и вычисляет объём комнаты. Эта опция дальномера полезна, например, при выборе кондиционера, когда нужно знать объём расходуемого в помещении воздуха.
- Выдвижная скоба. Для проведения измерений из неудобных точек некоторые модели дальномеров оборудованы специальной скобой. Например, для определения размера комнаты по диагонали можно упереть прибор скобой в один из углов и включить необходимый режим. Для получения точного результата нужно назначить точкой отсчёта начало скобы.
В современных дальномерах скоба может фиксироваться в нескольких положениях, чтобы можно было максимально просто проводить измерения из неудобных точек - Трекинг. Если нужно отмерить определённое расстояние от стены, например, для того, чтобы возвести перегородку, нужно воспользоваться функцией трекинга. Некоторые строительные модели лазерных рулеток оснащены режимом непрерывного измерения расстояния. Для нахождения нужного отрезка таким способом потребуется включить прибор и перемещать его вдоль выбранной линии до получения искомого расстояния.
- Некоторые лазерные дальномеры оснащаются функцией поиска минимальных и максимальных расстояний. С её помощью также можно вычислить точную диагональ помещения. Для этого необходимо установить прибор в одном углу, а луч направить на противоположный угол комнаты, стараясь попасть в границу между стенами как можно точнее. Рулетка произведёт серию измерений и найдёт максимальное значение, которое и будет искомой диагональю. Таким же способом проводится и поиск минимального расстояния.
- Измерение сторон стены в форме трапеции — ещё одна опция некоторых современных лазерных рулеток. Для этого необходимо включить нужный режим и измерить три стороны стены, расположенных под углом 90o друг к другу. Далее дальномер с помощью полученных данных автоматически произведёт расчёт четвёртой стены и выведет результат на экран.Одну из сторон трапеции (например, длину ската кровли) лазерный дальномер может рассчитать по трём остальным сторонам
- Косвенный метод измерения расстояний — функция теоремы Пифагора. Позволяет определить расстояния и длины отрезков на труднодоступных участках. Допустим, нужно измерить расстояние от пола до шурупа в стене. Сначала выбираем начальную точку на небольшом расстоянии от стены на полу и измеряем расстояние от неё до стены. Затем направляем точку лазера на шуруп. Отрезок от рулетки до стены будет являться катетом, а длина от прибора до шурупа — гипотенузой. При включении рассматриваемой опции прибор автоматически произведёт вычисления, найдёт второй катет треугольника и выдаст, на какой высоте от пола находится шуруп.
- В солнечную погоду удобно пользоваться специальными очками. Они имеют красный или зелёный цвет стекла в зависимости от цвета луча лазера. Эти защитные стёкла оснащены световым фильтром, который приглушает все остальные цвета, кроме своего, тем самым позволяя легко находить точку отражения луча.Световой фильтр в очках приглушает все цвета, кроме своего, поэтому, например, в красных очках намного проще увидеть луч красного лазера
Видео: измерение площади непрямоугольных стен лазерным дальномером
Сделав правильный выбор лазерной рулетки, можно во многом облегчить работу. С использованием лазерного дальномера будет возможно вычислить любые нужные длины и площади. Несмотря на множество проводимых вычислительных операций, такой прибор прост для использования и не требует никаких особых знаний или навыков.
- Александр Макарычев
Как работает инструмент лазерный дальномер
Благодаря тому, как работает лазерный дальномер, можно осуществлять замеры плоскостей с максимальной точностью. Поэтому его применяют в военном деле, астрономии строительстве, инженерной геодезии и т.д.
Лазерный дальномер — удобное современное устройство для измерения площадей поверхностей.
Он представляет собой рулетку электронного типа. Такой прибор достаточно прост в эксплуатации, поэтому его используют профессиональные бригады, да и начинающие строители тоже.
Инструкция по работе с таким инструментом выглядит следующим образом:
- Дальномер включается на необходимую опцию.
- Далее он устанавливается вблизи одной из рабочих поверхностей.
- Луч лазера наводится на противолежащую сторону помещения.
- Аналогичным образом осуществляются замеры и других плоскостей.
Устройство лазерного дальномера.
Благодаря таким нехитрым действиям дальномер выдаст размер площади помещения. Если необходимо просчитать объем, действуют так же. Все приборы такого типа работают по схожему принципу.
Одно из главных удобств дальномера в том, что он заменяет калькулятор и блокнот с карандашом. Каждая модель может складывать и вычитать имеющиеся значения, а полученные цифры автоматически сохраняются. Но тут главное — знать о том, может ли потерять прибор данные, если извлечь из него флеш-карту.
Чтобы лазерный дальномер давал точные показания, очень важным моментом является соблюдение условий перпендикулярности рулетки. Чтобы облегчить эту задачу, современные производители оснащают свои изделия встроенным пузырьковым уровнем. Это значительно облегчает задачу.
Принцип работы лазерного дальномера
Чтобы осуществить замеры стен при помощи дальномера, сначала необходимо включить уровень. После этого измеряют поверхность стены по высоте и длине. От полученных значений следует отнять площадь, занимаемую окнами и дверными проемами.
Полученные цифры помогут сориентироваться в необходимом количестве строительных материалов, чтобы максимально избежать перерасхода. Для новичков лазерный дальномер является хорошим помощником.
Для удобства использования в различных условиях некоторые производители оснащают приборы встроенными камерами и визорами.
Но это касается геометрически правильных форм. Однако прибор используют и в инженерной сфере, например, для измерения котлованов. Тут будут присутствовать определенные погрешности. Кстати, на точность показаний во многом влияет и результативность самой рулетки, так как в темное время суток она выше, чем днем. Поэтому нередко используется дополнительное оборудование в виде визира или видеокамер, чтобы была возможность хорошо видеть лазер.
Чтобы определить дальность нахождения объекта, используют беспрерывное электромагнитное излучение. Дальномер может работать в трех режимах:
- фазовом;
- импульсном;
- комбинированном, который объединяет в себе предыдущие два.
В первом случае принцип действия — модуляция синусоидального сигнала, при этом частота будет варьироваться от 10 до 150 МГц.
Во втором варианте идет отражение импульса и его периодическая задержка. Несмотря на то что такая техника достаточно умна, контроль за ней все-таки необходим, так как сбои свойственны любой аппаратуре. Для того чтобы иметь правильное представление о принципе работы дальномера, руководство по эксплуатации требует тщательного изучения.
В зависимости от того, насколько тщательно придерживаться требований инструкции, дальномер будет работать точно или давать погрешности.
Зависимость техники от условий
Дальномер имеет два функциональных блока: излучательный, в составе которого есть лазерный диод, и приемник. За счет электромагнитной волны возникает лазерный луч. Сама волна производится дальномером, далее она отражается от рабочей плоскости, будь то полы, стены, потолок или другая рабочая сторона объекта. После этого идет ее возврат в приемник. Каждая волна имеет свою амплитуду и длину. Последний показатель изначально известен вычислителю дальномера, поэтому дальнейшие его вычисления производятся за счет принципа сложения всех длин волн, которые прошли путь до объекта и обратно. После этого выполняется деление данной суммы надвое. А если есть «обрезанная» волна, то и ее показатель приплюсовывается.
Сравнительные характеристики нескольких моделей лазерного дальномера.
Полученная цифра выводится на дисплей прибора. Измерительная величина, то есть метры или сантиметры, устанавливается по личным требованиям.
Дальномер отлично справляется в условиях закрытых помещений, так как в этом случае расстояния имеют небольшие значения, а помехи и вовсе отсутствуют. А что касается природы, то тут есть несколько факторов, которые могут создать погрешности в работе:
- Солнце. Зачастую цвет лазеров является красным, поэтому чем ярче поверхность, тем хуже видна конечная точка. Почему это так важно? Потому что дальномер должен уметь обработать сигнал, а он будет слишком слабым, что может повлиять на точность показаний. Поэтому в темное время суток показания лазерного дальномера более точны.
- Загрязненность окружающей среды. Лучший вариант — если работа проводится за городом, так как воздух там прозрачнее. В условиях загазованности или туманности опять-таки возникает риск возникновения погрешностей.
- Надежность крепления дальномера. Ручные измерения всегда сопровождаются неточностями. Поэтому лучше для замеров использовать специальный штатив. Кстати, многие современные приборы имеют уже в стандартной комплектации такой элемент.
- Рабочая поверхность. Если измеряемая плоскость будет иметь темный цвет или шершавую структуру, то луч станет поглощаться. Поэтому для таких целей используют светлую поверхность, которая за счет гладкости и цвета помогает повысить коэффициент отражения.
Как работать инструментом на улице?
Для удобства использования дальномер можно закрепить на штативе.
Все же в большинстве случаев дальномер применяют с внешней стороны зданий. Поэтому, чтобы максимально обеспечить точность показаний, можно воспользоваться следующими рекомендациями:
- Использовать для таких работ необходимо те приборы, которые имеют дальность работы в пределах 150-200 м, то есть для больших расстояний.
- Следует использовать мишень. В большинстве стандартных комплектов она уже имеется.
- Для того чтобы показания были точны, следует применять штатив. Если данная деталь покупается отдельно, то дальномер в обязательном порядке должен иметь специальное гнездо с нижней стороны.
Многие модели дальномеров имеют скобу, расположенную сзади. Она может устанавливаться под 90-градусным или 180-градусным углом. Если ее положение перпендикулярно, то прибор измеряет расстояние заподлицо с краем или внешним углом.
Это позволяет знать размер диагонали помещения. В данном случае точка отсчета устанавливается вручную, она начинается от задней или передней стенки скобы. Но некоторые модели оснащены автоматической функцией переноса нулевой точки.
Правильная эксплуатация
Для удобства хранения лазерные дальномеры комплектуются специальными чехлами.
Так как длина волны составляет 635 нм, человеческий глаз видит луч красного цвета. Поэтому, работая с таким прибором, следует быть аккуратными. Попадая в глаз, такой луч может нести разрушительное воздействие. Все зависит от класса используемого лазера: чем он выше, тем опаснее контакт луча и глаза. По стандарту дальномеры имеют луч со вторым классом излучения. Это, в свою очередь, означает, что при кратковременном воздействии перед глазами человека непродолжительный период будут мелькать пятна света. Но если луч будет напрямую и долго воздействовать, то последствия могут стать крайне неприятными.
Дальномер — прибор, которому для работы требуются батарейки. После того как их заряд окончен (примерно 5-10 тысяч измерительных процессов), их следует правильно утилизировать. Если содержимое батарейки вытечет внутри прибора, это может привести к поломке аппарата, что однозначно потребует дорогостоящего ремонта. Поэтому перед и после каждого применения батарейки следует тщательно осматривать.
Такой прибор требует деликатного обращения, поэтому для него не допускаются воздействия физической силой, а тем более падения. Это тоже чревато ремонтом или даже покупкой новой техники.
Иметь под рукой такой прибор — значит ощутимо улучшить условия своей работы. Во-первых, исчезает необходимость производить вычисления в уме — все делает техника. Во-вторых, это значительно экономит время, особенно если дальномер — новой модификации, так как в нем много дополнительных функций. В-третьих, автоматическое сохранение данных помогает не забивать голову большим количеством цифр, что тоже крайне удобно.
Самодельный сканирующий лазерный дальномер
В этой статье я расскажу о том, как я делал самодельный лазерный сканирующий дальномер, использующий триангуляционный принцип измерения расстояния, и об опыте его использования на роботе.
Зачем нужен сканирующий дальномер?
На сегодняшний день в робототехнике не так уж и много методов навигации внутри помещений. Определение положения робота в пространстве с использованием лазерного сканера — один из них. Важное достоинство этого метода — он не требует установки в помещении каких-либо маяков. В отличие от систем, использующих распознавание изображения с камер, обработка данных с дальномера не так ресурсоемка. Но есть и недостаток — сложность, и соответственно, цена дальномера.
Традиционно в робототехнике используются лазерные сканеры, использующие фазовый или времяпролетный принцип для измерения расстояния до объектов. Реализация этих принципов требует довольно сложной схемотехники и дорогих деталей, хотя и характеристики при этом получаются приличные — используя эти принципы, можно добиться высокой скорости сканирования и большой дальности измерения расстояния.
Но для домашних экспериментов в робототехнике такие сканеры мало подходят — цена на них начинаются от 1000$.
На помощь приходят дальномеры, использующие триангуляционный принцип измерения расстояния. Дальномер такого типа впервые появился в роботах-пылесосах Neato:
Довольно быстро любители расшифровали протокол этого дальномера, и начали использовать его в своих проектах. Сами дальномеры в качестве запчастей появились на ebay в небольших количествах по цене около 100$. Через несколько лет китайская компания смогла выпустить сканирующий дальномер RPLIDAR, который поставлялся как полноценный прибор, а не запчасть. Только цена этих дальномеров оказалась достаточно высокой — 400$.
Самодельный дальномер
Как только я узнал о дальномерах Neato, мне захотелось собрать самому аналогичный. В конце концов, мне это удалось, и процесс сборки я описал на Робофоруме.
Первая версия дальномера:
Позже я сделал еще одну версию дальномера, более пригодную для использования на реальном роботе, но и ее качество работы не полностью устроило меня. Настало время третьей версии дальномера, и именно она будет описана далее.
Устройство сканирующего триангуляционного лазерного дальномера
Принцип измерения расстояния до объекта основан на измерении угла между лазерным лучом, попадающим на объект, и объективом дальномера. Зная расстояние лазер-объектив (h) и измеренный угол, можно вычислить расстояние до объекта — чем меньше угол, тем больше расстояние.
Принцип хорошо иллюстрирует картинка из статьи:
Таким образом, ключевые оптические компоненты такого дальномера — лазер, объектив и фотоприемная линейка.
Так как дальномер сканирующий, то все эти детали, а так же управляющая электроника устанавливаются на вращающейся головке.
Тут может возникнуть вопрос — зачем нужно вращать оптику и электронику, ведь можно установить вращающееся зеркало? Проблема в том, что точность дальномера зависит от расстояния между объективом и лазером (базового расстояния), так что оно должно быть достаточно большим. Соответственно, для кругового сканирования понадобится зеркало диаметром, большим базового расстояния. Дальномер с таким зеркалом получается достаточно громоздким.
Сканирующая головка дальномера при помощи подшипника закрепляется на неподвижном основании. На нем же закрепляется двигатель, вращающий головку. Также в состав дальномера должен входить энкодер, предназначенный для получения информации о положении головки.
Как видно, дальномеры Neato, RPLIDAR и мои самодельные сделаны именно по этой схеме.
Самое сложное в самодельном дальномере — изготовление механической части. Именно ее работа вызывала у меня больше всего нареканий в ранних версиях дальномера. Сложность заключается в изготовлении сканирующей головки, которая должна быть прочно закреплена на подшипнике, вращаться без биений и при этом не нее нужно каким-то образом передавать электрические сигналы.
Во второй версии дальномера первые две проблемы я решил, использовав части старого HDD — сам диск использовался как основание сканирующей головки, а двигатель, на котором он закреплен, уже содержал качественные подшипники. В то же время, при этом возникла третья проблема — электрические линии можно было провести только через небольшое отверстие в оси двигателя. Мне удалось сделать самодельный щеточный узел на 3 линии, закрепленный в этом отверстии, но получившаяся конструкция получилась шумной и ненадежной. При этом возникла еще одна проблема — линии, чтобы пробросить сигнал энкодера, не было, и датчик энкодера в такой конструкции должен быть установлен на головке, а диск энкодера с метками — на неподвижном основании. Диск энкодера получился не жестким, и это часто вызывало проблемы.
Фотография второй версии дальномера:
Еще один недостаток получившегося дальномера — низкая скорость сканирования и сильное падение точности на расстояниях больше 3м.
Именно эти недостатки я решил устранить в третьей версии дальномера.
Электроника
В принципе, электронная часть триангуляционного дальномера достаточно проста и содержит всего два ключевых компонента -светочувствительную линейку и микроконтроллер. Если с выбором контроллера проблем нет, то с линейкой все значительно сложнее. Светочувствительная линейка, используемая в подобном дальномере, должна одновременно иметь достаточно высокую световую чувствительность, позволять считывать сигнал с высокой скоростью и иметь маленькие габариты. Различные CCD линейки, применяемые в бытовых сканерах, обычно довольно длинные. Линейки, используемые в сканерах штрихкодов — тоже не самые короткие и быстрые.
В первой и второй версии дальномера я использовал линейки TSL1401 и ее аналог iC-LF1401. Эти линейки хорошо подходят по размеру, они дешевые, но содержат всего 128 пикселей. Для точного измерения расстояния до 3 метров этого мало, и спасает только возможность субпискельного анализа изображения.
В третьей версии дальномера я решил использовать линейку ELIS-1024:
Однако купить ее оказалось непросто. У основных поставщиков электроники этих линеек просто нет.
Первая линейка, которую я смог купить на Taobao, оказалась нерабочей. Второю я купил на Aliexpress (за 18$), она оказалась рабочей. Обе линейки выглядели паянными — обе имели облуженные контакты и, судя по маркировке, были изготовлены в 2007 году. Причем даже на фотографиях у большинства китайских продавцов линейки именно такие. Похоже, что действительно новую линейку ELIS-1024 можно купить только напрямую у производителя.
Светочувствительная линейка ELIS-1024, как следует из названия, содержит 1024 пикселя. Она имеет аналоговый выход, и достаточно просто управляется.
Еще более хорошими характеристиками обладает линейка DLIS-2K. При сходных размерах, она содержит 2048 пикселей и имеет цифровой выход. Насколько мне известно, именно она используется в дальномере Neato, и возможно, в RPLIDAR. Однако, найти ее в свободной продаже очень сложно, даже в китайских магазинах она появляется не часто и дорого стоит — более 50$.
Так как я решил использовать линейку с аналоговым выходом сигнала, то микроконтроллер дальномера должен содержать достаточно быстрый АЦП. Поэтому я решил использовать серию контроллеров — STM32F303, которые, при относительно небольшой стоимости, имеют несколько быстрых АЦП, способных работать одновременно.
В результате у меня получилась такая схема:
Сигнал с линейки (вывод 10) имеет достаточно высокий уровень постоянной составляющей, и ее приходится отфильтровывать при помощи разделительного конденсатора.
Далее сигнал нужно усилить — для этого используется операционный усилитель AD8061. Далеко расположенные объекты дают достаточно слабый сигнал, так что пришлось установить коэффициент усиления равным 100.
Как оказалось в результате экспериментов, даже при отсутствии сигнала, на выходе выбранного ОУ по какой-то причине постоянно присутствует напряжение около 1.5В, что мешает обработке результатов и ухудшает точность измерения амплитуды сигнала. Для того, чтобы избавится от этого смещения, мне пришлось подать дополнительное напряжение на инвертирующий вход ОУ.
Плату разводил двухстороннюю, сделать такую плату в домашних условиях качественно довольно сложно, так что заказал изготовление плат в Китае (пришлось заказать сразу 10 штук):
В этом дальномере я использовал дешевый объектив с резьбой M12, имеющий фокусное расстояние 16мм. Объектив закреплен на печатной плате при помощи готового держателя объектива (такие используются в различных камерах).
Лазер в данном дальномере — инфракрасный (780 нм) лазерный модуль, мощностью 3.5 мВт.
Изначально я предполагал, что излучение лазера нужно будет модулировать, но позже оказалось, что с используемой линейкой в этом нет смысла, и поэтому сейчас лазер включен постоянно.
Для проверки работоспособности электроники была собрана вот такая конструкция, имитирующая сканирующую головку дальномера:
Уже в таком виде можно было проверить, какую точность измерения расстояния позволяет обеспечить дальномер.
Для анализа сигнала, формируемого линейкой, были написаны тестовые программы для микроконтроллера и ПК.
Пример вида сигнала с линейки (объект на расстоянии 3 м).
Изначально схема была не совсем такая, как приведена выше. В ходе экспериментов мне пришлось частично переделать изначальную схему, так что, как видно из фотографий, некоторые детали пришлось установить навесным монтажом.
Механическая часть
После того, как электроника была отлажена, настало время изготовить механическую часть.
В этот раз я не стал связываться с механикой из HDD, и решил изготовить механические детали из жидкого пластика, заливаемого в силиконовую форму. Эта технология подробно описана в Интернете, в том числе и на Гиктаймс.
Уже после того, как я изготовил детали, стало понятно, что изготовить детали на 3D принтере было бы проще, они могли выйти тверже, и возможно, можно было бы сделать одну деталь вместо двух. Доступа к 3D принтеру у меня нет, так что пришлось бы заказывать изготовление детали в какой-либо компании.
Фото одной из деталей сканирующей головки дальномера:
Эта деталь является основой головки. Она состоит из втулки, на которую позже надевается подшипник, и диска. Диск предназначен для крепления второй детали башни, кроме того, на него снизу наклеивается диск энкодера.
Втулка и диск содержат сквозное отверстие, в которое вставляется покупной щеточный узел на 6 линий — его видно на фотографии. Именно те провода, что видны на фотографии, могут вращаться относительно корпуса этого узла. Для повышения стабильности работы для передачи сигналов GND и UART TX используется 2 пары линий щеток. Оставшиеся 2 линии используются для передачи напряжения питания и сигнала энкодера.
Силиконовая форма для отливки этой детали:
Вторая деталь сканирующей головки была изготовлена тем же способом. Она предназначена для крепления печатной платы и лазера к диску. К сожалению, фотографий изготовления этой детали у меня не сохранилось, так что ее можно увидеть только в составе дальномера.
Для крепления сканирующей головки к основанию дальномера используется шариковый подшипник. Я использовал дешевый китайский подшипник 6806ZZ. Честно говоря, качество подшипника мне не понравилось — ось его внутренней втулки могла отклонятся относительно оси внешней на небольшой угол, из-за чего головка дальномера тоже немного наклоняется. Крепление подшипника к детали с диском и основанию будет показано ниже.
Основание я сделал из прозрачного оргстекла толщиной 5 мм. К основанию крепится подшипник, датчик энкодера, двигатель дальномера и маленькая печатная плата. Само основание устанавливается на любую подходящую поверхность при помощи стоек.
Вот так выглядит основание дальномера снизу:
Печатная плата содержит регулируемый линейный стабилизатор напряжения для питания двигателя, и площадки для подключения проводов узла щеток. Сюда же подводится питание дальномера.
Как и в других дальномерах, двигатель вращает сканирующую головку при помощи пассика. Для того, чтобы он не сваливался с втулки, на ней имеется специальное углубление.
Как видно из фотографии, подшипник закреплен в основании при помощи трех винтов. На сканирующей головке подшипник удерживается за счет выступа на втулке и прижимается к ней другими винтами, одновременно удерживающими щеточный узел.
Энкодер состоит из бумажного диска с напечатанными рисками и оптопары с фототранзистором, работающей на отражение. Оптопара закреплена при помощи стойки на основании так, что плоскость диска оказывается рядом с ней:
Сигнал от оптопары через щетки передается на вход компаратора микроконтроллера. В качестве источника опорного напряжения для компаратора выступает ЦАП микроконтроллера.
Для того, чтобы дальномер мог определить положение нулевого угла, на диск энкодера нанесена длинная риска, отмечающая нулевое положение головки (она видна справа на фотографии выше).
Вот так выглядит собранный дальномер:
Вид сверху:
Разъем сзади дальномера используется для прошивки микроконтроллера.
Для балансировки сканирующей головки на нее спереди устанавливается крупная гайка — она практически полностью устраняет вибрацию при вращении головки.
Собранный дальномер нужно отюстировать — установить лазер в такое положение, чтобы отраженный от объектов свет попадал на фотоприемную линейку. Обе пластмассовые детали содержат соосные отверстия, располагающиеся под пазом лазера. В отверстия вворачиваются регулировочные винты, упирающиеся в корпус лазера. Поворачивая эти винты, можно изменять наклон лазера.
Наблюдая в программе на компьютере форму и амплитуду принятого сигнала и изменяя наклон лазера, нужно добиться максимальной амплитуды сигнала.
Также триангуляционные дальномеры требуют проведения калибровки, о чем я писал ранее:
Для того, чтобы при помощи датчика можно было измерять расстояние, нужно произвести его калибровку, т.е. определить закон, связывающий результат, возвращаемый датчиком, и реальное расстояние. Сам процесс калибровки представляет собой серию измерений, в результате которых формируется набор расстояний от датчика до некоторого объекта, и соответствующих им результатов.
В данном случае калибровка представляла собой серию измерений расстояний до различных объектов самодельным дальномером и лазерной рулеткой, после чего по полученным парам измерений выполняется регрессионный анализ и составляется математическое выражение.
Получившийся дальномер имеет существенный недостаток — из-за отсутствия модуляции излучения лазера он некорректно работает при любой сильной засветке. Обычное комнатное освещение (даже при использовании мощной люстры) не влияет на работу дальномера, но вот расстояние до поверхностей, прямо освещенных Солнцем, дальномер измеряет неправильно. Для решения этой проблемы в состав дальномера нужно включить интерференционный светофильтр, пропускающий световое излучение только определенной длины волны — в данном случае 780 нм.
Эволюция самодельных дальномеров:
Габаритные размеры получившегося дальномера:
Размер основания: 88×110 мм.
Общая высота дальномера: 65 мм (может быть уменьшена до 55 при уменьшении высоты стоек).
Диаметр сканирующей головки: 80 мм (как у mini-CD диска).
Как и у любого другого триангуляционного дальномера, точность измерения расстояния этого дальномера резко падает с ростом расстояния.
При измерениях расстояния до объекта с коэффициентом отражения около 0.7 у меня получились примерно такие точностные характеристики:
Расстояние | Разброс |
---|---|
1 м | <1 см |
2 м | 2 см |
5 м | 7 см |
Стоимость изготовления дальномера:
DIY, $ | Опт., $ | |
---|---|---|
Основание | ||
Пластина основания | 1,00 | 0,50 |
Двигатель | 0,00 | 1,00 |
Подшипник | 1,50 | 1,00 |
Щеточный узел | 7,50 | 5,00 |
Крепежные детали | 0,00 | 2,00 |
Сканирующая головка | ||
Контроллер STM32F303CBT6 | 5,00 | 4,00 |
Фотоприемная линейка | 18,00 | 12,00 |
Остальная электроника | 4,00 | 3,00 |
Плата | 1,50 | 0,50 |
Объектив | 2,00 | 1,50 |
Держатель объектива | 1,00 | 0,50 |
Лазер | 1,00 | 0,80 |
Пластиковые детали | 3,00 | 2,00 |
Крепежные детали | 0,00 | 1,00 |
Сборка | 0,00 | 20,00 |
Итого: | 45,50 | 54,80 |
В первой колонке — во сколько дальномер обошелся мне, во второй — сколько он мог бы стоить при промышленном изготовлении (оценка очень приблизительная).
Программная часть дальномера
Перед написанием программы нужно рассчитать тактовую частоту, на которой будет работать фотоприемная линейка.
В старых версиях дальномера частота сканирования была ограничена 3 Гц, в новом дальномере я решил сделать ее выше — 6Гц (это учитывалось при выборе линейки). Дальномер делает 360 измерений на один оборот, так что при указанной скорости он должен быть способен производить 2160 измерений в секунду, то есть одно измерение должно занимать менее 460 мкс. Каждое измерение состоит из двух этапов — экспозиция (накопление света линейкой) и считывание данных с линейки. Чем быстрее будет произведено считывание сигнала, тем длиннее может быть время экспозиции, а значит, и тем больше будет амплитуда сигнала. При тактовой частоте линейки 8 МГц время считывания 1024 пикселей будет составлять 128 мкс, при 6 МГц — 170 мкс.
При тактовой частоте микроконтроллера серии STM32F303 в 72 МГц максимальная частота выборок АЦП — 6 MSPS (при разрядности преобразования 10 бит). Так как я хотел проверить работу дальномера при тактовой частоте линейки 8 МГц, я решил использовать режим работы АЦП, в котором два АЦП работают одновременно (Dual ADC mode — Interleaved mode). В этом режиме по сигналу от внешнего источника начала запускается ADC1, а затем, через настраиваемое время, ADC2:
Как видно из диаграммы, суммарная частота выборок АЦП в два раза выше, чем частота триггера (в данном случае это сигнал от таймера TIM1).
При этом TIM1 также должен формировать сигнал тактовой частоты для фотоприемной линейки, синхронный с выборками АЦП.
Чтобы получить с одного таймера два сигнала с частотами, различающимися в два раза, можно переключить один из каналов таймера в режим TIM_OCMode_Toggle, а второй канал должен формировать обычный ШИМ сигнал.
Структурная схема программы дальномера:
Ключевой частью программы является именно захват данных с линейки и управление ей. Как видно из схемы, этот процесс идет на аппаратном уровне, за счет совместной работы TIM1, ADC1/2 и DMA. Для того, чтобы время экспозиции линейки было постоянным, используется таймер TIM17, работающий в режиме Single Pulse.
Таймер TIM3 генерирует прерывания при срабатывании компаратора, соединенного с энкодером. За счет этого рассчитывается период вращения сканирующей головки дальномера и ее положение. По полученному периоду вращения рассчитывается период таймера TIM16 таким образом, чтобы он формировал прерывания при повороте головки на 1 градус. Именно эти прерывания служат для запуска экспозиции линейки.
После того, как DMA передаст все 1024 значения, захваченные ADC, в память контроллера, программа начинает анализ эти данных: сначала производится поиск положения максимума сигнала с точностью до пикселя, затем, при помощи алгоритма поиска центра тяжести — с более высокой точностью (0.1 пикселя). Полученное значение сохраняется в массив результатов. После того, как сканирующая головка сделает полный оборот, в момент прохождения нуля этот массив предаются в модуль UART при помощи еще одного канала DMA.
Использование дальномера
Качество работы этого дальномера, как предыдущих, проверялось при помощи самописной программы. Ниже пример изображения, формируемого этой программой в результате работы дальномера:
Однако дальномер делался не для того, чтобы просто лежать на столе — он был установлен на старый пылесос Roomba 400 вместо дальномера второй версии:
Также на роботе установлен компьютер Orange Pi PC, предназначенный для управления роботом и связи с ним.
Как оказалось, из-за большой просадки напряжения на линейном источнике питания двигателя дальномера, для работы на скорости 6 об/сек дальномеру требуется питающее напряжение 6В. Поэтому Orange Pi и дальномер питаются от отдельных DC-DC преобразователей.
Для управления роботом и анализа данных от дальномера я использую ROS.
Данные от дальномера обрабатываются специальным ROS-драйвером (основанном на драйвере дальномера Neato), который получает по UART данные от дальномера, пересчитывает их в расстояния до объектов (используя данные калибровки) и публикует их в стандартном формате ROS.
Вот так выглядит полученная информация в rviz (программа для визуализации данных ROS), робот установлен на полу:
Длина стороны клетки — 1 метр.
После того, как данные попали в ROS, их можно обрабатывать, используя уже готовые пакеты программ. Для того, чтобы построить карту квартиры, я использовал hector_slam. Для справки: SLAM — метод одновременного построения карты местности и определения положения робота на ней.
Пример получившейся карты квартиры (форма несколько необычна, потому что дальномер «видит» мебель, а не стены, и не все комнаты показаны):
ROS позволяет объединять несколько программ («узлов» в терминологии ROS), работающих на разных компьютерах, в единую систему. Благодаря этому, на Orange Pi можно запускать только ROS-драйверы Roomba и дальномера, а анализ данных и управление роботом вести с другого компьютера. При этом эксперименты показали, что hector_slam нормально работает и на Orange Pi, приемлемо загружая процессор, так что вполне реально организовать полностью автономную работу робота.
Система SLAM благодаря данным от дальномера позволяет роботу определять свое положение в пространстве. Используя данные о положении робота и построенную карту, можно организовать навигационную систему, позволяющую «направить» робота в указанную точку на карте. ROS содержит в себе пакет программ для решения этой задачи, но, к сожалению, я так и не смог заставить его качественно работать.
Видео работы дальномера:
Более подробное видео построения карты при помощи hector_slam:
Исходные коды программы контроллера
P. S. Также у меня есть проект более простого лидара.