判定
用来判一次运行合格与否的那些判据、一条判据的每一个字段、每一种结果对这次运行意味着什么,以及这些结果怎么折成一个结论。
一份判定是一组可复用的合格/不合格判据。每一条判据在这次运行的某一个窗口里监视一条可读通道,把它记录下来的采样点对着一个固定范围、或者围绕另一条通道的公差来判;每一条都以它自己的一个结果收尾,而这次运行的结论就是它们折出来的东西。判定引擎是在数据记录记下来的那些行上实时判的,因此一条判据的通道和它的参考通道都必须是这个流程数据记录里的列:运行记录文件证明的是当时判了什么。判定住在 Process > 模型 > 某个模型 > 设定 > 判定下面,需要编辑配方与判定权限。
判定文件夹
选中判定那一行会打开文件夹页面(“用来判一次运行记录合格与否的判据。判定读取流程通道。”),一份一张卡片,按名称排;点一张卡片就打开它,那个叉则把它删掉。一份都没有时,页面写着“还没有判定。添加一个。”
| 命令 | 做什么 | 什么时候变灰(情形) | 什么时候不画出来(角色) |
|---|---|---|---|
| 新建判定(选中文件夹时在详情栏上;右键添加判定) | 添一个没有判据的 Evaluation <n> 并选中它。 |
任何一个单元上有运行,或者运行时已停止。 | 没有编辑配方与判定时。 |
判定的页面
标题栏带着名称、那一行“用来判一次运行记录合格与否的判据。”,以及一枚数出判据条数的小药丸。每一个字段都自动保存,每一次编辑都会重画被选中判据的预览。
定义
| 字段 | 是什么 | 取值 / 默认 |
|---|---|---|
| 名称 | 这份判定在树里、在一个流程的判定选择框里,以及在一张操作面板的立即判定选择框里叫什么。 | 自由文本;创建时是 Evaluation <n>。 |
| 附注 | 给读它的人看的自由文本。 | 默认为空。 |
这次运行记录怎么判
这张卡片按引擎自己的顺序把它施加的那次折叠写出来:
- 不合格:只要有一条判据不通过。
- 无法判定:没有一条不通过,但有一条判不了。
- 合格:只有每一条都通过时才是。
“严重程度不改变这些。它是对着流程的中止门限来读的,只决定一次不通过是否同时把运行记录就此结束。”这张卡片还会在运行之前就发出警告:“有 1 条判据按当前配置判不了,因此运行记录会以‘无法判定’结束。”(或者“有 <n> 条判据按当前配置判不了……”),而在没有东西引用它时写着“这个模型还没有流程按这个判定来判。”
判据列表
这个列表的标题是判据,它的判据按钮在这个模型第一条可读通道上添一行(锚定为整次运行记录,方式为整个窗口,一个两侧都不设限的固定范围,严重程度为重大,没有名称)并把它选中。点一行就在判据那一栏里打开它;什么都没选中时,那一栏写着“选中一条判据,就能在一个地方编辑它的全部内容,每个字段决定什么也写在旁边。”这个列表把整条判据都带上,宽过面板时可以横向滚动。
| 列 | 装着什么 |
|---|---|
| 名称 | 这条判据的名称,可以就地编辑。 |
| 通道 | 被判的那条可读通道。 |
| 锚定 | 整次运行记录、时间窗口或曲线段,每一个名字旁边都带着它所判那一段的形状,后果写在悬停提示里。 |
| 窗口 | 这个锚定所需要的那两项设置:曲线段锚定是段和稳定,时间窗口锚定是从和到,整次运行记录的锚定写“整次运行记录”。 |
| 方式 | 整个窗口或单个采样点,各带它的形状。 |
| 限值 | 固定范围或围绕设定值,各带它的形状。 |
| 范围 | 固定范围写最小和最大(“留空则这一侧不设限”);相对限值写参考通道和 ± 公差。 |
| 严重程度 | 轻微、重大或严重。 |
| 结果 | 这条判据给这次运行贡献什么(“不合格即判这次运行记录失败”“不合格即判失败并停止运行记录”“无法判定”),整句话写在悬停提示里。 |
| 行上的动作 | 删除问“删除判据”:那个名称(没有名称时用通道的名称),“这会把这条判据从判定里删掉。” |
一条判据的全貌
那一栏开头是一张预览:被选中判据的范围和它所判的那一段,画在声明出来的坐标轴上,附近没有任何采样点(一块配置屏幕背后没有运行)。固定范围按这条通道的工程值画出来,两侧各留出足够放下一次不通过的余地;相对范围画成相对参考通道的偏差,参考通道就是零那条线。什么都画不出来时(没有设限值、没有选参考),画框会说明原因,而不是空在那里。它下面,每一个字段都立在一句固定的图例上面,而在答案随录入内容变化的地方,还写出当前生效的值的效果。
| 字段 | 是什么 | 取值 / 默认 | 效果那一行 |
|---|---|---|---|
| 名称 | “凡是显示它结果的地方,都用这个名称称呼这项检查。”留空时,报告上退回到用通道来称呼;这一行还没有命名之前,那一栏用 判据 <n> 作自己的标题。 |
自由文本;创建时为空。 | |
| 通道 | “被判的读数。它必须是这个流程的一个数据记录列。” | 这个模型的那些可读通道;创建时是第一条。 | |
| 锚定(窗口) | “这条判据判的是运行记录的哪一段。” | 整次运行记录(默认)、时间窗口、曲线段。 | 整次运行记录:“判整条运行记录。它不需要配方。”时间窗口:“在自运行记录开始起算的两个时刻之间判。”曲线段:“在配方处于该曲线段期间、延时之后判。暂停会把它延长。” |
| 曲线段(从 0 开始)和稳定等待(ms)(曲线段锚定) | “判配方的哪一个曲线段,以及进入该段之后等多久窗口才打开。” | 整数;默认都是 0。两个字段都不接受负数:输入会被拒绝,字段下面的附注会写出来,之前的值回来。 | “随第 1 段一起打开。”或者“进入第 1 段 2 秒之后打开。” |
| 从(ms)和到(ms,0 = 运行记录结束)(时间窗口锚定) | “自运行记录开始起算的两个时刻,窗口就在它们之间。” | 毫秒;默认都是 0。到 = 0 表示直到运行结束;否则“到”必须晚于“从”。 | “从 5 秒到运行记录结束。”“从 5 秒到 30 秒。”,或者“结束时间等于或早于起始时间,因此窗口是空的。” |
| 方式 | “结论建立在那一段中的多少内容之上。” | 整个窗口(默认)、单个采样点。 | 整个窗口:“窗口里的每一个采样点都必须通过。”单个采样点:“只由窗口里最后一个采样点决定。” |
| 限值(限值那一块) | “限值取什么形式,下面的字段也就问什么。” | 固定范围(默认)、围绕设定值。 | 固定范围:“一个固定的工程值范围。任何一侧都可以不设限。”围绕设定值:“围绕另一条通道的范围,取同一行上的采样值。” |
| 最小和最大(固定范围) | “读数必须落在其间的工程值。某一侧留空则该侧不设限。” | 数字或者留空;创建时两边都空。 | “没有设置限值,因此每个读数都算通过。”“20 及以上通过。”“80 及以下通过。”“在 20 到 80 之间通过。”,或者“最小值高于最大值,因此这判不了,运行记录会以‘无法判定’结束。”,这也正是这一行下面结果那一块所写的 |
| 参考和 ± 公差(相对) | “读数对着哪一条通道来量,以及可以离它多远。” | 这个模型的一条可读通道和一个数字;创建时是没有参考、公差为 0。 | “在 Setpoint 的 ±0.5 以内通过。”或者“请选择公差围绕哪条通道来量。” |
| 严重程度 | “对着流程的中止门限来读。它同时决定报告上的强调程度。” | 轻微、重大(默认)、严重。 | |
| 结果 | 这条判据产出什么,以及那对这次运行意味着什么。 | 只读。 | 见下。 |
结果那一行说什么
| 那一行 | 细节 | 什么时候 |
|---|---|---|
| “不合格即判这次运行记录失败” | “一次失败会把这次运行记录判为不合格。”或者,当确实有流程跑这份判定时,“一次失败会把这次运行记录判为不合格。运行仍然会跑完,因为没有流程在这个严重程度上中止。” | 跑这份判定的流程里,没有一个在这条判据的严重程度上中止。 |
| “不合格即判失败并停止运行记录” | “一次失败会把这次运行记录判为不合格,并就此结束它,因为‘<procedure>’在这个严重程度上中止。” |
跑这份判定的某个流程,其不合格中止门限等于或低于这个严重程度。 |
| “无法判定” | “按当前配置它判不了,因此会让这次运行记录停在无法判定上。”后面跟着原因。 | 下面那些原因之一成立。 |
一条判据判不了的那些原因,按引擎自己的顺序在配置时就问出来:“它没有监视这个模型的任何通道。”;“它监视的那条通道,没有被跑它的那个流程的数据记录记录下来。”;“它没有跟随这个模型的任何参考通道。”;“结束时间等于或早于起始时间,因此窗口是空的。”;“它的限值不完整,或者上下颠倒。”;“参考通道没有被跑它的那个流程的数据记录记录下来。”那两条关于数据记录的原因,只对跑这份判定的那些流程去问;还没有被任何流程选用的判定只是没写完,不是写错了。
判据怎么折成一个结论
一个活动窗口内记录下来的每一行都被归类一次:已判、不可用(值缺失或者质量不良)或者无效(一个质量良好但不是有限数字的值;一个良好的 NaN 仍然是可审计的原始数据,但它证明不了一条数值判据)。固定限值需要被监视的那个值;相对限值需要同一行上被监视的值和参考值。已判采样点、越界采样点、不可用采样点和无效采样点这几个计数,以及冻结下来的受影响通道集合,都按判据记录下来,而且也可以在这个单元的 Procedure.* 点位下面实时读到(见单元地址空间)。
结果对证据是严格的。整个窗口方式下,任何一次已判的越界都证明不合格;否则,一行不可用或无效、一次被打断的监视或者一个空窗口,都会让这条判据变成无法判定;只有完整的、都在范围内的证据才让它合格。单个采样点方式只由这个窗口最后一个活动采样点决定;更早的归类仍然留在那些计数里。时序流程按每一个循环重新锚定每一条判据,并数出不通过的循环数。这次运行的结论按顺序折叠:一次被中止的运行,或者任何一条不合格的判据,都让它不合格;否则任何一个无法判定的结果都让它无法判定;全部合格才让它合格;没有判定的运行以没有结论收尾。只有一次确认过的不合格才触发流程的中止门限或者那个不通过循环的计数。
一份判定在哪里被用到
| 界面 | 它拿这份判定做什么 |
|---|---|
| 一个流程的判那一段 | 判这个流程的每一次运行;不合格中止门限 ≥ 那个选择框随它一起到来。那一段的文字写着“判定 4 条判据,重大级的不合格会中止运行记录。”或者“……,不合格也不会中止运行记录。”一个有判定却没有数据记录的流程通不过校验。见流程。 |
| 一张操作面板的单条命令卡片 | 立即判定通过一份数据记录记录一行,并按这份判定去判它;结论记进历史。这份判定的那些通道必须是所选数据记录里的列。 |
| 标签命令 | 一个标记可以读某条判据的名称、通道、限值、严重程度、结果、错误、窗口时刻、采样点计数、受影响通道或者最大越界量,针对一个明确指定的循环。见动作。 |
| 报告 | 判据那一节把每一条判据的结果印出来,强调程度由它的严重程度决定。 |
删除判定
删除判定在选中这份判定时立在详情栏的危险组里,也在它的右键菜单里,还是文件夹页面卡片上那个叉。它先问一次(“删除判定”,“这会删除这份判定和它的那些判据。”)。每一个按它来判的流程都把它的判定引用清空,它的那些运行也就以没有结论收尾。它需要编辑配方与判定,在工程锁定和运行时停止之下变灰。
一份判定不做的事
- 数据记录没有记录的东西它不判,运行或快照之外的东西它也不判。
- 它没有表达式判据:一条判据就是一条通道上的一个范围或者一个公差。
- 它在各个单元之间没有任何差别:一套限值服务于这个模型的每一个单元。
- 它自己不结束任何运行。一次不合格会不会中止这次运行,是流程的不合格中止门限说了算,对着这条判据的严重程度来读。