锁相热像无损检测技术中的正弦波温度闭环控制解决方案

本文主要是介绍锁相热像无损检测技术中的正弦波温度闭环控制解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要:针对目前锁相红外热成像无损检测中存在被检物温度偏离标准正弦波形式的检测模型,以及被检物温度无法准确控制和快速达到稳定的问题,本文提出了改进解决方案。解决方案的核心是将现有的激励光源开环控制模式改进为闭环控制,具体采用了具有远程设定点功能的PID温度控制器,将现有光源的正弦波功率调制改进为直接的被检物表面温度正弦波调制,由此更符合理论模型,且可使被检物平均温度快速达到稳定而大幅缩短检测时间。

原文阅读:(PDF格式)


1. 问题的提出

如图1所示,锁相红外热成像无损检测技术使用周期性调制热源,对待测物体进行周期加热。若待测物体内部有缺陷,该缺陷对其上方表面温度分布会产生周期性的影响,因此有缺陷和无缺陷地方会产生幅值差和相位差的热特征,这些特征通过红外热像仪成像捕获。采集到的热图序列中存在着各种干扰信号,通过锁相技术可以将微弱的有用信号从众多干扰信号中分离出来,可大幅提高检测的灵敏度。但这种红外锁相或其他光激励热成像法存在以下严重问题:

图1 红外锁相热成像检测原理及其系统

(1)因为现有技术只能对激励热源的加载功率进行正弦波调制,但并不能真正保证被测物体内部的温度变化也是真正的正弦波形式,这使得热像仪获得的热波波形与检测理论模型存在较大偏差,这是目前造成此方法误差的最大原因。

(2)目前锁相法调制光源加热被测物体时的温度时间变化曲线如图2所示,要经过较长时间温度才能达到稳定状态,对于较大或较厚物体用时将会更长,其中最大的问题是温度升高多少无法准确控制,只能靠经验或多次试验来确定调制光源的加热功率以实现所希望的温度变化。

图2 红外锁相法加热过程中的时间-温度变化曲线图

由此可见,目前的红外锁相法还较粗狂,整个控制还是一个开环控制过程,这使得在实际无损检测中边界条件无法准确匹配测试模型,温度变化波形和大小也无法做到准确控制。为了解决这些问题,本文提出了如下一种闭环控制解决方案。

2. 解决方案

为使被检物体内部的温度变化符合测试模型中正弦波形式的要求,本文提出的解决方案是采用闭环控制加热模式,即在被检物体的表面或内部安装温度传感器,与PID控制器和激励光源组成闭环控制回路,通过正弦波形式的设定点输入,最终将被检物体表面或内部温度准确控制并与正弦波温度设定曲线吻合。整个闭环控制系统结构如图3所示。

图3 正弦波温度加热光源控制系统结构示意图

从图3可以看出,由增加的温度传感器、卤素灯加热光源和控制器组成的闭环控制回路,可以对被检物表面温度进行任意设定点下的精确控制。但为了使表面温度能够严格按照所希望幅值和周期的正弦波形式进行变化,解决方案中采用一种多功能的高级PID控制器VPC2021。此控制器具有外部设定点功能,即通过外接周期信号发生器,可以使VPC2021控制器的温控设定值严格按照信号发生器的输出进行改变,即温控设定值可以设计为一个随时间变化的周期性正弦波。由此可以实现以下两个功能:

(1)可任意设定加热正弦波的频率和幅值,以满足不同无损检测对象的需要。

(2)可任意设定加热正弦波的平均值大小,由此可实现任意温度下的正弦波热波控制,并能很快达到稳定状态而开始进行无损检测,有效缩短检测时间。

VPC2021系列超高精度PID调节器是具有远程设定点功能的控制器,具有两个输入通道,第一主输入通道作为过程传感器输入,第二辅助输入通道用来作为远程设定点输入。与主输入信号一样,辅助输入的远程设定点也能接受47种类型的输入信号,其中包括10种热电偶温度传感器、9种电阻型温度传感器、3种纯电阻、10种热敏电阻、3种模拟电流和12种模拟电压,即任何探测信号只要能转换为上述47种类型型号,都可以直接接入第二辅助输入通道作为远程设定点源。在红外锁相法无损检测中使用远程设定值功能时的具体接线如图4所示。

图4 远程设定点功能使用接线图

在使用远程设定值功能前,需要对控制器辅助输入通道参数进行设置,以满足以下要求:

(1)辅助通道上接入的远程设定点信号类型要与主输入通道完全一致。

(2)辅助通道的显示上下限也要与主输入通道完全一致。

(3)显示辅助通道接入的远程设定点信号大小的小数点位数要与主输入通道保持一致。

完成辅助输入通道参数的设置后,开始使用远程设定点功能时,还需要激活远程设定值功能。远程设定值功能的激活有以下两种方式:

(1)仅使用远程设定点,不使用本地设定点:在PID控制器中,设置辅助输入通道2的功能为“远程SV”,相应数字为3。

(2)可进行远程和本地设定点之间切换:在PID控制器中,设置辅助输入通道2的功能为“禁止”,相应数字为0。然后设置外部开关量输入功能DI1为“遥控设定”,相应数字为2。通过这种外部开关量输入功能的设置,就可以采用图4中所示的纽子开关实现远程设定点和本地设定点之间的切换,开关闭合是为远程设定点功能,开关断开时为本地设定点功能。

需要注意的是,无论采用哪种远程设定点激活和切换方式,在输入信号类型、显示上下限范围和小数点位数这三个参数选项上,辅助输入通道始终要与主输入通道保持一致。

3. 总结

综上所述,通过此解决方案所使用的具有远程设定点功能的PID控制器,结合外置周期信号发生器,可很好实现锁相红外热成像无损检测中的正弦波温度闭环控制,使得被检物体内部的稳态正弦温度波更符合无损检测模型,并使得被检物温度快速达到所希望的测试温度而缩小检测时间,最终可使得锁相红外成为更精密化的无损检测技术。

这篇关于锁相热像无损检测技术中的正弦波温度闭环控制解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/326356

相关文章

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

找不到Anaconda prompt终端的原因分析及解决方案

《找不到Anacondaprompt终端的原因分析及解决方案》因为anaconda还没有初始化,在安装anaconda的过程中,有一行是否要添加anaconda到菜单目录中,由于没有勾选,导致没有菜... 目录问题原因问http://www.chinasem.cn题解决安装了 Anaconda 却找不到 An

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

使用DrissionPage控制360浏览器的完美解决方案

《使用DrissionPage控制360浏览器的完美解决方案》在网页自动化领域,经常遇到需要保持登录状态、保留Cookie等场景,今天要分享的方案可以完美解决这个问题:使用DrissionPage直接... 目录完整代码引言为什么要使用已有用户数据?核心代码实现1. 导入必要模块2. 关键配置(重点!)3.

Jackson库进行JSON 序列化时遇到了无限递归(Infinite Recursion)的问题及解决方案

《Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursion)的问题及解决方案》使用Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursi... 目录解决方案‌1. 使用 @jsonIgnore 忽略一个方向的引用2. 使用 @JsonManagedR