Can I suggest you do this that using the down looking camera and the Stainless Steel scale fixed to the riser blocks?
Using nozzle as reference is the same, isn't it? And it makes it easy to ask the machine where is the marked location
You could also do your same test but ensure there are no nozzle rotations in the programme. Of course looking for other loose fixtures in the head is a good idea also.
Yes, agree this is very important. When you zero nozzle locations, make sure all rotations are zero degrees. The pick will happen always with 0 degree rotation, and on the way to the camera or pcb, the rotation will occur. And then the place will happen, and on the way back to the next pick, the rotation will be reset to zero.
So, for consistency and max pick accuracy, always zero nozzles and verify zero degrees. The smallest (Juki 503) nozzle has an ID of 0.6mm, and I'd estimate over the full rotation is also the concentricity error. The Juki nozzle error is very likely a small fraction of that, with the way the Juki is mounted to the stepper being the larger sourch
I must say that at 5/100 mm, I think you are close to hitting the practical limitations of the design. What resolution tolerance are you expecting or needing it to achieve anfang?
Right now I'm just trying to learn limits.
Here's a test I did:
1) Place 400 parts to warm up the machine. These were "air" placed (no pcb, no feeder, quick vision).
2) After placement, zero nozzle 1
3) Go home, run 400 more parts, nozzle location is dead on the entire time. Homing is very consistent.
4) Turn machine off, wait 15 minutes, turn machine back on, check nozzle location. Picture attached ("after powercycle")
5) Air place 200 parts
6) Check location. It is mostly unmoved ("after placement" on picture)
Some observations/theories for others bringing up their machines:
1) Warmup matters a lot. I'd estimate +/- 0.5mm. Run the machine for 5 mins or so before zeroing.
2) Homing repeatability is very good. I'd estimate +/- 0.02mm
3) Board to board repeatability is very good.
3) Something I don't yet understand is what happens between step 4 and 5 above. Something gets a bit out of whack and in the pictures, it's mostly an xaxis issue. Will monitor in the future.
Finally, there is a parameter called "delay before vision" or similar that is important at 100% speed. If you are air placing, then you can always see the system's idea of the "absolute zero" nozzle location during a 'quick' vision check: Every image that flashes on the screen should show the nozzle centered exactly in the crosshairs. If the delay value is set to 0, lots of times an image won't even register. I'm assuming the system treated the recognition as failed since it didn't display anything. If you set it to 50 mS, then you will see the nozzle is't in the center of the cross hairs during each recognition. This most likely means it hasn't settled yet--the various mechanical dampings are still occurring even though the system thinks its stopped. But at 150 mS, the nozzle is dead centered every single time.
So, if you are aiming for small parts and accurate placement, you should be looking at 100 to 150 mS for pick delay, place delay, and pre vision delay. This will ensure the system has settled. And when you are watching images flash by during quick vision, make sure that each image shows the nozzle mostly in the cross hairs. If not, then you have a concentricity problem or the system isn't settled enough. If the nozzle is mostly in the cross hairs and the part isn't, then you have a pick problem.
PS. I also attached my best effort on 0402 placement. It's where I need it.