点表的作用与使用方式
点表描述的是「软件要从哪台设备、用什么协议、读哪个地址、拿到的数怎么解释」。 它不是需求文档,也不代替接口文档,但它决定了通信层与数据层的全部实现细节。 在敏洽的交付流程中,点表与口径说明是开发启动前必须确认的两份附件, 由客户或设备厂提供草案,双方逐行核对后冻结版本。
使用方式:把下方「字段定义」中的字段名作为表头,一行一个点位,复制到 Excel 或在线表格中填写。 字段可以增加,但不建议删除必填列——每一个必填列缺失都会在联调时变成一次口头确认, 而口头确认无法追溯。多台设备时建议一台设备一个工作表,表名用设备编号,避免混在一张表里。
点表冻结后如需变更(新增点位、改地址、改量程),走书面变更记录:注明变更日期、变更人、变更原因、 影响的画面与报表。未经书面确认的地址变更是现场数据异常最常见的原因。 与本页配套的责任划分见 服务边界说明书。
字段定义(14 个标准列)
下表是通用点表的标准列。带「必填」标记的列在任何协议下都必须填写,其余列按实际情况填写或留空并注明原因。
| 序号 | 字段名 | 必填 | 含义与填写要求 | 示例 |
|---|---|---|---|---|
| 1 | 序号 | 必填 | 表内唯一序号,仅用于沟通定位。变更后不重排,删除的行保留序号并标注作废,便于版本对照。 | 001 |
| 2 | 点位名称 | 必填 | 中文业务含义 + 建议的英文标识(用于数据库字段与变量名)。名称要具体到可判断唯一性,不要只写「温度」「压力」。 | 1#注塑机料筒一区温度 / IMM01_BarrelT1 |
| 3 | 设备/PLC | 必填 | 设备编号 + 控制器品牌型号 + 通信参数定位(IP 与端口,或串口号、站号、机架槽号)。同一设备多个网口要写明用哪个。 | IMM01 / S7-1200 1214C / 192.168.1.11:102 rack0 slot1 |
| 4 | 协议 | 必填 | 具体协议与版本,不写「以太网」这类传输方式。常见:Modbus TCP、Modbus RTU、S7comm、三菱 MC(3E/4E)、OPC UA、DL/T 645-2007、FOCAS、SECS/GEM。 | S7comm |
| 5 | 寄存器地址 | 必填 | 按协议原生写法给出,不要转换成十进制序号。Modbus 注明功能码与是否 0 基址;西门子写 DB 号与偏移;三菱写软元件类型与编号;OPC UA 写完整 NodeId。位地址要写到位。 | DB100.DBD24 / 4x40001(FC3) / D1200 / ns=2;s=Line1.Temp |
| 6 | 数据类型 | 必填 | Bool、Int16、UInt16、Int32、UInt32、Float32、Float64、String(长度)、BCD。字符串必须写长度与编码;不要只写「整型」。 | Float32 |
| 7 | 字节序 | 条件必填 | 跨寄存器的多字节类型(Int32/Float32 及以上)必填:大端、小端、字交换大端(CDAB)、字节交换等。单寄存器 16 位与 Bool 可留空。 | 大端(ABCD) |
| 8 | 缩放系数 | 必填 | 工程值 = 原始值 × 系数 + 偏置。系数为 1 也要显式写 1,避免默认理解不一致;偏置不为 0 时在备注中写明。 | 0.1 |
| 9 | 单位 | 必填 | 缩放后的工程单位,使用国际单位或车间通用写法并全表统一(不要 kW·h 与 度 混用)。无量纲写「-」。 | ℃ |
| 10 | 读写方向 | 必填 | R(只读)、W(只写)、RW(读写)。凡是 W 或 RW 的点位,必须在备注中写明写入的触发条件、允许范围与失败处理,并单独走安全确认。 | R |
| 11 | 采集周期 | 必填 | 期望采集间隔(毫秒或秒)。按需求分级:状态与报警 200~500 ms,过程量 1 s,能耗与累计量 15 s~1 min。不要全表统一填 100 ms。 | 1000 ms |
| 12 | 量程上下限 | 条件必填 | 模拟量与计算量必填,用于画面刻度与异常值过滤。填缩放后的工程值范围,与实际物理量程一致。 | 0 ~ 400 |
| 13 | 报警阈值 | 条件必填 | 需要报警的点位填写:高高/高/低/低低限值、迟滞、延时确认时间、报警等级。开关量写明哪个状态为报警态(1 报警还是 0 报警)。 | 高 260 / 高高 280,迟滞 2,延时 5 s |
| 14 | 备注 | 选填 | 补充说明:累计量是否会溢出或清零、是否为累计值需差分、无效值代码(如 32767 表示断线)、依赖的前置条件、关联的画面或报表。 | 累计值,溢出回 0,需差分 |
点表示例(可直接复制表头)
下面是按上述字段填好的示例行,覆盖模拟量、开关量、累计量与写入点四种典型情况。 复制表头到 Excel 后,按行填写即可。
| 序号 | 点位名称 | 设备/PLC | 协议 | 寄存器地址 | 数据类型 | 字节序 | 缩放系数 | 单位 | 读写方向 | 采集周期 | 量程上下限 | 报警阈值 | 备注 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 001 | 1#注塑机料筒一区温度 / IMM01_BarrelT1 | IMM01 / S7-1200 / 192.168.1.11:102 | S7comm | DB100.DBD24 | Float32 | 大端(ABCD) | 1 | ℃ | R | 1000 ms | 0 ~ 400 | 高 260 / 高高 280,延时 5 s | 画面「温控」页 |
| 002 | 1#注塑机运行状态 / IMM01_Run | IMM01 / S7-1200 / 192.168.1.11:102 | S7comm | DB100.DBX0.0 | Bool | - | 1 | - | R | 500 ms | - | 0 为停机,不报警 | 用于稼动统计 |
| 003 | 1#注塑机故障字 / IMM01_Alarm | IMM01 / S7-1200 / 192.168.1.11:102 | S7comm | DB100.DBW2 | UInt16 | 大端 | 1 | - | R | 500 ms | - | 按位报警,位定义见附表 | 16 位需提供位含义清单 |
| 004 | 1#线总电能 / LINE1_kWh | DTSD1352 电表 / 站号 3 | DL/T 645-2007 | 标识 00 00 00 00 | BCD | 低字节先 | 0.01 | kWh | R | 30 s | 0 ~ 99999.99 | 不报警 | 累计值,需差分计算区间能耗 |
| 005 | 2#机产量计数 / IMM02_Count | IMM02 / FX5U / 192.168.1.22:5007 | 三菱 MC(3E) | D1200 (2 字) | UInt32 | 字交换(CDAB) | 1 | 件 | R | 1000 ms | 0 ~ 4294967295 | 不报警 | 换班清零,需记录清零时刻 |
| 006 | 配方编号下发 / IMM01_RecipeSet | IMM01 / S7-1200 / 192.168.1.11:102 | S7comm | DB101.DBW10 | UInt16 | 大端 | 1 | - | RW | 按需 | 1 ~ 99 | - | 仅在设备停机且有握手位允许时写入 |
示例中的地址与型号仅为格式示范,请替换为现场实际值。协议侧的具体写法可参考 西门子 S7 采集、 三菱 MC 协议采集、 DL/T 645 电表采集。
填写说明
1. 先分层,再逐行填
按「设备 → 功能组 → 点位」的顺序组织:一台设备一个工作表,表内按状态量、报警量、过程量、 计数与累计量、参数与写入点分组。分组后再填,能避免同一个物理量在两处重复出现, 也便于后续按组设置不同的采集周期与存储策略。
2. 地址一律照抄控制器内的原始写法
点表最容易出问题的一列就是地址。请从 PLC 程序、设备厂提供的通信手册或触摸屏变量表中 原样复制,不要手工换算。Modbus 必须同时注明功能码(FC1/2/3/4)与地址基准 (40001 风格还是 0 基址偏移);西门子要注明 DB 块号并确认该块未启用优化访问; 三菱要写清软元件字母与十进制/十六进制;OPC UA 直接给完整 NodeId 与命名空间索引。
3. 数据类型与字节序要一起确认
32 位及以上的类型跨多个寄存器,字节序错了数值会离谱(数量级偏差或负数)。 填表时的稳妥做法:在设备上把该点位置成一个已知的特征值(如 12345.6), 联调时对照读数即可一次判定字节序,比反复试错快得多。 字符串点位除长度外还要写编码(ASCII / GB2312 / UTF-8)与是否定长补空格。
4. 缩放与单位成对出现
PLC 内常用整数存储带小数的物理量(如 2536 表示 253.6 ℃),缩放系数就是把原始值换成工程值的乘数。 系数与单位必须成对填写并保持一致:系数填 0.1、单位填 ℃,画面与报表才不会出现 「温度 2536 度」这类问题。同一张表内同类量的单位要统一,避免 kW 与 W、kWh 与 度 混用。
5. 采集周期按需分级,不要一律最快
采集周期直接决定通信负载与数据量。周期越短,PLC 通信资源占用越高,长期存储成本也越高。 按用途分级即可:连锁与报警类 200~500 ms、过程量 1 s、能耗与累计量 15 s~1 min、 配方与参数按事件触发。存储策略与采集周期分开填: 可以 1 s 采集但变化超过死区才落库,需要这种处理请在备注中写明死区值。
6. 写入点单独审核
任何 W 或 RW 点位都涉及对设备的实际动作,必须在备注中写明:触发条件、允许值范围、 与设备侧的握手方式(写入后是否需回读确认)、失败与超时的处理、以及权限要求。 涉及运动、加热、气路等可能造成人身或设备损伤的写入点,需由设备方书面确认后才实施, 这属于服务边界说明书中的共同确认事项。
7. 累计量与位报警要补充附表
累计量(电能、产量、运行时长)要说明是否会溢出回零、是否换班清零,否则差分计算会出现负值尖峰。 按位定义的报警字要附一张位含义清单(第几位对应什么故障、等级如何), 仅给一个 16 位整数无法生成可读的报警记录。
常见填错项
下表是项目中反复出现的点表问题,联调阶段的返工大多由此产生。填完表后建议逐条比对一遍。
| 填错项 | 典型写法 | 后果与正确做法 |
|---|---|---|
| 协议写成传输方式 | 协议列填「以太网」「网口」「串口」 | 无法确定报文格式。应填具体协议与版本,如 Modbus TCP、S7comm、MC 3E。 |
| 地址基准不明 | 只写 40001 或只写 0 | 整表偏移一位。Modbus 必须注明功能码与是否 0 基址。 |
| 缺字节序 | Float32 的字节序列留空 | 读数出现数量级错误或负值。多字节类型必须写明大端/小端/字交换。 |
| 数据类型笼统 | 写「整型」「浮点」「数字」 | 位宽与符号不确定。要写 Int16/UInt16/Int32/Float32 等确切类型。 |
| 缩放系数留空 | 系数列空白,靠口头说明 | 画面出现 2536 ℃ 这类错值。系数为 1 也要显式写 1。 |
| 单位不统一 | 同表内 kWh 与「度」、kW 与 W 混用 | 报表汇总错误。全表统一单位并写在表头说明中。 |
| 点位名称不唯一 | 三台设备都叫「温度」 | 无法建立数据库字段。名称要含设备编号与部位。 |
| 采集周期一律 100 ms | 全表统一填最快周期 | PLC 通信资源被占满、存储量激增。按用途分级填写。 |
| 累计量当瞬时量 | 电能、产量未注明是累计值 | 趋势图变成单调上升线。需注明累计属性、溢出与清零规则。 |
| 报警字无位定义 | 只给一个 UInt16 故障字 | 报警记录无可读内容。需附位含义与等级清单。 |
| 量程与实际不符 | 照抄模板默认 0~100 | 画面刻度与异常过滤失效。填实际工程量程。 |
| 写入点无触发条件 | 读写方向填 RW,备注空白 | 存在误动作风险,无法实施。写入点必须写触发、范围、握手与失败处理。 |
| DB 块启用优化访问 | 西门子点位地址正确但读不到 | 需在 PLC 侧取消该 DB 的优化访问或改用非优化块,属客户侧配置事项。 |
| 通信参数缺失 | 只写设备名,未给 IP/站号/槽号 | 无法建立连接。设备列须含定位信息与网口归属。 |
| 版本未冻结 | 多个人各改一份,文件名相同 | 实现与现场不一致。点表须有版本号与变更记录,变更走书面确认。 |
如果现场取数一直不成功,先按 数据取不出来怎么排查 的顺序定位;多数情况下问题不在软件,而在点表信息与实际控制器配置不一致。
提交前自检清单
| 检查项 | 通过标准 |
|---|---|
| 必填列完整 | 序号、名称、设备、协议、地址、数据类型、缩放、单位、读写方向、采集周期无空白 |
| 多字节类型 | 所有 32 位及以上点位均已填字节序 |
| 模拟量 | 量程上下限已填且为工程值,与现场仪表量程一致 |
| 报警点位 | 阈值、迟滞、延时、等级齐全;位报警附有位定义表 |
| 累计量 | 已注明累计属性、溢出与清零规则 |
| 写入点 | 已列出触发条件、允许范围、握手与失败处理,并有设备方书面确认 |
| 通信可达 | IP/站号/槽号已填,现场网络已联通且地址不冲突 |
| 版本信息 | 表头含版本号、编制人、日期、变更记录 |
点表与口径说明确认完成后即可进入软件实现阶段。敏洽承担软件与算法部分, 硬件采购、接线与现场网络由客户负责,交付可白标;相关分工与响应时效见 服务边界说明书, 功能范围见 SCADA 数采与监控软件, 或致电 400-814-5288。