Pull to refresh

Comments 78

А можно не заморачиваться со вторым поляризатором, и добавить вокруг поляризатора кольцо с одним непрозрачным сектором на 180 градусов - эдакий однобитный абсолютный энкодер. Пропускание света через него и будет регистрировать второй фотодатчик.

Не совсем понятно.
Есть ли возможность представить изображение детали?

Я вот так конструкцию представляю. Луч второй оптопары пропускается сквозь внешнее кольцо, в центре - поляризатор.

Тогда можно делать 8 дисков и получить 8 бит кодирование угла. Если нужна аналоговое непрерывное разрешение, добавить еще одну секцию, которая меняет прозрачность линейно от 0 до 100% на интервале 1/256 угла. Возможно это будет грань типа пилы.

Поляризатор получается не нужен.

Проще уж тогда диск с окнами куда вклеена плёнка разной прозрачности от 0 до 360.
Дополнительную сотню(или 512 значений), кодировать вторым байтом.

Да, если использовать полупрозрачные материалы (или менять диаметр отверстий), можно кодировать не 1 бит, а сразу 4 бита например. 2 секции по 4 бита дадут 8 бит о положении датчика...

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

1 бита для устранения неоднозначности мало. Надо 2 бита.

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

Тоже не совсем понятно.
Есть ли возможность представить изображение детали?

Как знак бесконечности, повёрнутый на пи пополам как однобитный оптический энкодер, только аналоговый.

В полярных координатах r = r0 + h*phi/(2*pi). Всё, что внутри – заливаем (ну или вообще обрезаем вращающуюся деталь по r), окошко для оптопары от r0 до r0+h, на выходе сигнал, прямо пропорциональный углу поворота.

Такой вариант даст почти полный оборот, но для многооборотного неудобен (разве что сделать два со сдвигом на pi). Можно сделать спаренный энкодер, дающий cos и sin: r1 = r01 + h*cos(phi), r2 = r02 + h*sin(phi), окошки высотой 2h с центрами над r01 и r02 (ну то есть это два овала, повёрнутые под 90 градусов друг к другу).

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

UFO just landed and posted this here

Кроме резольвера забыли ещё про один (или даже 2) датчика работающих с помощью магнитов: датчики Холла и магниторезисторы. Более того, с ними есть готовые микросхемы (2d и 3d), которые сами угол высчитывают и отдают уже в цифровом виде.

P.S.: нитпик по подписям к картинкам: закон малюса — это Malus law (или Malus’ law), в английском именные законы — "Someone’s law", а "law of smth" — обычно про явления (например "law of cosines"), а не людей

Всем означенный датчик хорош, кроме одного — надо подводить питание к обеим частям.

Ну хотя… ежели, например, вырезать круг из поляризатора и повесить его на вал немного отступая от корпуса, то светодиод вполне себе влезет.

Можно отраженный сигнал оценивать, тогда питание на одну часть не потребуется.

Отраженный свет разве не строго поляризован?

Только при отражении от диэлектрика. И то не строго, ежели не строго под углом Брюстера. А ежели диэлектрик в виде белого порошка (тм) — то есть подозрение, что там поляризация и вовсе будет на грани заметности.

Помнится на "Измерении физических величин" препод обещал автоматом 4 тем, кто придумает 20 независимых способов измерения скорости ветра. Некоторые смогли, у кого фантазия богатая (ограниченное время, прямо на экзамене, стресс).

А вы умеете измерять скорость ветра по частоте свиста свистка? С калибровкой по давлению, влажности и температуре.

Хм, интересная задача. А что считать независимыми способами? Например, если придумать 10 разных способов измерения вращения ветряка - это будет считаться? А так, навскидку:

  1. Скорость вращения ветрячка

  2. Частота свистка

  3. Угол отклонения грузика на веревочке

  4. Величина теплопотерь в обдуваемом предмете

  5. Скорость парусного кораблика

  6. Разница показаний двух барометров, один из которых обдувается ветром, а второй - нет

  7. Скорость распространения звука по ветру и против ветра

  8. Скорость высыхания капли воды

  9. Спросить у метереолога

  10. Частота колебаний струны натянутой на ветру

  11. Скорость с какой ветряк выполняет работу (мелет муку или качает воду, например)

  12. Как сильно воздушный змей тянет за привязь

  13. Как выглядит ветроуказатель

  14. Воспользоваться шкалой Буфорта

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

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

Тут напрашивается ожидание и реальность ))

Помнится на "Измерении физических величин" препод обещал автоматом 4 тем, кто придумает 20 независимых способов измерения скорости ветра. Некоторые смогли, у кого фантазия богатая (ограниченное время, прямо на экзамене, стресс).


В этом контексте было бы хорошо перечислить 20+ способов измерения угла.


Небольшой факт. Если взять два поляризатора под углом в 90 градусов, и поместить между нами третий, под 45 градсов, то мы свет на эране... увидим.

Три поляризатора это кажется прям простейшее на чём можно наглядно увидеть что квантовая физика работает.

Или волновая теория света, там и эфир можно притянуть в объяснения эффекта.

Забавная система. Заметил ещё одно полезное свойство второй пары поляризаторов: в близи минимума / максимума яркость меняется очень мало, как квадрат отклонения угла, то есть точность измерения угла очень низкая. Добавленная функция со сдвигом даёт гораздо лучшую точность, достаточно выбирать ту из двух у которой больше производная.

Лучшее решение сейчас для измерения угла новые микросхемы, которые измеряют сразу направление магнитного поля. Не силу магнитного поля, как у магнитомеров и датчиков Холла, а направление в градусах. Над таким сенсором крепится вращающийся магнит и всё.

https://youtu.be/A9Mz5lIJwVI

(есть и с цифровым выходом, не нашел сходу описания)

Оптический может тоже пригодится в каких-то случаях, можно например лазером стрелять за 100 км от такого датчика и оценивать положение объекта по отражению. И быстродействие может быть выше, магнитному полю нужно какое-то время для проникновения в датчик.

Слишком много мест вероятной поломки и отказа.

Что там может отказать? Светодиод может миллионы часов отработать. Есть и более сложные датчики. Датчик СО2 например. Там измеряется ничтожное поглощение ИК света углекислым газом, которого в составе воздуха 0.05%, если газа в составе 0.055% уже может выдать сигнал о превышении. Показания плывут и требуется периодическая калибровка. Источник света лампа накаливания маленькая.

Есть и более сложные датчики. Датчик СО2 например. Там измеряется ничтожное поглощение ИК света углекислым газом

К таким относится, например, "народный" MH-Z19.
Или чуть более сложный MH-Z14, где помимо тестовой камеры есть ещё и герметичная эталонная, заполненная азотом.

Что там может отказать?

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

 Автор предлагает редуктор ставить, чтобы было однозначное определение угла.

Даже если добавить 3ю или 5ю пару поляризаторов с разными смещениями начального угла между плоскостями поляризации, то двузначность всё ровно остается.

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

В электронике это всегда больная тема, так как подразумевает подвижные детали. А, как известно, всё, что движется, все это в первую очередь и ломается!

После этого заявления ожидал датчик без подвижных деталей, а оказалось надо вращать поляризаторы, да ещё и с редуктором. Или я чего-то не понял?

Зачем вращать два поляризатора, когда можно вращать один? Делаем так: свет излучателя попадает на вращаемый поляризатор, а потом попадает сразу на два фотоприемника. Перед каждым фотоприемником установлен ещё один поляризатор поменьше. Они взаимноперпендикулярны.

Да, я думаю что именно это и имелось в виду.


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

Вообще, да! Хорошо-бы пропускать один луч через один поляризатор. Когда я писал комментарий выше, мне вообще представлялся не лазер, а обычный светодиод (может с линзой). Его расходящийся пучек света проходит через поляризатор, и там площадь луча уже довольно велика и она покрывает два фотоприемника с поляризаторами.

а два поляризатора заменить на поляризационный светоделитель

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


По-идее, такой вариант должен быть более устойчив к деградации светодиода. Хотя это бесполезно если фотодетекторы тоже деградируют...

Это смотря какие у нас требования к точности. Ежели они настолько высоки, что уже деградация влияет, то лучше взять какой-либо многобитный энкодер.


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

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

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

https://aliexpress.ru/item/4001326296262.html?spm=a2g2w.productlist.0.0.f5ca4aa6d43txi&sku_id=12000031342381387

Он разве поляризационный?

Есть только один способ это проверить.

По цене б/у монитора, который даже работает и из которого сотни кусков поляризатора можно настрогать. И минимальный размер 10 мм. И он ещё и не поляризационный, а настоящий поляризационный светоделитель я минимум за 5 тысяч нашёл, то бишь почти как новый монитор. https://aliexpress.ru/wholesale?SearchText=Polarizing+prism&SortType=price_asc&g=y&page=1 https://aliexpress.ru/item/1005005182613010.html?sku_id=12000032010883704

Cветоделитель можно на оптоволокне сделать.

Надо взять одну охабку оптоволокна и с одного конца раздвинуть её букой Y.


Свет подавать в основание Y извлекать свет из верхушек Y.

Google Spreadsheet не пошарен. Можете доступ по ссылке сделать пожалуйста?

ничего не понимаю, зачем редуктор, почему редуктор? Нам надо сделать дополнительное определение в какой четверти круга находится датчик - не проще ли на ту же ось добавить круг, с 4мя сегментами разной прозрачности? Тогда синусоида порвется на 4 ступеньки, разрешение конечно упадет, но будет полная определенность. Не устраивает падение разрешения - ну сделать 4хсегментное кольцо на той же оси вокруг поляризатора, с тем же результатом.

не проще ли на ту же ось добавить круг, с 4мя сегментами разной прозрачности?

Так?

Не устраивает падение разрешения - ну сделать 4хсегментное кольцо на той же оси вокруг поляризатора, с тем же результатом.

Так?

Когда читаю такие статьи в стиле "смотрите какая шикарная идея - берите и пользуйтесь", хочется кричать: "прототип, собери прототип. Зачем все эти заумые размышления без него?"

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

прототип, собери прототип. Зачем все эти заумые размышления без него?


У меня есть текст про один измерительный прибор с работающим прототипом.

Навигатор по фоторезистору

https://habr.com/ru/articles/687640/

Однако Вы @buldo там никакого одобрительного комментария не оставили.

Там я подумал "какая прикольная и забавная дичь" и пошёл дальше :)

А вот энкодер - это совсем другой разговор. Эта штука имеет много большую практическую ценность. Proof of concept был бы к месту.

Все зависит от цели. У меня как-то была задача оценить угол, на который поворачивается гироскоп. Да, настоящий вращающийся диск. Нужно было узнать, как он прецессирует. Как передать его отклонение и при этом не создавать сопротивление на оси? Я тогда поступил как автор этой, замечательной статьи. Энкодер не подошёл.

Берём простейшую вами предложенную схему.
мы уже можем отслеживать ИЗМЕНЕНИЕ угла (если будем хранить предыдущее значение), добавляем точку отсчёта (2-й датчик, или 100% непрозрачный элемент диска, если падение точности при его прохождении приемлимо) Ну и добавляем требование перед началом работы датчика сделать 1 оборот.
Такая схема реально применяется в рулях с обратной связью(т.к. они сами могут покрутиться туда-сюда для калибровки)
Или в ДВС(датчик положения коленвала даёт нам 2 варианта положения распредвала) Выбираем случайно одно из этих двух положений распредвала. Если двигатель не заводится, значит мы ошиблись и выбираем другое.

Статья называется "Поляризатор = датчик угла" Датчик угла, а не датчик угла ПОВОРОТА.

Объясните мне пожалуйста, как эта схема работает в статике? Мне нужно замерить угол между двумя плоскостями, к примеру. Как? А если она не работает в статике, значит заголовок не соответствует содержанию статьи.

Я возможно, чего-то не понял или пропустил. Автор предлагает мерить угол по потери яркости источника света. Но я вот не понял, а откуда нам известна яркость самого источника в данный момент времени? Я не увидел на схеме канал замера яркости самого источника. Или лазер настолько стабилен? Я сомневаюсь. Даже в самых дешёвых лазерных принтерах есть расщепитель луча и схема измерения его мощности. То есть принтер не доверяет стабильности своего лазера.

Измерять интенсивность исходного луча это хорошая мысль.
Вот только какое устройcтыо лучше всего задействовать для расщепления луча?

Объясните мне пожалуйста, как эта схема работает в статике? Мне нужно замерить угол между двумя плоскостями, к примеру. Как?

Тут весь текст поста про то как измерять угол в как раз в статике.

Что конкретно не ясно? Исполнение механики? Ну я не механик и не чертежник, поэтому и нарисовал, что все детали летают в воздухе.

Как в статике? Мы включаем систему и НИЧЕГО НЕ ВРАЩАЕМ, статика. Как узнать угол?

Берём показания с двух фотоприёмников и вычисляем угол по формуле. В чём вообще проблема?

Очень просто. Берём показания двух датчиков и вычисляем от них арктангенс2. Исходную яркость при этом знать ни к чему, а ежели уж очень хочется её узнать — то можно её посчитать по теореме Пифагора. Правда, это ежели поляризатор идеальный и угол строго 90. А ежели неидеальный — то можно поставить три фотодиода под 120 градусов и учесть эту неидеальность, а ежели откалибровать — то и неидеальность выставления угла поляризаторов. Правда, формула посложнее будет, но тоже в пределах школьной геометрии.

Я не увидел на схеме канал замера яркости самого источника. Или лазер настолько стабилен? Я сомневаюсь. Даже в самых дешёвых лазерных принтерах есть расщепитель луча и схема измерения его мощности.

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

и вот

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

Что-то мне подсказывает, что лазер там нафик не нужен, а достаточно будет одного обычного светодиода. Особенно ежели поставить три фотодиода под 120 градусов.

Особенно ежели поставить три фотодиода под 120 градусов.

Не совсем понятно. Есть ли возможность нарисовать эскиз?

Ну как у вас, только не два фотодиода, а три, и у каждого поляризатор под разным углом. Соответственно будут три синусоиды с различным смещением.


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

Ну как у вас, только не два фотодиода, а три, и у каждого поляризатор под разным углом. Соответственно будут три синусоиды с различным смещением.

Даже если поставить 3 канала пар поляризаторов под 120 градусов при phi=0 это всё равно не устранит двузначность измерений на одном полном обороте.

Особенно ежели поставить три фотодиода под 120 градусов.

Даже если поставить 3 канала пар поляризаторов под 120 градусов, то для любого phi это всё равно не устранит двузначность измерений на одном полном обороте.

Канал замера яркости самого источника на схеме есть? Я ведь не спрашивал КАК померить. Я спрашивал нужно ли мерить яркость источника ДО поляризатора для получения необходимой точности.

 Я спрашивал нужно ли мерить яркость источника ДО поляризатора для получения необходимой точности.

Это было бы весьма полезно, постоянно наблюдать за яркостью самого источника.
Обратная связь всегда проносит пользу. Это лишь вопрос цены.

Можно откалибровать начальную яркость, если
1--извлечь поляризаторы,

2--измерить Io,

3--вставлять поляризаторы обратно и

4--только после этого делать измерения угла.

Или специально просверлить в поляризаторе окошко где-н сбоку и тумблером переключать позицию лазера и датчика света для калибровки Iо

 Но я вот не понял, а откуда нам известна яркость самого источника в данный момент времени? Я не увидел на схеме канал замера яркости самого источника. Или лазер настолько стабилен? Я сомневаюсь.

Устройство может само определить максимальную яркость просто найдя максимум за весь оборот. cos(phi)^2 имеет максимум и это как раз Io.

Прошивка может через UART красным текстом попросить пользователя медленно прокрутить один оборот, чтобы найти максимум Iо.

Затем значение Io прописывается в NVRAM и используется после пересброса питания.

Но можно и в ручную задать Io через UART-CLI в прошивку датчика угла.

Автор, добрый вечер. Большая просьба связаться со мной (если возможно в ТГ @eslyalinЕсть пара вопросов по GPS, инерциалкам и как это всё подружить. Буду признателен.

Sign up to leave a comment.

Articles