SMD раскладчик по рецепту каши из топора

Намоточные, сверлильные, электроэррозионные и другие станки с ЧПУ.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение Serg »

SVP писал(а):Ну с телевизиром вообще какой-то ад, у меня еще когда было вещание некоторые каналы показывающие одно и тоже на десятки секунд разбегались.
Дома через коллективную антенну? - в Москве уже несколько лет как везде кабельное вещание, т.е. кодирование, передача, декодирование...
SVP писал(а):А нет ли для них режима минимального сжатия ? Чтобы использовать их почти как аналоговые. (т.е. получать на выходе цифру но без постобработки)
Есть, но увеличивается время передачи... Т.е. те-же "кадры", вид сбоку.
В общем всё написано в #49. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

UAVpilot писал(а):Тут дело не в количестве кадров (в принципе достаточно и одного кадра), а в задержке доставки каждого кадра от камеры до анализатора.
В вебкамерах такой задержки нет, это проблема IP.
SVP писал(а): А вот что камеры до сих пор такие тормозные странно.
Такую большую задержку обычно дают IP камеры + все, что после них, включая монитор/телевизор. Поэтому их крайне не любят использовать в системах промышленного видеонаблюдения, когда оператор ведет процесс по видео, не видя обстановки своими глазами, а только через телекамеры. В результате вполне реальная картинка: машешь в камеру рукой, а в мониторе видишь то же самое в противофазе. Задержка 0,5-0,6 сек.
N1X писал(а):Есть камеры, которые гонят сырой поток данных
А потом, чтобы собрать кадр, нужен кадровый буфер и пока он не заполнится, видео нет. И в мониторе кадровый буфер. У HD SDI задержка поменьше, чем у IP, но и стоит эта затея не дешево, да и скисла уже.
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

про камеры. сейчас у меня после движения сопла в позицию над нижней камерой в г-коде стоит задержка 200 миллисекунд перед распознаванием. иначе на экране я вижу опускающееся сопло. камера в MJPG/30fps. сама камера задержку давать не может - там просто нет столько памяти.. где-то на стороне хоста - USB, V4L2, OpenCV...

CV на ролике работает так: находит деталь на 8 кадрах (еще 267 мс, 8 - число с потолка), и усредняет полученные значения положения/ориентации. вот и получается минимум пол-секунды... 'это, конечно, можно и нужно соптимизировать, но первые 200мс никуда не денутся. соответственно, итерации коррекции быстрее, чем 4 раза в секунду, делать не получится.

использовать аналоговый интерфейс с камерами - не, не хочу. разрешение мало, шум, нет свободных слотов на матери под граббер. через SSCNET карточку протащить еще и видео, но чет сомневаюсь, что через PCI оно пролезет... еще могу посмотреть как оно будет на RPi с MIPI CSI-2 камерой.

про шаговые моторы. да, я читал и смотрел видосики про точность микрошага и сравнение разных драйверов. купил TMC2208 и HR4988 - попробую, расскажу. нагрузка на моторы не меняется - она просто отсутствует :) думаю может удастся сделать статическую коррекцию угла...
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

так, ради смеха - задрал ускорения и убрал все задержки и замедления, программа та же

https://youtu.be/hb4kSznglo0
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение Serg »

bolek4321 писал(а):В вебкамерах такой задержки нет, это проблема IP.
В вебкамерах задержка больше, чем в IP-камерах - это проблема спецификации USB. Я на камерах с разными интерфейсами/кодеками и т.п. стадо собак съел.
Проверяется легко: Берётся аналоговая камера и включается в плату видеозахвата, если плата на нормальном чипе, то задержку можно будет обнаружить разве что инструментально (не более 0.5-1 кадра) (вместе с "буфером монитора" :) ). Далее эту-же камеру подключаем к "преобразователю" Video->RTSP (IP) и наблюдаем задержку невооружённым глазом. Ну а подключив эту-же камеру к Video->USB наблюдаем самую большую задержку. При современных реализациях кодеков (аппаратных и программных) наибольшую задержку вносит именно "транспорт" и в случае USB они максимальны, подробности можно найти в спецификациях USB.
bolek4321 писал(а):А потом, чтобы собрать кадр, нужен кадровый буфер и пока он не заполнится, видео нет.
Современные кодеки передают в основном изменения в кадре, причём в сжатом виде. Например сетевой поток от FullHD камеры всего 6Mbit/s (несжатый поток видеокадров будет ~520Mbit/s).
merkwurdigliebe писал(а):использовать аналоговый интерфейс с камерами - не, не хочу. разрешение мало, шум, нет свободных слотов на матери под граббер. через SSCNET карточку протащить еще и видео, но чет сомневаюсь, что через PCI оно пролезет... еще могу посмотреть как оно будет на RPi с MIPI CSI-2 камерой.
Значит пора создавать искусственный интеллект "автономную распознавалку", в которую грузить "шаблоны", а из неё получать угол поворота прямо сразу в HAL. :) Будет эдакий THC для раскладчиков.
Кстати, помнится ST что-то на тему распознавания выкатывали...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

UAVpilot писал(а):При современных реализациях кодеков (аппаратных и программных) наибольшую задержку вносит именно "транспорт" и в случае USB они максимальны, подробности можно найти в спецификациях USB.
и что там в спецификациях USB? искал, не нашел. чтобы появилась задержка должен быть буфер у камеры. для JPEG достаточно 16 строк - это 500 микросекунд. и чет мне кажется, что никто без необходимости делать больше не будет... все таки это где-то на стороне хоста и USB не при чем
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение Serg »

Да, на стороне хоста. Подробностей за давностью времени не помню, общий смысл такой - чтобы передавать поток с большой скоростью надо передавать его большими "кусками" за раз, а передаётся этот кусок на уровень приложения после того, как будет принят целиком... Ну и каждый хаб в пути вносит аналогичную задержку, а как минимум один хаб есть всегда - на материнке.
Этот эффект ещё хорошо заметен на USB-ETH "картах" при увеличении MTU со стандартных 1500 до 9180 (не все адаптеры умеют).
Теоретически обойти можно - нужно исключить из пути хабы и написать свою реализацию стека с самого нижнего уровня обрезав весь "лишниий" функционал. Этим кстати "грешат" "быстрые" электронные микроскопы, которые в виде камеры (USB) на штативе и экрана, работающие без компа. Втыкаешь такую камеру в комп - тормозит, а втыкаешь в комплектный "монитор" - задержки практически нет.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

ну вот смотрю "tcpdump -i usbmon1"

от первой камеры, M-JPEG:
04:24:26.087993 ISOCHRONOUS COMPLETE from 1:2:1
04:24:26.091980 ISOCHRONOUS COMPLETE from 1:2:1
04:24:26.095996 ISOCHRONOUS COMPLETE from 1:2:1
04:24:26.099992 ISOCHRONOUS COMPLETE from 1:2:1
04:24:26.111997 ISOCHRONOUS COMPLETE from 1:2:1

от второй, YUV:
04:24:26.085900 ISOCHRONOUS COMPLETE from 1:3:1
04:24:26.089916 ISOCHRONOUS COMPLETE from 1:3:1
04:24:26.093911 ISOCHRONOUS COMPLETE from 1:3:1
04:24:26.097899 ISOCHRONOUS COMPLETE from 1:3:1
04:24:26.101907 ISOCHRONOUS COMPLETE from 1:3:1

пакеты одинакового размера - 60.5КБайт, прилетают каждые 4 миллисекунды. не вижу причины для какой-то серьезной задержки. про хабы не знаю, но думаю что там микросекунды. где-то дальше должны быть проблема, имхо...
dpss-2
Мастер
Сообщения: 628
Зарегистрирован: 02 сен 2018, 15:15
Репутация: 305
Настоящее имя: Alex
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение dpss-2 »

UAVpilot писал(а):Значит пора создавать искусственный интеллект "автономную распознавалку", в которую грузить "шаблоны", а из неё получать угол поворота прямо сразу в HAL. :) Будет эдакий THC для раскладчиков.
Очень правильная мысль. За последние годы системы на модуле стали вполне доступны по деньгам, да и быстрые матрицы имеют параллельный выход с LVDS.
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

Кто бы портировал OpenCV (хотя бы только часть функций) на МК...
Imho, эта затея коммерческого смысла не имеет, поскольку практически бесплатно все делается на компьютере.
А для "приложить ум и руки" есть и другие возможности, например, реализовать считывание футпринта захваченного элемента на лету и на лету же считать коррекцию. А уж тут, кроме традиционного вращения в параллельном пучке света, есть еще, навскидку, пара вариантов:
- поворотное зеркало и камера на установочной головке;
- фотосчитывающая линейка около питателей.
Линейка лично мне нравится больше, поскольку зеркало неизбежно будет разбалтываться.
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

я смотрел когда-то даташиты на CCD/CMOS линейки, которые в сканерах используются - все очень медленные, к сожалению. а так бы да, организовать развертку по импульсам с линейного энкодера который у меня уже есть. и тормозить не надо. на настоящих машинах используется такое, по моему.

на матрицы тоже смотрел. интерфейс обычно параллельный и/или последовательный MIPI CSI или LVDS с клоком. с теми, которые для машинного зрения с global shutter - можно, наверное, и на ходу снимать. но в длинный кабель ни один из этих интерфейсов не запихать. хотя тспециально заточенные трансиверы выпускаются

МК это слишком медленно. видел на ютюбе OpenCV на Raspberry Pi. и на ней есть MIPI CSI-2 интерфейс. на днях вон вышла очередная RPi4 за $35. надо попробовать...
dpss-2
Мастер
Сообщения: 628
Зарегистрирован: 02 сен 2018, 15:15
Репутация: 305
Настоящее имя: Alex
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение dpss-2 »

bolek4321 писал(а):Линейка лично мне нравится больше, поскольку зеркало неизбежно будет разбалтываться.
Зеркало довольно часто делают на линейном приводе. Одно на все шпиндели. Не разбалтывается от слова совсем. У Юниверсала Адвантикс стоит семь аналоговых камер. На плате головы аналоговый мультиплексор. Передают по коаксиалу. Не так давно разбирали такую башку при юстировке. 19 тысяч в час по IPC.
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

merkwurdigliebe писал(а):видел на ютюбе OpenCV на Raspberry Pi. и на ней есть MIPI CSI-2 интерфейс. на днях вон вышла очередная RPi4 за $35. надо попробовать...
А практический смыcл такого решения в чем? Запустить обработку камеры в треде и брать из него результаты не проще, чем городить отдельное устройство? Я в своих поделках так поступаю.
Комп установщика, если он не занят расчетом траектории и генерацией DIR/STEP, фактически ничем не занят, так что нет проблем обсчитывать на нем картинки.
А генератор DIR/STEP по осям, imho, лучше взять внешний, пусть даже GRBL на STM32 или любой другой.
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

dpss-2 писал(а):Зеркало довольно часто делают на линейном приводе. Одно на все шпиндели. Не разбалтывается от слова совсем.
Наверное это хорошо работает, но для "сделать дома на коленке" малопригодно. Один линейный привод сколько будет стоить...
Я думаю, для хоббиный целей и для мелкого производства вполне достаточно реализаций типа OpenPnP. А дальше - лучше купить установщик и не морочить себе голову камерами, зеркалами и т.п. Если только в планах есть самому начать производство установщиков... Да и то, скорее всего, поздно: китайцы и тут подсуетились, а с ними будет сложно конкурировать.
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

bolek4321 писал(а):А практический смыcл такого решения в чем?
смысл - постараться получить распакованный кадр с камеры в памяти процессора с минимальной задержкой. да, мне предпочтительнее - того же компа, где крутится linuxcnc. но чтобы его туда доставить вижу два реальных варианта - аналоговый композитный сигнал и USB.
аналог - это SD разрешение с отвратительной четкостью, скорее всего чересстрочная развертка, артефакты от цветовой поднесущей из-за дешевых энкодеров-декодеров и прочие прелести.
USB - матрица подключена к какому-то неизвестному чипу непонятно как работающему и зачастую не позволяющему отключить автоматическую подстройку экспозиции и/или баланса белого. на компе - USB стек, V4L2, M-JPEG декодер, преобразование цветовых пространств. и все это может вносить задержки.
MIPI CSI-2 интерфейс подключается прямо к матрице, на которую есть нормальный даташит со всеми регистрами и описанием что и как работает. но, к сожалению, до десктоп PC его непонятно как дотянуть. на RPi этот интерфейс есть и ее можно смонтировать рядом с камерой. но понятия не имею насколько хорошо оно работает, доступны ли там все эти ручные настройки, открыт ли код и т.п.
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

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

Код: Выделить всё

cvSetCaptureProperty( CvCapture* capture, int property_id, double value );
где property_id

Код: Выделить всё

CV_CAP_PROP_FRAME_WIDTH
CV_CAP_PROP_FRAME_HEIGHT
CV_CAP_PROP_EXPOSURE
CV_CAP_PROP_AUTO_EXPOSURE
CV_CAP_PROP_BRIGHTNESS
CV_CAP_PROP_CONTRAST
CV_CAP_PROP_GAMMA
CV_CAP_PROP_SATURATION
CV_CAP_PROP_HUE
CV_CAP_PROP_GAIN
CV_CAP_PROP_SHARPNESS
CV_CAP_PROP_MONOCROME
Не скажу, что перепробовал кучу камер, но все корпусные вебки, что у меня были, и пара разновидностей китайских модулей от ELP вполне позволяют выключить автоэкспозицию и покрутить все остальное. На столе прямо сейчас лежит железка с ELP и это работает.
merkwurdigliebe писал(а):... декодер, преобразование цветовых пространств и все это может вносить задержки...
Может, и вносит. Только на это все не следует обращать внимание, главное, чтобы своя обработка картинки успевала пройти между кадрами, если требуется высокая скорость обработки. А так то ничего страшного, если вычисления будут идти и дольше.
Вообще, мне кажется, что fps, времени вычисления коррекции положения/угла уделяется избыточное внимание: я уже писал, что гораздо большее влияние на растановку всех элементов на плату оказывают ускорения и траектории.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение Serg »

merkwurdigliebe писал(а):аналог - это SD разрешение с отвратительной четкостью, скорее всего чересстрочная развертка, артефакты от цветовой поднесущей из-за дешевых энкодеров-декодеров и прочие прелести.
Ч.Б. камера высокого разрешения - 800x600 и никаких артефактов и энкодеров/декодеров. :) И поляризационный фильтр до кучи.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
bolek4321
Мастер
Сообщения: 204
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 37
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение bolek4321 »

Можно и чб, но цвет дает дополнительные возможности. Например, продаются присоски Juki зеленого цвета, последующая селекция по цвету упрощает фильтрацию фона.
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 608
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение merkwurdigliebe »

bolek4321 писал(а):Боюсь, RPi+камера затянется надолго, как то пытался поискать инфу по матрице - кроме общих фраз ничего, остальное - по запросу.
на некоторые, в частности, OV5647 - утекли в сеть. но, да, согласен - не просто все. на RPi код, работающий с CSI-2, в каком-то блобе VideoCore без исходников. шило на мыло...
bolek4321 писал(а):На столе прямо сейчас лежит железка с ELP и это работает.
да, нижняя камера у меня тоже ELP и там работает. на верхней только автоэкспозиция. и еще есть пяток разных китайских - у тех у всех то одного нет, то другого... ELP тоже не идеал - перпендикулярность оси Z к столу вроде более-менее, выставляю камеру перпендикулярно z - получаю на картинке конкретную трапецию вместо прямоугольника. объектив относительно матрицы, видимо, криво стоит. пока подправил программно..
bolek4321 писал(а):Может, и вносит. Только на это все не следует обращать внимание, главное, чтобы своя обработка картинки успевала пройти между кадрами, если требуется высокая скорость обработки.
ну как не обращать-то? сейчас, вне зависимости насколько быстрый у меня анализ, я могу только

переместить сопло к камере
подождать 200мс пока дойдет картинка
вычислить смещение-угол
повернуть-подвинуть сопло
подождать 200мс
вычислить смещение-угол
повернуть-подвинуть сопло
подождать 200мс
и т.д.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: SMD раскладчик по рецепту каши из топора

Сообщение Serg »

А может для больших чипов применить какой-нибудь оптический щелевой датчик? - Два/несколько датчиков параллельно X или Y, задвигаем туда чип и по разнице времени пересечения датчиков вычисляем угол...

P.S. Всё таки туда прямо таки просится какой-нибудь stm32f7/FPGA с простейшей "геометрической" распознавалкой...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

Вернуться в «Прочие станки»