What is the best and cheap method to pick a large surface using vision?

  • Hi,
    We have a palette with the door (10-15 pieces,before processing, flat, white, surface dim: 5 cm x 90 cm x 200 cm). We need to depalletize one by one, but there are not even on palette. We think about using camera to positioning vacuum gripper exectly middle of the door and pick them. I hope u understand me.
    Is there any cheap and good enough method for this problem?
    We have kuka robots kr c2.

  • what do you mean by EXACTLY in the middle? there is always tolerance...
    one thing that cameras use is called lens. there are online calculators to estimate proper lens for given distance and field of view.
    and if the doors are same size, field of view can be smaller (it is enough to only evaluate one corner of the door)

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • The technology you seek is "vision guided robotics," or using a vision system to provide location data to a robot. Then programmatically instruct the robot to move to those locations. It is common and easy enough to do once you study, practice, and learn.


    How inexpensive is "cheap?" "Cheap" is not a value. Your answer provides the boundaries for this investigation.


    I do not know the current status, but at one time Cognex vision systems provided template programs for use with their products. Obtain, edit, and deploy the Cognex-supplied program for your robot-of-choice and it made it easy to use.


  • what do you mean by EXACTLY in the middle? there is always tolerance...


    I think +- 0.5 cm tolerance is enough. The doors on the one palette are the same, but on the other one can be different for example shorter or wider a few centimeters.


    How much does it cost that system VGR or something like this?

  • That depends on a number of things. Cognex cameras are good, but tend to be rather expensive, although you can find some decent ones on EBay for surprisingly cheap. Keyence aren't bad, and tend to be a little cheaper than Cognex.


    But then you have lenses. Your lens has to be selected for your field of view, and your use case. Will you mount the camera fixed over the pallet, or mount it to the robot?


    Lighting is always important in any machine vision application. You may have to mount lights that can overcome ambient lighting conditions. Any skylights in the vicinity may cause problems, b/c sunlight beats everything, no matter what strength spotlights you use.


    Then there's interfacing. Whatever vision system you buy, will have to be connected to the robot somehow. What I/O options does your robot have? You will have to choose a vision system that is compatible with that I/O. If you have a PLC connected to the robot, sometimes it may be easier to connect the Vision to the PLC, and let the PLC act as a communications intermediary.


    My suggestion: buy an old cheap Cognex In-Sight camera off EBay, and play with it. The software to use with the Cognex is free to download. The Cognex In-Sights accept regular C-mount lenses, and you can often find them cheap second-hand as well.

  • Cheaper version is to have distance sensor mounted on the robot and do measurment before pick up.

    Edited once, last by spiral ().

  • yup, even photo-eye with background suppression would do but laser distance sensor will make this so much easier.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • How it works? I have to measure the length and width and then calculate the center of surface, but how to measure? I have to start e.g with 30 cm offset before surface starts and how to measure lenght?

  • First do reference measurement on a perfectly positioned door.Make reference points from two different directions for lenght and widht.Save the reference value what u get from the sensor.After that do measurement on each door and calculate the difference to the reference value.

    Edited once, last by spiral ().

  • move sensor across stack of doors, record max height and edges.
    from edges calculate door frame. then using known (or measured) door dimensions calculate center of the door.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • use interrupt to detect three points, something like here. then calculate FRAME using 3-point base calculation (code is on forum). then use that as base and pick from point that is center of the door:
    x=door_width/2
    y=door_height/2

  • Quote

    I would have to do it with each palette. Its impossible. It has to be automatic.


    You do reference only once on one door.After that the measurement will be automatic.

    Edited once, last by spiral ().

  • who cares if you do as proposed... it only matters that you can detect those points even if door is offset/shifted.


    in fact each and every single door can be shifted or rotated relative to stack. you can measure EACH product every time you are ready to pick, and use measurement result to pick THAT one product. once the product is put away, you measure and pick next one.



    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

    Edited once, last by panic mode ().


  • and what if next palette will be shift 10 cm to the left/right/back or forward? will it be works? and how the meassurement will be automatic? I dont understand that part....


    If you follow Panic's suggestion, the key will be to make your search pattern large enough to encompass any/all positions the pallet might arrive in. If the pallet can be shifted +/-10cm in any direction, or rotated by +/-X deg, then your search path would have to be large enough to find the edge under any of those circumstances.


    If you look at this image, imagine that the grey box is the pallet, and the red lines are each a search path (Panic uses 3 points in his example -- I like to use 4, but that's a personal preference. 3 is the absolute minimum, however). As long as the red lines are longer than the worst-case position changes of the box, the search pattern should work.

  • [size=2]clearly you did not read thoroughly previous replies... so what would your guess be?


    hint:
    inductive and capacitive sensors have wide cardioid beam, short range no visible sensing point.
    ultrasonic sensors have wide cardioid beam, medium to long range, no visible sensing point.[/size]
    [size=2]laser sensors have very narrow beam, short, medium or long range, visible sensing point.[/size]






    [size=2] [/size]

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

    Edited once, last by panic mode ().

  • Generally, laser or touch sensor. Lasers are usually better.


    One thing to watch out for: "laser" sensors with "fuzzy," diffuse beams, or have sensing ranges set with a screwdriver. The Banner Q60, for example, is the latter, and can be purchased in "fuzzy" or "tight" spot size. The thing to watch out for with the Q60s is that they can be very vulnerable to changes in how "shiny" the surface is -- I've had many problems with them, when I had parts whose surfaces varied between "matte" and "gloss". It might work for your application, or you might need to invest in a more expensive time-of-flight sensor that would give more reliable returns.

  • yes, laser is practical for several reasons including contact free sensing. one of the sensors i used in various applications is O1D100. it has two outputs, each can be configured to PNP/NPN or analog (4-20mA or 0-10V). at 10-15mm diameter, beam is quite large at 10m distance but it is about 2mm or so at 0.5m. it has visible red spot, it is well protected so it can be used in dirty environment and it does not cost much. it is quite robust to changes in target color or finish or aimed angle. one can set each output to different distance to get distance window for example (not too close and not too far or the other way around). it is long range sensor and not temperature compensated so distance measurement accuracy is not quite perfect but it will get you within some 2mm on a range 200-1000mm. it also has averaging function so one can get better distance result at the cost of reduced response speed. when possible i use it not to measure distance but as edge detection sensor. overall i love this little guy, it is an amazing sensor at a very attractive price (very handy for last minute surprises).



    there are of course sensors that can perform better in specific tasks (faster, more accurate, pinpoint beam) but either cost much more or functionality is greatly reduced (range, number of outputs). For precision jobs i am all for Baumer Electric lasers. They are cute, small fast, pinpoint accuracy etc but cost more of course.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

Advertising from our partners