数控pcb钻机----驱动软件系统设计_第1页
数控pcb钻机----驱动软件系统设计_第2页
数控pcb钻机----驱动软件系统设计_第3页
数控pcb钻机----驱动软件系统设计_第4页
数控pcb钻机----驱动软件系统设计_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)题目数控PCB钻机驱动软件系统设计所属院(系)电子信息工程2012年06月06日目录摘要IIIABSTRACTIV第一章数控PCB钻孔机111CNC概述112PCB钻孔机的基本构造113PCB钻孔机的应用114钻孔机的使用方法315使用技巧及注意事项416数控系统的发展方向5第二章VC语言和动态链接库1021VC语言10211VC语言的介绍10212VC语言的开发环境11213VC适用范围12214VC语言初步13215MFC简介1422VC中的函数15221主函数与子函数15222函数的定义15223函数的声明16224函数的调用1623动态链接库18231DLL的介绍18232DLL的调用19233VC创建DLL20第三章PMAC运动控制卡和驱动器2231运动控制卡22311运动控制卡的定义与作用22312PMAC运动控制卡的简介22313PMAC卡的功能2532驱动器26321伺服驱动器的定义与作用26322伺服驱动器的介绍27第四章PCB钻孔机驱动软件设计2941交流伺服控制系统介绍29411伺服系统的组成29414伺服系统性能分析32413技术发展方向33414本设计采用的伺服系统3442驱动软件36421驱动软件功能36422系统结构图36423工作流程3743软件结构37总结41参考文献42致谢43摘要本论文围绕基于PMACPROGRAMMULTIPLEAXISESCONTROLLER的PCB钻孔机伺服驱动系统的设计,就体系结构、底层原理等方面进行了系统研究,从PMAC的介绍及功能、可扩展性、模块化等角度对PCB钻孔机驱动系统所达到的目标进行了分析,提出了利用PMAC构建CNC嵌入PC型结构的钻孔机系统的方法,即在通用的PC的扩展槽中插入运动控制板,PC将实现用户接口、文件管理以及通信等非实时部分的功能,实时控制由运动控制卡来承担。研究了现有WINDOWS平台上的软件开发技术,在采用分时的和多重中断的并行处理技术的基础上,利用VC60高级编程语言以及控制板自带的开放的函数库自行开发构造所需的数控系统界面,以满足用户需要。关键词数控钻机PMAC运动控制卡,松下驱动器,动态链接库,VC语言ABSTRACTTHISTHESISSTUDIESTHESTRUCTUREOFSYSTEM,BASICPRINCIPLEANDSOON,AROUNDTHEDESIGNOFSYSTEMOFPCBDRILLINGMACHINESERVODRIVEBASEDONPMACPROGRAMMULTIPLEAXISESCONTROLLERITANALYZESTHEAIMTHATTHEDESIGNOFSYSTEMOFPCBDRILLINGMACHINESERVOWILLACHIEVES,FROMINTRODUCTIONTOPMACANDITSFUNCTIONS,SCALABLE,MODULARITPROVIDESTHEMETHODOFDRILLINGMACHINEUSINGOFPMACCONSTRUCTINGTHEPCSTRUCTUREEMBEDDEDINCNC,VIZTHEMOVEMENTCONTROLINSERTSINTHEUNIVERSALEXPANSIONSLOTPANELANDTHENONREALTIMEPARTOFTHEFUNCTIONINCLUDINGUSERMOUTH,PROFILEMANAGEMENTANDCOMMUNICATIONS,ANDPMACCANTAKEONREALTIMECONTROLWHENSTUDYINGTHEMODERNSOFTWAREEXPLOITATIONTECHNOLOGYINTHEWINDOWSFLAT,BASEDONTIMEOFTHEADOPTIONOFPARALLELPROCESSINGTECHNOLOGYANDPARALLELPROCESSINGOFMULTIPLEINTERRUPTED,HIGHLEVELPROGRAMMINGLANGUAGESTOUSEVC60ANDOPENTHECONTROLPANELCOMESWITHITSOWNLIBRARYSTRUCTUREREQUIREDFORTHEDEVELOPMENTOFNUMERICALCONTROLSYSTEMINTERFACETOMEETUSERNEEDSKEYWORDSNUMERICALCONTROLDRILLINGMACHINEPMAC,PANASONICDRIVER,DLL,VC第一章数控PCB钻孔机11CNC概述数控是数字控制的简称,英文为NUMERICALCONTROL,简称NC。目前数控一般是采用通用或专用计算机实现数字程序控制,因此数控也称为计算机数控COMPUTERNUMERICALCONTROL,简称CNC,国外一般都称为CNC。数控NUMERICALCONTROL,NC数字控制是指用数字、文字和符号组成的数字指令来实现一台或多台机械设备动作控制的技术。它所控制的通常是位置、角度、速度等机械量和与机械能量流向有关的开关量。数控的产生依赖于数据载体和二进制形式数据运算的出现。现在,数控技术也叫计算机数控技术COMPUTERNUMERICALCONTROL,目前它是采用计算机实现数字程序控制的技术。这种技术用计算机按事先存贮的控制程序来执行对设备的控制功能。由于采用计算机替代原先用硬件逻辑电路组成的数控装置,使输入数据的存贮、处理、运算、逻辑判断等各种控制机能的实现,均可通过计算机软件来完成。12PCB钻孔机的基本构造PCB钻孔机专为批量加工精密PCB板而设计,配置包括轻质铝合金复式工作台、花岗岩床体、高精密滚珠丝杆、高精度钻孔主轴及人性化操作环境等,产品特具有精度高、速度快、振动小、刚性强、性能稳定、功能齐全等特点。钻孔机是一种精密数控机床。一般所用的电路板自动钻孔机的结构包括底座、操作平台、X方向运动机构、Z方向运动机构、Y方向运动机构、直流电机、钻头、识别模块、显示模块、定位模块、微处理器、驱动电路,所述操作平台设于Y方向运动机构上,操作平台的上部设有固定于底座上的X方向运动机构、Z方向运动机构、直流电机、钻头,识别模块分别与显示模块、存储模块、定位模块相连,识别模块识别PCB文件中的钻孔数据,定位模块对钻孔数据进行处理后送微处理器,微处理器根据孔的钻孔数据分别控制驱动电路,驱动X方向运动机构、Z方向运动机构、Y方向运动机构、直流电机动作,完成钻孔工作。结构简单、成本低、体积小、钻孔准确、运行稳定、不易损坏钻头。13PCB钻孔机的应用PCB钻孔机是应用于PCB加工过程中钻孔工艺的一种机器,PCB板在装插元件之前必须在板上钻出小孔让元件的针脚可以插入。随着PCB板的集成度越来越高,对孔径的要求越来越“小”,现在的孔径在01MM级别。PCB就是印刷电路板(PRINTEDCIRCUITBOARD,PCB)几乎会出现在每一种电子设备当中。如果在某样设备中有电子零件,那么它们也都是镶在大小各异的PCB上。除了固定各种小零件外,PCB的主要功能是提供上头各项零件的相互电气连接。随着电子设备越来越复杂,需要的零件越来越多,PCB上头的线路与零件也越来越密集了。板子本身的基板是由绝缘隔热、并不易弯曲的材质所制作成。在表面可以看到的细小线路材料是铜箔,原本铜箔是覆盖在整个板子上的,而在制造过程中部份被蚀刻处理掉,留下来的部份就变成网状的细小线路了。这些线路被称作导线(CONDUCTORPATTERN)或称布线,并用来提供PCB上零件的电路连接。由于目前的电子行业的工艺越发复杂,所以对PCB板的层数要求越来越高。在板卡领域比较常见的就是4层板与6层板两种。多层板有一个很大的优势就是使得电源网络与地网络可以在承担更大的电流的同时屏蔽掉更多的干扰,也因此可以极大的提高整个系统的稳定性。我们所使用的PCB板上有许多的孔,孔要X钻孔机钻出来。钻孔机是一种精密数控机床。钻床上有多组钻头术语叫做SPINDLE,像日本日立精工的钻机有六个SPINDLE。钻头在计算机的控制下可以在平面内精确定位,精度真位度在3密耳。钻孔机工作依X钻孔程序,钻孔程序告诉钻孔机的SPINDLE使用直径多大的钻头,应该在板子的哪个坐标位置上钻。操作手只要将板子固定在钻孔机内的平台上,调入正确的钻孔程序,按动开始键就OK了。钻孔需要的时间由孔数与孔径决定,孔数越多,孔径越小,耗时就越长。孔径越小,则钻针越细,所以进刀速与退刀速不能过快,否则容易断针,即钻头断在板子里。现在的电子产品向小型化方向发展,孔径也越来越小,10密耳相当于025MM的VIAHOLE已十分平常。仔细观察PC主板,那些细小的小点就是被防焊漆封住的VIAHOLE,多数直径就是10密耳左右。钻孔工段通常是PCB厂的产能瓶颈之一,一台钻机钻一批板子平均大概需要1小时左右,多则数小时,一批也就十几块,而机器的数目是固定的,在大量产的情况下,生产调度的安排就很重要了。所以PCB厂的钻孔车间总是灯火通明机器轰鸣一派繁忙景象。另外拥有钻孔机的数目也是PCB工厂规模的象征,大厂一般都拥有几十台至上百台钻孔机。要知道这种机床单台国内售价就在百万元上下。随着现代电子产品日益向小型化、高集成、高性能的趋势发展,对钻孔的孔径要求越来越小,钻孔精度越来越高,超短槽孔及长的槽孔等异形孔也越来越多。非圆形孔统称异形孔,是生产中最让人头痛的东西,在机械钻孔中碰到有短槽孔或长的槽孔时,不但严重影响生产效率且生产成本一下提高一半,可谓苦不堪言。因为槽孔不是一下子钻好的,而是一点一点地钻掉板材达到目的,当然又慢又容易报废还非常耗费昂贵的微型钻针。在主板上常见的一种像8字的槽孔,是让用户往机箱上固定时用的,这种孔就只能一点一点地钻出来,非常难过。由于机械钻孔的能力限制,现在出现了采用新技术的激光钻孔机,它具有快速、精准的优点,最小钻孔径可达1密耳量级,是专为生产类似CPU载板等高阶板子而产生的,在PCB大厂中已经得到应用。当然其价格也远非数控机械钻床所能比拟,即使是世界级的大厂,也以拥有激光钻机为荣。钻孔后有一项品检就是内层孔偏的检验,理论上每一处PT孔都应该位于内层PAD的中间。但一则前面压合有层偏,二则钻孔机有一定对位精度,所以总会有偏差。利用X射线成像观察内层孔偏离PAD中心的精度可以掌握板子的制作品质,这是厂内质量控制的重要程序。钻孔机的钻头有高速钢,钛合金,钨合金,钴合金等很多种,可钻硬度视钻头不同而不同,一般合金类钻头可钻硬度高一些,表面硬度HRC55的金属基本没问题,某些特殊合金钻头可钻硬度达到HRC62。14钻孔机的使用方法当您购买到PCB线路板快速制作机时,自然立即想制作一张线路板来看看它的强大功能,但请别着急,并请仔细阅读说明书及本栏操作介绍后再动手,您将很快熟悉操作并会被它的魅力深深吸引。1)请检查您的配件是否齐全说明书、紧固工具、DK雕刻驱动程序光盘、刀具、钻头、串口延长线、电源线、少量敷铜板、主轴电机碳刷。2)把机器平放在工作平台上,取出串口延长线(DB9电缆线),连接机箱右侧通讯接口与计算机COM1口上,连接好电源线。3请确认您的计算机操作系统为WIN98/2000/XP,内存最低配置256M,打开计算机并放入DK雕刻驱动程序光盘,运行相应的SETUPEXE文件。打开PROTEL的一个PCB文件并导入DK。4)可根据线路板设计选择合适的刀具,而DK操作界面的刀具选择参数,建议选择略小于PROTELPCB文件设计中的安全距离(例如选择038MM的刀具刀具参数宜选择036MM),必须在打开文件后看看有没有因刀具选择错误而造成的线路板线粘连,直到选择正确为止。根据线路板厚度设定DK操作的“板厚”参数,此操作为执行钻孔和割边时提供准确数据。5)因操作系统执行割边和钻孔时,会在略低于线路板底部工作,为保护刀具、钻头和机器工作平台,工作平台须装上一张比要制作的线路板相当或略大的敷铜板作垫板,然后再放置想要制作的线路板;注意,敷铜板用薄双面胶放置较理想,粘贴敷铜板时要求粘贴面无颗粒物,用手压平以确保铜板放置平整,所使用铜板亦要求平整,以确保雕刻制作线路板质量。装铜板时切记注意装在主轴电机上的刀尖,必要时装好铜板,再装刀尖以策安全。6)铜板、刀具装妥,在未打开机器主电源时移动主轴及工作平台,使刀尖对在铜板右下角附近,在确认主轴电源关闭的情况下,打开主电源,此时联机灯为绿色,按联机键使联机灯转为红色,表示机器处于脱机状态;调整X、Y轴位置,然后调整Z轴高度,使刀尖接近敷铜板,用Z1MM键粗调至目测距离接近铜板,用一张废纸(建议用双面胶所撕下的白纸)放在线路板上,改用Z01MM逐步调近,最后用Z001MM调近,直到刀尖刚压住纸。7)关上机门,按联机键,使联机灯变成绿色,打开主轴电源。若PCB文件刀具、板厚参数已设好,可按试雕键,刀头开始移动,按所设计的线路板最大面积雕刻一个矩形,观察雕刻深度是否符合要求,如过深或过浅,先按联机键使其成脱机状态。按Z轴调节按钮调节高度,再按联机键使其联机,再按试雕,直到雕刻深度符合要求后,按雕刻键雕刻。完成雕刻后,主轴继续旋转,但停在线路板右下角不移动,此时按切边键,机器开始按您的设计切割外形,完成切割过程后,关闭主轴电源,这时切勿关闭主电源,按联机键使联机灯转为红色,按Z轴调节键把Z轴升高,取出平底尖刀,更换钻头,调整Z轴使钻头压住白纸,按联机键使联机灯变成绿色,关上机门,打开主轴电源,按钻孔键开始钻孔,完成所有操作后请关闭主电源及主轴电源。15使用技巧及注意事项1、形成良好的习惯,打开主电源前确认主轴电源关闭。关闭主电源时,同时关上主轴电源。2、装刀具、钻头收紧固定螺丝。3、联机灯绿色为计算机与机器联机状态,红色为脱机状态,联机状态下,X、Y、Z轴移动按钮不受控制,并非故障。4、工作状态下发现刀头过深或过浅,可按联机键使联机灯变红色,主轴继续旋转但不移动,此时可调节主轴高度后继续联机工作。5、当打开电源时,整个控制面板所有的灯闪烁,这是机器未复位成功,请关闭主电源及主轴电源,过一、二秒钟后再打开;如在工作过程中突然关闭主电源,随即又打开主电源的话,因机器未完全复位,会导致机器胡乱作业,切勿乱试。6、打开文件时提示“非PCB文件”,本机兼容PROTELASIC28文件格式,如您的绘图软件不能输出此格式,请在PROTEL99中导入您所设计的文件,转换后导出此格式文件。7、打开文件时提示“无KEEPOUTLAYER”,本机以禁止布线层为线路板外边框,您所设计的PCB文件一定要在KEEPOUTLAYER画上一条边框线,线宽等于刀具直径(315MM)。8、显示“超出雕刻范围”,在KEEPOUTLAYER以外或贴近KEEPOUTLAYER处有元件或线条,请修改线路图。9、按功能键机器无响应,请检查串口线是否正确连接检查联机灯是否绿色。10、保持钻孔机电压的稳定。因为如果电压不稳,电机的转速也不稳,钻出来的孔表面较粗糙。同时钻头受力时大时小,容易损坏、折断,危及人身安全。此外,钻孔机的电机也会时常大于正常钻孔时的电流,容易造成电机过热而烧毁绕组的绝缘。16数控系统的发展方向(一)数控系统向开放式体系结构发展20世纪90年代以来,由于计算机技术的飞速发展。推动数控技术更快地更新换代。世界上许多数控系统生产厂家利用PC机丰富的软硬件资源。开发开放式体系结构的新一代数控系统。开放式体系结构使数控系统有更好的通用性、柔性、适应性和可扩展性,易于实现智能化和网络化。国外近几年许多国家纷纷研究开发这种系统,如美国科学制造中心NCMS与空军共同领导的“下一代工作站/机床控制器体系结构”NGC。欧共体的“自动化系统中开放式体系结构”OSACA,日本的OSEC计划等。开放式体系结构可以大量采用通用微机技术,使编程、操作以及技术升级和更新变得更加简单快捷。开放式体系结构的新一代数控系统,其硬件、软件和总线规范都是对外开放的,数控系统制造商和用户可以根据这些开放的资源进行系统集成,同时它也为用户根据实际需要灵活配置数控系统带来极大方便。促进了数控系统多档次、多品种的开发和广泛应用,开发生产周期大大缩短。同时,这种数控系统可随CPU升级而升级,而结构可以保持不变。近年来开放式数控系统软硬件平台已在DOS、LINUX操作系统平台开发成功。已经开发出了车床、铣床、加工中心、仿形、轧辊磨、滚刀磨、拉刀磨、工具磨、凸轮轴磨床、非圆齿扇插齿机、齿条插齿机、弧齿锥齿轮铣齿机、镗床、激光加工、玻璃机械、纺织机械和医疗机械等30多个数控系统应用品种。这也证明华中数控系统具有优良的开放性和二次开发性。(二)数控系统向软数控方向发展,现在实际用于工业现场的数控系统主要有以下四种类型,它们分别代表了数控技术的不同发展阶段,对不同类型的数控系统进行分析后发现。数控系统不但从封闭体系结构向开放体系结构发展,而且出现了从硬数控向软数控方向发展的趋势。1传统数控系统,如FANUC0系统、MIT2SUBISHIM50系统和SINUMERIK810M/T/G系统等。这是一种专用的封闭体系结构的数控系统。目前,这类系统占领了制造业的大部分市场。但由于开放体系结构数控系统的发展,传统数控系统的市场正在受到挑战,已逐渐减小。2“PC嵌入NC”结构的开放式数控系统,如FANUC18I、16I系统、SINUMERIK840D系统、NUM1060系统和AB9/360等数控系统。这是数控系统制造商将多年来积累的数控软件技术与当今计算机丰富的软件资源相结合开发的产品。它具有一定的开放性,但由于它的NC部分仍然是传统的数控系统。用户无法介入数控系统的核心。这类系统结构复杂、功能强大,价格昂贵。3“NC嵌入PC”结构的开放式数控系统它由开放体系结构运动控制卡和PC机共同构成。这种运动控制卡通常选用高速DSP作为CPU,具有很强的运动控制和PLC控制能力。它本身就是一个数控系统,可以单独使用。它开放的函数库供用户在WINDOWS平台上自行开发构造所需的控制系统。因而这种开放结构运动控制卡被广泛应用于制造业自动化控制各个领域。如美国DELTATAU公司用PMAC多轴运动控制卡构造的PMACNC数控系统、日本MAZAK公司用三菱电机的MELDASMAGIC64构造的MAZATROL640CNC等。4SOFT型开放式数控系统这是一种最新开放体系结构的数控系统。它提供给用户最大的选择和灵活性,它的CNC软件全部装在计算机中。而硬件部分仅是计算机与伺服驱动和外部I/O之间的标准化通用接口。就像计算机中可以安装各种品牌的声卡和相应的驱动程序一样。用户可以在WINDOWSNT平台上,利用开放的CNC内核,开发所需的各种功能,构成各种类型的高性能数控系统,与前几种数控系统相比,SOFT型开放式数控系统具有最高的性能价格比,因而最有生命力。通过软件智能替代复杂的硬件,正在成为当代数控系统发展的重要势。其典型产品有美国MDSI公司的OPENCNC、德国POWERAUTOMATION公司的PA8000NT等。(三)数控系统控制性能向智能化方向发展智能化是21世纪制造技术发展的一个大方向。随着人工智能在计算机领域的渗透和发展。数控系统引入了自适应控制、模糊系统和神经网络的控制机理,不但具有自动编程、前馈控制、模糊控制、学习控制、自适应控制、工艺参数自动生成、三维刀具补偿和运动参数动态补偿等功能,而且人机界面极为友好,并具有故障诊断专家系统使自诊断和故障监控功能更趋完善。伺服系统智能化的主轴交流驱动和智能化进给伺服装置,能自动识别负载并自动优化调整参数。世界上正在进行研究的智能化切削加工系统很多,其中日本智能化数控装置研究会针对钻削的智能加工方案具有代表性。(四)数控系统向网络化方向发展数控系统的网络化,主要指数控系统与外部的其它控制系统或上位计算机进行网络连接和网络控制。数控系统一般首先面向生产现场和企业内部的局域网,然后再经由因特网通向企业外部,这就是所谓INTERNET/INTRANET技术。随着网络技术的成熟和发展,最近业界又提出了数字制造的概念。数字制造,又称“E2制造”,是机械制造企业现代化的标志之一,也是国际先进机床制造商当今标准配置的供货方式。随着信息化技术的大量采用,越来越多的国内用户在进口数控机床时,要求具有远程通讯服务等功能。数控系统的网络化进一步促进了柔性自动化制造技术的发展,现代柔性制造系统从点数控单机、加工中心和数控复合加工机床、线FMCFMS、FTL、FML向面工段、车间、独立制造岛FA、体CIMS、分布式网络集成制造系统的方向发展。柔性自动化技术以易于联网和集成为目标,同时注重加强单元技术的开拓、完善,数控机床及其构成柔性制造系统能方便地与CAD、CAM、CAPP、MTS联结,向信息集成方向发展,网络系统向开放、集成和智能化方向发展。(五)数控系统向高可靠性方向发展制造商追求的目标。对于每天工作两班的无人工厂而言,如果要求在16H内连续正常工作,无故障率在PT99以上,则数控机床的平均无故障运行时间MTBF就必须大于3000H。我们只对某一台数控机床而言,如主机与数控系统的失效率之比为101数控的可靠比主机高一个数量级,此时数控系统的MTBF就要大于333333H,而其中的数控装置、主轴及驱动等的MTBF就必须大于10万H。如果对整条生产线而言,可靠性要求还要更高。当前国外数控装置的MTBF值已达6000H以上,驱动装置达30000H以上,可以看到距理想的目标还有差距。(六)数控系统向复合化方向发展在零件加工过程中有大量的无用时间消耗在工件搬运、上下料、安装调整、换刀和主轴的升降速上,为了尽可能降低这些无用时间,人们希望将不同的加工功能整合在同一台机床上。因此,复合功能的机床成为近年来发展很快的机种。柔性制造范畴的机床复合加工概念是指将工件一次装夹后,机床便能按照数控加工程序,自动进行同一类工艺方法或不同类工艺方法的多工序加工,以完成一个复杂形状零件的主要乃至全部车、铣、钻、镗、磨、攻丝铰孔和扩孔等多种加工工序。普通的数控系统软件针对不同类型的机床使用不同的软件版本,比如SIEMENS的810M系统和802D系统就有车床版本和铣床版本之分。复合化的要求促使数控系统功能的整合。目前,主流的数控系统开发商都能提供高性能的复合机床数控系统。宝鸡机床厂已经研制成功的CX25Y数控车铣复合中心,该机床同时具有X、Z轴,以及C轴和Y轴。通过C轴和Y轴,可以实现平面铣削和扁孔、槽的加工。该机床还配置有强动力刀架和副主轴。副主轴采用内藏式电主轴结构,通过数控系统可直接实现主轴与副主轴转速同步。该机床工件一次装夹即可完成全部加工,极大地提高了效率。(七)数控系统向多轴联动化方向发展由于在加工自由曲面时,三轴联动控制的机床无法避免切速接近于零的球头铣刀端部参予切削,进而对工件的加工品质造成破坏性影响,而五轴联动控制对球头铣刀的数控编程比较简单,并且能使球头铣刀在铣削3维曲面的过程中始终保持合理的切速,从而显著改善加工表面的粗糙度和大幅度提高加工效率。因此,各大系统开发商不遗余力地开发五轴、六轴联动数控系统,随着五轴联动数控系统和编程软件的成熟和日益普及,五轴联动控制的加工中心和数控铣床已经成为当前的一个开发热点。从1999年开始,在CIMT、CCMT等国际、国内机床展览会上,首先是国内的五轴数控机床产品纷纷亮相,国内五轴数控机床的市场逐渐打开,随后国际机床巨头纷至沓来,五轴数控机床的品种和数量逐年上升CIMT99、CCMT2000分别推出3台国产五轴联动机床CIMT2001国际机床展览会上,北京第一机床厂和桂林机床股份有限公司分别展出了主轴转速10000R/MIN的五轴高速龙门加工中心,北京市机电院的主轴转速15000R/MIN的五轴高速立式加工中心清华大学与昆明机床股份有限公司联合研制的XNZ63,采用标准STEWART平台结构,可实现六自由度联动大连机床厂自行研制的串并联机床DCB510,其数控系统由清华大学开发,该机床通过并联机构实现X、Y、Z轴直线运动,由串联机构实现A、C轴旋转运动,从而实现五轴联动,其直线快速进给速度可达80M/MIN。这些机床均已达到国际先进水平,体现出我国机床工业为国防尖端工业发展提供装备的实力,又有突破性提高。中国机床工业的发展,利用自己研制的高精尖产品参与国际竞争,打破了国际技术垄断,国际机床巨头们不愿失去中国这个大有潜力可挖的市场,于是蜂拥而来,把他们的产品“送上门来”国外展团共展出五轴加工中心8台、五轴车铣加工中心1台、五轴数控刀具磨床5台。第二章VC语言和动态链接库21VC语言211VC语言的介绍VISUALC由微软公司所发布,是一种在C语言基础上的开发工具(也有人视其为整合开发环境),主要用来开发窗口应用程序。VC是许许多多技术的综合,包括C语言基础;C最基本内容(类,继承性,封装性,多态性概念),养成一种严谨的软件开发习惯,熟悉软件工程的基本原则;如何用向导建立一个程序框架;设计菜单;设计工具条;设计和使用对话框;熟悉最常用的对话框控件;按钮静态文本,编辑框等;知道怎样新建类,成员函数,成员变量,消息处理函数;了解最常用的WINDOWS消息如WMPAINT(重绘窗口),鼠标按下,弹起,移动,初始化对话框等;了解最简单的GDI(图形设备接口)写文字,画框,画点,画线,画圆,设置画笔,画刷;熟悉最常用的MFC类。“C”称为“带类的C”,VISUALC就是在C语言基础上引入面向对象的机制而形成的一门程序设计语言。“VISUAL”即可视化,是指一种开发图形界面的方法,这种方法不必书写程序来产生图形界面,只要使用工具箱的工具,在程序设计阶段便可完成,属于一种“WHATYOUSEEISWHATYOUGET”的直觉式设计概念,利于操作。VISUALC的起源要追溯到C语言的发明,随着C语言先后被移植到各种型号的计算机上,在20世纪80年代,美国AT一个例外是菜单(CMENU)不是从窗口派生的。该类很大,一开始也不必学,知道就行了。CDOCUMENT文档,负责内存数据与磁盘的交互。最重要的是ONOPENDOCUMENT读入,ONSAVEDOCUMENT(写盘),SERIALIZE(读写)CVIEW视图,负责内存数据与用户的交互。包括数据的显示、用户操作的响应(如菜单的选取、鼠标的响应)。最重要的是ONDRAW重画窗口,通常用CWNDINVALIDATE来启动它。另外,它通过消息映射表处理菜单、工具条、快捷键和其他用户消息。你自己的许多功能都要加在里面,你打交道最多的就是它。CDC设备文本。无论是显示器还是打印机,都是画图给用户看。这图就抽象为CDC。CDC与其他GDI(图形设备接口)一起,完成文字和图形、图像的显示工作。把CDC想象成一张纸,每个窗口都有一个CDC相联系,负责画窗口。CDC有个常用子类CCLIENTDC(窗口客户区),画图通常通过CCLIENTDC完成。22VC中的函数在本设计中,VC语言丰富的运动函数库为单轴及多轴的步进或伺服控制提供了许多运动函数,如单轴运动、多轴独立运动、多轴插补运动等等。所以这里简单介绍下VC语言中的函数及函数的调用。一个大型程序的总体设计原则是模块化,将程序划分为若干个模块,每个模块完成特定的功能。模块之间通过参数和返回值或其他方式相联系。221主函数与子函数C程序是函数的集合,由一个主函数MAIN和若干子函数组成。主函数MAIN是一个特殊的函数,由操作系统调用,并在程序结束时返回到操作系统。程序总是从主函数开始执行,即从主函数的前花括号开始执行,一直到主函数的后花括号结束为止。C的函数分为标准库函数和用户自定义函数。标准库函数由C系统提供,可以直接使用,但需要在系统中包含相应的头文件;用户自定义函数是由用户自己根据需要编写的。222函数的定义函数是语句序列的封装体。C中每一个函数的定义都是由4部分组成。类型说明符,函数名,参数表和函数体。格式为()类型说明符指出函数的类型,即函数返回值的类型。没有返回值时,其类型说明符为VOID。参数表由零个、一个或多个参数组成。如果没有参数成为无参函数,反之称为有参函数。在定义函数时,参数表内给出的参数需要指出其类型和参数名。223函数的声明函数的声明和函数的定义不同。函数的定义由语句来描述函数的功能;函数的声明是在调用该函数前,说明函数类型和参数类型。1、函数原型函数原型是由函数定义中抽取出来的能代表函数应用特征的部分,包括函数类型、函数名、参数个数及类型。其格式为()参数表中不必包含参数的名称,可以只包含参数的类型。函数原型中的参数名对编译器没有意义,但也可以写出参数名,这是参数名相当于注释。2、函数声明C要求函数在被调用之前,应当让编译器知道该函数的原型,以便编译器利用函数原型提供的信息去检查调用的合法性,强制参数转换成为适当类型,保证参数的正确传递。对于标准库函数,其声明在头文件中,可以用INCLLUDE宏命令包含这些原型文件;对于用户自定义函数,先定义、后调用的函数可以不用声明,但后定义、先调用的函数必须声明。224函数的调用在C中,函数调用可采用传值调用和引用调用两种方式实现。函数的调用是通过栈空间进行的,存放不同函数的栈空间是相互独立的。其过程为将调用函数中的现场和返回地址(调用语句下一语句的地址)压入栈空间,向被调传递参数,为被调函数中的参数分配存储空间,将控制权交给被调函数,进入被调函数,执行被调函数中语句序列,最后从栈空间中弹出主调函数的现场和返回地址,返回主调函数,将控制权交给主调函数。函数调用通过形参和实参、返回值或其他方式进行数据传递。函数调用的格式为()1、形参和实参参数表是由零个、一个或多个参数组成。每个参数是一个表达式,用逗号分隔。对于有参函数,在主调函数和被调函数之间有数据传递关系。定义函数时函数名后面括号内的表达式称为形式参数(简称“形参”),被调函数名后面括号中的表达式称为实际参数(简称“实参”),。实参和形参的应个数相等、类型一致。实参和形参按顺序对应传递数据。2、函数的返回值主调函数通过函数的调用得到一个确定的值,称为函数的返回值。返回值是通过被调函数中的RETURN语句获得的。格式为RETURNRETURN是一条转向语,它的作用是将被调函数内程序的执行顺序返回给主调函数内的调用语句,然后去执行主调函数的下一语句。在有返回值时,需将返回值传递给调用函数。如果函数无返回值时,可以使用仅有关键字RETURN的语句,只返回程序的控制权;也可不写RETURN语句,因为函数体定界符的右花括号具有RETURN功能。对于MAIN()函数,如果函数头为VOIDMAIN(),则不返回任何值给操作系统,所以MAIN()的函数体最后,不需要RETURN语句;如果函数头为INTMAIN()或MAIN(),则在函数体的最后必须给出RETURN1或RETURN0语句。对操作系统而言,RETURN1或RETURN0都没有意义,因此长采用VOIDMAIN()的定义格式。传值调用和引用调用1)传值调用又分为数据传值调用和地址传值调用。数据传值调用方式是将实参的数据值传递给形参。实参和形参在栈空间内的地址不相同,改变形参值不影响实参值;地址传值调用方式是将实参的地址值传递给形参,实参和形参在栈空间内共用同一地址,改变形参值就可改变实参值。2)引用调用是将实参变量值传递给形参,而形参是实参变量的引用名。引用时给一个已有变量起的别名,对引用的操作就是对该已有变量的操作。引用调用可以起到地址传值调用的作用,即改变形参值就可改变实参值。引用调用比地址传值调用更为简单,在C中较多地使用引用调用代替地址传值调用。4、函数调用方式1)语句调用把函数调用作为一条语句。2)表达式调用函数出现在表达式中,要求函数带回一个确定的值参加表达式的运算。3)参数调用把函数作为一个函数的实参参加调用。23动态链接库231DLL的介绍DLL是DYNAMICLINKLIBRARY的缩写,意为动态链接库。DLL是一个包含可由多个程序同时使用的代码和数据的库,是基于WINDOWS程序设计的一个非常重要的组成部分。在WINDOWS中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。例如,在WINDOWS操作系统中,COMDLG32DLL执行与对话框有关的常见函数。因此,每个程序都可以使用该DLL中包含的功能来实现“打开”对话框,这有助于促进代码重用和内存的有效使用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。通过使用DLL,程序可以实现模块化,由相对独立的组件组成。通过使用DLL,程序可以实现模块化,由相对独立的组件组成。例如,一个计帐程序可以按模块来销售。可以在运行时将各个模块加载到安装了相应模块的主程序中。因为模块是彼此独立的,所以程序的加载速度更快,而且模块只在相应的功能被请求时才加载。此外,可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分。例如,您可能具有一个工资计算程序,而税率每年都会更改。当这些更改被隔离到DLL中以后,您无需重新生成或安装整个程序就可以应用更新。使用DLL有助于促进代码的模块化、代码重用、内存的有效使用。因此,操作系统和程序能够更快地加载和运行,并且在计算机中占用较少的磁盘空间。当某个程序或DLL使用其他DLL中的DLL函数时,就会创建依赖项。因此,该程序就不再是独立的,并且如果该依赖项被损坏,该程序就可能遇到问题。当某个程序或DLL使用其他DLL中的DLL函数时,就会创建依赖项。因此,该程序就不再是独立的,并且如果该依赖项被损坏,该程序就可能遇到问题。在WINDOWS文件保护中,操作系统禁止未经授权的代理更新或删除系统DLL。因此,当程序安装操作尝试删除或更新被定义为系统DLL的DLL时,WINDOWS文件保护将寻找有效的数字签名。专用的DLL可以使程序避免遭受对共享DLL进行的更改。专用DLL使用版本特定信息或空LOCAL文件来强制要求程序所使用的DLL的版本。要使用专用DLL,请在程序根文件夹中查找DLL。然后,对于新程序,请向该DLL中添加版本特定信息。对于旧程序,请使用空LOCAL文件。每个方法都告诉操作系统使用位于程序根文件夹中的专用DLL。232DLL的调用调用DLL,首先需要将DLL文件映像到用户进程的地址空间中,然后才能进行函数调用,这个函数和进程内部一般函数的调用方法相同。WINDOWS提供了两种将DLL映像到进程地址空间的方法1、隐式的加载时链接这种方法需要DLL工程经编译产生的LIB文件,此文件中包含了DLL允许应用程序调用的所有函数的列表,当连接器发现应用程序调用了LIB文件列出的某个函数,就会在应用程序的可执行文件的文件映像中加入一些信息,这些信息指出了包含这个函数的DLL文件的名字。当这个应用程序运行时,也就是它的可执行文件被操作系统产生映像文件时,系统会查看这个映像文件中关于DLL的信息,然后将这个DLL文件映像到进程的地址空间。系统通过DLL文件的名称,试图加载这个文件到进程地址空间时,它寻找DLL文件的路径按照先后顺序如下程序运行时的目录,即可执行文件所在的目录;当前程序工作目录;1)系统目录对于WINDOWS95/98来说,可以调用GETSYSTEMDIRECTORY函数来得到,对于WINDOWSNT/2000来说,指的是32位WINDOWS的系统目录,也可以调用GETSYSTEMDIRECTORY函数来得到,得到的值为SYSTEM32。2)WINDOWS目录列在PATH环境变量中的所有目录VC中加载DLL的LIB文件的方法有以下三种LIB文件直接加入到工程文件列表中在VC中打开FILEVIEW一页,选中工程名,单击鼠标右键,然后选中“ADDFILESTOPROJECT”菜单,在弹出的文件对话框中选中要加入的DLL的LIB文件即可。设置工程的PROJECTSETTINGS来加载DLL的LIB文件打开工程的PROJECTSETTINGS菜单,选中LINK,然后在OBJECT/LIBRARYMODULES下的文本框中输入DLL的LIB文件。过程序代码的方式加入预编译指令PRAGMACOMMENTLIB,“LIB”,这种方法优点是可以利用条件预编译指令链接不同版本的LIB文件。因为,在DEBUG方式下,产生的LIB文件是DEBUG版本,如REGDLIB;在RELEASE方式下,产生的LIB文件是RELEASE版本,如REGDLIB。当应用程序对DLL的LIB文件加载后,还需要把DLL对应的头文件(H)包含到其中,在这个头文件中给出了DLL中定义的函数原型,然后声明。显式运行时的链接隐式链接虽然实现较简单,但除了必须的DLL文件外还需要DLL的H文件和LIB文件,在那些只提供DLL文件的场合就无法使用,而只能采用显式链接的方式。这种方式通过调用API函数来完成对DLL的加载与写在,其能更加有效地使用内存,在编写大型应用程序时往往采用此方式。这种方法编程具体实现步骤如下使用WINDOWSAPI函数LOADLIBRARY或者MFC提供的AFXLOADLIBRARY将DLL模块映像到进程的内存空间,对DLL模块进行动态加载。使用GETPROCADDRESS函数得到要调用DLL中的函数的指针。不用DLL时,用FREELIBRARY函数或者AFXFREELIBRARY函数从进程的地址空间显式写在DLL。233VC创建DLL在VC50中可以用MFCAPPWIZARD自动生成WIN32DLL和MFCAPPWIZARDDLL,启动VC之后,从FILE/NEW菜单项,选择NEW对话框中的PROJECRS标签,选择新项目为MFCAPPWIZARD(DLL),输入工程名PBDLL,点击OK按钮,弹出一个对话框,选择DLL类型为REGULARDLLUSINGSHAREDMFCDLL,然后点击FINISH按钮。这样,APPWIZARD将自动创建一个包含基本要素的DLL框架,接着手工添加代码。自动生成的MFCAPPWIZARDDLL打开PBDLLCPP文件,添加如下函数EXTERN“C”DECLSPEC(DLLEXPROT)INTPASCALOUTNUM(INT)INTY;CHARMSG30;YX2SPRINTFMSG,”计算结果0“,Y;MESSAGEBOX(NULL,MSG,“信息”,MB_OK)RETURN0;以上声明了函数OUT_NUM(),输入参数为一个整型数作移位运算后,用对话框将计算结果显示出来。接着打开PBDLLDEF文件,在EXPCRTS下输入函数说明OUT_NUM,文件内容吐下LIBRARY“PBDLL”DESCRIPTIONPBDLLWINDOWSDYNAMICLINKLIBRARYEXPORTSEXPLICITEXPORTSCANGOHEREOUT_NUM1最后编译生成动态链接库PBDLLDLL第三章PMAC运动控制卡和驱动器31运动控制卡311运动控制卡的定义与作用运动控制卡是一种基于PC机及工业PC机、用于各种运动控制场合(包括位移、速度、加速度等)的上位控制单元。运动控制卡的出现主要是因为(1)为了满足新型数控系统的标准化、柔性、开放性等要求;(2)在各种工业设备(如包装机械、印刷机械等)、国防装备(如跟踪定位系统等)、智能医疗装置等设备的自动化控制系统研制和改造中,急需一个运动控制模块的硬件平台;(3)PC机在各种工业现场的广泛应用,也促使配备相应的控制卡以充分发挥PC机的强大功能。运动控制卡通常采用专业运动控制芯片或高速DSP作为运动控制核心,大多用于控制步进电机或伺服电机。一般地,运动控制卡与PC机构成主从式控制结构PC机负责人机交互界面的管理和控制系统的实时监控等方面的工作(例如键盘和鼠标的管理、系统状态的显示、运动轨迹规划、控制指令的发送、外部信号的监控等等);控制卡完成运动控制的所有细节(包括脉冲和方向信号的输出、自动升降速的处理、原点和限位等信号的检测等等)312PMAC运动控制卡的简介PMAC(PROGRAMMABLEMULTIAXESCONTROLLER)是美国DELTATAU公司九十年代推出的开放式多轴运动控制器,它提供运动控制、离散控制、内务处理、同主机的交互等数控的基本功能。PMAC内部使用了一片MOTOROLADSP56001数字信号处理芯片,它的速度、分辨率、带宽等指标远优于一般的控制器。如图31所示PMAC数控系统结构图31PMAC数控系统的结构伺服控制包括PID加NOTCH和速度、加速度反馈控制,其伺服周期单轴可达60S,二轴联动为110S。产品的种类可从二轴联动到三十二轴联动。甚至连接MACRO现场总线的高速环网,直接进行生产线的联动控制。与同类产品相比,PMAC的特性给系统集成者和最终用户提供了更大的柔性。它允许同一控制软件在三种不同总线(PCXT和AT,VME,STD)上运行,由此提供了多平台的支持特性。并且每轴可以分别配置成不同的伺服类型和多种反馈类型。与各种产品的匹配(1)与不同伺服系统的连接伺服接口有模拟式和数字式两种,能连接模拟、数字伺服驱动器,交、直流、直流无刷伺服电机伺服驱动器及步进电机驱动器。(2)与不同检测元件的连接测速发电机、光电编码器、光栅、旋转变压器等。(3)PLC功能的实现内装式软件化的PLC,使用类似BASIC的程序,可扩展到2048点I/O。(4)界面功能的实现按用户的需求定制。(5)与IPC的通讯PMAC提供了三种通讯手段串行方式、并行方式和双口RAM方式。采用双口RAM方式可使PMAC与IPC进行高速通信,串行方式能使PMAC脱机运行。(6)CNC系统的配置PMAC以计算机标准插卡的形式与计算机系统共同构成CNC系统,它可以用PCXTAT,VME,STD32或者PCI总线形式与计算机相连。PMAC是一种非常灵活的控制器,它可与各种类型的主机,放大器,电机和传感器一起完成各种类型的功能。因此,我们必须应用软件和硬件特性,为特定的功能对其进行设置,以使它能正常的工作。PMAC在出厂时的缺省设置满足绝大部分普通功能的需要)在PMAC卡上,你可以看见许多E跳线(金属插脚对)(在PMACSTD的底板上它们被称做W跳线)。有些已被短接,有些是开路。这些跳线对某一给定功能定制了硬件特性。PMAC卡出厂时的跳线已被设置为满足一般用户的需要,所以一开始你不需要改变任何跳线。但在开始之前我们仍将对跳线进行检查以确保它们是正确的。在PMAC中,为减少噪声,外部的模拟电路与内部的数字逻辑电路被光电隔离开。出厂时PMAC被设置成使用这项功能(E85,E87,E88断开)。我们也推荐使用这种配置,但若闭合这些跳线,也可以取消光电隔离,用总线为模拟电路提供电压(/12V)。但在使用独立电源时不需要这样做。光电隔离设置在光电隔离起作用时,有必要为外部的模拟电路提供独立的电源。DELTATAUDATASYSTEM的可编程多轴控制器(PMAC)是一个拥有高性能伺服运动控制器的系列,它通过灵活的高级语言可最多控制八轴同时运动。通过一个功能强大的数字信号处理器(DSP,PMAC给多轴控制器提供了一个前所未有的价格性能比。PMAC共有四种硬件形式PMAC一PC,PMAC一LITE,PMAC一VME,和PMACSTD。这些卡在形状,总线接口的特性,和某些特定L/O端口的性能这些方面是彼此各不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论