CN103631677B - 一种plc设备数据掉电保持的方法 - Google Patents

一种plc设备数据掉电保持的方法 Download PDF

Info

Publication number
CN103631677B
CN103631677B CN201310613194.8A CN201310613194A CN103631677B CN 103631677 B CN103631677 B CN 103631677B CN 201310613194 A CN201310613194 A CN 201310613194A CN 103631677 B CN103631677 B CN 103631677B
Authority
CN
China
Prior art keywords
data
sector
sequence number
plc device
keep
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310613194.8A
Other languages
English (en)
Other versions
CN103631677A (zh
Inventor
琚长江
侯金华
滕宇
侯斌
应成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Electrical Apparatus Research Institute Group Co Ltd
Original Assignee
Shanghai Electrical Apparatus Research Institute Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Electrical Apparatus Research Institute Group Co Ltd filed Critical Shanghai Electrical Apparatus Research Institute Group Co Ltd
Priority to CN201310613194.8A priority Critical patent/CN103631677B/zh
Publication of CN103631677A publication Critical patent/CN103631677A/zh
Application granted granted Critical
Publication of CN103631677B publication Critical patent/CN103631677B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明提出了一种应用于PLC的掉电数据保持方法。其保持方法是由微处理器对掉电保持存储空间进行预擦除,掉电时向预擦除存储空间写入经过打包的保持数据。上电后对数据更新情况进行比对,再行选用,保持掉电数据的状态最新和可用性。有效地解决了工业现场在受限的单板硬件设计中掉电数据保存不可靠或缺失的现象。可在不更改原硬件设备的情况下,对PLC掉电数据保持性能进行优化,满足工业现场掉电数据保存需求。

Description

一种PLC设备数据掉电保持的方法
技术领域
本发明涉及一种用于PLC设备的掉电数据保持方法,属于工业控制技术领域。
背景技术
PLC(ProgrammableLogicController),可编程逻辑控制器,一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用一种可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与计算操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程,是工业控制的核心部分。
随着工业生产环境的日益复杂化,工业自动化产品对于生产环境遇到突发事件后的数据可恢复性要求越来越高,甚至要求在外部突发停电情况下,PLC可以把设备(如:继电器等)的工作状态或者尚未完成输出的数据保存起来,便于再次上电时,能够快速恢复。
为了在掉电瞬间保证数据的正确性,必须给数据存储过程提供足够的时间,现有技术提供了若干方式。一种是业内普遍采用的硬件实现方式,即在供电电路的后极添加储能电容,以构成掉电数据保持电路。专利CN201220171318.2提供了一种掉电保持电路,方便在电源断开后的一定时间内,将数据及时写入flash(闪存),由于没有应用预擦除的方法,而且这种做法仅延长了掉电保持时间,无法完全保证掉电数据的正确性,但却大大增加了硬件设计成本。专利CN200710198446提供了一种掉电数据软件修复方法,虽然已经有校验码的概念,但对存储数据缺乏时间序列性要求,难以保证工业现场数据保护的实时性和准确性。
发明内容
本发明的要解决的技术问题是在不改变原有空间和单板硬件设计的情况下,提供一种实时性和准确性均较高的掉电数据软件修复方法。
为了解决上述技术问题,本发明的技术方案是提供了一种PLC设备数据掉电保持的方法,该PLC设备至少包括一个PLC、一个可擦写的掉电保持存储空间、一个掉电保持触发器,且应有保证设备原有电平不会直接失电的基本掉电保持设计,以确保掉电数据有2~5s存储时间,其特征在于,步骤为:
步骤1、PLC设备正常运行时,擦除掉电保持存储空间的一个未使用扇区作为PLC设备下一次异常掉电的备份扇区;
步骤2、PLC设备异常掉电后,将当前的更新序号加1后将掉电数据打包处理成掉电数据包并存入步骤1得到的备份扇区,存有掉电数据包的备份扇区变为保持扇区,该掉电数据包至少包括保持数据、更新序号、保持扇区信息和CRC校验码;
步骤3、PLC设备上电恢复后,读取掉电保持存储空间的数据,利用CRC校验码逐个校验各保持扇区内是否存在正确数据,若不存在正确数据,则判定为第一次启动,作掉电保持存储空间初始化处理,若存在正确数据,则PLC设备启动时加载更新序号最大的保持扇区内的掉电数据包作为恢复数据,并将该更新序号作为当前的更新序号,返回步骤1重新执行。
优选地,步骤3中所述作掉电保持存储空间初始化处理是指:对掉电保持存储空间进行预擦除,确保其清零。
优选地,在步骤3中,利用CRC校验码逐个校验各保持扇区内存在正确数据时:若仅有一个保持扇区存在正确数据,则PLC设备启动时直接加载该保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号;若有至少2个保持扇区都存在正确数据,则获取各个保持扇区所对应的更新序号,选取最大更新序号所对应的保持扇区,PLC设备启动时加载该保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号。
优选地,在有至少3个保持扇区都存在正确数据的情况下,若有至少2个保持扇区所对应的更新序号相同其均为最大,则PLC设备启动时加载第一个保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号。
与现有技术相比,本发明有如下有益效果:在不改变原有硬件电路设计的基础上,相对于其他方法,采用本发明后,不需要大量的二次硬件设计,可以降低产品成本;通过对存储器的预擦除步骤,增加了存储空间,加快了存储速度。同时操作方便、实用性强。
附图说明
图1为本发明提供的一种PLC设备数据掉电保持的方法的流程图。
具体实施方式
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
结合图1,本发明提供了一种PLC设备数据掉电保持的方法,该PLC设备至少包括一个PLC、一个可擦写的掉电保持存储空间、一个掉电保持触发器,且应有保证设备原有电平不会直接失电的基本掉电保持设计,以确保掉电数据有2~5s存储时间,其具体步骤为:
步骤1、PLC设备正常运行时,擦除掉电保持存储空间的一个未使用扇区作为PLC设备下一次异常掉电的备份扇区;
步骤2、在PLC设备异常掉电时,将当前的更新序号加1后将掉电数据打包处理成掉电数据包并存入步骤1得到的备份扇区,存有掉电数据包的备份扇区变为保持扇区,该掉电数据包至少包括保持数据、更新序号、保持扇区信息和CRC校验码;
PLC设备在掉电后的数据保持步骤为:
步骤101、开始;
步骤102、PLC设备第一次上电,PLC器读取掉电保持存储空间的数据;
步骤201、读取掉电保持的数据占用空间的预分块信息(保持扇区A、保持扇区B、保持扇区C…保持扇区N)并进行CRC校验,若不存在正确数据,则进入步骤202,若存在正确数据,进入步骤301;
步骤202、判定为第一次正常启动,将更新序号清零;
步骤203、对掉电保持存储空间进行预擦除,确保其清零;
步骤301、读取保持扇区A、保持扇区B、保持扇区C…保持扇区N中的数据进行CRC校验,如果只有一个保持扇区校验正确,则运行步骤311,若存在多个校验正确的保持扇区,则运行步骤321;
步骤311、只有一个保持扇区校验正确;
步骤312、PLC设备启动时从校验正确的保持扇区恢复数据;
步骤313、获取校验正确的保持扇区所对应的更新序号,并将其作为当前的更新序号,然后运行步骤401;
步骤321、存在多个校验正确的保持扇区;
步骤322、比对各个保持扇区所对应的更新序号;
步骤323、PLC设备启动时从最大更新序号最大所对应的保持扇区恢复数据,若有多个相同最大更新序号,则从第一个保持扇区恢复数据;
步骤324、选取最大更新序号作为当前的更新序号,然后运行步骤401;
步骤401、对执行步骤311至步骤313或执行步骤321至步骤324后未选取的其中一个保持扇区进行预擦除作为备份扇区,为下次写入数据做好准备;
步骤402、当掉电信号再次触发,更新序号+1并打包所有数据写入步骤401得到的备份扇区,结束此次掉电保护
步骤403、上电恢复数据,重新运行步骤102-步骤402。
上述流程仅描述了本发明的最佳状态,在实际运行过程中,还可包含其他的存储介质、预擦除方式及程序,如:SD卡外设、硬盘等外部访问设备,因此,本发明并不仅限于上述状态,因其过程类似,此不再赘述。
虽然上述实例描述了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,均在本发明保护权利要求的保护范围。

Claims (4)

1.一种PLC设备数据掉电保持的方法,该PLC设备至少包括一个PLC、一个可擦写的掉电保持存储空间、一个掉电保持触发器,且应有保证设备原有电平不会直接失电的基本掉电保持设计,以确保掉电数据有2~5s存储时间,其特征在于,步骤为:
步骤1、PLC设备正常运行时,擦除掉电保持存储空间的一个未使用扇区作为PLC设备下一次异常掉电的备份扇区;
步骤2、PLC设备异常掉电后,将当前的更新序号加1后将掉电数据打包处理成掉电数据包并存入步骤1得到的备份扇区,存有掉电数据包的备份扇区变为保持扇区,该掉电数据包至少包括保持数据、更新序号、保持扇区信息和CRC校验码;
步骤3、PLC设备上电恢复后,读取掉电保持存储空间的数据,利用CRC校验码逐个校验各保持扇区内是否存在正确数据,若不存在正确数据,则判定为第一次启动,作掉电保持存储空间初始化处理,若存在正确数据,则PLC设备启动时加载更新序号最大的保持扇区内的掉电数据包作为恢复数据,并将该更新序号作为当前的更新序号,返回步骤1重新执行。
2.如权利要求1所述的一种PLC设备数据掉电保持的方法,其特征在于,步骤3中所述作掉电保持存储空间初始化处理是指:对掉电保持存储空间进行预擦除,确保其清零。
3.如权利要求1所述的一种PLC设备数据掉电保持的方法,其特征在于,在步骤3中,利用CRC校验码逐个校验各保持扇区内是否存在正确数据时:若仅有一个保持扇区存在正确数据,则PLC设备启动时直接加载该保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号;若有至少2个保持扇区都存在正确数据,则获取各个保持扇区所对应的更新序号,选取最大更新序号所对应的保持扇区,PLC设备启动时加载该保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号。
4.如权利要求3所述的一种PLC设备数据掉电保持的方法,其特征在于,在有至少3个保持扇区都存在正确数据的情况下,若有至少2个保持扇区所对应的更新序号相同其均为最大,则PLC设备启动时加载第一个保持扇区内的掉电数据包作为恢复数据,并将该保持扇区所对应的更新序号作为当前的更新序号。
CN201310613194.8A 2013-11-27 2013-11-27 一种plc设备数据掉电保持的方法 Active CN103631677B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310613194.8A CN103631677B (zh) 2013-11-27 2013-11-27 一种plc设备数据掉电保持的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310613194.8A CN103631677B (zh) 2013-11-27 2013-11-27 一种plc设备数据掉电保持的方法

Publications (2)

Publication Number Publication Date
CN103631677A CN103631677A (zh) 2014-03-12
CN103631677B true CN103631677B (zh) 2016-07-06

Family

ID=50212764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310613194.8A Active CN103631677B (zh) 2013-11-27 2013-11-27 一种plc设备数据掉电保持的方法

Country Status (1)

Country Link
CN (1) CN103631677B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107064777B (zh) * 2017-04-28 2019-09-27 郑州云海信息技术有限公司 一种单板测试装置及方法
CN108762669B (zh) * 2018-05-18 2021-03-05 深圳忆联信息系统有限公司 提升掉电时数据写入速度的方法、装置及计算机设备
CN112882656A (zh) * 2021-02-03 2021-06-01 深圳市麦格米特控制技术有限公司 一种掉电数据存储方法和掉电数据存储电路
CN113138653B (zh) * 2021-04-14 2021-10-15 福州富昌维控电子科技有限公司 掉电数据保护方法及终端
CN117149513A (zh) * 2022-05-24 2023-12-01 上海江波龙数字技术有限公司 一种存储装置的数据备份方法、系统、电子设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6239513B1 (en) * 2000-02-24 2001-05-29 Design Power Solutions International Emergency supplemental power supply for outage protection of critical electric loads
CN1725179A (zh) * 2005-05-19 2006-01-25 杭州华为三康技术有限公司 系统安全启动的方法及其装置
CN2836116Y (zh) * 2005-12-07 2006-11-08 成都卫士通信息产业股份有限公司 具有掉电保护的税控收款机
CN201336019Y (zh) * 2009-01-22 2009-10-28 无锡市中远工业自动化有限公司 可编程序控制器的掉电保护电路
CN202014221U (zh) * 2011-03-30 2011-10-19 上海军远通信设备有限公司 一种plc控制的变频拖动系统的掉电处理电路
CN202696263U (zh) * 2012-04-20 2013-01-23 中兴通讯股份有限公司 一种掉电保持电路及主控设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7464219B2 (en) * 2005-08-01 2008-12-09 International Business Machines Corporation Apparatus, system, and storage medium for data protection by a storage device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6239513B1 (en) * 2000-02-24 2001-05-29 Design Power Solutions International Emergency supplemental power supply for outage protection of critical electric loads
CN1725179A (zh) * 2005-05-19 2006-01-25 杭州华为三康技术有限公司 系统安全启动的方法及其装置
CN2836116Y (zh) * 2005-12-07 2006-11-08 成都卫士通信息产业股份有限公司 具有掉电保护的税控收款机
CN201336019Y (zh) * 2009-01-22 2009-10-28 无锡市中远工业自动化有限公司 可编程序控制器的掉电保护电路
CN202014221U (zh) * 2011-03-30 2011-10-19 上海军远通信设备有限公司 一种plc控制的变频拖动系统的掉电处理电路
CN202696263U (zh) * 2012-04-20 2013-01-23 中兴通讯股份有限公司 一种掉电保持电路及主控设备

Also Published As

Publication number Publication date
CN103631677A (zh) 2014-03-12

Similar Documents

Publication Publication Date Title
CN103631677B (zh) 一种plc设备数据掉电保持的方法
CN101794256B (zh) 非易失性存储器子系统及其存储器控制器
CN104021093A (zh) 一种基于nvdimm的存储设备的掉电保护方法
CN102541690B (zh) 一种智能卡及其恢复数据方法
CN104102585A (zh) 映射信息记录方法、存储器控制器与存储器储存装置
CN103793238A (zh) 机柜与其同时更新多个基本输入输出系统的方法
CN104063186A (zh) 一种电子设备的数据访问方法
CN102902637B (zh) 一种固态硬盘数据断电保护方法
CN103809994A (zh) 固态储存装置及其睡眠控制电路
CN103823769A (zh) 计算机系统及数据回复方法
CN105759679B (zh) 掉电保护控制器及其掉电保持方法
US10261720B2 (en) Method for optimizing the use of a non-volatile memory in a motor vehicle computer for monitoring a functional member
CN103378986A (zh) 系统事件日志记录系统及方法
CN103778964A (zh) 一种NAND Flash烧写数据的处理、使用方法及装置、系统
CN103425549A (zh) 嵌入式控制器的固件管理方法及系统
CN103399520B (zh) 用于可编程逻辑控制器系统的掉电数据存取方法及装置
CN105739982A (zh) 一种系统休眠的方法及装置
CN103902336A (zh) 操作系统启动控制的方法及装置
CN103514063A (zh) 一种flash数据处理方法以及装置
CN102207905A (zh) 系统恢复方法、存储媒体控制器及存储系统
CN101446927B (zh) 闪存系统及其控制方法
CN102446101A (zh) 固件强制升级的系统及其固件的强制升级方法
CN103890713A (zh) 用于管理处理系统内的寄存器信息的装置及方法
CN105095101A (zh) 向存储器写入数据的方法及装置、智能卡
CN104598844A (zh) 一种防止固态硬盘系统文件损坏的掉电保护方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant