X射线应力分析仪技术改造的软件实现

   2024-01-18 互联网1270
核心提示:  摘 要 一台70年代未期生产的X射线应力分析仪使用笔式记录仪记录试验数据,数据处理通过手工测量记录在坐标纸上的曲线,人工

  摘 要 一台70年代未期生产的X射线应力分析仪使用笔式记录仪记录试验数据,数据处理通过手工测量记录在坐标纸上的曲线,人工计算完成。本文介绍的改造方法,其原则是尽量少对应力仪硬件本身进行改动,通过使用专门编写的软件,以扫描应力仪数据记录信号的方式来采集数据,由根据相关国家标准编写的数据处理单元完成试验数据的处理。由于改造工作主要集中在软件实现上,计算机与应力分析仪的连接仅使用了2对信号线。

  1 前言

  日本理学2904-AI型X射线应力分析仪是70年代未生产的老式仪器,由于生产年代的技术限制,其数据处理完全由试验室技术人员手工计算,具有处理精度差、效率低、易产生人为误差等缺点。但其关键的机械部件仍具有精度高、稳定性好的优点,作为大型仪器,有其改造的价值。由于其生产年代早,控制系统电路复杂,硬件改造具有成本高、难度大的不利因素,因此改造中尽可能地采用软件实现的方式,并取得了良好的效果。

  2 X射线应力分析仪工作原理简述

  X射线应力分析仪通过X射线管产生的X射线在晶体材料中产生的衍射线,测量材料晶面间距的变化,计算材料的宏观内应力。

  通过计数器连续扫描来测量衍射线的强度,测得衍射角(2θ);通过X射线入射角(Ψ0)不同时,测量X射线衍射计数峰值的2θ角的改变,经过最小二乘法线性拟合计算宏观内应力。X射线应力分析仪工作时,分别设定不同的X射线入射角(Ψ0),按均匀的2θ角度间隔(本试验机为0.002°)连续记录计数器所测得的衍射线强度,得到一组Ψ0各不相同,2θ角度连续变化的衍射强度数据。数据处理的工作是分别对每组记录的数据进行平滑、校正、去背景处理,然后根据数据形态选择算法,确定衍射强度峰值所对应的2θ角度。通用的算法有抛物线拟合,重心法,半高宽法。由此得到一组Ψ0—2θ数据,再使用线性拟合的方法计算宏观内应力值和误差范围。

  3 数据采集的电信号和硬件接口

  由于入射角(Ψ0)是设定的,X射线应力分析仪工作时需要采集的数据只有两组:2θ角度信号和位于该角度时的X射线记数值。2θ角度的变化速度分别可设定为16/8/4/2/1/0.5/0.25°/min,因为角度以2‰度的均匀间隔变化,根据应力仪扫描速度的不同,信号周期可以是7.5,15,30,60,120,240,480ms。

  X射线记数信号为周期不确定计数脉冲,在一个2θ角度变化周期(2‰度)内计数器记录的脉冲个数即为X射线衍射计数个数,即为X射线衍射强度的表示。

  进行宏观内应力测试时,X射线应力分析仪对每一个测试点,以不同的入射角(Ψ0)分别扫描几组数据。其工作方式有两种:单次扫描和联动扫描。单次扫描是由试验人员每次分别设定一个入射角,启动应力分析仪从开始扫描,扫描到指定的2θ角度再停止,由此得到几组记数值数据。联动扫描的工作方式是事先设定要扫描的多个入射角,再启动X射线应力分析仪,仪器自动扫描所有所设定的不同的入射角,全部扫描结束后仪器停止。单次扫描和联动扫描的角度信号示意如图1所示。

  数据采集电路采用了一块带有中断信号生成单元的记数电路板。角度信号可使用两种方式输入到计算机:以中断信号的方式和以记数信号的方式。使用中断的方式是,将角度信号接入中断信号生成单元,通过中断触发来驱动读记数通道操作。记数信号的方式是,将角度信号接入计数器计数端口,通过一个循环查询操作来不断查询角度信号记数端口,查到新的角度信号时读记数端口。由于计算机系统采用桌面PC机和Windows 9x操作系统,如果采用中断方式,当优先级更高的中断发生时,角度信号产生的中断有可能被屏蔽,导致数据丢失。在改造过程中通过专门编写的测试程序试验,也验证了这一问题的存在。因此,角度信号也使用了记数的方式由记数器一个通道输入。数据采集电路使用了一块8253计数电路作为记数器。8253有3个记数通道,在应力仪技术改造中我们使用了其中的两个:通道0和通道1。其中通道0接角度信号,通道1接记数信号。

  4 算法设计

  由于方案中硬件部分只作了最简单的考虑,工作将主要通过软件来实现,因而算法设计成为改造成功与否的关键。

  算法设计考虑的因素有:

  1)对角度信号计数通道的监视。通过监视角度信号计数通道的变化来判断2θ角度的改变;

  2) 2θ角度信号之间的时间间隔。测量角度信号之间的时间间隔,是判断是否发生角度信号丢失或崎变的依据;

  3)记数通道的记数量程转换。由于每个通道的计数器宽度为16位,当计数值超过65535时会导致计数值溢出;

  4)联动扫描时的扫描、间歇和停止。在联动扫描时,程序应能自动判断2θ角度扫描脉冲的开始,两个相邻的入射角之间的间隔和全部扫描的结束;

  5)异常中止的处理。由于特殊的原因,试验人员应能在计数循环过程中终止计数过程;在故障发生时能在试验人员的干预下跳出计数循环;

  6)有关数据处理的算法,包括数据平滑算法,X射线衍射线强度峰值的定位算法,程序运行过程中数据的图形显示技巧,程序的试验报告生成部分的有关编程技巧等。

  在算法设计中,数据扫描时,要监视的一个最关键的变量就是角度信号之间的间隔。由于没有硬件同步措施,设计优秀的算法,保证采集数据的完整性至关重要。因为角度信号是均匀的脉冲,通过测定角度信号之间的时间间隔可判断是否发生了信号丢失,以及扫描过程中间的复位过程。由于复位时间间隔较长,此时可进行数据保存、显示更新等操作。由于8253的记数通道为2个字节16位,且由于该数据采集电路无法通过串连2个通道的方式扩充记数范围,因而每个通道的最大记数值不能超过65535。对于角度信号,由于监视的是角度信号的变化,而不是计数个数的数目,因而不必考虑计数范围的问题。但对X射线记数通道,则要考虑计数范围的问题。解决的方法是,由于8253为减法记数器,且每个角度的记数值远小于65535,即每个2θ角度的X射线记数个数不可能超过65535,通过对比连续两次的记数值,如果后一次的端口读数值大于前一次的端口读数值,认定已发生了一次溢出。计数个数的计算方法如下:

  5 软件功能简介

  本改造项目的计算机软件实现了数据采集、数据处理和实验报告生成等与X射线应力分析试验有关的全部功能。

  数据扫描可采用每个入射角分别单独扫描的方式,也可采用预先设定各扫描入射角后自动完成全部数据扫描的联动扫描的方式。

  数据处理算法按照国家标准《X射线应力测定方法》中规定的算法设计,计算结果的准确性高。程序在完成数据处理和计算后自动生成详尽的试验报告。

  整个软件完成了X射线应力测定从数据扫描到试验报告生成的全部工作,不仅使试验工作效率大大提高,也使试验数据的保存、数据处理的方式更加规范,结果的准确性也大为提高。

  6 总结

  改造项目完成后进行的验证试验表明,对退火铁粉单一入射角峰值定位试验的误差能达到0.007°,差不超过0.01°。投入使用半年多来,一直工作稳定可靠,已完成大型试验项目一个,并作为标准试验方法投入日常试验工作,已具有一定的成熟性,且改造成本低、周期短(全部硬、软件安装、程序调试仅需15天就能全部完成),对于具有同类型设备的以科研和以生产为导向的机构都具有良好的推广价值。

  本文作者:蔡良平


 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  隐私政策  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅