基于gsm公网的plc远程通信的设计与实现
2.5 电平转换器设计
fx2系列plc的编程接口采用rs-422标准,而计算机的串行口采用rs-232标准。因此,作为实现plc计算机通信的接口电路,必须将rs-422标准转换成rs-232标准。rs-232与rs-422标准在信号的传送、逻辑电平均不相同。rs-232采用单端接收器和单端发送器,只用一根信号线来传送信息,并且根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑的“1”。rs-422标准是一种以平衡方式传输的标准,即双端发送和双端接收,根据两条传输线之间的电位差值来决定逻辑状态。rs-422电路由发送器、平衡连接电缆、电缆终端负载和接收器组成。它通过平衡发送器和差动接收器将逻辑电平和电位差之间进行转换。作者选用maxim公司的max232实现rs-232与ttl之间的电平转换。max232内部有电压倍增电路和转换电路,仅需+5v电源就可工作,使用十分方便;选用max485实现rs-485与ttl之间的转换。每片max485有一对发送器/接收器,由于通信采用全双工方式,故需两片max485,另外只需外接4只电容即可。
图5 tc35接口电路
3.软件设计
系统的软件设计包括:下位机软件设计;上位机软件设计;下位机与上位机通信软件设计。
3.1短消息pdu格式分析及实用的at命令
发送和接收sms信息有两种方式:基于at命令的text mode(文本模式)和基于at命令的pdu(protocol description unit) mode模式。西门子的手机大多只支持pdu模式,在pdu模式下短信息正文经过编码后转换成unicode码被传送。由于我们采用的是西门子的tc35手机模块和tc35t手机终端,所以本文主要探讨pdu模式的发送和接收。
下面通过对发送的短消息格式分析,来介绍sms pdu的数据格式。假设准备发送中文短消息内容为“晚上好123”。首先,将tc35t与计算机的串口相连,并打开计算机的超级终端:
3.1.1发送短消息的具体操作过程如下(带下划线字符为响应信息,{}内为注释):
at
ok {计算机与手机的连接成功,这时就可以输入各类gsm at指令了}
at+cnmi=1,1,2
ok {设置收到短消息提示}
当模块收到短消息时,给出回应:
例如:+cmti:“sm”,4
at+cmgf=0
ok {设置模块工作的模式:0为pdu模式,1为文本模式}
at+cmgs=26{发送短消息的字节数}
》0891 683108200905f0 0103 0d91 683199312523f9 3208 0c 65a4e0a597d003100320033//
键入ctrl+z,看到提示符-》出现在 后一个数字后面,说明系统已经收到了命令。系统会返回操作的结果。
ok {ok表示成功,error表示发送失败}
+cmgs:32
下面分析这条信息:
08:表示短消息中心地址长度
91:表示短消息中心号码类型
683108200905f0:表示短消息房屋中心号码
0103:表示发送短消息的编码方式
0d:表示目的地址长度
91:表示目的地址类型
683199312523f9:表示目的地址,即接收短消息的手机号码为:13991352329
3208:表示发送中文字符方式
0c:表示短消息长度
665a4e0a597d003100320033:表示发送中文字符的unicode码
665a {晚} 4e0a{上} 597d{好} 0031{1} 0032{2} 0033{ 3}
3.1.2模块接收短消息的分析:
at+cmgr={阅读短消息的内容,index 表示短消息存放的位置}
at+cmgl= {列表短信息:stat =0,列未读过的短消息;stat =4,列所有的短消息}
+cmgl: 1,2,,24 {1表示信息个数,2表示未发信息,24表示信息总容量}
at+cmgd={删除短消息,index 表示短消息存放的位置}
ok {删除成功}
3.2 下位机软件设计
包括:数据采集及a/d转换程序;越限报警程序。
3.3上位机软件设计
包括:监控中心主界面设计;数据库程序设计。
3.4下位机与上位机通信软件设计
因为下位机与上位机通信是通过短消息来完成的,所以通信软件设计的关键是单片机如何发送at命令。
4.结束语
本文采用短消息业务完成数据采集与监测终端与控制中心的通信。实现了数据采集与监测终端的遥控,远程控制电源的通断;遥测,远程测量各种开关量;遥调,远程调节各种增益;遥讯,远程查询采集各种模拟量。短消息业务具有永远在线、不需拨号、价格便宜、覆盖范围广等优势,特别适用于需频繁传送小数据量的应用,还适用于偏远地区、架设通信线路困难的地方。对于数据采集与监测终端来说,它一般放在无人值守地区,应用短消息业务来传送数据 为合适。作者设计的该系统现在已经投入运行,实践证明了该系统工作非常的可靠。