西门子 ADVIA CentraLink 前处理系统 LIS 主机通信手册
来源:西门子医疗官方文档 ADVIA CentraLink Networking Solution - Host Computer Communication Links 文档编号:084D0002-08, Rev. A, 2008-06 适用版本:ADVIA CentraLink System Software 12.0 及更高版本
概述
ADVIA CentraLink 是西门子医疗(Siemens Healthcare Diagnostics)的实验室自动化前处理/数据管理系统,作为实验室仪器与 LIS(实验室信息系统)之间的中间件,负责从 LIS 下载检验申请单(workorder)、向仪器分发测试请求、从仪器收集结果、再上传到 LIS。
支持的四种通信协议
| 协议 | 推荐程度 | 特点 |
|---|---|---|
| ASTM 1394 | 推荐协议 | 基于 ASTM E1394-97 + E1381-95 标准,双向通信(下载申请/上传结果) |
| Technidata LMX 6.0 | 可选 | Technidata 公司 LMX 协议,文件传输方式 |
| Siemens Host Spec. 79 | 可选 | 西门子自定义定长帧协议,键值对方式 |
| HL7 Version 2.5 | 可选 | HL7 v2.5 子集,支持 OML/OUL/SSU 消息类型,不兼容 v2.3 |
LIS 端基本要求
- 不支持 Query 模式:LIS 必须批量下发申请单,CentraLink 不主动查询
- 唯一样本号:LIS 必须保证 Sample ID 唯一性
- 样本类型:建议申请单中指定 Sample Type;未指定时取第一个测试的样本类型,且同一申请单不允许混合不同样本类型(不匹配的测试会被静默拒绝)
- 不同样本类型必须不同 ID:同一患者的血清管和尿液管必须分配不同 Sample ID,作为不同申请单下发
- 双通道可选:可配置两条独立通道(下载/上传分离)提高效率,也可单通道
一、ASTM 1394 协议(推荐)
帧格式
基于 ASTM E1381-95 低层协议:
中间帧: <STX> FN text <ETB> C1 C2 <CR> <LF>
结束帧: <STX> FN text <ETX> C1 C2 <CR> <LF>
- STX = 0x02(文本开始)
- FN = 帧号 0-7(单数字循环)
- ETB = 0x17(传输块结束,中间帧用)
- ETX = 0x03(文本结束,最后一帧用)
- C1 C2 = 两位十六进制校验和
- 单帧最大 247 字符(含开销),有效数据 240 字符
- 每条消息必须从新帧开始,不可多消息合并
确认机制
- 接收方每条消息回复 ACK(0x06)或 NAK(0x15)
- NAK 后最多重传 7 次
- 15 秒超时视为 NAK
双向通信流程
申请单下载(LIS -> CentraLink)
| 阶段 | LIS(发送方) | CentraLink(接收方) |
|---|---|---|
| 建立连接 | ENQ -> | <- ACK |
| 头记录 | H 记录 -> | <- ACK |
| 患者记录 | P 记录 -> | <- ACK |
| 申请记录 | O 记录 -> | <- ACK |
| … 多个申请 … | … | … |
| 结束 | L 终止记录 -> | <- ACK |
| 释放 | EOT -> | 回到空闲 |
重要:LIS 在终止记录(L)后必须发送 EOT。缺少 EOT 可能导致 CentraLink 丢失申请单(虽然 LIS 认为已发送)。
结果上传(CentraLink -> LIS)
| 阶段 | CentraLink(发送方) | LIS(接收方) |
|---|---|---|
| 建立连接 | ENQ -> | <- ACK |
| 头记录 | H 记录 -> | <- ACK |
| 患者记录 | P 记录 -> | <- ACK |
| 申请记录 | O 记录 -> | <- ACK |
| 结果记录 | R1, R2, … -> | <- ACK … |
| 结束 | L 终止记录 -> | <- ACK |
| 释放 | EOT -> | 回到空闲 |
- 结果记录包含:测试名、测量值、单位、参考范围、数据状态、分析日期时间
- STAT 样本优先上传(自动传输时按优先级排序)
竞争解决
单通道时若双方同时发 ENQ,CentraLink 优先级更高:
- LIS 收到 ENQ 回复后必须停止发送,准备接收
- CentraLink 收到 ENQ 回复后至少等待 1 秒再重发 ENQ
ASTM 操作码(Action Code)
O 记录第 12 字段:
| 操作码 | 含义 | 行为 |
|---|---|---|
| N 或空 | New(新建) | ID 已存在 -> 重复 ID 错误;不存在 -> 创建新样本 |
| A | Add(追加) | 患者不匹配 -> 错误;匹配 -> 重跑已上传请求 + 添加新请求 |
| C | Cancel(取消) | 患者不匹配 -> 错误;无指定测试 -> 取消所有 < Review 状态的请求;有指定 -> 取消匹配的请求 |
ASTM 语法速查
消息结构:
Message -> Header { PatientInfo { PatientComment }
{ TestOrder { TestOrderComment } }
{ Result } } Terminator
关键记录:
- H 记录:分隔符定义
- P 记录:患者信息(ID、姓名、生日、性别、物种、位置等)
- O 记录:申请信息(样本号、测试列表、优先级、采集时间、容器类型、操作码、样本类型、医生、位置等)
- R 记录:结果信息
- C 记录:注释
- L 记录:终止
ASTM 翻译器参数(asts driver)
| 参数 | 说明 | 默认/示例 |
|---|---|---|
-s <port> | TCP/IP 监听端口(必填) | 默认 8888 |
-r | 移除稀释倍数和结果形态信息,仅传测试标识符 | - |
-c | 仅对 QC 结果移除形态信息 | - |
-i <name> | 替换结果记录中的仪器名 | - |
-l | 启用长消息格式(每段不在独立帧) | - |
-p | 按仪器重新分组结果,每台仪器一条独立完整消息 | - |
-t <timeout> | 字符间超时(10-300 秒) | 默认 30 |
注意:
-i和-p不可同时使用
二、Technidata LMX 6.0 协议
- 文件传输方式(File Transfer)
- 支持 Inlabbing 上传(样本签收信息)和 归档位置信息上传
- 有独立的语法规则和传输示例
三、Siemens Host Spec. 79 协议
特点
- 西门子自定义定长帧协议
- 键值对方式定义字段(通过 trame.par 配置文件)
- 帧结构:
STX + MT + {Item} + CRLF + LRC + ETX - 不支持 inlabbing(样本签收)和归档位置上传
- 不支持双向通信
关键字名
申请单侧(WorkOrder):PATNUM(患者号)、PATNAM(患者名)、SEX(性别)、BIRDAY/BIRMONT/BIRYEAR(生日)、IDEE(样本号)、SPCODE(样本类型)、URGENT(急诊)、DOCTOR(医生)、LOCATIO(位置)、COCOM(采集时间)、UPDT、SLIDE
结果侧(Result):PATNUM、IDEE、SPCODE、SPTEXT、COCOM、INSTRUMENT(仪器)、NUMPOS/NUMRACK/POSTUBE(位置)、ASPDAY/ASPHOUR/ASPMIN/ASPMONT/ASPSEC/ASPYEAR(吸样时间)
帧定义配置(trame.par)
通过配置文件定义每个字段的键名、宽度、对齐方式(L/R)、填充字符(空格S/零Z)。
四、HL7 Version 2.5 协议
基本信息
- 翻译器:mhl7
- 实现 HL7 v2.5 子集,与 v2.3 不兼容
- 低层协议:最小低层协议(MLLP 类)
- v12.0 限制:Centaur 等仪器的多形态结果(如传染病的数值+解释性结果)只能上传 1 种形态(result selector 指定的)
低层协议格式
<SB> message_data <EB> <CR>
- SB = 0x0B(Start Block,11)
- EB = 0x1C(End Block,28)
- CR = 0x0D
通道模式
| 模式 | 说明 |
|---|---|
| 单通道 | 单 TCP 连接,申请单和结果共用 |
| 双通道 | 上传/下载各一条独立连接,带宽更高,需 LIS 支持 |
- mhl7 可作为 Server(
-s指定监听端口)或 Client(连接 LIS 端口)
支持的 HL7 消息类型
| 消息 | 触发事件 | 方向 | 说明 |
|---|---|---|---|
| OML^O33 | - | LIS -> CentraLink | 检验申请单下载(Order Message) |
| OUL^R22 | - | CentraLink -> LIS | 结果上传(Unsolicited Observation) |
| SSU^U03 | - | CentraLink -> LIS | 标本状态更新(Specimen Status Update) |
| ACK | - | 双向 | 确认消息 |
主要段结构
- MSH:消息头
- PID:患者信息(ID、姓名、生日、性别、物种代码)
- NTE:注释/备注
- OBR:申请记录
- OBX:观察/结果
- SAC:标本容器(用于 inlabbing 和归档信息)
mhl7 翻译器参数
| 参数 | 说明 | 默认 |
|---|---|---|
-i <app:facility> | 发送应用:发送机构(OUL/SSU 用) | CentraLink:ResultExport |
-r <app:facility> | 接收应用:接收机构(OUL/SSU 用) | LIMS:ResultImport |
-s <port> | TCP/IP 监听端口 | - |
-c <seconds> | 客户端空闲超时(自动关闭连接) | 86400(1天) |
-t <seconds> | 客户端响应超时(上传/状态更新后等回复) | 30 |
标本签收信息(Inlabbing)
ASTM 和 HL7 协议均支持从 CentraLink 向 LIS 上传样本签收信息:
- 包括:SID、读取日期时间、签收位置
- ASTM 协议:通过 LAS Status Upload 消息的 Manufacturer 记录传输
- HL7 协议:通过 SAC 段传输
- Siemens Host Spec. 79 不支持
关键知识点总结
- ASTM 1394 是首选协议,文档也最详细,遵循标准 E1394-97/E1381-95
- 同一申请单不能混合样本类型,否则部分测试被静默拒绝——这是容易踩的坑
- L 记录后必须跟 EOT,否则可能丢单(ASTM 协议特有问题)
- 竞争时 CentraLink 优先,单通道架构下 LIS 侧需注意避让
- HL7 v2.5 实现不向下兼容 v2.3,且 v12.0 有多形态结果上传限制
- 支持双通道架构(下载/上传分离)提高通信效率
- 西门子有自定义 Host Spec. 79 定长协议(trame.par 配置),是老系统遗留方案
- Technidata LMX 是第三方协议,文件传输方式