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

Хорошая печатная плата - залог надежности устройства. Как сделать такую плату?
Ответить
Открыл глаза
Сообщения: 54
Зарегистрирован: Чт сен 27, 2018 23:50:01

Сообщение andryblack »

Протокол опишу. Вопрос залу - это нужно кому-то, если проблемы с пропусками решили? Я свою плату переделывать не вижу смысла, значит тестировать нужно будет удаленно.
Реклама
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Пт окт 31, 2014 18:38:30
Откуда: Ростов-на-Дону

Сообщение urez83 »

Думаю смысла нет, программа работает хорошо. Со временем SDimok я думаю разберется как все правильно сделать с камерой. Добавлять другой протокол - опять выискивать новые ошибки. Но если сообщество решит что надо добавлять, то потестить всегда готов.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 4964
Зарегистрирован: Сб май 05, 2012 20:19:55
Откуда: Минск

Сообщение Seriyvolk »

[uquote="andryblack",url="/forum/viewtopic.php?p=3828160#p3828160"]Вопрос залу - это нужно кому-то, если проблемы с пропусками решили?[/uquote]
Решили, это сильно громко. :) Так, костыликом подпёрли. Чисто личное мнение, никого не хочу обидеть.
Если протокол имеет отличия в лучшую сторону, то несомненно в перспективе он интересен.
Сам я покуда сижу на оригинальной версии программы, ещё той, что работает через виртуальный порт, но в связи с появившимся большим кол-вом времени вскоре тоже перейду на новое железо. Так что, в бета тестах проучаствую с удовольствием.
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Пт ноя 13, 2009 14:25:04

Сообщение кт315b »

Тоже протестировал 74 версию. Скорость на слух стала стабильная, замедления пропали.
Реклама
Эиком - электронные компоненты и радиодетали
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Пн дек 10, 2007 12:19:18
Откуда: Санкт-Петербург

Сообщение -= Александр =- »

Допустим винда что-то колдует и замедляет выдачу данных в HID. Но почему тогда установка начинает рисовать пустую строку, а не ждет данных? Что-то мне кажется, что данные таки приходят, но приходят битые в виде нулей например. А это надо смотреть где они хранятся в компьютере и не повреждает ли их что-нибудь? В общем нужен отладочный лог в каком-либо виде, чтоб в него писалось все что выдается на установку.
Контактная информация:
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 482
Зарегистрирован: Сб фев 06, 2016 14:34:29
Откуда: Саянск, Иркутская область

Сообщение SDimok »

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

Добавлено after 1 minute 59 seconds:
Серый, вся винда сплошные костылики :) это я тебе как доктор говорю

Добавлено after 5 minutes 6 seconds:
И еще...есть некоторый таймаут...если его не делать, установка иногда наглухо виснет.Видимо как раз при потере данных.И повторно запросить недостающие данные уже не получается. С usart в этом плане было проще.

Добавлено after 4 minutes 6 seconds:
Поэтому автор и хотел перенести все тайминги в проц пожирнее, что бы не отслеживать такие события как останов каретки с помощью ОС
Контактная информация:
Реклама
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Пт окт 31, 2014 18:38:30
Откуда: Ростов-на-Дону

Сообщение urez83 »

SDimok Скажи, я правильно понимаю... При загрузке гербера происходит конвертация всего гербера в растр в оперативке, а потом по сколько то байт передается через usb ? При этом станок на каждой новой строке передает команду готов для получения от программы новой порции байт?
Мучитель микросхем
Аватара пользователя
Сообщения: 482
Зарегистрирован: Сб фев 06, 2016 14:34:29
Откуда: Саянск, Иркутская область

Сообщение SDimok »

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

Добавлено after 2 minutes 31 second:
Ну и переключается между буферами прямой и обратной засветки, в момент смены направления.
Контактная информация:
Нашел транзистор. Понюхал.
Сообщения: 168
Зарегистрирован: Пт дек 25, 2015 19:40:59

Сообщение ATON »

Т.е. программа и передает данные, и стартует-останавливает каретку, и переключает буферы?
Хм. Как по мне, логичнее было-бы чтобы хост просто гнал данные, а прошивка уже сама шагала пр У, переключала буферы и прочим низкоуровневым занималась. Если оба буфера заполнены - можно хосту говорить NAK, зайди попозже...
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Пн дек 10, 2007 12:19:18
Откуда: Санкт-Петербург

Сообщение -= Александр =- »

То есть получается, что если загрузка строки куда-то потеряется, а команда запуска придет - получим пустую строчку.

Надо разобраться, как в HID-порфиле обстоит дело с гарантией доставки и очередностью. Вполне возможно, что винда запускает вперед мелкие посылки, а большие буферизует и толкает в "свободное время".
логичнее было-бы чтобы хост просто гнал данные
Логичнее, но в МК ресурсов впритык, чтоб еще хоть чем-то заниматься. Логичнее было бы вообще иметь 1 мб памяти и закидывать туда сразу N строк. Да еще и аппаратно CRC проверять на лету и битые данные повторно запрашивать. Но тут уже нужен один из "жирных" STM32F4 как минимум.

Если бы не прицел по камере - можно было бы вообще как в 3д-принтере кинуть растр на карточку и автономно печатать. Но с двухсторонними платами такое не прокатит.
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 4964
Зарегистрирован: Сб май 05, 2012 20:19:55
Откуда: Минск

Сообщение Seriyvolk »

[uquote="-= Александр =-",url="/forum/viewtopic.php?p=3828454#p3828454"]Логичнее было бы вообще иметь 1 мб памяти и закидывать туда сразу N строк.[/uquote]
Тут кто-то говорил про внешнюю оперативку для МК - вот я искренне поддерживаю эту идею! На пару с кардинальной сменой протокола.
Ну и ещё, мне сильно не хватает в программе функции пропуска пустых строк и функции "начать печать с этого места".

Добавлено after 34 minutes 26 seconds:
[uquote="SDimok",url="/forum/viewtopic.php?p=3828330#p3828330"]Серый, вся винда сплошные костылики :) это я тебе как доктор говорю[/uquote]
Охотно верю. :) Но если начать плодить костыли, рано или поздно эта витиеватая конструкция рухнет.
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1274
Зарегистрирован: Вт окт 23, 2007 10:01:42
Откуда: Волгоград

Сообщение zenon »

Вообще вариант andryblack мне нравится тем, что это стандартный клиент-сервер.
На компе, куда подключена установка запускается хост, на любом другом в сетке веб-морда в браузере.
Ещё бы морду графическую.... раскатал губу. :)
Как запущу этот вариант расскажу. :)
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 757
Зарегистрирован: Пт мар 30, 2007 12:11:23

Сообщение kotovasiya »

" было бы вообще иметь 1 мб памяти и закидывать туда сразу N строк"

Заказал себе на пробу PSRAM с спиайным портом IPS6404, 8 мбайт сразу. И хочется сразу использовать протокол принтера, закинул на печать, поехала печатать из памяти.
Открыл глаза
Сообщения: 54
Зарегистрирован: Чт сен 27, 2018 23:50:01

Сообщение andryblack »

Raspberry pi zero стоит 1.5k там достаточно памяти для всего. Принтеры тоже сейчас на процессорах общего назначения.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Пн дек 10, 2007 12:19:18
Откуда: Санкт-Петербург

Сообщение -= Александр =- »

[uquote="Seriyvolk",url="/forum/viewtopic.php?p=3828482#p3828482"]Тут кто-то говорил про внешнюю оперативку для МК - вот я искренне поддерживаю эту идею! На пару с кардинальной сменой протокола.[/uquote]

Так я и был) По работе сейчас проект делаю на STM32F429 со внешней оперативой и прочими цацками - вот он бы тут как нельзя лучше справился. Есть даже платка готовая STM32F429I-DISC1 с ним, памятью и экраном. Памяти там правда всего 8 МБайт, но это уже норм для большинства задач. Одна беда - мне установку с антресоли даже достать некогда. :cry:

Добавлено after 7 minutes 39 seconds:
[uquote="andryblack",url="/forum/viewtopic.php?p=3828549#p3828549"]Raspberry pi zero стоит 1.5k там достаточно памяти для всего.[/uquote]

Памяти достаточно и проц шустрый, а вот периферия у нее так себе и в ней софт "далеко" от железа. Напрямую по ленте ехать и лазером моргать она не способна. Так что к ней все равно придется добавлять какой-то контроллер низкого уровня. А это уже сложнее, чем один жирный STM.
Контактная информация:
Открыл глаза
Сообщения: 54
Зарегистрирован: Чт сен 27, 2018 23:50:01

Сообщение andryblack »

[uquote="-= Александр =-",url="/forum/viewtopic.php?p=3828552#p3828552"]Памяти достаточно и проц шустрый, а вот периферия у нее так себе и в ней софт "далеко" от железа. Напрямую по ленте ехать и лазером моргать она не способна. Так что к ней все равно придется добавлять какой-то контроллер низкого уровня. А это уже сложнее, чем один жирный STM.[/uquote]
Насчет сложнее - спорно. Одной обвязки под эту СТМ нужно будет больше чем во всей установке на "малом" контолллере + rpi. Добавляем сеть, добавляем камеру. И проект под эту жирную stm такой сложности станет. Нужно разделять всё-таки рантайм задачи от всего остального.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Пн дек 10, 2007 12:19:18
Откуда: Санкт-Петербург

Сообщение -= Александр =- »

[uquote="andryblack",url="/forum/viewtopic.php?p=3828561#p3828561"]Насчет сложнее - спорно. Одной обвязки под эту СТМ нужно будет больше чем во всей установке на "малом" контолллере + rpi.[/uquote]

Ну так это будут те-же яйца, что сейчас, только в профиль. Один комп поменяем на другой. Да, там линукс и меньше костылей (возможно), но все наши проблемы с нехваткой ресурсов в "самом низу" и кривым протоколом (из-за этой самой нехватки) это не исправит.

Можно сделать промежуточный вариант - жирный STM без внешней памяти. Внутренней ему хватит строк на 10 и ладно, зато там будет аппаратный CRC и ресурсы на нормальный протокол. И буфер на эти 10 строк позволит "пережить" возможные тормоза со стороны виндовс или повторную отправку битых данных.
Контактная информация:
Открыл глаза
Сообщения: 54
Зарегистрирован: Чт сен 27, 2018 23:50:01

Сообщение andryblack »

Откуда про нехватку ресурсов то? 103 на той скорости что печатает еще музыку может проигрывать, там ядро вообще не нагружено.
Мучитель микросхем
Аватара пользователя
Сообщения: 482
Зарегистрирован: Сб фев 06, 2016 14:34:29
Откуда: Саянск, Иркутская область

Сообщение SDimok »

Тут по контроллерам спецов оказывается :) Пилите новый контроллер и протокол, я управляющее ПО допилю. А пока радуйтесь тому, что вам подарил дядя Alphacrow :) Я костыльки спрячу с глаз, но это полумера. Следующая версия скорее всего будет финальная (под этот протокол и контроллер)
ПыСы : про пропуск строк самому мысль покоя не дает
Контактная информация:
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Пн дек 10, 2007 12:19:18
Откуда: Санкт-Петербург

Сообщение -= Александр =- »

[uquote="andryblack",url="/forum/viewtopic.php?p=3828598#p3828598"]Откуда про нехватку ресурсов то? 103 на той скорости что печатает еще музыку может проигрывать, там ядро вообще не нагружено.[/uquote]

Да фиг с ним с ядром, там оно ничего и не должно делать - все на DMA прекрасно работает. Может даже CRC программно посчитать времени хватит. А вот памяти там реально мало. Даже если CRC выявит ошибку - на повторную передачу придется каретку тормозить.

SDimok, есть какое-то описание текущего протокола? Может реально малой кровью обойтись и туда контроль целостности данных запихнуть? Новая версия это конечно хорошо, но долго. А установок на 103ем контроллере уже куча и так их с глюками бросать нельзя, надо сделать стабильный билд в любом случае.
Контактная информация:
Ответить

Вернуться в «Изготовление PCB»