choosing a camera

2,806 views
Skip to first unread message

Anthony Webb

unread,
Feb 19, 2016, 8:46:34 PM2/19/16
to OpenPnP
For those of you deciding which camera would be best, how far off the board you should place them, etc.  Here are some data points for the ELP cameras.

First image is from an ELP with the 6mm lens, nice image, pretty sharp all the way out to the corners, very minimal distortion.


Second image is from an ELP with the 3.6mm lens, pretty sharp in the center of the image, semi-blurry out at the edges, quite a bit of distortion though.


Both images were taken with the lens approximately 26mm from the part being focused on, the 328p pictured is 7mmx7mm. I'm leaning towards keeping the same 6mm lens but moving it back to maybe 35 mm or so to get a little wider field of view without too much distortion. Jason mentioned something about image correction in opencv, not sure how it works though.

Anatoly

unread,
Feb 19, 2016, 10:20:25 PM2/19/16
to OpenPnP
Hi, Anthony Webb

 20 февраля 2016 г., 8:46:34 UTC+7 пользователь Anthony Webb написал:
... Jason mentioned something about image correction in opencv, not sure how it works though.

I think that correction of the distorted image is not really good idea.It is possible, but it is simpler to use the undistorted or poorly distorted image.

First image is from an ELP with the 2.8 mm lens


Second image is the same one but corrected with OpenCV


I think that it will be very difficult to correct distortions precisely.





 

mob...@gmail.com

unread,
Feb 20, 2016, 1:30:54 PM2/20/16
to OpenPnP
The 2.8 lens is equivalent to 14mm on old standard Film cam. Equivalent To 35mm works, below that the distortion is too high.
6mm is standard lens equvalent to 50mm.

mojalovaa1

unread,
Mar 30, 2016, 6:18:25 PM3/30/16
to OpenPnP
Hi
What you think  boys for buy this microscope and use it like down look camera : http://hi-tester.en.alibaba.com/product/640392810-214041326/700X_Waterproof_manual_setting_digital_microscope_zoom_lens_for_mobile_phone_microscope_hd_usb_microscope.html  ?

I have endoscope camera but that is disaster  fro pnp machine , but problem is that I have space only for add 10 mm diameter  camera , and space for camera holder is 20x25 mm , have you some better suggestion for buy under 45$ price and that is ok with  dimension ?

Jason von Nieda

unread,
Mar 30, 2016, 6:29:00 PM3/30/16
to OpenPnP
Hi Moja,

This probably isn't much better than the endoscope camera you are using.


It's a little more expensive, but it seems to be a good quality camera. I have one and have done some basic testing with it but I'm not using it on my machine. I still use the ELP camera.

One thing to keep in mind is that the one you linked and the one I linked will both require you to either make something to hold the focus or glue it once it's in place. The back of the microscope is adjustable to set the focus and the movement of the cord on the machine will knock it out of spec.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/87084ed3-b5f9-4232-a4a6-e9aa296b0819%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

mojalovaa1

unread,
Mar 30, 2016, 6:36:42 PM3/30/16
to OpenPnP
Jason can you try make some test with that microscope ?
Same problems have with endoscope camera , first problem is  very big image distortion  and second is that after some time use  lens on that camera  all time change positions  , I m all so think that will be nice   glue  that module on housing with hot glue .

 

Jason von Nieda

unread,
Mar 30, 2016, 6:40:18 PM3/30/16
to OpenPnP
Sure, I will take some sample pictures in a day or two.

On Wed, Mar 30, 2016 at 3:36 PM mojalovaa1 <moja...@gmail.com> wrote:
Jason can you try make some test with that microscope ?
Same problems have with endoscope camera , first problem is  very big image distortion  and second is that after some time use  lens on that camera  all time change positions  , I m all so think that will be nice   glue  that module on housing with hot glue .

 

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

mojalovaa1

unread,
Mar 30, 2016, 6:49:01 PM3/30/16
to OpenPnP
This is interested if can be founded  with usb output http://www.ebay.com/itm/600TVL-170-degree-very-small-color-video-miniature-cmos-camera-module-with-audio-/291389593627  and  I think that 1.2 Mp will be enough ?

Jason von Nieda

unread,
Mar 30, 2016, 6:53:10 PM3/30/16
to OpenPnP
You could use that camera with a USB capture device, like this: http://www.amazon.com/EZCAP-TV-EzGrabber-Capture-Converter-Windows/dp/B003YGJLWU

There has been some discussion about that exact device recently. Reports are that it works with OpenPnP just fine.

Jason


On Wed, Mar 30, 2016 at 3:49 PM mojalovaa1 <moja...@gmail.com> wrote:
This is interested if can be founded  with usb output http://www.ebay.com/itm/600TVL-170-degree-very-small-color-video-miniature-cmos-camera-module-with-audio-/291389593627  and  I think that 1.2 Mp will be enough ?

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Mike Harrison

unread,
Mar 30, 2016, 7:03:52 PM3/30/16
to ope...@googlegroups.com
On Wed, 30 Mar 2016 22:28:49 +0000, you wrote:

>Hi Moja,
>
>This probably isn't much better than the endoscope camera you are using.
>
>People have reported good luck with this one:
>http://www.ebay.com/itm/121292898829?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT
>
>It's a little more expensive, but it seems to be a good quality camera. I
>have one and have done some basic testing with it but I'm not using it on
>my machine. I still use the ELP camera.
>
>One thing to keep in mind is that the one you linked and the one I linked
>will both require you to either make something to hold the focus or glue it
>once it's in place. The back of the microscope is adjustable to set the
>focus and the movement of the cord on the machine will knock it out of spec.


Another option might be to use a standard M12 lens board camera - although these aren't typically
designed for close-up use, if you screw the lens out a bit you can get close focus.
Nice thing about this format is you can get a wide range of lenses cheaply.

Jason von Nieda

unread,
Mar 30, 2016, 7:06:48 PM3/30/16
to ope...@googlegroups.com
Mike,

That's what many of us use, in the format of the "ELP" camera that is often talked about. Like this: http://www.amazon.com/ELP-Driver-Camera-Module-ELP-USBFHD01M-L21/dp/B00KA7WSSU/ref=sr_1_3?ie=UTF8&qid=1459379116&sr=8-3&keywords=elp+camera

I think the issue here is that he's looking for something smaller than that, to fit in the footprint.

If you know of other USB M12 board cameras in a smaller form factor, please do share! That's the holy grail :)

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

mojalovaa1

unread,
Mar 30, 2016, 7:13:31 PM3/30/16
to OpenPnP
Mike , problem is that I have space only for 10 mm microscope or  endoscope camera , can make change to 12 mm max , or  square  20x25 mm max.

Jason can you test distortion  on that  microscope  , that is very import to me and all so  how much width  of image can have if  distance  is 35 - 40 mm ?

mojalovaa1

unread,
Mar 31, 2016, 2:58:44 PM3/31/16
to OpenPnP

Jason von Nieda

unread,
Mar 31, 2016, 3:04:29 PM3/31/16
to OpenPnP
Hi Moja,

Looks pretty similar to all the rest. Most of these are just the common endoscope cameras repackaged in a tube that allows you to change the focal length.

It will probably be tough to determine if it will work well without just buying one an trying it, unfortunately. This is why it's better, if at all possible, to stick with cameras the community has already tested. The ELP camera and the microscope I linked earlier have both have extensive testing and have bee shown to work well.

Jason


On Thu, Mar 31, 2016 at 11:58 AM mojalovaa1 <moja...@gmail.com> wrote:
--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

mojalovaa1

unread,
Mar 31, 2016, 3:13:24 PM3/31/16
to OpenPnP

Jason von Nieda

unread,
Mar 31, 2016, 3:18:50 PM3/31/16
to OpenPnP
Moja,

Again, it's tough to tell. These cameras are all so cloned and copied that you really don't know what you are getting until you get it.

The biggest problem I have found with cheap cameras like this is that they have really poor auto exposure. The exposure is set up to try to produce an image in any light condition and it's not very sophisticated, so it ends up making bad decisions even in good light conditions. If you can set it to manual exposure that will help, but many of them don't support that and often the only way to find out if they do is to try it. You can't really trust what it says in the eBay listing or even on the box.

My personal opinion is that if you need that small of a camera you should look at analog cameras and use a capture device. This greatly opens up the choice of cameras available to you.

Jason


On Thu, Mar 31, 2016 at 12:13 PM mojalovaa1 <moja...@gmail.com> wrote:
--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

mojalovaa1

unread,
Mar 31, 2016, 4:39:41 PM3/31/16
to OpenPnP
Jason , can you add some link to that analog camera that you are say and that you think that will be ok ?

mojalovaa1

unread,
Mar 31, 2016, 4:56:47 PM3/31/16
to OpenPnP
I understand you Jason  but maybe some one have  experience with that camera or similar  , this look like wery good options but  like you say how much can bolive  to that onformation    http://www.ebay.com/itm/AbleScope-Universal-USB-Microscope-Borescope-Camera-Connect-Android-Smart-Phones-/301912387136?hash=item464b616e40:g:m3QAAOSw~bFWFh~J  ?

Mike Harrison

unread,
Mar 31, 2016, 6:51:50 PM3/31/16
to ope...@googlegroups.com
Something I've got very used to on the RV is a graphical display of a job,and the progress.
This is a screen showing the board, and all the parts - nothing fancy, just rectangles of the right
size and orientation.( You can set up pin-1 marker positions in the part defs but I don't bother
using this.)
The colour of the rectangles indicates status : to be placed, placed, omitted or error (feeder error
- it continues with other parts so you can sort out all errors out afterwards).

It also provides a very quick simple way to manually omit parts by single/multiple and drag
selection.

This is very useful for a number of purposes :
It gives an instant view to confirm that the data import is correct, for position, rotation and part
size.
It makes it easy modify a build - a good example is a board I built last week - a panel of 4 LED
matrix boards, where I wanted to populate a couple of the boards with a different LED, which was
easy as I simply re-ran the job with selected sections omitted and changed the LEDs in the feeder.
It's also a quick way to omit troublesome parts to be hand placed later, or part-populate a panel.
Where you have errors, it makes it very easy to see where they are.
If I hadn't already sorted out my PCB library to ensure orientations are correct, it would also be a
good way to verify orientations using the pin-1 markers (this is simply a North-east/NW/SE/SW
selection in the part definition)

Seems to me this would be very straightforward to implement, as an extension to the present list
view of a job.
Click on a part in the list, it highlights the part on the graphic view, and vice versa.
Drag-selects on the graphic view select multiple parts in the list view
Ditto for edits in the list view.(position. part type, rotation etc.)

You could of course also overlay gerbers for paste and silkscreen.

I really wish the RV also had the list view, but given the choice, I think the graphics view is at
least, if not more useful during the process of building boards.



Jason von Nieda

unread,
Mar 31, 2016, 6:58:34 PM3/31/16
to ope...@googlegroups.com
Hi Mike,

This very thing has been in development for a while. There's an issue for it with quite a bit of history and musings here: https://github.com/openpnp/openpnp/issues/99

I actually just merged the very first version of this to the develop branch earlier this week. It's a hidden feature for the moment since it's nowhere near complete, but it's become useful enough that I like to use it during testing. You can turn it on by adding -DenableNav to your command line.

This is extremely alpha code so no need to report bugs or missing features or anything like that. I've got very big plans for this feature but my priority is on bottom vision right now. That being said, this is something that someone interested could easily take on since it doesn't really affect anything else. 

In brief:
* It shows the extents of the machine (currently hardcoded to 300x300)
* It shows the locations of boards on the table. 
* It shows the cameras and nozzles. Cameras are a live view of the camera output.
* You can scroll wheel to zoom in and out and to pan while zooming.
* You can click and drag to job the machine to any location.

I intend for this feature to eventually become the primary OpenPnP UI. You'll be able to click on any object within the system to bring up it's properties.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Jason von Nieda

unread,
Mar 31, 2016, 6:59:35 PM3/31/16
to ope...@googlegroups.com
"jog" the machine, not "job"

Daniel Dumitru

unread,
Apr 1, 2016, 6:32:29 AM4/1/16
to ope...@googlegroups.com
Stop looking on that direction. Only good image it's provided by Andonstar cameras BUT :
- has leds directed to viewing direction and since pcb it's glossy you will have a lot of reflections 

Take an elp board camera and make a low angle ringlight.

For analog cameras, like obiwan said : "Watec's are a great camera"
I saw one of these WAT-240 mounted on a very expansive manual pnp machine.

Daniel

On Thu, Mar 31, 2016 at 11:56 PM, mojalovaa1 <moja...@gmail.com> wrote:
I understand you Jason  but maybe some one have  experience with that camera or similar  , this look like wery good options but  like you say how much can bolive  to that onformation    http://www.ebay.com/itm/AbleScope-Universal-USB-Microscope-Borescope-Camera-Connect-Android-Smart-Phones-/301912387136?hash=item464b616e40:g:m3QAAOSw~bFWFh~J  ?

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

mojalovaa1

unread,
Apr 5, 2016, 6:10:15 PM4/5/16
to OpenPnP
Hi  friends


All so if you have some  options under 35$  please can you add it that I can see ?

alex

unread,
Apr 5, 2016, 6:26:38 PM4/5/16
to OpenPnP
I'am using Logitech C270 cam.
Distance from PCB to camera PCB on this pgoto is 45mm. It has adjustable focus.
The PCB shape is not very convenient for lighting located on the same level as you can see on the photo.

среда, 6 апреля 2016 г., 1:10:15 UTC+3 пользователь mojalovaa1 написал:
IMG_2624.jpg
Picture 3.jpg

mojalovaa1

unread,
Apr 5, 2016, 6:30:05 PM4/5/16
to OpenPnP

mojalovaa1

unread,
Apr 5, 2016, 6:32:50 PM4/5/16
to OpenPnP

mojalovaa1

unread,
Apr 8, 2016, 6:36:25 PM4/8/16
to OpenPnP
Hi
I m buy this camera : http://www.ebay.com/itm/181429280252?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT  for UP LOOK  and this : http://www.ebay.com/itm/201476904542?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT for DOWN LOOK .

I hope so that now will be usable  correct for  boot vision and all so for fiducial because  with endoscope camera all time have some problems , same is with web camera  .
All so have some problems with electromagnetic inductions on power line , I m not so smart what can do before make new control board , for sample , if on same power line have some  high power electric motors then reset me arduino or loss step ?

Graeme Bridge

unread,
Apr 10, 2016, 7:37:50 AM4/10/16
to OpenPnP
Jason,

I know you were looking for a way to identify cameras a while back. What about using IP cameras? these could have a local 10.0.0.? address?

Jason von Nieda

unread,
Apr 10, 2016, 12:43:46 PM4/10/16
to OpenPnP
Hi Graeme,

I don't have any experience with IP cameras, but I am definitely open to supporting them. The specific identification issue I was talking about before was related to OpenCV's poor handling of camera enumeration and identification for USB cameras, though. I do have a fix for that in the form of a new UVC camera driver, but it's not quite finished so it hasn't been merged in yet.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Graeme Bridge

unread,
Apr 10, 2016, 12:56:42 PM4/10/16
to OpenPnP

Jason von Nieda

unread,
Apr 10, 2016, 1:27:03 PM4/10/16
to OpenPnP
Hey Graeme,

That's a really interesting looking camera, and I see there are even cheaper ones at 2MP. I'd love to hear from anyone who has ordered one of these. I see they say they "Provide Open SDK" - I'd like to see the docs on that.

This could be a good answer to the complexities of running multiple cameras over USB.

Jason


reade...@gmail.com

unread,
Apr 10, 2016, 1:40:58 PM4/10/16
to OpenPnP
I think one issue with these will be the lack of lens options, most of the IP cameras I have seen do not support the MTV mounted lenses.

Graeme Bridge

unread,
Apr 10, 2016, 2:03:18 PM4/10/16
to OpenPnP
Jason it looks like openCV does support IP cameras so this might be an interesting avenue to pursue 

Im looking at building my machine along the lines of this image and as you can see it has 2 upward facing cameras mounted on the horizontal axis as well as a downward facing.

Graeme
Screen Shot 2015-12-04 at 19.44.27.png

Graeme Bridge

unread,
Apr 10, 2016, 2:11:56 PM4/10/16
to OpenPnP

Jason von Nieda

unread,
Apr 10, 2016, 4:06:49 PM4/10/16
to OpenPnP
Nope, but it looks like the one I saw was without lens mount. I just happened to notice it in the footer of the page. That one looks pretty interesting!

One thing I learned a while back is that even if you don't need a high resolution camera (and we don't), the higher resolution cameras tend to have better quality sensors and electronics, so it's worth it to use one even if you crop a 5MP image down to 2MP or so. 

Using an IP camera with OpenPnP will require some very minor changes to the code, which I am happy to make. I'll probably order one of these just to play around with when I am back in town. I'd kind of like to add an additional 2 cameras to my machine (for a total of 4) and using IP instead of USB will make that much, much easier.

Jason


Graeme Bridge

unread,
Apr 10, 2016, 4:10:41 PM4/10/16
to OpenPnP
Glad to help lol will be interested to see how it works out. 

Im hoping i can start to build my machine in the next month or so

Cri S

unread,
Apr 10, 2016, 7:14:52 PM4/10/16
to OpenPnP
Webcam driver allow fix webcam association, but for that manual machine.xml editing is needed.
The last characters need to be erased that are usb port specific at least fow linux abd windows.

Glen English

unread,
May 5, 2016, 5:00:35 AM5/5/16
to OpenPnP
WHle we are on cameras.....I have purchased a Pt Grey USB3 camera for my UP vision - Chameleon 3 .... 1MP monochrome.

- global shutter (thanks Pete)  required for my goal to have the head fly over the camera at speed... triggered by the controller and light strobed by the controller for a 100uS exposure.... Yes a high value sensor that one USD300.  Seems to work under ARM linux on a Odroid.....

DOWN vision will be stereo 2 x 2MP cameras USB2  basic stuff. static (non moving) images only.

I'll no doubt be doing a fair bit of openPNP mods...

- lens distortion correction. (Using a template) 
- motion deblurring.
2 weeks away right now
glen

Jason von Nieda

unread,
May 5, 2016, 12:01:49 PM5/5/16
to OpenPnP
Glen,

OpenPnP has lens distortion correct built in currently. Motion deblurring will need to be added.


Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Cri S

unread,
May 5, 2016, 1:17:37 PM5/5/16
to ope...@googlegroups.com
Motion deburring, for what you use it?
It works reliable only on global shuter.

You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

Andrew Frazer

unread,
May 5, 2016, 4:09:34 PM5/5/16
to OpenPnP
Glen is intending to build a moving Up facing camera..    Its ambitious, but when he gets it going he will have a warp speed machine.

The camera will be able to move on one of the X/Y axis, and will be positioned to intercept the pickup heads, as it moves from pick up to placement position.   This will speed things up..  Its a *nice* idea, and one i'll copy,  when/if he gets it going. :-)


On Friday, May 6, 2016 at 5:17:37 AM UTC+12, Cri S wrote:
Motion deburring, for what you use it?
It works reliable only on global shuter.


Il giovedì 5 maggio 2016, Jason von Nieda <ja...@vonnieda.org> ha scritto:
Glen,

OpenPnP has lens distortion correct built in currently. Motion deblurring will need to be added.


Jason


On Thu, May 5, 2016 at 2:00 AM Glen English <gleneng...@gmail.com> wrote:
WHle we are on cameras.....I have purchased a Pt Grey USB3 camera for my UP vision - Chameleon 3 .... 1MP monochrome.

- global shutter (thanks Pete)  required for my goal to have the head fly over the camera at speed... triggered by the controller and light strobed by the controller for a 100uS exposure.... Yes a high value sensor that one USD300.  Seems to work under ARM linux on a Odroid.....

DOWN vision will be stereo 2 x 2MP cameras USB2  basic stuff. static (non moving) images only.

I'll no doubt be doing a fair bit of openPNP mods...

- lens distortion correction. (Using a template) 
- motion deblurring.
2 weeks away right now
glen

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+unsubscribe@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/e1ae8b1e-9bde-4ca1-8ae2-1d281d8c2603%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+unsubscribe@googlegroups.com.

Mike Harrison

unread,
May 5, 2016, 4:25:17 PM5/5/16
to ope...@googlegroups.com
On Thu, 5 May 2016 13:09:33 -0700 (PDT), you wrote:

>Glen is intending to build a moving Up facing camera.. Its ambitious,
>but when he gets it going he will have a warp speed machine.
>
>The camera will be able to move on one of the X/Y axis, and will be
>positioned to intercept the pickup heads, as it moves from pick up to
>placement position. This will speed things up.. Its a *nice* idea, and
>one i'll copy, when/if he gets it going. :-)

That sounds a lot more complicated than just flipping a mirror under the nozzle for a head-mounted
camera

Cri S

unread,
May 5, 2016, 5:12:14 PM5/5/16
to ope...@googlegroups.com
Yes, but glen uses global shuter camera (170Euro and up) and on that
camera hi don't have
any blurring. if his flash is between 1 - 3 ms, and that class of
camera have a delay of
11-24ms depending on image size, adding 12 ms usb delay, 6ms task
switching delay.
This on usb, on ethernet delay is higher.
Doing some math results to 7500 cph, yes it's fast.
Problem is more, moving 20cm = 310ms less 64 less 34 less 210ms =
nothing to drive
rotation movement during move.
Picking up = 60ms + 64ms +60 + rotation, 225ms, move, 310ms, rotation
19ms, place 80ms, move 64ms, place, 80ms results to .962 seconds for
picking and placing two components.

























2016-05-05 20:25 GMT, Mike Harrison <mi...@whitewing.co.uk>:
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "OpenPnP" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/10bnib1756t0saf3tlmtp9ltrmr5vidk36%404ax.com.

Glen English

unread,
May 6, 2016, 5:55:19 AM5/6/16
to OpenPnP
yeah, I have some deblurring stuff cooking.

I will of course share.
 
seems that I can get usable exposures at 100-200uS....  Target speed for the flyby is 400mm/sec. 

need a few pin spots of light also I think for the camera to figure out angles etc as unlikely that it will shoot precisely where it wants, but controller to integrate the camera control and strobe and exposure (camera permits exposure, trigger etc on GPIO) .

for a single nozzle, easy, but more complex issue for a 4 nozzle head. not so optimal without compromises (or multiple cameras!) 
The big boys have, for example, nozzles in Y  (axis), and they fly over a camera in Y . not so easy in my design the way I have my table laid out . for four, head would need to take a detour

Alternative is increase FOV and increase pixel count ALOT- to see more nozzles simultaneously.

But pixel count is hurts on processing and transport of bits...... I'll probably add more cameras.... we'll see when I get that working.... 

Or a rotary rotating head  but I wont start that...trash talk.

Daniel Dumitru

unread,
May 6, 2016, 6:28:34 AM5/6/16
to ope...@googlegroups.com
Regarding global shutter camera I was thinking to :

Practically follows an application note from Cypress..

I have a question : is it needed color camera ? In all image recognition examples that I saw was using only monochrome image...

BR
DAniel

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.
Message has been deleted

Glen English

unread,
May 6, 2016, 6:57:48 AM5/6/16
to OpenPnP
Daniel, color required- I am not sure..... I have not enough experience to answer that question

BUT !---- Most of the single sensor  colour cameras use a Bayer filter  (thanks Pete!) 
 .. so you have pretty low resolution...
you throw away alot just taking the Y.......I bought a monochrome 1MP....

Current work to be solved for the roving camera  involves building a low profile XY gantry under the main table- the camera needs distance (60-70mm)  even with 8-12mm lens. Probably SGR series rail.
Then there is the stereo DOWN vision (stationary images but on Z axis var)   but that is for another thread....  

But basic idea is to vision every component with minimum speed penalty.  I'm not trying break speed records, but I look at the sub $10k machiens, they all spend "some time" with the up camera.

Mine is a big travel-table machine, hence multiple nozzles, also. if I were building a compact belt drive machine, I'd just go with 1-2 nozzles....

glen

Cri S

unread,
May 6, 2016, 7:52:45 AM5/6/16
to OpenPnP
For triggering, use vreg stabilized Hall or opto sensor and dedicated MCU for sequencing light, flash and trigger. You need to use windows and
C written vision code that run as service and jni lib for IPC.
Not hard to do, for you, don't know.

matt

unread,
May 6, 2016, 8:59:55 AM5/6/16
to ope...@googlegroups.com
Not sure if this is of any interest or benefit but on my friends iPulse he says it has a set of mirrors that allow for doing the on-head measurement and centering of the components (6x heads).

I’ve never really looked in to it though if this is true, i just know its bloody quick! The PC driving it is quite old (486-early Pentium we recon), so it must be doing the vision processing on an external controller - but even that will be pretty slow in comparison to modern processors?
> --
> You received this message because you are subscribed to the Google Groups "OpenPnP" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/2dfec0f0-be68-4f24-9ce9-f4712aff0d33%40googlegroups.com.

Mark Harris

unread,
May 6, 2016, 11:12:07 AM5/6/16
to ope...@googlegroups.com
Glad to see someone else realises the benefit of a global shutter! I'm really looking forward to seeing your results.

Cri S

unread,
May 6, 2016, 12:09:08 PM5/6/16
to ope...@googlegroups.com
Or you could use cheap ccd tv camera with vido to usb converter.
I have two ccd webcams, but today i'm not able to
source ccd webcams anymore. CCD=global shutter.
Previously microlenses are fabricable only on CCD cameras and because
that CMOS was
far inferior. Today with mems fabrication, microlenses are fabricated
separatly and glued
to the wafer later.

2016-05-06 15:12 GMT, Mark Harris <ma...@rris.com.au>:
> Glad to see someone else realises the benefit of a global shutter! I'm
> really looking forward to seeing your results.
>
> You received this message because you are subscribed to a topic in the
> Google Groups "OpenPnP" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/CAJMBTyTwQf_TUFw5jfen3zSPQ8Y%3DFb3MMbuAfjS3MGqPtYQyUA%40mail.gmail.com.

Glen English

unread,
May 6, 2016, 6:56:00 PM5/6/16
to OpenPnP
@Cri S, Yeah, I will be counting steps and trigger sensor/strobe all synchronously on STM board. Head position of course can be fairly well known.
One thing that has been brought up with me was vibration being a potential issue. Vibration also much harder to correct / de blur as it is acceleration in two directions, rather then constant velocity.

I like the mirror concept. Certainly works nicely for single nozzle. Seems that most of the big machines went away from that when they started going multi nozzle. I'd have to think about it- need to get nozzle position design etc to work with a traveling/ rotating mirror, or something... Up camera obviously has its complexity also.

For registration reference for the up camera, assuming that its position will not be perfect,  I was thinking of using  pinspots of light in a sheet of dark material above the nozzle, 
At least this way some correction could be done for estimations of parallax error etc.  Or even if it will matter much .....More thinking required on that when I get there... See what sort of precision I can get on the exposure.
I will know precisely where the head is (ball screws) . Up camera would be on belt drives. I PCB is in the middle of my X axis, which loose trays and feeders are +X and -X. SO originally I was going to have TWO cameras on Y axis guide only (fixed in X)  either side of the PCB @ X=0.  The idea was that  the head would be going -X or +X to get parts would not have to go over to the other side ...  But then I figured might be best to optimise and spend money on the camera (more money) and use a XY. Still the two cameras on two Y axis is a bit simpler than the XY and a single camera. But we are talking yet another $300 for another camera, and lights etc...

 
 

Cri S

unread,
May 7, 2016, 7:15:07 AM5/7/16
to ope...@googlegroups.com
If you don't have buyed it already, forget it, it's too advanced for you.
Eventually tray to source ccd analog tv camera, and use that with
cheap usb converter.
As i have understand, you want use red leds for uplight and trigger
the camera from stm32.
This gives you on best case 0.15mm uncertainy (assuming 0.05mm pixel
size), and normally that is a fail. If you stop on camera, that is
what 650ms penality for 4 nozzles.
On 2 nozzles and beld drive, estimated max cph is 7.5k and on 4
nozzles 11k, with
stopping on camera, and 4 nozzles, 9k, working cph is 5.9k / 9.2k and
7.7k respectivly.

Further you have to implement the uvc snapshoot interface inside
separate running programm and use icp and jni to pass it to openpnp
for the global cameras.
> --
> You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bb0005cc-fa68-4ec5-9423-2697ce414197%40googlegroups.com.

Glen English

unread,
May 7, 2016, 7:39:01 PM5/7/16
to OpenPnP
Hmmm no !

uplight diffuse white strobed. registration pinspots in shroud above nozzle.

It's too advanced for me....... righhhht....  :-)  That's a very arrogant considering the  company on this forum :-)

the idea of registration markers pinspots above the nozzle  (does not matter if they are out of focus- and the usable depth of field is VERY short)  is to correct for the error due to mispositioning.
There will be some parallax error but that will be readily calculable.

all that is four single nozzle. for four nozzles I will need to reevaluate the strategy. as the head will be travelling least distance in X but nozzles are in Y and so there will need to be some deviation from minimum path.

Pixel size will be 20um.

I was actually considering doing all the processing and driving inside an FPGA but overkill, stm32 and PC has enough performance between them. Only issue is handling big datasets in side the the PC (large images ) is slow due to limited cache and large datasets and suboptimal cache access by most algorithms. But in this case, with OPENPNP to be  multi threaded in the imaging department, it wont matter because the machine will keep moving while the image info is being computed... 

matt

unread,
May 8, 2016, 2:03:49 AM5/8/16
to ope...@googlegroups.com
Hi Glen

Are you thinking of using CUDA to speed up OpenCV / other imaging tasks? I think you’ll gain a great deal of speed doing this with a suitable graphics card installed. (Assuming they have accelerated the algorithms that you are calling).

Matt

You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

Glen English

unread,
May 8, 2016, 2:35:35 AM5/8/16
to OpenPnP
Hi Matt

I had a chat to Jason about this a week ago.. essentially...

after component pickup, Open PNP motion thread tells motion-controller (external)  to go to the target location (PCB place) 
motion thread blocks on image processing thread.
image processing thread is also blocked at this time.
motion controller takes care of getting the UP camera in the right place and takes the exposure.
motion controller then sends signal to PC (say a char on a serial  port) and this unblocks the image thread
image thread now unblocked processes image, and comes up with a new offset for the placement and rotation.
Image thread posts this new info to the motion thread and blocks-
motion thread unblocks and updates the new target positon to the motion controller , and also updates rotation.
motion thread blocks waiting for 'on station' signal to come from the motion controller, and the placement ensues.

of course there various things that might happen different if we are placing a big component  where we most likely need to STOP over the camera and have afew goes at rotation, putting the part down, picking it up again, rotating etc to get that right- but that's not often (for hard parts) . 
and also if people  have a camera that requires everything to be stationary, slightly different but similar events occur.
However my idea is basically to decouple the motion and image processing so that the machine can be on its way while the images are being worked on..

of course if the image was bad, or the uncertainly level by the image processor was low, then it is going to have to tell the motion thread to send the head back to where the camera is (or sent the camera to it or something) 

Of course this having to have another look at the component and moving the head back  to the camera etc is a great advantage of flipping a mirror in the way and looking at the component that way.. I just have not yet found a good way of doing that for multiple nozzles. Mor thought required.
I will the above dribble onto my blog, also.
Or did I get your question wrong :-) ? :-)

Don't know what CUDA is .. let me google... oh .. naaa for the small number of algorithms we need, easier to use I think for everyone openCL and use the multimedia extensions, if written PROPERLY they are pretty fast.  unless someone wants to.... I dont think it is worthwhile as it is not a high image rate... just needs care of cache.. perhaps openCL already has these optimizations sorted.... 

Cri S

unread,
May 8, 2016, 11:00:30 AM5/8/16
to ope...@googlegroups.com
600$ is a big number related to machine cost for little advantage, that is all.
If you use mt9v032 modules, www.mobisensesystems.com sells modules for 53 Euro,
or if you use 4x https://www.sparkfun.com/products/13249 camera sliding in, and
A20 / pcduino for running openpnp and the MIPI camera (even the
cameras can CSI-1)
it's annother thing.
For using external/sw trigger on cameras, FPS is a bit lower as half
the rate the camera is
able to stream it without external control.

The camera control is handled central on referencejobprocessor
and can be customized without problems.



2016-05-08 6:35 GMT, Glen English <gleneng...@gmail.com>:
>> On 8 May 2016, at 00:39, Glen English <gleneng...@gmail.com <javascript:>>
>> email to openpnp+u...@googlegroups.com <javascript:>.
>> To post to this group, send email to ope...@googlegroups.com
>> <javascript:>
>> .
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/openpnp/b48dbdd0-fffc-468d-a863-faa68d643ecc%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/openpnp/b48dbdd0-fffc-468d-a863-faa68d643ecc%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>>
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "OpenPnP" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/openpnp/NB8RqkWL5JY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/e986d55d-ab3c-4867-8faa-dc9f47064ae5%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages