ldr что это такое
Ldr что это такое
Смотреть что такое «LDR» в других словарях:
LDR — may refer to:* Land Disposal Restrictions under RCRA * Laval des Rapides, a borough in Laval, Quebec, Canada. * Lecture and Dissertation Room, another name for a lecture hall. * Lift to drag ratio * Light Dependent Resistor * LIGO Data Replicator … Wikipedia
Ldr. — Ldr., Abkürzung für Louisd or … Pierer’s Universal-Lexikon
LDR — (long distance relationship) interpersonal relationship (often romantic) in which the two people live very far from one another (Internet Slang) … English contemporary dictionary
LDR — Die Abkürzung LDR steht für: Leder als Bezeichnung einer Einbandart beispielsweise antiquarischer Bücher. Light Dependent Resistor, der englischen Bezeichnung für das Halbleiterbauelement Fotowiderstand. Linear Depolarization Ratio, der… … Deutsch Wikipedia
ldr. — leader. * * * ldr., leader … Useful english dictionary
LDR — leader; low data rate … Military dictionary
ldr — abbreviation leader … New Collegiate Dictionary
ldr. — leader. * * * … Universalium
LDR — Leader (Governmental » Military) Leader (Governmental » US Government) … Abbreviations dictionary
LDR — labor, delivery, recovery; lifetime data repository; low dose rate … Medical dictionary
LDR — • Light Dependent Resistor Photowiderstand • Long Distance Relationship • Low Data Rate … Acronyms
Фоторезистор. Принцип работы, характеристики
Фоторезистор (фотосопротивление, LDR) – это резистор, электрическое сопротивление которого изменяется под влиянием световых лучей, падающих на светочувствительную поверхность и не зависит от приложенного напряжения, как у обычного резистора.
Фоторезисторы чаще всего используются для определения наличия или отсутствия света или для измерения интенсивности света. В темноте, их сопротивление очень высокое, иногда доходит до 1 МОм, но когда датчик LDR подвергается воздействию света, его сопротивление резко падает, вплоть до нескольких десятков ом в зависимости от интенсивности света.
Фоторезисторы имеют чувствительность, которая изменяется с длиной волны света. Они используются во многих устройствах, хотя уступают по своей популярности фотодиодам и фототранзисторам. Некоторые страны запретили LDR из-за содержащегося в них свинца или кадмия по соображению экологической безопасности.
Определение: Фоторезистор — светочувствительный элемент, чье сопротивление уменьшается при интенсивном освещении и увеличивается при его отсутствии.
Характеристики фоторезистора
Виды фоторезисторов и принцип работы
На основании материалов, используемых при производстве, фоторезисторы могут быть разделены на две группы: с внутренним и внешним фотоэффектом. В производстве фоторезисторов с внутренним фотоэффектом используют нелегированные материалы, такие как кремний или германий.
Фотоны, которые попадают на устройство, заставляют электроны перемещаться из валентной зоны в зону проводимости. В результате этого процесса появляется большое количество свободных электронов в материале, тем самым улучшается электропроводность и, следовательно, уменьшается сопротивление.
Фоторезисторы с внешним фотоэффектом производятся из материалов, с добавлением примеси, называемой легирующая добавка. Легирующая добавка создает новую энергетическую зону поверх существующей валентной зоной, заселенную электронами. Этим электронам требуется меньше энергии, чтобы совершить переход в зону проводимости благодаря меньшей энергетической щели. Результат этого – фоторезистор чувствителен к различным длинам волн света.
Несмотря на все это, оба типа демонстрируют уменьшение сопротивления при освещении. Чем выше интенсивность света, тем больше падает сопротивление. Следовательно, сопротивлением фоторезистора является обратная, нелинейная функция интенсивности света.
Фоторезистор на схемах обозначается следующим образом:
Чувствительность фоторезистора от длины волны
Чувствительность фоторезистора зависит от длины волны света. Если длина волны находится вне рабочего диапазона, то свет не будет оказывать никакого действия на LDR. Можно сказать, что LDR не чувствителен в этом диапазоне длин волн света.
Различные материалы имеют различные уникальные спектральные кривые отклика волны по сравнению с чувствительностью. Внешне светозависимые резисторы, как правило, предназначены для больших длин волн, с тенденцией в сторону инфракрасного (ИК). При работе в ИК-диапазоне, необходимо соблюдать осторожность, чтобы избежать перегрева, который может повлиять на измерения из-за изменения сопротивления фоторезистора от теплового эффекта.
На следующем рисунке показана спектральная характеристика фотопроводящих детекторов, изготовленные из различных материалов.
Чувствительность фоторезистора
Фотрезисторы имеют более низкую чувствительность, чем фотодиоды и фототранзисторы. Фотодиоды и фототранзисторы — полупроводниковые устройства, в которых используется свет для управления потоком электронов и дырок через PN-переход, а фоторезисторы лишеные этого PN-перехода.
Если интенсивность светового потока находится на стабильном уровне, то сопротивление по-прежнему может существенно изменяться вследствие изменения температуры, поскольку LDR также чувствительны и к изменениям температуры. Это качество фоторезистора делает его непригодным для точного измерения интенсивности света.
Инертность фоторезистора
Еще одно интересное свойство фоторезистора заключается в том, что существует инертность (время задержки) между изменениями в освещении и изменением сопротивления.
Для того чтобы сопротивление упало до минимума при полном освещении необходимо около 10 мс времени, и около 1 секунды для того, чтобы сопротивление фоторезистора возросло до максимума после его затемнения.
По этой причине LDR не может использоваться в устройствах, где необходимо учитывать резкие перепады освещения.
Конструкция и свойства фоторезистора
Впервые фотопроводимость была обнаружена у Селена, впоследствии были обнаружены и другие материалы с аналогичными свойствами. Современные фоторезисторы выполнены из сульфида свинца, селенида свинца, антимонида индия, но чаще всего из сульфида кадмия и селенида кадмия. Популярные LDR из сульфида кадмия обозначаются как CDS фоторезистор.
Для изготовления фоторезистора из сульфида кадмия, высокоочищенный порошок сульфида кадмия смешивают с инертными связующими материалами. Затем, эту смесь прессуют и спекают. В вакууме на основание с электродами наносят фоточувствительный слой в виде извилистой дорожки. Затем, основание помещается в стеклянную или пластиковую оболочку, для предотвращения загрязнения фоточувствительного элемента.
Спектральная кривая отклика сульфида кадмия совпадает с человеческим глазом. Длина волны пиковой чувствительности составляет около 560-600 нм, что соответствует видимой части спектра. Следует отметить, что устройства, содержащие свинец или кадмий не соответствуют RoHS и запрещены для использования в странах, которые придерживаются законов RoHS.
Примеры применения фоторезисторов
Фоторезисторы чаще всего используются в качестве датчиков света, когда требуется определить наличие или отсутствие света или зафиксировать интенсивность света. Примерами являются автоматы включения уличного освещения и фотоэкспонометры. В качестве примера использования фоторезистора, приведем схему фотореле для уличного освещения.
Фотореле для уличного освещения
Данная схема фотореле автоматически включает уличное освещение, когда наступает ночь и выключает когда светлеет. На самом деле вы можете использовать данную схему для реализации любого типа автоматического включения ночного освещения.
При освещении фоторезистора (R1), его сопротивление уменьшается, падение напряжения на переменном резисторе R2 будет высоким, вследствие чего транзистор VT1 открывается. Коллектор VT1 (BC107) соединен с базой транзистора VT2 (SL100). Транзистор VT2 закрыт и реле обесточено. Когда наступает ночь, сопротивление LDR увеличивается, напряжение на переменном резисторе R2, падает, транзистор VT1 закрывается. В свою очередь, транзистор VT2 открывается и подает напряжение на реле, которое включает лампу.
LDR, или Как сохранить любовь на расстоянии
маркетинг-директор сети кинотеатров MULTIPLEX
Если кто то спросит меня что такое «LDR» — первое, что я скажу, this is really f*** hard! И речь не идет о политической партии и названии наркотиков, это аббревиатура об отношениях, о многих парах, живущих в разных странах, городах или на разных континентах… Long Distance Relationship. Это о нас.
Мы познакомились в Австрии и было понятно, что никто из нас пока не готов к глобальным переменам места жительства. У нас обоих успешная карьера и интересная работа. Но мы точно знали, что будем вместе, несмотря ни на что. Поэтому, да, LDR был единственным вариантом.
Поначалу все просто! Ты знаешь все авиалинии, кто, куда и когда летит, где и какие скидки на билеты, названия аэропортов, расстояния от А до B, в часах, минутах, километрах.
Поначалу все романтично. Ты летишь в Милан из Киева, он из Берлина, вы проводите вместе пару дней и расстаетесь снова на несколько недель.
Со временем, ты начинаешь чувствовать, что 2-3 дня — это ужасно мало! Что никакой Милан, Мадрид, Вена не сравнится с совместным походом в ближайший маркет за молоком на завтрак, никакая Lafayette Gallery с простой прогулкой по парку возле дома. Ты хочешь большего… Чтобы твой человек был рядом с тобой. Всегда. Ну хотя бы часто. Максимальное часто.
Свежие новости
Ты устаешь от постоянного чувства ожидания, тебя раздражает Skype и все коммуникаторы и мессенждеры, все эти смайлики и поцелуйчики в Whats App не передают и 0.0001% того, что ты хочешь сказать, у тебя миллион селфи, твоих, его, собаки, детей, а тебе нужно только одно – чтобы ОН был рядом. [contextly_sidebar >
Тут как всегда буддисты приходят на помощь! Если проблему можно разрешить, не стоит о ней беспокоиться. Если проблема неразрешима, беспокоиться о ней бессмысленно.
В нашем случае – беспокоиться бессмысленно. Мы это обсудили, проговорили, пережили, перестрадали и после одного тяжелого момента решили, что будем видеть только позитивные моменты в LDR, а все остальное обсудим позже, когда сможем жить вместе или проводить больше времени друг с другом. До этого момента все «страдания и вопросы» — табу.
Путем личных экспериментов и большого опыта все-таки найдены 5 плюсов в LDR.
Терпение
Я научилась терпеть. Терпение и спокойствие — неотъемлемая часть LDR. Ты просто принимаешь ситуацию как есть. Мы живем в тысячах километрах друг от друга, стремясь к одной единственной мечте.
Поддержка
Мы научились удивительным образом поддерживать друг друга на расстоянии. Мы по голосу чувствуем, когда тяжело, когда трудно, когда усталость. Включаются какие-то дополнительные сенсоры, позволяющие тебе с полуслова, полусекунды понимать, когда что-то не так
Carpe Diem
Лови момент. Когда мы вместе – мы вместе. Нас ничто не отвлекает друг от друга. Это чувство сродни жажде, когда ты безумно хотел пить, и вот наконец-то добрался до огромного оазиса и…ныряешь в него с головой. Мы точно знаем, что хотим делать, как, когда и с кем. Впервые в жизни я планирую. И впервые в жизни мне это очень нравится.
Принятие
Мы принимаем любой наш жизненный опыт, как есть и любые события стараемся воспринимать спокойно и просто принять их. Нам всегда друг друга мало. Думаю, многие пары сталкивались с ситуацией «надоело». Ну как-то подустали отношения, хочется порознь чуть-чуть, одному. Тут же, все наоборот. Дико, жутко не хватает. Всегда. Без остановки.
Доверие
Никогда, слышите, никогда не начинайте отношения с человеком, если не доверяете ему на 200%… Это невозможно. Вы будете мучить себя, его, окружающих своим плохим настроением, ревностью, подозрением. Без доверия любые отношения – боль, а на расстоянии тем более. Вот тут уж при LDR у тебя миллион поводов думать, где он, с кем и как… У нас был такой период, но нам повезло…
Несмотря на разницу в менталитете, культуре, языке, мы смогли понять друг друга и поверить настолько, что никакое расстояние, не отвеченный звонок или пропущенное смс не заставят меня усомниться в том, что это человек никогда меня не прeдаст.
Использование светозависимого датчика с Ардуино
Простой проект с использованием Ардуино, который автоматически включает свет, когда датчик LDR зафиксировал сумерки.
Что такое LDR?
LDR сенсор на английском звучит как Light Dependent resistor, что в переводе означает «светозависимый резистор».
Неправда ли, было бы интересно иметь под рукой устройство, которое включает свет при наступлении сумерок? Цель нашего проекта сделать именно такое устройство.
Всякий раз, когда комната становится темной, лампочка автоматически будет включаться. Вы можете использовать это как систему аварийного освещения. Используйте её, чтобы автоматически включать свет, когда в комнате недостаточно света.
Чтобы обнаружить интенсивность света или темноты, мы используем датчик, называемый LDR (резистор, зависящий от света или светозависимый резистор).
Как это работает?
Эта система работает, измеряя интенсивность света в окружающей среде. Датчик, который может использоваться для обнаружения света, является LDR. Он недорогой, и вы можете купить его в любом местном магазине электроники или в Интернете.
LDR выдает аналоговое напряжение при подключении к VCC (5V), которое изменяется по величине прямо пропорционально интенсивности входного света на нем. То есть, чем больше интенсивность света, тем больше будет соответствующее напряжение от LDR.
Поскольку LDR выдает аналоговое напряжение, он подключается к выходу аналогового входа на Arduino. Arduino со встроенным АЦП (аналого-цифровым преобразователем) преобразует аналоговое напряжение (от 0-5 В) в цифровое значение в диапазоне от 0 до 1023.
Когда в окружающей среде или на ее поверхности достаточно света, преобразованные цифровые значения, считываемые из LDR через Arduino, будут находиться в диапазоне 800-1023.
Кроме того, мы запрограммируем Ардуино на включение реле. Соответственно, реле заставит включиться лампочку при слабой интенсивности света (например, вы покроете датчик LDR полотенцем или чем-то еще), то есть когда цифровые значения считаются в более высоком диапазоне, чем обычно.
Соединение Arduino и LDR датчика
Во-первых, вам необходимо подключить LDR к выходу 0 аналогового входа на Arduino. Для этого вам нужно использовать конфигурацию делителя напряжения. Схема подключения для Arduino приведена ниже.
Одна нога LDR соединена с VCC (5V) на Arduino, а другая с аналоговым выводом 0 на Arduino. Резистор 100K также подключен к одной и той же ноге и заземлен.
Тестирование кода для датчика Arduino LDR
После подключения LDR к Arduino вы можете проверить значения, поступающие из LDR через Arduino. Для этого подключите Arduino через USB к компьютеру и откройте программное обеспечение Arduino IDE. Затем вставьте этот код и загрузите его в Arduino:
После загрузки кода нажмите кнопку на Arduino IDE под названием «Последовательный монитор» (Serial Monitor). Это откроет новое окно, которое печатает на экране различные значения.
Теперь, проверьте датчик, закрыв его поверхность от света и посмотрите, какие значения показывает серийный монитор. Вот как выглядит последовательный монитор:
Подключение реле к Arduino
Реле представляет собой электромеханический выключатель. Он может использоваться для включения / выключения устройства в режиме AC / DC. Когда Arduino подает на реле высокое напряжение (5 В), он включает его (переключатель включен), в противном случае он остается выключенным.
Мы также подключили лампочку. Поскольку мы имеем дело с напряжением переменного тока большой мощности, обязательно соблюдайте надлежащие меры предосторожности. Общая схема показана ниже:
Скетч для Ардиуно
После подключения Ардуино, как показано выше, нам нужно проверить его, загрузив финальный код. Окончательный эскиз ниже:
В этом коде мы устанавливаем пороговое значение света как 700, но оно может меняться под ваши проекты. Вам нужно будет узнать, какое значение должно включить лампочку. Это необходимо сделать после тестирования эмпирически.
Таким образом, Arduino включает лампочку (через реле), когда интенсивность света падает ниже 700. Когда она выше 700, она выключает лампочку.
HDR vs LDR, реализация HDR Rendering
Как я и обещал – публикую вторую статью о некоторых моментах разработки игр в трех измерениях. Сегодня расскажу об одной технике, которая используется почти любом проекте ААА-класса. Имя ей — HDR Rendering. Если интересно — добро пожаловать под хабракат.
Взять, например, Crysis 2:
В этих двух скриншотах нет никакого DirextX10 и DirectX11. Так отчего люди думают, что делать что-то на XNA — заниматься некрофилией? Да, Microsoft перестала поддерживать XNA, но запаса того, что там есть — хватит на 3 года точно. Более того, сейчас существует monogame, он опенсорсный, кроссплатформенный (win, unix, mac, android, ios, etc) и сохраняет всю ту же архитектуру XNA. Кстати, FeZ из прошлой статьи написан с использованием monogame. Ну и напоследок — статьи направленные в целом то на компьютерную графику в трех измерениях (все эти положения справедливы и для OpenGL, и для DirectX), а не XNA — как можно подумать. XNA в нашем случае всего-лишь инструмент.
Ладно, поехали
Обычно в играх используется LDR (Low Dynamic Range) рендеринг. Это означает, что цвет бэк-буфера ограничен в пределах 0…1. Где на каждый канал уделяется по 8 бит, а это 256 градаций. К примеру: 255, 255, 255 — белый цвет, все три канала (RGB) равны максимальной градации. Понятие LDR несправедливо применять к понятию реалистичного рендеринга, т.к. в реальном мире цвет задается далеко не нулем и единицей. На помощь к нам приходит такая технология, как HDRR. Для начала, что такое HDR? High Dynamic Range Rendering, иногда просто «High Dynamic Range» — графический эффект, применяемый в компьютерных играх для более выразительного рендеринга изображения при контрастном освещении сцены. В чем заключается суть этого подхода? В том, что мы рисуем нашу геометрию (и освещение) не ограничиваясь нулем и единицей: один источник света может дать яркость пикселя в 0.5 единиц, а другой в 100 единиц. Но как можно заметить на первый взгляд, наш экран воспроизводит как раз тот самый LDR формат. И если мы все значения цвета бэк-буфера разделим на максимальную яркость в сцене — получится тот же LDR, а источник света в 0.5 единиц почти не будет виден на фоне второго. И как раз для этого был придуман особый метод называемый Tone Mapping. Суть этого подхода, что мы приводим динамический диапазон к LDR в зависимости от средней яркости сцены. И для того, чтобы понять о чем я, рассмотрим сцену: две комнаты, одна комната indoor, другая outdoor. Первая комната — имеет искусственный источник света, вторая комната — имеет источник света в виде солнца. Яркость солнца на порядок выше, чем яркость искусственного источника света. И в реальном мире, при нахождении в первой комнате — мы адаптируемся к этому освещению, при входе в другую комнату мы адаптируемся к другому уровню освещения. При взгляде из первой комнаты во вторую — она будет казаться нам чрезмерно яркой, а при взгляде из второй в первую — черной.
Еще один пример: одна outdoor комната. В этой комнате — есть само солнце и рассеянный свет от солнца. Яркость солнца на порядок выше, чем его рассеянный свет. В случае LDR значения яркости света были бы равны. Поэтому, используя HDR можно добиться реалистичных бликов с различных поверхностей. Это очень заметно на воде:
Или на бликах с сурфейса:
Ну и контрастность сцены в целом (слева HDR, справа LDR):
Вместе с HDR принято применять и технологию Bloom, яркие области размываются и накладываются поверх основного изображения:
Это делает освещение еще мягче.
Так же, в виде бонуса — расскажу про Color Grading. Этот поход повсеместно применяется в играх ААА-класса.
Color Grading
Очень часто в играх сцена должна иметь свой цветовой тон, этот цветовой тон может быть общим как для всей игры, так и для отдельных участков сцены. И чтобы каждый раз не иметь по сто шейдеров-постпроцессоров — используют подход Color Grading. В чем суть этого подхода?
Знаменитые буквы RGB — цветовое трехмерное пространство, где каждый канал это своеобразная координата. В случае формата R8G8B8: 255 градаций на каждый канал. Так вот, что будет, если мы применим обычные операции обработки (например, кривые или контрастность) к этому пространству? Наше пространство изменится и в будущем мы можем назначить любому пикселю — пиксель из этого пространства.
Создадим простое RGB пространство (хочу заменить, что берем мы каждый 8-ой пиксель, т.к. если будем брать все 256 градаций, то размер текстуры будет очень большим):
Это трехмерная текстура, где на каждую ось — свой канал.
И возьмем какую-нибудь сцену, которую нужно модифицировать (добавив при этом на изображение наше пространство):
Проводим нужные нам трансформации (на глаз):
И извлекаем наше модифицируемое пространство:
Теперь, по этому пространству — мы можем применить все модификации с цветом к любому изображению. Просто сопоставляя оригинальный цвет с измененным пространством цвета.
Реализация
Ну и кратко по реализации HDR в XNA. В XNA формат бэк-буфера задается (в основном) R8G8B8A8, т.к. рендеринг прямо на экран не может поддерживать HDR априори. Для этого обхода — нам нужно создать новый RenderTarget (ранее я описывал работу онных тут) с особым форматом: HalfVector4*. Этот формат поддерживает плавающие значения у RenderTarget.
* — в XNA есть такой формат — как HDRBlendable, это все тот же HalfVector4 — но сам RT занимает меньше места (т.к. на альфа канал нам не нужен floating-point).
Заведем нужный RenderTarget:
Создаем новый RT с размерами бэк-буфера (разрешением экрана) с отключенным mipmap (т.к. эта текстура будет рисоваться на экранном кваде) с форматом сурфейса — HdrBlendable (или HalfVector4) и 24-ех битным буфером глубины / стенсил-буферов 8 бит. Так же отключим multisampling.
У этого RenderTarget важно включить буфер глубины (в отличии от обычного post-process RT), т.к. мы будем рисовать туда нашу геометрию.
Далее — все как в LDR, мы рисуем сцену, только теперь не нужно ограничиваться рисованием яркости [0. 1].
Добавим skybox с номинальной яркостью умноженной на три и классический чайник Юта с DirectionalLight-освещением и Reflective-поверхностью.
Сцена создана и теперь нам нужно как-нибудь формат HDR привести к LDR. Возьмем самый простой ToneMapping — разделим все эти величины на условное значение max.
Покрутим камерой и поймем, что сцена все равно обладает статичностью и подобную картинку можно с легкостью добиться, применив контрастность к изображению.
В реальной же жизни — наш глаз адаптируется к нужному освещению: в плохо освещенной комнате мы все равно видим, но до тех пор, пока перед нашими глазами нет яркого источника света. Это называется световой адаптацией. И самое крутое то, что HDR и цветовая адаптация идеально сочетается друг с другом.
Теперь нам нужно вычислить среднее значение цвета на экране. Это довольно проблематично, т.к. формат с плавающим значением не поддерживает фильтрацию. Поступим следующим образом: создадим N-ое кол-во RT, где каждый следующий меньше предыдущего:
И будем рисовать каждый предыдущий RT в следующий RT применяя некоторое размытие. После этих циклов у нас получится текстура 1×1, которая собственно и будет содержать средний цвет.
Если это все сейчас запустить, то цветовая адаптация действительно будет, но она будет моментальной, а так не бывает. Нам нужно, чтобы при взгляде с резко темной области на резко светлую — сначала чувствовали слепоту (в виде повышенной яркости), а затем все приходило в норму. Для этого достаточно завести еще один RT 1×1, который и будет отвечать за текущее значение адаптации, при этом, каждый кадр мы приближаем текущую адаптацию к рассчитанному в данный момент цвету. Причем, значение этого приближения должно быть завязано на все том же gameTime.ElapsedGameTime, чтобы кол-во FPS не влияло на скорость адаптации.
Ну и теперь в качестве параметра max для _toneSimple можно передавать наш средний цвет.
Существует масса формул ToneMapping‘a, вот некоторые из них:
Я же использую собственную формулу:
Ну и следующий этап это Bloom (частично я его описывал тут) и Color Grading:
Использование Color Grading:
Любое цветовое значение пикселя (RGB) после ToneMapping‘a лежит в пределах от 0 до 1. Наше цветовое пространство Color Grading тоже условно лежит в пределах от 0 до 1. Поэтому, мы можем заменить текущее значение цвета пикселя на цвет пикселя в цветовом пространстве. При этом, фильтрация сэмплера произведет линейное интерполирование между нашими 32 значениями на карте Color Grading. Т.е. мы «как-бы»
подменяем эталонное цветовое пространство — нашим измененным.
Для Color Grading нужно ввести следующую функцию:
где ColorGradingSampler — трехмерный сэмплер.
Ну и LDR/HDR сравнение:
LDR:
HDR:
Заключение
Этот простой подход — одна из фишек 3D AAA-игр. И как видите — реализован он может быть и на старом-добром DirectX9c, причем реализация в DirectX10+ принципиально ничем отличатся. Больше информации вы найдете в исходниках.
Так же стоит отличать друг от друга HDRI (используется в фотографии) и HDRR (используется в рендеринге).