Author Topic: Library Organisation  (Read 10911 times)

0 Members and 1 Guest are viewing this topic.

Offline logictomTopic starter

  • Supporter
  • ****
  • Posts: 336
  • Country: au
Library Organisation
« on: March 05, 2012, 12:53:56 am »
How do people organise their schematic libraries?
For instance- a resistor do you create a generic symbol with no value/tolerance and then add the different footprints to that one symbol then in the schematic add the value/tolerance and select the appropriate footprint?
I was just wondering which way is best for easy of use/reducing repetition/ease of creating BOM
 

Offline EEVblog

  • Administrator
  • *****
  • Posts: 38594
  • Country: au
    • EEVblog
Re: Library Organisation
« Reply #1 on: March 05, 2012, 03:59:52 am »
No absolute best way to do it of course, everyone seems to have their own preferred method.
For generic stuff like resistors I usually just copy-paste from an existing schematic. And once the schematic is finished I'll do a final global pass to change the footprints to whatever is desired for that particular project.
As for a library component, a generic blank one with different verified footprints would be the way to go. But it annoying to have to chnage footprint on each one placed, so better to do either a global replace like I do, or edit once and then copy'n'paste from then on.

Dave.
 

Offline dfnr2

  • Regular Contributor
  • *
  • Posts: 240
  • Country: us
Re: Library Organisation
« Reply #2 on: March 05, 2012, 04:09:44 am »
How do people organise their schematic libraries?
For instance- a resistor do you create a generic symbol with no value/tolerance and then add the different footprints to that one symbol then in the schematic add the value/tolerance and select the appropriate footprint?
I was just wondering which way is best for easy of use/reducing repetition/ease of creating BOM

If you want to be able to use the automatically generated BOMs, then you need to have a separate library entry for each resistor value, and then duplicate that for each type of size/form factor, power handling capability, type, etc.  It seems cumbersome, but altium does have a way to help you with this. 

- In a fresh library, create one part with all the parameters you want, including manufacturer, links to references (manufacturer web links, datasheets, etc.), part number, value, etc.
- Go to Tools->Parameter editor.  You will see a spreadsheet of all the parameters.
- Select all, then copy
- Paste into Excel
- Cut the row, then paste it over the next few hundred rows
- Generate all the E96 values using the formula 10^(d+(n-1)/96) where d is the decade, and n is a number from 0 to 95; for E24 values, you'd use 24 and 0-23 instead.  You can generate these in Excel, if you're good with Excel, or generate them using BASIC, Perl, Python, etc, and print them out, importing into excel, then cut&paste.  Use these generated values to fill in the "value" and "part number" fields in the spreadsheet.
- Cut the whole lot, and paste into the parameter editor.
-Save the library.
-Copy the library
-for each new library (different sizes, etc.) you can cut & paste manufacturer info, reference info, and part numbers.  Some of this may be as simple as using the search-and-replace function in excel to change part number strings.

Kind of a pain, but worth it if you're using lots of values.  You'll thank yourself every time you simple have the part you need to place, or when your automatically generated BOM's are viable.  One of the huge reasons I moved from Eagle to Altium was because I was spending way too much time on my BOMs, and it was hard to keep the BOM in sync with designs, and any little BOM fix for one project would have to be replicated for every project.

If you're not making a company library, and you use the same (not too numerous) values over and over, a reasonable approach would be to just start with one good resistor, then copy it and edit the values for each new resistor you place, until you build up a nice arsenal.  If you are doing a lot of values at once, though, you really want to use the parameter editor.

Dave

« Last Edit: March 05, 2012, 04:17:54 am by dfnr2 »
 

Offline gxti

  • Frequent Contributor
  • **
  • Posts: 507
  • Country: us
Re: Library Organisation
« Reply #3 on: March 09, 2012, 12:48:58 am »
You don't have to do any of that! You can set the BOM to group by any set of parameters that you want. By default it's "Comment" and "Footprint", which works for me because I usually put values in the "Comment" field, but if you like to use the "Value" field then just drag that into the "Group By" box at the left of the BOM and it'll split up your parts by value.
 

Offline dfnr2

  • Regular Contributor
  • *
  • Posts: 240
  • Country: us
Re: Library Organisation
« Reply #4 on: March 12, 2012, 01:59:10 am »
You don't have to do any of that! You can set the BOM to group by any set of parameters that you want. By default it's "Comment" and "Footprint", which works for me because I usually put values in the "Comment" field, but if you like to use the "Value" field then just drag that into the "Group By" box at the left of the BOM and it'll split up your parts by value.

A BOM may have different purposes.  A web page, class project, or hobby project may just require the values.  However for many applications, the part number, tolerances, etc. are important.   Adding parts the way you describe, you will end up spending inordinate time syncing the BOM and the design.  It's better to have a "part number" field and stick that directly into the BOM, along with other key fields, such as "allow substitution", RoHS status, internal part database number, etc.  You don't want to be filling in those fields for every part you place, and you don't want to make mistakes typing in those values.  Once you have a library built up, you're actually doing much less work than filling in values one-by-one. 

Filling in values works well for Eagle and some more limited packages, but Altium makes it trivial to build up the library.  In my case, for my first project, I did use the spreadsheet to build up multiple values at once, but since usually use only a small set of values, I just duplicate, e.g., a resistor, edit the value in the duplicate to create a whole new part with the desired value.  Then I never have to touch the part#, etc. again.

Dave

Dave
 

Offline Chris

  • Contributor
  • Posts: 13
  • Country: gb
    • PCB Component Libraries
Re: Library Organisation
« Reply #5 on: May 03, 2012, 11:56:24 am »
As suggested above database libraries are the way to go, they take a bit of time to plan and set up but once they are up and running they save a lot of time. Especially at BOM export stage, you can included the parameters from your DB and add, exclude group etc by anything you want... Can you tell I like a bit of Altium Databases.

We even have it intergrated with our MRP so that we get live(ish) stock in stores and last buy cost. Next step is to get the MRP to hold the schematic ref etc so I can just link straight to that. One part one, one BOM, I can dream.
Free to download Schematics Symbols and PCB Footprints.
www.pcbcomponentlibraries.com
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8550
  • Country: us
    • SiliconValleyGarage
Re: Library Organisation
« Reply #6 on: May 03, 2012, 01:55:00 pm »
I also work with custom libraries. I made one huge integrated library tih multiple schematic and pcb linraries. I have a lib with all 0603 resistors , one with all 0805 and so on. I used a script to generate the parts from a base symbol. I have a resistor 0805 r-tbd. To be defined. The script clones this , applies e48 series and renames ir.
I have manufacturer and supplier links in there.
I only use digikey and mouser so its easy. I also only use fixed manufacturers like tdk , stackpole , murata and a few others. (that too has its reasons, but they are not important unless you work where i work)
When BOM time arrives , altium pulls in whatever i want. I spend zero time on output generation. I have a template set up for both pcb manufacturere and the assembly house. The output is formatted and dropped in a correct directpry structure. All i have to do is zip the folders and email them out.

I also modify schematic symbols. Like for ic's. I typically copy a known good one from the altium llibs , then move the pins around. Since you can make variants in schematic this is easy. I hate the stupid rectangle with pins in the order they are on the chip. The schematics are horrible, crossing wires everywhere. Nothing fits. And don't get me started about schematics that just have a collection of netnames scattered on pins and no wires at all.. Those are totally unreadable.

A schematic should be a piece of art. You need to be able to follow a signal throughout without getting lost in a maze. So i would frequently draw part of the schematic with the passives, cleanly plan it out , go back to the linrary and move the pins on the ic so they match the schematic. I just store this as a variant in the schematic. Altium does not care anyway.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline twistedresistor

  • Contributor
  • Posts: 38
  • Country: 00
Re: Library Organisation
« Reply #7 on: July 06, 2012, 09:36:29 am »
- In a fresh library, create one part with all the parameters you want, including manufacturer, links to references (manufacturer web links, datasheets, etc.), part number, value, etc.
- Go to Tools->Parameter editor.  You will see a spreadsheet of all the parameters.
- Select all, then copy
- Paste into Excel.
.
.
.
- Cut the whole lot, and paste into the parameter editor.

If only it would work... Using AD10 and Excel 2003 and I'm not able to Copy and Paste back and forth. If i have 2 Components in the list already it pastes rubbish into Excel.
If I want to paste something from Excel into AD it doesn't even bother to create new rows
« Last Edit: July 06, 2012, 06:36:33 pm by twistedresistor »
 

Offline samarkh

  • Contributor
  • Posts: 13
Re: Library Organisation
« Reply #8 on: July 20, 2012, 10:01:04 am »
Wasn't there a recent video on this subject? I cant find it any where at the moment. Maybe I dreamt it.

Yours Simon M.
 

Offline twistedresistor

  • Contributor
  • Posts: 38
  • Country: 00
Re: Library Organisation
« Reply #9 on: July 20, 2012, 02:10:05 pm »
Wasn't there a recent video on this subject? I cant find it any where at the moment. Maybe I dreamt it.

Dave did a production video about his µCurrent, an extended one about the µSupply and recently one for his new version of the µSupply (with the LED row) where he used Altium. But none of them included BOM-Stuff.

Or do you mean a on the Altium Site?

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf