资源目录
压缩包内文档预览:(预览前20页/共77页)
编号:139587578
类型:共享资源
大小:976.34KB
格式:ZIP
上传时间:2021-08-03
上传人:qq77****057
认证信息
个人认证
李**(实名认证)
江苏
IP属地:江苏
25
积分
- 关 键 词:
-
经济型
数控车床
控制系统
硬件
电路设计
- 资源描述:
-
经济型数控车床控制系统硬件电路设计,经济型,数控车床,控制系统,硬件,电路设计
- 内容简介:
-
南京工程学院 自动化学院 本科毕业设计(论文)题目: 经济型数控车床控制系统硬件电路设计 专 业: 自动化(数控技术应用) 班 级: 数控033 学 号: Z35702203 学生姓名: 王 慧 蕴 指导教师: 华茂发 副教授 起迄日期: 2007.32007.6 设计地点: 实验楼 _Graduation Design (Thesis)Hardware Design of Economic NC LatheByWANG HuiyunSupervised byAssociate Prof. HUA MaofaDepartment of Automation EngineeringNanjing Institute of TechnologyJune, 2007南京工程学院自动化学院本科毕业设计(论文)摘 要本文详细地介绍了经济型数控车床控制系统硬件电路的设计过程。该控制系统主要可分为四部分设计:CPU存储器扩展电路设计、显示电路设计、手动键盘和编辑键盘电路设计以及I/O扩展电路设计。在CPU存储器扩展电路设计中, CPU选用MCS-51系列的8031单片机,外扩32K的程序存储器和 8K的数据存储器,分别用于存放系统管理程序、数控加工程序以及运算数据;在显示电路设计中,选用MCS-51系列的89C2051单片机作为从CPU,控制三排LED显示器,用于X轴、Z轴动态坐标以及相关数字的动态显示;在手动键盘和编辑键盘设计中选用8155芯片的PA口和PC口作为行、列母线,扩展矩阵式编辑键盘,用于程序和数据的输入或编辑,同时选用8031单片机的P1口扩展手动键盘,用于系统启动、停止以及运动部件在X、Z轴方向的手动控制;在I/O口扩展电路设计中选用8255芯片扩展输入输出口,用于接收和传送开关量及相关信息。总体来说,该设计电路简单、开发成本低、可靠性高,在此基础上,进一步完善硬件,并开发控制软件,对经济型数控车床,尤其是功能要求不高的经济型车床,具有一定的应用价值。关键词:数控车床;控制系统;电路设计IV南京工程学院自动化学院本科毕业设计(论文)ABSTRACTThis paper introduced the hardware design of the economy numerical control lathe in detail, which mainly includes four parts: RAM/ROM, display module, keyboard and system I/O. In the design, a MCS-51 series microprocessor, 8031, is chosen as the system CPU, a 32K ROM is used to store the system software and an 8K RAM, to store NC code and operation data respectively. Another MCU, 89C2051 is used to realize the control of the three rows LED monitor showing coordinates of axis X and Z axis and other state of the system. Charnel A and C of 8155 are used for editor keyboard, which make the inputting or editing of the NC code and data possible. Charnel P1 of 8031 is used for the operation keyboard such as system power on/off and movement of axis X or Z. a programmable parallel I/O chip, 8255, is used to achieve system I/O and the transmission of other information. In summarize, the system developed is characterized by its simplicity, low development cost and high reliability. It can find its actual value in the development of economic NC lathe, especially for those whose function is not desired so much. Key words: Numerical Control Lathe; Control System; Circuit Design南京工程学院自动化学院本科毕业设计(论文)南京工程学院自动化学院本科毕业设计(论文)目 录 第一章 绪论11.1 引言1 1.2 选题背景与意义21.3 研究现状31.4 本文的结构4第二章 经济型数控车床控制系统硬件电路设计方案的拟定52.1 控制对象及要求5 2.2 总体控制方案的拟定5 2.2.1 主CPU的选用5 2.2.2 外扩存储器的确定62.2.3 显示电路的确定6 2.2.4 扩展键盘及I/O口电路的确定72.2.5 总体方案的结构框图7第三章 经济型数控车床控制系统硬件电路设计83.1 CPU时钟及复位电路设计83.1.1 时钟电路设计8 3.1.2 复位电路设计8 3.2存储器扩展电路设计9 3.2.1 程序存储器扩展电路设计9 3.2.2 数据存储器扩展电路设计113.3 显示电路设计143.3.1 数字动态显示电路设计14 3.3.2 功能字显示电路设计163.4 手动键盘和编辑键盘电路设计173.4.1 手动键盘电路设计18 3.4.2 工作方式选择开关电路设计203.4.3 编辑键盘电路设计21 3.5 I/O接口扩展电路设计233.6 步进电机控制信号输出电路设计283.7 译码电路设计293.7.1 扩展芯片选择译码电路设计29 3.7.2 显示位选择译码电路设计31第四章 控制系统原理图及PCB图的绘制324.1 控制系统电路原理图的绘制方法及步骤324.2 控制系统电路PCB图的绘制方法及步骤35第五章 结论37 5.1 论文总结375.2 感想38致谢39参考文献40附录A:英文资料41附录B:英文资料翻译55附录C:硬件设计原理图与PCB图67附件: 毕业论文光盘资料 南京工程学院自动化学院本科毕业设计(论文)第一章 绪 论1.1 引言科学技术和社会生产的不断发展,对机械产品的质量和生产率提出越来越高的要求。机械加工工艺过程的自动化是实现上述要求的最重要措施之一。它不仅能够提高产品的质量,提高生产效率,降低生产成本,还能够大大改善工人的劳动条件。许多生产企业(例如汽车、拖拉机、家用电器等制造厂)已经采用了自动机床、组合机床和专用自动生产线。采用这种高度自动化和高效率的设备,尽管需要很大的初始投资以及较长的生产准备时间,但在大批大量的生产条件下,由于分摊在每一个工件上的费用很少,经济效益仍然非常显著的。但是,在机械制造工业中并不是所有的产品零件都具有很大的批量,单件与小批量生产的零件(批量在10100件)约占机械加工总量的80%以上。尤其是在造船、航天、航空、机床、重型机械以及国防部门,其生产特点是加工批量小、改型频繁,零件的形状复杂而且精度要求高,采用专用化程度很高的自动化机床加工这类零件就显得和不合理,因为需要经常改装与调整设备,对于专用生产线来说,这种改装与调整甚至是不可能实现的。近年来,由于市场竞争日趋激烈,为在竞争中求得生存与发展,各生产企业不仅要提供高质量的产品,而且频繁地改型,缩短生产周期,以满足市场上不断变化的需要。因此,即使是大批量生产,也改变了产品长期一成不变的做法。频繁地开发新产品,使“刚性”的自动化设备在大批生产中也日益暴露其缺点。已经使用的各类仿型加工机床部分解决了小批量、复杂零件的加工。但在更换零件时,必须制造靠模和调整机床,不但要耗费大量的手工劳动,延长了生产准备周期,而且由于靠模误差的影响,加工零件的精度很难达到较高的要求。为解决上述这些问题,来满足多品种、小批量的自动化生产,迫切需要一种灵活的、通用的、能够适应产品频繁变化的柔性自动化机床。数字机床就是在这样的背景下诞生与发展起来的。它极其有效地解决了上述一系列矛盾,为单件、小批量生产的精密复杂零件提供了自动化加工手段。数控机床就是将加工过程所需的各种操作(如主轴变速、松夹工件、进刀与退刀、开车与停车、选择刀具、供给冷却液等)和步骤以及刀具与工件之间的相对位移量都用数字化的代码来表示,通过控制介质(如穿孔纸带或磁带)将数字信息送入专用的或通用的计算机,计算机对输入的信息进行处理与运算,发出各种指令来控制机床的伺服系统或其它执行元件,使机床自动加工出所需要的工件。数控机床与其它自动机床的一个显著区别在于当加工对象改变时,除了重新装夹工件和更换刀具之外,只需要更换一条新的穿孔纸带或磁带,不需要对机床作任何调整。我国在研制与推广使用数控机床方面取得了一定成绩。近年来,由于引进了国外的数控系统与伺服系统的制造技术,是我国数控机床在品种、数量和质量方面得到了迅速发展。目前我国已有几十家机床厂能够生产不同类型的数控机床和加工中心机床。我国经济型数控车床的研究、生产和推广工作也取得了较大的进展,它必将对我国各行业的技术改造起到了积极的推广作用。目前,在数控技术领域中,我国和先进的工业国家之间还存在着不小的差距,但这种差距正在缩小。随着工厂、企业技术改造的深入开展,各行各业对数控机床的需要量将会大幅度的增长,这将有力地促进数控机床的发展。毫无疑问,数控机床必然会在我国四化建设中发挥越来越大的作用。1.2 选题背景与意义我国数控车床发展,始于20世纪70年代,通过30余年的发展,我国目前生产的数控车床,分为经济型数控车床、中档型数控车床和高档型数控车床三种档次,其中经济型数控车床约占数控车床产量90%。经济型数控车床,价格低廉,设备费用投入较少,可以广泛地满足企业发展初期的需要,特别是受到民营经济企业的欢迎,仍是我国当前数控车床的主流产品。经济型数控车床主要特点有:1)价格低廉,性价比适中,大约是同等配置带伺服电动机系统的1/4或更低。它特别适合于普通机床的改造,适合在生产第一线大面积推广。2)适合于多品种、中小批量的自动化生产,对产品的适应性强,在普通机床上加工的产品大都可以在经济型数控产品上加工。加工不同零件,只需改变加工工序,并且能很快适应和达到批量生产。3)提高产品质量,降低废品损失。数控装置有较高的加工精度,加工出的产品尺寸一致性好、合格率高。4)能解决复杂零件的加工精度控制问题。5)节约大量工装费用,降低生产成本。手工操作需要大量不同类型的靠模和成形刀具,用经济型数控车床加工可以不用工装,不仅节约了工装费用,还减轻了工具制造部门的压力。6)减轻了工人的劳动强度。使用经济型数控车床可将工人从紧张、繁重的体力劳动中解脱出来。7)提高工人素质,促进技术进步。数控系统的出现扩大了工人的视野,带动了学习微电子技术的热潮,为工人由“体力型”向“智力型”过渡创造了条件,促进了工厂的技术进步。8)增强了企业应变能力,为提高企业竞争能力创造了条件。企业应用经济型数控系统对设备进行改造后,提高了加工精度和批量生产的能力,同时又保持“万能加工”和“专用高效”这两种属性,提高设备自身对产品更新换代所需要的应变能力,增强企业的竞争能力。全功能的数控车床虽然功能丰富,但成本高,我国一般中小企业购置困难,中小企业为了发展生产,希望对原有机床进行改进,进行数控化、自动化,以提高生产效率。经济型数控车床就是结合现实的生产实际和我国的国情,在满足基本功能的前提下,尽可能降低价格。由于其独特的优点,经济型数控车床被大量的中小企业看好。当前,我国步入市场经济不久,一般国有制造企业正处于在改革和调整的时期,资金严重不足;制造业的民营企业刚刚成长,同样资金也非常紧张,不可能付出大量资金购买高档次数控设备。而大量的机械零件需要高速加工制造,需要大量便宜且自动化程度很高的设备。由于步进电动机的数控系统在某种意义上可以装备这个档次的设备,作为中高档数控车床的替补和填充,因此它仍有存在的空间和时间,有它在一定时期存在的必要性。1.3 研究现状从1960年开始至今,世界经济强国如德国、日本、法国、意大利等纷纷开发、生产及使用数控机床。1958年中国也开始着手数控技术的研究,并于1968年在北京第一机床厂研制出中国第一台数控车床。随着国内数控厂家(主要有:武汉华中数控、北京航天数控、沈阳蓝天数控、广州数控GSK、成都广泰数控GREAT、威海华东数控等)的增加,众多的应用广泛的数控系统应运而生。国内数控系统在高中、低挡领域均有涉及,且在国内制造业应用广泛,并且正向纳米级精度、高可靠性、进给高速的数控领域进军。“十五”期间国产数控机床发展很快。从技术上看,数控车床技术比较成熟,通过技术引进和合作生产、消化吸收和自主创新,我国已掌握了数控车床设计和制造技术。从产品水平上看,我国已能自行开发设计各种低中高档数控车床。从品种上看,我国生产的数控车床品种比较齐全,每年都有数控车床新品种,可供各方面用户选用。从生产规模上看,国产经济型数控车床已形成规模生产,有十余家企业生产规模达到年产千台以上。“十五”期间我国数控车床进入了发展快速期,生产产量由2001年的10022台增加到2005年的37811台,增长3.77倍;产值由2001年的11.53亿元增加至2005年的61.63亿元,增长5.35倍。平均单台产值由2001年的11.6万元增加至2005年的16.3万元。数控车床的消费量由2001年的13123台增加到2005年的42551台,消费额由2001年的3.06亿美元增加到2005年的11.8亿美元。国产数控车床的市场占有率逐年提高,按台数计,由2001年的72.5%上升到2005年的88.9%;按金额计,由2001年的43.5%上升到2005年的65.3%,接近2/3。在经济型数控系统中,我国具有很大优势,在当前每年数千台经济型数控车床和电加工机床市场上,国产数控系统是一枝独秀,为我国计算机数控系统的发展做出了贡献,在世界数控技术发展史上占有重要的一页。现在的经济型数控车床大多数是以单片机为控制核心,以步进电机为驱动,以开环控制方式为基础,采用立式4工位刀架,比起中高档数控车床来说定位精度相对较低,刀具数量少,加工范围较窄,加工精度较低,有一定的使用局限性,但是经济型数控车床的功能实用,软件功能不低于同样配置的一般伺服电动机的功能,因此基本上能满足加工要求。目前,我国生产经济型数控车床的企业已超过50余家,全国年产量已超过30000台以上,已达到相当的规模。国产经济型数控车床受到国外跨国机床公司的产品和其在国内合资企业和独资企业生产的产品双重挑战,在产品技术、月产量、规模上都不及外国公司和合资企业。因而,当前要加速经济型数控车床产业化程度,通过制造技术和管理技术的提升,提高国产经济型数控车床的性价比和质量稳定性,缩短交货期,争取更多的国内市场份额。在这样的大环境下,生产经济型数控车床的企业适时增加经济型数控车床的功能,降低价格,使得性价比更高,提高市场竞争力。1.4 本文的结构本文以经济型数控车床的研发工程项目作为应用背景,对经济型数控车床控制系统硬件电路进行了研究。全文共分为五章,各章的主要内容如下:第一章扼要地介绍了经济型数控车床特点、研究意义与相关研究背景;第二章对控制对象进行了研究,结合设计要求,给出了总体设计方案;第三章具体给出了经济型数控车床控制系统硬件电路的设计过程,包括存储器扩展电路设计、显示电路设计、手动键盘和编辑键盘电路设计、步进电机控制信号输出电路设计、I/O口扩展电路设计以及译码电路设计等;第四章对绘制控制系统的电路原理图及PCB图作简单介绍;第五章总结了全文的研究工作,给出了存在的问题和进一步研究的方向。第二章 经济型数控车床控制系统硬件电路设计方案的拟定2.1 控制对象及要求此次设计对象为经济型数控车床控制系统硬件电路,采用8031单片机作为主CPU,外扩32K程序存储器和8K数据存储器;需控制两轴:X轴和Z轴,且X轴、Z轴步进电机正、反转脉冲信号要经锁存器输出;显示电路要实现三排LED动态显示;需扩展手动键盘及编辑键盘电路;需扩展若干输入输出口,用于开关量及相关信息的输入输出。2.2 总体方案的确定数控系统是由硬件和软件两部分组成。硬件是组成系统的基础,有了硬件,软件才能有效地运行。硬件电路可靠性直接影响数控系统性能指标。机床硬件电路由以下五部分组成:1)主控制器,即中央处理单元(CPU);2)总线,包括数据总线、地址总线和控制总线;3)存储器,包括程序存储器和数据存储器;4)接口,即I/O输入输出接口电路;5)外围设备,如键盘、显示器及光电输入机等。2.2.1 主CPU的选用在微机应用系统中,CPU的选择应考虑以下因素:1)时钟频率和字长,这个指标将控制数据处理的速度;2)可扩展存储器的容量;3)指令系统功能,影响编程灵活性;4)I/O口扩展的能力,即对外设控制的能力;5)开发手段,包括支持开发的软件和硬件电路。此外还要考虑到系统应用场合、控制对象对各种参数的要求,以及经济价格比等经济的要求。 目前在经济型数控机床中,一般选用MCS-51系列单片机作为主控制器。 MCS-51系列单片机主要有三种型号的产品:8031、8051和8751。三种型号的引脚完全相同,仅在内部结构上有少数差异。8031片内无ROM,可在现场修改和更新程序存储器的应用场合,其价格低,使用灵活,非常适合在我国使用。根据机床要求,采用8位机。由于MCS-51系列单片机的特点之一是硬件设计简单,系统结构紧凑。对于简单的应用场合,MCS-51系统的最小系统用一片8031外扩一片EPROM就能满足功能的要求,对于复杂的应用场合,可以利用MCS-51的扩展功能,构成功能强、规模较大的系统。所以选用8031单片机。其次,设计要求也是要求用8031。由此可见选用8031是符合经济型数控机床电路设计的。此次设计使用的是8031芯片。2.2.2 外扩存储器的确定 8031单片机片内只有128个字节的RAM,需要外扩存储器。存储器扩展电路设计应该包括程序存储器和数据存储器的扩展。在选择程序存储器芯片时,有三种ROM 可供选择,一种是掩膜ROM,一种是可编程ROM(PROM),还有一种是紫外线可擦除ROM(EPROM),现在多用的是EPROM,在选择EPROM时要考虑CPU和EPROM时序的匹配,还应考虑最大读出速度、工作温度及存储器的容量等问题。根据设计要求,需要外扩32K程序存储器,所以选择27256芯片。在选择数据存储器芯片时,常采用半导体静态随机存取存储器RAM电路。常用的数据存储器有静态RAM(SRAM)和动态RAM(DRAM)两类。DRAM一般用于存储容量较大的系统中,而且DRAM需要刷新逻辑电路以保持数据信息的不丢失,电路设计较复杂。虽然DRAM芯片具有容量大、功率低、价格便宜等优点,但它极易受干扰,对外界环境、工艺结构、控制逻辑和电源质量等的要求都很高。同时与DRAM相比,SRAM无须考虑保持数据而设置的刷新电路,故扩展电路较简单。因此,此次设计的控制系统选用SRAM。在8031单片机应用系统中,最常用的静态数据存储器RAM芯片有6116(2K8)和6264(8K8)两种。根据设计要求,需要外扩8K数据存储器,所以选择6264芯片。在存储器扩展电路的设计中还应包括地址琐存器电路和译码电路的设计。2.2.3 显示电路的确定 显示电路需要实现三排LED动态显示,用以显示X轴、Z轴动态坐标以及相关的数字,这就需要一个从CPU,从CPU主要是按照中央CPU送来的显示命令和显示内容,组成相应的显示信息,负责产生显示器所需要的扫描信号,控制显示器按规定的显示方式显示有关信息。89C2051将多功能的8位CPU与FPEROM结合在同一片芯片上,高度灵活且价格适宜。此次设计选用89C2051作显示CPU,控制显示器显示。显示器的种类多种多样,有CRT显示器、LED显示器、LCD显示器、辉光显示器、荧光显示器及投影显示器等等。在机床数控系统中,常用CRT和LED以及LCD显示器,这三种显示器可显示数字、字符、及各种信息状态。现在比较流行的是LCD显示器,它虽然优点很多,但它多用于大信息量、高密度、快速变换、长时间观察的地方,如果用在经济型数控车床控制系统硬件电路中,会造成资源浪费。在所有的显示器中,LED由于功耗较少、亮度强、控制简单可靠,且价格很低,在机床数控系统和各种仪器仪表中广泛使用。此次设计选用的显示器就是LED显示器。经济型数控车床需要三排显示,即X轴坐标、Z轴坐标、功能字及其后的相关数字。显示数字用8段数码管,功能字是字母,所以显示功能字需要用16段数码管。2.2.4 扩展键盘及I/O口电路的确定扩展键盘及I/O口电路的确定应包括接口芯片的选用、步进电机控制电路、键盘显示电路以及其他辅助电路的设计。在计算机控制系统中,按键开关、波段开关和键盘作为人机联系的手段不可缺少。8031的P1口可作为输入使用进行功能键的控制,例如X轴、Z轴正反转、超程、启动、停止等。8155作为单片机应用系统常用的可编程I/O接口得到了广泛应用。对于单片机系统来说,用8155作为键盘的接口,无需再专门增加芯片,所以此次设计编辑键盘用8155控制。8255A是一种通用的可编程并行接口电路,在单片机系统中被广泛用作可编程外部I/O扩展接口。同时它与8031单片机连接方式简单,所以此次设计选用8255扩展输入输出信号接口。2.2.5 总体方案的结构框图总体方案的结构框图如图2.1所示。272566264显示电路光耦电路I/O接口手动按钮8031单片机74LS2738255A8155键盘图2.1 总体方案结构框图第三章 经济型数控车床控制系统硬件电路设计3.1 CPU时钟及复位电路设计此次设计采用Intel公司开发的8031单片机作为主CPU,它是整个控制系统电路的核心。8031芯片集成度高、功能强,只需增加少量外围器件就可以构成一个完整的微机系统。8031芯片具有40根引脚,其引脚图如图3.1所示。I/O口线:P0、P1、P2、P3共四个8位口;控制口线:PSEN(片外取指控制)、ALE(地址锁存控制)、EA(片外存储器选择)、RESET(复位控制);电源及时钟:Vcc(接+5V电源)、Vss(接地);XTAL1和XTAL2接外部晶体振荡器。3.1.1 时钟电路设计图3.1 8031引脚图单片机8031虽然有内部振荡电路,但要形成时钟,必须外部附加电路。经济型数控车床控制系统硬件电路采用内部时钟方式,在XTAL1、XTAL2引脚上外接晶振Y2以及电容C7和C8构成并联谐振电路,使内部振荡器产生自激振荡,如图3.2所示。电路中晶振Y2取典型值12MHZ,相当于8031单片机的心脏,控制着工作节奏。电容C7、C8分别取值为33pF,它们使振荡器起振并可对振荡器的频率起到微调作用。当数控车床控制系统加电以后约10ms开始起振,XTAL2输出3V左右的正弦波,振荡器产生的时钟送至8031单片机内部的各个部件。3.1.2 复位电路设计该控制系统采用按钮复位。在8031复位端RESET上接如图3.2所示电路,当上电或按动按钮S40,复位端RESET上出现高电平,保持10ms以上便能可靠地实现复位,R44取30,R45取15K,C5取10F。同时,系统的急停开关也接在该复位端上,如图3.2所示,只要按下急停按钮S52,INT0端出现低电平,利用8031的P3口第二功能,实现外部中断请求,同时,RESET端上出现高电平,实现可靠复位。复位电路设计如图3.2所示。图3.2 8031时钟及复位电路原理图3.2 存储器扩展电路设计8031芯片内部无程序存储器,只有256字节的数据存储器,地址为00HFFH,因而再组成控制系统时可根据需要扩展外部程序存储器和外部数据存储器。由于地址线是16位的,所以最多能扩展64KB程序存储器和64KB数据存储器,其地址均为0000HFFFFH,在经济型数控车床控制系统硬件电路中,只需扩展32K的程序存储器和8K的数据存储器,如第二章所述,选用27256芯片作为32K的程序存储器扩展,6264芯片作为8K的数据存储器扩展。 3.2.1 程序存储器扩展电路设计图3.3 27256引脚图程序存储器扩展时,扩展容量为32K,大于256字节,因此EPROM片内地址除了由P0口经锁存器提供8位地址线外,还需由P2口提供7位地址线。选用的27256芯片为28脚双列直插式扁平封装芯片,其引脚如图3.3所示。27256与8031的连接图如图3.5所示。根据程序存储器电路的连接,确定27256的寻址范围,见表3.1。表3.1 程序存储器地址表地址线地址A15 A14 A13 A12 A11 A1 A00 0 0 0 0 0 0 0000H0 0 0 0 0 0 1 0001H0 0 0 0 0 1 0 0002H 0 1 1 1 1 1 0 7FFEH0 1 1 1 1 1 1 7FFFH1. 地址线的连接27256低8位地址线A0A7经地址锁存器与8031的P0口相连;27256高7位地址直接与8031的P2口相连。由于8031的P0口是分时输出低8位地址和数据,因此要外接地址锁存器,并与CPU发出的地址允许锁存信号ALE的下降沿将地址信息锁存入地址锁存器中。在此系统设计中选用的地址锁存器芯片是74LS373,它是带三态缓冲器输出的8D触发器,其引脚如图3.4所示。它的输入输出关系见表3.2。将OE接低电平,LE接ALE就能正常工作,则输入端Dn为高电平时,输出端Qn也为高电平,输入为低时,输出也为低,从而实现锁存功能,所以只要将8031的ALE信号与锁存器74LS373芯片ALE端相连。单片机的P2口用作高地址线及片选地址线,由于P2口输出具有锁存功能,因此不必外加锁存器。表3.2 74LS373的功能表 (a)OELEDnQnLHHHLHLLLLLLLLHHHZ 图3.4 74LS373引脚图 (a)2. 数据线的连接存储器的8位数据线D0D7是8根双向数据线。读或编程检验时为数据输出线,编程时为数据输入线。维持或编程禁止时,D0D7呈高阻抗。它与8031芯片的P0口P0.0P0.7直接相连,单片机规定指令码和数据都是由P0口读入,数据线对应脚相连即可。3. 控制线的连接8031芯片的PSEN与27256芯片的OE端相连,OE是输出允许信号端,低电平有效,当OE = 0时,芯片中的数据可由D0D7端输出;8031芯片EA接地,CPU执行外部程序存储器的指令;8031芯片ALE接地址锁存器74LS373的G端;27256的CE端是选片信号端,低电平有效,所以使它正常工作只要直接接地即可。 图3.5 8031与27256连接电路原理图3.2.2 数据存储器扩展电路设计 由于8031芯片内部RAM只有128字节,远远不能满足系统的需要,需扩展片外的数据存储器(RAM)。根据设计的要求需扩展8KB的数据存储器,所以在此选用了一片6264芯片,它采用CMOS工艺,采用28脚双列直插式扁平封装。6264引脚图3.6所示。图3.6 6264引脚图 (a)6264与8031连接图如图3.7所示。6264典型存取时间为100ns,电源电压为+5V,工作电流为40mA,维持电压为2V,维持电流2A。容量为8K=213 ,每字节为8位,有8条数据线I/O0I/O7,13条地址线A0A12;如程序存储器27256一样,6264的13条地址线A0A12分两部分来连接,低8位地址线A0A7要经地址锁存器与8031的P0口相连;6264的高5位直接由8031的P2口直接提供。8031与外部数据存储器的连接方法和与程序存储器连接方法大致相同。唯控制线的连接不同:RAM读入信号OE与8031芯片的RD引脚相连;RAM的写输入信号WE与8031芯片WR相连。片选信号CS1接译码器74LS138的Y6输出端。之所以需要译码器74LS138,是因为8031单片机许需要扩展多个外围芯片,因而需要把外部地址空间分配给这些芯片,并且使程序存储器各芯片之间、数据存储器各芯片之间地址互相不重叠,以使单片机访问外部存储器时,避免发生冲突。所以根据数据存储器电路的连接,确定6264的寻址范围,其范围见表3.3。6264芯片的工作方式见表3.4。表3.3 数据存储器6264地址表 地址线地址A15 A14 A13 A12 A11 A1 A01 1 0 0 0 0 0C000H1 1 0 0 0 0 1C001H1 1 0 0 0 1 0C002H1 1 0 0 0 1 1C003H 1 1 0 1 1 1 1DFFFH表3.4 数据存储器6264功能表 (a)WECS1CS2 OE I/O0I/O7工作状态 H高阻未选中 L高阻未选中H L H H高阻输出禁止 H L H L数据输出读操作 L L H H 数据输入写操作 L L H L 数据输入写操作 图3.7 8031与6264电路连接原理图 (a) CPU存储器扩展电路原理图如图3.8所示。图3.8 CPU存储器扩展电路原理图 3.3 显示电路设计3.3.1 数字动态显示电路设计 显示电路是为了实现人机交流信息而设计 的,由于需要三排LED动态显示,所以要有从CPU,选用89C2051芯片作为从CPU来控制显示器。显示器选用控制简单、价格低廉的LED显示器。图3.9 89C2051引脚图 (a)所采用的89C2051,属于CMOS高性能8位单片机,自带2K字节内闪可编程、可擦除只读存储器。管脚封装为20引脚,与8751相比只去掉P0口、P2口,片内都一个模拟电压比较器,结构紧凑,体积小。用它设计产品,外围元器件少,接口技术简单,缩小电路板面积,成本低,开发容易,可广泛应用于小型简单不需很多I/O口控制的各种智能产品设计。89C2051的引脚图如图3.9所示。作为从CPU的89C2051芯片与8031芯片的连接如图所示3.10所示。电路图中,89C2051芯片的P1口是双向8位I/O端口,由于P1.2P1.7引脚有内部上拉电阻,所以它可与锁存器的输出端直接连接,而P1.0和P1.1需要外部上拉电阻,要分别接R100和R101两个5K的电阻。P1口P1.0P1.7分别接锁存器74LS273的输出端口Q0Q7,74LS273的输入端AD0AD7分别接8031的P0口AD0AD7,它的选通输入端11引脚写控制输入端WR控制,当WR时,74LS273的11脚产生上升沿,开始触发DQ。P3.2接法与74LS273的11脚接法相同。复位输入端RST的接法采用的常用复位接法,在没有按下按钮S1时,+5V的电源给电容C1充电,节点处为高电平,经反向器变为低电平,即RESET端的输入信号为低电平。相反,当按下按钮S1时,电容C1放电,节点处为低电平,经反向器输出高电平,RESET端因为接收了高电平,从而实现了复位,该引脚上只要有两个机器周期的高电平即可复位89C2051, 电阻R1取值10K与+5V电源相连,电阻R28取值30与按钮S1相连,电容C1取值10F。振荡器反相放大器内部工作时钟电路输入端XTAL1和振荡器反相放大器的输出端XTAL2接法和8031单片机相同。89C2051的P3.7接8031的P3.0脚。与89C2051相连的显示器是单片机应用系统人机对话中常用的输出装置,LED显示器由于其简单的结构和低廉的价格,对于要求不是很高的经济型数控车床控制系统来说是一个很好的选择。LED显示器是由发光二极管构成的字段至8031的P3.0端 (a) 图3.10 89C2051与8031连接图 组成的显示器,有8段(含小数点)和16段(“米”字)管两大类。如图3.11所示。图3.11 8段和16段数码管外形 (a)图中的ag七个笔划(段)及小数点dp均为发光二极管。数码管显示器根据公共端的连接方式,可以分为共阴极数码管(将所有发光二极管的阴极连在一起)和共阳极数码管(将所有发光二极管的阳极连在一起)。由于经济型数控车床控制系统硬件电路需要有三排数字显示,每排又有6位,硬件较多,如果采用静态显示,则占用的硬件资源较多,虽然动态显示占用CPU的时间较多,但两者比较,还是选择动态显示。所谓动态显示就是所需显示字段断续通以电流,在需要多个字符同时显示时,可以轮流给每一个字符通以电流,逐次把所需显示的字符显示出来。此次经济型数控车床控制系统扩展的三排数字显示LED数码管选用共阴极型。共阴极LED显示器的发光二极管的阴极连接在一起,通过译码器74LS138的六个输出端用来作逐位扫描控制。在每个段笔画要串一个300的限流电阻。笔画的选择称为段选,公共端的选择称为位选。所采用三排8段数码管,它们由从CPU(89C2051)控制。因为有6列数码管显示,所以还需要一个译码器,选用74LS138芯片即3线8线译码器。89C2051的P3口P3.3、P3.4、P3.5线分别接74LS138的选择输入端A、B、C(1、2、3引脚),则译码器的8个输出线Y0Y7任选6个可分别控制数码管的显示。三排LED数码管与89C2051芯片所构成的动态显示连接图如图3.15所示。89C2051单片机依次发出段选控制字和对应哪一位LED显示器的位选控制信号,三排LED显示器逐个循环电亮。适当选择扫描速度,利用人眼“留光”效应,使得看上去好像这几个显示器同时在显示一样。图3.12 74LS164引脚图 (a)三排LED显示要实现动态显示还需用到8位移位寄存器74LS164,它的特点是具有选通串行输入端和一个异步清除输入端。74LS164引脚如图3.12所示,74LS164与89C2051芯片以及与LED显示器电路连接原理图如图3.13所示。因为要有三排数字显示,所以需要三片74LS164芯片。每片的串行输入端A、B都并接在一起,其中一片U29的输入端接89C2051单片机的P3.0端,用于Z轴坐标的动态显示,当选通串行输入端输入低电平时,禁止进入新数据,并把第一个触发器在下一个时钟脉冲来后复位到低电平时,选通串行输入端(A和B)可完全控制输入数据。74LS164芯片的工作方式见表3.5,实现移位功能。表中,代表任意状态;QA0、QB0QH0代表在稳态输入条件建立之前QA、QBQH的输出状态;QAn、QBnQHn代表在最近的时钟上升沿转换之前QA、QBQH的输出状态;H/L、QAnQBn代表在最近的时钟上升沿转换之后QA、QBQH的输出状态。串行时钟输入端CLK接89C2051单片机的P3.1端,虽然不管时钟处于高电平或低电平时,串行输入端的数据都可以被改变,但只有满足建立条件的信息才能进入,时钟控制发生在时钟输入由低电平到高电平的跃变上,即发生在上升沿状态时。另两片74LS164芯片的接法相似,只是在选通输入端接法不同,在电路连接原理图中,U5的输入端接U29的输出端QH,U4的输入端接U5的输出端QH。表3.5 74LS164功能表输 入输 出清零 时钟A BQA QB QCL L L LHL QA0 QB0 QH0HH HH QAn QG nHL L QAn QG nH LL QAn QG n3.3.2 功能字显示电路设计功能字显示电路选用16段数码显示器,它是“米”字管,用它可实现字母显示。8段数码管只能实现数字及字母AF的显示,所以为了实现机床所有功能字都能显示,选择了16段数码管。在我们的接触中,16段数码管很少见,通常见到的都是8段数码管。它的工作原理与8段数码管相同。图3.13 74LS164电路连接原理图 (a)实际上16段数码管实现的是静态显示,所谓静态显示就是需要显示的字符的各字段连续通电,所显示的字段连续发光,即功能字是一直点亮的。当系统需要显示时,8031单片机便将要显示的数据送锁存器74LS273(U2、U3)锁存。锁存器将显示码送至16段数码管DS1显示。若没有新数据送显示器,则8031单片机便去做其他工作,而不管显示器。16段数码管显示器与8031所构成的静态显示如图3.14所示。显示电路原理图如图3.15所示。3.4 手动键盘电路和编辑键盘电路设计经济型数控车床控制面板上应有功能键、波段开关以及编辑按键,这些都应是手动键盘和编辑键盘要设计的部分。手动键盘控制简单,普通的I/O即可实现,每一个键相当于一个机械开关,当键按下时,触电闭合,当键松开时,触电断开。即手动键盘采用独立式键盘方式,手动键盘按键按键的每个键都有一根信号线与8031单片机电路相连,所有按键有一个公共地或公共正端,每个键相互独立互不影响。当按下一个键时,无论其它键是否按下,此键的信号线就由“1”变“0”;当松开此键时,无论其他键是否按下,该键的信号线就由“0”变“1”。由此可见,独立式键盘只适用于键的个数较少的应用系统,电路较简单。而编辑键盘由于按键较多,比手动键盘复杂的多,编辑键盘是数控车床控制系统中人机对话常用的输入装置,键盘是由若干个按键开关组成,键的多少根据数控车床控制系统的用途而定。此次设计采用四十个键,因为对于经济型数控车床来说四十个键已经绰绰有余了。一般来说,键盘有两大类,除了手动键盘所采用的独立式,还有一类为矩阵式,由于是要设计四十个键的键盘,按键个数较多,所以选择矩阵式键盘设计。3.4.1手动键盘电路设计设计中手动键盘电路采用独立式结构,连接图如图3.16所示。每个键都有一根信号线与8031单片机P1口连接,所有按键都有一个公共地端,并通过10K的电阻接+5V的电源,每个键相互独立互不影响,分别实现启动按钮、停止按钮、X轴正转按钮、X轴反转按钮、Z轴正转按钮、Z轴反转按钮、X轴正超程按钮、X轴负超程按钮、Z轴正超程按钮、Z轴负超程按钮。所利用的8031单片机的P1口(P1.0P1.7、18脚)是准双向口,一般作通用I/O端口使用,内部有上拉电阻,位结构如图3.17所示,P1口的每一位口线能独立用作输入线或输出线。在作输入时,必须先将“1”写入口锁存器,使场效应管截止,即编程时要先将“1”写入锁存器,该口线由内部上拉电阻提拉成高电平,同时也能被外部输入源拉成低电平,即当外部输入“1”时该口线为高电平,而输入“0”时,该口线图3.14 功能字静态显示电路原理图 (a)图3.15 显示电路原理图 为低电平。通过按下不同的按钮,使得输入为“0”,从而实现相关的操作。以启动按键为例,当按下启动按钮时,P1.0口输入“0”,系统启动。图5.1 P1口结构图 (a) 图3.16 手动键盘电路原理图 (a)图3.17 8031单片机P1口结构图 (a)3.4.2 工作方式选择开关电路设计 操作面板上除手动按键以外,还有一些工作方式选择开关,这些波段开关可通过8255扩展实现,8255的三个并行端口PA、PB、PC这都是8位,都可被编程为输入或输出。此次数控车床控制系统硬件电路设计中使用PA口作为波段开关的扩展,他们分别为空运行开关、自动开关、手动I开关、手动II开关、回零开关以及扫描键盘开关。六档波段开关一端接地,另外的六挡端分别通过一个10K的上拉电阻与+5V电源及PA口的六个脚相连接。通过使波段开关处于不同位置而实现不同的功能。具体工作方式选择开关连接图如图3.18所示。图3.18 工作方式选择开关电路原理图3.4.3 编辑键盘电路设计编辑键盘按键数量较多,采用8155芯片来扩展编辑键盘。键盘由09,字母AZ等组成。当经济型数控车床处于编辑状态时,通过该键盘可输入数字、字母进行编辑。8155芯片的引脚图如图3.19所示。图3.19 8155芯片引脚图 (a)AD0AD7为双向地址/数据总线,分时传送单片机和8155之间的地址、数据、命令、状态信息。ALE为地址锁存信号输入,在ALE下降沿将AD0AD7上的低8位地址、RAM/IO选择信息锁存。所以,8031单片机的P0口输出的低8位地址不需要再外接锁存器,可直接与8155相连接。IO/M为RAM/IO口选择,IO/M=0,单片机选择8155中的RAM读/写,AD0AD7上地址为RAM单元地址;IO/M=1,选择8155的寄存器或端口,地址分配见表3.6。 表3.6 8155地址分配表CE IO/MA7A6A5A4A3A2A1A0 所选端口0 1 0 0 0命令/状态寄存器 0 1 0 0 1A口 0 1 0 1 0 B口 0 1 0 1 1 C口 0 1 1 0 0计数器低8位 0 1 1 0 1 计数器高8位 0 0 RAM单元图中,CE为片选信号,低电平有效;RD、WR为读、写控制输入线,低电平有效;RESET为复位端,输入一个大于600ns正脉冲时,8155总清零,各I/O口定义为输入方式;PA0PA7为A口I/O数据传送;PB0PB7为B口I/O数据传送;PC0PC7为C口I/O数据传送或A、B口选通方式时传送命令/状态信息。TI、TO为14位计数器输入、输出;VCC、VSS为+5V电源和接地。8155与8031连接如图3.20所示。8155对编辑键盘的扩展图如图3.21所示。独立式键盘虽然简单,但只适用于键的个数较少的应用系统中,但像在经济型数控车床控制系统中,编辑键盘需要四十个按键,所以采用的是方式是矩阵式,它不同与手动键盘所采用的独立式,独立式按键每个键相互独立互不影响,而矩阵式键盘的按键触点接于由行、列母线构成的矩阵电路的交叉处,每当一个键按下时通过该键将相应的行、列母线连通。在图3.21中, PA口的8位经反向器输出为行母线,PC口低5位通过10K的电阻接+5V电源为列母线,行列母线相交处用按键连接。通过键盘扫描方式,扫描PC口状态,即8155的A口作为输出口,输出键盘的扫描信息;C口作为输入口,用来接收键盘读入信息。根据按下键的不同,产生的键值也不同,一个键只对应于一着键值。事实上对应于每一种输出状态,只要按下一个键,那么就可以得到一键的编码值,这个值对于不同的键是不同的,具有唯一性。 图3.20 8155与8031连接图 (a)3.5 I/O接口扩展电路设计由于8031只有P1口和P3口部分能提供用户作为I/O口使用,不能满足输入输出口的需要,因而系统要扩展输入输出接口电路。当单片机应用系统中需要较为复杂的I/O口时,通常采用可编程I/O接口芯片扩展I/O口,如8255A芯片、8155芯片。此次经济型数控车床控制系统硬件电路I/O接口就是采用8255A芯片和8155芯片,8255A具有三个相互独立的输入/输出通道:通道A、通道B、通道C。图3.22和图3.23分别为8255A的逻辑结构图和引脚图。8255A与8031的连接如图3.24所示。8255A芯片可与8031芯片直接连接。CS端为8255A的片选引脚端,接74LS138译码器的Y4 ,74LS138译码器的三个输入端A、B、C分别接8031的P2.5、P2.6、P2.7。8255读控制端RD、写控制端WR与8031的RD、WR直接连接。当RD=0时,允许单片机从8255读取数据或状态字。当WR=0时,允许单片机将数据或控制字写入8255。8255的复位控制端RESET与外部复位电路相连,当RESET=1时,8255复位,复位状态是控制寄存器被清除,所以接口(A、B、C)被置入输入方式。8255口地址选择端A0、A1接74LS373地址锁存器的地址锁存输出端A0、A1,通过A0、A1可选中8255的4个寄存器。口地址选择见表3.7。8255的输入端直接与8031图3.21 编辑键盘电路原理图 图3.22 8255A逻辑结构图 (a)的P0口连接。此次设计,8255A的PA口已为工作方式选择端口;PB口作为直接信号输入端口;PC口作为直接信号输出端。8255A扩展I/O电路原理图如图3.25(a)所示。与8255A芯片相似,8155芯片也可与8031芯片直接连接。8155的片选信号CE接74LS138译码器的Y7 ,它的读控制端RD、写控制端WR、地址锁存信号输入端ALE分别接8031的RD、WR、ALE端,输入输出/寄存器选择端 图3.23 8255A引脚图 (a)接8031的P2.0线,复位控制端RESET接外部复位电路,输入端AD0AD7分别接8031的P0.0P0.7。此次设计,8155的PA口和PC口图3.24 8255与8031的连接 表3.7 8255的口地址选择 A1 A0寄存器00输出寄存器A(A口)01输出寄存器B(B口)10输出寄存器C(C口)11控制寄存器(控制口)已用作编辑键盘信号的输入输出端;PB口可作为直接的信号输入端用于收信。8155芯片扩展I/O接口原理图如图3.25(b)所示。 (a) (b) 图3.25 I/O口扩展电路原理图 图3.25中,输入输出信号全部经光电耦合电路,光电耦合电路如图3.26所示:图3.26 光耦电路图图中,当有信号输入时,如果是低电平,发光二极管导通发光,三极管导通,输出低电平,即接收了低电平;相反,如果是高电平输入,发光二极管截止,三极管不导通,输出高电平,即接收到了高电平。同理,当有信号输出时,二极管如果接收的是低电平,则导通发光,三极管导通,输出低电平;相反,如果二极管接收到的是高电平,则截止不发光,三极管也截止,则输出高电平。3.6 步进电机控制信号输出电路设计 通常,用做锁存器的芯片有74LS273、74LS377、74LS373、8282等。在此次设计中,X轴、Z轴步进电机正、反转脉冲信号要经锁存器输出,此锁存器采用74LS273芯片。图3.27 74LS273引脚图 (a)74LS273的引脚图如图3.27所示。74LS273的工作方式见表3.8。74LS273与8031单片机的连接如图3.28所示。图3.28 74LS273与8031单片机的连接 表3.8 74LS273功能表 (a)CLRCLKDQ0011110010Q0 图中,锁存器74LS273的D0D7的端分别与8031单片机的P0口的P0.0P0.7相连,74LS273 的Q0.0Q0.7输出步进电机的X轴、Z轴的脉冲信号,74LS273的CLK端由译码器的输出端Y2和8031单片机的WR信号共同决定,当8031单片机向74LS273输出数据时,先把要输出的数据放在累加器A中,然后执行一次以4000H为目的地址的传送操作,这时P2.7=0,P2.6=1, P2.5=0,在WR脉冲的作用下,CLK端得到一正脉冲,使得经P0口输出的数据被锁存在74LS273输出端。当然输出需要接光耦电路,光耦电路的接法和前面扩展输入输出口所接的光耦电路相同,原理也相同。3.7 译码电路设计3.7.1 扩展芯片选择译码电路设计图3.29 74LS138引脚图 (a)8031单片机允许扩展64KB程序存储器和64KB数据存储器,这样就需要扩展多个外围芯片,因而需要把外部地址空间分配给这些芯片,并且使程序存储器各芯片之间、数据存储器各芯片之间地址互相不重叠,以使单片机访问外部存储器时,避免发生冲突。所以需选用译码电路。常用的译码器有74LS138(3/8译码器)、74LS139(双2/4译码器)、74LS154(4/16译码器)等。此次设计采用的是74LS138译码器。引脚图如图3.29所示。由于此次经济型数控车床控制系统容量较大,扩展的外围芯片较多,如8155芯片、8255A芯片、6264芯片、四片74LS273芯片,以及六列LED显示器,所以需要两片74LS138译码器。一片用于选择六列LED显示器部分,另一片用于选择上述的剩下的所有芯片。由于芯片所需的片选信号多于可利用的地址线时,就需要用全地址译码的方法。所谓全地址译码就是将它将低位地址作为片内地址,而用译码器对高位地址进行译码,译码器输出的地址选择线用作片选线。,利用这种地址编码的方法,除了片内地址线以外,剩余的高位地址线全部参加译码。用于选择8155芯片、8255A芯片、6264芯片以及4片74LS273芯片的38译码器(74LS138),输入占用3根最高位地址线,剩余的13根低位地址线可作为片内地址线,即8031单片机的P2.5、P2.6、P2.7分别接74LS138译玛器的输入端A、B、C,正常工作时候,赋能端G1要接高电平,G2要接低电平,74LS138与各芯片的连接图如图3.30所示。根据译码电路接线,确定各外扩芯片的地址空间或入口地址见表3.9。它的输入输出关系见表3.10。表3.9 芯片地址表芯片地址线地址A15A14A13A12 A11A10A9A8 A7A6A5A4 A3A2A1A062641 1 0 C000HDFFFH81551 1 1 0 0 0 0 1 0 0 0 0 0 0 A口 E101HB口 E102HC口 E103H 8255A1 0 0 0 0 0 0 0 0 0 0 0 0 0 A口 8000HB口 8001HC口 8002H273(U2) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000H273(U3) 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2000H273(U25) 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 A000H273(U59) 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4000H图3.30 74LS138与外围各芯片连接电路原理图 (a)表3.10 74LS138译码器功能表 输 入输 出赋能选择G1 G2C B AY0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 H H H H H H H H HL H H H H H H H HH LL L LL H H H H H H HH LL L HH L H H H H H HH LL H LH H L H H H H HH LL H HH H H L H H H HH LH L LH H H H L H H HH LH L HH H H H H L H HH LH H LH H H H H H L HH LH H HH H H H H H H L3.7.2 显示位选择译码电路另一片译码74LS138,它的六个引脚输出端分别接六列的显示器的阴极,用于控制显示器是否选通显示,它的选择输入端A、B、C分别接89C2051的P3.3、P3.4、P3.5,赋能端G1接高电平,G2接低电平。与六列LED显示器的连接74LS138译码器的输出端不能直接与LED的共阴极相连,还要接一个同向门,用来提高它的驱动能力。显示位选择译码电路原理图如图3.31所示。图3.31 74LS138与LED连接电路原理图 (a) 第四章 控制系统原理图及PCB图的绘制 使用电脑设计电路原理图和电路板图是把电子技术从理论应用到实际的第一步,之前的设计环节只停留在理论设计方面,所以此环节是整个设计的重中之重,此环节成功了,整个设计才能说是成功了。4.1 控制系统电路原理图的绘制方法及步骤经济型数控车床控制系统电路原理图草图画好之后,就可以绘制Protel原理图了。Protel 99SE是澳大利亚Protel Technology公司推出的一个全32位的电路板设计软件。该软件功能强大,人机界面友好,易学易用,使用该软件设计者可以容易地设计电路原理图、画元件图、设计电路板图、画元件封装图和电路仿真,是业内人士首选的电路板设计工具。原理图是在图标Schematic Document下建立的文件中绘制的。绘制电路原理图之前,先要对原理图的设计环境进行设置。设计环境对画原理图影响很大,最先的工作就是把设计环境设置好。工作环境设置是使用Design/Option和Tool/Preferences菜单进行的。画原理图环境的设置主要包括图纸的大小、捕捉删格、电气删格、模板设置等。由于经济型数控车床控制系统硬件电路比较庞大,选用A2(22.315.7英寸)的图纸。捕捉删格和可视删格采用默认值10mil,捕捉删格用于将元件、连线等放置在删格上,使图形好看,容易画图,可视删格主要用于显示,帮助认定元件的位置。电气删格打开,它可以使连线的线端和元件管脚自动对齐,画图时非常方便,连线一旦进入电气捕捉删格的范围时,连线就会自动地与元件管脚对齐,并显示一个大黑点,画图时还要使捕捉删格的距离大于电气捕捉删格的距离。对设计环境设置完毕后,就可以放置元件了,就是将所需的电气和电子元件放置在图纸上。这次用到的是元件有:用作主CPU的8031单片机、用于控制三排LED显示器动态显示的89C2051单片机、用于扩展编辑键盘的8155芯片、用于扩展I/O接口的8255A芯片、用于外部扩展32K程序存储器的27256芯片、用于外部扩展8K数据存储器的6264芯片、用于显示的8段数码显示器、16段数码管显示器、用于地址译码的74LS138译码器、用于移位实现动态显示的8位移位寄存器74LS164、用于锁存X轴、Z轴输出信号的锁存器74LS273以及一些电阻、电容、二极管、三极管、非门、或门、开关、按钮等器件。这些元件在元件库中差不多都能找到,只需将元件从库中取出,放置在图上。由于元件种类非常多,所以应该知道哪类元件在 哪些库中。这次设计电路图用到的元件库有:Miscellaneous Device杂元件库,包含电阻、电容、开关、按钮等;Protel Dos元件库,它是一个百宝箱,一些常用的芯片都可以在这里被找到,比如8031芯片、8155芯片、8255A芯片、74LS系列的芯片,只需要在元件库中找到元件,然后用元件管理器的Place按钮放在原理图上,但这些需要积累经验。此次设计用到的元件只有89C2051芯片没有被找到,这就需要自己画元件图。这在下一步的绘图步骤中回被详细介绍到。 尽管Protel 99SE中元件库很多、元件也多,但是有些元件由于制图标准问题,或是由于新元件的问题,还是需要自己去画元件图,毕竟原理图体现的只是元件之间的连接情况,对它们的外观没有什么要求。为了原理图的好看,在画LED三排显示的时候,移位寄存器74LS164的8个输出线都需要接一个非门,虽然本身的元件库中有非门,可是太大了,如果放在图上不好摆放,也会把本来很简单明了的图变得复杂,在这种情况下就可以考虑自己画元件图了。同理,在译码器74LS138的输出端需要六个同向门,也选择自己画。在电路原理图中有一个很重要的芯片,就是控制三排LED动态显示的从CPU89C2051单片机,这在元件库中也找不到,也需要自己去画。元件图是在Schematic Library Document图标下建立的元件库中画的。该窗口有元件库管理器Browse Schlid,有绘制工具箱和IEEE绘图工具箱,还有编辑窗口。该窗口与原理图设计窗口相似,只是画图窗口是元件编辑窗口,该窗口分为4个象限,在第四象限画图形元件。在画元件图时要特别注意的是放管脚,看起来比较像火柴杆,火柴头一定要向外。在编辑管脚时,双击欲编辑的管脚,然后在属性窗口输入应该输入的内容,用于接电源和地线的管脚需要隐藏,不显示出来。元件放置还之后就需要用导线将元件连接起来,连接时最重要的是要遵守电气规则。当选择Place/Wire连线工具后,鼠标变成十字,将鼠标移动到连线的起始位置,比如某一个芯片的引脚或其它的连线,鼠标光标处显示一个黑点,在这时单击鼠标左键,就可以看到鼠标处拽出一根线,到达连线终点时,单击鼠标鼠标左键,再单击鼠标右键,就可以结束连线操作。当然在画此次设计图这样比较复杂的原理图的时候,连线经常需要拐弯,只要在拐弯处单击鼠标左键即可。在画原理图时还要注意的时候画总线及放置网络标号的时候。比如8031芯片P0口,8条线都是一起一块和其它外围芯片的某一端口相连,在这种情况下就可以用总线来表示,这样电路图也会变得清楚明了,这时的P0口的总线其实代表的是8条线,为了表明每一条线的连接情况,就需要在每一引脚处放置网络标号。只要网络标号相同,就表示它们连接在一起。原理图中不光有各种元件,还要放置电源(VCC)和地线(GND)。它们可以在Place/Power Port下找到。在原理图中,它们是一个符号,实际是一个网络标号,它们同原理图中所有的电源或地线连接在一起。虽然一些芯片的引脚中没有电源和地线引脚,但实际上是有的,只不过是为了使图形简单而隐藏起来了。只要用电源地线符号就可以和这些隐藏的引脚连接起来。元件连接好之后,要对元件编号,可以手动编号,对于像这次设计这样用到元件较多的情况下,手工对元件进行编号是一项很繁琐的事情,事先要在草图中对每一个元件进行标号,千万不能重复,不过这样可以使自己主动管理对元件编号,按照自己的习惯给元件编号。此次设计采用的是自动元件编号。使用菜单Tool/Annotate对元件自动编号。编号完成后,屏幕会显示报告文件。自动编号虽然很快,而且不容易出错,可是自己并不能主动管理元件的编号是多少,不过这并不会对原理图有影响,所以还是选择自动编号更好。元件编好号之后,就要对元件的属性进行编辑了。编辑元件属性一定要输入元件的封装。这个步骤非常重要,之后生成的网络表就是和它有直接的关系。编辑元件属性时,双击元件,在弹出的属性窗口输入元件的属性。有些元件在封装库中可以找的到,有些元件在封装库中并不能找到,这就需要自己画元件的封装图。元件库中有的并且这次设计用到的是:电阻类无源元件,封装名称为AXIAL0.31.0,其中数字表示焊盘间距,单位为英寸;无极性电容元件,封装名称为RAD0.10.4,如电阻一样数字表示焊盘的间距;有极性电容元件,封装名称RB.2/.4,斜杠前的数字表示焊盘间距,斜杠后的数字表示电容外直径;二极管,封装名称DIODE0.4, 数字代表焊盘直径;石英晶体,封装名称XTAL1;NPN晶体管,封装名称TO92C;双列直插,封装名称为DIP4、DIP20、DIP28、DIP40等,后面的数字表示引脚数;单列直插,封装名称为SIP7,后面的数字表示引脚数。对于封装库中没有的元件的封装,需要自己画元件封装图。这次用到的按钮、8段数码管、16段数码管、干电池,在封装库中都找不到合适的,需要自己画元件封装图。在画元件封装时,需要用尺子测量元件的尺寸,同时还要用计算器进行公英制之间的转换。画元件封装图是在图标PCB Library Document下的窗口中画的,生成的文件是PCBLIB。可以在元件封装图向导下画,也可以取消掉,自己画。对元件封装好之后,使用Protel 99SE的电气规则检查功能检查原理图的连接是否合理与正确,给出检查报告。若有错误就需要根据错误情况进行改正。使用Tool/ERC菜单,对画好的原理图进行电气规则检查,检查完毕后,屏幕显示检查报告表。若没有错误(No Error),就可以进行下一步。电气规则检查后,可生成原理图的元件列表。使用Edit/Export to Spread菜单,按照向导提示进行操作就可以得到元件列表。这个表格是Excel格式的电子表格。接下来就可以建立网络表了,这是为后面要生成PCB图作好准备。使用菜单Design/Netlist,就可以生成网络表了,它是元件名、封装、参数及元件之间的连接表,通过该表可以确定各个元件和它们之间的连接关系。这时绘制原理图的工作就完成了,可以打印输出原理图了。4.2 控制系统电路PCB图的绘制方法及步骤前面所画的电路原理图只表示各元件之间的连接关系,并不能代表元件的实际安装情况。之所以画电路原理图就是为了绘制电路的PCB图,这才是最终的目的所在,画好原理图只不过是为设计电路板图提供基础。电路板就是所有电子产品都具有的焊接元件的基板。像画电路原理图一样,首先要设置电路板的设计环境。双击图标PCB Document即可建立电路板文件,进入电路板设计环境。该环境中有一个电路板板层切换标签,用鼠标点击可以更换板层。生成电路板有两种设计方法。一种是自动画电路板,一种是人工画电路板。人工画电路板是耗时和费劲的,此次设计中采用的是自动布线画电路板。在电路板(PCB)环境下,使用Design/Load菜单,然后在弹出的窗口中单击Browse按钮,再在弹出的窗口中选择生成的网络表文件(扩展名为Net),单击OK,可以看到网络表已经转换成可以执行的宏命令显示在窗口的下部,这时应该观察窗口底部的状态条(Status)以确定所有的宏命令是否有效,若有错误(Error)就应该找出错误的原因。这些错误可能是元件封装名称不对,致使在封装库中找不到,这种情况将显示:Footprint XXX not found in Library,或是封装可以找到,但是管脚号和焊盘号不一致,这种情况将显示Node not found。比如在设计中用到的二极管,由于元件的管脚号是1和2,而封装的焊盘号是A和K,所以在调入网络表的时候会出现Node not found的错误。更改这样的错误的方法是,首先在原理图中双击二极管,然后在弹出的属性对话框中,选择Hidden Pins前的小方框,关闭属性对话框后,就可以看到二极管的管脚号显示出来,确定管脚号和二极管阴极和阳极之间的关系。将当前窗口切换到电路板图,在封装库管理器中选择International Rectifiers 库,在库中找到二极管的封装,单击管理器中的Edit按钮,屏幕被切换到元件封装编辑窗口,并显示二极管的封装,双击焊盘,将焊盘号A该为1,K该为2。存盘后,再调用网络表,则这个错误就不再出现了。要修改完网络表中的所有的错误,直到网络表调用窗口底部的状态条显示:All Macros Validated,就说明没有错误了,可以单击Execute按钮,将元件和它们的连接关系调入电路板图中。接着推开元件,选择菜单Auto Placement/Set Shove Depth在弹出的窗口中设置推开次数,然后选择Auto Placement/Shove后,用鼠标随意单击一个元件,就可以看到所有的元件都被推开了。元件生成后就要对元件进行布置了,也就是将元件合理地分布在电路板上。布置元件又可分为自动布置元件和手动布置两种。一般人工布置元件要更好一些,自动布置元件并不是很完善。人工布置元件时,使用鼠标移动元件,原则是所有的连线最短,左边信号进,右边信号出,连接器放在电路板边缘。布局完成后,在禁止层(Keep out Layer)用画图工具画一个电路板框。接着就可以手工布线或自动布线画电路板了,当然在自动布线之前还要进行自动布线设置,为自动步线做好准备工作。通常走线方面要设置的有安全距离、走线转角方式、走线层次和走线方向、走线优先次序、走线模式、走线过孔形式、SMD元件焊盘脖颈、SMD焊盘与走线拐角之间的距离限制、SMD与平面之间的限制以及走线线宽等。制造方面要设置的有走线与走线之间的最小夹角、最大最小孔尺寸、最小环宽、锡膏层延伸、铺铜的连接方式、电源层安全距离、连接到电源层的方式、阻焊层延伸量等。在这些工作都做好之后,使用Auto Route/ALL菜单命令,在弹出的窗口单击Route All按钮,就可以看到屏幕上在自动布线,差不多一分钟的样子自动布线完毕。布线完成后,完成修饰等工作,就可将电路板图打印输出了,电路板图即可拿去制作电路板,进行调试,调试成功后,设计任务结束。第五章 结论5.1 论文总结鉴于我国机床拥有量大、工业生产规模小的特点,突出的任务是用较少的资金迅速改变机械工业落后的生产面貌,使之尽可能地提高自动化程度,保证加工质量,减轻劳动强度,提高经济效益。而实现这一任务的有效的、基本的途径就是普及应用经济型数控车床,并对原有车床进行数控改造。所以,对经济型数控车床控制系统硬件电路设计具有重要意义。现将本设计的相关工作总结如下:1主要工作及结论:(1)采用8031作为主CPU,外扩32K程序存储器,8K数据存储器。其中CPU是数控系统的核心,作用是进行数据运算处理和控制各部分电路协调工作。存储器用于存放系统软件,应用程序和运行中所需要的各种数据。需要掌握8031芯片的引脚结构和功能以及与外扩存储器之间的连接电路。(2)采用89C2051作从CPU,控制三排LED动态显示。需要掌握89C2051芯片的引脚结构、功能以及与LED显示器的连接电路。(3)采用8155扩展编辑键盘,用于程序及数据的输入和编辑。需要掌握8155芯片的引脚结构、工作方式以及与8031的连接电路。(4)X轴、Z轴步进电机正、反转脉冲信号经锁存器输出。需要掌握锁存器74LS273的引脚结构、工作方式以及与8031的连接电路。(5)采用8255扩展若干输入、输出信号接口,用于接受和发送开关量信息。需要掌握8255芯片的引脚结构、工作方式以及与8031的连接电路,了解8155与8255芯片的区别和相同之处。(6)绘制电路原理图以及PCB图。这是理论应用到实际的重要一步,需要熟练掌握Protel 99SE软件,遵守绘图规则,这样才能事半功倍。此次设计的经济型数控车床控制系统实现的功能有:X向和Z向步进电机的控制、键盘扫描、刀架转位、手动控制、行程控制、急停、复位、光电隔离、掉电保护等。该系统具有性能稳定,自动化程度高,操作方便,结构简单,价格低廉等优点。2存在问题:在用Protel 99SE软件绘制控制系统电路原理图时,我没有采用子原理图的方法,而是在图纸用一张总图的方式表示,由于所用到的元件比较多,布局起来比较困难,同时所用的连线也较多,所以使得电路的连接情况看起来比较复杂,不是很清楚明了。在绘制控制系统PCB图时,由于采用的是自动布线方式,有些地方并不是很完善,需要人工调整。5.2 感想 对于我们这些即将离开校园的学生来说,毕业设计是在校园生涯中最后一个重要的环节,它是我们学习能力经验技能的最基本鉴定,它更完善可我们的专业工作技能。在过去的几年大学生活期间,我们学习了近二十门的专业课,有“机”也有“电”,学习了理论也参加过实践,觉得自己学了不少东西,可是真正在做毕业设计的时候,才知道自己的知识面是多么狭窄。通过这次的毕业设计,拓宽了我们的视野和思维,知道了我们所学习的知识都是有联系的,甚至是环环相扣的。经过这一段时间,在导师热心帮助下和我自己的努力下完成了这次的毕业设计。在这过程中,我把设计所涉及到的课本都系统地复习了一遍,有的比以前学的更透彻,更重要的是我有了整体概念。“机”与“电”的整合,“理论”与“实践”的整合,“技术”与“经验”的整合,真可谓全兵演练,真的受益非浅。我觉得这次毕业设计一个很重要的环节就是最前几周的收集资料和拟定总体方案工作,它对以后的设计工作有了一个指向标的作用。我在刚开始的时候没有意识到这一点,所以后来有几周我都进展不大。幸好导师及时纠正我的错误,让我先要对设计的总体有一个设计思路,不可以这样分块的设计而不考虑它们之间的联系。由于一开始没做好,所以在设计中期加了好多天的班才赶上进度。在设计的后几周,因为我是设计硬件电路的,需要绘制电路的Protel原理图以及PCB图。Protel 99SE软件在我们大三学电气制图的时候已经学过了,可是由于后来都没有再用,画图的步骤都记得不是太清楚了,只好重新再学,还好的是这毕竟是学过的东西,心里有印象,第二次学起来还算轻松。这让我也受到启发,学过的东西要时常温习,不能学过就丢掉了,毕竟我们所学的专业知识都是很有用的,在以后的工作中肯定会用到的。通过这次设计,我觉得我已经掌握了基本的研究方法,树立了科学的态度,也从导师身上学到了许多为人处世的道理。我要向导师学习,改掉身上的不足,即在以后的学习过程中,一定要有严谨的治学态度,在以后的工作中,一定要做到认真、信心、耐心和大胆创新。致 谢本设计(经济型数控车床控制系统硬件电路设计)是在我的导师华茂发副教授的精心指导和悉心关怀下完成的。为了我们可以更好地做好设计,导师每周定期来为我们指导,对我们相当负责,本设计从选题到完成,每一步都是在导师的指导下完成,倾注了导师大量的心血。导师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以待己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与人处世的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意,正是由于您的精心培育使我们得以完成毕业设计。在我的论文撰写过程中,华茂发导师、曹锦江老师等对我论文结构和小标题提出了提出了一些建议和意见,对他们表示感谢。在多年的学习生活中,还得到了许多学院领导、系领导和老师的热情关心和帮助。在日常学习和生活中,宿舍同学与同我一组做设计的同学都给予了我很大帮助。我也要感谢我的爷爷、奶奶和爸爸、妈妈,他们在我的学业中给了我莫大的鼓励、关爱和支持,谢谢你们。最后,向所有关心和帮助过我的领导、老师、同学和朋友表示由衷的谢意!衷心地感谢在百忙之中评阅我的论文和参加答辩的各位老师! 王慧蕴二OO七年六月 于南京参 考 文 献1. 赵德安.单片机原理与应用M.北京:机械工业出版社.2004年9月.12-272. 张继红,张江红.8031单片机在C616车床改造中的应用J.机械工程与自动化.2006.10(5).94-1003. 张新义.经济型数控机床系统设计M.北京:机械工业出版社.1994年7月.338-357 4. 胡适军,丰二中.经济型数控车床设计、改装的实践与思考J.浙江交通职业技术学院学报.2003.4(1).24-265. 陈婵娟.数控车床设计M.北京:化学工业出版社.2006年2月.222-2396. 冼进,余晓明,彭亮等.数控车床操作基础与应用实例M.北京:电子工业出版社. 2007年1月. 20-427. 关颖数控车床M北京:化学工业出版社.2005年6月.42-708. 吴祖育,秦鹏飞.数控机床M.上海:科学技术出版社.1990年3月.119-1529. 汪木兰.数控原理与系统M.北京:机械工业出版社.2004年7月.1-3410. Bedi S, Ali I, Quan N.Advanced Interpolation Techniques for CNC MachinesJ.ASME J.Engng.Ind.1993.115.329-33611. 王士军.经济型数控系统在我国存在的必要性J.农机化研究.2004.3(2).37-3912. 黄忠琴.普通车床改造成经济型数控车床的硬件阐述J.机床电器.2003.6(3).15-1913. 夏路易,石宗义.电路原理图与电路板设计教程Protel 99SEM.北京:希望电子出版社.28-185 附录A:英文资料The speed-controlled interpolator for machining parametric curves S.-S. Yeh, P.-L. Hsu Abstract: Modern CNC systems are designed with the function of machining arbitrary parametric curves to save massive data communication between CAD/CAM and CNC systems and improve their machining quality. Although available CNC interpolators for parametric curves generally achieve contouring position accuracy, the specified federate, with dominates the quality of the machining processes, is not guaranteed during motion. Recently, some approximation results concerning motion speed have been reported Shpitalni M, Koren Y, LoCC. Computer-Aided Design 1994;26(11):832-838; Bedi S, Ali I, Quan N. Trans ASME J Engng Industry 1993;115:329-336; Chou JJ, Yang DCH. Trans. ASME J Engng Industry 1991;113:305-310; Chou JJ,Yang DCH. Trans ASME J Engng Industry 1992;114:15-22. In this paper, by deriving a compensatory parameter, the proposed interpolation algorithm has significantly improved curve speed accuracy. In real applications, the proposed algorithm results in: (1) constant speed; and (2) specified acceleration and deceleration and deceleration (ACC/DEC) to meet the feedrate commands. The motion accuracy and feasibility of the present interpolator have been verified with a provided non-uniform rational B-spline (NURBS) example. 1999 Elsevier Science Ltd. All rights reserved.Keywords: Parametric curve; CNC interpolators; Speed accuracy; NURBS1. Introduction: In modern CAD/CAM systems, profiles for parts like dies, vanes, aircraft models are usually represented in parametric forms. As conventional CNC machines only provide linear and circular arc interpolators, the CAD/CAM systems have to segment a curve into a huge number of small, linearized segments and send them to CNC systems. Such linearized-segmented contours processed on traditional CNC systems are undesirable in real applications as follows: the transmission error between CAD/CAM and CNC systems for a huge number of data may easily occur, i.e. lost data and noise perturbation; the discontinuity of segmentation deteriorates surface accuracy; the motion speed becomes unsmooth because of the linearization of the curve in each segment, especially in acceleration and deceleration.As the generated curves or profiles may be in a parametric form, only parametric curve information is required to be efficiently transferred among CAD/CAM/CNC systems as shown in Fig. I. Shpitalni et al. 1 proposed the curve segments transfer between CAD and CNC systems and Bedi et al. 2 proposed the B-spline curve and B-spline surface interpolation algorithm to obtain both accurate curves and gouge free surface. Huang and Yang 3 developed a generalized interpolation algorithm for different parametric curves with improved speed fluctuation. Moreover, Yang and Kong 4 studied both linear and parametric interpolators for machining processes.In these CNC systems, parametric curves are profiles in different formats like the Bezier curve, B-spline, cubic spline, and NURBS (non-uniform rational B-spline). The general parameter iteration method used is ui+1=ui+(ui) where ui is the present parameter, ui+1 is the next parameter, and (ui) is the incremental value. The interpolated points are calculated by substituting ui into the corresponding mathematical model to recover the originally designed curves. As the cutter moves straight between contiguous interpolated points, two position errors may occur as: (a) radial error; and (b) chord error 5 during motion for a parametric curve as shown in Fig.2.Parametric curve interpolatorSegmentation Man-Machine interface deviceParametric curve represented model Tool motion CAD CNC Fig.1. The machining systems with parameters transmissionParametric curve Cutter path D Radial error A Chord error Interpolated B C Fig. 2. The radial error and the chord error The radial error is the perpendicular distance between the interpolated points and the parametric curve. Basically, the radial error is caused by the rounding error of computer systerms. With the rapid development of microprocessors with higher precision, the radial error is no longer a major concern in present applications. In addition, the chord error is the maximum distance between the secant CD and the secant arc AB. A small curvature radius with a fast feedrate command may cause the chord error. Thus, an adaptive feedrate is required to keep the chord error within an acceptable range. However, cutting speed dominates the quality of the machining process. To achieve the specified feedrate for parametric curves is usually difficult. The undesirable motion speed may deteriorate the quality of the machined surface. Several researchers have developed different interpolation algorithms for parametric curves to improve motion speed accuracy. Bedi et al. 2 set (ui) as a constant to form the uniform interpolation algorithm which is the simplest method and its chord error and curve speed however are not guaranteed. According to the analysis of CNC machine kinematics and cutter path geometry , an improved interpolation algorithm in position, velocity, and acceleration was proposed by Chou and Yang 6 if the CNC machine kinematics model is known exactly. Further, Houng and Yang 3 developed the cubic spline parametric curve interpolator by using the Euler method. Shpitalni et al. 1 derived the same interpolator algorithm by using Taylors expansion. Lo and Chung 7 proposed the contouring error compensation interpolation algorithm which contains real-time contouring error calculations and a simplified parameter iteration method to achieve satisfactory motion accuracy. In acceleration and deceleration ,Kim 8 obtained a simple method for parametric curves while its position and speed errors are significant. The present speed-controlled interpolation algorithm is proposed by deriving a suitable compensatory parameter for the first-order approximation 1, 6, 8 to obtain desirable motion speed. Then, the proposed interpolator is applied to the constant-speed mode and the acceleration/deceleration mode to achieve constant feedrate and the specified speed profiles, respectively. Thus, the present CNC interpolators result in stable motion and smoothly changed speed to avoid mechanical shock or vibration in machining processes. The proposed speed-controlled interpolators have also been successfully applied to a NURBS command on a personal computer to achieve high motion precision.2.Parametric curve formulation: Suppose C(u) is the parametric curve representation function and the time function u is the curve parameter as u (t i) = u i and u (t i+1) = u i+1By using Taylors expansion, the approximation up to the second derivative is u i+1 = u i +(du/dtt=ti ) (ti+1ti) + 1/2 (d2u/dt2t=ti ) (ti+1ti) 2+HOT (1)As the curve speed V (ui) can be represented asV(ui) = dC(u)/dtu=ui = (dC(u)/duu=ui) (du/dtt=ti ) the first derivative of u with t is obtained asdu/dtt=ti = V(ui) / (dC(u)/dtu=ui) (2)By taking the derivative of Eq. (2) , the second derivative of u with t isdu/dtt=ti = 1/ (dC(u)/dt2u=ui)V(ui) d(dC(u)/dt)u=ui/dt (3)whered(dC(u)/dt)u=ui/dt=d(dC(u)/du)u=ui/dt (du/dtt=ti )=d(dC(u)/dt)u=ui/dtV(ui)/dC(u)/duu=ui (4)By substituting Eq. (4) into Eq. (3), the second derivative of u is rewritten asd2u/dt2t=ti = V2 (ui) / (dC(u)/du3u=ui)d(dC(u)/du)u=ui/du (5)whered(dC(u)/du)u=ui/du = (dC(u)/du)(d2C(u)/du2)/(dC(u)/duu=ui) (6)By substituting Eq. (6) into Eq. (5), the second derivative of u becamesd2u/dt2t=ti= V2 (ui)(dC(u)/du)(d2C(u)/du2)/(dC(u)/du4u=ui) (7)Let the sampling time in interpolation be Ts seconds and t i+1t i = Ts The first- and second-order approximation interpolation algorithms are obtained by substituting Eqs. (2) and (7) into Eq. (1) ,respectively. By neglecting the higher order term, the interpolation algorithms in Eq. (1) can be processed as follows: The first-order approximation interpolation algorithm 1, 6, 9u i+1 = u i + V(ui) Ts /(dC(u)/duu=ui) (8) The second-order approximation interpolation algorithm 6, 9u i+1 = u i + V(ui) Ts /(dC(u)/duu=ui) V2 (ui) T2s (dC(u)/du)(d2C(u)/du2)u=ui/ 2(dC(u)/duu=ui) (9)where V (ui) can be either the feedrate command, the specified speed profiles of ACC/DEC, or any desired speed in a general machining process.3.The speed-controlled interpolation algorithm:3.1. The compensatory parameter In Eqs. (8) and (9), the first-order and the second-order interpolation algorithms are approximated results by neglecting the higher order term as in Eq. (1) . Therefore, the approximation error for those methods is unavoidable and an interpolation algorithm concerning the curve speed is proposed in this paper. The present interpolation algorithm is based on the first-order approximation interpolation algorithm with a compensatory value(ui) asui+1 = ui+1 +(ui)where(ui) is the compensatory value andui+1 = ui + ( V(ui) Ts)/(dC(u)/duu=ui) To precisely calculate the compensatory value(ui), Taylors expansion for the curve and its speed must be concerned. SupposeCx(u)C(u) = Cy(u)is the parametric curve representation function for the X and Y axe, the interpolated points Cx(ui+1) and Cy(ui+1) are approximated as follows:Cx(ui+1) = Cx(ui+1) +(d Cx(ui+1)/du)(ui) (10)Cy(ui+1) = Cy(ui+1) +(d Cy(ui+1)/du)(ui) (11)There are two approximation techniques used in deriving the interpolation algorithm. The first one C ui+1 u i+1 D u i Fig. 3. Geometrical representation of parameters.is the Taylors expansion of the parameter u with respect to the time t to obtain the first-or second-order approximation interpolation algorithms 1, 6, 9, as in Eqs. (8) and (9). The second one is the Taylors expansion of curve C with respect to the parameter u as in Eqs. (10) and (11). By comparing Eqs. (1), (8) and (9) with Eqs. (10) and (11), the higher-order term of the Taylors expansion in the first approximation is estimated as the compensatory value(ui) by applying the second approximation. Eqs. (10) and (11) implies that the difference between positionCx(ui+1) Cx(ui+1) and Cy(ui+1) Cy(ui+1)is determined by the slope of curve with the adjustment gain(ui). Although V (ui) is the instantaneous velocity at u = ui in the interpolation algorithm, it is usually assigned as the constant feedrate command F in real interpolation applications. The following equation is provided to accurately achieve a linear motion fromCx(ui) Cx(ui+1) to Cy(ui) Cy(ui+1)with the desired speed V (ui):Cx(ui+1) Cx(ui) 2 + Cy(ui+1) Cy(ui) 2/ Ts = V (ui) (12) then, a quadratic equation for the compensatory parameter is derived as U2 + Z+ W = 0where U = X (ui+1) 2 + Y (ui+1) 2Z = 2DXX (ui+1) +DYY (ui+1)W=DX2 + DY2 (V (ui) Ts) 2DX = Cx(ui+1) Cx(ui)DY = Cy(ui+1) Cy(ui)X (ui+1) = d Cx(ui+1) / duY (ui+1) = d Cy(ui+1) / du The compensatory value(ui) can be directly obtained as1,2(ui) = Z( Z2 4UW )/ 2U = DXX (ui+1) +DYY (ui+1)X (ui+1) 2 + Y (ui+1) 2 ( V(ui) Ts) 2 DY X (ui+1) DX Y (ui+1) 2/ X (ui+1) 2 + Y (ui+1) 2 (13)3.2. Selection of compensatory parametersAs the two values in Eq. (13) are the roots of a quadratic equation, characteristics of roots have to be discussed in real applications. Define two vectors as DXD = DY X (ui+1) C= Y (ui+1)Eqs. (13) can be rewritten as1,2(ui) = (DC) C2 (V (ui) Ts) 2 CD2/C2 (14)where the geometrical relationship between vectors D and C correspond to parameters among which the parameters ui, ui+1, ui+1 are shown in Fig. 3. is the angle between the difference vector D and the differential vector C, and C2 (V (ui) Ts) 2 CD2 = C2 Ts2 V2 (ui) (CD2/C2Ts2 ) = C2Ts2 V2 (ui) (C /C) (D/ Ts)2=C2 Ts2 V2 (ui) D / Ts2sin2As C2 0 and Ts2 0, C2 (V (ui) Ts) 2 CD2 has the same sign as V2 (ui) D / Ts2sin2 The solution of Eq. (13) can be in the following three categories: (i) 1,2 (ui) are two different real numbers if V (ui) (D/ Ts ) 2 sin2 (ii) 1,2 (ui) are the same real numbers ifV (ui) (D/ Ts ) 2 sin2 (iii) 1,2 (ui) are a pair of complex conjugate numbers ifV (ui) (D/ Ts ) 2 sin2 a ui bFig. 4. Illustrativem condition (ii) and (iii). Compared with (D/ Ts ) and the desired speed V (ui), we conclude that the sign of V2 (ui) (D/ Ts ) 2 sin2is dominated by angle . Conditions (ii) and (iii), which may produce the same real roots or complex conjugate roots of the quadratic equation, are shown in Fig. 4. As the vector D and the differential vector C are almost perpendicular and parameter ui+1 is near points a or b as shown in Fig. 4, sin21 and the conditions ofV2 (ui) (D/ Ts ) 2 sin2may occur. In physical meaning, the multiple real roots and the complex conjugate roots exist where the curvature is relatively large. In general applications, the curvature should be small to achieve precise interpolation. Thus, conditions (ii) and (iii) are not allowed in real applications and only the two different real roots as in condition (i) are concerned in the present algorithm. According to Eq. (14)1,2(ui) = (DC /C) (V (ui) Ts) 2 C /CD2 /C = (Dcos) (V (ui) Ts) 2 D2 sin2 / C Let(V (ui) Ts) 2 D2 = By applying Taylors expansion, roots of the quadratic equation have the approximated values in simple forms as1/ 2CDcos2 2Dcos /CAs is small, the first root is near zero and the other root is negative and relatively large. To achieve reliable compensation and forward motion during the interpolation process., the small compensatory parameter is preferable is as1,2(ui) = Z( Z2 4UW )/ 2U = DXX (ui+1) +DYY (ui+1)X (ui+1) 2 + Y (ui+1) 2 ( V(ui) Ts) 2 DY X (ui+1) DX Y (ui+1) 2/ X (ui+1) 2 + Y (ui+1) 2As the present speed-controlled interpolation algorithm incorporates the first approximation interpolation algorithm and a suitable compensatory value which corrects the curve speed error, the obtained curve speed almost equals the specified speed V (ui) during the interpolating process. The roots conditionC2 ( V(ui) Ts) 2 C D2can be examined before calculating the compensatory value. When the undesirable condition may occur, the compensatory value is set to be zero to avoid the complex conjugate roots. In real machining processes, the present interpolator achieves (1) a constant speed and (2) specified ACC/DEC. The constant speed mode keeps the curve speed almost the same as the given constant feedrate command during the machining process. The ACC/DEC mode makes the curve speed in smooth profiles with the specified speed for machining parametric curves.Y axis (mm)150100 50 050100150 150 100 50 0 50 100 150 X axis (mm) Fig. 5. The example of NURBS.4.Applications:4.1. The example of NURBS In this simulation, the interpolator is written by Turbo C2.0 and is executed on a personal computer with both 80 and 200 MHZ CPU. The present interpolator is applied to a NURBS 10 parametric curve with two degrees as shown in Fig. 5. The control points, weight vector, and knot vector of NURBS are assigned as follows: The ordinal control points are 0 150 150 0 150 150 0 , , , , , , and (mm). 0 150 150 0 150 150 0 The weight vector is W = 1 25 25 1 25 25 1. The knot vector is U = 0 0 0 1/4 1/2 1/2 3/4 1 1 1. The interpolating processes are as follows: the sampling time in interpolation is Ts =0.002 s and the feedrate command is F = 200 mm/s = 12 m/min. In many recent applications, the machining is in a high speed like high-speed machining, e.g. high speed milling 11-14, machining by linear motor 15, 16, and laser machining 17. In this example, the provided weight vector which results in sharp corners is used to exam the speed deviation of different interpolation algorithms under the feedrate command F = 200 mm/s = 12 m/min.4.2. The constant-speed mode The curve speed fluctuations for different interpolation algorithms are compared as below: (a) the uniform, (b) the first-order approximation 1, 6, 9 (c) the second-order approximation 6, 9 and (d) the proposed speed-controlled mode. Simulation results for different interpolation algorithms are shown in Fig. 6-8 and are summarized in Table 1. The curve speed fluctuation ratio for each intermediate point is calculated by i = (FVi)/F where Vi is the curve speed from the interpolated point C(ui) to C(ui+1) and F is the given feedrate command. According to the simulation results, most interpolation algorithms except the uniform interpolation result in high contouring accuracy with relatively small chord errors. As shown in Figs. 6-8, all the maximum speed deviation occurs at the four sharp corners. Moreover, the speed-controlled interpolation algorithm provides the best curve speed accuracy during the interpolating process. Simulation results show that the curve speed deviates within 0.004, 0.004 mm/s by applying the present speed-controlled interpolation algorithm. However, the second-order approximation achieves larger speed deviation within 0.2, 0.2 mm/s and the first-order approximation achieves the largest speed deviation within 5, 5 mm/s. mm/sec 206 204 202 200 198 196 194 0 1 2 3 4 5 6 Time (sec) Fig. 6. Simulation results of the first-order approximation.mm/sec 200.15 200.1 200.05 200 199.95 199.9 199.85 0 1 2 3 4 5 6 Time (sec) Fig. 7. Simulation result of the second-order approximation By applying the present algorithm, the roots of the quadratic for the compensatory value are also shown in Fig. 9. Fig. 9 indicates that one root is near zero which is adopted here while the other is negative and relatively large. The curve speed accuracy of the interpolator by applying the uniform interpolation algorithm is the worst cast because the undefined real map operation of curve and parameters is not uniform . Although the present interpolation algorithm takes a longer period to compute the compensatory value, its processing time can be significantly improved with an updated CPU to achieve desirable performance.4.3. The ACC/DEC mode In order to avoid shock or vibration of mechanical systems when staring and slowing down the axial travel, ACC/DEC algorithms are required during the machining process. The conventional ACC/DEC algorithms for parametric curves usually result in larger radial and chord errors.mm/sec 200.005 200.004 200.003 200.002 200.001 200 199.999 199.998 199.997 199.996 0 1 2 3 4 5 6 Time (Sec) Fig. 8. Simulation results of the present constant-speed interpolation. Magnitude (103) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 4 5 6 Time (sec) Fig. 9. Roots of quadratic equation1,2(ui).Kim 8 proposed the parametric ACC/DEC algorithm. As the mapping operation between the curve and the parameter is not uniform in nature, the ACC/DEC in the uniform parameter interpolation algorithm cannot obtain the desirable acceleration and deceleration.The curve speed errors in different acceleration profileslinear, parabolic, and exponential profiles with different interpolations as (a) the first-order approximation, (b) the second-order approximation, and (c) the speed-controlled interpolationare compared. The curve speed errorsby applying the parabolic ACC/DEC method are shown in Figs. 10-12 and are also summarizedSpeed deviation ( mm/sec ) 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 0 0.005 0.01 0.015 0.02 0.025 0.03 Time (sec) Fig. 10. Speed error of the first-order approximation during acceleration.Table 1Simulation results for differdent interpolation algorithmsTypeMeasureMean-square of speed error (mm/s)2The maximum speed fluctuation radioThe maximum chord error (mm)Computation time with 80MHZ CPU (s)Computation time with 200MHZ CPU (s)Uniform9.346106151.52440.036053114First order approximation 1,6,91.37180.02583 0.0036181 27 10Second order approximation 1,6,96.1091104 0.00201 0.003545 60 19Constant speed1.6791071.63981050.003540 77 26Table 2Measurement of the maximum curve speed errorInterpolationACC typeLinear (mm/s)Parabolic (mm/s)Exponential (mm/s)First order approximation3.73641043.71521044.0231104Second order approximation7.03171046.95181048.1802104Speed-controlled1.3091061.28681061.6420106in Table 2. Results indicate that the largest speed error is caused by applying the exponential ACC/DEC method and the smallest curve speed error is obtained by applying the parabolic ACC/DEC method. According to the simulation results, the curve speed is also changed parabolically during the acceleration process. Results also indicate that the present interpolation algorithm achieves the best speed accuracy with error magnitude 3-5 order less than when other methods are used. In general, ACC/DEC functions are required in real machining with different speed profiles, like linear, parabolic, and exponential types 5, 8. In this paper, the deceleration algorithm is the same as the acceleration algorithm except that the speed is decreasing during the process. Results indicate that the present speed-controlled interpolation algorithm achieves smooth acceleration and deceleration with the specified ACC/DEC speed profiles.Speed deviation (mm/sec)104 7 6 5 4 3 2 1 0 0 0.005 0.01 0.015 0.02 0.025 0.03 Time (sec)Fig. 11. Speed error of the second-order approximation during acceleration.Speed deviation (mm/sec) 106 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0 0.005 0.01 0.015 0.02 0.025 0.03 Time (sec) Fig. 12. Speed error of the speed-controlled interpolation during acceleration.5.Conclusions: The proposed speed-controlled interpolation algorithm has significantly improved curve speed accuracy for parametric curves by including a compensatory value. The constant-speed mode operates the contiguous interpolated points with a constant curve speed and the ACC/DEC mode generates interpolated points successively with smooth speed variation. The proposed interpolation algorithm provides the best accuracy in both position and speed in real machining processes. Although the processing time of the proposed interpolation algorithm is a little longer than the others, it has been successfully implemented with faster computers.附录B:英文资料翻译加工参数曲线的速度控制插补器 S.-S. Yeh, P.-L. Hsu 摘要: 现代计算机数字控制(CNC)系统的可加工任意参数曲线功能的设计不仅保证计算机辅助设计/计算机辅助制造(CAD/CAM)和 CNC 系统之间的庞大的数据通讯而且提高了它们的加工质量。虽然有效的 CNC 插补器对参数曲线通常能达到画轮廓的位置准确性,但是主导加工过程质量的指定进料速度,在运动期间没被保证。最近,一些关于运动速度的近似结果已经被报告 Shpitalni M , Koren Y, LoCC. 计算机辅助设计 1994;26(11):832-838; Bedi S, Ali, Quan N. Trans ASME J Engng制造业 1993;115:329-336; Chou JJ, Yang DCH. Trans. ASME J Engng制造业 1991;113:305-310; Chou JJ, Yang DCH. Trans ASME J Engng制造业 1992;114:15-22。这篇论文,源自一个补偿的参数,被提议的插补运算法则对提高曲线速度准确性有重要意义。在实际应用中,被提议的运算法则产生:(1) 恒定速度;和 (2) 指定了加速和减速(ACC/DEC)以符合进料速度要求。运动准确性和现在插补器的可行性提供了曲面曲线的非均匀有理样条(NURBS)的例子。 1999 Elsevier 科学公司. 版权所有。关键字: 参数曲线;CNC插补机;速度准确性;NURBS1. 介绍: 在现代的CAD/CAM系统中,对于零件轮廓像钢型、叶片、飞机模型和汽车模型通常以参数的形式表示。由于传统的 CNC 机床只提供直线的和圆弧的插补器,CAD/CAM系统必须分割曲线成很多的小的直线段而且将他们送到 CNC 系统。在实际应用中,传统CNC系统的这种轮廓线性化分割不符合要求表现如下: 在CAD/CAM和 CNC 系统之间的大量数据的传输错误可能很容易发生,也就是失去数据和噪音干扰; 不连续的分割影响表面的准确性; 尤其在加速和减速中,由于每个被分割线段的线性化,运动速度变得不平滑。由于通常曲线或轮廓可能以一种参数的形式, 所以需要唯一的参数曲线信息有效率地在CAD/CAM/CNC 系统之间传递, 如图1中所示。 1提议分割线段在CAD/CAM和CNC系统、Bedi 以及其它系统之间的传递。2 提议B样条曲线和B样条表面的插补运算法则获得两者精确的曲线以及自由地切削表面。Huang和Yang 3 为改善不同参数的曲线的速度变动提出了一个推广的插补运算法则。而且,Yang和Kong4 研究了直线和参数的插补加工过程。参数曲线插补分割 手动操作界面设备参数曲线模型刀具运动 计算机辅助设计 数控系统 图1 参数传输的加工系统在这些 CNC 系统中,参数的曲线是以不同的形式描绘,如贝塞尔曲线曲线, B样条曲线,立方曲线和 NURBS(非均匀有理的B样条曲线)。通常参数重复方法是 ui+1= ui+(ui) ui 是当前的参数,ui+1 是下一个参数, (ui) 是增加值。 被插补的点通过计算替换 ui 以对应数学模型修复原本的设计。当刀具在邻近两个插补点之间直线移动时,两个位置误差可能发生:(a) 径向误差;和 (b) 弦误差 5 在运动期间的参数的曲线如图2所示 参数曲线 刀具路径 D 径向误差 A 弦误差 B 插补点 C 图 2 径向误差和弦误差 径向误差是插补点和参数曲线之间的垂直距离。基本上,径向误差是由于计算机系统的舍入凑整所引起的。随着更高精密的微处理器的迅速发展,径向误差不再是现在实际应用中所主要关心的了。此外,弦误差是直线CD正切方向和弧AB正切方向的最大距离。在小的曲率处快速进料可能引起弦误差。因此,需要一个合适的进料速度以保证弦误差在一个合适的范围内。 然而,切削速度主导加工工艺的质量。通常参数曲线很难达到指定的进料速度很难。不符合要求的运动速度可能破坏机加工表面的质量。一些研究员已经提出了关于参数的曲线参数的不同插补运算法则以提高运动速度准确性。Bedi 以及其他人2 设定一个常数 (ui) 形成统一的插补运算法则。这种方法最简单,但它的弦误差和曲线速度不能被保证。根据CNC 机床运动学的分析和刀具路径几何学,Chou和Yang6提出了一个如果 CNC 机床运动学模型完全地被知道,在位置,速度和加速上更优良的插补运算法则。此外,Houng 和Yang3用Euler 方法被改良了立方参数曲线插补机。Shpitalni 以及其他人1由泰勒展开得出了相同插补运算法则。Lo和 Chung7 提出了包含实时的轮廓误差和简化参数重复方法的轮廓误差补偿插补运算法则从而达到运动的准确性。在加速和减速中,Kim8提出了一个当参数曲线位置和速度误差明显时,获得参数曲线的简单方法。现在的速度控制插补运算法则是通过一个适当的补偿参数作为第一位近似值以获得所需要的运动速度1,6,8。 然后,提出的插补器被用于恒速模型和加减速模型以分别取得恒定的进料速度和指定的速度轮廓。 因此,现在的 CNC 插补器获得了稳定的运动以及平滑的变速从而避免机械振动或加工过程的振动。提出的速度控制插补器已经在个人计算机上被成功地用于NURBS 指令达到高的运动精度。2.参数的曲线形成: 假设C(u) 是参数曲线的表现函数,时间函数u 是曲线参数 u(t i)= ui u(t i+1)= ui+1通过使用泰勒扩展,近似值等于二阶微分 u i+1 = u i +(du/dtt=ti ) (ti+1ti) + 1/2 (d2u/dt2t=ti ) (ti+1ti)2+HOT (1)同样地,曲线速度 V(ui)为V(ui) = dC(u)/dtu=ui = (dC(u)/duu=ui) (du/dtt=ti ) u对t 一阶微分du/dtt=ti = V(ui) / (dC(u)/dtu=ui) (2)由等式 (2) 的微分,得u 对t 的二阶微分为d2u/dt2t=ti = 1/ (dC(u)/dt2u=ui)V(ui) d(dC(u)/dt)u=ui/dt (3)这里d(dC(u)/dt)u=ui/dt=d(dC(u)/du)u=ui/dt (du/dtt=ti )=d(dC(u)/dt)u=ui/dtV(ui)/dC(u)/duu=ui (4)把等式 (4) 带入等式 (3),u 的二阶微分可化为d2u/dt2t=ti = V2 (ui) / (dC(u)/du3u=ui)d(dC(u)/du)u=ui/du (5)这里d(dC(u)/du)u=ui/du = (dC(u)/du)(d2C(u)/du2)/(dC(u)/duu=ui) (6)把等式(6) 带入等式 (5),u
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。