0. 设备环境:
- 禾川HCQ1-1300-D2 PLC
- HCQX-OD16-D16通道数字量输出模块
- Codesys V3.5 SP17 Patch1 软件
1. Codesys调教
-
允许工程使用中文名称
工具 --> 选项 --> 编译选项 --> 勾选“允许标识符使用Unicode字符”
-
遇到 根证书签名过期问题 & 设定系统RTC时钟
原因:系统时间与外部时间相差过大,导致系统签发的证书过期
解决方法:先设定PLC内部RTC(实时时钟)的正确时间,然后在“安全栅栏”生成新的证书
如果不使用加密、权限功能,不需要对时,这个过期警告可以忽略 -
设定 RTC 时钟的方法
参考网址:https://docs.codesys-p2cds622.com/en/latest/Additional%20Topics/realtimeclk.htm
登录到PLC,双击Device --> PLC 指令 --> 输入 RTC 设定的命令
查询时间
rtc-get
指令rtc-get Current UTC date and time: 2019-05-09T10:59:07,346Z
设置时间
rtc-set
指令
使用UTC格式时间(UTC时间格式说明),只能设置精确到秒。示例如下:rtc-set 2022-01-03T21:30:00
也可以考虑使用 Codesys 官方的
Date and Time
库中的SetDateAndTime
功能块来设定 RTC 时钟
这里的FirstScan、AlwaysON是模仿西门子“系统寄存器”制作的首次扫描运行一次触点、常1触点 -
重新生成新的证书
视图 --> 安全栅栏,找到对应过期的证书,点击【生成】按钮
长度任意,日期填最大值(单位=天),等待生成完毕即可
-
更多 PLC 指令,可参考以下文档: