wazhfs
有压力才有更好未来
级别: 略有小成
精华主题: 1 篇
发帖数量: 309 个
工控威望: 265 点
下载积分: 607 分
在线时间: 218(小时)
注册时间: 2008-07-26
最后登录: 2024-03-05
查看wazhfs的 主题 / 回贴
楼主  发表于: 2008-07-26 09:24
S7-200支持多种通讯模式,如点点接口(PPI)、多点接口(MPI)、Rrofibus DP等。PPI等通讯协议主要用于西门子系列产品之间的通讯以及对PLC编程。在自由口模式下,可由用户控制串行通讯接口,实现用户自定义的通讯协议。用户可以用梯形图程序调用接收中断、发送中断、发送指令(XMT)、接受指令(RCV)来控制通信操作。在自由口模式下,通信协议完全由梯形图程序控制。
S7-200CPU上的通信口是与RS-485兼容的9针D型连接器,PLC还提供了实现 RS-485与 PC机上RS-232C相连接的PC/PPI电缆,利用它可以方便地实现S7-200系列PLC与PC之间的硬件连接。
S7-200的编程软件为STEP7-Micro/WIN32,该软件有STL、FBD和Ladder三种编程模式,有SIMATIC指令和IEC131-3指令两种指令。本文所给出的范例是使用SIMATIC指令的STL编程。
S7-200 PLC端的通讯程序实现
PLC程序分为主程序和中断程序。主程序完成初始化通信口、开中断、判断、发送数据等功能,中断程序完成接收和发送数据的功能。接收指令(RCV)启动或终止接收信息功能,必须为接收操作指定开始和结束条件。发送指令(XMT)在自由口模式下依靠通讯口发送数据。
控制字的选取
反映CPU工作方式的模式开关当前位置的特殊存储器位为SM0.7,它控制自由端口模式的进入。当SM0.7为0时,模式开关处于TREM位置;当SM0.7为1时模式开关处于RUN位置。而只有当模式开关位于RUN位置时,才允许进行自由口通讯。SMB30是自由口模式控制字节,用来设定校验方式、通讯协议、波特率等通讯参数(其它控制字的设定参阅有关书籍)。

程序的一些简单介绍

NETWORK1

LD SM0.1 // 第一次扫描

MOVB 16#09,SMB30

//自由口通讯模式:9600波特率,无奇偶校验,8个数据位

MOVB 16#7C,SMB87 //接收信息状态字节

MOVB 16#53,SMB88

//设置信息的开始字符“S”

MOVB 16#45,SMB89

//设置信息的结束字符“E”

MOVW +5,SMW90

//设定空闲行的时间间隔(ms)

MOVW +179,SMW92

//字符间/信息间定时器超时值(ms)

MOVB 60,SMB94 //接收字符的个数

NETWORK2

LD SM0.1 MOVB 16#53,VB2499

//设置接收和发送缓冲区的首地址

ATCH 发送完中断,9

//把发送完成中断和发送完成中断子程序连接起来

ATCH 接收完中断,23

//把接收完成中断和接收完成中断子程序连接起来

ENI //允许中断
QQ:26573115
龙飞九九
级别: 略有小成
精华主题: 0
发帖数量: 92 个
工控威望: 213 点
下载积分: 2588 分
在线时间: 89(小时)
注册时间: 2007-12-06
最后登录: 2024-11-13
查看龙飞九九的 主题 / 回贴
1楼  发表于: 2008-09-19 21:22
是个好东东