输入框
由操作员输入数值并写入点位:点位接受什么,输入框就接受什么,其余的连同理由一起拒绝。
输入框是操作员的录入字段:一份归操作员所有的草稿,加上一个设定按键,由它经过工作站唯一的写入出口把草稿送到一个点位上。它自己不画任何读数,谁想在框旁边看到点位的值,就在旁边配一个数值;给字段起名则是一个文本。它属于控制类;新放置的一个占 4 × 1 个单元格。
草稿属于操作员:实时刷新绝不覆盖已经键入的东西,被拒绝的输入也留在框里,于是改正是一次编辑,而不是重新敲一遍。
数据
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 地址 | 被写入的那个点位的带根 Logic 地址:一个内部存储值变量、一个可写点位、一个单元的预选字段(Next.<field>),或者运行备注点位(Commands.Comment)。这里什么都不排除,输入框接下来接受什么,是从点位本身读出来的。 |
自由文本;建议来自实时点位清单 | 空 |
地址下面,面板写出这个字段此刻接受什么(“这个字段接受一个数,0 到 100,保留 1 位小数。”),于是一个两状态的点位,在画面运行之前就能看到这一行变成每种状态一个按键。
输入框接受什么
录入的种类是从点位推导出来的,绝不是在点位旁边另选的:一个可以对着点位另行声明的类别,等于第二份声明,它随时可以和点位已经作出的那份声明打架。
| 点位 | 输入框 | 行为 |
|---|---|---|
| Bool 点位 | 每种状态一个按键(开 / 关),而不是一个输入框 | 一次触碰就是完整的指令。这些按键带的是绝对值,所以质量不可用时它们照样能用,这一点和开关不同,开关必须知道自己要取反的那个读数。两个按键都不显示点位的状态。 |
| 整数点位 | 只收整数的输入框 | 带小数的输入会被拒绝;触摸键盘给出数字键。 |
| 实数(小数)点位 | 数值输入框 | 在按下设定时对着取值范围和所声明的小数位判定,绝不是每敲一个键判一次;触摸键盘给出小数键盘。 |
| 文本、时刻、预选或备注点位,或者一个还没有任何东西答复的地址 | 自由文本输入框 | 取值范围和小数位不会被读取,面板会说明这一点。 |
数值
操作员叠在点位之上所声明的取值范围和精细程度:
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 最小值 | 这个字段会发出的最小的数。留空就让这一侧的范围敞开。 | 任意数值,或留空 | 空 |
| 最大值 | 这个字段会发出的最大的数。留空就让这一侧敞开。最小值高于最大值时,两者之间没有任何数,面板会警告说这个字段会拒绝每一次输入。 | 任意数值,或留空 | 空 |
| 小数位 | 这个字段发出的输入有多精细。留空就按键入时的精度发出。计数类的点位不管存的是什么都把它钉在 0。所要求的位数是对着数值问的,不是对着数字问的:12.500 就是 12.5,所以小键盘补上的末尾零绝不会被拒绝。 |
0 到 15,或留空 | 空 |
一个自己声明了限值的点位(它的限值转换环节已启用)会把这里声明的东西再收紧一层:字段只接受那条带类型的数值转换链会原样送过去的东西。
超出取值范围、过于精细,或者根本不是一个数的输入,会连同理由一起被拒绝,什么也不写入。这个数是给现场的一条指令,在边界上取一个别的数,等于工作站替操作员做了决定。这一点和编辑器自己那些配置字段是故意相反的,后者会把超出区间的输入按最近的边界取,并且把这件事说出来。
写入的含义
- 内部存储值变量:草稿先对着变量的输出类别校验,再经由逻辑出口写入。框里是空的就写入一个空值。
- 可写点位:草稿被强制转成点位的节点类型;出口在把工程值送上总线的路上把它反向去换算(也就是这个点位的数值转换链倒着走一遍)。
Next.<field>:把这段文字存进单元的预选区,供下一次运行使用。预选是准备工作,不是对现场的写入:不走出口,也不记日志。答复那一行写“已暂存”。Commands.Comment:向单元当前的上下文追加一条运行备注(空闲时则是一条运行后的附注),署名记在登录的操作员名下;输入框清空,答复那一行写“备注已添加”。空的备注会被拒绝。
那一行临时答复报出每一种结果,几秒之后过期。授权在按下的那一刻重新核对。
权限与锁
写入一个变量或者一个点位,需要角色具备操作仪表画面的权限;预选点位和备注点位属于对 Process 的改动,需要的是运行流程的权限。被挡下的按下会画出共用的锁标记,理由在提示里,锁着的时候输入框本身也不可用(见仪表画面页面)。绑定的点位读不到时会戴上共用的读数异常标记,而那两个标志位按键和文本框仍然可用,因为它们的指令并不依赖读数。
共用的外观、标识、位置与图层、操作这几个分区,写在组件页面。