组态王短信报警例程说明文档格式.docx
- 文档编号:3416703
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:11
- 大小:88.79KB
组态王短信报警例程说明文档格式.docx
《组态王短信报警例程说明文档格式.docx》由会员分享,可在线阅读,更多相关《组态王短信报警例程说明文档格式.docx(11页珍藏版)》请在冰点文库上搜索。
地址设定:
任意
定义串口参数:
波特率:
9600(19200、38500、可选)
数据位:
8
停止位:
1
校验方式:
无校验(奇校验、偶校验可选)
寄存器说明
寄存器
名称
dd取值
范围
读写
属性
数据
类型
变量类型
AT
-----
只读
BYTE
I/O实数
I/O整数
联机状态:
1:
设备联机通讯正常
0:
失败
CMGF
-----
读/写
BYTE
设置短消息格式:
1:
文本格式
PDU编码
CSCA
STRING
I/O字符串
设置短消息中心号码
CMGD
只写
I/O整数
删除指定序号的短消息
NEW
BIT
I/O离散
读新短消息命令
MsgNewdd
0---9
读新短消息
MsgNecdd
MsgNeddd
OLD
读旧短消息命令
MsgOlddd
0---19
读已读短消息
MsgInfdd
SEND
发送短消息命令
Tele
设置接收方电话号码
MsgSenddd
0-----1
设置要发送的短消息内容
EDelay
USHORT
设置当通讯失败时,
重启设备的延时时间。
SReturn
返回信息是否发送成功。
成功;
2:
失败。
CodeMod
(CMGF=0时使用)。
编码模式。
0:
纯英文编码,7位编码。
中英文混合编码,8位编码。
ReSTime
设置短信发送失败时的重发次数,
ReSTime=0,1表示不重发。
ReSTime=3表示发送3次。
说明:
1.MsgNew,MsgNec,MsgNed字符串格式:
eg:
MsgNew0:
<
n>
2002年9月5日来自xxxxx的消息:
n为该短消息序号xxxxx为发送方号码
MsgNec0:
#####(短消息内容)
注意:
当短消息大于63个汉字(126个字符)时,组态王中只显示前63个汉字。
MsgNed保存63个之后的信息
2.MsgOld,MsgInf字符串格式:
MsgOld0:
<
MsgInf0:
当短消息大于63个汉字(126个字符)时,组态王中只显示前63个汉字
3.MsgSend,要发送的短消息内容,请不要大于63个汉字(126字符)的短消息,否则,组态王将只发送前63个汉字
4.对于只写的参数,只要状态改变一次,就执行一次命令。
5.当设备连机成功后,CSCA寄存器将显示卡中的短消息中心号码。
2、定义变量:
2.1)定义设备:
温度的采集设备我们定义组态王提供的PLC-亚控-仿真PLC,实际工程根据现场实际使用得设备进行定义。
短信发送设备定义智能模块-SIEMENS-TC35Terminal。
2.2)定义变量:
在组态王中定义四个变量:
温度(IO实数)、设置短消息格式CMGF(IO整数)、设置短消息中心号码CSCA(IO字符串)、发送短消息命令SEND(IO离散)、设置接收方电话Tele(IO字符串)、短消息内容MsgSend(IO字符串)。
温度:
IO实数,连接设备:
PLC,寄存器INCREA100,数据类型SHORT,只读属性。
采集频率1000毫秒。
设置报警限低限10,高限90。
设置短消息格式CMGF:
IO整数,连接设备:
TC35,寄存器CMGF,数据类型BYTE,读写属性,采集频率为1000毫秒,状态:
保存数值。
设置短消息中心号码CSCA:
IO字符串,连接设备:
TC35,寄存器CSCA,数据类型String,读写属性,采集频率为1000毫秒,状态:
发送短消息命令SEND:
IO离散,连接设备:
TC35,寄存器SEND,数据类型Bit,只写属性,采集频率为0毫秒。
设置接收方电话Tele:
TC35,寄存器Tele,数据类型String,读写属性,采集频率为1000毫秒,状态:
短消息内容MsgSend:
TC35,寄存器MsgSend0,数据类型String,读写属性,采集频率为1000毫秒,状态:
2.建立画面:
新建画面,画面名称“短信报警设置”,使用工具箱制作报警设置画面,如图一所示:
图一报警设置画面
3.命令语言:
利用组态王的三个自定义函数来实现报警后自动发送短信的功能。
3.1)自定义函数介绍:
在组态王自定义函数中,有三个系统预置的报警自定义函数。
分别为实型变量报警事件($System_RealAlarm)、整型变量报警事件($System_LongAlarm)和离散型变量报警事件($System_DiscAlarm)预置自定义函数。
自定义函数的调用执行有两种方式:
◆系统产生报警事件后会自动调用相应数据类型的函数,如整型变量产生报警时,系统自动调用整型预置自定义函数;
◆如果在配置报警窗的“操作属性”时,选择了“允许双击报警条”,则系统运行时双击报警事件报警条,也会自动调用相应数据类型的函数。
三种预置自定义函数如下:
1.实型:
void$System_RealAlarm(RealTagrTag,longtime,longnEvent,longnAction)
{
}
2.整型:
void$System_LongAlarm(LonglTaglTag,longtime,longnEvent,longnAction)
3.离散型:
void$System_DiscAlarm(DiscTagdTag,longtime,longnEvent,longnAction)
各个预置自定义函数中的参数的含义为(以实型为例,其它都相同):
Void$System_RealAlarm(RealTagrTag,longnTime,longnEvent,longnAction)
◆rTag:
表示变量,即普通变量,和组态王系统变量一样具有值和变量所有的域,这些值都是只读的。
◆nTime:
表示自从格林威治时间1970年1月1日0起到报警事件产生时的秒数,表征报警事件产生的时间;
◆nEvent:
表示当前产生或双击报警窗时的报警类型。
报警类型的返回值如下:
0——报警
1——恢复
2——确认
◆nAction:
表示当nAction==1时表示是双击报警条,当nAction==0时表示产生报警事件。
预置自定义函数函数体初始内容为空,需要用户在里面添加命令语言。
利用报警预置自定义函数,可以实现用户自己想在报警产生后做的一些处理。
3.2)自定义函数命令语言:
我们在本例中定义了温度变量,此变量为IO实数,因此我们使用实型变量的自定义函数来实现报警发送短信的功能。
在工程浏览器的命令语言的自定义函数部分,我们双击第一个实型变量报警的自定义函数,如图二所示:
在编辑框中编写脚本程序如下,如图三所示:
图二自定义函数
stringsinfo;
sinfo=rTag.Name;
if(nEvent==0)
stringm="
来自北京亚控公司的报警,报警变量:
"
+sinfo;
\\本站点\短信息内容MsgSend=m+"
请联系相关人员处理"
;
if(nEvent==1)
\\本站点\短信息内容MsgSend="
来自北京亚控公司的报警恢复,恢复变量:
if(nEvent==2)
来自北京亚控公司的报警确认,确认变量:
if(\\本站点\发送短消息命令SEND==0)
\\本站点\发送短消息命令SEND=1;
else
\\本站点\发送短消息命令SEND=0;
图三报警发送短信的自定义函数
4.运行系统:
功能开发完成后保存画面,在工程浏览器的“系统设置”-“设置运行系统”-“主画面配置”中,将新建的画面设置为主画面。
确认后点击工程浏览器的“View”按钮切换到运行系统。
如图四所示:
将短信息格式设置为“文本格式”,根据短信设备中放的卡的不同设置不同的短消息中心号码,设置接收短信的手机号码,这样当发生报警后自动组织短信的内容,然后按照设置的接收短信的手机的号码发送短信。
图四运行系统
四、注意事项
1.此发送短信的设备必须借助于移动或者联通公司的手机卡发送短信,每发送一条短信移动或者联通公司会收取短信费用。
2.此短信发送模块不仅仅用在报警的短信发送方面,还可以根据实际情况发送不同的短信。
3.对于西门子SiemensT35Terminal模块驱动的使用请参考组态王驱动帮助。
自定义函数的使用请参考组态王手册。
4.本演示工程只是报警发送短信的简单例程,更深一步的学习使用请参考组态王使用手册以及函数手册,或者参加组态王培训班。
如有问题请致电亚控公司技术部。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组态 短信 报警 例程 说明