浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子6ES7322-1BP00-0AA0性能参数

西门子6ES7322-1BP00-0AA0性能参数

1、sms基础知识介绍

sms(short messaging service)是早的短消息业务,也是现在普及率高的一种短消息业务。目前,这种短消息的长度被限定在140字节之内,这些字节可以是文本的。sms以简单方便的使用功能受到大众的欢迎,却始终是属于代的无线数据服务,在内容和应用方面存在技术标准的限制。

一个sms消息长可包括 160个字符(偶数二进制)。

sms是一种存储和转发服务。也就是说,短消息并不是直接从发送人发送到接收人,而始终通过sms中心进行转发的。如果接收人处于未连接状态(可能电话已关闭),则消息将在接收人再次连接时发送。

sms具有消息发送确认的功能。这意味着

sms与寻呼不同,用户不是简单地发出短消息然后相信消息已发送成功;而是短消息发送人可以收到返回消息,通知他们短消息是否已经发送成功。

sms 消息的发送和接收可以和 gsm 语音同步进行。

sms 消息按消息收费,因此要比通过基于 ip 的网络(例如,使用 gprs [通用分组无线业务])发送的数据昂贵得多(每字节)。

要使用 sms,用户需要预订支持 sms 的移动网络,并且必须为该用户启用 sms 的使用。用户需要有发送短消息或接收短消息的目的地。该目的地通常是其他的移动电话,但也可以是服务器。后,用户还需要有支持 sms 的移动电话,并需要了解如何使用其特定型号的移动电话发送或阅读短消息。

sms发送的模式分有两种:text模式和pdu模式.

使用text模式收发短信代码简单,实现起来十分容易,但是大的缺点是不能收发中文短信, pdu模式完全可以解决这个问题,pdu模式不仅支持中文短信,也能发送英文短信, pdu模式收发短信可以使用三种编码: 7-bit、8-bit和ucs2编码。 7-bit编码用于发送普通的ascii字符,8-bit编码通常用于发送数据消息,ucs2编码用于发送unicode字符。我们要实现中文短信的发送,所以选择ucs2,即中文unicode码。下面是关于两种方式发送的示例at指令:

范例:向手机号码发送短信“weather”

(1) text方式

at+cmgf=1; …………设置短信发送方式为text模式

at+cmgs=””; …………向被叫号码发短信

>; weather ;

(2) pdu方式

at+cmgf=0; ……………设置短信发送方式为pdu模式

at+cmgs=018; ……………向被叫号码发送pdu的长度

>;0001000d965f700080459296c14;

注:pdu方式中at+cmgs命令解释:

at+cmgs=xxx; …xxx表示pdu中tpdu的长度

>;pdu ...输入pdu信息


0001 :基本参数


00 :消息基准值tp-mr

0d :目标地址数字个数(十进制,不包含91)

91 :目标地址格式

68 :目标地址为中国

3108214365f7 :目标地址()

00 :协议标示tp-pid

08 :用户信息编码格式tp-(08表示ucs2编码)

00 :有效期tp-vp

04 :用户信息长度tp-udl

59296c14 :用户信息(“天气”)


其中,红色的数字(3108214365f7)代表对方的手机号码,在pdu格式中,手机号码每两位需要对调。比如在上面这个例子里,对方的手机号码为,f用来补充7后面的空位。蓝色的数字(59296c14)是短消息内容的unicode码,这里5929代表“天”6c14代表“气”。unicode码同样可以用来表示中一般英文字母和数字,方法是在英文或数字的ascii码前加00。紫色的数字(04)代表短消息的长度,它等于其后所有字符个数除以2。黑色的数字每次发送短消息时都是相同的,使用时可以照抄,但前提是所使用的sim卡在使用前要用手机设置好短消息服务中心号码(+86)。汉字的unicode码可以通过编码转换软件得到。


pdu格式发送短消息时,还必须计算整个pdu数据包的长度,pdu数据包的长度等于(pdu数据包字符数-2)/2,在上面的例子里:(38-2)/2=18。

2、网络结构图

硬件的连接, s7-300cp后接cp340(rs232串口)或cp341(rs232串口),再通过串口直连线连接cp340或cp341到md720-3的串口上,md720-3插一块sim卡。直连线的1针到9针对应连接。

图1、网络结构图

3、需要的软件及硬件

硬件


componentqty.mlfb / order numbernoteps307 5a16es7307-1ea00-0aa0cpu317-2pn/dp16es7317-2ej10-0ab0cp34116es7341-1ah01-0ae0md720-316nh9720-3aa00直连线16es7901-3c***-0xa0sim card


表1、硬件列表

软件


componentno.mlfb / order numbernotestep 7 5.4 sp416es7810-4cc08-0ya5


表2、软件列表

4、以text的方式发送sms

在这里不介绍用自由口编程的方式编写at的指令来发送sms,而是采用西门子提供库功能块来编写程序。库程序的下载链接地址如下:26100569

上面库程序是压缩文件,先解压缩到一个目录下,在该目录下又会看到3个压缩文件,再解压这三个压缩文件,解压缩后如下图所示:

图2、存放目录

从上图中,解压三个压缩文件后sms_bloc;sms_md720_application;sms_md720_simple

sms_bloc: 包括了使用cp340、cp341、cp442-1收发短信的库功能。

sms_md720_application:包含了用cp341和cp442-1收发短信的应用程序。

sms_md720_simple:包含了一个用cp341收发短信的简单应用程序

由于三个文件夹的程序只有sms_md720_simple的程序是完整的,另外两个文件夹下的程序由于编者的疏忽,程序不完整,导致无法正常编译通过。所以在本文里我们只能介绍,通过拷贝sms_md720_simple项目下的功能块到实际的项目中来实现发送短信的功能。

在新建项目前,需要硬件按照网络图安装好,并加电。md720加电后恢复出厂设置,让其工作在终端模式下(在md720的系统手册上介绍如何恢复出厂设置,这里不再作详细介绍),恢复后用串口直连线,连接md720与计算机的串口,打开计算机的超级终端程序,打开方式如下图:

图3、打开超级终端

打开后在连接描述的窗口里输入一个连接名如下图:

图4、输入连接名

点击ok后,选择与计算机连接的串口,这里连接的是串口1,所以设置如下图:

图5、选择com端口

在上图点击ok按钮后,设置串口的通讯参数如下:

图6、com口的参数设置

点击ok按钮后,在出现的串口里先输入 “+++”后,输入“at”检查与modem的连接是否正常,若正常则modem会返回ok,如下图:

图7、测试与modem的连接

然后在输入指令“at+irp=9600”修改通讯波特率为9600如下图所示:

图8、设置modem的波特率

修改成功后,把连接计算机上的串口拔下后,把9针口连接到cp341的串口上。

打开step7 manger,打开后点击file菜单下的new…,新建一个项目,在新建项目的串口里输入项目sms_cp341,然后点击新建,项目的硬件组态如下图所示:

图9、s7-300站的硬件组态

双击cp341-rs232c,打开属性窗口如下图:

图10、cp341的硬件地址设置

点击bbbbbeter...,设置串口的通讯协议为

图11、选择通讯协议为ascii

双击protocol协议包,配置串口通讯的参数如下图:

图12、设置ascii的通讯参数

图13、设置传输的控制方式

图14、设置接收的缓存区

配置完硬件后,编译并下载硬件组态,然后打开sms_md720_simple项目,并拷贝sms_md720_simple项目下的除ob1功能块外的所有功能块到sms_cp341项目相应的目录下,同时需要拷贝source下的源代码到sms_cp341项目下的source目录下。

拷贝后如下图:

图15、拷贝库程序到项目下

打开ob1块,在ob1里调用fb100,背景数据块为db100,如下图所示:

图16、ob1中调用短消息功能块

在cp_adr中只需输入cp341的逻辑地址256。输入后保存程序。编写ob1后打开db100数据块如下图:

图17、在发送功能块的背景数据块中设置修改cp341的硬件地址

这里sim卡无pin码,要发送的信息是“weather”;发送的手机号为“”;设置db100的参数如下图:

图18、在发送功能块的背景数据块中设置pin码、目的手机号及信息

修改后保存db100,并下载所有的程序块到cpu中。下载后打开打开变量监控表并在线监控,如下图:

图19、通过变量监控表触发信息发送

在变量监控表里先置位”sms”.b_init,然后在置位”sms”.send,等待一会儿,可以看到变量监控表里的”sms”.n_status当置位”sms”.b_init时会从1002变成201,然后当置位”sms”.send时会从201变成202、204、206,过一会儿又回到201的值,这样接可以再目的手机上接收到“weather”的短信。

上面的调试步骤只是从功能上实现了发短信的功能,要实现收发多条信息到多个多个手机,可以参考sms_md720_application和sms_md720_simple下的编程思路开发适合自己应用的程序。

注意:如果例子项目文件打不开,请把计算机的语言设置为德语。

5、以pdu的方式发送中文sms

要发送中文短信,需要安装step7 scl编程语言包,发送短信库功能块是由fb100来完成的,fb100是由scl语言编写,要想使其能发送中文的短信,那么就需要用scl语言修改fb100功能块。修改方式如下:

在发送文本方式步骤的基础上,用scl语言打开sms_cp341项目下目录source下的sms_send源代码,如下图:

图20、打开发送功能块的源文件

打开后如下图:

图21、scl编辑器打开后的源文件

修改源程序代码md720_sms_textmode := '$r$lat+cmgf=1$r'为md720_sms_textmode := '$r$lat+cmgf=0$r'如下图所示:

图22、修改短信的发送模式为pdu模式

str_outbox := sms_textmode_attr;改为str_outbox :=md720_sms_textmode;如下图:

图23、修改程序中的发送模式

修改后,点击file下save,然后再点击file下的complie,如下图:

图24、重新编译修改后的程序

关闭scl编辑窗口,若发送的目的手机号为发送的内容为“天气”打开db100,修改发送参数如下图:

图25、修改为pdu模式下的信息格式

其中5929为pdu码的“天”;6c14为pdu码的“气。

修改后下载fb100和db100功能块到cpu。打开变量监控表,在变量监控表里先置位”sms”.b_init,然后在置位”sms”.send,等待一会儿,可以看到变量监控表里的”sms”.n_status当置位”sms”.b_init时会从1002变成201,然后当置位”sms”.send时会从201变成202、204、206,过一会儿又回到201的值,这样接可以再目的手机上接收到“天气”短信。

前面介绍用cp341发送短信,若用cp340发送短信,则需要修改库程序中。因为修改比较繁琐,这里就不再作介绍,若有需求。可通过热线联系西门子技术与支持。


展开全文
优质商家推荐 拨打电话