pattern origin vs. pick and place (new user)

"How-to" questions from new engineers and designers. Please ask and respond here.
Post Reply
Posts: 10
Joined: 16 Aug 2011, 15:23

pattern origin vs. pick and place (new user)

#1 Post by yerrbjr » 29 Sep 2011, 14:42

I'm foggy about how the PWB assembler determines the index location / orientation for components for pick and place.
I don't understand how this is resolved vs. the (diptrace) origins on the patterns.

1. Is the origin I use when I create a pattern totally arbitrary, because the origin, relative to pad locations, is transmitted in the fab files, and thus resolved downstream?

2. Or.. is there a rule I must follow about when I locate the origin in order for the parts to be placed correctly on the PWB?

Thanks in advance to anyone who can clarify this for me.

Technical Support
Posts: 3167
Joined: 14 Jun 2010, 06:43

Re: pattern origin vs. pick and place (new user)

#2 Post by Alex » 30 Sep 2011, 08:01

When you export pick and place file, you have a choice what point should be component origin. It can be component center (calculated automatically) or component origin.
If you used standard libraries or designed patterns due to IPC recommendation, export pick and place file by origin. Otherwise, if origins in your patterns are in arbitrary positions, export pick and place by component center.

Posts: 10
Joined: 16 Aug 2011, 15:23

Re: pattern origin vs. pick and place (new user)

#3 Post by yerrbjr » 07 Oct 2011, 20:34

I think I was confusing the 'centroid' with the PE 'origin'. If I export a pattern to ASCII, I can see that moving the PE 'origin' around has no bearing on the pad coordinates in the LIB output (the only thing that changes , besides 'OriginX' & 'OriginY' are the params for the 3D view). This suggests that the "origin" is really just a arbitrary reference to give the user the ability to define the relative position of objects.

But.. this contradicts your advice above, recommending that my choice of export should be based on origin = 'auto' or arbitrary.

I read on the net that the 'centroid' of a part, IPC-wise, is defined as the mean of ea. of X,Y of all the pads in the footprint. Can you confirm? If so, it is strictly a function of the pad coords and hence no independent definition is possible.

For patterns that are symmetric in both axes, the 'mean' definition and the auto 'origin' within PE produce the same result. However, for non-symmetric patterns they do not.

For some footprints, it is very useful to use a non-auto origin for inputting objects (e.g., off a CAD drawing). But when I'm finished, what then? Convert the origin to 'auto'?

When I started creating footprints I was winging it. Then I learned about IPC7351 -- that there are conventions I should follow. If I'm mixing my own FPs with those from your libs, it would seem I need to be consistent in order for things to go smoothly at the board house.

To achieve that goal, what exactly must I do in PE, other than observe the rules for orientation (0 deg rotation), polarity, etc., to insure that the FPs I produce are (IPC) compliant- & consistent with your libs?

I couldn't find any guidance in the PCB help file, so I hope you don't mind my asking these questions.

Technical Support
Posts: 3167
Joined: 14 Jun 2010, 06:43

Re: pattern origin vs. pick and place (new user)

#4 Post by Alex » 10 Oct 2011, 06:47

It seems you dig too deep. Why do you explore ASCII file?
In most cases, exporting pick & place file by component center and origin give the same X Y coordinates if patterns were centered in libraries. It is true for symmetrical components. For non-symmetrical ones, you may want to define custom origin because centroid of this component isn't in component center. In that case, exporting p&p file by origin is preferable.

Posts: 5
Joined: 22 May 2015, 02:26

Re: pattern origin vs. pick and place (new user)

#5 Post by jfpeyre » 19 Nov 2015, 08:27

One issue I found using 'center' instead of 'origin' for the pick&place file is that the center is apparently computed taking into account all layers, including the silk layer.

So for example, a standard DIPTRACE diode pattern will have its center shifted toward the cathode mark.

I think that the center should only be computed with the signal layers, plus maybe the assy layer ?

Posts: 55
Joined: 01 Feb 2016, 21:26
Location: TN, USA

Re: pattern origin - pick and place - "How To" generate

#6 Post by bird » 02 Nov 2019, 03:50

Although this thread started long ago, the search of people brings them here again. So I got here for the same reason and the end of this thread left more confusion.
I want to bring clarification for those who will come here again.

DT must take into consideration the silk layers and copper layers, and possibly assembly layer (Not sure as I don't use assembly layer) , both sides of PCB if components are on the top and bottom layers. Pick and Place machine does not pick the components by their pads :) but by their body which is outlined in the silk layer.

So here I am pasting my own note I wrote for myself to recall how to generate Pick N Place file for the assembly house. I don't go much into the details of the file format - I don't care to know it. It is about understanding how to design properly the components and use the export facility for generation of Pick-N-Place CSV file.
Generating Pick N Place file

In PCB Layout choose "export to Pick N Place" file in CSV format with comma separated values
The default columns work well in most cases
Choose "Components side" , "All" if top and bottom both should be place using a placement machine
Component Coordinates : either by Origin (defined in the component' pattern design) or Component Center (generated automatically, see below for details)
Keep "offset" at zero, if the origin of the component was properly defined, the DT will properly calculate the position of location as it has been traced.
Choose to include Table Header - helps to visually check the results when file is opened.
Export to file, choose comma separation and save in the same folder which has your gerber files.

Note on the Component Coordinates choice:
Component Center (Automatically generated by DT) can be chosen only in a simple case when all the components are strictly symmetrical in their pads (signal layers) and also in their body outline (silk layers). Such components for ex. SMD capacitors and resistors.
DT provided libraries supposedly properly define the origin for all components (hence for those the "Origin" can be used safely) but the User is responsible for his own component' design.
DT export must take into consideration silk layer because it defines a component' body outline which does not necessarily follow the symmetry of the pads (pads could be symmetrical but the body could be asymmetrical).
Using Component Center - automatic center generation - is not recommended.
You might think that you have a simple case with all the components symmetrical, but even if it is, later on you will re-use the same setup (the choice of Component Coordinate is not for each component but for all of them in a single file) , then sure enough you will get few asymmetrical components and their placement will be messed up.
If a component has any irregularity (asymmetric) in any of those significant layers (example: microSD socket, USB socket...) , then the manually defined Component Origin must be used otherwise the center for the pickup machine and for the placement will not be properly generated if you rely on the automatic center generation choice.
To do it right the best approach is always to define the center origin in the component pattern design. Keep the origin at the center of body outline. If it is irregular body outline, define the origin manually. If following this approach, you will be safe to always correctly generate Pick-N-Place file choosing it's component's origin regardless whether component is symmetrical or not.
Hope this will clarify the topic.

Posts: 46
Joined: 13 Nov 2018, 02:19

Re: pattern origin vs. pick and place (new user)

#7 Post by d1wang » 25 Nov 2019, 21:43

When you design a SMD footprint, just put the footprint origin in the center. Silk screen cannot be trusted, especially for polarized components like diodes. Pads aren't reliable either, because pin 1 may be purposely made longer.

Post Reply