Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix pipeline defaults for nozzle runout compensation #739

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

jbussmann
Copy link

When using one of the larger nozzle tips on my LumenPnP v4.0.0 for the first time and trying to do the nozzle runout compensation, I was greeted with a strange looking heatmap and either a badly aligned nozzle tip or errors due to vision misdetects. When taking a closer look, I found the diamater values in the cv-pipeline to be out of place for this nozzle tip. After fixing this, I went through all the other nozzle tips and fixed them all in a consistent manner.

The following table shows the nozzle tips and various diameters in pixels. For my machine I determined 0.0350 mm/px and the template machine.xml lists 0.0368 mm/px. I consider my measurement to be more accurate because of the unknown accuracy of the template file and the general impression that it probably isn't the most accurate. None the less I used 0.0355 mm/px for this calculation, in case I'm a bit off and to slightly reflect the template file.

The fist column lists the previous values from the machine.xml in the cv-pipeline as min/max. The second column contains the nominal diameter based on the above mm/px value. The last row show the values I suggest in this PR, as the nominal value ±10% and rounded to the nearest integer, away from the nominal value.

Nozzle Tip previous nominal suggested
N045 5/25 12.7 11/14
N08 5/25 22.5 20/24
N14 35/55 39.4 35/44
N24 70/90 67.6 60/75
N40 40/85 112.7 101/124
N75 40/70 211.3 190/233

From this table one can easily see, why vision failed on the larger nozzle tips: DetectCircularSymmetry was looking for symmetry in a pixel range where there is at worst just a black patch.

I don't know if this is the case but one could argue that the larger nozzle tips are detected by their throat, but not only is this out of focus but also offset from the centre in a machine configured with the template file. Therefore I suggest an additional change.

User KevinDWolf brought this to my attention on Dec. 3rd in discord by asking if the slanted nozzle as seen by the bottom camera is something to be concerned with. I noticed myself as well that the bottom camera sees the nozzle tip from the side and moves sideways by a considerable amout, when moving along the z-axis. I was close to disassembling the camera mount but Stephen confirmed there to be a -60 (px?) offset configured in the bottom camera. Although Stargirl and Stephen assured this to not significantly affect things and not actually causing any problems, this offset has no business being there. And I'm not so sure about this not being an issue after all.

@jbussmann
Copy link
Author

As it seems, there is actually a linked pipeline available for the nozzle tip runout compensation. If there is a DetectCircularSymmetry stage with propertyName nozzleTip available, it is automatically linked to the nozzle tip settings like this:

stage property nozzle tip property multiplier
minDiameter Vision Diameter 0.6
maxDiameter Vision Diameter 1.2
maxDistance Offset Threshold 1.4

Clearly, using the linked stage is much more advisable than using fixed values. It allows the nozzle tips to be configured once and independently from the vision system. No matter what camera and other settings there are used, as long as the units per pixel are correct, the pipeline can do its job to detect the nozzle tip.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant