压铸机实时压射控制系统对铸件质量的影响
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
压铸机实时压射控制系统对铸件质量的影响
摘要:对当前众所关注的压铸机实时压射控制系统作了较为全面的阐述和介绍。
从影响铸件质量的主要因素出发,提出实时压射控制思路的由来,进一步涉及到实时压射控制系统的实质性内容,及其时压铸优质铸件所带来的实效。
阐述了组成该系统的关键之所在,结合生产现状提出应该注意的问题,还有如何认定系统本身应具有的精度和灵敏度指标,以及引进该设备中所要求提供的测试数据等。
关键词:伺服系统实时压射工艺参数压射曲线
压铸件的质量在很大程度上取决于压铸机压射性能的优劣。
现代化的压铸机在压射控制方面对冲头速度和压力曲线能够做到精确编程,但是每一次压射过程都会与事先所设定的曲线产生无法避免的偏差,在压射过程中及时去修正这些偏差,纠正压射中的相应数据,并在极为短暂的时间内将其切换成修正后的数据,回到原来所设定的最小偏差范围之内,这就是实时压射控制。
1影响压铸件质量的主要因素
影响压铸件质量的因素是多方面的,其中最为主要的是充型条件,铸件中的气孔、尺寸精度及表面质量等这些均与充型条件有密切关系。
充型过程中可变因素复杂多样,从总体上可以划分为静态的、人为的和动态的3个类别。
静态方面包括:压铸机本身的性能、铸件结构、模具结构、储能器压力及增压压力。
属于人为的有:阀、定时开关、行程开关、金属液的温度及液压油的粘度等。
动态方面的可变因素众多,也是最难以控制的,压室中的金属量、冲头运行时所受的阻力、模具温度以及采用真空压铸时的负压曲线等,都会对施加于金属液上的压力和冲头的速度产生巨大的影响,而这两方面又是影响充型条件最为重要的参数。
2实时压射控制的基本原理
严格的掌握压射中参数变化的规律,使其始终处于恒定状态,一直是压铸工作者努力的方向。
从当前参数变化曲线的测定和监控中,我们可以得到很多的启发。
由图1可知,理想的冲头速度,既是冲头所处位置的函数,也与冲头行程有关,在位置P,为慢速起始速度,在位置Pz为向前运行的速度,在位置Ps为充型阶段的速度以及在位置P9为瞬时实现制动到零的阶段。
这是一条理想的速度曲线,而实际情况如图2所示。
利用现代化的测试手段,再加上设计出一种最佳控制系统,使每次压射过程中反映在曲线上的偏差最小,有其再现性,使铸件的前后质量都能有所保证。
从铸件的实际需要出发,设置一种环绕着以速度曲线为底线的公差带,只要使每次压射时的速度处于公差带范围之内,就能生产出合格的铸件。
在每次压射过程中,如果超出了公差带的范围,则必须通过质量复检才能确定铸件是否合格,如图3所示。
图1理想的冲头速度曲线
图2实际的冲头速度曲线
图3
以图3严密的公差带为基础,再以宽松一点的公差带作为警告带,如果速度曲线超过此警告带时,铸件也就被判为不合格品。
此时,向操作人员发出警告,该压铸机正在出废品。
前面所提到的静态影响,在压铸机采用特殊措施以后都可以得到改观。
动态因素和人为因素所产生的偏差,必须通过压射控制系统来得到补偿,并且通过该系统在压射时对压铸
参数进行修正。
图3有公差带的冲头速度曲线
充型时间平均为20-80ms,为取得良好的效果,速度曲线的控制必须以充型时间的1/10即2-8ms总的反应时间来进行进行调整。
此处总的反应时间的定义为:“通过传感器所确定的偏差值直至在瞬间冲头对此作出反应的这段时间间隔”,也就是说液压系统中包括阀和驱动油缸的响应时间,必然包括在总的反应时间内。
这就要求系统阻尼小,运动部件质量轻,也就是说其响应时间必须控制在几us中完成。
3实时压射控制系统的实质性内容
实时压射控制系统是快速响应的伺服系统所组成的闭环控制系统。
只有电液伺服阀,才具有这种快速响应的能力。
其他如由快速比例阀等所组成的压铸机闭环控制系统,都不具备实时压射控制所需的快速响应能力。
所以由这种系统所组成的压铸机,也就不属于现代实时控制压铸机。
此外,单一的闭环控制不等于实时压射控制,而实时压射控制必须是闭环控制。
图4所示为实时压射控制液压回路系统图
4实时压射控制液压回路系统(行Mac)
这种液压系统最为重要的条件是阀的操纵机构的动作超乎寻常地快,必须采用高流量增益阀,以便快速通过液压油尽可能去驱动活塞作快速运动。
4实时压射对压铸生产带来的实效
4. 1降低铸件废品率
实时压射控制系统,能使铸件的内在质量和尺寸精度处于最佳状态,每一模次前后均衡,保持良好的再现性,其废品率降低到只有0.2%为.5%,还有可能更低。
4.2提高生产效率
压射控制压缩了循环时间而提高了生产率,加之制动冲击小,一般需要较大锁模力的压铸机生产的压铸件,可以转移到较小锁模力,较快速的压铸机上生产。
在生产开始之时,模具温度的波动,会导致废品的生产。
但是控制系统已兼顾到了在通常操作条件下,在一定的公差带范围内工艺参数的偏差,因此省掉了较长的试模时间,往往在经过1一2次试模以后,即能生产出合格的铸件。
4. 3节省金属消耗量
浇注系统、溢流排气系统以及余料的尺寸均可减少,铸件无飞边存在。
在熔炼中金属的损耗及能源成本皆有所下降。
4.4操作过程不受人为条件的影响
压铸机利用所述的压射控制系统,在生产开始之前,就按所拟定的数据进行下一步的生
产。
只要模具安装到位,就能自动地生产合格的铸件,不需要再作记忆、观察或调整。
4. 5延长模具寿命
飞边是造成模具磨损的根源,飞边降低了铸件的表面质量也损坏了模具表面,增加修整铸件的成本和修模费用以及停机所造成的损失。
实时压射控制系统有利于消除飞边,从而延长模具寿命。
5结语
实时压射控制系统是由电液伺服阀为主体所组成的闭环液压控制系统。
电液伺服阀是一种变电信号为液压信号以实现流量或压力控制的转换装置,能充分发挥电信号传递快、线路连接方便的作用。
适用于远距离控制,易于检测比较和校正,且液压动力具有输出力大、惯性小、反应快的优点,这两者的结合使电液伺服阀成为一种控制灵活、精度高、快速反应性好,输出功率大的控制元件。
工控技术:Windows平台下压铸机控制系统的研究
Windows是一个基于消息的非抢先式多任务操作系统,将其用于压铸机实时控制,有很多的困难与挑战。
本文荐于实际工作中遇到的问题,对基于Windows的压铸机控制系统进行了研究。
1Windows的运行机制
Windows9x操作系统由内核、设备驱动程序和大量的动态链接库及应用程序组成。
Windows9x操作系统的结构如图1所示。
Windows9x内核与设备驱动程序运行在保护模式的Ring0级,称为核心态;而一般应用程序与动态链接库运行在Ring3级,称为用户态。
熟悉80386保护模式体系的人都知道,Ring3代码不能直接调用Ring0代码,在Windows9x操作系统中与硬件设备打交道的程序代码必须运行在核心态 Ring0级 。
运行在用户态 Ring3级 的代码必须通过核心态 Ring0级 代码才能访问硬件。
即使在用户态 Ring3级 执行的所谓输入输出指令 in、out等 实际上也隐含调用了核心态 Ring0级 代码才得以执行。
Windows9x由内核统一管理所有的系统资源。
在保护模式下运行时,创建特定的内存区域--虚拟机 VM 。
每个虚拟机都有完整的地址空间、I/O空间以及中断向量表等系统资源。
真正的系统核心--虚拟机管理程序 VMM 以时间片中断调度各个虚拟机,这是多任务的本质和要求。
由以上分析,开发基于Windows的工控系统,需要解决的两个关键问题是:
(1)实时性
实时性要求开发的系统能实时处理中断,并能处理定时事件。
但Windows9x是一个基于消息机制的非抢先式多任务操作系统,而且设计初衷是面向事务处理,对多任务和图形用户界面的支持难免使得系统运行速度下降;其保护系统和内核运行机制也使用于系统切换的时间无法确定。
通常,Windows下的中断响应时间是DOS下的1/20;基于消息的机制和非剥夺性,当消息队列中的某个消息没有响应时,整个系统处于阻塞状态,无法响应其他操作。
事实上,一个基于Windows的实时操作系统,以下三个时间是非常重要的:
·中断由操作系统和设备驱动程序屏蔽的最大时间;
·设备驱动程序处理中断的最大时间;
·从中断开始到任务执行的中断延迟。
通常情况下,这些参数都是不可预测的,只能通过具体的实验进行确定。
这不但加大了实时应用系统的难度,而且是系统不稳定的重要因素。
(2)设备相关性
设备相关性是指系统能很好地控制硬件,包括I/O端口的读写、内存直接读写和中断服务设备无关性问题,亦即Windows9x下直接访问外设的问题。
但是,因为Windows9x是多任务操作系统,设备保护在Windows下是必需的。
它的保护系统用来保护用户数据和程序不受同一系统内同时运行的其他程序的干扰,保护物理设备不受未经允许的访问。
Windows系统的一个重要宗旨就是程序员对硬件操作的透明性,屏蔽了对底层硬件的直接访问,由操作系统统一管理所有的硬件资源和硬件访问。
这使得Windows一般用户在Windows下完成硬件操作具有较大的难度。
2Windows下压铸机实时控制的实现
2.1压铸机系统的功能和要求
J11280型卧式冷室压铸机控制系统,主要的性能要求是:
·能够完成调整、联动两种工作机制;
·压铸工作过程的某些过程和工作参数具有实时动态可调性和可选性;
·具有对压铸过程中各个行程开关、按钮、继电器等状态实时监控和显示功能;
·实时检测合型力、压射速度和油压,用实时曲线显示,具备保存和打印的功能;
·实时故障诊断与故障处理的功能。
压铸机控制系统结构见图2。
其中,合型力检测的采样周期为0.5ms 油压检测的采样周期为5ms,位移传感器接触压射杆产生的脉冲信号经变换处理作为压铸机的外部中断,配合A/D板卡上的8253计数器,完成速度检测。
可以看出,由于控制过程采样周期极短,并有大量的数据计算和逻辑判断以及在线动态检测、监视和参数调整,整个系统对实时性的要求很高。
2.2使用设备驱动程序实现实时控制
设备驱动程序作为操作系统内核的一部分,处于Ring0层,具有直接操作硬件等特权。
在实时控制中,中断技术应用得十分广泛,其中实时时钟的获得基本上都是通过中断来实现。
时钟控制在实时控制中处于十分重要的地位,它负责推进控制过程、激活各控制任务或发相关控制消息,起到了总控制器的作用。
在Windows9x下实时时钟的获得可以有不同的方法。
设置Win32定时器并通过响应WM_TIMER消息进行实时处理是最简单的方法。
但是由于WM_TIMER消息的低优先级和未处理消息在消息队列中的排队造成了系统实时处理的不稳定,因此这种方法只适合实时性要求不高的应用。
若采用Windows多媒体定时器,通过设置回调函数可以获得最高精度为1ms的定时信号;但是由于占用了系统宝贵的资源,而且当定时信号由用户提供或需要更高的中断频率时,这种方法就显得无能为力了。
与类似软件中断的方法相比,基于硬件中断的方法占据了主导地位,并在绝大多数的实时系统中得到了应用。
因为它保证了对实时控制系统至关重要的可靠性。
经过笔者探索,在Windows9x环境下,在虚拟设备驱动程序中对硬件直接编程并挂接中断的思路,有两种实现方法:
(1)对8253直接编程
8253定时器是计算机跳动的心脏,在计算机系统进入Windows前对8253重新编程,将周期从18.2s修改为所希望的周期。
修改INT8中断服务程序,每次定时时间到就调用另一新中断号,并累计时间;若为55ms,则转入旧INT8中断服务程序的入口 进入Windows以后挂接新的时钟中断即可实现所希望的定时时钟。
使用这种方法可以满足任意精度。
(2)对CMOS实时时钟直接编程
与上述方法相比,对CMOS实时时钟进行编程获得定时中断的方法显得更加优越,所需的硬件知识相对较少,操作也相对简便。
在PC机中,CMOS实时时钟似乎是唯一没有现成的虚拟设备驱动程序的PC机硬件设备,所以可以直接开发VxD驱动程序来操作实时时钟。
通常,实时时钟芯片的基本频率初始化为32.768kHz,由它驱动内部时钟电路,同时对内部寄存器A(D3~D0)编程选择22个分频级之一,使其按确定的频率以寄存器B指定的方式周期性地输出方波或中断信号,作为实时钟中断信号经反向直接连到8259A-5从片的第0级--IRQ8 然后把实时任务直接挂接到实时钟中断上,在中断处理函数中进行实时任务处理。
使用这种方法最高可获得8.192kHz 周期为0.1ms 的中断频率,足以满足系统的要求。
需要注意:与上述方法类似,挂接中断时,进入自己的中断前必须保护好原先的中断状态,退出时恢复,否则,系统将崩溃。
无论使用哪种方法,都不可避免地与Windows中断打交道。
但是,VxD没有义务必须向系统传递中断消息,相反,它完全可以自己截获中断,进行实时处理。
本文采用了对CMOS时钟直接编程的方法,运行良好。
总之,使用虚拟设备驱动程序直接控制硬件,解决了Windows环境下的设备无关性问题,同时保证了实时控制所需要的实时时钟和中断控制。
但是,虚拟设备驱动程序编程要求技术人员对Windows内核比较清楚,对底层硬件比较了解,也需要一定的汇编知识。
由于Windows内核资料非常少且大都较晦涩,有关VxD编程的部分更是艰深,所以使用这种方法有相当的难度。
而且这种方法易给系统带来隐患,有可能造成Windows系统本身不稳定,还要考虑兼容性和效率问题,在实际开发时需要小心谨慎。
2.3保证系统性能的其他技术
上一小节解决了最重要的实时性和设备相关性的问题,但是,考虑效率和性能,本系统研究了有关的增强系统性能的技术。
实践证明,效果比较明显。
(1)多线程
Windows系统的基本单元是线程,线程是可供系统调用的最小单元。
一个进程可有多个线程,系统调度程序将CPU的时间片划分给各个线程,各个线程在各自的时间片内使用CPU,从而实现了微观上的轮流执行和宏观上的并发执行。
在实时性要求很高的工控系统中,如何避免程序反应迟钝以及死锁问题是关键之一。
利用多线程技术,是提高效率的有效途径,不仅可以挖掘潜在的CPU空闲时间,还可以提高程序的反应速度。
这在有多个任务需要完成且有巨大数据流量的程序中反映尤其明显。
根据系统要求,本主控制台程序实现了一个控制系统主要运行过程的主线程、一个负责压铸机工作过程的压铸过程线程(工作者线程)和一个实现速度压力曲线的显示线程(用户界面线程)。
主线程在每个Windows应用程序启动时由操作系统创建,不可或缺。
在主线程中,主要负责线程间的同步、向压铸过程线程和显示线程传递参数、管理人机界面、故障处理与实时检测、与用户交互等功能。
显示线程负责从共享内存读出数据并以动态曲线的形式在屏幕上绘制,保存实时曲线作为历史纪录以及读取曲线历史纪录的功能。
压铸过程线程控制压铸机的整个工作过程,包括数据采集、逻辑控制、算法实现及相关的处理。
实践证明,多线程的使用,明显提高了系统特别是实时显示的性能,增强了系统的效率和稳定性。
(2)共享内存
数据采集系统得到各模拟通道采样值的转换结果后,应存放在一个规定的RAM区。
由于Win32程序和虚拟驱动程序都需要直接访问此内存RAM区,故称为共享内存。
有经验的程序员都很清楚Windows的内存分页管理机制,所以应该由VxD中断功能程序申请后与Win32程序共享,原因不言自明。
在VxD中申请连续内存的函数一般使用:BOOLPageAllocate DWORDnPages DWORDpType VMHANDLEhVM DWORDAlignMask DWORDminPhys DWORDmaxPhys PVOIDPhysAddr DWORDFlags PMEMHANDLEpHandle PPVOIDpAddress 。
注意:必须明确指定pType为开辟VxD和Win32应用程序共享内存的PG_VM,其他常量不可取;必须指定Flags为不会被系统分页交换的PAEGELOCKED;Hvm为使用此循环寄存器区的Win32应用程序虚拟机句柄,须在使用PageAllocate 前传到申请内存的VxD。
只要缓冲区足够大,即使在采集频率非常高的情况下,中断程序填满一个子缓冲区的时间也会比较长,而处理线程进行一次处理和存盘的时间相对比较短。
因此,中断程序和处理线程可以并行地访问缓冲区而不会发生交叠,即中断程序访问的子缓冲区与处理线程访问的子缓冲区总是不同的。
这样,就可以在不丢失任何数据的情况下实现长时间连续高速采集。
实际相当于在PC机的内存中开辟了一片FIFO队
列。
与硬件FIFO相比,这种方法大大降低了成本。
而且,由于将其放在内存中,可以轻易地得到非常大的FIFO队列,减轻了数据处理的负担。
另外,由于采用了双缓冲的结构,避免了数据访问的交叠,实现了不丢失任何数据的长时间连续高速采集。
当然,由于采用中断方式采集数据,每次采集都要占用CPU时间 使采集速度受到一定限制,无法达到采用硬件FIFO队列的水平。
(3)ActiveX
ActiveX控件作为一种可重用的软件部件和一种标准接口元素,能方便地组装到应用程序中,快速创建应用程序界面,从而直观地实现控制组态和策略解释,非常便于工程技术人员掌握。
本系统中,实现了一个数据显示功能的ActiveX控件,并挂接在显示线程中,通过它支持的属性、方法和事件机制,控制数据显示,极大地改善了速度压力曲线的显示性能。
(4)模糊神经网络PID控制
智能控制特别是模糊控制和神经网络控制技术发展迅速,将其应用于复杂模型和恶劣工况下的过程控制,具有理论优势,也是难点和热点;另一方面,传统的PID控制也不断发展和完善,出现了各种与先进方法和理论结合的新型PID算法;最后,以前的压铸机系统尽管运行稳定,但是基于开环算法,控制性能不理想。
笔者通过研究和学习国内外相关的理论和实践,从现场实际控制的角度,给出了一种集模糊控制、神经元控制和PID控制三者优势于一身的新型控制算法的实现,大大提高了系统的性能,获得了满意的效果,限于篇幅,另文著述。
3系统的总体框架
依据上述各种技术,使用Numega公司的VtoolsD工具开发了底层的虚拟设备驱动程序,使用VC++6.0开发用户界面程序,在Windows98环境下,实现了2800吨J11280型卧式冷室压铸机控制系统的设计,并在阜新压铸机厂通过了测试,运行稳定、操作简便、界面友好、功能齐全、实践证明是一个比较成功的工控系统,图3是主控制台总体框架图。
参考文献
1 [美]DavidA.Solomon著,北京博彦科技发展有限公司译.WindowsNT技术内幕 第2版·M.北京:清华大学出版社,1999
2武安河 周利莉.Windows设备驱动程序(VxD与WDM)开发实务 M .北京 电子工业出版社 2002
3乔林 杨志刚.VisualC++6.0高级编程技术 MFC与多线程篇 M .北京 中国铁道出版社 2000
本文摘自《电子技术应用》。