roboforum.ru

Технический форум по робототехнике.

Машинное зрение, упрощенный лазерный дальномер.

Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 09 июн 2015, 11:04

Коллеги, доброго времени суток.
Разрабатываю (ну или копирую :oops: ) лазерную систему слежения за сварным швом. Пока по упрощенной схеме.
Основные компоненты системы - лазер 35мВт (635-660 нм), интерференционный фильтр, камера (CCD, CMOS, ??? ).
Следственно особой сложности с выделением лазера из фона не должно быть, фильтр будет пропускать только лазер + будет частичная засветка от сварки, проблема с засветкой должна решиться фильтром по интенсивности. Я начал читать про OpenCV и пр. Но потом, подумал, что можно обойтись без него, по факту мне нужно всего 2 расстояния, по вертикали и по горизонтали.
Изображение
Принцип действия такого дальномера понимаю.
Единственный вопрос, как получить массив интенсивности падающего света с CCD или CMOS матрицы?
Т.е. условно если бы разрешение матрицы было 3*3 пикселя, то массив имеет примерно такой вид.
150 120 180
170 150 200
220 190 255
Вот он мне и нужен, только разрешение будет соответствующее.
И какую камеру лучше использовать CCD Или CMOS?
Сам массив будет обрабатываться контроллером (какой подойдет из бюджетных?), и уже контроллер будет выдавать значение расстояния до детали в 2 направлениях (при этом в виде аналогового сигнала)
Возможно, проще будет реализовать по другому, буду рад конструктивной критике и предложениям.
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение AndreiSk » 09 июн 2015, 13:18

читал что в сварке много ультрафиолета (не только видимый свет). А иначе как объяснить, что сварщики все загорелые такие...
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 09 июн 2015, 13:27

Да, там действительно много ультрафиолета, но он отлично отсекается интерференционным фильтром. У интерференционных фильтром область пропускания в пределах 5-30 нм., все остальное он гасит напрочь (ну, конечно не совсем всё, но это можно добить допфильтрами). Так, что после такого фильтра пройдет только лазерное излучение и часть излучения сварки, что находится в диапазоне пропускания фильтра, но по сравнению с лазером эта часть будет мизерная, по этому можно просто программно отсечь ее. Ну или же еще один фильтр. В общем это не проблема.
Проблема в том, что я понятия не имею в какую сторону копать, чтобы снимать сигнал с камеры и записывать его в массив попиксельно. По идее есть же стандартные библиотеки, что формируют картинку с камеры.
И да, важное замечание, камера подойдет и ч/б, даже думаю такая камера будет лучшим вариантом.
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение AndreiSk » 09 июн 2015, 13:54

так задача в том чтобы снять картинку с камеры и проанализировать попиксельно?
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Angel71 » 09 июн 2015, 13:59

вы забегаете вперёд, сначала нужно с вычислялкой определиться и подобрать камеру с подходящим интерфейсом (оптикой и т.д. это отдельно). одно дело вы на микропроцессоре будете делать, немного другое если на компььютере. камеры с юсб интерфейсом для микроконтроллеров не подходят, это только уровень микропроцессоров и настольных пк. если просто матрицу брать, то к десктопу её напрямую не подключить, только к мк и микропроцессорам. интерфейсов не море, но хватает, есть из чего выбрать. если на микропроцессоре, то были одно время платки с камерами и камнем, может и сейчас такое продают.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 09 июн 2015, 15:11

AndreiSk писал(а):так задача в том чтобы снять картинку с камеры и проанализировать попиксельно?

Да, на данный момент такая задача. Но пост обработка будет простейшая. После калибровки, каждой строке пикселей будет назначена "реальная" координата. Т.е. условно, если линия пикселей в центре экрана, то это 0 см. Если влево на 40 пикселей, то - 3 см по "X", если в право, то +3 см по "X", соответственно верх и низ будет координатой оси "Z". (Еще раз обращаю внимание что "верх" и "низ" это условная характеристика, я понимаю, что в реальности линия может пойти по диагонали и пр.)

Angel71 писал(а):вы забегаете вперёд, сначала нужно с вычислялкой определиться и подобрать камеру с подходящим интерфейсом (оптикой и т.д. это отдельно). одно дело вы на микропроцессоре будете делать, немного другое если на компььютере. камеры с юсб интерфейсом для микроконтроллеров не подходят, это только уровень микропроцессоров и настольных пк. если просто матрицу брать, то к десктопу её напрямую не подключить, только к мк и микропроцессорам. интерфейсов не море, но хватает, есть из чего выбрать. если на микропроцессоре, то были одно время платки с камерами и камнем, может и сейчас такое продают.

Именно по этому я написал здесь. Понятия не имею какую брать вычислялку, через что организовывать все это.
Мне нужен реалтайм, т.к. по показаниям этого сенсора корректируется положение сварочной горелки. Частота корректировок в районе 3-10 Гц будет достаточной. Чтобы данные была возможность усреднять (для более точной коррекции), частота "снимков" дожна быть раза в 3-5 больше. Т.е. 9 Гц подойдет, но 50 Гц будет просто отлично.
На данный момент корректировка выполняется с помощью контактных датчиков, у них аналоговый выход. "0" коррекция соответствует показанию 5 вольт. +1В это + 1,4 мм (могу ошибаться, но точные данные есть в документации). На первом этапе хотелось бы получить модуль, который бы считывал показания пикселей, вычислял коррекцию и выдавал ее в аналоговом сигнале, точно такую же, как и имеющиеся на данный момент датчики. Чтобы за 20 минут снять старые датчики, поставить новые и тестировать, при продолжении основного производства ставить старые датчики. И когда будет сделана окончательная доработка, чтобы просто подключить 2 разъема, закрепить датчик и запустить производство.
Думаю сделать на МК, или МК + плата с камерой и микропроцессором.
Буду благодарен за ссылки на ресурсы или статьи по похожим/подобным задачам. Я, к сожалению, смог найти только OpenCV или код, но без подробного объяснения что, как и куда.
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение AndreiSk » 09 июн 2015, 16:09

Начнем с того, что МК (микроконтроллер) обработку видео в 9-50гц может просто не потянуть (хотя конечно,
от разрешения зависит).
Поэтому лучше сразу рассматиривать микропроцессорные системы как правильно отметил тов. Angel71,
т.е. компьютер по нашему.
А чем имеющиеся датчики не устраивают? Ведь камера с оптикой (объектив) - вещь нежная,
а от сварки пары металла, да и просто копоть оседают наверное везде.
Допустим вы выбираете камеру, а какую? Варианты:
а) вебкамера. Дешево (до $100-200) и может быть устроит качество. Проблема вебок - ужасные объективы (мелкие другими словами) и сжатие-разжатие картинки
б) индустриальная. Недешево (от $300 и выше). Оптику можно нацепить любую, т.к. большинство имеет стандартный C-Mount. Гонят обычно непожатое изображение.

Ясное дело, камеру надо к компьютеру присоединять. А к какому? Вентиляторному, безвентиляторному?
Тоже думать.
А по какому интерфейсу: USB, Gigabit сетка (GigEVision), FireWire

А какое разрешение каремы нужно? Вот допустим шов (объект) 100мм, камера 1024x768, тогда 1пиксель это 0.1мм. Это достаточно или нет? От этого уже и оптика будет выбираться.
Вот например, индустриальные камеры https://en.ids-imaging.com/store/produk ... ly/cp.html
USB3, скорости от 60fps и выше.
Вот такая например https://en.ids-imaging.com/store/produk ... 240cp.html
Хотите? Или не очень? штукабаксов вроде.
Картинку с камеры получаю в своей программе, там есть API. Попиксельно можно рассмотреть картинку (bitmap). Правда и камера у меня попроще, есть модельки и за 300 баксов.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Виктор Казаринов » 09 июн 2015, 17:01

Я разрабатываю эту систему: http://www.youtube.com/watch?v=EYqgF1YuNBw
Там показан экспериментальный стенд. Сейчас доделывается опытный образец станка. В программе также имеются значительные улучшения с момента этой записи. Вначале мы хотели использовать простой, но довольно дорогой лазерный датчик, от которого вовремя отказались. Теперь можем довольно точно определять множество характеристик обрабатываемой поверхности и воздействия на нее инструмента. Но в процессе разработки было обнаружено множество "подводных камней". Там, где все казалось простым, все оказалось сверхсложным.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 09 июн 2015, 17:05

AndreiSk писал(а):Начнем с того, что МК (микроконтроллер) обработку видео в 9-50гц может просто не потянуть (хотя конечно,
от разрешения зависит).
Поэтому лучше сразу рассматиривать микропроцессорные системы как правильно отметил тов. Angel71,
т.е. компьютер по нашему.
А чем имеющиеся датчики не устраивают? Ведь камера с оптикой (объектив) - вещь нежная,
а от сварки пары металла, да и просто копоть оседают наверное везде.
Допустим вы выбираете камеру, а какую? Варианты:
а) вебкамера. Дешево (до $100-200) и может быть устроит качество. Проблема вебок - ужасные объективы (мелкие другими словами) и сжатие-разжатие картинки
б) индустриальная. Недешево (от $300 и выше). Оптику можно нацепить любую, т.к. большинство имеет стандартный C-Mount. Гонят обычно непожатое изображение.

Ясное дело, камеру надо к компьютеру присоединять. А к какому? Вентиляторному, безвентиляторному?
Тоже думать.
А по какому интерфейсу: USB, Gigabit сетка (GigEVision), FireWire

А какое разрешение каремы нужно? Вот допустим шов (объект) 100мм, камера 1024x768, тогда 1пиксель это 0.1мм. Это достаточно или нет? От этого уже и оптика будет выбираться.
Вот например, индустриальные камеры https://en.ids-imaging.com/store/produk ... ly/cp.html
USB3, скорости от 60fps и выше.
Вот такая например https://en.ids-imaging.com/store/produk ... 240cp.html
Хотите? Или не очень? штукабаксов вроде.
Картинку с камеры получаю в своей программе, там есть API. Попиксельно можно рассмотреть картинку (bitmap). Правда и камера у меня попроще, есть модельки и за 300 баксов.


Точность нужна порядка 0,5 мм. По идее 640*480 должно хватать.
Видел модули для той же ардуино и пр. Отдельными платами. Вероятно существует модуль камера + обработчик на одной плате. Т.е. непосредственно в мк идет уже массив данных. (Это было бы просто замечательно). Компьютер на данном этапе не нужен (если только для отладки).
На самом деле на первом этапе, если я получу работающий пилотный образец, пусть даже с точностью 1-2 мм и частотой 1 гц, то тогда уже будет возможность выбить "ощутимый" бюджет. На данный момент это личная инициатива выполняемая за свой счет.

Добавлено спустя 56 секунд:
Виктор Казаринов писал(а):Я разрабатываю эту систему: http://www.youtube.com/watch?v=EYqgF1YuNBw
Там показан экспериментальный стенд. Сейчас доделывается опытный образец станка. В программе также имеются значительные улучшения с момента этой записи. Вначале мы хотели использовать простой, но довольно дорогой лазерный датчик, от которого вовремя отказались. Теперь можем довольно точно определять множество характеристик обрабатываемой поверхности и воздействия на нее инструмента. Но в процессе разработки было обнаружено множество "подводных камней". Там, где все казалось простым, все оказалось сверхсложным.

Спасибо, посмотрю дома, на работе ютуб отключен.
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 10 июн 2015, 09:04

Виктор Казаринов писал(а):Я разрабатываю эту систему: http://www.youtube.com/watch?v=EYqgF1YuNBw
Там показан экспериментальный стенд. Сейчас доделывается опытный образец станка. В программе также имеются значительные улучшения с момента этой записи. Вначале мы хотели использовать простой, но довольно дорогой лазерный датчик, от которого вовремя отказались. Теперь можем довольно точно определять множество характеристик обрабатываемой поверхности и воздействия на нее инструмента. Но в процессе разработки было обнаружено множество "подводных камней". Там, где все казалось простым, все оказалось сверхсложным.

Видео посмотрел, это следующий этап.
Обработка идет с помощью OpenCV?
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Виктор Казаринов » 10 июн 2015, 12:44

Djafon писал(а):Видео посмотрел, это следующий этап.
Обработка идет с помощью OpenCV?
Нет, я написал собственную билиотеку компьютерного зрения на ANSI C.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Djafon » 15 июн 2015, 18:04

Виктор Казаринов писал(а):
Djafon писал(а):Видео посмотрел, это следующий этап.
Обработка идет с помощью OpenCV?
Нет, я написал собственную билиотеку компьютерного зрения на ANSI C.

А зачем? OpenCV не подошла?
Я на такой подвиг пока не готов))
Djafon
 
Сообщения: 6
Зарегистрирован: 26 май 2015, 09:26

Re: Машинное зрение, упрощенный лазерный дальномер.

Сообщение Виктор Казаринов » 15 июн 2015, 19:09

Не подошла. Я вас к подвигу не призывал, а лишь ответил на ваш вопрос.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич


Вернуться в Компьютерное зрение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

cron