【原创分享】 Altium Designer 一键导出坐标和BOM脚本,V0.9
本帖最后由 深圳嘉立创-SMT 于 2021-7-3 12:01 编辑这个自定义导出坐标脚本有这些"特点":
0: 没有复杂的设置, 几乎可以一键完成.
1: 脚本自动算出元件的中心点,没找到AD那个API可以使用,于是就自己写了.
2: 焊盘个数大于1 才输出坐标, 那种LOGO之类的元件将会过滤掉,不再会输出坐标. 如果您要导出Mark坐标,那么这个脚本无法导出一个焊盘的坐标,可以将两个焊盘重叠放置.
3: 层信息优先依照焊盘来决定.有些人画的电阻: 丝印,焊盘都在顶层, 但是元件属性在底层....这个脚本被逼的不得已了,脚本强制纠正....
4: Descriptor属性为空时刻不输出坐标文件. 不好意思,位号都没有,我认为坐标也不用输出了.
5: 输出坐标的时候不看Type属性. 不管你设置成什么都将输出坐标.
6: 1号引脚,输出引脚名为1的坐标. 有些人第1引脚实际上是2或别的...这与AD自带的有所不同.
7: 如果焊盘不在顶层或底层, 且元件也不在顶层或底层,则不输出坐标.
开源项目地址:
https://gitee.com/JLC_SMT/PnPcustom
点击下载最新版脚本: //需要注意这是离线文件,我们无法做到有更新通知您.
//V0.9 2021-07-03
增加是否SMD元器件功能
V0.8 2019-9-03
//增加功能:导出BOM时,使相同元器件位号个数不超过200.超过200则再另起一行.
V0.7.1 2019-6-10
//修复BUG, 个别时候元件会使用三点算圆心.改为引脚数等于3,才尝试算圆心
V0.7 2019-5-13
//修改中心点算法,不对称引脚准了一些(三点算圆心,多点算矩形化中心.)
V0.6 2015-6-16
//添加 导出错误信息
//添加 了一些常见的错误字符检查, 例如位号中包含空格. 并直接替换字符
V0.5 2015-5-26
//添加了一些错误说明.例如疑似元件的层信息不对
//导出BOM的时候相同元件,忽略重复位号, BOM简洁
V0.4 2018-5-11 17:30
//添加导出BOM功能. BOM和坐标一键完成
V0.32018-5-04 19:21
//添加了些"自动纠正的" 功能
//如果焊盘不在顶层或底层, 且元件也不在顶层或底层,则不输出坐标.
V0.2 2017-11-06 21:25更新了一个版本,.到此版本导出功能基本与AD16以下自带的导出样式一致了, 基本可以作为测试版使用了
//修复BUG,居然触发了一个数据溢出,当某个坐标累积后会溢出.
//添加 Comment列导出.
V0.1
借鉴了github的开源作品,没学过 delphi 语言,IF语句都还还不熟, 一边看一边改, 基本上完成了我需要的功能. 所以将版本号写成V0.1
使用方法: (下图是GIF, 可能要稍微等一会)
解决问题举例 (其实这些都是设计问题,写这个脚本也是不得已为之.):
层信息优先依照焊盘来决定, 举例, 这个脚本将尝试优先使用焊盘的图层信息
这个脚本将尝试找焊盘个数大于1 才输出坐标, 下图种LOGO之类的元件将会过滤掉,不再会输出坐标.
这个脚本输出坐标的时候不看Type属性. 不管你设置成什么都将输出坐标.
不错,元件表能加上吗 谢谢分享 你用的这个版本是DXP2004吗 atl0402 发表于 2018-5-4 16:53
你用的这个版本是DXP2004吗
Altium Designer 14 试试。多谢分享! 添加导出BOM功能. BOM和坐标一键完成 有尝试过AD软件导出BOM与erp系统对接吗?现在每次都要手动去改,很麻烦。 爱电子1122 发表于 2018-5-11 22:08
有尝试过AD软件导出BOM与erp系统对接吗?现在每次都要手动去改,很麻烦。
正在尝试呢.
打算下一版本直接导出元件编号. 你的AD是正版的? 深圳嘉立创-SMT 发表于 2018-5-12 09:28
正在尝试呢.
打算下一版本直接导出元件编号.
导出元件编号才是正道。 cpholr1 发表于 2018-5-12 11:17
你的AD是正版的?
必须是正版,不正版会被告的。 很不错,关注中 深圳嘉立创-SMT 发表于 2018-5-12 09:28
正在尝试呢.
打算下一版本直接导出元件编号.
期待,我们也试用下
V0.5 2015-5-26
//添加了一些错误说明.例如疑似元件的层信息不对
//导出BOM的时候相同元件,忽略重复位号, BOM简洁
例如输出这种提示信息:
V0.6 2015-6-16
//添加 导出错误信息
//添加 了一些常见的错误字符检查, 例如位号中包含空格. 并直接替换字符 V0.8
//增加功能:导出BOM时,使相同元器件位号个数不超过200. 运行后停在此处,用的AD6,请问是什么原因?
gaolf_2012 发表于 2019-9-11 13:13
运行后停在此处,用的AD6,请问是什么原因?
6可能太古老了,用14试试 这个是研究嵌入脚本了{:smile:} 的确是版本太低造成的,换用高版本16可用 我记得Standard(No BOM)是不输出到BOM的,比如下载接口,还有其他几个选项比如Net Tie 是啥意思,能解释下吗? 用一个 JobFile 就可以搞定了 lucky_jeck 发表于 2019-9-23 11:48
用一个 JobFile 就可以搞定了
不是一回事. 这个脚本是有"特别"功能的. //V0.9 2021-07-03增加是否SMD元器件功能
页:
[1]