Problem with z-height when placing components

193 views
Skip to first unread message

eklun...@gmail.com

unread,
Mar 16, 2023, 5:19:05 AM3/16/23
to OpenPnP
Hi all,

I have finally started up my Charmhigh that is converted to OpenPnp.
There are two things that I don't know how to fix even thou I have googled for this quite a lot.

1. When I place components in a job the nozzle is not lowered to the board. The component is dropped at zero hight even thou I have set a height for the board.

2. If I check the fiducials at job start the nozzle is lowered to board height and is at that level for all fiducials, even during move.
Maybe I can set a z-hight on the fiducials to avoid this, but it is a strange behavior.
 No Video.

I got an update of OpenPnP yesterday so I should be on the latest version.

Thanks for any advice on this.
--Per
SPC-board.board.xml
SPC-job.job.xml

mark maker

unread,
Mar 16, 2023, 5:30:15 AM3/16/23
to ope...@googlegroups.com

I have a suspicion but let Issues & Solutions tell you. 😉

If this does not resolve it, report back.

_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/bbd32baa-be4d-45e6-838c-06717d524e7en%40googlegroups.com.

eklun...@gmail.com

unread,
Mar 16, 2023, 6:00:19 AM3/16/23
to OpenPnP
Thanks for your quick respons Mark!
I will throu Issues & Solutions and report back.

--Per

eklun...@gmail.com

unread,
Mar 16, 2023, 4:02:57 PM3/16/23
to OpenPnP
Hi again,

Today I have gone throu all  Issues & Solutions. Unfortunately the problem is still there.
Maybe it is best to start all over with a fresh instalation?

--Per

Mike Menci

unread,
Mar 16, 2023, 4:08:07 PM3/16/23
to ope...@googlegroups.com
Hi,
Please see what is the hight of your PCB in the code ! 
Can you send a screen shot ? 


Mike 

Sent from my iPhone

On 16 Mar 2023, at 21:03, eklun...@gmail.com <eklun...@gmail.com> wrote:

Hi again,

eklun...@gmail.com

unread,
Mar 16, 2023, 4:17:25 PM3/16/23
to OpenPnP
I have a photo.
On the screen it is -35.8
In job.xml it is: <location units="Millimeters" x="114.92177765222343" y="87.61263293916895" z="-35.8" rotation="-0.035204889861395305"/>
In board.xml it is:<dimensions units="Millimeters" x="60.0" y="80.0" z="0.0" rotation="0.0"/>

z-hight.jpg

eklun...@gmail.com

unread,
Mar 17, 2023, 2:45:30 AM3/17/23
to OpenPnP

I just thought of a real longshot.

Since the nozzle is lowered to board level during checking fiducials, which I suppose it shall not do, and not during placing of components, I just wonder if there is some mixing of these two functions???

I admit it sounds absurd, but I will give it a try later today and swap types.

I did try the fiducials on the older software and I can not recall that the nozzles were lowered then. I did not try the placing on that version so unfortunately I can not say how it worked before the update.

As I said, this is on real longshot and it is highly unlikely this is the case.

I work as a software developer myself so I can see how bizarre this sounds, but stranger things have happened 😊

mark maker

unread,
Mar 17, 2023, 4:29:31 AM3/17/23
to ope...@googlegroups.com

> Today I have gone throu all  Issues & Solutions. Unfortunately the problem is still there.

OK, so it wasn't the virtual and real Z axis being confused.

> Maybe it is best to start all over with a fresh instalation?

No, please send the machine.xml

_Mark

eklun...@gmail.com

unread,
Mar 17, 2023, 9:01:37 AM3/17/23
to OpenPnP
Hi,

Here is the machine.xml

Thanks for having a look at this!
--Per
machine.xml

mark maker

unread,
Mar 17, 2023, 9:30:12 AM3/17/23
to ope...@googlegroups.com

You need to assign the virtual Z axis to the camera:

This will surely solve the fiducial issue.

It likely also solves the other issue, but not 100% sure. Please report back.

I was mistaken to assume that Issues & Solutions would pick that up. I'll add this now.


_Mark

eklun...@gmail.com

unread,
Mar 17, 2023, 10:06:39 AM3/17/23
to OpenPnP
Hi,

It helped for the fiducials!
Unfortunately the place component still drop it from level 0

Thanks a lot again for your help!!!
--Per

mark maker

unread,
Mar 17, 2023, 10:35:14 AM3/17/23
to ope...@googlegroups.com

The one thing that comes to mind would be a part height that was huge, i.e. practically equal to the Z difference from board to safe Z.

It that is not it, please send a log at TRACE level of such a "placement" (or rather "drop").

_Mark

eklun...@gmail.com

unread,
Mar 17, 2023, 10:43:23 AM3/17/23
to OpenPnP
Hi,

Here is the Place log. There is an error at the end after the supposed Place since the Component was stuck at the nozzle.
I have to leave the job now and will not be able to try any solution until sunday avternoon, so no hurry :-)

Thanks again!
--Per
place_log.txt

eklun...@gmail.com

unread,
Mar 17, 2023, 10:45:05 AM3/17/23
to OpenPnP
Part height should be ok. I'm placing the 100nF 0603.
partheight.PNG

mark maker

unread,
Mar 17, 2023, 11:01:35 AM3/17/23
to ope...@googlegroups.com

See in the log starting here

2023-03-17 15:39:37.734 ReferenceNozzle DEBUG: N1.place()

then it wants to move Z to -90° (more about that later)

2023-03-17 15:39:37.738 GcodeAsyncDriver DEBUG: serial://COM9 commandQueue.offer(M204 S40960 G1   Z-90.0   F38400 ; move to target, 10000)...

then the controller complains

2023-03-17 15:39:37.782 GcodeDriver$ReaderThread TRACE: [serial://COM9] << Error: Soft Endstop Z was exceeded - entire move ignored

later the position report confirms that

2023-03-17 15:39:38.285 GcodeDriver TRACE: Position report: ok C: X:117.1200 Y:141.7020 Z:0.0000 A:6.1000 B:180.0000 C:6.0000 E:0.0000

and OpenPnP notes the discrepancy, but because we cannot rule out these, this is not flagged as an error:

2023-03-17 15:39:38.285 AbstractMotionPlanner DEBUG: Reported location changes current location from (X:117.120142, Y:141.681445, Z:-90.000000, N1:6.067218, N2:180.000000) to

Finally it drops the part

2023-03-17 15:39:38.286 ReferenceActuator DEBUG: N1VAC.actuate(false)

The -90° likely indicates that the cam cannot go that low in Z.

So either your machine cannot go to the PCB, which I doubt since it seems to be an unmodified CHMT, or more likely you have the Cam Radius set too small here:

_Mark

tonyl...@gmail.com

unread,
Mar 17, 2023, 11:31:44 AM3/17/23
to OpenPnP
Are you sure you have the board Z set correctly? From the job.xml file it looks like you have it set at -35.8 and from your machine.xml file I see your feeders are at -11.0. From watching your video, it appears they are closer together than that.

Tony

mark maker

unread,
Mar 17, 2023, 11:32:26 AM3/17/23
to ope...@googlegroups.com

> You need to assign the virtual Z axis to the camera...

This issue is now detected by Issues & Solutions, it will suggest to assign the correct virtual axis (if one exists):

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

Available in the test version of OpenPnP, allow some minutes to deploy.


In case you're wondering about virtual axes, see:

https://github.com/openpnp/openpnp/wiki/Machine-Axes#referencevirtualaxis

_Mark

mark maker

unread,
Mar 17, 2023, 11:37:37 AM3/17/23
to ope...@googlegroups.com

>> So either your machine cannot go to the PCB, which I doubt since it seems to be an unmodified CHMT,

>> or more likely you have the Cam Radius set too small

> Are you sure you have the board Z set correctly? From the job.xml file it looks like you have it set at -35.8 and from your machine.xml file I see your feeders are at -11.0. From watching your video, it appears they are closer together than that.

Ah yes, the third and likely correct explanation.

_Mark

eklun...@gmail.com

unread,
Mar 17, 2023, 11:45:13 AM3/17/23
to OpenPnP
I agree. The distance differens is not that big. When setting z height for the pcb i jogged the nozzle down and read the value for z on the dro. I will check on this again on sunday. Away from work now.

Jan

unread,
Mar 17, 2023, 11:51:25 AM3/17/23
to ope...@googlegroups.com
Hi Per!
Your PCB-Z is far outside the max. Z travel of the stock CHM-T head. It
should be around -10mm. (about 1mm higher then the feeder)

Jan

On 16.03.2023 21:17, eklun...@gmail.com wrote:
> I have a photo.
> On the screen it is -35.8
> In job.xml it is:
> <location units="Millimeters" x="114.92177765222343" y="87.61263293916895" z="-35.8" rotation="-0.035204889861395305"/>
> In board.xml it
> is:<dimensions units="Millimeters" x="60.0" y="80.0" z="0.0" rotation="0.0"/>
>
> z-hight.jpg
>
> torsdag 16 mars 2023 kl. 21:08:07 UTC+1 skrev mike....@gmail.com:
>
> Hi,
> Please see what is the hight of your PCB in the code !
> Can you send a screen shot ?
>
>
> Mike
>
> Sent from my iPhone
>
>> On 16 Mar 2023, at 21:03, eklun...@gmail.com <eklun...@gmail.com>
>> wrote:
>>
>> Hi again,
>>
>> Today I have gone throu all Issues & Solutions. Unfortunately the
>> problem is still there.
>> Maybe it is best to start all over with a fresh instalation?
>>
>> --Per
>> torsdag 16 mars 2023 kl. 11:00:19 UTC+1 skrev eklun...@gmail.com:
>>
>> Thanks for your quick respons Mark!
>> I will throu Issues & Solutions and report back.
>>
>> --Per
>>
>> torsdag 16 mars 2023 kl. 10:30:15 UTC+1 skrev ma...@makr.zone:
>>
>> I have a suspicion but let *Issues & Solutions* tell you. 😉
>>
>> If this does not resolve it, report back.
>>
>> _Mark
>>
>> On 16.03.2023 10:19, eklun...@gmail.com wrote:
>>> Hi all,
>>>
>>> I have finally started up my Charmhigh that is converted
>>> to OpenPnp.
>>> There are two things that I don't know how to fix even
>>> thou I have googled for this quite a lot.
>>>
>>> 1. When I place components in a job the nozzle is not
>>> lowered to the board. The component is dropped at zero
>>> hight even thou I have set a height for the board.
>>> Video on this isue: Dropping components instead of
>>> placing them
>>> <https://youtube.com/shorts/6c7exCbzNeg?feature=share>
>>>
>>> 2. If I check the fiducials at job start the nozzle is
>>> lowered to board height and is at that level for all
>>> fiducials, even during move.
>>> Maybe I can set a z-hight on the fiducials to avoid this,
>>> but it is a strange behavior.
>>>  No Video.
>>>
>>> I got an update of OpenPnP yesterday so I should be on
>>> the latest version.
>>>
>>> Thanks for any advice on this.
>>> --Per
>>> --
>>> 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/bbd32baa-be4d-45e6-838c-06717d524e7en%40googlegroups.com <https://groups.google.com/d/msgid/openpnp/bbd32baa-be4d-45e6-838c-06717d524e7en%40googlegroups.com?utm_medium=email&utm_source=footer>.
>>
>> --
>> 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/c0928dba-22f5-4ecd-a48a-592e9c684cedn%40googlegroups.com <https://groups.google.com/d/msgid/openpnp/c0928dba-22f5-4ecd-a48a-592e9c684cedn%40googlegroups.com?utm_medium=email&utm_source=footer>.
>
> --
> 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
> <mailto:openpnp+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/0405b1cd-cb25-404d-9bff-071fa5adbb8an%40googlegroups.com <https://groups.google.com/d/msgid/openpnp/0405b1cd-cb25-404d-9bff-071fa5adbb8an%40googlegroups.com?utm_medium=email&utm_source=footer>.

Wayne Black

unread,
Mar 17, 2023, 11:59:18 AM3/17/23
to ope...@googlegroups.com
This is the weird thing w the CHMT tho, the travel is ~10mm, but Openpnp reports 48.8 as max on my machine. I just assumed this was translation of linear length to rotational degree of the arm. I dont fully understand it, and it works so I dont give it much thought.



--
Wayne Black
Owner
Black Box Embedded, LLC

mark maker

unread,
Mar 17, 2023, 12:13:07 PM3/17/23
to ope...@googlegroups.com

> I just assumed this was translation of linear length to rotational degree of the arm.

Yes, if you're looking at G-code in the log. Or on the raw Z axis itself, e.g. the Safe Z and Soft Limit coordinates.

But this should never appear as "Z" anywhere in the OpenPnP DRO or captured coordinates.

> I dont fully understand it, and it works so I dont give it much thought.

Wayne Black

unread,
Mar 17, 2023, 12:49:30 PM3/17/23
to ope...@googlegroups.com
>Yes, if you're looking at G-code in the log. Or on the raw Z axis itself, e.g. the Safe Z and Soft Limit coordinates.

I see it when manually jogging either nozzle and attempt to exceed SW limit. Its a msgbox and needs to be cancelled to resume gui functionality. This may be a non-issue now as Im run an older ver of openpnp, but not sure which and I dont have access to the machine right now.

mark maker

unread,
Mar 18, 2023, 4:03:58 AM3/18/23
to ope...@googlegroups.com

It just occurred to me: Per (OP) had the raw Z axis assigned to his camera Z:

So chances are he had the camera selected as tool in Machine Controls, then pressed the "Set the board's Z to the tools's current Z" button. That would indeed have taken the current raw Z axis coordinate as the board Z. See screenshot:


> I see it when manually jogging either nozzle and attempt to exceed SW limit.

Yes, those are the Soft Limits on the raw Z axis itself, as I mentioned. Limited is the rotation of the rotary cam [angle in degrees], not the nozzle Z per se.

The cam rotary axis should be named "ZN" (short for "Z for Nozzles") by default by the Issues & Solutions nozzle solution, to make it clear it is not "just Z". And the transformed nozzle Z axes are named "Z1" and "Z2".


But I see it the raw Z just named  "Z" in Per's config, so maybe some CHMT template machine.xml you all use as a starting point has made this more confusing than necessary.

Just go to the raw Z axis and rename it "ZCamRot" or something, so on the next such error message, it will be clear what it relates to.

_Mark

Wayne Black

unread,
Mar 18, 2023, 12:23:48 PM3/18/23
to ope...@googlegroups.com
Heres the msg vs the dro when I attempt to Jog to 20mm
image.png
I can attache my CHMT config file later...

mark maker

unread,
Mar 18, 2023, 5:15:07 PM3/18/23
to ope...@googlegroups.com

Wayne, perhaps read my post again.

eklun...@gmail.com

unread,
Mar 19, 2023, 9:19:15 AM3/19/23
to OpenPnP
Thanks a lot every one.
Now it works perfect :-)

Have a nice sunday!
--Per

Reply all
Reply to author
Forward
0 new messages