查看:
48569
回复: 30 |
【原创分享】 Altium Designer 一键导出坐标和BOM脚本,V0.9
|
|||
|
发表于2017-11-06 09:16:17
|
只看该作者
1#
电梯直达
这个自定义导出坐标脚本有这些"特点": 0: 没有复杂的设置, 几乎可以一键完成. 1: 脚本自动算出元件的中心点,没找到AD那个API可以使用,于是就自己写了. 7: 如果焊盘不在顶层或底层, 且元件也不在 顶层或底层, 则不输出坐标. 项目地址: 点击下载最新版脚本: PnPcustom.zip //需要注意这是离线文件,我们无法做到有更新通知您. //V0.9 2021-07-03 V0.8 2019-9-03 //增加功能: 导出BOM时,使相同元器件位号个数不超过200. 超过200则再另起一行. V0.7.1 2019-6-10 //修复BUG, 个别时候元件会使用三点算圆心.改为引脚数等于3,才尝试算圆心 V0.7 2019-5-13 //修改中心点算法,不对称引脚准了一些(三点算圆心,多点算矩形化中心.). V0.6 2018-6-16 //添加 导出错误信息 //添加 了一些常见的错误字符检查, 例如位号中包含空格. 并直接替换字符 V0.51 2018-5-26 //添加了一些错误说明. 例如疑似元件的层信息不对 //导出BOM的时候相同元件,忽略重复位号, BOM简洁 V0.4 2018-5-11 17:30 //添加导出BOM功能. BOM和坐标一键完成 V0.3 2018-5-04 19:21 //添加了些"自动纠正的" 功能 //如果焊盘不在顶层或底层, 且元件也不在 顶层或底层, 则不输出坐标. V0.2 2017-11-06 21:25 更新了一个版本, . 到此版本导出功能基本与AD16以下自带的导出样式一致了, 基本可以作为测试版使用了 //修复BUG, 居然触发了一个数据溢出,当某个坐标累积后会溢出. //添加 Comment列导出. V0.1 借鉴了github的开源作品,没学过 delphi 语言, IF语句都还还不熟, 一边看一边改, 基本上完成了我需要的功能. 所以将版本号写成V0.1 使用方法: 先打开 PCB 和 脚本项目. 然后在PCB界面下运行脚本
解决问题举例 (其实这些都是设计问题, 写这个脚本也是不得已为之.): 层信息优先依照焊盘来决定, 举例, 这个脚本将尝试优先使用焊盘的图层信息
这个脚本将尝试找焊盘个数大于1 才输出坐标, 下图种LOGO之类的元件将会过滤掉,不再会输出坐标。
这个脚本输出坐标的时候不看Type属性. 不管你设置成什么都将输出坐标.
|
|||
|
发表于2017-11-06 14:20:04
|
只看该作者
2#
牛逼呀 不然每次手动改
|
|||
|
发表于2017-11-06 16:50:51
|
只看该作者
3#
大佬,怎么用啊这个脚本,麻烦详细说一下,谢谢
|
|||
|
发表于2017-11-06 17:05:26
|
只看该作者
4#
先打开 PCB 和 脚本项目. 然后在PCB界面下运行脚本
|
|||
|
发表于2017-11-23 13:34:57
|
只看该作者
5#
请教,为什么会出现这种提示? |
|||
|
发表于2017-11-23 14:25:49
|
只看该作者
6#
从压缩包 打开PCB文件!
|
|||
|
发表于2018-05-04 16:15:36
|
只看该作者
7#
更新了一个版本
|
|||
|
发表于2018-05-11 17:35:14
|
只看该作者
8#
添加导出BOM功能
|
|||
|
发表于2018-05-26 16:33:54
|
只看该作者
9#
V0.5 2015-5-26 //添加了一些错误说明. 例如疑似元件的层信息不对 //导出BOM的时候相同元件,忽略重复位号, BOM简洁 例如输出这种提示信息:
|
|||
|
发表于2018-06-16 11:44:27
|
只看该作者
10#
V0.6 2015-6-16 //添加 导出错误信息 //添加 了一些常见的错误字符检查, 例如位号中包含空格. 并直接替换字符 |
|||
|
发表于2018-11-15 04:30:09
|
只看该作者
11#
不规范封装的旋转角度能自动计算吗?
|
|||
|
发表于2018-11-15 09:15:03
|
只看该作者
12#
不能.
|
|||
|
发表于2019-05-13 20:54:11
|
只看该作者
13#
V0.7 2019-5-13 //修改中心点算法,不对称引脚准了一些(三点算圆心,多点算矩形化中心.). |
|||
|
发表于2019-05-15 13:50:31
|
只看该作者
14#
在网上找到一个脚本,可以把丝印定位到元件中心,并调整尺寸,用了半年很好用! 强烈建议把这个对其丝印的脚本集成进去,同时脚本设置为按钮的形式(调用Run_Script要点好几下,影响效率) |
|||
|
发表于2019-06-06 16:34:38
|
只看该作者
15#
你好,为什么会出现这样的错误提示? |
|||
|
发表于2019-06-10 14:59:47
|
只看该作者
16#
AD 版本是? 脚本版本是? 能否提供PCB文件复现? |
|||
|
发表于2019-07-11 17:04:56
|
只看该作者
17#
"有些人画的电阻: 丝印,焊盘都在顶层, 但是元件属性在底层...",就如图片里所示,请问这是怎么导致的呀,怎样才能将丝印、焊盘、元件属性修改成一致的呢?
|
|||
|
发表于2019-07-23 11:50:40
|
只看该作者
18#
为什么用你们的脚本生成的坐标文件在嘉立创SMT还是不行
|
|||
|
发表于2019-07-25 09:24:21
|
只看该作者
19#
描述一下你遇到的错误. 并贴上PCB文件.
上面这一句 没人 能猜到你遇到什么问题. |
|||
|
发表于2019-08-07 20:37:59
|
只看该作者
20#
导出来什么都没有,是什么问题? AD13,器件封装不是嘉立创的标准封装不行吗? |
|||
|
发表于2019-08-08 09:56:01
|
只看该作者
21#
你这个幸亏是 使用这个脚本导出了坐标. 自带功能都检查不出问题的. 问题1: 上面这个 D7,D8,D9 元器件层都是有问题的. 问题2: 位号内包含空格, 下一步自动解析是可能会拆分成 [Y] [Moduli] 两个位号. 这种习惯最好不要有,容易出问题. D7,D8,D9 元器件层都是有问题的. 看这段描述:
|
|||
|
发表于2019-09-12 12:55:31
|
只看该作者
22#
一些辅助性的元件,比如下载口,跳线啥的, 不需要SMT的。设置元件属性TYPE 为 Standard(No BOM) 时,貌似 BOM 和元件列表不应该出现的,AD自带的都不会输出,这个脚本提示了警告,但会强制输出。
|
|||
|
发表于2019-09-12 13:33:50
|
只看该作者
23#
你已经是AD的高手了, 非常熟悉这些属性, 有导出问题也不是特别大,到时也可以自己删掉. 这个属性就怕不小心设置了,自带的功能是连个提示也没有的.
|
|||
|
发表于2019-12-06 18:27:38
|
只看该作者
24#
SuppliersPartNumber_text :=''; //Designator IteratorSch := CurrentSchDoc.SchIterator_Create; IteratorSch.AddFilter_ObjectSet(MkSet(eSchComponent)); Try AComponent := IteratorSch.FirstSchObject; While AComponent <> Nil Do Begin if Designator_text=AComponent.Designator.Text Then begin Try PIterator := AComponent.SchIterator_Create; PIterator.AddFilter_ObjectSet(MkSet(eParameter)); Parameter := PIterator.FirstSchObject; While Parameter <> Nil Do Begin if Parameter.Name='SuppliersPartNumber' Then SuppliersPartNumber_text:= Parameter.Text; break; Parameter := PIterator.NextSchObject; End; Finally AComponent.SchIterator_Destroy(PIterator); End; end; AComponent := IteratorSch.NextSchObject; End; Finally CurrentSchDoc.SchIterator_Destroy(IteratorSch); End; 增加了一节从原理图上找SuppliersPartNumber的,不优化但可以实现功能。不能上传文件,把这节代码贴这。 |
|||
|
发表于2020-01-14 06:53:33
|
只看该作者
25#
用该脚本在AD20.0.10下生成的坐标在SMT订单里面所有元件都是不对齐的,请问是什么原因呢? 用AD自己生成的在SMT系统里也是差不多这样,但是电阻有一半是对齐的。 |
|||
|
发表于2020-07-04 10:03:41
|
只看该作者
26#
请问我这是什么情况,我用另外一个PCB文件运行脚本就没问题
|
|||
|
发表于2020-09-10 16:27:54
|
只看该作者
27#
我的每个PCB打开运行脚本后都是出现这个提示,怎么解决? |
|||
|
发表于2021-06-02 10:58:28
|
只看该作者
28#
3脚圆心算法依旧不准,有没有办法修复
|
|||
|
发表于2021-07-03 11:59:06
|
只看该作者
29#
//V0.9 2021-07-03 增加是否SMD元器件功能 |
|||
|
发表于2021-12-15 11:19:58
|
只看该作者
30#
这个脚本能否增加装配变量的功能。通过设置不同的装配变量,可以自由的选取焊接哪些材料,而不是一股脑的全部焊接了。
|
|||
|
发表于2021-12-15 11:40:20
|
只看该作者
31#
上面这个脚本根据以往的一些投诉和较容易出错的位置做了一些自动化的处理, 脚本并不能适用于所有人, 你已经摸索的很深了, 完全有能力自己输出BOM, 没必要用脚本输出BOM了
|
|