1.一种系泊锚链闪光对焊数据采集、存储及读取方法,其特征在于,包括以下步骤:(1)确定当前锚链链号y对应的数据表datasheet‑y和当前流水号m,新建空的焊接数据队列Qm和焊接参数对象Fm,读取当前焊接参数并依次写入焊接参数对象Fm的对应元素中;
(2)建立独立于控制系统主程序的数据采集线程Thread,根据周期性采集焊接过程数据确定焊接数据数组D,将焊接数据数组D排入焊接数据队列Qm;
(3)数据存储:闪光对焊完成后,在datasheet‑y中新建记录R,存储对队列Qm进行二进制序列化处理后的二进制数据Q′m和当前流水号m;
(4)数据读取:读取历史焊接数据,绘制焊接曲线;
步骤(1)包括以下步骤:
(1.1)在焊接记录数据库中查找与当前锚链链号y相对应的数据表datasheet‑y,读取datasheet‑y中的记录条数num;若不存在datasheet‑y,则新建datasheet‑y,令记录条数num=0;其中,datasheet‑y包括如下字段名:流水号、工艺规格、焊件编号、门限电流、初始夹长、闪平长度、预热速度、闪光速度、烧化长度、顶锻保持时间、顶锻长度和焊接数据,焊接数据字段的数据类型为blob;令当前流水号m=num+1;
(1.2)新建空的焊接数据队列Qm和焊接参数对象Fm;焊接参数对象Fm中的元素包括:工艺规格、焊件编号、门限电流、初始夹长、闪平长度、预热速度、闪光速度、烧化长度、顶锻保持时间和顶锻长度;
(1.3)从焊接控制系统中读取当前焊接参数,并依次写入焊接参数对象Fm的对应元素中;
步骤(3)包括以下步骤:
(3.1)闪光对焊完成后,打开datasheet‑y,
(3.2)在datasheet‑y中新建记录R,并将当前流水号m写入记录R的流水号字段中;
(3.3)将焊接参数对象Fm中的元素写入记录R的对应字段中;
(3.4)将队列Qm进行二进制序列化处理为二进制数据Q′m,并写入记录R的焊接数据字段中;
(3.5)数据存储完成,关闭datasheet‑y。
2.根据权利要求1所述系泊锚链闪光对焊数据采集、存储及读取方法,其特征在于,步骤(2)包括以下步骤:(2.1)建立独立于控制系统主程序的数据采集线程Thread,设定采样时间间隔Δt,采样对比时间t;
(2.2)读取系统时间t0,令t=t0,新建空的焊接数据数组D;
(2.3)进行周期性采集焊接过程数据;
(2.3.1)读取当前系统时间tn;
(2.3.1.1)当tn‑t≥Δt时,读取当前采样点的数据并写入焊接数据数组D=[tn,sn,in,vn,xn,pn],其中,sn为焊接状态,in为焊接电流,vn为焊接电压,xn为电极位移,pn为顶锻压力;
将数组D入队焊接数据队列Qm;反之,则返回至(2.3.1);
(2.3.2)若焊接控制系统发出焊接结束指令,则跳至(2.4);反之,令t=tn,返回至(2.3.1);
(2.4)控制系统停止数据采集线程Thread,结束数据采集。
3.根据权利要求1所述系泊锚链闪光对焊数据采集、存储及读取方法,其特征在于,步骤(4)包括以下步骤:(4.1)新建空的数据队列Qw、参数对象Fw和焊接数据点数组Du;
(4.2)根据历史锚链链号z和焊件编号ew,检索历史锚链链号z对应的历史数据表datasheet‑z;
(4.2.1)若datasheet‑z存在,根据焊件编号ew确定datasheet‑z中与焊件编号ew对应的历史记录J;
(4.2.2)若datasheet‑z或历史记录J不存在,则提示报错并跳至(4.6);
(4.3)将历史记录J中的焊接参数对应写入参数对象Fw中;
(4.4)将历史记录J中的“焊接数据”字段中内的历史二进制数据Q′w反序列化,若反序列化成功,将其生成并写入数据队列Qw;反之,提示焊接数据不正确,并跳至(4.6);
(4.5)控制系统依次出队数据队列Qw中的每个元素并在历史焊接曲线界面绘制坐标点;
(4.5.1)若数据队列Qw中元素个数大于0,数据队列Qw出队一个元素,并将该元素写入焊接数据点数组Du=[tu,su,iu,vu,xu,pu],其中,tu为采样时间,su为历史焊接状态,iu为历史焊接电流,vu为历史焊接电压,xu为历史电极位移,pu为历史顶锻压力;反之,则跳至(4.6);
(4.5.2)依次读取数组Du中tu,su,iu,vu,xu,pu的数据,以采样时间tu为横坐标,iu、vu、xu和pu分别为纵坐标,绘制电流折线图Pi、电压折线图Pv、位移折线图Px和压力折线图Pp中的坐标点,并返回至(4.5.1);
(4.6)控制系统结束读取历史焊接数据。