Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Multiple PCBs, single panel - what happens to the pick and place files?

Status
Not open for further replies.

bruj02

Newbie level 3
Joined
Dec 7, 2010
Messages
3
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,334
We designed several PCBs (7) using Altium Designer, and sent the gerber files to a PCB manufacturer, who merged them into a single panel as per our request.

Afterwards, we sent the resulting panelized gerber, and a single BOM, but 7 separate pick and place files to the PCB assembly company.

The assembler is unhappy about this, explaining that each pick and place file is created with a distinct origin. The assembler would like to have a single pick and place file, or means to adjust each file. Alternatively, they would like to have an XY file that gives them the information they need (?).

The PCB manufacturer, on their end, tell us that there is nothing they can do, and that the pick-and-place files need to be re-mapped to the design (by us or by the PCB assembler).

This doesn't make sense...what is the right way to manage this without dropping data along the way? I don't want to panelize the boards internally, since this ties in with the PCB manufacturer's expertise. On the other hand, I don't want to add extra steps (remapping, manual entry) that risk introducing more errors. Is this the responsibility of the PCB assembly company? Every body is pointing the finger at someone else here and I'm confused.

Thanks in advance for the help,
 

I think you have to manipulate the files anyway. Best thing to do is to write some script that manages the offsets. I think the pick and place files are rather easy to parse with some python. If you know someone that is a bit handy with python, I estimate the scripting should be less than an hour work.

On the other hand, it surprises me that the assembler does not have proper tools to merge the data in a single file. I think at least they should have some software from the pick-and-place-machine producer.

Stefaan
 

I think, it's unusual to combine different PCBs to a panel for assembly. I can imagine, that the workflow isn't prepared for it. Step and repeat is quite common, but it can be easily handled by the assembly company, even if you supply pick and place data only for a single PCB.

The best way to get rid of the communication problems is to make the assembly company order the PCBs. In cases, where you want to control the panelization, e.g. because it has to fit a text fixture or whatever, yes, it's better to panelize the data yourself. Or you should tell the PCB manufacturer before, that you need to know the panel offsets.
 

This is not a problem.

Can you get Gerbers of the entire panel from the board manufacturers?
If so you could use Graphicodes GC-Place to create a placement file for the entire panel.
I did this several times for a past employer, to create placement files for the entire panel.

I would recommend the software for your placement files etc if you are going to do this often.
Maybe you can rent the software or just get it done for a small cost.

For the manufacturers they could run it through the placement machine for every assembly just giving each on a different offset.
Not the most cost effective solution but easily possible.

What is your CAD software, what are the placement machines used?


Actually, thinking about it -if you are able to define the origin in your CAD software, once you have the panel data you can then adjust the origin
for each design and output the data based on that.

Then combine all files.

Getting the entire panel is key though, as it should include the panel fiducials etc.
 

Thanks everyone for the useful comments.

Mattylad - Yes, we do have ther gerber files.Graphicodes GC-Place seems like a good tool for this. I will recommend it to our assembly company. However, it's pretty expensive and I'm not sure if they will purchase it just for us.

We use Altium Designer for the board design. I don't know what machines are used to populate the boards. This depends on the production lot size, setup time, available machines, etc. I leave that up to the assembly company.

I'm realizing now that it's unusual to combine multiple PCBs, however, it's very practical and economical on our end, so I will continue doing this in the future. One possible method is to reload the panelized gerber files in Altium, and copy/paste the individual PCB designs (from Altium) on top of it, at the correct location. We should then be able to re-generate a single pick-and-place file. It's not very pretty, and could lead to some errors if not done carefully, but it should work.

Writing a Python script to offset and rotate the various boards also seems like a good approach. However, it's not something I can try and validate myself. I will suggest it to our assembly company.



This problem really made me realize that some useful data is dropped along the way. Ultimately, it's the PCB assembler's job to combine the files. However, it still doesn't make sense to me that the changes applied to the PCBs can't be applied to the pick and place files as well by the PCB manufacturer.


Thanks,
 

If your assembly house cannot cope with this then I would suggest that they are not that good. I only say this because they should be able to do this either using software like suggested or manually on the machines to set it up.

You do not even need to write python scripts.

Something like this can be done in Excel.

The key issue is getting to know the exact origin of the board corners in the panel. SO getting the entire panel Gerbers from the manufacturer is essential in that. You can use GC-Prevue (free) to find this.
 

Indeed, excel can be used, but what if this issue happens more than once? If you have some scripts in place, it can you save hassle when design changes are needed, or if a new project comes along.
My personal suggestion is that a generic python script is favorable above some crappy excel macro (vba) stuff.

Stefaan
 

Indeed, excel can be used, but what if this issue happens more than once? If you have some scripts in place, it can you save hassle when design changes are needed, or if a new project comes along.
My personal suggestion is that a generic python script is favorable above some crappy excel macro (vba) stuff.

IMHO, if you are most familiar with Excel, then it is favorable compared to any language you don't know, at least initially. I can (and have) prototyped programs in an Excel spreadsheet, without any "crappy Excel macro (vba) stuff". Generalized too, so that when design changes were made or another project was started (now, recognize these are NOT electronics projects, but servo motor calculations and controls for animatronics), the same spreadsheet was used... Spreadsheets alone are a programming language, even without macros or scripting. Apple Numbers does not provide macros, and is a functional spreadsheet.

You have to be aware that if all you have is a hammer, then a screw begins to look like a nail. But that doesn't preclude using the hammer AND a nail to create a pilot hole for the screw.
 

dj, I accept that excel is also suitable (I use it also a lot).

You can do this type of merge in every programming language that can open a file. The factor of experience with one or another language will be the only factor in the decision how to do it.

Stefaan
 

IMHO the most accurate way is to do it from the panel Gerbers though.

Once you had them then it could even be done in Notepad.

Given that every panel may be different it would take some fancy programming.
 

We can speculate on a lot of possible options, maybe it should be good to know if this is solved now or not.

If not, maybe some more information can be shared by bruj02...

Stefaan
 

I have done numerous panels with different PCB images, an example being a CCT camera insides, where the panel is built up, the boards are broken out and folded together and put in the housing, also other high volume low price goods where assebly costs are paramount.
For each PCB image you require a root Fiducial, make this 0,0 (again for each image) and create a Pick and place file for each PCB. To assemble the panel you read into the P&P software each PCB image and place and rotate them appropiately, saving the data as a panel pick and place file. You can do this with probably ALL pick and place machines. If an assembler cant do this I would be worried about their capabilities.
It is only the same as having a single PCB image steped, where you have a root P&P file that you put the steps in, again the software that comes with pick and place machines will do this, and with visual feedback. The steps and rotations can be got from the panel drawing.
 

SVHB - In the end, our assembly house addressed the situation. They told me they had to enter every component by hand, and it took a whole day. After reading the posts in this thread, I'm not sure exactly why it was so complicated. I presume it simply meant doing things differently than usual - which caused a problem.

I will follow up with them after the Holidays to see how we should deal with similar situations in the future. They are completely swamped right now, as everybody is clamoring for their order before the Holidays. I'll post the solution they used. This situation seems like something the assembly house should be involved with sooner, but ultimately, they should be able to work with many of the scenarios described here.

I like Marce's approach, because it allows more flexibility for the future, in case the PCBs are eventually separated. Thanks to everyone for their input.
 

bruj02, glad to hear you will get your pieces anyway.

But like stated, remeber for next time when choosing a subcontractor. It's their job to support you...
 

I'd worry about them manually entering data, thats where mistakes happen, and in this digital age isnt necessary.
Second svhb, you are the customer, demand digital data transfer.
 

Glad you got it sorted ok. As your using Altium, you might like to look at the “Embedded Board Array/Panalise” function.

You create your designs as separate PCBs as normal. Then when your ready to create your panel, create a blank PCB, then using the “Embedded Board” function, link each design into your panel. Each “Circuit” is indivual, and can rotated, stepped etc.

From this panel, you can create your gerbers, and the pick and place file will be for the panel rather than each circuit.

Another nice touch is that mods to the individual PCB’s, will be carried through to this panel, so you dont need to manualy repopulate the panel each time.

Rob
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top