EDA365电子工程师网

标题: 分享按元件规格,类型板面分类导出BOM的脚本 [打印本页]

作者: killin    时间: 2010-5-24 10:43
标题: 分享按元件规格,类型板面分类导出BOM的脚本
本帖最后由 killin 于 2010-5-24 10:47 编辑
' h7 H& O; c& B- o: J8 i8 x7 S- Q7 _: `0 ^+ ^. W1 s0 i' j4 _
之前分享了由本人原创的导出BOM的一个脚本
* y* H7 [1 L9 z7 \https://www.eda365.com/thread-34091-1-1.html
1 r9 l. a" X( q. `# f* S2 q
# \. R' \3 B; l8 w1 E发了这个帖子之后,有同学提出应该加入依元件规格,类型以及板面分类.同时我发现论坛里已经有一个具备类似功能的脚本(名为PowerPCB,PowerPCB_BOM),但它不支持PROTEL导入PADS的PCB,如果元件值不规范时,导出的BOM元件会有很大的问题.在这里也提醒使用这个脚本的同学注意核对.
- ~# p# c( @! ~! S# D: C' @6 |) M仔细研究这个脚本之后,我对它进行了一番改造,改造后的脚本也可用于PROTEL导入PADS的PCB,可以实现元件按大小,类型以及板面来分类,可对元件值进行规范,同时大大减小出错机率.
& Q: N2 R" r1 f1 y; I( N5 u下面是简要的说明:, q- Y! G# I  t$ z
    该程序可以依元件规格,类型以及板面分类.元件类型分类包括:电阻(R),电容(C,E),电感(L),接插件(J,CN,CON),IC(U),晶振(Y),二极管(D,ZD,LED),三极管(Q),磁珠(FB),天线(ANT),开关(S,SW),保险(F),跳线,短路点,测试点(JP,TP).
" W2 d2 v6 L+ b5 T. a6 p+ d; C    元件的编号要依据括号中给出的前缀,程序才能识别归类.如不符合上述原则,程序将会把该元件归类为不确定类型., s" J8 f1 K" ~3 T
    程序可对电阻,电容,电感,保险,磁珠等按规格分类,为了正确识别归类,可以支持的格式(以电容为例)包括:单纯数字(.1,1,10000等),科学计数(103,104),带单位(22P,33uF,2N2,68uF/10V等).为避免混淆,当数字是3位时,规定当尾数是0时,表示的是元件实际的值,这样100表示100pF而不是10pF,当尾数大于0时,才是科学计数,当数字不是3位时,一律当做元件实际的值.另外,不确定的元件值可不填或"?"表示.元件除了主要规格外的其他属性可以用"/"分割,如"68uF/10V".如元件值不符合上述原则,程序将会把该元件归类为不确定类型.
1 M, r& r% P# d  |. x3 }    程序出BOM时,元件值进行了转换的元件将会列出清单,这样即使换算出错,也有迹可循.
8 ], O0 n( _$ b' m$ ~& [* w    程序可对是否按元件所在的板面(一般为TOP和BOTTOM)分类进行选择
" ~4 y) r$ p  v9 |) A    下面是一些基本的演示:+ h4 z8 F6 @: ^8 w+ ~/ e# S5 h' @' \
    下图一,输出BOM的基本样式,如果选择按板面输出BOM,将会用红色标示当前层元件数,用蓝色标示当前分类元件数,10N,103,10000之类的元件值会转换为10nF.
( q7 Q1 E0 Y' ^; C    下图二,脚本在运行时会检测第一个元件的值属性是否存在,一般来说PROTEL导入的PCB,元件值在Comment属性中,OrCAD和Logic导入的PCB,元件值在Value属性中,如果没有找到这些属性,会弹出对话框,请你进行选择.
  B2 D' K$ @1 i0 F. @* P    下图三,启动程序会对是否按元件所在的板面分类进行选择,若选择"YES",元件将按板面分类,"NO"则不按板面分类.
3 v" f" w1 ~- h    下图四,输出BOM完成后,将会列出清单,标记有"YES"的元件进行了值的换算,如需要检查BOM的正确性可依据些清单.
3 k  w  j+ C; j5 n) ~! Q. Z   
, H1 U% [# l/ F3 ~8 }" d    衷心希望它能给各位同学带来帮助.如果使用中有问题或是建议,也请大家赐教,程序中留有个人邮箱,欢迎交流.另外,编写本程序仅出于个# u7 R% w- u1 x6 |- g# q
人兴趣,编写过程中也仅能考虑到常见的情况,若因输出BOM出错造成你的损失,本人概不负责.
3 Z+ g; M) Y5 `' k1 n* |+ M* w% S, ?$ p' g& m' G5 }8 U
下面这个是脚本: EXCEL BOM.rar (7.05 KB, 下载次数: 472) 5 B- J9 l3 ^4 g. q7 o

* T6 J# u+ Z) B+ w0 k% E( M* j; V  x* S+ q图片:5 W9 G5 u4 i/ p; S. m9 l
  P6 }/ L; g( _# c0 Y
3 Z& w* d1 B2 M1 p+ N7 ~" r

9 S8 }' @9 m+ O, \1 F  d& [+ P- Y9 {; E4 t' q. s
+ J9 F( E6 @* w2 x$ C6 n1 P1 E/ `4 C
4 ]( B7 `) x; |; t% e+ J" c

作者: zy52mm    时间: 2016-6-20 15:37
支持
作者: torrent    时间: 2016-7-15 22:25
支持原创。试用了一下,效果不错
作者: dony1843    时间: 2016-9-13 13:29
感谢分享
作者: qiantan    时间: 2016-11-10 14:24
帮同事找到这里的,LZ的脚本的确比2009年那个好用  https://www.eda365.com/forum.php? ... =412&pid=1873671 `' C5 N% \6 L2 O

作者: qiantan    时间: 2016-11-10 14:25
帮同事找到这里的,LZ的脚本的确比2009年那个好用  https://www.eda365.com/forum.php? ... =412&pid=187367! Z& y/ L9 c. P# ~2 T

作者: shenghuanli    时间: 2016-11-11 10:22
用楼主2010-4月份的,很准确,再试试这个,谢谢
作者: huazimen    时间: 2016-11-23 14:09
没有威望,能否发我邮箱,1043601854@qq.com
作者: littlecrow    时间: 2017-3-4 11:45
这个应该比较好
作者: mcu_mouse    时间: 2017-6-22 17:58
看到了这个教程,之前到处找都没找到这个脚本。找了2天,终于找到这里来了。。感谢楼主




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2