Хорошая печатная плата - залог надежности устройства. Как сделать такую плату?
Ответить

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн апр 22, 2024 09:56:08

Доброго дня всем!
Вижу, что, несмотря на давность темы, люди активно используют и собирают эту установку. Мне тоже пора)
Может, сюда ещё заходит кто-то, кто разбирался, как происходит управление лазером при экспонировании?
Записывается ли в буфер МК пиксельная строка, или же только координаты включения и выключения лазера в строке?
Соответственно, управляется лазер попиксельно, или же на уровне "отрезков"?
Насколько я понимаю, для изображений, подобных рисунку ПП, во втором случае ресурсы МК использовуются экономичнее: прерывание инкрментирует счетчик координат, и если, необходимо, разрешает/запрещает работу лазера. А ШИМ для лазера можно генерировать аппаратно, таймером, с существенно бОльшей частотой.

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн апр 22, 2024 12:21:20

andryblack
Попробовал поставить pcb-printer-host на Raspberry Pi Zero 2 W (bulleye). ldd /usr/local/bin/pcb-printer выдает libopenmaxil.so => not found
Как я понял, начиная с bulleye этой либы нет, ее выпилили. Stretch для Raspberry Pi Zero 2 W уже нет. Нашел на github отдельно libopenmaxil.so но с ней тоже ни чего не запускается:
error while loading shared libraries: /lib/arm-linux-gnueabihf/libopenmaxil.so: invalid ELF header
Вы с 2020 года обновляли свой вариант софта? Или так и осталось все как было?


Сам и отвечу... Что уж там.
После некоторого ковыряния, решение вот такое получилось:
Ставим libomxil-bellagio
sudo apt install -y libomxil-bellagio-dev
И делаем симлинк
sudo ln -s /lib/arm-linux-gnueabihf/libomxil-bellagio.so.0.0.0 /lib/arm-linux-gnueabihf/libopenmaxil.so
После этого на хосте поднимается сервер, и на него можно зайти через браузер
http://raspberrypi.local:8080

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн апр 22, 2024 18:01:50

Доброго дня всем!
Вижу, что, несмотря на давность темы, люди активно используют и собирают эту установку. Мне тоже пора)
Может, сюда ещё заходит кто-то, кто разбирался, как происходит управление лазером при экспонировании?
Записывается ли в буфер МК пиксельная строка, или же только координаты включения и выключения лазера в строке?
Соответственно, управляется лазер попиксельно, или же на уровне "отрезков"?
Насколько я понимаю, для изображений, подобных рисунку ПП, во втором случае ресурсы МК использовуются экономичнее: прерывание инкрментирует счетчик координат, и если, необходимо, разрешает/запрещает работу лазера. А ШИМ для лазера можно генерировать аппаратно, таймером, с существенно бОльшей частотой.

В буфер записывается пиксельная строка и для каждого активного пиксела выдается импульс лазера заданной длительности в ПРОГНОЗИРУЕМЫЙ момент относительно импульса с энкодера с учетом скорости движения каретки. Что вы там собрались оптимизировать и упрощать - не понятно, скорее все будет намного сложнее плюс пара трудноразрешимых проблем.

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн апр 22, 2024 21:30:15

В буфер записывается пиксельная строка и для каждого активного пиксела выдается импульс лазера заданной длительности в ПРОГНОЗИРУЕМЫЙ момент относительно импульса с энкодера с учетом скорости движения каретки. Что вы там собрались оптимизировать и упрощать - не понятно, скорее все будет намного сложнее плюс пара трудноразрешимых проблем.

Пока ничего, тем более, что а) установка успешно работает и б) PC приложение написано на ФОРТ, т.е. труднопонимаемо для не-автора. Просто хотел понять, как соотносятся частота PWM и скорость перемещения луча.
Я когда-то имел дело с древними фотонаборными автоматами, ориентированными на текст; и там, для минимизации аппаратных требований, применялся описанный подход. В буфер экспонирующего модуля поступали координаты начал и концов "черных" отрезков текущей строки, счетчик позиции сравнивался с ними, при совпадении включался/ отключался лазер. Скорости были куда выше (развертка вращающимся зеркалом), поэтому 30 с лишним лет назад это ещё делали на жёсткой логике)

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн апр 22, 2024 22:37:20

Программой все в основном пользуются от SDimok, а это C#, сам контроллер написан на С. Аппаратная логика - это замечательно, там много чего можно реализовать. В софте согласовать фазу ШИМа и отсчетов уже будет некоторой проблемой сравнимой с просто по-пиксельным управлением лазером, и она - не единственная. Что реализовано в прошивке сейчас, сделано достаточно оптимально. У себя в прошивке я вообще отвязал заполнение ШИМ лазера от отсчетов, все делается через DMA и буфер. Запас времени получается достаточно большой, по прикидкам между отсчетами может быть порядка 7 мкс, а это соответствует скорости каретки 5 м/с при ленте 720 dpi - более чем достаточно, у всех в основном скорость в районе 1 м/с и определяется в основном механикой установки.

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн май 06, 2024 13:12:07

Спаял плату, в винде при подключении появляется Generic USB Hub в списке устройств. В HID ни чего не появляется. Хост (SDimok) плату не видит.
Пробовал прошить с помощью st-link boot.hex через st-flash под линуксом:
st-flash write ./boot.hex 0x08000000
Код:
st-flash 1.7.0
2024-05-06T10:41:38 INFO common.c: F1xx Medium-density: 20 KiB SRAM, 64 KiB flash in at least 1 KiB pages.
file ./boot.hex md5 checksum: 6ab89f9032419ae64f37836b8ec75da, stlink checksum: 0x0008629e
2024-05-06T10:41:38 INFO common.c: Attempting to write 10483 (0x28f3) bytes to stm32 address: 134217728 (0x8000000)
2024-05-06T10:41:38 WARN common.c: unaligned len 0x28f3 -- padding with zero
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08000000 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08000400 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08000800 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08000c00 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08001000 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08001400 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08001800 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08001c00 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08002000 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08002400 erased
2024-05-06T10:41:38 INFO common.c: Flash page at addr: 0x08002800 erased
2024-05-06T10:41:38 INFO common.c: Finished erasing 11 pages of 1024 (0x400) bytes
2024-05-06T10:41:38 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL
2024-05-06T10:41:38 INFO flash_loader.c: Successfully loaded flash loader in sram
2024-05-06T10:41:38 INFO flash_loader.c: Clear DFSR
2024-05-06T10:41:38 INFO flash_loader.c: Clear CFSR
2024-05-06T10:41:38 INFO flash_loader.c: Clear HFSR
2024-05-06T10:41:38 INFO common.c: Go to Thumb mode
 11/ 11 pages written
2024-05-06T10:41:39 INFO common.c: Starting verification of write complete
2024-05-06T10:41:39 INFO common.c: Flash written and verified! jolly good!

После этого ни чего не изменилось.
Что надо еще сделать? И какие адреса при прошивке указывать?

Добавлено after 2 hours 22 minutes 50 seconds:
Так, прошился в винде через STM32 ST-Link Utility, теперь хост видит плату.
Установка пока не собрана, поэтому подключил все на столе. Шаговик работает, а двигатель каретки - нет. Он вообще без энкодера должнен крутиться хоть в каком-то режиме?

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн май 06, 2024 13:13:43

perelep, должен

Re: Лазерная установка для засветки фоторезиста от AlphaCrow

Пн май 06, 2024 15:04:14

Здрасьте! Интересует ли общественность перенос прошивки железа в более распространённую среду разработки PlatformIO? Естественно, с возможностью дальнейшей доработки алгоритмов, протокола и навешивания каких-нибудь нужных плюшек.
Пока что данная идея затевается лично для себя, в основном с целью потенциального перехода на более новое железо (STM32G4). Но также есть желание попробовать портировать прошивку и на камни STM32G0/F0 с целью посмотреть, хватит ли им быстродействия и ресурсов для работы установки.
Изображение
Вложения
16044.jpg
(41.38 KiB) Скачиваний: 25
Ответить