1.1 变量 本系统所定义的一切功能都是以变量为基础,变量既可用于反映模块本体上输入输出的状态,也可以映射串口连接的外部设备(如 PLC)寄存器的值,或者作为内部变量参与模块的事件控制逻辑。 变量类型 变量具有以下三种类型:◆ 整型变量 类似 c 语言中的 32 位有符号长整数型变量,用于表示带符号的整型数据,取值范围(-2147483648)~(+2147483647)。 ◆ 浮点型变量 类似 c 语言中的浮点型变量,用于表示浮点(float)型数据,取值范围为±(1E-37~1E+37),有效数字7 位,最多 6 位小数。◆ 开关变量只有 0, 1 两种取值,用于表示开(1)关(0)两种状态,或者表示表达式的真(1)或假(0)。非零的整数和浮点数赋给开关变量,都会得到 1。用户可以在数据词典中新建、编辑和删除变量。界面如下:
变量属性 ◆ 变量名称:每个变量具有唯一名称,同一工程中的变量不能重名,最长不能超过 15 个字符。变量名可以是中文或英文,第一个字符不能是数字。例如,温度、 var1 等均可以作为变量名。 注意: 变量名不区分大小写。 ◆ 变量类型:三种基本类型整数,浮点数,开关量中的一种。 ◆ IO 设备: 若不选择任何设备,则变量为内部变量,或者可以关联到短信模块上的数字输入,输出,模拟量。若选择设备,则该变量为外部变量,和通讯口所连接的 PLC 或设备的寄存器关联。此时需根据设备的通讯协议,设定寄存器的地址和类型。 ◆ 保存值:勾选表示变量具有断电保存属性(永远保存在模块中,不受时间限制) ,启动时从断电保存区取得初始值。 注意: 系统每隔 5 分钟保存一次发生变化的断电保存的变量,每次保存断电保存的变量,需要擦写一次存储区,存储区的擦写寿命是 1 万次。 本系统最多支持 230 个断电保存变量。 ◆ 初始值:对于非断电保存变量,启动时变量值等于此值。 ◆ 短信读:勾选此选项后,值班人员可以使用“短信读变量”命令, 发手机短信给 GRM 设备, 查询 GRM设备中变量的值。请参考 6.2 短信读变量。 ◆ 短信写:勾选此选项后,值班人员可以在短信中使用“短信写变量”命令,通过手机短信,修改短信报警器中变量的值。请参考 6.3 短信写变量。 变量组 工程中拥有大量的变量时,会给开发者查找变量带来一定的困难,为此 GRMDEV5 提供了变量分组管理的方式。变量组只是为了显示和查找方便,它对变量的整体使用没有任何影响。 对于带内置网页的型号,变量组在网页上会体现为分页。 注意:系统变量组为系统内置,不可编辑,改名,删除。 系统变量 系统变量以$开头,是系统已经定义好的,用户可以直接使用。 ◆ $COM1ERROR:开关型,只读,当 GRM 设备与端口 COM1 连接的所有设备通讯故障时,该变量值为 1, 通讯正常时为 0。 ◆ $COM2ERROR: 开关型,只读,当 GRM 设备与端口 COM2 连接的所有设备通讯故障时,该变量值为 1, 通讯正常时为 0。 ◆ $COM3ERROR:开关型,只读,当 GRM 设备与端口 COM3 连接的所有设备通讯故障时,该变量值为 1, 通讯正常时为 0。。 ◆ $SIGNAL:整型,只读,表示短信模块的信号强度值,范围-1~32。小于 5 表示 SIM 卡信号非常弱,无法发出短信, 6-11 表示中等信号, 12-31 表示信号强度非常好。 ◆ $ALARMOFF:开关型,可读写,写 1 表示禁用短信报警,写 0 表示启用并重新检测短信报警。 $ALARMOFF 可以用做布防,撤防。需要调试设备撤防时,可以通过短信将该变量写 1,此时即使报警条件成立,短信模块也不会发送任何报警短信,撤防状态 SYS 灯指示灯闪烁。撤防完毕后,将该变量写 0 即可重新布防。布防状态 SYS 灯指示灯常亮。新建工程时,在短信控制中,已经默认建立了撤防和布防命令。用户发送短信 控,撤防 或控,布防。 即可完成撤防和布防。 $ALARMOFF 也可以用作主动查询报警,不管$ALARMOFF 当前值是何值,通过短信或者事件控制对该变量写 0,短信模块会将当前的报警短信发给值班人员(因此只有在变量为 1 的时候,才需要写 0,不要不停的对该变量进行写 0 操作,不然会导致不停的重新发送当前报警短信) 。 ◆ $ALARMFLAG: 开关型,只读。有报警发生标志。有报警发生时变量值为 1,无报警时变量值 0。 ◆ $NETTRAFFIC:整型,只读, 4G 网络流量,单位是字节,每次上电从 0 开始累积。1M=1024K 字节=1048576 字节,目前运营商最低流量包月一般为 30M。 ◆ $NETOFF: 开关型,可读写,仅对具有 4G 功能的系列有效。写 1 表示禁用 4G 网络监控,写 0 表示启用 4G 网络监控。 ◆ $ERRORCODE:整型,只读,错误代码。各 BIT 位含义如下:
◆ $NetState: 整型,只读, 表示当前上网的情况。 0,故障。 1,初始化。 2, 2G 状态。 3, 3G 状态。4, 4G 状态。 5,有线网。 ◆ $YEAR: 整型,只读,年。系统启动时默认时间是 2300 年 1 月 1 日 0 时 0 分 0 秒,对时完成后才是当前时间。 ◆ $MONTH: 整型,只读,月。 ◆ $DAY: 整型,只读,日。 ◆ $HOUR: 整型,只读,时。 ◆ $MINUTE: 整型,只读,分。 ◆ $SECOND: 整型,只读,秒。 ◆ $SIMMATCH: 开关型,只读,表示当前插入的 SIM 卡与下载工程时的是否相同, 1 表示相同, 0表示不同。 ◆ $SIMERROR: 开关型,只读, SIM 卡错误标志, 1 表示系统未检测到 SIM 卡, 0 表示系统检测到SIM 卡已插入。
1.2 表达式 表达式是一个 C 语言的数值表达式,语法符合标准 C 语言规范,是 C 表达式的子集。表达式可以是单个变量名,也可以是常量,还可以是变量和操作符的运算式。本产品支持条件表达式、参数表达式和赋值表达式。 ◆ 条件表达式:用于报警触发条件、定时执行条件和事件触发条件中,表达式计算结果非 0 表示条件成立。例如: (温度>20&&湿度>50)||开关 1 ◆ 参数表达式:用于短信报警和短信查询回送信息模板中,计算结果与类型有关。 ◆ 赋值表达式:用于短信写变量、短信控制命令和事件控制中。 操作符 本系统支持以下几种常用的操作符, 手册中未提到的操作符(如++, --)不被支持。
注意: 操作符双等号“==”和单个等号“=”两者区别。 变量=5,是赋值表达式,执行后变量的值改变为 5. 变量==5,是比较操作,判断变量是否等于 5,若等于 5,条件为真(1) . 操作符的优先级别如下:
1.3 内置函数
GRM230 提供了内置函数,可以在定时器,短信报警,事件控制中灵活应用。函数的说明请参考 GRM内置函数速查手册
如下图,是一个判读整数最后一位是否为 1,作为报警条件的列子。用到了内置的 Bit 函数。注意,内置的函数会以绿色显示。
注意: 函数的参数只能是单变量,或者常数,不允许再嵌套函数,如下图是错误的使用实例
1.4 消息模板
消息模板用于配置短信报警时, 产品发出的短信息内容。消息模板中,除了用{}括起来的参数之外,其他的文本照原样发送。 {时间}{日期}为系统内置,短信时自动替换为当前时间和日期! 如果希望在发送报警短信的时候,同时发送当前的具体数值,比如在温度过高时,我们希望同时收到当前温度的具体数值,可以加入参数 P1! 如下图配置,对应收到的短信为
2014-10-14 10:03:19 ,温度过高,当前环境温度为 71 摄氏度!
参数最多 8 个,在消息模板中使用{P1}到{P8}表示, 8 个参数中的每一个都包括参数表达式和参数类型。 参数表达式是一个 C 语言的数值表达式。最简单的参数就是单个变量名,但也可以通过多个变量来计算出一个参数。例如,可以有一个参数表示功率,它的表达式是 电压*电流 。可以用这个方法把原始的变量转换为让短信接收者最容易理解的形式。 参数的类型包括开关型、十进制整型、十六进制整型、浮点型、科学计数法和多状态文本,各个类型描述如下:
注意:
➢ 报警信息总长度不能超过 256 字符,否则收到的信息不全。
1.5 多状态文本 多状态文本是一个数值-文本转换表,主要应用于报警和查询的消息模板参数中。 GRM230 将数值转换成人们更容易理解的文本发给信息接收方。 本系统允许定义多个多状态文本,每个多状态文本具有唯一名称。 多状态文本中多个数值必须是升序关系,即后一项值必须大于前一项值。取值规则如下:(假定有 10项,数值从 X1 到 X10)变量值<=X1 时,取值 X1 对应的文本。Xn<=变量值<Xn+1,取值 Xn 对应的文本。(其中 1<n<10)变量值>=X10 时,取值 X10 对应的文本。 举例: 和 PLC 寄存器关联的通讯变量 故障代码 =0,表示系统无故障, =1,表示电流故障, =2,表示电压故障 =3,表示温度故障。要求短信模块根据变量故障代码的值,自动发送不同的报警短信。 1) 配置 GRM230 工程时,新建一个多状态文本,多状态文本名称为“故障信息”
2) 新建报警如下:故障表达式的含义是 当变量“故障代码”不为 0 时,触发报警短信:
3) 在报警参数里面设置“报警参数”P1,为变量“故障代码”关联的多状态文本。如下图:
4) 运行时, GRM230 会根据变量“故障代码”的不同值,将报警信息模板中的 P1,替换成对应的多状态文本“故障信息”中对应的文本,从而实现不同值, 发送不同报警短信给用户的目的。 工程选项
1.6 基本选项
◆ 本机名称
“本机名称”可以作为模块的名字,在发送报警短信时,可选择带上“本机名称”,比如“二楼机房 1 报警器”以区分是哪个短信报警模块。在 4G 远程监控时,该名称也可以做为模块的识别名。
◆ | 设备型号 请选择购买模块的对应型号,才能下载。若型号不对,下载时会提示错误,并显示实际模块的具体型号。 |
◆ 双电源掉电报警 GRM230 正常工作电源是 DC9~28V,当 GRM230 检测到电源断开或低于 8V 时,向用户发送电源故障短信。掉电报警的具体用法请参考 双电源掉电报警章节相关内容。
注意:掉电提醒功能是需要+辅助电源,订货时请注明。 1.7 短信/4G/3G
◆ SIM 卡运营商
设置正确的 SIM 卡运营商,系统的短信功能和 4G 功能才能正常工作。当插入 GRM230 内的 SIM 卡运营商是中国移动或者是中国联通时,请选择“自动(中国移动/联通) ”。非中国移动/联通运营商时请选择“人工指定”。 注意: 这里选择的 SIM 卡运营商,是指插入在 GRM230 内的 SIM 卡运营商,而不是值班人员手机的卡的运营商! ◆ 默认国际长途电话区号即国际代码。当用户手机号设为短格式时,如 13126483912,默认认为该手机所在区域是国际代码所代表的国家。
◆ | 全局短信头部 定义的内容会被格式化后添加到选中类型信息的头部。 |
注意: 如果某类短信定义的模板中又重复添加了全局短信头已经选中的内容,则相同内容会在短信中出现两次。建议不要重复选择。
◆ 默认报警恢复短信头部 字符串会被添加到需要发送报警恢复信息的报警信息头部。
◆ | 报警确认通知短信模板 当报警被确认,且需要发送报警确认通知信息时,系统会给相关人员发送该信息。 |
1.8 网络选项 对于 4G 远程控制的型号,才有此选项,只具备短信功能的模块,无需配置。具体使用,请参考 4G 远程监控章节的内容。 1.9 本机 IO 选项(扩展 IO) 对于具备本机 IO(数字/模拟输入,输出,包括扩展 IO)的型号,才有此选项。具体使用,请参考本机 IO 配置章节的内容。 不同 IO 类型接线请参考第二章的本机 IO 电气连接图
|