一种电阻焊控制器的数据存储方法转让专利

申请号 : CN200810053646.0

文献号 : CN101303577B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 成海晖张海勇

申请人 : 天津七所高科技有限公司

摘要 :

本发明涉及一种电阻焊控制器的数据存储方法,其包括下步骤:(1)单片机从EEPROM的存储区序号地址中读取存储区序号;(2)按下面公式计算EEPROM的当前存储区地址:当前存储区地址=数据存储基地址+存储区容量×存储区序号;(3)判断当前存储区的实际写入计数值是否等于最大写入计数值,是则,将存储区序号加1;(4)将焊接设备的工作参数写入到EEPROM的当前存储区中;(5)将当前存储区的实际写入计数值加1,即可实现电阻焊控制器的数据存储。本发明具有设计合理、实现简单的特点,延长了EEPROM的使用寿命,保证了数据存储的实时性、准确性及可靠性。

权利要求 :

1.一种电阻焊控制器的数据存储方法,其特征在于:是由电阻焊控制器内的单片机控制EEPROM实现的,该方法包括下述步骤:(1).单片机从EEPROM的存储区序号地址中读取存储区序号;

(2).按下面公式计算EEPROM的当前存储区地址:当前存储区地址=数据存储基地址+存储区容量×存储区序号;

(3).判断当前存储区的实际写入计数值是否等于最大写入计数值,是则将存储区序号加1;

(4).将焊接设备的工作参数写入到EEPROM的当前存储区中;

(5).将当前存储区的实际写入计数值加1,即可实现电阻焊控制器的数据存储。

2.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的单片机为8位数据格式的单片机,EEPROM为8位数据格式的EEPROM。

3.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的存储区序号地址为十六进制值0300H,数据存储基地址为十六进制值0400H。

4.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的最大写入计数值为255。

5.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的存储区容量为16字节。

6.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的存储区序号为0~255。

7.根据权利要求1所述的一种电阻焊控制器的数据存储方法,其特征在于:所述的焊接设备的工作参数包括焊接设备的两把焊钳的焊点数、平台数和平台焊点数,共16个字节。

说明书 :

一种电阻焊控制器的数据存储方法

技术领域

[0001] 本发明属于电阻焊控制器领域,尤其是一种电阻焊控制器的数据存储方法。

背景技术

[0002] 随着汽车行业的迅猛发展,电阻焊接设备被越来越广泛地用在汽车制造生产线上,电阻焊接设备通常需要在电阻焊控制器的控制下进行工作。电阻焊控制器在控制电阻焊接设备工作的同时,需要实时准确地记录焊接设备的工作参数,如焊点数、平台数、平台焊点数等信息。传统的电阻焊控制器的数据存储主要有以下三种形式:1.SRAM(静态数据存储器)与后备电池相结合的存储形式,此存储形式可以保存数据3~5年,但该种形式需要单独的充电电路,快充以及过放都有可能造成电池寿命的降低或永久性的损坏,影响数据存储的可靠性;2.SRAM(静态数据存储器)与法拉电容相结合的存储形式,此存储形式实现简单,但数据掉电后只能存储几天到十几天,影响了数据存储的可靠性;3.NVRAM(非易失性或非发挥性随机访问存储器)存储方式,其优点是断电后数据仍然可以存储10年之久,但由于NVRAM存储器价格昂贵,造成电阻焊控制器成本过高。
[0003] 近年来,EEPROM(电可擦写可编程只读存储器)的价格大幅降低,EEPROM作为一种非挥发性半导体存储器在电阻焊控制器上的应用越来越多。但是,现有控制器在进行数据存储时,通常采用固定地址存储法,即将焊接设备的工作参数在指定的固定地址内进行存储,由于EEPROM具有一定使用寿命,例如CAT24WC64存储器,其存储单元的写寿命为100万次,假如汽车厂一把焊接设备每天焊接10000点,在每次焊接结束后均需要将该焊接设备的工作参数写入存储器,使用固定地址存储法,则CAT24WC64存储器的使用寿命为
1000000/10000=100天,如果焊接设备的两把焊钳每天均焊接10000个点,则该存储器的使用寿命只有50天,因此采用固定地址存储法显然无法满足电阻焊控制器的数据存储要求。

发明内容

[0004] 本发明的目的在于克服现有技术的不足,提供一种设计合理、能够实时、准确、长期可靠地保存数据的电阻焊控制器的数据存储方法。
[0005] 本发明解决其技术问题是采取以下技术方案实现的:
[0006] 一种电阻焊控制器的数据存储方法,其特征在于:是由电阻焊控制器内的单片机控制EEPROM实现的,该方法包括下述步骤:
[0007] (1).单片机从EEPROM的存储区序号地址中读取存储区序号;
[0008] (2).按下面公式计算EEPROM的当前存储区地址:
[0009] 当前存储区地址=数据存储基地址+存储区容量×存储区序号;
[0010] (3).判断当前存储区的实际写入计数值是否等于最大写入计数值,是则将存储区序号加1;
[0011] (4).将焊接设备的工作参数写入到EEPROM的当前存储区中;
[0012] (5).将当前存储区的实际写入计数值加1,即可实现电阻焊控制器的数据存储。
[0013] 而且,所述的单片机为8位数据格式的单片机,EEPROM为8位数据格式的EEPROM。
[0014] 而且,所述的存储区序号地址为十六进制值0300H,数据存储基地址为十六进制值0400H。
[0015] 而且,所述的最大写入计数值为255。
[0016] 而且,所述的存储区容量为16字节。
[0017] 而且,所述的存储区序号为0~255。
[0018] 而且,所述的焊接设备的工作参数包括焊接设备的两把焊钳的焊点数、平台数、平台焊点数,共16个字节。
[0019] 本发明的优点和积极效果是:
[0020] 1.本数据存储方法设计合理,其将焊接设备的工作参数写入到EEPROM上的不同存储区中,避免了固定地址存储法对同一存储区的频繁操作造成对EEPROM器件的损坏,能够实时、准确、长期可靠地保存焊接设备的工作参数。以CAT24WC64存储器为例,使用本方法事先将数据存储空间分为256个存储区,在存储时将焊接设备的工作参数轮流存放在256个不同存储区中,本方法与固定地址方法相比较延长了EEPROM的使用寿命,对于每天
10000焊点的电阻焊控制器,使用固定地址存储法时,EEPROM的使用寿命为1000000/10000=100天,而采用本方法时,EEPROM的使用寿命为256×1000000/10000/365≈70.1年,可以看出明显地提高了EEPROM使用寿命。
[0021] 2.本数据存储方法通过软件控制将焊接设备的工作参数写入不同的存储区,具有实现简单、成本低廉的特点。
[0022] 3.本数据存储方法在突然断电的情况下,也能够保存现场的状态,不会造成数据的丢失,重新加电后继续工作,提高了数据存储的可靠性。
[0023] 4.本发明具有设计合理、实现简单的特点,延长了EEPROM的使用寿命,保证了数据存储的实时性、准确性及可靠性。

附图说明

[0024] 图1是本发明的处理流程方框图。

具体实施方式

[0025] 以下结合附图对本发明实施例做进一步详述。
[0026] 在本发明是通过电阻焊控制器实现的,在电阻焊接设备完成一次焊接后,电阻焊控制器内部的单片机对EEPROM(电可擦写可编程只读存储器)进行读写操作,从而将焊接设备的工作参数写入到EEPROM的不同存储区中。电阻焊控制器内部的单片机为8位数据格式的单片机,EEPROM为8位数据格式的EEPROM,在本实施例中,单片机为80C592芯片,2
EEPROM为CAT24WC64芯片,单片机通过两个I/O接口模拟IC时序连接到CAT24WC64芯片上的串行时钟(SCL)和串行数据/地址(SDA)上。
[0027] 本发明的EEPROM中的地址分配及数据存储结构如下表所示:
[0028]
[0029] 从上表中可以看出CAT24WC64芯片的0300H单元作为存储区序号地址存放存储区序号,也就是说,存储区序号地址为十六进制值0300H;数据存储区域是从CAT24WC64芯片的0400H地址开始存储,即数据存储基地址为十六进制值0400H。本发明将数据存储区从0400H~13FFH区域内的4096字节的数据存储区域分成256个存储区,存储区序号为0~
255,每个存储区容量为16个字节。本发明在进行数据存储时,单片机将焊接设备的工作参数以页写的方式写入到当前存储区中,该焊接设备的工作参数包括两台焊接设备的焊点数、平台数、平台焊点数等内容,共16个字节,其中,前8个数据为1#焊接设备的工作参数,后8个数据为2#焊接设备的工作数据。
[0030] 下面以一个实例来说明本方法的实现步骤:
[0031] (1).单片机从EEPROM的存储区序号地址(0300H)中读取存储区序号,例如,当读取出的数值为02H,即当前存储区序号为02H;
[0032] (2).按下面公式计算EEPROM的当前存储区地址:
[0033] 由于数据存储基地址=0400H,存储区容量=16(十进制值)=10H(十六进制),当前存储区序号=02H,所以
[0034] 当前存储区地址=数据存储基地址+存储区容量×存储区序号;
[0035] =0400H+10H×02H=0420H;
[0036] (3).判断当前存储区的实际写入计数值是否等于最大写入计数值,是则,将存储区序号加1;实际写入计数值用于统计在当前存储区的实际写入计数值,该实际写入计数值的范围是从0~255,最大写入计数值是预置的数值255,在该存储区中的连续最大写入次数为256次,当实际写入计数值的值=255时,存储区序号加1后其值变为03H,即在下次写入数据时就在第03H存储区中进行写操作;
[0037] (4).将焊接设备的工作参数写入到EEPROM的当前存储区中;在本步骤中,单片机将包括两台焊接设备的焊点数、平台数、平台焊点数的工作参数以页写的方式一次写入到当前存储区(地址为0420H开始的16字节,即02H号存储区)中;
[0038] (5).将当前存储区的实际写入计数值加1,在本实施例中实际写入计数值从0~255,当实际写入计数值为255进行加1操作时,则实际写入计数值变为0,即在当前存储区已连续完成了256次写操作,下次写入时,就应该在下一个存储区进行写操作,而此时的实际写入计数值变成0,下一存储区的实际写入计数值从0开始重新计算。
[0039] 从上述步骤中可以看出,数据从0400H地址开始,每个存储区(16个字节)连续写256次,存储区序号地址(0300H)中的数据写一次(存储区序号加1后进行写操作),然后转到下一个存储区(16个字节),即0410H地址单元再连续写入256次,存储区序号地址(0300H)中的数据再写一次(存储区序号加1后进行写操作),以此类推,直到存储区序号地址(0300H)中的存储区序号完成一个256次的循环,再次重新开始循环。也就是说,在256个存储区进行256次的数据存储操作,完成了256*256=65536次焊接数据的存储任务。
[0040] 本数据存储方法为一种自然变址法,其“自然”的含义是指:在八位单片机和八位数据格式的系统中,对于存储区序号地址(0300H)及0400H~13FFH地址数据存储区中的初始值没有要求,系统开始运行时可以为0~255之间的任意随机数,同时,存储区序号机写入计数值的循环也是通过八位数据的加1操作自然归零完成的;其“变址”的含义是指:存储区序号地址(0300H)存放的为一个“偏移量”,数据存储基地址(0400H)作为“基址”,变址后的数据存储地址为“基址”+16个字节ד偏移量”后的地址。
[0041] 本数据存储方法对于电阻焊控制器突然断电的情况同样适合,当电阻焊控制器断电时,对于不足256次焊接的上次结果需要在相同的存储区再次进行写操作,直到写够256次时才进入下一个数据存储区,也就是说在重新上电后,当前的数据存储区需要根据掉电的时刻重写0~255中的某个数的次数。显然,对于0400H~13FFH之间的256个存储区,不同的存储区出现的概率是一样的,对器件寿命影响不大。
[0042] 需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。