I have a new machine. Foolishly I created a board with 0402s, so they are the first parts I am trying to place. I am having a problem with the needle pressure algorithm. If I try to free place a part, the needle goes to maximum pressure (limit switch) and backs off to the desired pressure. The maximum pressure breaks the finer needles. I am planning on changing when the limit switch trips and rewriting the software. I am planning on setting the switch to trip when the needle first contacts the surface and the pressure is at a minimum (effectively the back off location), then I would move from that position to the position that gives me the desired force. I am also planning on adding a maximum needle pressure (offset) that the machine won't go beyond for a given needle. That number will be determined by having a calibration step where the machine can be jogged down with the needle. One can move until the needle just flexes and then backing off until it is not flexed.
There are a couple of advantages to this algorthim. The fact that the pressure doesn't exceed a certain value is the first. The second is that pressure values are now independent from the Z. Presently, the pickupZ values are in absolute Z values which are not valid if the part is at a different Z.
BTW, I believe that flexed needles are also a cause of failure to pick up parts. If the needle is flexed then the tip is not parallel to the top of the part.
A new algorithm for needle pressure
Re: A new algorithm for needle pressure
Your concerns are valid. The true fix is coming soon, changing to sturdier nozzles instead of needles. About your suggestion:
> setting the switch to trip when the needle first contacts the surface and the pressure is at a minimum
We need some pressure to avoid false triggers. If I would do this again with needles (I'm not; the nozzles are better), I would find a switch that allows long movement from the tripping point to the switch mechanical limit (or a mechanical design that allows moving past the switch trigger), and a strong enough spring that would give enough down pressure within the allowed switch move.
About needle flex: What color needled you are using for 0402s? It's been a while (I try to avoid those), but I'm rather sure I tested with and used the green one. I'm able to probe down with that without needle flex. Can you set the spring a bit weaker?
> BTW, I believe that flexed needles are also a cause of failure to pick up parts. If the needle is flexed then the tip is not parallel to the top of the part.
I agree, particularly if there is any stickiness on the part, so that the vacuum is not able to lift it to the needle. And in any case, the accuracy with a bent needle is not going to be good.
> setting the switch to trip when the needle first contacts the surface and the pressure is at a minimum
We need some pressure to avoid false triggers. If I would do this again with needles (I'm not; the nozzles are better), I would find a switch that allows long movement from the tripping point to the switch mechanical limit (or a mechanical design that allows moving past the switch trigger), and a strong enough spring that would give enough down pressure within the allowed switch move.
About needle flex: What color needled you are using for 0402s? It's been a while (I try to avoid those), but I'm rather sure I tested with and used the green one. I'm able to probe down with that without needle flex. Can you set the spring a bit weaker?
> BTW, I believe that flexed needles are also a cause of failure to pick up parts. If the needle is flexed then the tip is not parallel to the top of the part.
I agree, particularly if there is any stickiness on the part, so that the vacuum is not able to lift it to the needle. And in any case, the accuracy with a bent needle is not going to be good.
Re: A new algorithm for needle pressure
As a temporary fix, just set Z-levels for pickup and place manually in the tape dialog.
Just home Z; no need to actually calibrate needle height.
Then move to part pickup location, jog Z-level to correct pickup height (to the point where the needle touches the part slightly) and set the Z-coordinate as "Pickup Z" in table.
Enable vacuum, move to board location and again jog Z-level manually until part touches the board. Set the new Z-coordinate as "Placement Z".
Usually the correct Z values are determined on first pick and first place using the "auto probe" built into Z-axis and subsequently used for placement operation.
I would agree that this is tedious work. However it is how most professional PnP work. They usually keep a database of part heights though and calculate the pick and place Z-levels from that. OpenPnP also works this way, but many people are discussing auto probing (like LitePlacer does) in the OpenPNP Google Group.
If you use some sort of strip feeder holder (checkout mine if you like: http://malte-randt.de/strip-feeders-and ... y-for-smd/) all pickup levels will be the same which eases setup.
I think the current Z-level probing requires to much force (~ 3N in my case); I did some experiments but have not found a nicely working solution yet. When placing delicate parts, e.g. some IC and especially electrolytic caps which get dented by probing with too much force, I also just set the Pickup and Place Z manually.
Just home Z; no need to actually calibrate needle height.
Then move to part pickup location, jog Z-level to correct pickup height (to the point where the needle touches the part slightly) and set the Z-coordinate as "Pickup Z" in table.
Enable vacuum, move to board location and again jog Z-level manually until part touches the board. Set the new Z-coordinate as "Placement Z".
Usually the correct Z values are determined on first pick and first place using the "auto probe" built into Z-axis and subsequently used for placement operation.
I would agree that this is tedious work. However it is how most professional PnP work. They usually keep a database of part heights though and calculate the pick and place Z-levels from that. OpenPnP also works this way, but many people are discussing auto probing (like LitePlacer does) in the OpenPNP Google Group.
If you use some sort of strip feeder holder (checkout mine if you like: http://malte-randt.de/strip-feeders-and ... y-for-smd/) all pickup levels will be the same which eases setup.
I think the current Z-level probing requires to much force (~ 3N in my case); I did some experiments but have not found a nicely working solution yet. When placing delicate parts, e.g. some IC and especially electrolytic caps which get dented by probing with too much force, I also just set the Pickup and Place Z manually.
Re: A new algorithm for needle pressure
I was going to wait until we were successful to respond. We are closer but not completely successful. Thank you for the tips. The manual configuration is helpful. We couldn't get the green needle to work, but we have had some success with the red needle. We are still not accurate enough. If we hit the part precisely, it picks up.