最近在工业控制项目中遇到个有意思的需求——设备厂商需要给客户分期解锁PLC功能。试了信捷的动态分期锁机方案,发现他们这个程序架构设计确实有点东西
信捷PLC动态分期付款程序动态解锁安全性高无限期锁机直到终极解锁。 函数功能块只需要输入起始地址可以直接使用 简单使用快捷方便 程序通用PLC型号XC/XD1/XD2/XD3/XD5/XDM/XDC/XD5E/XDME/XDH/XL1/XL3/XL5/XL5E/XLME先看核心逻辑程序内置时间戳比对和动态密钥机制。咱们用FBD函数块直接调用就行不用自己折腾底层算法。比如这个锁机判断函数FUNCTION_BLOCK FB_DynamicLock VAR_INPUT StartAddr: DWORD; //起始地址建议用D1000 UnlockCode: ARRAY[1..6] OF BYTE; END_VAR VAR internalTimer: TON; expireFlag: BOOL; END_VAR重点在内部计时器的处理逻辑。当检测到有效解锁码时会激活终极解锁标志。否则每个周期自动延长锁定时间IF NOT expireFlag THEN internalTimer(IN:TRUE, PT:T#24H); IF internalTimer.Q THEN expireFlag : TRUE; //触发锁机动作 SetLockState(StartAddr, TRUE); END_IF END_IF实际应用中发现个细节挺实用——起始地址可以自由指定这对需要多设备控制的场景太友好了。比如同时管理10台设备FOR i : 0 TO 9 DO fbLockers[i](StartAddr:D1000 i*20, UnlockCode:codeBuffer); END_FOR安全机制方面程序在每次扫描周期都会校验内存校验和。有次调试时不小心改了锁机标志位地址结果系统直接触发硬件看门狗复位这防护力度比常规方案硬核多了。信捷PLC动态分期付款程序动态解锁安全性高无限期锁机直到终极解锁。 函数功能块只需要输入起始地址可以直接使用 简单使用快捷方便 程序通用PLC型号XC/XD1/XD2/XD3/XD5/XDM/XDC/XD5E/XDME/XDH/XL1/XL3/XL5/XL5E/XLME支持的PLC型号从入门级XC到高端XDH系列通吃实测在XD3和XL5E上跑得最稳。建议部署时配合系统时钟同步功能避免因设备掉电导致计时误差。整体来看这种即插即用的分期方案确实能省下不少定制开发时间。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2429779.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!