Внимание! Перед тем как создавать тему на форуме, воспользуйтесь поиском! Пользователь создавший тему, которая уже была, будет немедленно забанен! Читайте правила названия тем. Пользователи создавшие тему с непонятными заголовками, к примеру: "Помогите, Схема, Резистор, Хелп и т.п." также будут заблокированны навсегда. Пользователь создавший тему не по разделу форума будет немедленно забанен! Уважайте форум, и вас также будут уважать!
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
В теме есть один весьма специфический момент - требования к используемым зеркалам. Чуть выше я упомянул, что комплект моторчиков с зеркалами примерно тянет на 550р. При том, что сам шаговый микромоторчик стоит всего около 30р. Приходится покупать комплект зеркал на Али. https://ru.aliexpress.com/item/1X-Reflector....6e4733edg3Ss3d
С "неправильными" зеркалами за счет используемого в них стекла получается рассеянное излучение, дающее паразитную фоновую засветку соседних пикселей картинки.
Для наглядности сфоткал картинку лазерного зайчика на потолке.
Присоединённое изображение (Нажмите для увеличения)
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
Голова ты садовая! А в дохлые лазерные принтеры не судьба залезть -там те же зеркала лазерные напыленные на металле. Зеркало имеет толщину от миллиметра до двух.
--------------------
Viva la muerte y eviva la muerda intellegencia!!! _____________________________________________ Tercero del Extrangeros
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
QUOTE (АНАрхист @ Feb 12 2019, 09:48 PM)
А в дохлые лазерные принтеры не судьба залезть -там те же зеркала лазерные напыленные на металле. Зеркало имеет толщину от миллиметра до двух.
Согласен полностью. Зеркала надо откуда-то выковыривать. Но сейчас нет под руками лазерного принтера под разбор. Нужна пара зеркалец размерами около 10Х10мм. Наверняка есть и другие доноры.
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
Сейчас у меня в макете просто равномерная ступенчатая реверсивная пила. При этом на ближнем и дальнем участках позиционирования луча наблюдается явная нелинейность, замедление (или набор) хода. Это связано с разными тяговыми усилиями ротора на разных углах поворота.
Если ротор/якорь стартует с нулевой скорости - начало неизбежно сжатое. Ускорение пропорционально току катушки и позиции ротора/якоря. С моторчиком и вашим управлением - разности токов катушек как я понимаю. Так по своему интересно, в обе стороны можно "стартовый пинок" давать.
Если сделать мелкий электромагнит на притягивание, якорь может быть легкий, но в обратную сторону пинок для разгона не выйдет. Кстати придумалась еще оптимизация. Можно пикселы рисовать по разному. На начальном участке время длиннее, на центральном короче. Тоже просто сделать, из минусов - разная яркость, сработает только для строк.
QUOTE
В рабочем варианте обязательно нужно закладывать овердрайв для разных участков строк. Программно это несложно реализовать. Получится достаточно линейная развертка.
Я на STM32F1xx хочу попробовать что-то наподобие - недорогие, есть у меня и ресурсов как мне кажется хватит. По крайней мере для отрисовки и какой-никакой логики, насчет смартфонов - не знаю. Там 2 x 12-бит DAC, грузить им какое-нибудь число из таблицы в флешке не сложно. После того как они врублены это по сути перекладывание пары чисел из таблицы в регистры DACов.
QUOTE
С моторчиками в микростеповом режиме идет намерянный размен качества изображения на простоту реализации. Поэтому с ними я бы не замахивался на сложные изображения.
Насколько я понял ваше описание - моторчики по сути в линейном режиме, такой странный вид гальванометра/voice coil вышел. У них в таком виде как я понимаю нет фиксированных шагов, а дискретность у вас определяется шагом вашего DAC из резисторов, разве нет? Если DAC сможет дать более плавный сигнал - чего б моторчику не следовать ему, в пределах 1 шага то? При условии что инерция позволяет.
QUOTE
В микростеповом режиме есть другая более существенная засада, затрудняющая его использование для прорисовки сложных картинок. При работе пары моторчиков возникают механические биения конструкции, которые дают небольшой "размаз" (дрожание) пикселей вдоль строк. Я не планирую замахиваться на состязания по качеству с гальво отклонялками. Только бегущая строка, смайлики, простейшая анимация. В ходе работ немного скорректировалась схема макета.
Говоря за себя - было бы прикольно попробовать сделать нечто типа часов с подобным по смыслу небанальным дисплеем, но в полной версии с довесками, для которых фон все же надо для других дел, так что все это в IRQ засунуть.
А так не особо понимаю боязни насчет числа пикселей - увеличить число пикселей само по себе можно более резвой их отрисовкой, при той же скорости движения развертки. В лучшем случае привод своей инерцией как раз сгладит переходы между уровнями. Я что-то упускаю? И да, как я понимаю для прямого и обратного хода - для линейности кривая может потребоваться разная. Откуда и мысль использовать DAC и таблицы - так не будет особой проблемой в реальном времени корректировать свойства привода хоть для каждого пиксела.
p.s. а фонарь для велосипедистов - идея хорошая, но как я понимаю там статичная маска и поэтому меняющуюся картинку он в принципе не может, узкоспециализированная штука.
Там ещё и в разные стороны надо будет отображать картинку, по типу: пила вперёд - данные 0-63 пиксель, пила назад - 127-64й и так далее, с учётом того, что DMA назад считать не умеет, в картинке нужно будет чётные строки развернуть
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Ротор на каждом микростепе стартует с нуля. При условии, что частота степов не максимальная для этого моторчика. На опробованном мною экземпляре микростеп в 50- 100мкс успевает останавливать ротор.
Я буду делать свой вариант именно в том составе, что на картинке несколькими постами выше. На Ардуинке с управлением по БТ со смартфона. Как сказал сэнсей (Раков), придется лишь переписать коды в Ардуине. Приложение GyverMatrixBT идеально подходит под мою задачу.
Есть еще одна принципиальная засада. Обычные лазерные проекторы с гальво отклонялками работают с векторном режиме построения изображения. При этом "простой" лазерного зайчика может быть в пределах 10-15% от времени растра. При растровом построении картинки простой может составлять около 50-60% (на глазок). То есть, для получения примерно равных яркостей картинок лазер придется ставить мощнее гальво вариантов. Что-нить такого рода https://www.metrobas.ru/catalog/razdel/zele...nter_2000_mw_1/
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
Там ещё и в разные стороны надо будет отображать картинку, по типу: пила вперёд - данные 0-63 пиксель, пила назад - 127-64й и так далее, с учётом того, что DMA назад считать не умеет, в картинке нужно будет чётные строки развернуть
Ну да, если рисовать и на прямом ходу и на обратном - порядок пикселов разный. DMA - я в такие навороты лезть не хочу. Как в IRQ pixel clock-а это обыграть я себе представил вроде, с компенсациями и прочими чудесами, если понадобится. Для 2 направлений завести 2 ветки логики, в начале решаем по которой работать. Я хочу поэкспериментировать для начала с механикой из мелких элекромагнитиков, не понравится/не получился - с моторчиками, идея прикольная. В том виде как я это себе представляю ни схема ни код сильно не поменяются, т.к. это включение и использование моторчика по сути делает его "гальванометром", как я понимаю. Как DMA убедить синхронно и рисовать пиксел и загонять компенсации в DACи - я с наскока не совсем понимаю. Хоть так наверное и можно.
Конечно IRQ с частотой pixel clock это как бы фи, но учитывая что я согласен с дедом что для начала хватит и скромной картинки - сработает. Прочитать пару таблиц и пиксел и загнать в GPIO и регистры DAC много времени не надо. А вот как там дед микрошаги хочет делать и какая при этом дискретность достижима - черт его знает, для меня это звучит сложно и стремно.
p.s. кстати а не для того ли в "клавиатурах" ИК лазер используют, чтобы потом ловить его чем-то типа TSOP-а? Ну то-есть стрелять при скане не просто лазером, а модулированым ВЧ сигналом (чтобы фоновая засветка отвалилась). Если датчик нашел в этой позиции привода сигнал - юзер руку где-то там около этой "кнопки" держит, клавиша нажата, стало быть.
Блин, иногда надо сначала читать мануалы, а потом за отвертку хвататься. Думал лазер из старого сидюка выдернуть. А это оказался именно CD-ROM и лазер в нем - инфракрасный. А красный - в DVD однако .
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Я бы все же рекомендовал в качестве донора лазерную указку мощностью около 1Вт. Цвет, который больше нравится. Там специально заточенная под задачу регулирующая линза, от качества которой сильно зависит формируемая апертура и угол луча. А также подогнанная под посадочный конструктив диода площадка теплоотвода с радиатором. Компактно и хорошо продумано. С другими лазерными диодами и донорами придется что-то колхозить самостоятельно.
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
QUOTE (octus @ Feb 17 2019, 01:00 PM)
а почему бы не использовать развертку от сканера штрихкода там уже все реализовано
В сканере штрих-кода развертка луча только по одной оси. Для формирования картинки нужны две оси. И еще. Хотелось бы не просто реализовать абы какое развертывающее устройство, а предельно компактное. Вся мулька разрабатываемого девайса в оригинальности предлагаемого подхода. Микростеповый режим управления микромоторчиками зеркал позволяет отказаться от традиционно громоздких конструктивов и предельно минимизировать конструкцию.
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
А почему одна катушка у каждого движка запитана постоянно? Для микрошага пары обмоток в квадратуре синусоидой запитываются Клон blue pill/maple mini на stm32f103c8t6 работает с ардуиновской средой и имеет 4 канала ШИМ (на самом деле больше - но не считал)
Это сообщение отредактировал romanetz - Feb 17 2019, 08:13 PM
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
С одной постоянно запитанной катушкой лучше фиксируется стартовое (нулевое) положение ротора. Если запитывать эту катушку динамическим сигналом, стартовое положение ротора будет плавать в пределах нескольких угловых минут.
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
нулевой угол - косинус - максимум, синус - ноль. Только для вращения ток меняем в обоих обмотках сразу, иначе постоянно включенная обмотка будет ротор тормозить после половины шага
Присоединённое изображение (Нажмите для увеличения)
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Это классическая картинка для равномерного ВРАЩЕНИЯ ротора. Для "телепания" ротора в требуемом угловом интервале придется вырезать соответствующий фрагмент этой картинки, разбить на нужное количество микро степов, и гонять туда-сюда.
Сейчас с постоянной запиткой одной из обмоток я столкнулся с неравномерностью развертки луча. Очень даже может быть, что с традиционной запиткой обмоток эта проблема устранится. Как придет комплектуха из Китая, буду пробовать. Среди заказанной комплектухи есть вот такая платка управления шаговым моторчиком. Она умеет формировать микрошаги. https://ru.aliexpress.com/item/5pcs-lot-Rep....42ae33edJXcIox
Это сообщение отредактировал ded - Feb 18 2019, 04:40 PM
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
0-2пи - интервал для одного шага, и из него вырезаем нужный отрезок. На небольшом угле отклонения от нулевой позиции - действительно, на одну из обмоток подаётся почти полное напряжение (cos a≈1), а на вторую - почти линейно зависящее от угла (sin a≈a - в радианах). Но на углах, больших ≈10° линейность уже нарушается Поэтому, подавать на вторую обмотку полный размах ± напряжения питания - не вариант
Это сообщение отредактировал romanetz - Feb 18 2019, 05:24 PM
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Конкретно в моей задумке большие углы отклонения не требуются. Единицы градусов. Хочу проецировать картинку или бегущую строку в узком угле, но на приличную дистанцию.
romanetz, хочу полюбопытствовать. Тема достаточно специфическая и мало востребованная. Есть конкретный интерес по ее реализации, или просто любопытствуешь? Просто в ближайшее время после первых экспериментов встанет дилема - рассчитывать на сотрудничество с кем-то из наших программеров с форума, или с разработчиком приложения GyverMatrixBT.
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!
Железки есть практически все, как проект на выходные детям поиграться - почему бы и нет. Узкоформатный, но дальнобойный - светить через двор на соседний человейник... 100 мВт лазера тут в самый раз
Это сообщение отредактировал romanetz - Feb 19 2019, 05:07 AM
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Из вариантов применения еще можно дополнить список: электронный суфлер для любых условий, даже для школьников и студентов у доски, караоке, информация или реклама на любой поверхности на улице, для развлекухи во время праздников и гуляний, эмблемы и кричалки любимой команды на соревнованиях, смайлики на концертах и выступлениях, проецирование с борта коптера, послания на занавески или внутрь окон соседнего дома и пр. и пр..
Группа: Автор
Сообщений: 5930
Пользователь №: 34743
Регистрация: 9-July 08
Место жительства: Москва
Как придет комплектуха из Китая, начну подгонку железа под приложение GyverMatrixBT. Поэтому в дальнейшем тема будет развиваться тут https://www.youtube.com/channel/UCgtAOyEQdAyjvm9ATCi_Aig на канале и совместно с автором этого приложения . Может потребуется небольшая доработка самого приложения под лазерное проецирование (регулировка формата, частоты кадров, яркости луча).
--------------------
Нравится, не нравится, терпи моя красавица... Работайте, братья!