Hi everyone,
I am having trouble figuring out an issue with my Z axis logic during component placement. I am running a custom setup (with rotary cam svingarm Z axes), where all Z dimensions are calibrated as raw nozzle tip touch/contact points.
Currently, my coordinates and setup are:
PCB Z = 13.5 mm (Touch point)
Feeder Z = 14.3 mm (Touch point)
Part Height = 1.0 mm
The Issue: When OpenPnP performs a placement, the DRO shows 14.5 mm (N2.moveTo at Z=14.5). It looks like OpenPnP calculates: PCB Z (13.5) + Part Height (1.0) = 14.5 mm.
However, since my Z height represents the nozzle tip contact point, adding the part height drives the nozzle 1.0 mm too deep into the PCB, mashing the nozzle spring. Instead, I need the nozzle to stop higher up to account for the component thickness.
I can't figure out why it adds the part height in a way that drives it lower, or if my understanding of the OpenPnP Z-coordinate system is wrong when using touch points.
Link to machine.xml: https://github.com/hschack/ZB3245TSS_OPENPNP/tree/main/Machine_xml
Link to Log file (around line 204): https://github.com/hschack/ZB3245TSS_OPENPNP/tree/main/Temp
Any help or guidance on how to properly set up or invert this offset logic would be greatly appreciated!
Project ZB3245TSS to openpnp link
https://github.com/hschack/ZB3245TSS_OPENPNP
Thanks,
Henrik Schack
Hi Michael and everyone,
A huge thank you to all of you—the penny has finally dropped!
As an old machinist, my brain is hardwired to think of a traditional milling machine where the table (the bed) moves UP towards the tool in the positive Z direction. I was configuring the machine based on "table height" instead of "tool movement."
Once I flipped my mindset from the table to the tool, the OpenPnP logic made 100% sense.
I will invert my Z-axis direction in my Duet config.g so that Z0 is at the very top (Safe Z) and moving DOWN towards the PCB and feeders becomes a NEGATIVE move.
This way:
PCB Z will be -13.5 mm
Feeder Z will be -14.3 mm
When OpenPnP adds a 1.0 mm part height, the target becomes -12.5 mm, which is closer to the top, correctly stopping the nozzle 1.0 mm higher to account for the component thickness!
Thank you so much for clearing up my confusion and getting me back on track!
Best regards,
Henrik Schack
--
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 visit https://groups.google.com/d/msgid/openpnp/880b04a2-b7fe-4fb6-926f-0b22687a142bn%40googlegroups.com.