当我为Altium Designer编写最大的脚本时

15,680行,800,053个字符-这恰好是今天我的脚本在Altium Designer(用于开发印刷电路板的系统)中创建的尺寸。

图片

开始


2014年,我担任设计工程师,开发了电路板。 军事接受,完整设计文档(CD)的准备,ESKD的标准控制-所有这些使澳大利亚人-美国-美国人软件(即Altium系统)敬畏。 由于它们与苏联的GOST无关,因此图纸设计的旧说明和标准也应遵守。 我们部门的一名员工有时会花一整天的时间,以便使图纸能满足设计CD的所有规则和规定。
现在大约需要10分钟。

我决定,您可以简化自己以及十几个人在工作中的生活。 我开始弄清楚,发现有一个开放的API,开始看示例,瞧,我的第一个Altium脚本已经在画板上画了一条线–欢乐无止境。

慢慢一点一点地,我扩展了我的编程知识,因为在那之前我没有太多的知识,所以我记得在大学里摆了一个学期,仅此而已。

第一个界面


需要指出的是,需要创建接口,一开始就是这样:

图片

这个版本已经知道如何绘制尺寸,带有箭头的标注。

应该理解,文档中没有特殊说明,没有人使用过API中的函数,只有github上的一些脚本和标准altium脚本方面的经验。 Wiki上从类别至今的描述:

SetState_Enabled method (IPCB_Primitive interface) Syntax Procedure SetState_Enabled (Value : Boolean); Description Example See also IPCB_Primitive interface 

和整个描述,尽管可以通过反复试验确定其工作方式。

每次引入新功能都是一种乐趣,因为当您看到人们如何使用您的工作并且一切顺利时,不是为什么要创建程序。 在此阶段,草拟图纸的时间已经减少了将近一半。

发展历程


下一个版本已经看起来像这样:

图片

她已经知道如何在板中插入图纸,为工程图填充多边形,为工程图插入网格和其他元素。

主要问题是Altium开发环境是用于开发电路板的系统。 它没有足够的工具来设计CD,而按照俄罗斯的标准,则更多。 基本上,脚本扩展了环境的标准工具箱,因此您也可以开发CD并进行打印。

例如,我实现了将不同格式的工作表直接插入代码中,没有创建单独的文件。 我为此使用了excel表,将格式手动插入到pcb文件中,选择了所有行的所有属性,其坐标,宽度,文本坐标等。 并将所有这些放到常规数组中 然后,脚本按顺序在board文件本身中创建了每个格式行。 因此,对于所有格式的每一页。

我们的日子


现在程序看起来像这样:

图片

图片

我从来没有当过设计师,有时我不得不在任何地方雕刻按钮,我研究了最著名的CAD系统,菜单,设置,下拉按钮等的制作方法。

这是脚本本身的示例
图片

图片

船上总数:

  • 超过50种设置,将它们保存在电路板文件中
  • 更改电路板时更新图纸
  • 自动将视图插入图纸中心
  • 一键式PDF生成
  • 通过实时重新计算偏差来编辑尺寸
  • 径向网格,四面网格,风险,可自定义间距
  • 以txt格式保存缩略图以供将来使用

还有更多。

花了很多神经,力量,耐心,不眠之夜。 在工作中制作图纸是无价的。

剧本是我第四年独自写的,没有使用gita,深色主题等。 只有帕斯卡,只有铁杆。 感谢您翻阅至最后,我将很高兴进行交流!

PCB内部绘制图的示例

程序版本尝试

Source: https://habr.com/ru/post/zh-CN431848/


All Articles