Altium Designer脚本开发不支持功能集锦
EDA软件程序开发 EDA设计自动化 2025年01月24日 20:00 陕西
↑↑↑点击上方蓝字,关注我们!
1.目前可以支持将非高亮图元设置为灰色,如下图左,目前不能实现程序控制图元对象暗高亮,如下图右。
2.程序控制PCB文档在三维视图中任意角度不支持,自动定时PCB动态翻转是可行的。
3.视频程序控制不支持,目前可以手动输出MP4格式的视频。但在脚本系统中,视频输出接口角度控制时序控制未开放。比如有一个应用场景,一个实体的PCB在一个转盘上旋转,PCB中有一个姿态传感器,传感器通过串口发送给Altium,Altium实时的修改当前和实体PCB相同的PCB文件在3维状态下实时动态显示,理论上可以实现此功能,实际上难度非常大。
4.不支持第三方客户端(或ActiveX客户端程序)调用Altium Designer软件作为服务器,因为Altium Designer软件不支持作为ActiveX的服务器,也没在注册表中注册相关的对象。
5.Altium Designer调用CAD软件不支持,准确的来说,Altium Designer不支持在Auto CAD中创建里面的直线、矩形等图形,原因为数据类型不兼容,VBA的中的变量是一种无类型的数据类型,在创建坐标点时无法自动转换为CAD中的对应的数据类型,而AutoCAD的VBA环境中不会受此影响,在Altium Designer中可以打开或关闭Atuo CAD等操作是可以正常处理的。
6.Altium脚本系统面板控件的定时器不支持50ms以下的定时,如将定时器的时间间隙设置到50ms以下,则时间间隙会维持在50ms 以上。
7.不规则发热片自动布线,目前规则的圆形、矩形和方形的发热片布线十分方便和快捷,更大多数的发热片的形状是异形,并且发热板中间还有很区域是空的,不能布线,既要将线路布到发热板上,还要布的美观,这种应用目前使用程序自动绘制还有些复杂。
8.Altium脚本系统不能直接使用单指令多进程的函数,在有些浏览器中的Javascript版本是支持单指令多数据的,在AD.脚本系统经过测试目前不支持。
9.AD脚本系统不能直接使用CUDA,CUDA是英伟达开发的一套计算机并行架构,目前使用方式只能通过中间件实现,比如AD脚本系统中创建一个Matlab16以上的对象,Matlab软件再调用CUDA的资源,在这个操作过程中,需要消耗巨大的调度资源,仅仅是创建一个Matlab对象,打开CUDA关闭CUDA,关闭Matlab就需要数秒的时间,,在某些应用场景是不能忍受这种调度时间消耗的。
10.AD可以使用C程序、VBS、Python、Matlab等语言进行数据加速处理,每次调用这些语言调度有一个好几十毫秒的资源消耗,这个消耗时间是这样来的,当AD脚本系统启动某一个程序后,AD实际是将这个启动请求发送给操作系统,操作系统需要等到下一个时间片才会将启动指定路径下的程序,当然也包括其他系统调度的时间消耗。如果有这么一个功能,要将一个调度后的程序常驻,脚本系统的后台,需要时就启动一下,不需要时就放在那,就像一个函数一样,需要时就调用他执行任务,不需要就不去调用这个函数,目前只有VBS、Matlab、Python软件可以实现这个功能,C程序还实不现,原因为C程序启动后不结束进程,是不能从C程序退出的。
11.Altium脚本系统不能直接访问硬件,如在图形处理时,有大量的数据需要计算,仅仅使用脚本耗时会非常的长,当然将数据发送给C程序非带来很大的加速优势,如果将数据发送给FPGA进行处理的话,数据的执行效率将会提高成千上万倍。这种技术方案目前还停留在想象中,实施起来难度不小。
12.图元对象对比功能:脚本系统的PCB服务器接口中可以获得一个图元对象对比的接口,但此接口的成员属性函数和方法却不能获取,因此通过自带的接口处理图元对象有困难。