主题
运算出错 — M8067 / D8067
应用指令运算错误,PLC 继续运行。
| 错误代码 | 出错内容 |
|---|---|
E0037 | 上一次脉冲通讯未完成即执行了下一条指令 |
E6701 | CJ/CALL 无跳转地址 / END 后有卷标 / FOR-NEXT 间有单独卷标 |
E6702 | CALL 嵌套超过 5 层 |
E6704 | FOR-NEXT 嵌套超过 5 层 / 通讯参数设置有误 |
E6706 | 应用指令操作数元件号范围或数据值不正确(如除零运算) |
E6707 | 未设定文件寄存器参数而存取了文件寄存器 |
E6708 | FROM~TO 指令出错 |
E6709 | 其它(IRET/SRET 遗忘、FOR-NEXT 关系错误等) |
E6720 | CALL 指令与 SRET 不配套 |
E6730 | PID 取样时间 TS 设定小于 0ms(自动改为 1000ms) |
E6732 | PID 输入滤波常数 a 超出范围(自动改为 100,范围 0-100) |
E6733 | PID 比例阀 KP 在目标范围外 |
E6734 | PID 积分时间 TI 在目标范围外 |
E6735 | PID 微分阀 KD 在目标范围外 |
E6736 | PID 微分时间在目标范围外 |
E6737 | 通讯状态异常 |
E6740 | PID 取样时间 TS 小于运算周期(自动改为 1000ms) |
E6743 | 累积偏差溢出 |
E6746 | PID 自整定出错(自整定过程中不能改变过程值) |
E6781~E6785 | 参数 1~5 的值不在允许范围 |
E6799 | 变址超出该元件的变址范围 |
E16755 | 使用指针时地址溢出 |
常见故障排除
E6706:检查运算操作数是否合法,尤其注意除零运算E6708:FROM/TO读写特殊功能模块或扩展板时出错,确认操作的元件在这台机型上真的存在E6730~E6746:PID 参数设定错误,请检查 PID 控制参数(TS/KP/TI/KD)E6781~E6785:这条应用指令的第 1~5 个操作数取值不合法,按报错时的指令逐个数E6799:检查 V、Z 变址寄存器的值是否超出该元件允许的变址范围- 运算出错不会停止 PLC,但应在程序中增加错误检测逻辑及时处理
各机型的检测范围不同
上表按三菱 FX3U 的完整口径列出,便于与三菱的资料互相对照。当前版本各款机型都会检测这一类,实际会被置位的是 E6706、E6707、E6730、E6732~E6737、E6746、E6781~E6785、E6799;ESP32 版、4G 版与软 PLC 另外还报 E6708。
表中其余代码当前不会主动置位 —— E0037、E6701、E6702、E6704、E6709、E6720、E6740、E6743、E16755 这几行只是与三菱资料对照用,读到这些数值的情况当前版本不会出现。其中 E6701、E6702、E6704、E6709、E6720 对应的跳转与嵌套问题(CJ/CALL 无跳转地址、CALL 嵌套超过 5 层、FOR-NEXT 嵌套超过 5 层、CALL 与 SRET 不配套)不会报运算出错,需要在编程时自行核对结构。
读到表里查不到的数值,请记下这个数值、PLC 型号和固件版本再联系技术支持,不要凭最接近的一行去判断故障。各通道检测范围汇总见 7.1 出错检测机制概述。
各指令详细说明
PID — 比例-积分-微分控制运算
| 项目 | 说明 |
|---|---|
| 格式 | PID S1(设定值), S2(测定值), S3(参数块首址), D(输出) |
| 操作数 | S1(设定值), S2(测定值), S3(参数块首址), D(输出) |
| 示例 | PID D0 D100 D200 D300 |
| 步数 | 9※ |
| FNC | FNC 88 |
PID D0 D100 D200 D300