自由口模式允许应用程序控制S7-200 CPU 的通讯端口,使用PC/PPI 电缆和自由口功能,
可以将S7-200 连接到带有RS-232 兼容接口的多种设备,比如调制解调器。这里我们将介绍如
何用S7-200 连接GSM 调制解调器发送短消息,并通过这个例子来介绍应用S7-200 自由口编程
的一般原则时及应注意的问题。
在下面的例子中我们将用到:
1. PC/PPI 电缆(10 位;9 600 波特;DIP 开关设置:0 1 0 1 1)
2. 西门子 S7-200 CPU22X
3. TC35 Terminal GSM 调制解调器
4. 一个9 直通针转接头(用来连结PC/PPI 电缆与TC35 Terminal 调制解调器)
5. 一根九针直通电缆(用来连结计算机与TC35 Terminal 调制解调器)
6. STEP 7-Micro/Win V3.2 或更高版本软件

一、 TC35 调制解调器AT 指令简介
要使用TC35 发送短消息需要使用TC35 的AT 指令,我们首先介绍如何用Windows 自带的
超级终端连接TC35 发送短消息。
1. 用九针直通的电缆将TC35 连接到计算机的串口上
2. 打开超级终端(开始程序附件通讯超级终端)
3. 为连接取名Connect to TC35T

4. 选择TC35 连接的串口COM1

5. 按照下图的参数设置端口。19 200 bps 为TC35 默认的端口波特率,如果该波特率已被
更改,请选择正确的波特率。

6. 在窗口中键入AT 回车测试与TC35 的连接,如果连接正确,TC35 将返回OK。

7. TC35 可以发送两种格式的短消息,普通文本格式和PDU 格式。应用普通文本格式时,
短消息内容以ASCII 码格式直接输入,操作比较简单,缺点是只能发送英文短消息;应
用PDU 格式时,短消息内容以Unicode 格式输入,可以发送任何文字,缺点是短消息
内容需要转换成Unicode 码,并且要把短消息按PDU 格式打包,操作比较复杂(编程
复杂)。通过指令AT+CMGF=0 设置TC35 以PDU 格式发送短消息(默认),AT+CMGF=1
设置TC35 以普通文本格式发送短消息。

8. 如何以普通文本格式发送短消息可以在S7-200 的网站上找到
http://www.ad.siemens.com.cn/applic/as/s7_200/modem.asp ,这里我们将介绍如何发送中文
短消息。要发送中文短消息必须把短消息内容转换成Unicode 码,并按照PDU 格式打
包发送给TC35。PDU 数据格式涉及手机开发的相关知识,我们不作详细介绍,这里指
给出一个标准格式供大家使用。以下就是一个PDU 格式的数据包:
0001000D91683108214365F700080459296C14
其中,红色的数字(3108214365F7)代表对方的手机号码,在PDU 格式中,手机号
码每两位需要对调。比如在上面这个例子里,对方的手机号码为13801234567,F 用来补充
7 后面的空位。蓝色的数字(59296C14)是短消息内容的Unicode 码,这里5929 代表“天”
6C14 代表“气”。Unicode 码同样可以用来表示中一般英文字母和数字,方法是在英文或数
字的ASCII 码前加00。紫色的数字(04)代表短消息的长度,它等于其后所有字符个数除
以2。黑色的数字每次发送短消息时都是相同的,使用时可以照抄,但前提是所使用的SIM
卡在使用前要用手机设置好短消息服务中心号码(+8613800100500)。汉字的Unicode 码可
以通过编码转换软件得到,我们使用的是Megaton Technology 公司的一个编码转换软件
9. 在使用PDU 格式发送短消息时,还必须计算整个PDU 数据包的长度,PDU 数据包的
长度等于(PDU 数据包字符数-2)/2,在上面的例子里:(38-2)/2=18。发送短消息时,
我们先向TC35 发送AT+CMGS=<Length>回车(Length 是计算好的PDU数据包的长度),
TC35 收到指令后返回一个“〉”符号,然后我们发送整个PDU 数据包并以组合键Ctrl+Z
结束。
如果短消息被成功的发送,TC35
的短消息个数,同时返回OK。
二、 设置TC35
在将TC35 连接到S7-200 之前我们先要对TC35 作一些设置,使其适合与PLC 通讯。
1. 通过指令AT+IPR=9600 设置TC35 的端口波特率为9 600 bps
2. 重新建立一个波特率为9 600 bps 的连接,用指令ATE0 禁止回波功能。回波功能使调
制解调器将收到的指令回发给发送方,这项功能会给PLC 编程来来不便,当禁止回波功
能后,TC35 只返回指令执行的结果,比如OK 等等
3. 键入AT&W0 回车将当前设置存为用户配置文件(掉电保持),再键入ATZ0 以用户配
置文件重新启动。此后TC35 重新上电时将按照前面所作的设置启动。
三、 PLC 编程
现在,我们已经知道如何用AT 指令发送短消息,剩下的工作是用PLC 程序来发送这些AT
指令。S7-200 的通讯端口为RS-485 接口,RS
楼主最近还看过
007ian
- 精华:0帖
- 求助:0帖
- 帖子:31帖 | 242回
- 年度积分:0
- 历史总积分:2872
- 注册:2006年11月22日
发表于:2009-03-13 08:56:23
1楼
这个例子都用烂了,什么地方都是这个例子,没创新啊,赶明儿我传个上来
苦学
- 精华:0帖
- 求助:0帖
- 帖子:28帖 | 1034回
- 年度积分:2
- 历史总积分:2430
- 注册:2005年3月13日
发表于:2009-03-15 14:22:31
2楼
栾久成
- 精华:0帖
- 求助:0帖
- 帖子:0帖 | 90回
- 年度积分:0
- 历史总积分:158
- 注册:2008年4月04日
发表于:2009-08-02 10:50:40
3楼
这个例子都用烂了,什么地方都是这个例子,没创新啊
MQZX
- 精华:0帖
- 求助:0帖
- 帖子:2帖 | 48回
- 年度积分:0
- 历史总积分:166
- 注册:2003年11月06日
发表于:2009-08-02 11:09:39
4楼
是比较多见的了,下次传些别的上来
yibiao14
- 精华:1帖
- 求助:0帖
- 帖子:3帖 | 26回
- 年度积分:0
- 历史总积分:111
- 注册:2008年10月28日
发表于:2011-02-01 15:56:01
5楼
回复内容:
对:007ian 关于这个例子都用烂了,什么地方都是这个例子,没创新啊,赶明儿我传个上来 内容的回复:
期待中
plc&inverter
- 精华:4帖
- 求助:6帖
- 帖子:79帖 | 658回
- 年度积分:0
- 历史总积分:1812
- 注册:2004年9月04日
发表于:2011-02-01 23:38:27
6楼
dixinke
- 精华:0帖
- 求助:0帖
- 帖子:2帖 | 45回
- 年度积分:0
- 历史总积分:70
- 注册:2003年7月17日
发表于:2011-02-06 09:41:02
7楼
这赶明了都赶了两年了!
相关主题

官方公众号

智造工程师