北京驰润达通信技术中心
热线电话:010-89284060热线电话
当前位置:首页--模块--模块应用案例--组态软件短信报警应用实例模块应用案例

                     海为PLC与GP60模块通讯

 

一、海为PLC通讯特点

 

    1、内置多种通讯协议:Haiwell PLC各种型号的主机都内置Modbus RTU/ASCII协议、自由通讯协议以及海为公司的HaiwellBus高速通讯协议;
    2、通讯端口可扩展:Haiwell PLC各种型号的主机均自带2个通讯口(一个为RS-232,另一个为RS-485),用通讯扩展模块可扩展至5个通讯口,每个通讯端口均可用于用于编程和联网,通讯端口相互独立,均可作为主站也可作产从站;
    3、极为便利的通讯指令系统:使您无论使用何种通讯协议都只需一条通讯指令便可完成复杂的通讯功能,编程简单而程序简洁,无须再为通讯端口冲突、发送接收控制、通讯中断处理等问题烦恼,可以在程序中混合使用各种协议轻松完成您所需的各种数据交换。

 

二、北京驰润达GP60 模块通讯协议介绍

    

1、海为PLC与北京驰润达GP60 模块的连接如下图:

   连接示意图

 

2、电话号码的表示
    数据包中用6个8位二进制字节表示电话号码,每个字节中高4位和低4位均用BCD码表示1位十进制的电话号码,这样每个字节可表示两位电话号码,6个字节共可表示12位电话号码,因现行的电话号码均为11位,而6字节能表示12位十进制的BCD数,所以在传输数据表示电话号码时要将电话号码的前面补0以凑足12位。
    假设电话号码是13501237654,转换成6字节BCD 码后变为 01H│35H│01H│23H│76H│54H。

 

3、读取短信命令:$AAR(CR)
    功能:读模块收到的数据。


    语法结构:$AAR<CR>
    $ ——定义符(24H)
    R ——读数据标识符(52H)
    AA——2 位16 进制数的模块地址:从00 到FF。长度2 字节。
    (CR) ——(0DH)


    响应:
    有效响应:!AA(long) (data) (cr)
    无效响应:?AA (cr)
    没有响应:语法错误/通信失败/地址错误
    !——有效响应的定义符(21H)
    ?——无效响应的定义符(3FH)
    AA——2 位16 进制数的模块地址,长度2 字节。
    (long) ——单字节数据的长度最长为FFH。00H 表示无数据。
    (data)——以字节为单位的数据,数据的长度由(long)决定,内容:字头D7H + 1字节数据长度UDL + 6字节源电话号码STA + 数据UD + 6字节发送时间DATE
    UDL: 接收到的除包头D7H 以外总的数据长度。包括STA,UD 和它本身的字节长度,因STA和UDL的字节长度一般是固定的,即固定为 1+6=7 个字节,所以其长度可由如下公式计算UDL 数值=1+6+UD 长度。接收方收到的时间字节DATE不包含在内
    SOA:发送方的电话号码,即源地址。
    UD: 发送方发送的有效数据。其总长度小等于140 个字节。
    DATE:短信中心收到短信的时间,也就是发送方发送短信的时间。共6个字节的BCD 码,依次是年、月、日、时、分、秒。UDL 的数值并不包含这6 个字节。
    (cr) ——(0DH)


    例:假设读取地址是00的G100模块中的短信,模块中的短信内容为“1111”(31H│31H│31H│31H,共4个字节),发送方的电话号码(源地址)是13912070425,发送时间是2003-08-12 13:21:21。
    发送指令:$00R(cr)——24H│00H│00H│52H│0DH
    模块返回:

    21H│00H│00H│12H│D7H│0BH│01H│39H│12H│07H│04H│25H│31H│31H│31H│31H│03H│08H│12H│13H│21H│21H│0DH

 

4、发送短信命令:$AAW(long) (data)
    功能:发送短信。


    语法结构:$AAW(long)(data)(cr)
    $ ——定义符(24H)
    AA——2 位16 进制数的模块地址:从00 到FF。长度2 字节。
    W ——写数据标识符(57H)
    (long) ——单字节数据的长度最长为FFH。00H 表示询问发送缓冲区是否空见9.5。
    (data)——以字节为电位的数据,数据的长度由(long)决定,内容:字头D7H + 1字节数据长度UDL + 6字节目的电话号码STA + 数据UD
    UDL:要发送的除包头D7H 以外总的数据长度。包括STA,UD 和它本身的字节长度,因STA 和 UDL 的字节长度一般是固定的,即固定为1+6=7 个字节,所以其长度可由如下公式计算UDL 数值=1+6+UD 长度。
    STA:接收方的电话号码,即目的地址。号码需要进行格式转换。
    UD: 您需要发送的有效数据。其总长度小等于140 个字节。
    (cr) ——(0DH)


    响应:无

 

    例:假设通过地址是00的G100模块发送短信“OK”(00H│4FH│00H│4BH共4个字节),接收方的电话号码(目的地址)是13912070425
    发送数据串如下:
    24H│00H│00H│57H│0DH│D7H│0BH│01H│39H│12H│07H│04H│25H│00H│4FH│00H│0BH│0DH

 

三、海为PLC与北京驰润达GP60 模块通讯程序
    因为北京驰润达GP60 模块采用厂商自主通讯协议,所以海为PLC采用自由协议与其通讯,为了方便理解,将要发送是数据串按字节存放在寄存器中,以低字节模式发送即使用COMM.LB指令。

 

    例如完成每100mS读一次短信,如果收到正确的短信“0000”或“1111”则回复一条短信:
    读短信命令放在“初始寄存器表”中(寄存器V1000-V1004),随程序一起下载到PLC中。
    V1000:24H        V1001:00H        V1002:00H        V1003:52H        V1004:0DH

 

    发短信命令放在“初始寄存器表”中(寄存器V1100-V1117),随程序一起下载到PLC中。
    V1100:24H        V1101:00H        V1102:00H        V1103:57H        V1104:0DH
    V1105:D7H        V1106:0BH        V1107:01H        V1108:39H        V1109:12H
    V1110:07H        V1111:04H        V1112:25H        V1113:00H        1114:4FH
    V1115:00H        V1116:0BH        V1117:0DH

 

    要比较的短信内容存在寄存器V1200-V1203中,如果短信内容等于“1111”或“0000”则回复短信“OK”。
    短信内容“1111”:V1200:3131H    V1201:3131H
    短信内容“0000”:V1202:3030H    V1203:3030H

 

程序图如下:

程序图

    COMM自由通讯指令自带通讯协议格式定义端子Protocol,可以通过双击COMM指令,以配置方式输入,如下图:

参数配置图

 

产品中心|    北京驰润达通信技术中心主要生产数传电台、GPRS模块、模块以及模块配件等。
驰润达_LOGO

地址:北京市丰台区菜户营东街甲88号鹏润家园静苑B座2504室     服务热线:010-89284060

北京驰润达通信技术中心     京ICP备08009639号-1