APP下载

基于USB 2.0接口的反重力铸造充型过程测试系统

2014-08-23俞子荣陈黎娟蔡鹏翔

计算机与现代化 2014年4期
关键词:充型固件驱动程序

杨 辉,俞子荣,陈黎娟,蔡鹏翔

(南昌航空大学信息工程学院,江西 南昌 330063)

0 引言

近年来,国内外航空航天、国防和汽车工业等行业对大型、精密、薄壁、复杂、优质高强度铝合金铸件的需求量增加,反重力铸造作为能满足上述生产需要的先进铸造成型工艺,日益受到铸造界的关注,在世界各国得到普遍应用[1]。在反重力铸造过程中,金属液的充型过程对铸件的质量有着很关键的影响。目前国内外有各种各样的方法对铸造充型过程进行研究,如水力模拟实验法[3]、X 射线荧光显示[3]、耐热玻璃窗法[2],这些方法可以对铸造充型过程进行宏观的显示,但是由于测试条件或实验环境与实际情况存在差异,造成实验结果并不精确,而且这些方法无法对反重力铸造充型过程中金属液流场的压力与温度变化趋势进行分析。本文基于上述原因,设计以USB 2.0为通信接口的反重力铸造充型测试系统,本系统以USB 2.0通信芯片CY7C68013A作为主控制器,利用USB的高速传输,实现反重力铸造中铸件充型过程测试的实时性与精确性,具有很好的实用前景。

1 系统硬件设计

1.1 系统总体设计

反重力铸造充型过程测试系统采用热电偶测温法来描述金属液的充填顺序,可以详细记录各测试点的温度变化,得到金属液在型腔中各点的充填顺序。系统主要由逻辑控制模块、信号采集模块和上位机PC组成。其结构框图如图1所示。逻辑控制模块为本系统的核心模块,以支持USB 2.0高速传输的EZUSB FX2系列器件CY7C68013A为核心芯片,控制A/D转换和读入A/D转换结果,并控制FIFO的读写,与主机之间的通信和数据传输。Cypress公司的EZ-USB FX2是一款集成USB 2.0的微处理器,它的全速传输速率为12Mb/s,高速传输速率为480Mb/s,芯片结构为包括增强型的8051处理器、USB 2.0收发器、串行接口引擎(SIE)、16kB的RAM、4kB的FIFO存储器、可编程的外围接口等丰富的资源。

图1 系统结构框图

对USB芯片CY7C68013A的合理设计,充分利用芯片内部的丰富资源,搭建外围数据采集电路,可以实现数据的快速采样与快速传输。在系统中,USB设备与主机的数据传输方式采用块传输(BULK Transfer)的方式。设计中EZ-USB FX2(CY7C68013A)的通信工作模式选用端口模式。充分利用EZ-USB FX2内部资源,将其内部FIFO存储器作为数据缓冲区,在数据存满时,由芯片内的USB引擎打包,将数据传送至PC机,用户应用程序对数据进行存储显示并进一步处理。

1.2 外围信号采集外围电路

图2 温度采集电路

系统需要采集的信号有压力和温度。对温度的采集,是对铸造过程金属液充型过程与凝固过程中的温度变化进行测试,温度检测主要是通过温度传感器将温度的变化转化成电信号的变化,经过信号采集电路处理得出精确的温度变化。温度传感器选择K型热电偶(0~1300℃)作为输入通道的最前端,将温度信号转换成电信号,再经过运算放大器进行信号放大,送至经A/D转换器MAX197转化处理,再由微处理器送至PC机上进行显示。温度采集电路如图2所示。另外,根据K型热电偶的测温原理,冷端温度不是标准参考零点,需进行冷端补偿,通过测量冷端温度,将数据送入PC采用软件方法进行补偿。

对上下气罐压力的测试是确定进行温度采集的时间,当反重力铸造系统上下铸罐压力达到一定压差时,金属液进入型腔,开始进行温度数据的采集。压力传感器采用型号为JYB-K0-KAA的压力传感器,其压力范围0~1.0MPa,压力类型为绝压,输出方式为4mA~20mA电流。由于压力传感器测得的是电流信号,压力传感器将压力信号转换为4mA~20mA电流信号输入,因此在信号调理阶段,需要将电流信号转成电压信号。采用美国RURR-BROWN公司生产的精密电流环接收器芯片RCV420,可将4mV~20mV输入信号转换成为0~5V输出信号,然后经A/D转换送微处理器,由USB接口送 PC上进行显示与分析。

2 系统软件设计

本系统的软件主要包括3个部分:USB设备端的主控制器的固件程序、PC端USB设备驱动程序和用户应用程序。

2.1 固件程序设计

固件是指运行在芯片CY7C68013A内的程序,其主要功能是:初始化工作,完成设备的重新枚举过程,各种USB标准请求的处理,以及实现主机与外设之间的通信和数据传输。在使用EZ-USB FX2芯片进行应用开发时,可以采用Cypress公司提供的固件框架和固件函数库,用户可以很方便地对芯片进行使用,进一步加快USB外设固件程序的开发,提高用户开发的效率[4]。

设计中采用现成的固件程序框架函数来编写固件程序,根据所要完成的功能需求,在对应的功能函数中编写相应的代码,来达到特定的目的,其中基本的固件程序框架函数有:

在系统上电启动后,系统会对用到的变量进行定义和初始化,即初始化状态变量,然后调用用户初始化函数TD_init()和打开中断,主机在延时1秒的时间内开始不断地重新枚举USB设备,一直到接收到setup令牌包,重枚举结束,再进入循环语句,调用用户函数TD_Poll()。固件程序流程如图3所示。

图3 固件程序流程图

2.2 USB驱动程序设计

USB驱动程序属WDM(Windows Drives Mode)驱动程序模型,在USB通信中采用了分层驱动程序模型,每一层的驱动程序负责处理一部分的USB通信任务,USB驱动程序层次体系结构如图4所示。USB系统驱动程序主要包括:USB设备驱动程序、USB主机控制器驱动程序(HCD)和USB总线驱动程序(USBD)。在上述的模块中,Windows操作系统中提供了USB总线驱动和USB主控制器驱动程序,设计开发中重点对USB设备驱动程序进行编写。USB设备的WDM驱动程序是通过创建URB(USB Request Block),同时发送URB的IRP(I/O Request Packet)至USB总线驱动程序,这样可以实现对USB设备信息的发送和接收。设计中使用了Cypress公司提供的通用驱动程序。

设备只要加载Cypress公司提供的通用驱动程序,就能正常运行。主机通过识别USB设备的VID和PID,能正确加载USB驱动程序,使设备驱动程序能够正确运行[4]。

图4 USB驱动程序体系结构

2.3 用户应用程序

用户应用程序是系统软件设计的重要部分,它主要完成以下几个任务:启动设备、检测设备是否连接、开始和结束数据采集、上传采集数据包、存储和显示数据。应用程序流程如图5所示。

图5 应用程序流程图

芯片CY7C68013A内部含有FIFO存储器,采集的数据放在FIFO中,当存储器存满后,将由USB引擎打包,并发送读取数据消息,快速将数据包传输至上位机。另外,为了保证传输数据和显示数据的稳定性和精确性,避免死机现象,设计中采用了多线程技术。当系统启动A/D模块后,便会创建2个线程:采集线程和传输线程。当系统接收到开始采集的命令后,就会创建采集线程。采集线程主要完成系统初始化,将采集数据写到内存中;然后启动传输线程,传输线程运行时,采集线程就一直等待,当读操作完成时,传输线程就可以终止了;接着采集线程再运行,并发送一个请求来启动显示和存储任务。当接收到采集线程发来的显示和存储任务后,便从写有采集数据的内存中读取数据并显示和存盘。

3 结束语

本文开发了基于USB 2.0的反重力铸造充型过程测试系统,设计了系统的硬件电路,并编写了相应的软件程序。将USB 2.0总线通信技术应用到反重力铸造充型过程测试系统中,使得数据的采集与传输具有了高速、准确的优势,相对于传统的测试方法,本系统数据传输速率快,实时性和精确性强,在铸造测试领域有广阔的应用前景。下一步的工作是测试铸件的凝固过程中的铸件温度变化趋势,对铸件的冷却凝固规律进行研究。

:

[1]林万华.基于FPGA的真空差压铸造充型测试系统研究[D].南昌:南昌航空大学,2011.

[2]许庆彦,张光跃,李锋军,等.用快速数据采集系统研究铸件充型过程[J].特种铸造及有色合金,2000,20(3):31-34.

[3]董选普,黄乃瑜,吴树森.真空差压铸造法金属液流动形态的研究[J].铸造,2002,51(7):415-419.

[4]代月松,董力科,孙正席,等.基于CY7C68013A的并口转USB口数据采集系统设计[J].电子设计工程,2011,19(16):42-44.

[5]祖一康.基于K型热电偶与MAX6675多路温度采集系统[J].江西理工大学学报,2007,28(4):25-27.

[6]严青松.智能控制的薄壁铝合金铸件真空差压铸造工艺与理论[D].武汉:华中科技大学,2006.

[7]严青松,余欢,魏伯康,等.有色合金真空差压铸造可视化界面智能控制[J].铸造,2005,54(8):803-806.

[8]李强.反重力铸造装备PLC控制技术的研究[D].西安:西北工业大学,2007.

[9]刘志明,曲万春,王宏伟,等.低压铸造中液态金属的填充规律及其影响[J].特种铸造及有色合金,1999,19(2):16-19.

[10]王新,徐成海,张杨.真空铸造技术的研究现状[J].真空,2005,42(1):6-10.

[11]王文英,李华.基于USB 2.0接口的沥青拌和站数据采集系统设计[J].电子设计工程,2009,17(4):52-53.

[12]梁群昌,母蕊莲.差压铸造在我国的发展及应用[J].热加工工艺:铸锻版,2006,35(1):61-64.

[13]熊博文,余欢,严青松,等.真空差压铸造薄壁铸件的研究进展[J].特种铸造及有色合金,2012,32(3):238-242.

[14]刘泽西,程晶晶,孔力.基于USB 2.0接口的高速实时数据采集系统[J].测控技术,2007,26(2):34-37.

猜你喜欢

充型固件驱动程序
基于Flow-3D的风电轮毂浇注系统设计及优化
大型行星架铸钢件浇注系统设计
模拟仿真在压铸模具中的具体应用
计算机硬件设备驱动程序分析
基于固件的远程身份认证
大型铝合金发动机壳体低压铸造充型速度研究
提取ROM固件中的APP
一种通过USB接口的可靠固件升级技术
基于MPC8280的CPU单元与内部总线驱动程序设计
多路手机固件升级工具设计