您现在的位置是:首页 > PLC技术 > PLC技术

S7-200系列PLC配置自由口通信

来源:艾特贸易2017-06-04

简介自由口即机内未安排标准协议,而由用户定义协议控制及应用 S7-200 CPU 的通信端口。因而 S7-200 系列 CPU 可以在自由口协议下与任何已知协议的智能设备通信。例如:打印机、条形码阅读

    自由口即机内未安排标准协议,而由用户定义协议控制及应用S7-200 CPU的通信端口。因而S7-200系列CPU可以在自由口协议下与任何已知协议的智能设备通信。例如:打印机、条形码阅读器、调制解调器、变频器和上位计算机等。当然也可以用于两台CPU间的数据交换。为了方便自由口通信,S7-200配有发送及接收指令,发送及接收中断,以及用于通信设置的特殊标志位。    1.发送及接收指令    发送指令(XMT)激活发送数据缓冲区(TBL)中的数据。数据格式如图11-8所示。数据缓冲区以字节为单位,第一个字节为要发送的字节数,最大为255个,PORT指定用于发送的端口。如果有一个中断服务程序连接到发送结束事件上,在发送完缓冲区中的最后一个字符时,则会产生一个中断(对端口0为中断事件9,端口1为中断事件26),通过监视SM4.5SM4.6信号,也可以判断发送是否完成。当端口0及端口1发送空闲时,SM4.5SM4.61    接收指令( RCV)通过指定端口(PORT)接收信息并存储于数据缓冲区(TBL)。接收数据缓冲区的格式如图11 9所示。缓冲区中第一个字节为接收的字符数。缓冲区最多可有255个字节。如果有一个中断服务程序连接到接收信息完成事件上,在接收完缓冲区中的最后一个字符时,S7-200会产生一个中断(对端口0为中断事件23,端口1为中断事件24)。也可以不使用中断,通过监视SMB86(端口0)或者SMB186(端口1)来接收信息。当接收指令未被激活或者已经被中止时,这一字节不为0;当接收正在进行时,这一字节为0
发送缓冲区格式
    11-8    发送缓冲区格式
接收缓冲区格式
    11-9    接收缓冲区格式    11-9给出了发送及接收指令的表达方式。    11-9    发送指令及接收指令
发送指令及接收指令
    使ENO=0的错误条件是:0006(间接寻址);0009(在端口0同时XMT/RCV)000B(在端口1同时XMT/RCV) RCV参数错误,置位SM86.6SM186.6S7-200CPU没有处于自由口模式。    2.自由口参数的设置及自由口的开通    SMB30(对Prot0)或SMB130(对Port1)的通信协议选择位为01,并设置波特率、数据位数及校验位等参数,即可完成自由口模式的设置(见表11-7)。在自由口模式下CPU不可与编程设备通信。只有在CPU处于RUN状态下才能实现自由口通信。可以通过特殊标志位SM0.7控制进入自由口模式。SM0.7的状态对应CPU机箱上模式开关的位置,模式开关在TERM位置时,SM0.7=0;模式开关在RUN位置时,SM0.7 =1    3.自由口接收信息状态字及控制字    采用自由口通信时,通信秩序完全靠用户程序保障。特殊标志位SMB86SMB94SMB186SMB194分别为端口0及端口1的接收信息状态字及控制字,它们功用如表11-10所示。    11-10    SMB86SMB94SMB186SMB194
SMB86~SMB94和SMB186~SMB194
SMB86~SMB94和SMB186~SMB194    结合上表信息,为使接收与信息的起始同步可在编程时采用空闲线检测、起始字符检测、断点检测等接收起始条件及结束字符检测、字符间超时定时器超时、信息定时器超时等结束条件。并可用接收字符中断控制接收数据,可以通过将SMB87.7SMB187.7设置为0来终止信息接收功能。安排发送与接收数据的校验保障通信信息的安全。    4.自由口通信的配置过程    (1)网络的连接。使用双绞线及网络连接器将网络内设备的RS-485口连接起来,连接一般为总线方式。    (2)站地址及存储区的安排。为网络内所有通信设备指定唯一的站地址。地址可以与系统块下载的地址相同也可以不同。在站数大于2时,需约定地址的表示及鉴别方法。网络中各站还要安排好各类数据的收发存储单元。    (3)约定通信的操作流程。约定通信的操作流程从根本上说是通信协议的重要内容。一般可包括通信地址的认定、握手信号的安排、握手的过程设计、信息的传送方式、信息的起始及结束判定、信息的出错校验等内容。可先绘出流程图,以明确及完善操作流程。    (4)通信程序的编制。通信程序一般由主程序、子程序及中断程序等组成。初始化程序中设置通信模式及参数,并准备存储单元及初始数据。初始化以后的编程主要是通过程序实现通信流程图的过程。S7-200系列PLC通信中断功能在程序编制中很有用处,自由口接收字符缓冲区SMB2及自由口奇偶校验SMB3在单字节通信中也常使用,通信程序常采用结构化程序,这对简化程序段功能,方便程序的分析是有利的。