首页 > 全部分类 > 技术问答 > 帖子内容

三菱FX5U报错代码:H21A0 文件指定异常, 初始化内存,清除PLC数据 都不行

联系人:15613077073119

电话/手机:联系客服

发布时间:2025-10-14 19:17

浏览:38次

明扬工控技术客服2025-10-14 19:20:58
答复内容:这个 FX5U 报 H21A0「文件指定异常」 的错误,是三菱 智能功能模块(或文件指令 FILE/WR、RD)访问文件寄存器或 SD 卡时 的常见异常,说明 PLC 访问的文件或存储区域有问题。虽然你已做了“初始化内存、清除 PLC 数据”,但根源多半在 文件指定或路径/通道配置错误。以下是完整排查步骤(工程师级别):

 一、错误含义解析

错误码:H21A0(File designation abnormal)
英文说明:File specified by instruction does not exist or cannot be accessed.
中文含义:程序中指定的文件(如设备文件、寄存器文件、SD 卡路径)不存在、或不可访问。

常见触发对象:

指令:FILEOPEN, FILERD, FILEWR, FILEREW, WR3A, RD3A

模块访问:智能功能模块(如 FX5-ENET、FX5-CCL、FX5-DP)内置文件寄存器

SD 卡 / RAM Drive 文件访问 ("SD0:\***.csv", "RD0:\***.txt")

二、常见 5 大原因与解决
原因 说明 解决方法
1. 文件或路径名错误 路径中大小写不符、未带扩展名、路径不存在 在程序中改为实际存在的路径,如 SD0:\LOG\DATA1.CSV
2. 文件系统未初始化 旧数据损坏、SD 卡格式不符、文件系统未建立 在 GX Works3 工程 → SD 卡工具中执行「格式化 SD0:」
3. 通道未启用 / 未打开 FILEOPEN 未成功执行就调用 FILEREAD 在调用前确保 FILEOPEN ENO=1
4. 模块未 Ready 如智能模块未完成初始化、未设定文件寄存器区 检查模块参数,确保 “文件寄存器存储器” 启用且范围匹配

5. 参数中引用了非法文件号 / 驱动号 指令参数不在有效范围,如文件号超限 查三菱手册,确认 File No. ∈ [0,255];驱动 SD0:, RD0: 合法

 三、建议的排查步骤


确认错误来源
在监视界面(Diagnostics → Error)查看“模块号/指令地址”。
若在主程序段,可右击错误定位到具体 FILExxx 指令。

检查路径与名称

例如指令:FOPEN SD0:\DATA\TEST.CSV

若 SD 卡上无此文件或目录名大小写不匹配 → 报 H21A0。
建议:手动创建对应目录/文件,或程序中检测 FSTAT。

测试最小化代码(确认功能可用):

[SM400] ---[FILEOPEN "SD0:\TEST.CSV" W]---(M100)
[M100]  ---[FILEWR "Hello" 5]---


若仍 H21A0,则说明 SD 卡或文件系统异常。

初始化 SD 文件系统

在 GX Works3 → [工具] → [SD卡工具] → [格式化]

或执行系统指令:FORMAT "SD0:"

检查 PLC 参数中“文件寄存器”设置

需要用到 R 或 ZR 文件时,确保参数中启用了「文件寄存器存储器」;

范围匹配程序内的访问范围(例:R0~R2047)。

模块通道类错误(如 FX5-ENET)

若是通信模块内部文件:确保模块已 Ready 且文件寄存器已初始化;

可尝试“复位模块”或重新上载参数后下载。

 四、紧急处理方法

整体初始化(含模块)
工程下载时勾选「参数+程序+清除存储器+文件系统初始化」。

清除 SD 卡后重新插入
格式 FAT32,重新插入后上电。

 执行内存初期化命令
M8034 置 1,复位后自动清除 SRAM;再重新执行 FILEOPEN。

 五、推荐验证步骤

把原程序中所有 FILE 类指令屏蔽,单独保留最小示例;

执行 FILEOPEN → 检查返回 ENO;

若通过,再逐步恢复原指令。

 参考文档

《FX5 系列 指令参考手册(文件操作篇)》

《FX5U 用户手册 (JY997D55801)》第 8 章 文件寄存器与 SD 卡操作

对不起,请登录后再发表评论!

触屏端
扫一扫手机也能发信息
明扬工控商城-工控网-工控自动化真品,一站式专业服务!