PushPullFeeder - Error finding sprocket holes

170 views
Skip to first unread message

uavfligh...@gmail.com

unread,
Jul 30, 2022, 7:45:07 PM7/30/22
to OpenPnP
After doing a feed the camera checks the hole position in the tape.  This fails.

Screenshot from 2022-07-31 01-21-26.png

Debugging shows that the distance to the line between the sprocket holes and current camera position is unexpectedly large.  

The distance measures to be 3.3mm
If i do "Preview Vision Features" after the failed measurement then the debug shows a distance less than 0.1mm.  Same measurement. Same position. Different result.

This is the logged image from find features.  Doing a feed doesn't appear to log this image.  Maybe I am looking in the wrong place.
push-pull-feeder12423417905265895276.png

Have checked  that the push_pull actuator has the correct offsets.

Working with a fork version from 02/22.  Have not yet checked if there are any critical changes since then.

Any ideas what I am doing wrong?

/Matt

uavfligh...@gmail.com

unread,
Jul 31, 2022, 2:30:05 AM7/31/22
to OpenPnP
Solved it.
Just noticed that 3.3mm is about the distance from the pick location to the line.
The holes positions are being checked from the pick position rather than the hole position.
There is a colour shift in this translation due to lighting.
PIpeline was mistaking the part pockets for the sprocket holes.
Fixed the pipeline.  All ok now.

Amazing what a good 5 hours of sleep can do for you.

/Matt

mark maker

unread,
Jul 31, 2022, 4:42:14 AM7/31/22
to ope...@googlegroups.com

Hi Matt,

>There is a colour shift in this translation due to lighting. PIpeline was mistaking the part pockets for the sprocket holes.

Note that I just invested a lot into improving the detection to avoid  mistaking part pockets. You can now use a Circular Symmetry pipeline.

https://github.com/openpnp/openpnp/pull/1450

https://github.com/openpnp/openpnp/pull/1456

https://github.com/openpnp/openpnp/pull/1457

You might give it a try:

  1. get new testing version
  2. backup your config
  3. reset to the CircularSymmetry pipeline and try it "out of the box".
    Vision Type Tooltip

It is my goal to make these pipelines work "out of the box", so if you could test your case it would be a great help towards that.😎

The code you linked has changed too, there was actually a bug that would favor the sprocket holes from neighboring feeders if it detected more holes there.

https://github.com/openpnp/openpnp/blob/964d9cc7a390df6a1593fdd6c6c0de49c84ea5f8/src/main/java/org/openpnp/machine/reference/feeder/ReferencePushPullFeeder.java#L1545

_Mark

--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/0555b2c1-750f-4716-9fac-6771d551416an%40googlegroups.com.

uavfligh...@gmail.com

unread,
Jul 31, 2022, 4:34:33 PM7/31/22
to OpenPnP
Switched to testing and gave it a go.  Circular symmetry works for me with default pipeline.

Litterio Andrea Guainella

unread,
Aug 3, 2022, 1:48:56 PM8/3/22
to OpenPnP
Hi all,
here same problem.
28.gif
Any suggests?

LAG

29_log.txt

mark maker

unread,
Aug 3, 2022, 6:47:48 PM8/3/22
to ope...@googlegroups.com

Hi LAG,

I so wish I could test this locally on your machine 🤔

So it is guesswork, according to log. Not sure I found the culprit.  Are these the symptoms?

  • If it is the only ReferencePushPullFeeder, it works. Correct?
  • But if there is another ReferencePushPullFeeder that is not yet or wrongly set up, then it fails?

Details:

https://github.com/openpnp/openpnp/pull/1466

New testing version to download/upgrade:

https://openpnp.org/test-downloads/

Let's cross our fingers! 🤞 in Swiss German we would say "hold our thumbs" 😁

_Mark

Litterio Andrea Guainella

unread,
Aug 4, 2022, 1:56:00 AM8/4/22
to OpenPnP
Hi Mark,
> If it is the only ReferencePushPullFeeder, it works. Correct?
Honestly haven't tried it.

> But if there is another ReferencePushPullFeeder that is not yet or wrongly set up, then it fails?
Yes there are many RPPF (total are 10) but all manually configured because in previous version of opnepnp, autosetup not work properly with black color.
Now seems it works with black color and "CircularSymmetry" pipeline default.

>  I so wish I could test this locally on your machine
If you want I can share with you an anydesk or teamviewer session 😎
(I mean that I also offer my availability for future test needs regardless of the problem I may have. Sometimes it may be helpful to have a test bench. keep this in mind if useful)

In the meantime i am downloading the new version of openpnp to test.

> Let's cross our fingers!  in Swiss German we would say "hold our thumbs"  
But it's so cool way of saying: "hold our thumbs"...
I really believe that I will steal it to resell it 😬🙂

LAG

Litterio Andrea Guainella

unread,
Aug 5, 2022, 10:12:14 AM8/5/22
to OpenPnP
Hi Mark,
I tried with new version and same problem when try to execute autosetup. So I clean all PPF and create one successfully without alert or error using autosetup.
But when push green button "+" for add newer in row, the same popup error appear (No line of sprocket holes can be recognized) after push autosetup.

LAG

mark maker

unread,
Aug 5, 2022, 1:00:31 PM8/5/22
to ope...@googlegroups.com

Please post the log. I specifically added new tracing to diagnose.

_Mark

Litterio Andrea Guainella

unread,
Aug 5, 2022, 1:31:26 PM8/5/22
to OpenPnP
Sure Mark,
I take logs with relevant information.

LAG

log.zip

mark maker

unread,
Aug 5, 2022, 1:51:27 PM8/5/22
to ope...@googlegroups.com
I guess I need the debug images too. They should be in the .openpnp2/org.openpnp.machine.reference.feeder.ReferencePushPullFeeder.FindFeatures/ directory.

_Mark

Litterio Andrea Guainella

unread,
Aug 5, 2022, 3:01:56 PM8/5/22
to OpenPnP
Here they are

LAG

mark maker

unread,
Aug 5, 2022, 5:56:31 PM8/5/22
to ope...@googlegroups.com

Hi LAG,

I can only guess.

  1. Your second feeder is not the "standard" distance away (tape width + 8mm). So the very first [ + ] button will not work.
  2. But that's fine, you need to manually position to the pick location then press Auto-Setup. Note, it will learn the right [ + ] button distance as soon as you have two feeders, i.e. for non-standard distances, the third feeder should be "one-click".
  3. But now you are on a green feeder. So the standard color-keyed pipeline is likely selected.
  4. I can't explain why the pick location is sometimes off vertically. I will look into this (I suspect some rounding issue). Maybe send the machine.xml if you still have that configuration.
  5. Then it is switching to black again. Wrong pipeline again.
  6. And the tape transport seems not entirely repeatable. The holes are shifted (I suspect that's causing the rounding issue)
  7. There is also not enough sideways distance to the hole down there, probably barely not, so it is unstable (sometimes detected, sometimes not). The shadow there is not helping. Maybe you can change your model there and cut a bit away on the already printed ones.
  8. Sometimes the cover tape also obstructs the lowest hole.

I'm still not entirely sure if that explains all of it, so this is not an excuse to not go on searching for bugs. And thanks for keeping it up.

But frankly switching colors back and forth will always give problems. 😁

I guess you also have to work on reliable tape transport and cover tape stretching, or you will have operational issues too (no only setup). As you can see it copes with the sprocket hole flipping most of the time during operation, i.e. it still takes the right pick location...

  

... but for feeder setup, that is too shaky. I hope you understand.

I propose you try with all the green or all the black ones together and first make sure the sprocket holes are all visible and at the same rough positions. Like I said the first [ + ] will never work, due to the other-than tape width +8mm distance. But the second [ + ] should have learned.

I'm still looking for bugs. Thanks for helping!

_Mark

Litterio Andrea Guainella

unread,
Aug 6, 2022, 10:15:50 AM8/6/22
to OpenPnP
Hi Mark,
thank you for images and docs evaluations.
Here machine.xml.

If it can be useful I can say that despite the error message, the program tries to guess and goes very close in fact I have to apply small changes later to store the correct data.
All seems works but as you said, is not very stable because sometimes vision fail when pick parts.

30.jpeg

I know that it cannot be a definitive way but at least as a temporary solution I can do small montages
I would have liked to try to print your magnificent pushpullfeeder but as you can see from the photo it is not applicable at the moment in the table.
Honestly I am not able to modify the  pushpullfeeder  design to adapt it to the table instead of the alluminium bar

LAG
machine.xml
Reply all
Reply to author
Forward
0 new messages