☰
地磅仪表Err 18故障排查:格式模板与通讯帧设置全解析
2026/10/23 7:04:36 网站建设 项目流程

大半夜接到电话,说现场地磅的仪表一直跳 Err 18,电脑软件上收不到任何重量数据,整个过磅流程直接卡住。这种情况做地磅维护的朋友应该都不陌生。我在实际调试中遇到过不少次这个代码,很多人第一反应是仪表坏了或者传感器出了问题,急急忙忙换了仪表甚至换了传感器,结果问题还在。实际上,绝大多数 Err 18 和硬件损坏没关系,问题出在非常容易被忽略的地方:格式模板或者通讯帧设置。

这串错误代码看着唬人,实际上就是仪表在告诉你“我收到了数据,但读不懂”或者“我发出的数据,对方读不懂”。换句话说,是仪表和上位机之间“语言不通”。这篇文章我就把 Err 18 的来龙去脉讲透,包括这个代码到底怎么定义、格式模板和通讯帧究竟指什么、用什么顺序去排查、以及实操中我踩过的那些坑。内容对地磅值班员、设备维护人员、系统集成调试的朋友都有用,不管你是刚接触还是已经干了好几年,看完都能直接上手处理。

1. 先弄清楚 Err 18 到底在抱怨什么

1.1 这个错误代码不是只有一种含义

首先要明确一点,Err 18(有的品牌显示 Er 18,有的显示 E 18,本质都是一个意思)在不同的仪表品牌里定义不完全一样。我经手过的仪表里,这个代码的常见定义有几种:通讯数据格式错误、接收到的数据帧无效、通讯超时或者指令不被识别。还有一个比较特殊的情况,有些仪表在连续发送模式下,如果检测到发送缓冲区数据没有被正常取走,也可能上报类似的错误。

所以拿到 Err 18 的第一件事,不是翻说明书找“标准答案”,而是先观察它出现的时机。我自己的习惯是问三个问题:

  1. 这个代码是开机就一直显示,还是连接电脑之后才出现?
  2. 仪表单独称重时显示正常吗?重量数值稳不稳定?
  3. 是最近才出现的,还是更换过电脑、仪表、通讯线之后才开始?

这三个问题的答案很大程度上决定排查方向。如果是开机就报,那问题大概率在仪表自身,比如内部通讯模板损坏或者参数存储区异常;如果是连接电脑、软件读取数据时才报,那问题大概率在两端参数不匹配上;如果是更换过设备之后才出现,那基本就是新设备参数和原来那套不一致造成的。

1.2 为什么说它和传感器故障是两回事

地磅行业里有个很常见的误判:一看到仪表报 Err 开头,就觉得是称重传感器或接线盒出了故障。这个判断有一定道理,因为很多仪表会用 Err 系列代码提示传感器异常,比如传感器信号超差、无信号、接线错误等。但 Err 18 这个代码特殊,它的位置通常在通讯相关的错误码段里,而不是传感器错误码段。

怎么区分?最直接的办法是切断通讯。把连接上位机或电脑的那根串口线从仪表上拔掉,然后观察仪表状态。如果拔掉之后仪表正常显示重量、正常归零、正常标定,过磅功能一切正常,那说明传感器、接线盒、仪表本体的称重链路是完全健康的。此时 Err 18 的根源就被锁定在通讯环节,和传感器没有关系。

我在现场经常看到有人绕了一大圈,换了传感器、换了接线盒、又重新标定,折腾一整天回去一看,Err 18 还是照旧。原因就是一开始排查方向就错了。记住一个原则:仪表能正常称重但不通讯,优先查通讯设置;仪表称重不正常同时又报通讯错误,才考虑传感器链路。这两个方向千万别搞混。

2. 格式模板与通讯帧:排除故障前先理解这两个词

2.1 通讯帧是仪表的“表达方式”

通讯帧这个概念听着很专业,其实可以类比成写信的格式。写信要有称呼、正文、落款、日期,这些部分的位置和写法是约定好的,收信人才看得懂。仪表和电脑之间的通讯也一样,一次完整的数据交互被封装成一个“帧”,帧里面有起始符、地址(站号)、命令码、数据位、校验码、结束符。这些字段怎么排列、各占多少字节,就是通信协议。

在地磅仪表和上位机软件的通讯中,最常见的两种协议是ASCII 协议和Modbus 协议(Modbus 又分为 RTU 和 ASCII 两种模式)。ASCII 协议的数据是可见的字符,比如ST,GS,+000300.0kg,人眼能直接看出一部分含义;Modbus RTU 则是二进制的字节流,用串口调试助手看是一串看起来无规律的十六进制数,比如01 03 04 00 00 12 34。不管哪种协议,最终传输的都是一帧一帧的数据,帧格式稍有不对,接收方就会拒绝或者解析出错误结果。

这里还有一组概念特别容易混淆:波特率、数据位、停止位、校验位。这四个参数决定了帧内每个字节怎么被发送和接收。波特率是传输速度,类似说话的语速;数据位一般是 8 位;停止位是 1 位还是 2 位;校验位有奇校验、偶校验、无校验三种。仪表这边设成 9600、8、无校验、1 停止位,电脑软件那边就得完全一致,哪怕只有校验位不一样,收到的数据就全是乱的,这是 Err 18 最常见的诱因之一。

2.2 格式模板是通讯帧的“布局说明书”

格式模板(Format Template)这个词在一线维护人员口中说得不多,但它的作用至关重要。简单说,格式模板决定了“这一帧数据里放了哪些内容、按什么顺序放”。同样是连续发送重量数据,有的模板里只有毛重,有的模板里同时有毛重、净重、皮重、序号、状态位,有的模板还会在重量前面加上站号和状态标志。

以日常接触较多的仪表为例,连续发送模式通常提供两种以上的模板选择。短格式一般只包含一个重量数值,适合简单的数据采集;长格式包含站号、状态、毛重、净重、皮重、序号等完整信息,适合需要完整过磅记录的场合。如果上位机软件按“每帧先读 2 字节站号再读 4 字节重量”的规则去解析数据,而仪表端设置成了短格式,数据总长度对不上,解析出来的重量必然是错的,严重时仪表端就直接反馈 Err 18。

格式模板选错和通讯帧参数不匹配,引发的现象很像,但处理方式不同。帧参数错,需要调整波特率、校验位这类底层设置;模板错,需要找到模板选择项,切换成和上位机软件匹配的那个模板。我碰到过不少用户,软件那边显示收到的数据是一串奇怪的字符,或者重量数值错位,折腾好久才发现是模板选错了。

2.3 两者匹配是联机成功的前提

格式模板和通讯帧的共同作用,可以用一个更生活化的例子理解:通讯帧是信封和信纸的格式,而格式模板是决定信纸上画的是表格还是纯文字。收信方只会看表格,你寄了一封纯文字的信给他,他自然读不懂,于是退回并标注“格式错误”。Err 18 就是这个“退回标注”。

在实际项目中,仪表和上位机软件的协议匹配通常由系统集成商在安装调试时一次性完成。理论上调试完成后就不应该再出问题。但实际操作中,格式模板和通讯参数并不是一劳永逸的。下列情况都可能导致设置被改动或重置:

  • 仪表电池耗尽或更换电池后,部分品牌会恢复出厂设置。
  • 雷击或电网波动导致仪表内部参数存储区数据错乱。
  • 调试人员误操作,进入了设置菜单但不知道改了什么。
  • 现场有其他人员为了调试打印机,切换了打印模板,而某些仪表打印模板和通讯模板联动。
  • 更换了同型号但不同固件版本的仪表,默认模板和原来不一样。

这也就解释了为什么 Err 18 有时候看起来毫无征兆地出现,尤其是在雷雨天后或者停电之后。排查逻辑上,只要确认是通讯类错误,优先怀疑设置被改动,然后再考虑硬件故障。

3. 实战排查:从现象到解决的全流程

3.1 排查前的准备工作与工具

走到这一步,你已经确认了 Err 18 和传感器无关、和称重链路无关,问题就在通讯环节。接下来需要的工具很简单:万用表一个,串口调试助手(电脑上安装一个小软件即可,手机也有类似的工具)、USB 转串口线一根(如果电脑没有串口),再加一份仪表说明书电子版,手机上备着随时查。

用到的软件工具不需要什么特殊设备,常见的有“友善串口调试助手”这类通用调试工具,打开后选择正确的串口号,设置波特率,就能实时看到仪表发送过来的原始数据。这个软件的作用是站在上位机软件的视角,直接观察仪表输出。它能帮你在最短时间内判断出:仪表到底有没有在发数据、发出来的数据长什么样、帧格式是否正常。

另外还要准备仪表的技术手册,重点看两个章节:通讯参数设置章节、格式模板/发送格式章节。不同品牌的菜单路径差异很大,有的是按住某个键进入设置状态,有的是输入特定密码。没有手册的话,很多操作根本无从下手,所以电子版手册一定要提前备好。

3.2 快速定位是模板问题还是帧参数问题

这是整个排查过程中最核心的一步。我把它拆成几个递进的小步骤,按顺序做,不要跳:

第一步:确认仪表是否在发送数据。把仪表的串口发送端接到 USB 转串口线上,打开串口调试助手,波特率先按仪表当前的设置填写。观察接收区有没有数据滚动。如果完全没有数据,问题可能出在仪表没有开启连续发送/通讯功能,或者通讯口本身损坏,又或者是线序接错;如果有数据,说明仪表已经在发送,问题在后面的解析环节。

第二步:观察数据内容。如果串口助手收到的数据是一串字符,比如ST,GS,+000300.0kg或者02 01 03 30 30 30 33 30 30 2E 30 03,这说明仪表在发送 ASCII 格式的数据帧,这时候你重点检查格式模板长格式还是短格式、站号是否正确。如果收到的数据是一串纯十六进制字节,看起来不对齐、没规律,多半是 Modbus RTU 格式,你需要检查仪表协议模式是否设置成了 Modbus。

第三步:尝试用不同波特率接收。仪表默认 9600,但现场可能被改成 4800 或 19200。你可以分别在 4800、9600、19200 下查看串口助手的输出。如果某个波特率下数据变成可读的 ASCII 字符,就说明波特率不匹配是根因,把两端统一即可。

第四步:对照软件期待格式。如果串口助手接收到的数据和上位机软件说明文档中要求的格式不一致,那就是格式模板问题。举个例子,软件要求“每帧以 ST 开头、以 CR LF 结尾、中间包含毛重净重皮重”,而仪表输出的是短格式,只包含毛重,那软件自然解析失败,仪表在某些交互协议下就会报 Err 18。这种情况下,直接进入仪表设置,切换格式模板直到与软件要求一致。

3.3 逐项修正与联机验证

确定了具体原因后,修正操作就很简单,但要注意顺序。我习惯先改波特率、校验位这类帧参数,再改格式模板。因为帧参数是一切数据正确传输的基础,比如偶校验和奇校验本身就会影响数据字节的二进制内容,你要是模板对了但校验位不对,收到的数据还是错的。

修正完成之后,别急着把仪表键盘锁住或者直接交给现场。先做一次完整的联机验证:

  1. 仪表端发送数据,用串口调试助手确认格式、内容和预期一致。
  2. 关闭串口助手,打开正式的上位机软件,配置同样的串口参数。
  3. 在仪表上放一个标准砝码或已知重量的物体,观察软件读取到的数值是否一致。
  4. 反复进行几次称重、清零、去皮操作,确认软件显示与仪表显示每一步都同步。
  5. 保持联机运行半小时以上,期间模拟过磅流程,确认没有偶发的 Err 18 或数据中断。

这一步一定要做扎实。有些设置当时看着没问题,运行一段时间之后才会暴露,比如偶发性的通讯中断、数据帧拼接错误、重量跳变。半小时的稳定性测试虽然耗时,但比起后面反复跑现场可省事多了。

4. 常见设置错误对照与避坑经验

4.1 典型场景一:长格式与短格式的错位

这是最普遍的一种错误。某物流园的地磅,之前一直用长格式发送数据,上位机软件按长格式解析。结果有一次雷雨天气后,仪表出现了参数异常,现场人员把仪表恢复出厂设置。出厂默认往往是短格式,软件那边还在用长格式解析,自然收到的数据无法对位,系统里出现一串乱码,仪表同时显示 Err 18。

这种情况的处理方法是把仪表重新切回长格式。具体操作路径不同品牌有差异,但大多数仪表在通讯设置菜单里都有“发送格式”或“模板选择”项,进入后切换即可。我还遇到过一种特殊情况:仪表切换长格式后,重量小数位和原来不一致,比如原来是保留三位小数,长格式模板默认只带两位,导致数据错位。这时候还需要微调小数位设置,让模板输出内容和软件解析规则完全对上。

4.2 典型场景二:Modbus 协议模式设错

Modbus RTU 和 Modbus ASCII 是两种容易搞混的模式。我之前帮某工厂调试一台地磅,上位机软件用的是 Modbus RTU 模式,仪表这边被一个同事改成了 Modbus ASCII,结果电脑端一直解析不出正确数据,仪表面板上也出现 Err 18。排查时我用串口调试助手看到了仪表发送的 ASCII 字符帧,才发现两边模式不一致。

这里提醒一句:改成 Modbus 模式后,站号(从站地址)也必须和软件里配置的地址一致。比如软件读站号 1,仪表站号设成了 2,数据也读不上来。这类问题往往被误判为硬件故障,实际上只是站号对不上。

4.3 典型场景三:更换仪表后遗留下的旧设置

更换仪表是 Err 18 的高发时段。旧仪表坏了,现场买一台同型号新仪表换上,结果通讯不上,报 Err 18。问题出在同型号新仪表的默认通讯参数和旧仪表原来被修改过的参数不一致。旧仪表原来可能为了配合某套称重软件,把波特率改成了 19200,校验位设成了偶校验,但新仪表出厂默认是 9600 无校验。不重新设置就直接接上,通讯必然失败。

正确做法是换仪表之前,先记录旧仪表当前的所有通讯参数和格式模板设置(如果能进入设置菜单的话)。如果旧仪表已经彻底黑屏读不出,那就去上位机软件里看端口配置,软件里能看到波特率、校验位、模板等全部参数,照着这些参数去配新仪表即可。这一点在现场经常被忽略,因为很多人默认“同型号直接装上就能用”。

4.4 另一类常见坑:恢复出厂设置后忘了重新配置模板

还有一个坑值得单独说。很多仪表恢复出厂设置后,通讯参数和格式模板都回到默认状态,重量标定数据也可能清空。有次某单位的仪表被误恢复出厂设置,标定数据丢了,称重值完全不正确,同时因为模板变了,软件也报 Err 18。现场的人只盯着 Err 18 猛折腾通讯设置,结果忘记重新标定,折腾半天才反应过来称重值本来就错了。

所以恢复出厂设置之后,完整的恢复清单应该是:标定参数、通讯参数、格式模板、站号、小数位、单位。缺了任何一项,要么称重不准,要么通讯不通,要么显示怪异。我建议把每个仪表的参数用表格记录在案,贴在仪表柜里,这样不管谁误操作了,都能快速恢复。

5. 常见问题与排查技巧速查

5.1 三个高频问题实录

我把实际接待过的咨询和现场问题做个汇总,基本都是最常见的情况,你可以直接对照:

问题一:仪表连电脑就显示 Err 18,但单独称重完全正常。优先检查两端波特率和校验位。用串口助手先看仪表发出的数据内容,再对照电脑软件的端口设置。多数情况是波特率不一致或者校验位不一致。

问题二:开机就报 Err 18,按按键也没反应。这种通常是仪表内部参数错乱,优先尝试恢复出厂设置。在仪表设置菜单里找“恢复出厂”或“初始化”项,如果没有就需要断电后按住某个特定按键再上电(具体参考说明书)。恢复后重新设置标定和通讯参数。

问题三:原来好好的,今天突然 Err 18,线路也查了没有松动。想想今天有没有人动过仪表?有没有出现异常天气?有的仪表在连续发送模式下,如果串口被拔插或者外部设备断电,会暂时出现通讯错误代码,重启仪表就能恢复。如果重启后依然报错,进设置菜单检查模板有没有被改动过。

5.2 排查节奏与经验顺序

经过这么多年的实地操作,我总结出一个最实用的排查顺序,分享出来供参考:

第一优先级永远是确认硬件链路:拔掉通讯线,看仪表自身是否正常工作。这一步能排除 70% 的硬件误判。

第二优先级是串口助手看数据。这是判断“谁在说话、用什么语言在说话”的唯一途径,没有它你就是在盲猜。

第三优先级才是逐项核对设置:波特率、数据位、停止位、校验位、协议模式、站号、格式模板、连续发送或命令应答模式。

最后一个优先级才考虑硬件替换:换串口线、换通讯芯片、换仪表。到这一步如果还不行,基本可以判定某个硬件部件损坏了。但从我接触到的 Err 18 来看,真正需要换硬件的比例很低,绝大多数都是前面提到的设置问题。

另外,经验上还有一个细节值得注意:很多地磅现场有打印机,打印机和电脑串口经常接在同一个仪表上。某些仪表在进入打印状态时,会暂停连续发送,或者切换到打印相关的模板。如果你调试过程中发现 Err 18 只在打印时出现,多半是打印模板或通讯模板联动冲突,需要单独检查。

Err 18 并不是什么疑难杂症,它只是一个设置层面被掩盖住的提示灯。只要理解它背后指向的格式模板和通讯帧问题,按照上面的顺序一步步排查,绝大多数情况下半小时内就能解决。至少从我个人的实战经历来说,真正让我头疼的从来不是这个错误代码本身,而是前置的误判和没有章法的排查过程。希望这篇文章里梳理的思路和踩过的坑,能让你下次面对 Err 18 的时候少走几步弯路。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询