西门子PLC动态加密计时程序设计

2023-09-26  

这个时候点击HMI上的生成解锁码按钮,生成解锁码(解锁码是在动态验证码中挑选8位生成的,在此基础上还可以扩展出随机生成的解锁码..........)。


然后客户把解锁码告诉给调试人员,调试人员根据解锁码计算出解密密码告诉给客户解密(调试人员是需要知道这个解密算法)。

84e926f4-eefc-11ed-90ce-dac502259ad0.jpg

加密计时模块

84f10ff4-eefc-11ed-90ce-dac502259ad0.png

程序块数据结构

84fbdee8-eefc-11ed-90ce-dac502259ad0.jpg

程序完成步骤

1、首先调用RD_LOC_T读取日期时间存入到FB块本地临时变量中,读取秒数,根据秒数计算天数

85066d7c-eefc-11ed-90ce-dac502259ad0.png

850f64e0-eefc-11ed-90ce-dac502259ad0.png

2、调用西门子官方随机数生成块,并将随机数加上索引。

851a06e8-eefc-11ed-90ce-dac502259ad0.png

3、将随机数按照索引的顺序,放入相应的寄存器,并转成字符并显示在HMI上,可以看到动态的字符变化的炫酷效果

8524bcb4-eefc-11ed-90ce-dac502259ad0.jpg

4、生成解锁码显示在HMI,客户把这个解锁码告诉调试人员,调试人员需要解锁码计算出密码。

852a442c-eefc-11ed-90ce-dac502259ad0.png

5、制作解密算法(这个机密算法根据需要可以自己更改)并强转成DINT类型,并密码核对解密。

8532da2e-eefc-11ed-90ce-dac502259ad0.png

853c67ba-eefc-11ed-90ce-dac502259ad0.png

6、解密完成复位状态

85481d26-eefc-11ed-90ce-dac502259ad0.png

85577e6a-eefc-11ed-90ce-dac502259ad0.png


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。