本章内容主要介绍genesis自动化程序编写运行环境:首先对genesis2000软件进行简单的介绍;而后介绍genesis2000自动化程序的开发方式和开发语言;最后介绍自动化程序在软件中的接口。
1.1、 genesis2000软件简介:Genesis2000软件是由Orbotech与Valor的合资公司—Frontline公司开发的CAM系统,其目的是为实工程现制前自动化,为CAM处理提供最佳解决方案,由于该软件拥有很强大的功能,很多PCB生产公司都已使用它为CAM 制前服务,笔者认为该软件有以下几方面的优点:1)令人喜欢的操作界面genesis2000软件界面设计人性化,操作简单,易学。
2)用ODB++格式,使用ODB++格式有以下三个优点:(1):使设计和制造之间数据交换最优化。
(2):目前唯一性的可扩充的结构。
(3):更精确的数据描述。
3)强大的操作辅助指令genesis2000软件的操作辅助指令可以简化很多复杂的工作,很简单的操作就可以达到我们想要的目的。
4)大的分析和优化功能genesis2000软件的Analysis和DFM功能在精密度要求越来越高的PCB行业显得极为重要,它自动进行精密的分析和优化,而用手动操作根本不可能实现。
5)自动化程序开发genesis2000软件的自动化程序可以让我们任何有规律的操作,有迹可寻的设定变成自动化,大大节省制作时间和减少人为误操作。
6)不断的围绕用户升级genesis2000软件不断围绕用户的需求进行开发新的实用的功能,笔者在使用的几年间,genesis2000开发了很多新的功能。
1.2:genesis2000软件自动化程序开发方式和语言:1.2.1genesis2000软件自动化程序的编写方式可分为以下三种:1)scripts2)hooks3)forms and flows1.2.2genesis2000软件自动化程序编写语言genesis2000软件自动化程序编写语言可以用多种语言进行实现:如SH、CSH、BSH、KSH、TCL/TK、PERL/TK,等等,本书主要介绍CSH,和PERL/TK两种比较常用的编写语言。
1.3:genesis2000自动化程序的接口:1.3.1:scripts程序接口:1.3.1.1:scripts存放目录:当我们安装完genesis后,无论您使用的是什么系统,都会存在genesis/sys/scripts这个路径,编写好的Sripts我们一般放在/gnesis/sys/scripts的目录下,这是genesis2000软件专门提供存放scripts的地方,使用者也可以根据自己爱好存放在其它的地方,但建议存放在该目录下,操作起来比较方便。
1.3.1.2:scripts菜单:当我们进入genesis2000软件后,可以在任何一个界面找到file->script菜单,点击会在右边出现6个scripts的子菜单,其功能在下面进行详细解释,其界面如下图1.1所示:图1.1(1):script record—>程序录制:其功能为将我们操作的动作一一记录下来。
因我们在编写的大部分自动化程序时,需要写入很多的操作指令,这样不仅需要我们对每个操作指令的规则都很了解,而且容易造成输入错误,编写程序就显得很麻烦;而程序录制可以让我们不必再手动输入这些指令,只需要运用程序录制功能,将我们操作的动作一一记录下来,保存为一个文件,然后对这个文件进行改动即可。
打开record菜单会出现如下图1.2所示界面图1.2其各个按键功能如下(图中序号和下面序号请对照阅读):(1):记录程序指令的窗口。
(2):record:点击后程序开始录制。
(3):stop:停止录制。
(4):play:运行录制的程序。
(5):保存程序的目录和程序名。
(6):save:保存录制指令。
(7):pause:暂停录制程序。
在按下录制后,我们的任何在genesis2000软件里面的操作动作都会被记录下来,下面我们录制一个简单的程序。
操作步骤如下:(a):进入genesis2000软件,并进入图形编辑界面。
(b):打开程序录制界面,点击record开始录制。
(c):将层COMP设置为工作层,(如无COMP层请添加一个名为COMP的层)。
(d):在COMP层中的X坐标为5,Y坐标为5的位置加一个直径为5mm的圆pad,此时我们将会看到在操作记录窗口中有“CO M display_layer,name=comp, display=yes,number=1,COM work_layer,name=comp COM add_pad, attributes=nox=5,y=5,symbol=r5000……”等语句。
(e):点击stop,停止录制(f):在script栏输入addpad,然后点击“save”按钮,此时我们可以在/genesis/sys/scripts目录下看到一个名为addpad的文件,可以用vi打开查看内容。
(g):点击paly,我们可以看到其运行结果如下,首先显示COMP层,然后将COMP层设置为工作层,最后在COMP层的5,5位置加一个直径为5mm的圆PAD。
(2):scripts—>run:运行程序:其功能是将我们编写好的程序在genesis2000中执行。
其打开的界面和功能如下图1.3所示:其各个按键功能如下(图中序号和下面序号请对照阅读):(1):ok:运行程序并关闭窗口。
(2):apply:运行程序但不关闭运行窗口。
(3):Close:关闭运行程序窗口。
(4):程序运行结果返回窗口。
(5):显示当前运行程序的JOB名称和STEP名称。
(6):设置程序运行参数。
(7):当前正在运行的程序名。
(8):运行程序的目录。
(9):如设置为Local则路径栏路径自动变为:$user/.genesis/scripts,(其中$user为用户目录,如/home/genesis。
如果设置为Global,则路径栏自动变为/genesis/sys/scripts。
下面我们用addpad程序进行运行演示,其操作步骤如下:(a):进入genesis2000软件,并进入图形编辑界面。
(b):打开程序运行界面。
(c):在scripts栏输入addpad或者双击打开选择窗口进行选择addpad(d):左键点击“apply”,开始运行程序。
(e):点击paly,我们可以看到其运行结果如下,首先显示COMP层,然后将COMP层设置为工作层,最后在COMP层的5,5位置加一个直径为5mm的圆PAD。
(f):同时在程序运行结果返回窗口,将显示:“display_layer,name=comp,display=yes,number=1,work_layer,name=comp,add_pad,attributes=no,x=5,y=5,……”其中最后一句,如果显示为“scrips /genesis/sys/scripts/addpad ended OK,则为该程序运行完全正确。
如果显示其它信息则有可能程序某个地方有错误,需要进行修正,我们可用程序除错器进行检测是那些语句错误。
(3):scripts—>debug:程序除错器:如果某个程序运行有问题,利用该功能进行测程序那些语句有错误。
其打开的界面如下图1.4所示:其各个按键功能如下(图中序号和下面序号请对照阅读):(1):执行指针,表示正在运行那一行。
(2):程序运行中断点,可用中键设置,以区分问题段。
(3):运行下一行程序,且可切入子程序进行逐行试验。
(4):运行下一行程序。
(5):执行程序到第一个中断点。
(6):继续执行程序到下一个中断点。
(7):显示()中变数的值。
(8):不执行该行,将指针下移一行。
(9):程序运行结果返回窗口,且返回指令执行结果是否正确。
(10);显示()运行结果。
(11):切入子程序后自动执行完该子程序,并移动主程序指针到下一行。
(12):程序指令执行动作显示窗口。
(13):表示程序运行在第几行。
(14):可将变数放在里面,或语句放在里面,利用print()或Eval()返回结果。
(15):设置程序运行参数。
(16):程序除错器菜单。
其各个菜单功能如下:(1):File→Debug script—>载入一个程序。
(2):File→Edit script→打开文字编辑器,编辑载入的程序。
(3):File→Update Script→当我们修改程序后更新程序。
(4):File→Close→关闭程序除错器。
(5):Edit→goto line→直接跳到程序任何一行。
(6):Edit→search→查找程序中某一个单词或语句。
(7):Execution→Kill→结束正运行的程序。
(8):Execution→Show Breakpoints→显示程序的断点(9):Execution→Delete All Breakpoints→删除所有的断点(10):Execution→Break at()设置断点下面我们还用addpad进行演示,请首先用文字编辑器将addpad程序中,y=5,删除。
然后按下面步骤进行操作:(a):进入genesis2000软件,并进入图形编辑界面。
(b):打开程序除错器界面。
(c):用File→Debug script菜单载入addpad程序。
(d):在第一句话处设置一个断点。
(e):点击run开始运行程序,我们可以看见程序在第一句运行完后就停止了。
(f):点击next继续运行下一条程序;当运行到添加Pad语句时,出现错误,然后我们查看则为语句中没有y 坐标的值。
大家可以按照上述的方法去设置各种问题,然后用程序除错器来进行试验,大家一定要掌握好程序出错器,为以后编写程序调试打下良好的基础。
(4):scripts→History:指令运行记录:该功能和录制功能有着相同之处,但是该功能首先我们要将scr_history configuration设置为yes,然后我们不需要打开指令录制功能,而所有的操作动作也将被记录,当我们打开scripts→History菜单时,所有我们进入genesis2000软件后的操作都被显示在history viewer中,如图1.5所示:其各个按键功能如下(图中序号和下面序号请对照阅读):(1):如设置为Local则路径栏路径自动变为:$user/.genesis/scripts,(其中$user为用户目录,如/home/genesis。
如果设置为Global,则路径栏自动变为/genesis/sys/scripts。
(2):refresh:为刷新指令运行记录。
(3):save:保存记录。
(4):run:运行记录。