S7-200 PLC与iFIX组态软件通讯 点击:2805 | 回复:3



水中鱼

    
  • 精华:35帖
  • 求助:3帖
  • 帖子:239帖 | 3802回
  • 年度积分:0
  • 历史总积分:15036
  • 注册:2011年11月10日
发表于:2012-02-25 21:52:02
楼主
      iFIX3.0是Intellution Dynamics自动化软件产品家族中的HMI/SCADA最重要的组件,它是基于WindowsNT/2000平台上的功能强大的自动化监视与控制的软件解决方案。该系列软件以SCADA(Supervisory Control And Data Acquisition)为核心,实现包括监视、控制、报警、保存和归档数据、生成和打印报告、绘图和视点创建数据的显示形式等多种功能。它们包括数据采集、数据管理和集成3个基本功能。 
1  西门子S7-200 PLC及其网络通信功能 
   SIMATIC S7-200系列PLC具有结构小巧、运行速度高、价格低廉、多功能、多用途等特点,具有极高的性能价格比;适合控制点分散控制系统和中小型控制系统。
   S7-200的网络通信功能:S7-200系列PLC通信接口是9针RS-485标准串行接口,可通过PC/PPI电缆与计算机联接,也可通过通信扩展模块与其它PLC及设备连成网络。
    (1)  SIMATIC S7-200网络(PPI协议)
    采用PPI(Point to point interface)协议,S7-200 PLC能以19.2Kbit/s的数据传输率与PC机(通过PC/PPI电缆)及SIMATIC的编程设备、TD200文本显示器、HMI(操作员控制和监视)设备以及其它的S7-200 PLC相连。
    (2)  自由口模式(用户可编程接口协议)
    采用可编程自由口通信模式(free port mode),在用户程序中进行编程与配置,可以使S7-200 PLC与任何需要的设备如变频器、调制解调器、打印机、条码阅读器、电机驱动器、终端或其它S7-200 PLC进行灵活地通信。
    (3)  PROFIBUS-DP网络
    利用EM277通信扩展模块,S7-200 PLC只能作从机使用。它提供了与过程现场总线系统PROFIBUS-DP之间良好的接口能力,能与所有的SIMATIC系统组件直接通信,进入到快速(12Mbit/s波特率)的现场总线领域。
2  西门子S7-200 PLC与iFIX3.0通讯
   西门子S7-200 PLC可以通过PC/PPI电缆直接与上位PC机连接,建立通讯,但是由于PPI协议是西门子公司未公开的协议,iFIX3.0的公共驱动程序不包括针对PPI协议的S7-200 PLC的驱动,因此西门子S7-200 PLC与iFIX3.0通讯必须开发特定的驱动程序,增加了开发周期和开发费用。利用可编程自由口通信模式(free port mode)在PLC上通过编程转换为公开类似Modbus的协议,通过固定对应方法建立S7-200 PLC与iFIX3.0的通讯。
3  西门子S7-200 PLC自由口通讯程序
   本程序包括一组子程序和中断程序,通过S7-200自由端口功能来产生从Modbus RTU,使PLC作为从站,上位PC机作为主站。子程序和中断程序用来初始化和处理Modbus的请求。有两个程序必须加到用户主程序中,一个程序用来在第一次扫描时初始化Modbus,另一个程序检查一个M位,和处理已有的Modbus请求。第二个程序放在靠近用户主程序结束的地方(就在MEND之前),以便数据只在扫描结束时发生改变。
 
    ***程序结构***
    主程序:
    NETWORK 1
    LD     SM0.1
    CALL   COMM_INIT
    NETWORK 2
    LD     M31.7
    CALL   RW_CALL
    R      M31.7, 1
    子程序和中断程序是:
             SBR100     初始化 Modbus RTU 驱动器.
             SBR101     处理 Modbus 请求和传送响应
             SBR102     处理 Modbus 功能1和2
             SBR103     处理 Modbus 功能3和4
             SBR104     处理 Modbus 功能5
             SBR105     处理 Modbus 功能 6
             SBR106     处理 Modbus 功能 15
             SBR107     处理 Modbus 功能 16
             SBR101     产生错误响应2
             SBR102     初始化 CRC 表
             SBR103     计算 CRC
             INT150      静止线定时器到时处理
             INT151      在等待静止线定时器到时期间收到字符的处理
             INT152      接收请求的首字符.
             INT153      接收请求的其余字符
             INT154      静止线定时器到时后结束请求
             INT155      发送完后复位静止线寻找
    本程序允许一个或多个S7-200连接到主Modbus。它利用S7-200的自由通信口功能来执行Modbus RTU协议。Modbus RTU协议是一个二进制协议。Modbus RTU协议传送8位二进制字符,每个字符也包括一个起始位,一个或两个停止位(S7-200提供一个停止位),一个可选择的奇偶校验位。Modbus RTU协议是一个主从协议。这就意味着一个网络配置包括一个主设备(一台主机)和一个或多个从设备。每个从设备有不同的地址。主机给一个从机发送请求,然后等待从机的响应。从机将回答此请求已收到或出现错误。如果请求没有正确接收到,则有象奇偶错或CRC(校验和)错这一类的传送错误。此时从机将不响应,主机必须在等待一个适当的时间后重新发送请求。以下讲述的程序设定S7-200为9600波特,偶校验它可以通过在SBR 50里修改通信口设置而改变Modbus RTU协议使用CRC(循环冗余检验)来进行出错校验。 
    在此程序中S7-200 PLC存储器区域对应Modbus地址:(程序无Q区域,控制输出用M区)
    I0.0->10001,I0.1->10002,……I0.7->10008,I1.0->10009……
    VW0->40001,VW2->40002,VW4->40003,VW6->40004……
    M0.0->00001,M0.1->00002,……M0.7->00008,M1.0->00009……
4  在上位PC机设置iFIX3.0与西门子S7-200PLC通讯
    在上位机安装iFIX的I/O驱动库中的MB1驱动(针对Modbus协议),进入iFIX3.0系统配置(SCU)环境,启动MB1驱动,建立iFIX3.0与西门子S7-200 PLC连接。
    首先,添加通道(Channel0,Channel1……)在此项中设置通讯方式、通讯接口、通讯速率、通讯数据格式等;在此方案中选波特率9600,8位数据,1位停止位,偶校验(9600 8E1)。
    然后,在通道下添加设备(Device0,Device 1……),在此项中与设备连接,设置设备地址,数据重发次数,延迟时间等;注意设备地址必须与通讯程序中地址一致。
    最后,再在设备中添加数据块(DataBlock0,DataBlock1……),通过与上述通讯程序设定的对应关系:
    I0.0->10001,I0.1->10002,……I0.7->10008,I1.0->10009……
    VW0->40001,VW2->40002,VW4->40003,VW6->40004……
    M0.0->00001,M0.1->00002,……M0.7->00008,M1.0->00009……
    添加各数据块。
    注意,以上各步骤中把Enable框选上,iFIX3.0与西门子S7-200 PLC通讯完成。
5  结语
    iFIX3.0与西门子S7-200 PLC通讯问题主要是协议方面的问题,而S7-200 PLC提供的可编程自由口通信模式(free port mode)给用户提供了解决问题的途径。同时S7-200 PLC自由口通信协议可解决很多通讯方面的问题。


楼主最近还看过



曹虎明

  • 精华:0帖
  • 求助:0帖
  • 帖子:30帖 | 923回
  • 年度积分:0
  • 历史总积分:4881
  • 注册:2004年7月07日
发表于:2012-02-26 22:21:11
1楼

走OPC吧 应该比这个简单

闪电游侠

  • 精华:0帖
  • 求助:7帖
  • 帖子:34帖 | 485回
  • 年度积分:0
  • 历史总积分:1205
  • 注册:2006年2月09日
发表于:2012-02-29 09:03:19
2楼
OPC简单的多,MODBUS-RTU也可以。

chanssy

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 17回
  • 年度积分:0
  • 历史总积分:246
  • 注册:2008年12月25日
发表于:2012-03-02 11:45:56
3楼
有自动化兴趣及工作的朋友,加入QQ群187703118交流学习

热门招聘
相关主题

官方公众号

智造工程师