1. 多语言HMI项目需求分析
多语言HMI项目失败的最常见原因,不是翻译质量差,而是需求分析阶段就没有把“谁在什么环境下、按什么规则、看哪种语言”这件事说清楚。很多项目在组态阶段才发现:现场操作工需要德语和意大利语,而维护工程师只需要英语;出口设备还要满足目标市场的强制语言标识要求;某些语言文本长度比中文长一倍,按钮根本放不下。这些问题如果在需求分析阶段没有识别出来,后期返工成本极高。本章的任务,就是把多语言需求从模糊的“要做多语言”转化为可执行的语言清单与切换策略。
一、四个必须识别的需求维度
多语言HMI需求分析的核心是四个维度:目标语言、用户角色、区域法规、运行环境。它们不是并列的四个清单,而是相互约束的关系——用户角色决定谁需要哪种语言,区域法规强制某些语言必须存在,运行环境决定语言能否被正确显示和切换。
目标语言不是简单列几种语言,而要区分“界面语言”和“数据语言”。界面语言指按钮、标签、报警文本等静态文本;数据语言指配方名、批次号、产品名称等来自PLC或数据库的动态内容。例如一条包装线出口到西班牙和巴西,界面可能需要西班牙语、葡萄牙语、英语,但配方数据本身可能只有西班牙语和葡萄牙语两套,英语界面下配方名仍显示西语原文——这必须在需求阶段明确,否则运行时会混乱。
用户角色决定语言的优先级和切换权限。典型角色包括:现场操作工(通常只用本地语言)、班组长(本地语言+可能英语)、维护工程师(英语为主,可能加本地语言)、外方调试工程师(英语或母语)、管理层(可能多语言查看报表)。不同角色对语言的需求不同,切换策略也应不同:操作工可能只允许在登录时选择一次,维护工程师可能允许随时切换。
区域法规是最容易被忽略的硬约束。欧盟机械指令要求安全标识和急停标签使用目标市场官方语言;某些国家要求报警文本必须使用当地语言;食品医药行业可能要求批记录语言与监管语言一致。这些不是“最好有”,而是“必须有”,且往往有明确的语言清单和格式要求。
运行环境包括操作系统语言、字体支持、屏幕分辨率、触摸屏输入方式。例如WinCC Runtime所在Windows系统若未安装对应语言包,某些字符可能显示为方框;中文、日文、韩文需要CJK字体支持;阿拉伯语需要从右到左布局,这会影响整个画面镜像。运行环境还决定切换方式:是运行时通过按钮切换,还是通过登录用户自动带出语言,或是通过外部变量(如PLC的工位号)自动切换。
二、从需求到语言清单:字段与判断依据
语言清单不是一张只有语言名称的列表,而是一张可执行的需求表。建议至少包含以下字段:语言代码(如zh-CN、en-US、de-DE、pt-BR)、显示名称、是否默认语言、是否强制、字体要求、数据语言映射、备注。其中“是否强制”来自区域法规,“数据语言映射”来自目标语言分析,“字体要求”来自运行环境。
以一个出口到德国和意大利的包装设备为例,需求分析可能得到如下语言清单(示例参数,非实测):
| 语言代码 | 显示名称 | 默认 | 强制 | 字体要求 | 数据语言映射 |
|---|---|---|---|---|---|
| de-DE | Deutsch | 是 | 是(欧盟机械指令) | Latin | 德语配方 |
| it-IT | Italiano | 否 | 是(目标市场) | Latin | 意大利语配方 |
| en-US | English | 否 | 否(维护用) | Latin | 英语配方 |
| zh-CN | 中文 | 否 | 否(厂内调试) | CJK | 中文配方 |
这张表直接决定了WinCC项目中的语言设置:在“项目属性→语言”中启用de-DE、it-IT、en-US、zh-CN,并将de-DE设为默认语言。同时,字体要求提示:如果Runtime运行在未安装CJK字体的欧洲Windows上,中文可能显示异常,需要在需求阶段就确认是否安装字体或改用图形化标识。
三、切换策略:谁、何时、如何切换
切换策略要回答三个问题:谁可以切换、什么时候切换、切换后哪些内容跟着变。
常见的切换方式有三种。第一种是登录自动切换:在用户管理中为每个用户分配默认语言,登录后自动加载。这种方式适合操作工,避免误操作。第二种是运行时手动切换:画面上放置语言选择按钮或下拉框,调用WinCC的“SetLanguage”函数。这种方式适合维护工程师和多语言巡视人员。第三种是外部变量触发:由PLC根据工位号、产品配方或订单信息写入语言代码,HMI读取后自动切换。这种方式适合柔性生产线,同一台HMI在不同工位显示不同语言。
切换后需要明确刷新范围。WinCC中切换语言会触发画面重绘,但报警文本、配方数据、脚本中的字符串不会自动全部更新。报警文本需要在报警记录中为每种语言分别组态;配方数据如果来自PLC,需要PLC侧也支持多语言或由HMI做映射。这些必须在策略中写清楚,否则运行时会发现“界面变了,报警还是旧语言”。
四、运行环境与法规的落地检查
运行环境检查包括:目标Runtime的Windows版本和语言包、是否安装CJK或阿拉伯语字体、屏幕分辨率是否支持文本扩展(德语通常比英语长30%~40%,中文相对紧凑)、触摸屏是否支持多语言输入。如果目标市场包括阿拉伯语或希伯来语,还要确认WinCC是否支持RTL布局,以及画面镜像后按钮和导航的方向是否合理。
法规检查要具体到条款。例如欧盟机械指令2006/42/EC要求安全相关标识使用目标市场官方语言;某些国家的电气安全规程要求急停、隔离、警告标签使用当地语言。这些要求应转化为语言清单中的“强制”标记,并在画面设计时优先保证这些文本的翻译和显示。
五、需求分析输出物与检查要点
完成本节需求分析后,应输出三份可直接用于后续组态的文件:语言清单表(含语言代码、默认/强制标记、字体要求、数据语言映射)、切换策略说明(含切换方式、触发条件、权限、刷新范围)、运行环境与法规约束清单(含字体、分辨率、RTL、法规条款)。
检查要点:语言清单是否覆盖所有目标市场官方语言;默认语言是否为目标市场主要语言;强制语言是否已标记并优先翻译;数据语言是否与界面语言解耦;切换方式是否与用户角色匹配;切换后报警、配方、脚本字符串是否同步更新;字体和布局是否支持最长语言文本。只有这些检查通过,后续的WinCC多语言组态才有稳定的需求基础。