复习:项目11输出文件11.1输出PDF文件11.2生成Gerber文件11.2.1Gerber文件简单介绍11.2.2输出Gerber文件输出NCDrill文件11.3创建材料清单(BOM)项目12层次原理图及其PCB设计任务描述本教材前面介绍的常规电路图设计方法,是将整个原理图绘制在一张原理图纸上,这种设计方法对于规模较小,简单的电路图的设计提供了方便的工具支持。但当设计大型、复杂系统的电路原理图时,若将整个图纸设计在一张图纸上,就会使图纸变得过分复杂不利于分析和检错,同时也难于多人参与系统设计。AltiumDesigner支持多种设计复杂电路的方法,例如层次设计、多通道设计等,在增强了设计的规范性的同时减少了设计者的劳动量,提高了设计的可靠性。本项目将以电机驱动电路为例介绍层次原理图设计的方法,以多路滤波器的设计为例介绍多通道电路设计方法。它将涵盖以下主题:自上而下层次原理图设计自下而上层次原理图设计多通道电路设计电机驱动电路的PCB设计多路滤波器的PCB设计了解层次原理图、模块,设计包含子图符号的父图(方块图)、子图的含义了解“自上而下”和“自下而上”这两种层次电路设计方法熟练掌握自上而下的层次原理图设计教学重点:自上而下的层次原理图设计教学难点:自上而下的层次原理图设计教学目的及要求:12.1层次设计对于一个庞大和复杂的电子项目的设计系统,最好的设计方式是在设计时应尽量将其按功能分解成相对独立的模块进行设计,这样的设计方法会使电路描述的各个部分功能更加清晰。同时还可以将各独立部分分配给多个工程人员,让他们独立完成,这样可以大大缩短开发周期,提高模块电路的复用性和加快设计速度。采用这种方式后,对单个模块设计的修改可以不影响系统的整体设计,提高了系统的灵活性。为了适应电路原理图的模块化设计,AltiumDesigner提供了层次原理图设计方法。所谓层次化设计,是指将一个复杂的设计任务分派成一系列有层次结构的、相对简单的电路设计任务。把相对简单的电路设计任务定义成一个模块(或方块),顶层图纸内放置各模块(或方块),下一层图纸放置各模块(或方块)相对应的子图,子图内还可以放置模块(或方块),模块(或方块)的下一层再放置相应的子图,这样一层套一层,可以定义多层图纸设计。这样做还有一个好处,就是每张图纸不是很大,可以方便用小规格的打印机来打印图纸(如A4图纸)。AltiumDesigner支持“自上而下”和“自下而上”这两种层次电路设计方式。所谓自上而下设计,就是按照系统设计的思想,首先对系统最上层进行模块划分,设计包含子图符号的父图(方块图),标示系统最上层模块(方块图)之间的电路连接关系,接下来分别对系统模块图中的各功能模块进行详细设计,分别细化各个功能模块的电路实现(子图)。自顶向下的设计方法适用于较复杂的电路设计。与之相反,进行自下而上设计时,则预先设计各子模块(子图),接着创建一个父图(模块或方块图),将各个子模块连接起来,成为功能更强大的上层模块,完成一个层次的设计,经过多个层次的设计后,直至满足项目要求。层次电路图设计的关键在于正确地传递各层次之间的信号。在层次原理图的设计中,信号的传递主要通过电路方块图、方块图输入/输出端口、电路输入/输出端口来实现,他们之间有着密切的联系。层次电路图的所有方块图符号都必须有与该方块图符号相对应的电路图存在(该图称为子图),并且子图符号的内部也必须有子图输入输出端口。同时,在与子图符号相对应的方块图中也必须有输入/输出端口,该端口与子图符号中的输入/输出端口相对应,且必须同名。在同一项目的所有电路图中,同名的输入/输出端口(方块图与子图)之间,在电气上是相互连接的。本节将以电机驱动电路为实例,介绍使用AltiumDesigner进行层次设计的方法。图12-1是电机驱动电路的原理图(图纸的图幅是A3),虽然该电路不是很复杂,不用层次原理图设计都可以完成PCB板的设计任务。但还是以它为例,介绍层次原理图的设计方法。图12-2电机驱动电路原理图(图纸幅面A3)从图12-2可以看出,可以把整个图纸分成上、中、下三个部分,其中:中部分和下部分是相同的。我们先用子图1,子图2,练习自上而下的层次原理图设计。子图1子图2子图5子图3子图4子图612.1.1自上而下层次电路图设计自上而下的层次电路设计操作步骤如下。1.建立一个项目文件(1)启动AltiumDesigner,在主菜单中选择File→New→Project→PCBProject命令,在当前工作空间中添加一个默认名为“PCB_Project1.PrjPCB”的PCB工程文件,将它另存为“层次原理图设计.PrjPCB”的PCB工程文件。2.画一张主电路图(如:Main.SchDoc)来放置方块图(SheetSymbol)符号(1)选择Projects工作面板中的“层次原理图设计.PrjPCB”按鼠标右键,在弹出的菜单中选择AddNewtoProject→Schematic命令,在新建的.PrjPCB工程中添加一个默认名为Sheet1.SchDoc的原理图文件。(2)将原理图文件另存为Main_top.SchDoc,用缺省的设计图纸尺寸:A4。其它设置用默认值。(3)单击Wiring工具栏中的添加方块图符号工具按钮,或者在主菜单中选择Place→SheetSymbol命令。(4)单击键盘上的Tab键,打开如图12-3所示的SheetSymbol对话框。在SheetSymbol对话框的的属性(Properties)栏:designator(图纸的标号):用于设置方块图所代表的图纸的名称。Filename(图纸的文件名):用于设置方块图所代表的图纸的文件全名(包括文件的后缀),以便建立起方块图与原理图(子图)文件的直接对应关系。UniqueID(唯一的ID号):为了在整个工程中正确地识别电路原理图符号,每一个电路原理图符号在工程中都有一个唯一的标识,如果需要可以对这个标识进行重新设置。图12-3SheetSymbol对话框(5)在SheetSymbol对话框的Designator编辑框中输入“隔离部分”,在Filename编辑框内输入“隔离部分.SchDoc”,单击OK按钮,结束方块图符号的属性设置。(6)在原理图上合适位置单击鼠标左键,确定方块图符号的一个顶角位置,然后拖动鼠标,调整方块图符号的大小,确定后再单击鼠标左键,在原理图上插入方块图符号。(7)目前还处于放置方块图状态,按Tab键,弹出SheetSymbol对话框的,在Designator处输入“电机驱动”,在Filename编辑框内输入“电机驱动.SchDoc”,重复步骤(6)在原理图上插入第二个方块图(方框图)符号,如图12-4所示。图12-4放入两个方块图符号后的上层原理图3.在方块图内放置端口(1)单击工具栏中的添加方块图输入/输出端口工具按钮,或者在主菜单中选择Place→AddSheetEntry命令。(2)光标上“悬浮”着一个端口,把光标移入“隔离部分”的方块图内,按“Tab”键,打开如图12-5所示的SheetEntry对话框。在该对话框内,几个英文的含义如下:端口位置(Side):用于设置端口在方块图中的位置。端口类型(Style):用来表示信号的传输方向。端口的名称(Name):是识别端口的标识。应将其设置为与对应的子电路图上对应端口的名称相一致。端口的输入/出类型(I/OType):是表示信号流向的确定参数。它们分别是:未指定的(Unspecified)、输出端口(Output)、输入端口(Input)和双向端口(Bidirectional)。图12-5SheetEntry对话框(5)在隔离部分方块图符号右边一侧单击鼠标,布置一个名为“A_OUT”的方块图输出端口,如图12-7所示。(3)在SheetEntry对话框的Name编辑框中输入A_OUT,作为方块图端口的名称。(4)在I/OType下拉列表中选择Output项,将方块图端口设为输出口(如图12-6所示),单击OK按钮。图12-7布置的方块图端口图12-6在SheetEntry对话框内设置端口A_OUT为输出端口(6)此时光标仍处于放置端口状态,单击Tab键,再打开的SheetEntry对话框,在Name编辑框中输入B_OUT,I/OType下拉菜单中选择Output项,单击OK按钮。(7)在隔离部分方块图符号靠右侧单击鼠标,再布置一个名为B_OUT的方块图输出端口。(8)重复步骤(6)~(7),完成C_OUT、D_OUT、VO4、VO5、S5、+5V、GND输入/输出端口的放置(如图12-8所示),各端口的类型如表12-1所示。图12-8布置完端口的方块图(9)采用步骤(1)~(4)介绍的方法,再在“电机驱动”方块图符号中添加6个输入、电源和地的端口,在电机驱动的方块图中各端口名称、端口类型(如表12-1所示)。布置完端口后的上层原理图如图12-9所示。图12-9布置完端口后的上层原理图4.方块图之间的连线(Wire)在工具栏上按按钮,或者在主菜单中选择Place→Wire命令,绘制连线,完成的子图1、子图2相对应的方块图隔离部分、电机驱动的上层原理图如图12-10所示。图12-10连接好的上层方块图5.由方块图生成电路原理子图(1)在主菜单中选择Design→CreateSheetFromSheetSymbol命令。(2)单击“隔离部分”方块图符号,系统自动在“层次原理图设计.PrjPCB”工程中新建一个名为“隔离部分.SchDoc”的原理图文件,置于Main_top.SchDoc原理图文件下层。如图12-12所示。在原理图文件“隔离部分.SchDoc”中自动布置了如图12-13所示的9个端口,该端口中的名字与方块图中的一致。图12-12系统自动创建的名为“隔离部分.SchDoc”的原理图文件图12-13在“隔离部分.SchDoc”的原理图自动生成的端口(3)在新建的“隔离部分.SchDoc”原理图中绘制如图12-14所示的原理图。该原理图即是图12-2椭圆所框的子图1。图12-14“隔离部分”方块图所对应的下一层“隔离部分.SchDoc”原理图至此,完成了上层方块图“隔离部分”与下一层“隔离部分.SchDoc”原理图之间的一一对应的联系。父层(上层)与子层(下一层)之间的联系,靠上层方块图中的输入、输出端口,与下一层的电路图中的输入、输出端口进行联系。如上层方块图中有:A_OUT等6个端口,在下层的原理图中也有A_OUT等6个端口,名字相同的端口就是一个点。现在用另一种方法来完成上层方块图“电机驱动”与下一层“电机驱动.SchDoc”的原理图之间的一一对应关系。(4)单击工作窗口上方的Main_top.SchDoc文件标签,将其在工作窗口中打开。(5)在原理图中的“电机驱动”方块图符号上单击鼠标右键,在弹出的如图12-15所示的右键菜单中选择SheetSymbolActions→CreateSheetFromSheetSymbol命令。(6)在Main_top.SchDoc文件下层新建一个名为“电机驱动.SchDoc”的原理图,如图12-16所示。(7)在“电机驱动.SchDoc”原理图文件中,自动产生了如图12-17所示的9个端口。图12-16新建的名为“电机驱动.SchDoc”的原理图图12-17在“电机驱动.SchDoc”的原理图内自动建立的9个端口(8)在“电机驱动.SchDoc”原理图文件中,完成如图12-18所示的电路原理图。图12-18电机驱动.SchDoc原理图(子图2)至此,完成了上层原理图中的方块图“电机驱动”与下层原理图“电机驱动.SchDoc”之间一一对应的联系。“电机驱动.SchDoc”原理图,就是图12-2所示的原理图中的子图2。这样我们就用图12-2所示的子图1、子图2,完成了自上而下的层次原理图设计。在主菜单中选