APP下载

基于Arduino的焊接热循环测试系统

2020-09-10王泽平房雲峰姜宝龙白振宇

内燃机与配件 2020年9期
关键词:焊接

王泽平 房雲峰 姜宝龙 白振宇

摘要:应用MATLAB环境下PC机与Arduino实时串行通讯及数据处理的方法,完成焊接热循环测试系统的搭建。针对K型热电偶提取焊接温度场数据,基于MATLAB进行实时的曲线绘制和焊接热循环分析,简化了焊接热循环实验流程,便于进一步完善实验步骤。

关键词:焊接;热循环;测试系统

0  引言

HAZ热循环的测定分为焊接热模拟法和就地实测法。目前实验室多采用焊接热模拟法。焊接热模拟法是将试件放在热模拟装置中经历与焊接相同的热过程,其设备比较昂贵。在焊接热循环的地实测法上,多采用红外测温法和热电偶法。红外测温技术是一项较为新型的测温技术,但在对焊接温度场进行测试时,焊接区附近的焊接飞溅、烟尘、保护气体等会直接影响到其监测。本文设计新型焊接热循环测试系统,通过Arduino及计算机实时地对温度数据进行分析处理,绘制热循环曲线,分析计算焊接热循环的主要参数。新版本的MATLAB开发了相应的Arduino模块,相对于单片机来说,在进行与实时通讯时更具有便捷性。本文应用了一种MATLAB环境下,PC机与Arduino实时串行通信数据处理方法,简化测试系统开发流程,提高了项目开发效率。

1  测试装置设计

1.1 总体

测温装置以Arduino为主控单元,同时控制6路测温模块测温,并采集焊接时的电流和电压和各路测温模块的数字信号。Arduino将数据传送到上位机,上位机基于MATLAB完成绘制测试温度曲线、焊接电压电流值曲线的工作, 并以Excel格式存储测量值。同时设置继电器隔离模块,可以耐受GMAW焊时焊接电流及电压对系统的干扰。系统构成如图1所示。

1.2 测温模块

测温模块是焊接热循环测试系统的核心,使用合理的测温元件及信号调理电路是数据采集有效性的根本。

实验设备中常用的温度传感器有光学温度传感器,数字式温度传感器、热电偶、热电阻等[1]。焊接区附近的焊接飞溅、弧光等直接影响光学温度传感器的测量精度,同时焊接温度场温度最高可达1300℃。为满足焊接热循环的测定,选择K型热电偶作为测温元件。

针对K型热电偶,本文选用美国MAXIM公司生产的MAX6675芯片作为数模转换器。芯片内置冷端补偿范围为-20~+80℃,适应室温波动的测试环境。同时芯片具备简单的SPI串行接口,通过三根线实现与Arduino的通讯。因其具备热电偶断线检测功能,和较强的抗干扰性,使得热电偶测温线路变得简单,方便了焊接热循环区传感器的线路布置。

MAX6675作为从设备,采用SPI串行外设总线与Arduino接口,其工作时序,其中如图2所示,CS为片选信号,SO为串行数里输出,SCK为串行时钟输入[2]。Arduino的ATmega系列处理器内建SPI接口,位于数字10~13脚。

在MAX6675的CS引脚从1变为0时,芯片停止信号转换,并通过SO引脚发送转换后的数据。每个时钟周期发送出一位数据。高位先发送,需要16个时钟周期发送完整的数据。15是冗余位,14-3是温度值,D2检测热电偶是否断开位。将片选端连接到Arduino的2~7的I/O口上,便于在程序中进行数据的循环采样,将一个循环中六个传感器采集的温度信号归为一组,按组与上位机进行数据传输,每组数据作为中断信号,如设置回调函数触发事件,当缓冲区中达到设定字节的数据时,触发中断。

1.3 与PC端的通讯模块

采用MATLAB作为上位机,与Arduino进行实时通讯[3-4]。MATLAB与Arduino的通讯方式有四种,其中实现数据回传的有Simulink串口通信或者仪器控制工具箱,为了保证系统的实时性更高,本文选用仪器控制工具箱,采用基于事件驱动中断通信机制,与上位机进行数据传送。使用serial函数创建串口对象,定义通信模式,并在对象属性上获得串口的状态。

查询和中断为读取串口数据的两种方式[5]。查询方式,大量的数据下位机分批分时传输给PC机,需要不停查询串行口的缓冲区,时刻保持着有数据就读取的状态,不能对数据进行实时处理。为了保证测试系统的实时性,以中断方式对串口进行控制,实现实时处理下位机传送的数据,采用MATLAB的事件和回调函数机制完成。

装置工作时,MATLAB通过调用仪器控制工具箱中serial函数,创建串口对象,得到Arduino文件句柄,操作文件实现对PC机串行口读写[6]。PC机可以通过MATLAB向串行口发送特殊指令,Arduino对此反应,将采样数据通过串行口回传。MATLAB通过中断,实时接收Arduino发送的数据,并完成对数据分析处理、文件存储及图形显示。

1.4 MATLAB实时显示数据

常用的MATLAB二維画图函数为plot,但其一般为静态的。实时的数据显示需要动态同步显示。本文采用drawnow,刷新屏幕的,搭配plot完成数据曲线的实时显示。

2  结论

本文设计的焊接热循环测试装置由Arduino采集MAX6675的输出信号,并将数据送入上位机,有MATLAB中进行数据处理和实时显示。

由MATLAB本身在工程计算方面的强大,便与对测试系统的进一步完善和开发。利用多路热循环测试系统,在焊接过程中实时测试各测点的温度,并分析绘制热循环曲线计算其主要参数,为后续分析焊接参数对应力变形、焊接冷却相变过程、接头组织、分析HAZ组织与性能提供数据支持。

参考文献:

[1]李宇.焊接热循环数据采集系统中的硬件设计[J].科技创新与应用,2017(28):96-97.

[2]周志炜.基于MAX6675的测温装置[C].中国电工技术学会电工产品可靠性研究会.第五届电工产品可靠性与电接触国际会议论文集.中国电工技术学会电工产品可靠性研究会:中国电工技术学会,2014:363-367.

[3]向先波,徐国华,张琴.Matlab环境下PC机与单片机的串行通信及数据处理[J].单片机与嵌入式系统应用,2004(12):27-31.

[4]张中然,焦波,孙志勇,丁明娜.一般光照条件下铝塑泡罩药品包装检测系统[J].哈尔滨理工大学学报,2017,22(05):65-69,75.

猜你喜欢

焊接
一款拖拉机机罩的焊接自动化方案
基于神经网络的动力电池组焊接参数优化研究
大口径镍基复合管的焊接
浅谈中职“校企合作,双技能培养”课程体系改革实践
CO2气体保护焊在设备制造焊接中的应用
带压堵漏技术在检修中的应用
高职焊接专业教学改革研究
铝合金构件焊接变形研究及焊接工艺优化