日立 7080 全自动生化分析仪系统接口(第 16 章)
日立 7080 型全自动生化分析仪的 RS-232C 串行通信接口规范,为仪器操作手册的第 16 章(System Interface)。
一、通信基本规格
| 项目 | 规格 | 默认值 |
|---|---|---|
| 物理接口 | RS-232C | — |
| 通信方式 | 半双工(Half duplex) | — |
| 数据位 | 7 bits / 8 bits(可选) | 7 bits |
| 停止位 | 1 bit / 2 bits(可选) | 2 bits |
| 校验 | Even / Odd / None(可选) | Even |
| 波特率 | 4800 / 9600 bps(可选) | 9600 |
| 最大传输字节 | 256 / 512 / 1024 bytes(可选) | 256 |
| 数据结束码 | 5 种可选(见下文) | ETX+BCC |
| 重试次数 | 无响应时重发次数 | 6 次 |
| 重试间隔 | 无响应时重发等待时间 | 5 秒 |
| 字符编码 | JIS 7-bit / JIS 8-bit / ASCII | — |
| 同步方式 | 异步(起止式) | — |
| 传输控制 | 由主机决定 | — |
| 端口数 | 最多 1 个 | — |
| 文本模式 | 非透明模式(ASCII) | — |
| 电缆长度 | 最长 15 m(RS-232C) | — |
配置方式:通过 [UTILITY] → [SYSTEM] → [HOST COMM. SET] 屏幕设置。
特点
- 通信周期不与分析周期同步,分析仪收到主机响应后立即回复
- 数据位、停止位、校验、波特率、最大传输字节数、结束码均可由用户选择
二、通信协议架构
核心概念
- Text(文本):分析仪(AU)与主机(HOST)之间交换的消息单元
- Conversation(会话):一次文本交换(AU 发 → HOST 回)
- Cluster(集群):两次或多次会话完成一个通信功能
文本结构
STX (1B) → 帧字符 (1B) → 数据域 (可变) → 结束码 (1~4B)
各字段说明:
| 字段 | 长度 | 说明 |
|---|---|---|
| STX | 1B | 文本起始码,ASCII $02 |
| 帧字符 | 1B | 标识文本用途(命令码) |
| 数据域 | 可变 | 控制帧无数据域;数据帧含功能字符 + 数据 |
| 结束码 | 1~4B | 5 种可选 |
五种数据结束码
| 编号 | 结束码格式 | 说明 |
|---|---|---|
| (i) | ETX + BCC | 默认,异或校验 |
| (ii) | CR + LF + ETX | — |
| (iii) | ETX | 仅结束符 |
| (iv) | ETX + CR + LF | — |
| (v) | ETX + CKSH + CKSL + CR | 校验和高低位 + 回车 |
BCC 校验算法
BCC = D1 XOR D2 XOR D3 XOR … XOR Dn XOR ETX
- 计算范围:STX 之后第一个字符开始,到 ETX 为止
- 异或运算(Exclusive OR)
校验和 Checksum
- 计算范围:帧字符到数据域最后一个字符
- 将所有字符相加,取低两位转为 ASCII
- CKSH = 高位 ASCII,CKSL = 低位 ASCII
三、帧类型全集
共 10 种帧类型,分两大类:
1. 分析数据传输用帧(AU → HOST)
| 编号 | 助记符 | 名称 | 字符 | ASCII | 发送方 | 说明 |
|---|---|---|---|---|---|---|
| 1 | FR1 | Frame 1 | 1 | $31 | AU | 多文本传输的首文本 |
| 2 | FR2 | Frame 2 | 2 | $32 | AU | 多文本传输的中间文本 |
| 3 | END | End Frame | : | $3A | AU | 多文本传输的末文本;单文本时也用 END |
2. 通用控制帧
| 编号 | 助记符 | 名称 | 字符 | ASCII | 发送方 | 说明 |
|---|---|---|---|---|---|---|
| 4 | SPE | Specific Sample | ; | $3B | AU/HOST | 特定样本检测选择查询/指令 |
| 5 | RES | Results Request | < | $3C | HOST | 请求特定样本分析数据 |
| 6 | ANY | Any Inquiry | > | $3E | AU | 非特定查询(相当于 ACK + 无数据待发) |
| 7 | MOR | More Inquiry | ? | $3F | HOST | 正响应(相当于 ACK + 准备好接收) |
| 8 | REP | Repeat | ? | — | AU/HOST | 负响应/重发请求(相当于 NAK) |
| 9 | SUS | Suspend | @ | $40 | AU/HOST | 暂停请求(挂起 5 秒) |
| 10 | REC | Received | A | $41 | HOST | 接收请求(暂停 5 秒,因主机未就绪) |
注意:ANY 和 MOR 字符同为
>和?,但方向不同 —— AU → HOST 用 ANY/MOR 区分,HOST → AU 方向不同。
帧方向对照表
| 帧名 | 帧字符 | AU → HOST | HOST → AU |
|---|---|---|---|
| ANY | > | ✅ 发送 | ❌ 不发 |
| MOR | ? | ❌ 不发 | ✅ 发送 |
| REP | ? | ✅ 发送 | ✅ 发送 |
| SUS | @ | ✅ 发送 | ✅ 发送 |
| REC | A | ❌ 不发 | ✅ 发送 |
四、通信功能列表
检测选择信息查询
| 功能 | AU 查询 | HOST 指令 | 条件 |
|---|---|---|---|
| 常规样本检测选择查询 | ✅ | ✅ | Test Data Only = No 时有效 |
| Stat 样本(有 ID) | ✅ | ❌ | — |
| Stat 样本(无 ID) | ❌ | ❌ | — |
| 手动复测样本 | ✅ | ✅ | Manual Rerun = Yes |
| 自动复测样本 | ✅ | ✅ | Auto Rerun = Yes |
分析结果数据传输
| 数据类型 | 实时通信 | 批量通信 | 特定样本请求 |
|---|---|---|---|
| 常规样本结果 | ✅ | ✅ | ✅ |
| Stat 样本结果 | ✅ | ❌ | ❌ |
| 质控样本结果 | ✅ | ✅ | ❌ |
| 自动复测结果 | ✅ | ❌ | ❌ |
| 校准结果(光度法/ISE) | ✅ | ✅ | ❌ |
| 全程反应吸光度数据 | ✅ | ❌ | ❌ |
实时通信:分析进行中传输;批量通信:屏幕指定后传输
五、传输控制流程
5.1 数据链路建立
- 在 Start Conditions 屏幕将 Comm. Execute 设为 Yes,AU 向主机发送 ANY 帧,通信开始
- 每次发送后传输方向反转,接收方发回响应
- AU 和主机交替发送,形成会话循环
5.2 空闲状态(无数据传输)
AU: ANY → ANY → ANY → (5 秒间隔)
HOST: MOR → MOR → MOR →
- AU 收到 MOR 后 5 秒内发送 ANY(即使无数据)
- 主机收到 ANY 后至少等待 100ms 再回复
- 若 5 秒内无法回复,先发 SUS 帧挂起
5.3 分析数据传输(AU → HOST)
仅当主机发送 MOR 帧后,AU 才能发送分析数据:
AU: ANY → A (数据) → B (数据) → ANY →
HOST: MOR → MOR → MOR →
帧 A = FR1~END 分析数据 帧 B = MOR(正常接收)或 REP(出错重发)
5.4 检测选择信息传输
AU: SPE (查询) → ANY →
HOST: A (指令) → MOR →
主机响应 SPE 查询的方式:
| 响应帧 | 含义 |
|---|---|
| SPE | 返回检测选择信息 |
| MOR | 无法响应检测选择,但准备好接收分析数据 |
| REC | 不仅无法响应,也无法接收分析数据,暂停指定时间 |
5.5 特定样本数据请求(RES 帧)
主机可通过 RES 帧请求特定样本的测量数据。若 AU 无相关数据,返回 ANY 帧。
5.6 定时器与优先级
| 参数 | 值 | 说明 |
|---|---|---|
| 重试次数 | 6 次 | 无响应时最多重发 6 次 |
| 重试间隔 | 5 秒 | 每次重发等待时间 |
| 响应超时 | 5 秒 | 接收方 5 秒内必须响应 |
| SUS/REC 挂起时间 | 5 秒 | 暂停通信的时长 |
优先级(高 → 低):
- 硬件错误或 REP 帧(重发管理任务)
- 实时数据输出
- 批量传输
- 检测选择查询
- MOR(空闲)
5.7 Result Only 模式
当设置为 “Test Result Only Transfer” 时:
- 不进行检测选择信息查询
- 仅传输分析结果数据
- AU 只发不查询
5.8 状态转换
共 11 种状态的状态机:
| 状态号 | 状态名 | 说明 |
|---|---|---|
| 1 | 初始状态 | Comm. Execute = No |
| 2 | 空闲态 | 双方均无数据传输 |
| 3 | LPR 传输等待 | 批量/特定请求数据等待发送 |
| 4 | HPR 传输等待 | 实时数据等待发送 |
| 5 | HPR/LPR 等待 | 两种数据均等待 |
| 6 | SPE 传输等待 | 检测选择查询等待发送 |
| 7 | SPE/LPR 等待 | 检测选择 + 批量数据等待 |
| 8 | SPE/HPR 等待 | 检测选择 + 实时数据等待 |
| 9 | SPE/HPR/LPR 等待 | 三种请求均等待 |
| 10 | 报警登记(通信停止) | 连续错误触发 |
| 11 | 报警登记(通信继续) | 非致命错误 |
六、文本配置表
6.1 各文本类型结构
| 文本类型 | 对应帧 | 总字节数(256模式) | 发送方 |
|---|---|---|---|
| 正响应(ANY) | ANY | 4B | AU |
| 正响应(MOR) | MOR | 4B | HOST |
| 负响应(REP) | REP | 4B | AU/HOST |
| 挂起请求(SUS) | SUS | 4B | AU/HOST |
| 接收请求(REC) | REC | 4B | HOST |
| 特定样本分析数据请求 | RES | 43B | HOST |
| 检测选择查询文本 | SPE | 43B | AU |
| 检测选择指令文本 | SPE | 可变 | HOST |
| 分析数据文本 | FR1~END | 可变 | AU |
6.2 功能字符(Fu)全集
功能字符由 2 个字符组成,标识样本类型 + 样本种类 + 通信方向:
| 样本类型 | ID 模式 | 实时通信 AU→HOST | 批量通信 AU→HOST | 查询 AU←HOST |
|---|---|---|---|---|
| 常规样本 | 有 ID | a1~a5 | A1~A5 | A1~A5 |
| 常规自动复测 | 有 ID | b1~b5 | B1~B5 | B1~B5 |
| 常规手动复测 | 有 ID | c1~c5 | C1~C5 | C1~C5 |
| Stat 样本 | 有 ID | d1~d5 | D1~D5 | D1~D5 |
| Stat 自动复测 | 有 ID | e1~e5 | E1~E5 | E1~E5 |
| 常规样本 | 无 ID | n1~n5 | N1~N5 | N1~N5 |
| 常规自动复测 | 无 ID | o1~o5 | O1~O5 | O1~O5 |
| 常规手动复测 | 无 ID | p1~p5 | P1~P5 | P1~P5 |
| Stat 样本 | 无 ID | q1~q5 | Q1~Q5 | Q1~Q5 |
| Stat 自动复测 | 无 ID | r1~r5 | R1~R5 | R1~R5 |
| 质控样本 | — | f_ | F_ | — |
| 校准样本(光度法) | — | g_ | G_ | — |
| 校准样本(ISE) | — | h_ | H_ | — |
| 全程反应吸光度(常规) | — | i1~i5 | — | — |
| 全程反应吸光度(Stat) | — | k1~k5 | — | — |
数字 1~5 表示样品种类:1=血清, 2=尿液, 3=血浆, 4=脑脊液, 5=其他
6.3 样本数据格式(37 字节)
| 字段 | 长度 | 说明 |
|---|---|---|
| 样本号 | 5B | 1~10000,右对齐前补空格 |
| 盘号 | 1B | 0~9 |
| 位置号 | 2B | 1 |
| 样本杯标识 | 1B | 1=标准量, 2=微量, 3=标准量试管, 4=微量试管, 5=试管 |
| ID 号 | 13B | 右对齐前补空格 |
| 年龄 | 4B | bb0~200,右对齐 |
| 性别 | 1B | 1=男, 2=女, 0=其他 |
| 采血日期 | 6B | MMDDYY 格式 |
| 采血时间 | 4B | HHMM 格式 |
6.4 检测选择数据格式
- 通道计数:2B(b0 ~ 48)
- 0 = 主机无请求,按仪器设置
- 48 = 全部 48 个通道(46 光度法 + ISE + 血清指数)
- 各通道请求:每通道 1 字节
0= 不请求1= 正常样本量2= 减少样本量3= 增加样本量4= 仪器决定样本量
注意:电解质(Na/K/Cl)统一通过通道 47 请求,不可单独选择;血清指数通过通道 48 请求。
6.5 分析数据格式
每通道 9 字节:
| 偏移 | 长度 | 内容 |
|---|---|---|
| 0 | 6B | 测量值(6 位带符号 + 小数点) |
| 6 | 2B | 小数点位置 / 通道号 |
| 8 | 1B | 数据报警标记 |
通道编号:
| 通道号 | 内容 |
|---|---|
| 1 ~ 46 | 光度法检测项目 |
| 47 ~ 49 | 电解质(ISE) |
| 50 ~ 52 | 血清指数(脂血/溶血/黄疸) |
| 53 ~ 60 | 计算项目 |
测量值格式:
| 正负号 | 小数点 | 最大位数 | 示例 |
|---|---|---|---|
| 正数 | 无 | 6 位 | 123456 |
| 正数 | 有 | 5 位 | 123.45 |
| 负数 | 无 | 5 位 | -12345 |
| 负数 | 有 | 4 位 | -12.34 |
6.6 注释数据格式
- 最多 6 个注释字段
- 长度分别为 30/25/20/15/10/20 字节
- 前 6 位表示各注释有无(1=有,0=无)
- 注释数据紧跟检测选择数据之后
6.7 校准数据格式
光度法校准数据(END 帧)
STX + : + Gb + 操作员ID(6B) + 通道号(2B) + STD计数(1B) + 校准报警(1B)
+ STD数据1(32B) + ... + STD数据6(32B) + SD值数据(8B) + ETX + BCC
每个 STD 数据(32B)包含:
- STD 类型(1B)
- 第 1 吸光度数据(6B)
- 第 1 初始吸光度数据(6B)
- 第 2 吸光度数据(6B)
- 第 2 初始吸光度数据(6B)
- Prozone 值(6B)
- 数据报警(1B)
ISE 校准数据(END 帧)
- 功能字符:Hb
- ISE 类型:A=Na+K, B=Na+K+Cl
- 各通道 72B 校准数据(8 项:内标液电动势 / LOW 液电动势 / HIGH 液电动势 / M 液电动势 / 显示斜率 / 内标液浓度 / M 液浓度 / 补偿因子)
6.8 全程反应吸光度数据
- 最多 4 个通道(双波长 + 血清指数 L/H/I)
- 每通道 9B 分析数据 + 6B 空白值
- 49 个测光点点吸光度数据(每点 6B)
- 反应时间与点数对应:3min=10点 / 4min=13点 / 5min=15点 / 10min=31点 / 15min=49点
七、错误检查机制
7.1 错误类型
| 错误码 | 名称 | 说明 |
|---|---|---|
| 1 | 超时错误 | Time-out |
| 2 | I/O 错误 | 硬件 I/O |
| 3 | 字符错误 | 非法字符 |
| 4 | 格式错误 | 格式不符 |
| 5 | BCC 错误 | 校验失败 |
| 6 | 校验和错误 | Checksum |
7.2 错误处理
- 接收到异常文本时,返回 REP 帧请求重发
- 连续 3 次 REP → 系统报警,通信停止
- 发送方收到 REP 后重发上一条文本
- 最多重发 6 次,每次间隔 5 秒
7.3 检查内容
包括:帧字符合法性、功能字符有效性、样本号范围、盘号/位置号范围、年龄性别格式、日期时间格式、检测选择数据(04)、通道计数(b048)等。
八、通信跟踪(Trace)功能
- 通过 [Utility] → [System] → [Host Comm. Set] 设置启用
- 记录通信执行时间、通信方向、消息内容
- 最多存储 2000 个周期的跟踪数据
- 可打印输出为报告
- 显示格式:[X, Y],X=结束码类型,Y=错误码
九、连接注意事项
- 点对点连接:此协议采用点到点方式
- 结束码一致:主机侧必须与 AU 侧设置相同的结束码,否则会不断重发
- 多文本传输:256 字节模式下,超过 256 字节的数据分为多个文本传输,首帧 FR1 / 中间帧 FR2 / 末帧 END(帧字符
:) - ANY 响应:当请求的样本不存在或硬盘出错时,AU 返回 ANY 帧
- 响应延迟:主机接收文本后,至少延迟 100ms 再响应 AU
- 控制码一致性:所有文本必须以 ETX 结尾(不是 ETB)
十、数据报警代码表
共 43 种数据报警,每个报警用单字符标识,按类别分组:
分析过程报警
| 编号 | 报警名称 | 字符 | 适用场景 |
|---|---|---|---|
| 1 | ADC 异常 | S.I/F 的 A | 光度法+ISE |
| 2 | 杯空白异常 | Q | 光度法 |
| 3 | 样本不足 | V | 光度法+ISE |
| 4 | 试剂不足 | Z | 光度法 |
| 5 | 吸光度超限 | P | 光度法 |
| 6 | Prozone 错误 | I | 光度法 |
| 7 | 所有点反应超限 | J | 光度法 |
| 8 | 多点反应超限 | K | 光度法 |
| 9 | 2~3 点外反应超限 | W | 光度法 |
| 10 | 9 点以上线性异常 | F | 光度法 |
| 11 | 8 点以上线性异常 | (同上) | 光度法 |
| 12 | 第 1 标准液吸光度异常 | H | 光度法 |
| 13 | 重复错误 | U | 光度法 |
校准报警
| 编号 | 报警名称 | 字符 |
|---|---|---|
| 14 | STD 错误 | S |
| 15 | 灵敏度错误 | Y |
| 16 | CALIB 错误 | B |
| 17 | SD 限值错误 | G |
| 18 | 噪声错误 | N |
| 19 | 水平错误 | L |
| 20 | 斜率异常 | E |
| 21 | 配制异常 | R |
| 22 | 内标液浓度异常 | D |
结果计算报警
| 编号 | 报警名称 | 字符 |
|---|---|---|
| 23 | 样本值异常 | & |
| 24 | 项目间补偿错误 | C |
| 25 | 项目间补偿禁用 | M |
| 26 | 技术上限超限 | $ |
| 27 | 技术下限超限 | @ |
质控报警
| 编号 | 报警名称 | 字符 |
|---|---|---|
| 28 | 偶然误差 [R-4s] | # |
| 29 | 系统误差 1 [2-2sA] | # |
| 30 | 系统误差 2 [2-2sW] | # |
| 31 | 系统误差 3 [4-1sA] | # |
| 32 | 系统误差 4 [4-1sW] | # |
| 33 | 系统误差 5 [10xA] | # |
| 34 | 系统误差 6 [10xW] | # |
| 35 | QC 误差 1 | + |
| 36 | QC 误差 2 | + |
其他报警
| 编号 | 报警名称 | 字符 |
|---|---|---|
| 37 | 计算项目错误 | % |
| 38 | 溢出 | O |
| 39 | 计算禁用 | X |
| 40 | 正常值上限超限 | * |
| 41 | 正常值下限超限 | ! |
| 42 | 已编辑项目 | (标记) |
| 43 | 校准结果异常 | (标记) |
Note:同一数据项出现多个报警时,输出最先登记的报警。
十一、关键术语对照
| 英文 | 中文 | 说明 |
|---|---|---|
| Conversation | 会话 | 一次文本交换 |
| Cluster | 集群 | 多次会话完成一个功能 |
| Text | 文本 | 通信消息单元 |
| Frame character | 帧字符 | 文本用途标识 |
| Point-to-point system | 点到点系统 | 两设备直连 |
| Specific sample | 特定样本 | 主机主动请求的样本 |
| ID mode | ID 模式 | 条码阅读器启用模式 |
| Sample no. mode | 样本号模式 | 非条码模式 |
| Result Only mode | 仅结果模式 | 只传结果不查检测选择 |
| AU (Analytical Unit) | 分析单元 | 仪器侧 |
| HOST | 主机 | LIS 系统侧 |
与其他日立型号的对比
- 与日立7600模块化生化分析仪HOST接口规范相比:7600 为模块化架构(最多 6 个 AU + CORE),协议更复杂,支持多模块协调;7080 为单模块单机,协议较简洁
- 与日立7180全自动生化分析仪系统接口规范相比:7180 协议框架类似,但 7080 功能更精简(无 4000 周期 Trace 等高级功能)
- 均采用自定义帧体系(非 ASTM 标准),帧结构、控制流程、数据格式高度相似
文档类型:仪器操作手册第 16 章(系统接口) 文档语言:英文 提取方法:pdftotext 全文提取 页数:约 46 页 字符数:约 6.8 万字符