触摸屏数据记录的U盘备份方法
前期准备
确认硬件兼容性
查阅 触摸屏操作手册的"外部存储"章节,确认以下参数:
| 参数项 | 常见要求 | 备注 |
|---|---|---|
| USB接口版本 | USB 2.0 或 USB 3.0 | 工业屏多为2.0 |
| U盘文件系统 | FAT32 为主,部分支持NTFS | 超过32GB必须用NTFS |
| U盘容量上限 | 通常 32GB 或 128GB | 超限可能无法识别 |
| 分区数量 | 建议单分区 | 多分区可能只读第一分区 |
| 供电能力 | 需满足U盘启动电流 | 大容量移动硬盘需外接电源 |
准备 符合要求的U盘,格式化为 FAT32(Windows系统中 右键 U盘图标 → 选择 "格式化" → 文件系统 选 FAT32 → 开始)。
确认数据存储位置
触摸屏内部存储数据通常位于以下路径(不同品牌有差异):
| 品牌/系统 | 历史数据默认路径 | 配方/报表路径 |
|---|---|---|
| 西门子 WinCC | /Storage Card/Logs/ 或 /Flash/ |
/Storage Card/Recipes/ |
| 三菱 GOT | A:\Log\ 或 B:\Log\ |
A:\Recipe\ |
| 威纶通 EasyBuilder | /sd0/ 或 /usb0/ |
/recipe/ |
| 昆仑通态 MCGS | /Hard Disk/MCGS/ |
/Hard Disk/ |
| 台达 DOPSoft | /USBMemory/ |
/Recipe/ |
记录 你的触摸屏型号,拨打 技术支持电话或 搜索 官方手册确认准确路径。
方法一:手动U盘备份(通用型)
适用于所有带USB口的触摸屏,无需提前配置。
步骤一:进入系统界面
- 找到 触摸屏边缘的功能按键(通常在屏幕四周的塑料边框上)。
- 长按 标注为
Menu、SYS或齿轮图标的按键 3-5 秒。 - 输入 系统密码(默认常见密码:
111111、888888、0、空密码,或 询问 设备供应商)。 - 进入 "文件管理"、"存储器" 或 "Data Manager" 界面。
步骤二:定位数据文件
- 查看 当前显示的存储器列表,找到 内部存储器(名称可能是
Internal Flash、C:、Storage Card、Local Disk)。 - 双击 或 点击 该存储器进入。
- 逐层打开 文件夹,寻找 以下特征的文件:
- 历史数据:
.csv、.txt、.log、.rec、.dat后缀 - 带日期命名:如
20240115.csv、Log_2024_01_15.txt - 配方数据:
.rcp、.recipe、.csv后缀
- 历史数据:
步骤三:执行复制操作
- 插入 U盘到触摸屏USB口(部分机型需先进入文件管理界面再插U盘)。
- 等待 2-3 秒,观察 是否出现
USB Memory、U:、/usb0/等新存储器。 - 勾选 或 长按选中 需要备份的文件(多选通常有复选框或
Ctrl多选模式)。 - 点击 "复制" 或
Copy按钮。 - 切换 到U盘存储器。
- 点击 "粘贴" 或
Paste按钮。 - 等待 进度条完成,确认 文件大小与源文件一致。
步骤四:安全移除
- 返回 存储器列表界面。
- 点击 U盘存储器旁的 "弹出"
Eject图标,或 长按 U盘图标 选择 "安全移除"。 - 等待 提示 "可以安全移除硬件" 或图标消失。
- 拔出 U盘。
方法二:配置自动备份功能(推荐)
适用于支持脚本或事件配置的触摸屏,实现一键或定时备份。
威纶通 EasyBuilder 配置流程
-
打开 EasyBuilder Pro 软件,打开 触摸屏程序工程文件(
.mtp或.emtp)。 -
添加 U盘备份功能按钮:
- 点击 工具栏 "按钮" 工具
- 在 画面空白处 拖拽 创建按钮
- 双击 按钮进入属性设置
-
配置 按钮动作:
- 选择 "触发" 或
Trigger标签页 - 添加 动作类型:选择 "文件操作" /
File Operation - 操作类型:
Copy - 源路径:
/sd0/Log/(根据实际修改) - 目标路径:
/usb0/Backup_$(系统日期)/` - **勾选** "包含子文件夹" 和 "如存在则覆盖" 4. **添加** 日期变量(实现按日期分文件夹): - **在** "目标路径" 中 **输入** `/usb0/Backup_$(20##-##-##)/ ##-##-##会自动替换为当前年月日
- 选择 "触发" 或
-
编译 并 下载 程序到触摸屏:
- 点击 菜单
Tools→Compile - 连接 编程电缆(USB或以太网)
- 点击
Download→ 选择 目标IP或COM口 → 确认
- 点击 菜单
西门子 WinCC flexible 配置流程
-
打开 WinCC flexible 项目,进入 "调度器" /
Scheduler。 -
创建 新作业:
- 名称:
USB_Backup_Daily - 触发类型:
时间(定时执行)或变量(条件触发) - 执行时间:如每天
23:00
- 名称:
-
配置 系统函数序列:
- 添加
CopyFile - 参数1(源):
Flash\Logs\*.* - 参数2(目标):
Storage Card USB\Backup\ - 添加
ShowSystemAlarm显示备份完成提示
- 添加
-
如需 按日期命名,添加 脚本:
' VBScript 示例 Dim fso, srcFolder, destFolder, dateStr dateStr = Year(Now) & "-" & Month(Now) & "-" & Day(Now) destFolder = "\Storage Card USB\Backup\" & dateStr & "\" Set fso = CreateObject("Scripting.FileSystemObject") If Not fso.FolderExists(destFolder) Then fso.CreateFolder(destFolder) End If fso.CopyFile "\Flash\Logs\*.csv", destFolder, True Set fso = Nothing -
下载 项目到触摸屏运行。
方法三:配方/报表批量导出(专用场景)
针对生产配方、报警记录、审计追踪等结构化数据。
配方数据导出
| 步骤 | 操作要点 | 常见陷阱 |
|---|---|---|
| 1 | 进入"配方"画面,选择 "导出"功能 | 部分机型需先 停止 设备运行 |
| 2 | 指定 导出范围:全部配方 或 单个配方组 | 默认可能只导出当前显示组 |
| 3 | 选择 文件格式:CSV(Excel可读)或二进制 .frp |
二进制格式需专用软件还原 |
| 4 | 设置 目标为U盘路径 | 误存到内部会占用闪存寿命 |
| 5 | 执行 导出,记录 生成的文件名 | 同名文件会被覆盖无提示 |
报警/事件记录导出
- 进入 "报警历史" 或
Alarm History画面。 - 设置 时间筛选:
- 点击 日期选择器
- 设定 起始日期和结束日期
- 或 选择 预设:"今天"、"本周"、"本月"
- 点击 "导出"
Export按钮。 - 选择 导出格式:
CSV:通用,含时间戳、报警文本、确认状态PDF:部分高端机型支持,适合审计打印TXT:纯文本,文件最小
- 确认 保存路径为U盘,执行 导出。
方法四:脚本自动化备份(高级)
适用于需要复杂逻辑的场景:如U盘插入自动检测、增量备份、压缩打包。
威纶通宏指令示例
// 在宏编辑器中创建,关联到"定时器"或"系统寄存器变化"
#define LOG_PATH "/sd0/Log/"
#define USB_PATH "/usb0/"
#define BACKUP_FOLDER "AutoBackup_"
void main()
{
char dateStr[12];
char srcPath[64];
char destPath[64];
short usbStatus;
// 读取USB插入状态(系统寄存器 LW-10016 或类似)
GetData(&usbStatus, "Local HMI", LW, 10016, 1);
if(usbStatus == 1) // USB已插入
{
// 获取当前日期:YYYYMMDD
sprintf(dateStr, "%04d%02d%02d",
GetCurrentYear(),
GetCurrentMonth(),
GetCurrentDay());
// 构建目标路径
sprintf(destPath, "%s%s%s/", USB_PATH, BACKUP_FOLDER, dateStr);
// 创建文件夹(如果不存在)
CreateDirectory(destPath);
// 复制所有日志文件
CopyFile(LOG_PATH "*.csv", destPath, 1); // 1表示覆盖
// 显示完成提示
SetData("备份完成: ", "Local HMI", LW, 0, 1);
SetData(destPath, "Local HMI", LW, 10, 16);
}
}
昆仑通态脚本示例
' 在循环策略或按钮事件中执行
IF !DeviceOpen(4) = 0 THEN ' 4通常代表USB设备
EXIT
ENDIF
Dim year, month, day, folderName
year = !TimeGetYear()
month = !TimeGetMonth()
day = !TimeGetDay()
folderName = "Backup_" + year + "-" + month + "-" + day
' 创建目录
!FileMkDir("USB:\" + folderName)
' 复制文件
!FileCopy("Hard Disk\MCGS\Data\*.csv", "USB:\" + folderName + "\")
' 记录操作日志
!Log("自动备份执行: " + folderName)
!DeviceClose(4)
故障排查速查表
| 现象 | 可能原因 | 解决方法 |
|---|---|---|
| 插入U盘无反应 | U盘为NTFS/exFAT格式 | 格式化为 FAT32 |
| U盘容量超限 | 更换 32GB以下U盘 | |
| USB口损坏或供电不足 | 更换 USB口,或使用带电源的HUB | |
| U盘为USB 3.0-only设备 | 更换 USB 2.0兼容的U盘 | |
| 能看到U盘但无法写入 | U盘写保护开关打开 | 关闭 物理写保护开关 |
| U盘为只读格式 | 重新格式化 | |
| 触摸屏系统为精简版 | 检查 系统权限,或 升级 固件 | |
| 复制过程中断 | U盘接触不良 | 更换 质量更好的U盘 |
| 文件过大超过FAT32限制 | 分批复制,或 格式化为 exFAT(如支持) | |
| 触摸屏内存不足 | 重启 设备后重试 | |
| 文件复制后损坏 | U盘为扩容假盘 | 使用 H2testw 等工具检测,更换 正品U盘 |
| 复制过程中拔出U盘 | 严格 执行安全移除步骤 | |
| 备份文件时间戳错误 | 触摸屏系统时间未校准 | 进入 系统设置 调整 日期时间 |
| 脚本自动备份不执行 | 脚本语法错误 | 检查 编译错误提示 |
| 触发条件未满足 | 添加 调试用弹窗,确认 变量值 | |
| USB检测寄存器地址错误 | 查阅 手册确认系统寄存器号 |
最佳实践建议
日常操作规范
- 固定 U盘品牌型号,避免频繁更换导致兼容性问题
- 建立 文件夹命名规则:
产线名_日期_班次,如LineA_20240115_Night - 执行 备份后立即 在电脑上验证 文件可正常打开
- 保留 至少3个备份周期,定期清理过期文件
自动化增强方案
如需更高可靠性,考虑 以下扩展:
- 双U盘轮换:配置脚本检测两个U盘槽位,轮流备份
- 网络备份:通过以太网 同步 到FTP服务器或NAS
- 云网关:使用4G/WiFi模块 上传 到阿里云、AWS等对象存储
- 备份确认机制:通过短信模块或邮件 发送 备份成功通知

暂无评论,快来抢沙发吧!