程序备份过了三次,丢的时候才发现一次都没存对

设备科长拍着胸脯说:程序我们备份了,好几个地方都存了。
设备一停,想调程序。
三个人翻硬盘、翻网盘、翻柜子里那张旧 U 盘。
最后发现——要么根本打不开,要么打开的是三年前的版本。
"备份了"这三个字,是工业现场最大的安慰自己的话。
这篇文章讲三件事:程序到底存在哪、为什么会丢、哪一步最脆。
先把"存在哪"讲清楚,否则谈不上备份
你以为程序是一个文件,其实它是好几层东西,散在不同的地方。
控制器里的用户程序,存在 CPU 的装载存储器里。
但对 S7-1200/1500 来说,你真正改的、编译的、能拿来恢复的,是 TIA Portal 里的"项目工程"。
光有运行在 CPU 里的程序块不够,因为从 CPU 上载回来的,往往不是完整的工程。
HMI 的画面和组态,存在面板自己的存储里,又是另一份。
变频器、伺服的驱动参数,存在驱动器的参数存储器里,这是第三份。
网络组态、报警联锁逻辑,散在项目工程和面板的配置里,是第四份。
真正"完整的备份",是这几样能对得上、能拼回一台能开机的设备。
只存了其中一份,那不叫备份,叫"留了个念想"。
为什么会丢:不是不备份,是备份的东西"过期"和"对不上"
第一种丢法,是只备份了运行态,没备份工程源。
CPU 上能上载的都上载了,但受保护或没工程的情况下,上载回来缺东少西。
等设备真出问题,那套"备份"根本还原不出原来的行为。
第二种丢法,是版本漂了。
设备中途改过一次工艺、调过一次参数、加过一个报警。
改的人改的是现场,没同步回备份。
于是硬盘里那份,还是没改之前的老版本。
下次恢复,把老工艺又拉回来了。
第三种丢法,是介质本身不行。
U 盘在柜子里放了三年,坏道了。
老硬盘不通电就放着,磁头卡了。
网盘账号换了人,密码找不回。
每一种都不在"有没有备份",在"备份能不能用"。
哪一步最脆:改动之后的那段真空期
整条链里,最容易出问题的是"改完之后没归档"。
现场改一个小参数,顺手就改了,不记、不存、不回传。
改之前的那份备份瞬间变成旧版本。
这个真空期可能只有几天,也可能拖几个月。
几个月里设备一直复用的是新参数,备份却还停在旧参数。
等停机要恢复,你手里那份是"错的",而且错得理直气壮——因为它确实是你自己存的。

能被你带走的东西:一张自查表
|- 这台设备的控制器品牌型号和固件版本,你写下来了吗 |- 项目工程(不是运行态)能打开吗,打开报不报错 |- HMI 画面单独存了吗,和工程版本对得上吗 |- 驱动器参数单独导出了吗 |- 最后一次改动是什么时候,改动后的版本存了吗 |- 备份介质最近一次打开验证是什么时候
六条里只要有两条答不上来,你的"备份"就是有风险的。
不用一次全做对。
先把品牌型号、固件版本、最后一次改动时间这三样补上,就已经甩开现场绝大多数设备了。
什么情况下你不必找我们
如果你的设备是从厂家整体采购的、厂家还活着、随时能来人、而且源工程人家替你保管着——那你真的不必找任何第三方。
厂家能来,就是你的备份,还是"活着"的备份。
我们要接的是另一种:设备是二手的、厂家没了或联系不上、源工程不知道在哪、现场只有一台能开但不敢停的老设备。
到这一步,先别急着重写程序。
先做技术评估——程序能不能完整读出来、哪些保护得过、哪些还原不出来。
能做的说能做,做不了的也说清楚,不拿"应该能"糊弄你。
公司是新的,但"程序抢救和托管"这条路怎么走,每一步踩过什么坑,是电气加软件两块加起来做了三十多年才理清楚的。
下一篇我们讲:遇到程序被密码锁了、加密了,你该先判断自己面对的是哪一层锁。