Что такое лидар?

Лидар

См. также: Лидарные системы

Лида́р (транслитерация LIDAR англ. LIght Detection and Ranging) — технология получения и обработки информации об удалённых объектах с помощью активных оптических систем, использующих явления отражения света и его рассеивания в прозрачных и полупрозрачных средах.

Лидар как прибор представляет собой, как минимум, активный дальномер оптического диапазона. Сканирующие лидары в системах машинного зрения формируют двумерную или трёхмерную картину окружающего пространства. «Атмосферные» лидары способны не только определять расстояния до непрозрачных отражающих целей, но и анализировать свойства прозрачной среды, рассеивающей свет. Разновидностью атмосферных лидаров являются доплеровские лидары, определяющие направление и скорость перемещения воздушных потоков в различных слоях атмосферы.

Устоявшийся перевод LIDAR как «лазерный радар» не вполне корректен, так как в системах ближнего радиуса действия (например, предназначенных для работы в помещениях), главные свойства лазера: когерентность, высокая плотность и мгновенная мощность излучения — не востребованы, излучателями света в таких системах могут служить обычные светодиоды. Однако, в основных сферах применения технологии (исследование атмосферы, геодезия и картография) с радиусами действия от сотен метров до сотен километров, применение лазеров неизбежно.

История

Открытая «шкатулка» слева — отражатель Лунохода, предназначенный для определения расстояния от Луны

Аббревиатура LIDAR впервые появилась в работе Миддлтона и Спилхауса «Метеорологические инструменты» 1953 года, задолго до изобретения лазеров. Первые лидары использовали в качестве источников света обычные или импульсные лампы со скоростными затворами, формировавшими короткий импульс.

В 1963 году в США начались полевые испытания носимого лазерного дальномера XM-23 с мощностью излучения 2.5 Вт и диапазоном измеряемых расстояний 200-9995 м.. XM-23 был изначально несекретным образцом и стал базовым прибором для гражданских исследователей 1960-х годов. К концу 1960-х годов лазерные дальномеры стали стандартным оборудованием новых танков США (первым образцом, спроектированным с применением лазерных дальномеров, стал M551 Шеридан, запущенный в серию в 1967). Гражданские применения лазерных дальномеров были ограничены лишь высокой стоимостью интегральных схем того времени.

Тогда же, в первой половине 1960-х годов, начались опыты по применению лидара с лазерным излучателями для исследования атмосферы.

В 1969 году лазерный дальномер и мишень, установленная на Аполлоне-11, применялся для измерения расстояния от Земли до Луны. Четыре мишени, доставленные на Луну тремя «Аполлонами» и «Луноходом-2», и по сей день используются для наблюдения за орбитой Луны.

В течение 1970-х годов, с одной стороны, отлаживалась технология лазерных дальномеров и компактных полупроводниковых лазеров, а с другой — были начаты исследования рассеяния лазерного луча в атмосфере. К началу 1980-х годов эти исследования стали настолько известными в академических кругах США, что аббревиатура LIDAR стала именем нарицательным — lidar, что зафиксировал словарь Уэбстера 1985 года. В те же годы лазерные дальномеры достигли стадии зрелой технологии (по крайней мере, в военных приложениях) и выделились в отдельную от лидаров отрасль техники.

Устройство

Излучатель

Основная статья: Виды лазеровДлины волн, излучаемые наиболее распространёнными лазерами. Шкала в микрометрах

В абсолютном большинстве конструкций излучателем служит лазер, формирующий короткие импульсы света высокой мгновенной мощности. Периодичность следования импульсов или модулирующая частота выбираются так, чтобы пауза между двумя последовательными импульсами была не меньше, чем время отклика от обнаружимых целей (которые могут физически находиться дальше, чем расчётный радиус действия прибора). Выбор длины волны зависит от функции лазера и требований к безопасности и скрытности прибора; наиболее часто применяются Nd:YAG-лазеры и длины волн (в нанометрах):

  • 1550 нм — инфракрасное излучение, невидимое ни глазу человека, ни типичным приборам ночного видения. Глаз не способен сфокусировать эти волны на поверхности сетчатки, поэтому травматический порог для волны 1550 существенно выше, чем для более коротких волн. Однако риск повреждения глаз на деле выше, чем у излучателей видимого света — так как глаз не реагирует на ИК излучение, то не срабатывает и естественный защитный рефлекс человека
  • 1064 нм — ближнее инфракрасное излучение неодимовых и иттербиевых лазеров, невидимое глазу, но обнаружимое приборами ночного видения
  • 532 нм — зелёное излучение неодимового лазера, эффективно «пробивающее» массы воды
  • 355 нм — ближнее ультрафиолетовое излучение

Также возможно использование (см. Промышленные и сервисные роботы) вместо коротких импульсов непрерывной амплитудной модуляции излучения переменным напряжением.

Сканирующая оптика

Два чёрных цилиндра, вынесенные перед бампером — сканирующие лидары беспилотного автомобиля

Простейшие атмосферные лидарные системы не имеют средств наведения и направлены вертикально в зенит.

Для сканирования горизонта в одной плоскости применяются простые сканирующие головки. В них неподвижные излучатель и приёмник также направлены в зенит; под углом 45° к горизонту и линии излучения установлено зеркало, вращающееся вокруг оси излучения. В авиационных установках, где надо сканировать полосу, перпендикулярную направлению полёта самолёта-носителя, ось излучения — горизонтальна. Для синхронизации мотора, вращающего зеркало, и средств обработки принимаемого сигнала используются точные датчики положения ротора, а также неподвижные реперные риски, наносимые на прозрачный кожух сканирующей головки.

Сканирование в двух плоскостях добавляет к этой схеме механизм, поворачивающий зеркало на фиксированный угол с каждым оборотом головки — так формируется цилиндрическая развёртка окружающего мира. При наличии достаточной вычислительной мощности можно использовать жёстко закреплённое зеркало и пучок расходящихся лучей — в такой конструкции один «кадр» формируется за один оборот головки.

Приём и обработка сигнала

Основная статья: Цифровая обработка сигналов

Важную роль играет динамический диапазон приёмного тракта. Например, приёмный тракт новейшей (2006 год) подсистемы машинного зрения MuCAR-3 с динамическим диапазоном 1:106 обеспечивает эффективный радиус действия от 2 до 120 м (всего 1:60). Чтобы избежать перегрузки приёмника интенсивной засветкой от рассеивания в «ближней зоне», в системах дальнего радиуса действия применяют высокоскоростные механические затворы, физически блокирующие приёмный оптический канал. В устройствах ближнего радиуса со временем отклика менее микросекунды такой возможности нет.

Перспективы применения

Исследования атмосферы

Исследования атмосферы стационарными лидарами остаётся наиболее публичной отраслью применения технологии. В мире развёрнуто несколько постоянно действующих исследовательских сетей (межгосударственных и университетских), наблюдающих за атмосферными явлениями.

Измерение скорости и направления воздушных потоков. Теоретическое обоснование применения наземного доплеровского лидара для таких измерений было дано ещё в 1980-е годы. Первые практические разработки использовали неподвижные оптические системы с лучом, направленным вертикально в зенит; в 1990-е годы были предложены технологии, позволяющие доплеровским лидарам сканировать широкий угол обзора. В 2001 Alcatel предложил размещение лидаров на борту спутников, так, что «созвездие» спутников на орбите способно отслеживать движение воздушных масс в рамках целого континента, а в потенциале — на Земле в целом. Лидары активно используются для наблюдений за загрязнением атмосферы. Особый класс дифференциальных лидаров (differential absorption lidar, DIAL), излучающих одновременно свет с разной длиной волны, способен эффективно определять концентрацию отдельных газов, оптические показатели которых зависят от длины волны.

Измерение температуры атмосферы. Разработано и реализовано на практике несколько основных методов измерения профилей температуры.

В первом методе используется резонансное рассеяние на атомах щелочных металлов, в частности, натрия, калия, а также железа. Облака атомов металлов находятся на высоте 85 — 100 км. Температура измеряется по доплеровскому уширению резонансных линий с помощью зондирования узкополосным подстраиваемым лазером (используются жидкостные лазеры с активным веществом в виде раствора органического красителя). Первые измерения были осуществлены с помощью искусственных натриевых облаков, забрасываемых в атмосферу ракетами. Несмотря на то, что метод ограничен диапазоном высот, на которых присутствуют атомы металла, рассеянный сигнал оказывается относительно большим, и это дает возможность измерять температуру с точностью до 1.5 ˚К.

Второй метод — метод рэлеевского рассеяния (Rayleigh lidar), основан на нерезонансном рассеянии света на молекулах воздуха. Впервые он был применен в 1953 году в опытах с прожекторным зондированием атмосферы. Суть метода заключается в следующем. Если отсутствует аэрозольное рассеяние, то мощность обратно рассеянного сигнала прямо пропорциональна плотности воздуха, из которой можно расcчитать температуру. Разрежение воздуха с высотой позволяет использовать метод рэлеевского рассеяния на высотах не более 90 км. Нижняя граница высоты измерения (около 20-30 км) обусловлена присутствием в граничном слое большого количества аэрозоля, который значительно увеличивает рассеяние, но практически не влияет на плотность воздуха.

Третий метод основан на вращательном рамановском (комбинационном) рассеянии молекулами воздуха (Raman lidar). Когда температура увеличивается, интенсивность переходов с большими квантовыми числами возрастает, в то время как интенсивность линий вращательного рамановского спектра, соответствующих маленьким квантовым числам, уменьшается. Переходы с большими квантовыми числами соответствуют линиям рамановского спектра, расположенным дальше от центральной частоты. Температура определяется при использовании измерений в двух областях спектра с различной температурной зависимостью. Максимальная высота зондирования составляет около 30 км, погрешность измерения менее 1 ˚К до высоты 10 км. Так как в приемнике линия упругого рассеяния подавляется, то измерения можно проводить и в присутствии значительных концентраций аэрозолей.

Измерение температуры может проводиться так же с помощью DIAL лидара, но этот метод не получил большого распространения.

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

Раннее оповещение о лесных пожарах. Лидар, размещённый на возвышенности (на холме или на мачте) и сканирующий горизонт, способен различать аномалии в воздухе, порождённые очагами пожаров. В отличие от пассивных инфракрасных систем, распознающих только тепловые аномалии, лидар выявляет дымы по аномалиям, порождаемым частицами горения, изменению химического состава и прозрачности воздуха и т. п. Технология с радиусом обнаружения дымов в 20 км была впервые заявлена в 1990, активные поиски оптимальных конфигураций систем ведутся по сей день.

Исследования Земли

Вместо установки лидара на земле, где принимаемый отражённый свет будет зашумлён из-за рассеяния в загрязнённых, нижних слоях атмосферы, «атмосферный» лидар может быть поднят в воздух или на орбиту, что существенно улучшает соотношение сигнал-шум и эффективный радиус действия системы. Первый полноценный орбитальный лидар был выведен на орбиту NASA в декабре 1994 года в рамках программы LITE (Lidar In-Space Technology Experiment). Двухтонный лидар LITE с метровым зеркальным телескопом, поднятый на высоту 260 км, «рисовал» на земле размытое пятно диаметром 300 м, что было явно недостаточно для эффективного отображения рельефа, и был исключительно «атмосферным».

Особо ценным оказался опыт верификации данных космической съёмки с использованием синхронных данных более 60 наземных лидаров по всему миру.

Первый европейский орбитальный лидар (проект ALADIN) планируется к запуску в 2008 году.

Космическая геодезия. Современные космические проекты разделились на два направления — совершенствование «атмосферных» систем (см. вышеупомянутый проект Alcatel) и геодезические лидары, способные сканировать рельеф земной поверхности с приемлемой разрешающей способностью. Лидары могут применяться как на орбите Земли, так и на орбитах других планет, практический пример тому — бортовой лидар АМС Марс Глобал Сервейор.

Авиационная геодезия. Национальная океанографическая служба США (NOAA) систематически применяет авиационные лидары для топографической съёмки морского побережья. Сканирующий лидар NOAA имеет разрешение по вертикали 15 см и полосу сканирования (при штатной высоте полёта) 300 м. Привязка к абсолютной высоте производится «от уровня моря» (с поправкой на приливы), к географическим координатам — по сигналам GPS. Географическая служба США (USGS) проводит аналогичные топографической съёмки в Антарктиде, данные съёмок USGS находятся в открытом доступе. В 2007 году USGS начал программу по встраиванию данных лидарной съёмки в национальную базу топографических данных США.

Особое направление, применяемое на практике в сейсмоопасных районах США — дифференциальное измерение высот с целью выявления локальных подвижек земных масс в районе разломов. Ещё в 1996 с помощью лидара была открыта неизвестная ранее зона разлома возле Сиэтла.

Мониторинг лесов и биомассы. Космические (например, GLAS — Geoscience Laser Altimeter System) и авиационые лидары позволяют определить высоту растительности, в частности леса. Таким образом появляется возможность уточнить распространение лесов, вычислить их параметры (фитомасса, запас древисины) и осуществлять мониторинг за динамикой лесного покрова (например, сведение лесов в тропиках).

Строительство и горное дело

«Строительный» лидар, предназначенный для дистанционных трёхмерных обмеров зданий. Видны вращающаяся головка, обеспечивающая сканирование по горизонтали, и наклонное зеркало, сканирующее в вертикальной плоскости

Лидары, сканирующие неподвижные объекты (здания, городской ландшафт, открытые горные выработки), относительно дёшевы: так как объект неподвижен, то особого быстродействия от системы обработки сигнала не требуется, а сам цикл обмера может занимать достаточно долгое время (минуты). Так же, как в своё время падала стоимость лазерных дальномеров и уровней, применяемых в строительстве, следует ожидать дальнейшего снижения цен на строительные и горные лидары, — падение цен ограничено лишь стоимостью прецизионной сканирующей оптики. Типичные отрасли применения:

Маркшейдерское дело — обмеры открытых горных выработок, построение трёхмерных моделей подземных горных пластов (в том числе в связке с сейсмографическими инструментами).

Строительство — обмеры зданий, контроль отклонения плоскостей стен и несущих колонн от вертикали (в том числе в динамике), анализ вибраций стен и остекления. Обмеры котлованов, создание трёхмерных моделей стройплощадок для оценки объёмов земляных работ.

Архитектура — построение трёхмерных моделей городской среды для оценки влияния предлагаемых новостроек на облик города.

Морские технологии

Измерение глубины моря. Для этой задачи используется дифференциальный лидар авиационного базирования. Красные волны почти полностью отражаются поверхностью моря, тогда как зелёные частично проникают в воду, рассеиваются в ней, и отражаются от морского дна. Технология пока не применяется в гражданской гидрографии из-за высокой погрешности измерений и малого диапазона измеряемых глубин.

Поиск рыбы. Аналогичными средствами можно обнаруживать признаки косяков рыбы в приповерхностных слоях воды. Специалисты американской государственной лаборатории ESRL утверждают, что поиск рыбы лёгкими самолётами, оборудованных лидарами, как минимум на порядок дешевле, чем с судов, оборудованных эхолотами.

Спасение людей на море. В 1999 ВМС США запатентовали конструкцию авиационного лидара, применимого для поиска людей и человеческих тел на поверхности моря; принципиальная новизна этой разработки — в применении оптического маскирования отражённого сигнала, снижающего влияние помех.

Разминирование. Обнаружение мин возможно с помощью лидаров, непосредственно погруженных в воду (например, с буя, буксируемого катером или вертолётом), однако не имеет особых преимуществ по сравнению с активными акустическими системами (сонарами). Запатентованы средства обнаружения мин в приповерхностных слоях воды с помощью бортовых авиационных лидаров, эффективность таких лидаров не известна.

Системы подводного зрения. У истоков подводного применения лидаров на море стояла корпорация Kaman, запатентовавшая работоспособную технологию в 1989 году. Интенсивное (по сравнению с воздушной средой) рассеивание света в воде долгое время ограничивало действие подводных лидаров десятками метров. Импульс лазера способен «пробить» и большие расстояния, но при этом полезный отражённый сигнал оказывается неразличим на фоне паразитной засветки. Kaman преодолела эту проблему с помощью электронных затворов, открывавших оптический путь к CCD-приёмнику только на короткий период ожидаемого отклика. Кроме этого, само изображение цели формировалось методом «вычитания тени», существенно повышавшим радиус действия системы. Kaman применяет метод короткого временного окна и к авиационным системам; в них момент открытия оптического канала задаётся высотомером самолёта-носителя.

В последующие годы Kaman развивало тему лидаров как в направлении повышения радиуса действия и надёжности распознавания образов, так и части новых областей применения. Например, в 1999 запатентовано использование лидаров для установления скоростной подводной связи с беспилотными подводными аппаратами (управляемыми торпедами) по оптическому каналу. В 1992 были предложены индивидуальные лидары для водолазов и аквалангистов. Вероятно, что существенный пласт военно-морских разработок остаётся неизвестным широкой публике.

На транспорте

Определение скорости транспортных средств. В Австралии простейшие лидары используются для определения скорости автомобилей — так же, как и полицейские радары. Оптический «радар» существенно компактнее традиционного, однако менее надёжен в определении скорости современных легковых автомобилей: отражения от наклонных плоскостей сложной формы «запутывают» лидар.

Системы активной безопасности.

«Люстра» из пяти сканирующих лидаров на крыше Stanley — беспилотного автомобиля, победителя DARPA Grand Challenge 2005 года

Беспилотные транспортные средства. В 1987—1995 годах в ходе проекта EUREKA Prometheus, стоившего Европейскому союзу более 1 млрд долларов, были выработаны первые практические разработки беспилотных автомобилей. Наиболее известный прототип, VaMP (разработчик — Университет бундесвера в Мюнхене) не использовал лидары из-за недостатка вычислительной мощности тогдашних процессоров. Новейшая их разработка, MuCAR-3 (2006), использует единственный лидар кругового обзора, поднятый высоко над крышей машины, наравне с направленной мультифокальной камерой обзора вперёд и инерциальной навигационной системой. Лидар MuCAR-3 используется подсистемой выбора оптимальной траектории на пересечённой местности, он даёт угловое разрешение в 0,01° при динамическом диапазоне оптического приёмника 1:106, что даёт эффективный радиус обзора 120 м. Для достижения приемлемой скорости сканирования используется пучок из 64 расходящихся лазерных лучей, поэтому один полный «кадр» требует единственного оборота вращающегося зеркала.

С 2003 года правительство США через агентство передовых военных разработок DARPA финансирует разработку и соревнование автомобилей-роботов. Ежегодно проводятся гонки DARPA Grand Challenge; в гонке 2005 года победила машина из Стэнфорда, в основе системы зрения которой — пять лидаров направленного обзора.

Системы автоматической стыковки. Канадская компания Optech разрабатывает и производит системы для автоматической стыковки на орбите, основанные на лидарах.

Промышленные и сервисные роботы

Системы машинного зрения ближнего радиуса действия для роботов, основанные на сканирующем лидаре IBM, формируют цилиндрическую развёртку с углом охвата горизонта 360° и вертикальным углом зрения до +30..-30°. Собственно дальномер, установленный внутри сканирующей оптической головки, работает на постоянном излучении малой мощности, модулированном несущей частотой порядка 10 МГц. Расстояние до целей (при несущей 10 МГц — не более 15 м) пропорционально сдвигу фаз между опорным генератором, модулирующим источник света, и ответным сигналом. Лидар IBМ использует простой аналоговый фазовый дискриминатор непрерывного действия и имеет высокую угловую разрешающую способность, на практике ограниченную только быстродействием процессора, обрабатывающего трёхмерную «картинку» лидара, и системы автоматического регулирования уровня сигнала на выходе приёмника (быстрые АРУ вносят в принимаемый сигнал фазовые искажения, медленные — сужают динамический диапазон). В 1990—1994 подобные лидары испытывались в сервисных роботах Джозефа Энгельбергера, однако от использования лидара в серийных изделиях тогда отказались в пользу дешёвых ультразвуковых датчиков.

Примечания

  1. Middleton, W. E. K, and Spilhaus, A. F., Meteorological instruments, University of Toronto, 3rd ed. 1953
  2. 1 2 Англ. Американское метеорологическое общество. Музей лидаров
  3. Marcus, I. R., Rangemeter for XM23 Rangefinder, U. S. DoD report of 17/02/1964,
  4. См., например, Deitz, Paul H., Atmospheric Effects on the Beam Propagation of the XM-23 Laser Rangefinder, Laser Range Instrumentation, SPIE Proceedings Vol. 11. Bellingham, WA: Society for Photo-Optical Instrumentation Engineers, 1967., p.35
  5. R. T. H. Collis, Lidar: A new atmospheric probe, Quarterly Journal of the Royal Meteorological Society, Volume 92, Issue 392, Pages 220—230, 1966
  6. Apollo Laser Ranging Experiments Yield Results. From LPI Bulletin, No. 72, NASA, August, 1994
  7. Lunar Geophysics, Geodesy, and Dynamics by James Williams Jean Dickey in 13th International Workshop on Laser Ranging, October 7-11, 2002, Washington, D. C.
  8. Практическая и теоретическая сторона разработок 1980-х годов зафиксирована в: Jean Rueger. Electronic Distance Measurement: An Introduction, Springer, 1990, 4th edition 1996, ISBN 978-3-540-61159-2
  9. Laser Doppler Velocimetry Applied to the Measurement of Local and Global Wind, J. M Vaughan and P. A. Forrester, Wind Engineering, Vol. 13 No. 1 1989
  10. U.S. Patent 5 724 125
  11. U.S. Patent 6 634 600
  12. Захаров В. М. Метеорологическая лазерная локация / В. М. Захаров, О. К. Костко. — Ленинград: Гидрометеоиздат, 1977. — 222 с.
  13. 1 2 3 4 Зуев В. Е. Дистанционное оптическое зондирование атмосферы / В. Е. Зуев, В. В. Зуев. — СПб.: Гидрометеоиздат, 1992. — 232 с.
  14. Кащеев Б. Л. Дистанционные методы и средства исследования процессов в атмосфере Земли / Под общ. ред. Б. Л. Кащеева, Е. Г. Прошкина, М. Ф. Лагутина. — Харьков: Харьк. нац. ун-т радиоэлектроники; Бизнес Информ, 2002. — 426 с.
  15. Lidar measurements taken with a large-aperture liquid mirror. 2. Sodium resonance-fluorescence system / P.S. Argall, O. N. Vassiliev, R. J. Sica, and et al// Applied Optics. — 2000. — Vol. 39, No. 15. — P. 2393—2400.
  16. 1 2 Лазерный контроль атмосферы / Под ред. Э. Д. Хинкли. — М.: Мир, 1979. — 416 с.
  17. Behrendt A. Combined temperature lidar for measurements in the troposphere, stratosphere, and mesosphere / A. Behrendt, T. Nakamura, T. Tsuda // Applied optics. — 2004. — Vol. 43, No 14. — P. 2930—2939.
  18. Lidar: range-resolved optical remote sensing of the atmosphere series, Springer series in optical sciences, vol. 102 / C. Weitkamp (Ed.). — New York: Springer, 2005. — 460 p.
  19. Behrendt A. Combined Raman lidar for the measurement of atmospheric temperature, water vapor, particle extinction coefficient, and particle backscatter coefficient // Applied Optics. — 2002. — Vol. 41, No 36. — P. 7657 — 7666.
  20. U.S. Patent 7 281 891
  21. U.S. Patent 4 893 026
  22. U.S. Patent 7 164 468
  23. NASA, октябрь 1994
  24. NASA, официальный сайт программы LITE
  25. NASA, официальный сайт программы LITE, карта наземных партнёров
  26. ALADIN: The First European Lidar in Space
  27. Официальный сайт центра береговых работ NOAA
  28. USGS, база данных лидарной топосъёмки
  29. USGS, национальная база данных высот по США
  30. Blakely, R.J., Wells, R.E., and Weaver, C.S., 1999, Puget Sound aeromagnetic maps and data, U.S. Geological Survey Open-File Report 99—514,
  31. Сайт ESRL (англ.)
  32. U.S. Patent 5 989 087
  33. U.S. Patent 4 862 257
  34. U.S. Patent 4 964 721
  35. U.S. Patent 5 442 358
  36. U.S. Patent 5 353 054
  37. 1 2 The Cognitive Autonomous Vehicles of UniBwM: VaMors, VaMP, MuCAR-3 // Universitaet der Bundeswehr Muenchen 2004
  38. Optech, официальный сайт
  39. Status report, Advanced Technology Program, National Institute of Standards and Technologies, 1995

См. также

  • Лидарные системы
  • Лазерный дальномер
  • FSO (технология)

Метеорологические приборы и инструменты

Актинометр · Анемометр · Балансомер · Барограф · Барометр · Ветроуказатель · Гелиограф · Гигрометр · Детектор испарения · Детектор молний · Дисдрометр · Облачный прожектор · Облакомер · Защитные очки · Индикатор приращения льда · Лидар · Метеозонд · Метеорологическая ракета · Нефелометр · Нефоскоп · Пиранометр · Погодный радар · Радиолокационная станция · Радиозонд · Осадкомер · Снегомер · SODAR · Соляриметр · Термограф · Термометр · Термометрическая будка · Ультразвуковой анемометр · Флюгер

В статье представлен общий обзор технологии лазерного сканирования объектов в пространстве, рассмотрены устройства, реализующие эту технологию и применяющиеся в мобильных робототехнических комплексах.

ОБЗОР ТЕХНОЛОГИИ LIDAR
Термин LIDAR (от англ. Light Detection and Ranging) относится к системам радиолокации, работающим в оптическом диапазоне и использующим в качестве источника излучения лазер. Часто в зарубежных источниках можно встретить аналогичные термины – LADAR (Laser Detection and Ranging) и Laser Radar. В мобильных наземных робототехнических комплексах и беспилотных летательных аппаратах (БПЛА) эта технология играет очень важную роль: она используется для автоматического построения трёхмерной карты (сцены) окружающего пространства и пространственной ориентации аппарата. Существуют разные варианты систем LIDAR, но в общем случае все они включают следующие ключевые элементы, определяющие принцип работы системы: ● источник фотонов (чаще всего это лазер);
● детектор фотонов;
● тактирующая цепь;
● оптическая приёмопередающая часть .

Системы LIDAR времяпролётного типа (Time-of-Flight, ToF) используют короткие импульсы лазерного излучения, с высокой точностью фиксируя моменты их передачи и приёма откликов (отражённых сигналов), чтобы вычислить расстояния до объектов в окружающем пространстве или на поверхности земли (например, при топосъёмке с БПЛА). После объединения серии таких измерений с информацией о местоположении и ориентации аппарата, создаётся результирующая трёхмерная сцена интересующей области пространства. Чаще всего эта сцена сохраняется в виде массива координат (x, y, z), называемого облаком точек.

Рис. 1. Компоненты системы LIDAR

Несмотря на то, что существует множество устройств LIDAR для разных областей применения, все они состоят из похожего набора функциональных узлов (см. рис. 1), таких как:
● подсистема измерения расстояния (лазерный передатчик и приёмник);
● сканирующая подсистема;
● подсистема позиционирования и ориентации;
● система управления;
● хранилище данных.

ПОДСИСТЕМА ИЗМЕРЕНИЯ РАССТОЯНИЯ
Принципиальные отличия отдельных устройств LIDAR заключаются в реализации функции измерения расстояния. Важнейший узел системы LIDAR – подсистема измерения расстояния – состоит, в свою очередь, из таких внутренних подсистем, как лазерный передатчик и электрооптический приёмник. Лазерный передатчик излучает энергию в виде сфокусированного луча, который до выхода из устройства про- ходит через ряд преобразовательных компонентов: переключатель приёмопередатчика, расширители луча, выходная телескопическая оптика и другое. В системе LIDAR могут использоваться различные типы лазеров, но чаще всего применяют твердотельный Nd:YAG-лазер, активной средой в котором выступает алюмо-иттриевый гранат (Y3Al5O12), легированный ионами неодима. Лазерные сканирующие дальномеры работают на различных длинах волн, но чаще других используются следующие:
● 1064 нм (ближний инфракрасный диапазон) – для топографических сканеров;
● 532 нм (зелёный) – для батиметрических (измеряющих глубину) сканеров;
● 600–1000 нм – для наземных устройств, предназначенных для коммерческого использования;
● ∼1500 нм – для наземных сканирующих систем, используемых в научных целях.

Выбор длины волны лазерного излучателя зависит от целого ряда факторов:
● отражающих свойств сканируемых объектов;
● характеристик окружающей среды;
● чувствительности используемого детектора;
● необходимой степени безопасности для глаз;
● требований к конструкции устройства.

Помимо длины волны излучения нужно также учитывать мощность лазера. Электрооптический приёмник получает энергию лазерного луча, отражённого или рассеянного целью, и фокусирует её на светочувствительном детекторе при помощи входной оптики.

Методы определения расстояния
Зафиксированные значения моментов передачи и приёма лазерного луча используются для расчёта времени, проведённого светом в пути, и, следовательно, расстояния до объекта, отразившего луч. В системе LIDAR обычно используется один из двух режимов, определяющих метод измерения расстояния: импульсный режим или режим непрерывной волны. В системах с импульсной модуляцией, также известных как время пролётные системы, лазером излучаются единичные световые импульсы с высокой частотой следования. Измеряется время, прошедшее c момента излучения импульсного сигнала до момента воз- врата отклика в приёмник. Расстояние до точки поверхности объекта, в которой произошло отражение лазерного луча, может быть вычислено по формуле: D = 0,5 × c × t, (1) где c – скорость света, t – полное время прохождения светом пути до точки отражения и обратно (раундтрип), D – искомое расстояние до точки отражения. В системах с непрерывной волной лазер излучает непрерывный сигнал, к которому затем применяется синусоидальная амплитудная модуляция. В этом случае время прохождения светом полного пути от передатчика до приёмника будет прямо пропорционально сдвигу фаз в излучённом и принятом сигналах: (2) где ϕ – фазовый сдвиг, T – период сигнала. После определения времени t про- хождения луча, расстояние D, как и в первом случае, вычисляется по формуле (1). Для снижения неопределённости может быть использована многотоновая синусоидальная модуляция. Также в системах с непрерывной волной используется альтернативный метод – с линейной частотной модуляцией. В таких системах переданный и принятый сигналы смешиваются, а для демодуляции и получения информации, содержащейся в несу- щей частоте, используется когерентный приёмник. Нужно отметить, что в уравнениях (1) и (2) предполагается, что детектор в течение времени t стационарен. Для случаев с передвигающимся детектором необходимо будет внести в уравнения соответствующие поправки.

Методы детекции
Обычно в системах LIDAR используется два способа детекции: прямая и когерентная. При прямой детекции приёмник преобразует сигнал непосредственно в напряжение или ток, который пропорционален входящей оптической мощности. Приёмники могут включать лавинные фотодиоды и фотоэлектронные умножители. LIDAR-детекторы также могут работать в режиме счёта фотонов. В этом режиме детектор способен регистрировать даже очень небольшое количество фотонов, а в режиме счётчика Гейгера становится чувствительным даже к отдельным фотонам. Электронная схема приёмника производит измерение генерируемого тока с поправкой на время пролёта фотонов в приёмнике, в результате чего получается прямое измерение момента приёма оптического отклика. При когерентной детекции полученный оптический сигнал смешивается с локальным осциллятором посредством гетеродина, и только после этого фокусируется на фоточувствительном элементе. При смешивании информация преобразуется в узкополосный сигнал, что снижает шум по сравнению с методом прямого детектирования, где используется оптический фильтр.

Бегущий луч и массив
Важно отметить, что описанные методы определения расстояния и способы детектирования требуют различной геометрии приёмников. В целом, большинство коммерческих систем LIDAR работают по принципу «бегущего луча», где для одного излучённого импульса фиксируется один или несколько (как правило, от 2 до 5) значений расстояния для оптических сигналов, вернувшихся вдоль одной и той же линии визирования (множественные возвраты). Для следующего импульса подсистема целеуказания изменяет направление линии визирования, и затем снова записывается несколько значений расстояния. Этот метод – метод точечного сканирования – обычно применяется в системах LIDAR, работающих в линейном режиме, при котором энергия лазера фокусируется на малой области исследуемой поверхности, и требуется достаточно сильный отражённый сигнал для записи отклика и расчёта дистанции. Однако существуют также системы LIDAR, которые используют лазерное излучение для засветки большой площади поверхности. При этом они оснащены покадровым матричным детектором с целью измерения значений расстояния для каждого пикселя в массиве. Этим системам с кадровой развёрткой требуется небольшая сила отражённо- го сигнала. Они записывают сотни или даже тысячи расстояний для излучённого импульса.

ПОДСИСТЕМА РАЗВЁРТКИ (СКАНИРОВАНИЯ)
В тех случаях, когда необходимо не просто определить расстояние до объекта, а сделать обзор целевой области, система LIDAR должна производить измерения во множестве точек. Для построения сцены целевой области пространства используется комбинация движения LIDAR-устройства в целом и работы подсистемы развёртки, через которую проходит излучаемый оптический сигнал. Распространённый вариант реализации подсистемы развёртки основан на использовании качающегося зеркала. Последовательное изменение направления линии визирования, вдоль которой излучается оптический сигнал, осуществляется с помощью подвижного зеркала. Это зеркало поворачивается на ограниченный угол (угол обзора) вокруг оси, лежащей на его плоскости и, как правило, параллельной направлению движения устройства. Качание зеркала позволяет сканировать целевую область пространства и формировать сцену нужной ширины, определяемой углом качания зеркала (см. рис. 2).

Рис. 2. Система развёртки с качающимся
зеркалом

Подсистема на основе качающегося зеркала создаёт синусоидальную развёртку. При этом частота качания обратно пропорциональна задан- ному углу обзора (ширине сцены). Основной недостаток такого способа развёртки – непостоянная скорость движения зеркала. Дважды в течение рабочего цикла зеркало должно замедлиться, полностью остановиться, изменить направление движения на противоположное и вновь ускориться. В результате измерения, производимые с постоянной частотой, формируют сцену с неравномерной плотностью точек (меньше точек в середине полосы сканирования и больше по краям). Подсистема развёртки лазерного луча с помощью качающегося зеркала применяется, в частности, в лазерных сканерах фирм Leica и Optech . Альтернативный способ сканирования основан на использовании вращающейся призмы. В такой подсистеме развёртки многогранная призма с зеркальными гранями непрерывно вращается вокруг своей оси симметрии. Лазерный луч переходит от одной грани призмы к другой скачкообразно, в результате чего массив точек, формирующийся при движении устройства, состоит из ряда параллельных линий (см. рис. 3).

Рис. 3. Система развёртки с вращающейся
призмой

Этот вариант лишён недостатков качающегося зеркала, однако он сложнее в реализации и в том, что касается обработки результатов измерений. Системы LIDAR с вращающейся призмой производит австрийская фирма Riegl . Третий вариант подсистемы сканирования использует вращающееся зеркало. Ось вращения в этом варианте расположена почти перпендикулярно к поверхности зеркала (см. рис. 4).

Рис. 4. Сканирующая система с вращающимся
зеркалом

За счёт отклонения поверхности зеркала от плоскости, перпендикулярной к оси вращения, формируется развёртка отражённого лазерного луча в виде эллиптической кривой. Преимущество метода заключается в том, что каждая точка пространства сканируется дважды. Вместе с тем эллиптическая развёртка значительно усложняет обработку результатов сканирования, так как обработка двойных измерений является весьма сложной задачей. Кроме того, поскольку точки в одной и той же области получены с разных позиций (так как система движется и меняет ориентацию в пространстве), полученное таким способом облако точек может содержать большое количество «шумов» . Примерами систем, использующих развёртку лазерного луча с помощью вращающегося зеркала, являются сканеры Leica AHAB DragonEye. В качестве альтернативы механической развёртке в настоящее время существует применяемая в некоторых системах LIDAR оптоволоконная подсистема для направления лазерного луча на целевую область. При таком способе достигается более стабильная геометрия сканирования, благодаря фиксированным связям между оптоволоконными каналами и другими оптическими каналами устройства. Лазерный луч направляется с помощью оптоволоконного пучка, а направление сканирования для каждого импульса зависит от того, из какого оптоволоконного канала он излучается. Подобная система пучков используется и в приёмной оптике (см. рис. 5).

Рис. 5. Оптоволоконная система развёртки

ПОДСИСТЕМА ПОЗИЦИОНИРОВАНИЯ И ОРИЕНТАЦИИ
Для практического использования информации, получаемой с помощью сканирующих лазерных дальномеров, одного только массива значений расстояния от устройства до объектов и величин относительных углов сканирования недостаточно. Достоверность данных об окружающем пространстве (получаемых в виде трёхмерного облака точек или двумерного изображения с данными о расстояниях) может быть достигнута только при условии, что для каждой точки измеряются абсолютные значения положения и ориентации несущей платформы системы LIDAR в пространстве в момент приёма отклика от импульса. Для таких измерений используется подсистема ориентации и позиционирования. Эта подсистема включает в себя два основных компонента: приёмный модуль системы глобального позиционирования (ГЛОНАСС или GPS) и блок инерциальной навигации (IMU). Данные GPS-приёмника используются для записи местоположений несущей платформы в определённые моменты времени. Из множества существующих методов уточнения GPS-координат, в системах LIDAR, как правило, применяется дифференциальная постобработка сигнала со стационарной базовой станции или дифференциальные обновления в реальном времени. Для получения более точных наборов данных накладываются строгие ограничения на размещение базовой станции относительно платформы лазерного дальномера. Ориентация платформы измеряется при помощи блока инерциального измерительного устройства, в котором используются гироскопы и акселерометры. Данные GPS и IMU записываются во время движения плат- формы и объединяются (обычно во время шага постобработки данных).

СИСТЕМА УПРАВЛЕНИЯ (СИСТЕМНЫЙ КОНТРОЛЛЕР)
Для генерации облака точек все подсистемы, составляющие систему LIDAR, должны работать совместно. Качество полученных данных напрямую зависит не только от параметров каждой подсистемы, но и от взаимосогласованности их работы. Выставление параметров сенсоров и контроль работы подсистем осуществляет системный контроллер лазерного дальномера.

ХРАНИЛИЩЕ ДАННЫХ
Конечные данные LIDAR представляют собой файлы со значениями координат GPS и IMU, с измеренными значениями расстояний и иногда с информацией от других подсистем. Поскольку системы LIDAR могут генерировать очень большие объёмы данных, в системе предусмотрен накопитель, на который данные сохраняются сразу после сбора.

ПРАКТИЧЕСКИЙ ПРИМЕР: VELODYNE HDL-64E
В качестве примера рассмотрим устройство лазерного сканирующего дальномера высокого разрешения HDL-64E, производимого компанией Velodyne. Именно этот 64-лучевой LIDAR с трёхмерным сканированием установлен на беспилотные автомобили, разработанные компанией Google. Лазерный дальномер стал одним из ключевых компонентов, позволившим сделать автомобиль по-настоящему автономным.

Рис. 6. Основные подсистемы беспилотного автомобиля Google

Устройство Velodyne, установленное на крыше беспилотного автомобиля (см. рис. 6), генерирует подробную трёхмерную карту окружающего пространства. Бортовой компьютер объединяет данные измерений, полученных с LIDAR, с картами высокого раз- решения, формируя различные модели данных, которые позволяют роботизированному автомобилю передвигаться самостоятельно, избегая столкновений с препятствиями и не нарушая правил дорожного движения . Модель дальномера HDL-64E имеет 64 пары излучатель-детектор, которые обеспечивают наличие равноотстоящих секторных полей обзора по 26,5°. Для обеспечения 360-градусного обзора по азимуту весь оптический блок закреплён на вращающемся основании (см. рис. 7) и вращается с частотой 600 оборотов в минуту.

Рис. 7. Внешний вид лазерного дальномера
HDL-64E

При необходимости эта частота регулируется в диапазоне 300…900 об/мин путём передачи простой текстовой команды через последовательный интерфейс. Этот же последовательный порт может быть использован для обновления прошивки сканера. Дальномер Velodyne обладает максимальным диапазоном измерения расстояния – до 120 м с погрешностью не более 2 см . Независимо от частоты вращения оптического блока, устройство постоянно генерирует большой объём данных – 1 млн точек в секунду, что соответствует горизонтальному угловому разрешению 0,05°. Устройство статически и динами- чески сбалансировано, что сводит к минимуму воздействие вибрации и обеспечивает стабильное изображение сцены. Каждый лазер дальномера HDL-64E излучает оптический импульс продолжительностью 5 нс (на уровне 50% амплитуды с максимальной пиковой мощностью 60 Вт). Высокое напряжение, необходимое для создания пикового тока в излучателе на уровне 30 А, генерируется схемой обратноходового преобразователя, что позволяет использовать для питания лазерной установки низкие напряжения. Выход- ной лазерный луч фокусируется линза- ми. При попадании на цель часть излучения отражается обратно в направлении источника. Этот отражённый свет проходит через отдельную систему линз и УФ-фильтр, необходимый для снижения фоновой оптической засветки (увеличения отношения сигнал/шум). Линзы приёмной системы фокусируют отражённое излучение на лавинный фотодиод, генерирующий электрический сигнал, пропорциональный интенсивности оптического. Лазер и лавинный фотодиод юстируются на заводе-изготовителе для обеспечения максимальной чувствительности при минимизации перекрёстных сигнальных помех, образуя, таким образом, наиболее эффективную пару излучатель-детектор. В соответствии с силой отражённого сигнала, детектируемого лавинным фотодиодом и схемой усилителя, система изменяет амплитуду лазерного импульса, поддерживая минимальный необходимый уровень излучения. Эта автоматическая подстройка мощности лазера, во-первых, снижает нагрев оптического блока и повышает его надёжность, а во-вторых, не даёт детекторам войти в режим насыщения. В противном случае, при получении детектором слишком большого количества оптической энергии, наступал бы режим насыщения, для выхода из которого детектору требуется значительное время (если оно превышает период следования импульсов, это неизбежно приводит к искажению детектируемого сигнала). В-третьих, если уровень сигнала сопоставим с шумом, что усложняет его детектирование, система автоматически повышает уровень мощности лазерного излучения. Это может происходить, например, в случае приближения к порогу чувствительности (120 м) или при слабом отражении от чёрной матовой поверхности. Выходной сигнал усиливается и передаётся на аналого-цифровой преобразователь с частотой дискре- тизации 3 ГГц. Затем оцифрованный сигнал с детектора передаётся в циф- ровой сигнальный процессор (DSP), использующий собственный алго- ритм анализа данных и определения времени возврата сигнала. Использо- вание коротких оптических импуль- сов в сочетании с высокочастотной обработкой сигнала обеспечивают большую разрешающую способность системы. Пары излучатель-детектор поделены на две группы по 32 лазера. Одна группа расположена в верхней части модуля и направлена на верхнюю половину поля обзора, а вторая группа, находящаяся под первой, направлена на нижнюю половину поля обзора. Поскольку верхний оптический блок предназначен для измерения бо′льших расстояний, угловое расстояние между оптическими импульсами у него больше, чем в нижнем блоке, который проводит измерения на более коротких дистанциях. Устройство предоставляет данные пользователю через стандартный порт 100BaseT Ethernet. Информация непрерывно передаётся в виде кадров. Частота генерации кадров равна часто- те вращения оптического блока (при 600 об/мин – 10 Гц). Объём данных, переданных за секунду, может содержать более миллиона точек. В пакетах данных содержится информация о расстоянии и интенсивности излучения для каждой пары излучатель-детектор, а также соответствующая угловая координата. Эти данные могут быть собраны с помощью стандартной утилиты сбора Ethernet-пакетов, например Wireshark , и визуализированы в компьютерной программе, такой как Velodyne Digital Sensor Recorder. Также полученные данные могут быть обработаны автономной навигационной системой для создания оценочной кар- ты, которая затем может использоваться для выявления препятствий, поиска оптимального маршрута и, в конечном итоге, для вычислений, связанных с рулевым управлением, торможением и ускорением. На рисунке 8 показан пример кадра данных с устройства HDL-64E, полученного при помощи приложения Velodyne Digital Sensor Recorder. Вблизи центра изображения различима белая точка, указывающая на положение сенсора. Для каждой пары излучатель-детектор сгенерированное облако точек представлено отдельным цветом. Пространственное представление данных формируется объединением двухмерных облаков точек. При вращении модуля набор точек от одной пары излучатель-детектор образует на ровной поверхности непрерывную окружность. Приведённый пример относится к варианту установки дальномера на крыше кабины грузовика, поэтому на изображении ниже белой точки имеется тёмная область – кузов. Как видно на рисунке, впереди грузовика находятся два транспортных средства: другой грузовик, пытающийся повернуть налево, и легковой автомобиль, пересекающий перекрёсток. Кроме того, позади легкового автомобиля на изображении видны дорожное ограждение, земля и деревья. Слева и справа от сенсора видны волнистые области, соответствующие дорожному ограждению и тротуару и выделяющие проезжую часть в поле зрения. Вдоль троту- ара различим кустарник. Полученные данные также позволяют определить дорожную ситуацию позади сенсора – на изображении имеется транс- портное средство, находящееся за грузовиком. Важно, что в любом из облаков точек нет разрывов в круговых данных (вокруг грузовика). Этот факт показывает, что частоты следования лазерных импульсов для верхнего и нижнего блоков дальномера сконфигурированы правильно. Если бы частота следования импульсов была ниже, чем требуется, то каждая из окружностей состояла бы из пунктирных линий. Пустые области на изображении возникают из-за находящихся на оптическом пути препятствий, не позволяющих получить данные о пространстве за ними (эффект затенения). Например, так возникает чёрная полоса позади кузова грузовика. Следует отметить, что устройство LIDAR также может быть установлено под углом 90° к вертикальной оси для изменения области обзора. Такая схема установки может быть использована в геодезических и картографических приложениях. Рассмотренный лазерный дальномер Velodyne HDL-64E относится к классу 1M, то есть считается безопасным для глаз. Сенсор помещён в водонепроницаемый корпус, сохраняет работоспособность при экстремальных темпера- турах и оптимален для использования в автомобилях. Основные технические характеристики устройства приведены в таблице.

Основные характеристики Velodyne HDL-64E

Самодельный сканирующий лазерный дальномер


В этой статье я расскажу о том, как я делал самодельный лазерный сканирующий дальномер, использующий триангуляционный принцип измерения расстояния, и об опыте его использования на роботе.

Зачем нужен сканирующий дальномер?

На сегодняшний день в робототехнике не так уж и много методов навигации внутри помещений. Определение положения робота в пространстве с использованием лазерного сканера — один из них. Важное достоинство этого метода — он не требует установки в помещении каких-либо маяков. В отличие от систем, использующих распознавание изображения с камер, обработка данных с дальномера не так ресурсоемка. Но есть и недостаток — сложность, и соответственно, цена дальномера.
Традиционно в робототехнике используются лазерные сканеры, использующие фазовый или времяпролетный принцип для измерения расстояния до объектов. Реализация этих принципов требует довольно сложной схемотехники и дорогих деталей, хотя и характеристики при этом получаются приличные — используя эти принципы, можно добиться высокой скорости сканирования и большой дальности измерения расстояния.
Но для домашних экспериментов в робототехнике такие сканеры мало подходят — цена на них начинаются от 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. Также у меня есть проект более простого лидара.