
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04

Привет, в этом руководстве я хочу показать вам, как вы можете создать свой собственный интерфейс step / dir для стандартных гальво-лазерных сканеров ILDA.
Как вы, возможно, знаете, я также являюсь изобретателем «DIY-SLS-3D-Printer» и «JRLS 1000 DIY SLS-3D-PRINTER», и пока я строил эти машины, я начал размышлять о том, как эти принтеры будут работать, если я буду использовать гальво-сканеры вместо декартовой системы движения. Однако в наши дни у меня не было знаний, чтобы запрограммировать контроллер для гальво-сканера. Итак, я использовал существующую прошивку с декартовым движением.
Но сегодня, после некоторых исследований, я нашел инструкцию, в которой автор использует Arduino для создания DIY Laser Galvo show. Я подумал, что это именно то, что я ищу, поэтому заказал детали, как в его инструкциях, и провел несколько экспериментов. После некоторых исследований я обнаружил, что Arduino не будет работать так же хорошо, как интерфейс шаг / направление, поэтому я переделал его для микроконтроллера STM32.
Помните, что этот контроллер - всего лишь прототип, но его можно использовать во многих проектах. Например, в 3D-принтере DIY SLS или в лазерном гравере.
Особенности контроллера Galvo:
- преобразование сигналов step / dir 5V в стандарт ILDA
- Входная частота 120 кГц (сигналы шага / направления)
- 12-битное разрешение на выходе (0, 006 ° на угол)
- преобразование полярных координат в линейные
- совместим с любым контроллером движения, который будет создавать сигнал шага и направления
- центровочный штифт (процедура наведения)
видео лазерного гальво-контроллера: (скоро)
Если вам нравится моя инструкция, проголосуйте за меня в конкурсе ремиксов
Шаг 1: Детали, необходимые для контроллера Galvo
Электронные детали для гальванического контроллера:
Количество | Описание | Ссылка | Цена |
---|---|---|---|
1x | Набор гальванометров ILDA 20Kpps | Алиэкспресс | 56, 51€ |
1x | 6 мм 650 нм лазерный диод | Алиэкспресс | 1, 16€ |
некоторые | провода | - | - |
1x | ST-Link V2 | Алиэкспресс | 1, 92 |
Электронные детали для схемы:
Вот все необходимые детали для гальванического контроллера. Я старался закупить все запчасти как можно дешевле.
Количество | Описание | Имя в цепи | Ссылка | Цена |
---|---|---|---|---|
1x | Микроконтроллер STM32 "Blue-Pill" | "ГОЛУБАЯ ПИЛЛЯ" | Алиэкспресс | 1, 88€ |
1x | MCP4822 12-битный двухканальный ЦАП | MCP4822 | Алиэкспресс | 3, 00€ |
2x | Двойной операционный усилитель TL082 | IC1, IC2 | Алиэкспресс | 0, 97€ |
6x | Резистор 1 кОм | R1-R6 | Алиэкспресс | 0, 57€ |
4x | Подстроечный потенциометр 10k | R7-R10 | Алиэкспресс | 1, 03€ |
некоторые | контактный заголовок | - | Алиэкспресс | 0, 46€ |
Шаг 2: теория контроллера

Здесь я объясню, как в целом работает контроллер. Я также покажу некоторые детали, например, расчет прямого угла.
1. КОНТРОЛЛЕР ДВИЖЕНИЯ
Контроллер движения - это часть, в которой вы будете создавать сигналы шага и направления. Управление шагом / направлением часто используется в приложениях с шаговыми двигателями, таких как 3D-принтеры, лазеры или фрезерные станки с ЧПУ.
В дополнение к сигналам шага и направления существует потребность в выводе выравнивания по центру, чтобы сделать STM32 и Motioncontroller составными. Это связано с тем, что гальванические установки полностью контролируются и нет необходимости в каких-либо концевых выключателях.
2. STM32-микроконтроллер
Микроконтроллер STM32 является сердцем этого контроллера. Этот микроконтроллер выполняет несколько задач. Эти задачи:
Задача 1: Измерение сигналов

Первая задача - измерить входные сигналы. В этом случае это будут сигналы шага и направления. Поскольку я не хочу, чтобы контроллер движения был ограничен входной частотой, я разработал схему на 120 кГц (проверено). Чтобы достичь этой входной частоты без потери данных, я использую два аппаратных таймера TIM2 и TIM3 на STM32 для управления интерфейсом шаг / направление. Помимо сигналов шага и направления есть сигнал выравнивания. Это выравнивание контролируется внешним прерыванием на STM32.
Задача 2: вычислить сигналы
Теперь контроллеру необходимо вычислить сигналы для правильного значения для ЦАП. Поскольку гальваническое устройство создает нелинейную полярную систему координат, требуется небольшой расчет для создания линейной зависимости между шагом и фактическим перемещением лазера. Здесь я покажу вам набросок расчета:

Теперь нам нужно найти формулу для расчета. Поскольку я использую 12-битный ЦАП, я могу выдавать напряжение от -5 до +5 В с шагом 0-4096 шагов. Гальво, которое я заказал, имеет полный угол сканирования 25 ° при -5 - + 5В. Итак, мой угол фи находится в диапазоне от -12,5 ° до +12,5 °. Наконец, мне нужно подумать о расстоянии d. Лично мне нужно поле сканирования 100x100 мм, поэтому мой d будет 50 мм. Высокое значение h будет результатом phi и d. h составляет 225,5 мм. Чтобы привести расстояние d к углу phi, я использовал небольшую формулу, которая будет использовать тангенты и преобразовывать угол из радиан в "DAC-значения".

Наконец, мне нужно только добавить смещение 2048, потому что мое поле сканирования - это выравнивание по центру, и все вычисления выполнены.
Задача 3: Отправьте значения в DAC:
Поскольку используемый мной STM32 не имеет встроенного ЦАП, я использовал внешний ЦАП. Связь между ЦАП и STM32 осуществляется через SPI.
3. ЦАП
Для схемы я использую тот же 12-битный ЦАП "MCP4822", что и deltaflo. Поскольку ЦАП является однополярным, 0–4,2 В, а для стандарта ILDA необходимо биполярное напряжение + 5 В, необходимо создать небольшую схему с несколькими операционными усилителями. Я использую операционные усилители TL082. Вы должны собрать эту схему усилителя дважды, потому что вам нужно управлять двумя гальваническими устройствами. Два операционных усилителя подключены к источникам питания -15 и +15 В.

4. ГАЛВО
Последняя часть довольно проста. Выходное напряжение двух операционных усилителей будет подключено к драйверам ILDA Galvo. Вот и все, теперь вы можете управлять гальваническими аппаратами с помощью сигналов шага и направления.
Шаг 3: Схема

Для схемы я использовал прототип печатной платы.
Вы можете подключить сигналы шага и направления напрямую к STM32, потому что я активировал внутренние понижающие резисторы. Также я использовал штифты с допуском 5В для ступенчатых, направляющих и центральных штифтов.
Вы можете скачать полную схему схемы ниже:
Шаг 4: Программирование STM32
STM32 запрограммирован с помощью Attolic TrueStudio и CubeMX. TrueStudio можно использовать бесплатно, и вы можете скачать его здесь
Поскольку TrueStudio не так прост, как, например, IDE Arduino, я создал файл.hex, который вам просто нужно загрузить в микроконтроллер STM32.
Далее я объясню, как вы загружаете файл в STM32 "BluePill":
1. Загрузите «Утилиту STM32 ST-LINK»: вы можете скачать программное обеспечение здесь
2. Установите и откройте «Утилиту STM32 ST-LINK»:

3. Теперь откройте файл Galvo.hex в утилите ST-Link:

После этого вам необходимо подключить STM32 «BluePill» к ST-Link-V2. После подключения нажмите кнопку «Подключиться к кнопке traget»:

Наконец, нажмите «Загрузить». Теперь ваш STM32 должен быть прошит правильно.

Кроме того, я приложил все исходные файлы для Galvo_Controller в TrueStudio.
Шаг 5: соедините все детали механически и проверьте их


Я поместил все электронные компоненты на 4-миллиметровую алюминиевую пластину для лучшего обзора:-)
Теперь я покажу вам, как вам, вероятно, нужно отрегулировать потенциометры на схеме:
Сначала немного справочной информации о стандарте ILDA. Стандарт ILDA обычно используется для лазерных шоу и состоит из сигнала 5В и -5В. Оба сигнала имеют одинаковую амплитуду, но с измененной полярностью. Итак, нам нужно обрезать выходной сигнал ЦАП до 5 В и -5 В.
Отрегулируйте потенциометр:

Здесь вы можете увидеть выходное напряжение этой схемы при частоте входного шага 100 кГц и с постоянным сигналом направления. На этой картинке все нормально. Амплитуда колеблется от 0 до 5 В и от 0 до -5. Также напряжения, вероятно, выровнены.
Сейчас я покажу вам, что может быть не так при настройке потенциометра:

Как видите, оба напряжения, вероятно, не совпадают. Решение состоит в том, чтобы отрегулировать напряжение смещения от операционного усилителя. Вы делаете это, регулируя потенциометры «R8» и «R10».
Другой пример:

Как вы можете видеть, напряжения, вероятно, выровнены, но амплитуда не 5 В, а 2 В. Решение состоит в том, чтобы отрегулировать резистор усиления от операционного усилителя. Это можно сделать, регулируя потенциометры «R7» и «R9».
Рекомендуемые:
Шаговый двигатель, управляемый шаговым двигателем - Шаговый двигатель как поворотный энкодер: 11 шагов (с изображениями)

Шаговый двигатель, управляемый шаговым двигателем | Шаговый двигатель как поворотный энкодер: у вас есть пара шаговых двигателей, и вы хотите что-то сделать? В этом руководстве давайте использовать шаговый двигатель в качестве поворотного энкодера для управления положением другого шагового двигателя с помощью микроконтроллера Arduino. Итак, без лишних слов, давайте
Управляемый кнопкой шаговый контроллер: 4 шага

Управляемый кнопкой шаговый контроллер:
Контроллер DIY на базе Arduino - Игровой контроллер Arduino PS2 - Игра в Tekken с DIY-геймпадом Arduino: 7 шагов

Контроллер DIY на базе Arduino | Игровой контроллер Arduino PS2 | Игра в Tekken с помощью DIY Arduino Gamepad: Здравствуйте, ребята, играть в игры всегда весело, но играть с вашим собственным игровым контроллером DIY еще веселее. Поэтому мы создадим игровой контроллер с использованием arduino pro micro в этих инструкциях
Лазерный контроллер для стойки VCV: 3 шага

Лазерный контроллер для стойки VCV: в этом руководстве я покажу вам, как вы можете создать свой собственный лазерный контроллер для стойки VCV. Прямо сейчас это доступно только для macOS, но в ближайшем будущем вы можете ожидать также сборку Windows
Миниатюрный лазерный гравер по дереву с ЧПУ и лазерный резак для бумаги .: 18 шагов (с изображениями)

Миниатюрный лазерный гравер по дереву с ЧПУ и лазерный резак для бумаги. Это инструкция о том, как я сделал лазерный гравер по дереву с ЧПУ на базе Arduino и резак для тонкой бумаги с использованием старых DVD-приводов и лазера мощностью 250 мВт. Игровая площадка имеет размер не более 40 мм x 40 мм. Разве это не забавно, когда мастерит саму машину из старых вещей?