非标行业是一个特殊的行业,面对设备发货到现场后迟迟不肯付款的和找各种理由拒绝搪塞验收的客户,必须的采取非常的手段,其中给设备加密定时锁机是一种优选的方案。一来可以提醒客户要遵守规则要求,按时验收,按时付款,二来不会给客户造成任何的损失,三来避免走法律途径冗繁的手续和律师代理费。 废话不多说,在这里介绍下动态加密计时催块程序的解决思路及博途V15的源程序供各位朋友参考。所谓动态密码,就是所用的解密密码是动态实时生成的,也就是说密码是随时间变化而变化。
过程是这样实现的。当调试人员在项目调试完成后,设置一个到计时天数,当天数到达后设备锁机,HMI上跳出解锁界面,这个时候点击HMI上的生成解锁码按钮,生成解锁码(解锁码是在动态验证码中挑选8位生成的,在此基础上还可以扩展出随机生成的解锁码..........)。然后客户把解锁码告诉给调试人员,调试人员根据解锁码计算出解密密码告诉给客户解密(调试人员是需要知道这个解密算法)。
程序块数据结构
程序完成步骤
1、首先调用RD_LOC_T读取日期时间存入到FB块本地临时变量中,读取秒数,根据秒数计算天数
2、调用西门子官方随机数生成块,并将随机数加上索引。
3、将随机数按照索引的顺序,放入相应的寄存器,并转成字符并显示在HMI上,可以看到动态的字符变化的炫酷效果
4、生成解锁码显示在HMI,客户把这个解锁码告诉调试人员,调试人员需要解锁码计算出密码。
5、制作解密算法(这个机密算法根据需要可以自己更改)并强转成DINT类型,并密码核对解密。
6、解密完成复位状态
(文章来源;西门子工业论坛,版权归原作者所有,侵删 。评论处大家可以补充文章解释不对或欠缺的部分)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |