第十一章自由协议及其应用.docx

上传人:b****1 文档编号:278091 上传时间:2023-04-28 格式:DOCX 页数:19 大小:360.52KB
下载 相关 举报
第十一章自由协议及其应用.docx_第1页
第1页 / 共19页
第十一章自由协议及其应用.docx_第2页
第2页 / 共19页
第十一章自由协议及其应用.docx_第3页
第3页 / 共19页
第十一章自由协议及其应用.docx_第4页
第4页 / 共19页
第十一章自由协议及其应用.docx_第5页
第5页 / 共19页
第十一章自由协议及其应用.docx_第6页
第6页 / 共19页
第十一章自由协议及其应用.docx_第7页
第7页 / 共19页
第十一章自由协议及其应用.docx_第8页
第8页 / 共19页
第十一章自由协议及其应用.docx_第9页
第9页 / 共19页
第十一章自由协议及其应用.docx_第10页
第10页 / 共19页
第十一章自由协议及其应用.docx_第11页
第11页 / 共19页
第十一章自由协议及其应用.docx_第12页
第12页 / 共19页
第十一章自由协议及其应用.docx_第13页
第13页 / 共19页
第十一章自由协议及其应用.docx_第14页
第14页 / 共19页
第十一章自由协议及其应用.docx_第15页
第15页 / 共19页
第十一章自由协议及其应用.docx_第16页
第16页 / 共19页
第十一章自由协议及其应用.docx_第17页
第17页 / 共19页
第十一章自由协议及其应用.docx_第18页
第18页 / 共19页
第十一章自由协议及其应用.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第十一章自由协议及其应用.docx

《第十一章自由协议及其应用.docx》由会员分享,可在线阅读,更多相关《第十一章自由协议及其应用.docx(19页珍藏版)》请在冰点文库上搜索。

第十一章自由协议及其应用.docx

第十一章自由协议及其应用

第十一章自由协议及其应用

11.1自由协议解决的问题

为满足信息化的要求,控制器不但有采集和控制功能,还应具备通信互连功能。

通信互连的对象不只限于本公司的产品,还应与其他公司的产品进行通信互连。

通信双方除了硬件接口特性一致之外,软件的通信协议也必须保持一致。

多数情况下,硬件接口都有成熟的标准,制造厂商容易参照执行,而不同标准的硬件接口,可以通过转换器进行转换,市场上不同接口的转换器已经较多,如,RS232/RS485转换器。

控制用的通信协议,在很多场合是各自制订各自应用的,因为对控制而言,追求通用性的同时,更追求实时高效,因此造成各工控公司的产品在协议层上较难标准化。

现状是,一个公司的产品互连,都较容易做到,而与其他公司产品互连时,哪怕是较少的数据,不高的效率,也是很难做到的。

为了实现开放互连,很多公司公布其产品通信协议,供互连时参考。

嵌入式PLC同样也面临与其他公司设备的互连问题。

自由协议以灵活的方式,可以用梯形图编程,以适应不同协议的通信要求。

带有自由协议功能的嵌入式PLC,以其广泛的适应性与其他公司产品互连。

状况一:

嵌入式PLC将自由协议编制成其他公司的协议方式,作为该公司的网络从站或网络主站,与该公司产品协调工作。

状况二:

以嵌入式PLC为通信中枢,与多家公司的产品进行通信,使不同品牌不同协议的产品在一个网络下协调工作。

例如,ModBusRTU协议是基于RS485(EIA-485)的物理接口,嵌入式PLC以自由协议方式,可以作为ModBus网络中的主从节点。

11.2自由协议的基本内容

嵌入式PLC有两个串口:

串口0和串口1。

串口0作用:

、设置状态下,下载PLC梯形图。

、运行状态下,进行运行监控:

梯形图监控和元件监控,连计算机和人机界面

串口1作用:

、设置状态下,用于下载CAN网络配置文件。

CAN网络配置文件只下载到CAN网络的主站上。

、运行状态下,由软件设定,可运行两种串口协议:

自由协议和专用协议。

本章主要针对串口1的自由协议展开,主要内容有:

自由协议的通信格式

自由协议的发送函数

自由协议的接收函数

与自由协议相关的辅助函数

11.2.1自由协议的通信格式

自由协议的通信格式由D8120控制,在运行过程中,根据通信对象的不同,可以改变控制字。

但专用协议和自由协议,在运行时不允许相互切换。

嵌入式PLC串口1通信,一旦选择专有协议,其各项通信指标是固定的。

只有选择自由协议,各项通信参数才根据D8120而变化。

专有协议有主从站设置和地址设置类信息。

自由协议的的主从信息、地址信息是隐含在编程中。

如,主从信息表现在主动发信息还是被动发信息的编程上,地址信息包含在规划的报文格式中及解读报文的编程中。

D8120的协议选项(D8120_Bit14),决定是自由协议还是专有协议,其他选项都是针对自由协议的。

当选择专有协议时,其他各项可以不选。

嵌入式PLC每次上电,D8120都有一个默认初值D8120=H6881,也就是默认选择为专

有协议。

当选择为自由协议时,才需要对D8120进行重新赋值。

位置选项

ON时含义

OFF时含义

D8120_Bit15

未定义

未定义

D8120_Bit14

自由协议

专有协议

D8120_Bit13

未定义

未定义

D8120_Bit12

未定义

未定义

D8120_Bit11

未定义

未定义

D8120_Bit10

未定义

发送结束自动转接收

D8120_Bit09

未定义

接收终止符有效

D8120_Bit08

未定义

接收起始符有效

D8120_Bit07

D8120_Bit07_06_05_04=xxxx,.波特率选项

xxxx=0000:

1200bpsxxxx=0001:

2400bps

xxxx=0010:

4800bpsxxxx=0011:

9600bps

xxxx=0100:

14400bpsxxxx=0101:

19200bps

D8120_Bit06

D8120_Bit05

D8120_Bit04

D8120_Bit03

1停止位

2停止位

D8120_Bit02

D8120_Bit02_01=xx,.奇偶校验选项。

xx=00:

无奇偶校验;xx=01:

奇校验;xx=11:

偶校验;

D8120_Bit01

D8120_Bit00

7位数据

8位数据

如D8120=H0431,表示自由协议,发送结束自动转接收,通信速率为9600bps,7位数据,无奇偶校验。

自由协议的通信格式总共是11位,其中起始位1位,数据位9位(B0----B7+TB8/RB8),1停止位,如图所示。

嵌入PLC与其它控制器通信,如与计算机通信,以自由协议方式,9600bps速率,发送自动转接收为例,可选设置项如下:

、7位数据+无奇偶校验+1停止位:

请按第

种情况设置。

、7位数据+无奇偶校验+2停止位(Bit7=1)D8120=H0438

、7位数据+奇校验+1停止位(Bit7=奇校验)D8120=H0432

、7位数据+偶校验+1停止位(Bit7=偶校验)D8120=H0436

、7位数据+奇校验+2停止位(Bit7=奇校验,TB81/RB81=1)D8120=H043A

、7位数据+偶校验+2停止位(Bit7=偶校验,TB81/RB81=1)D8120=H043E

、8位数据+无奇偶校验+1停止位D8120=H0431

、8位数据+无奇偶校验+2停止位(TB81/RB81=1)D8120=H0439

、8位数据+奇校验+1停止位(TB81/RB81=奇校验)D8120=H0433

、8位数据+偶校验+1停止位(TB81/RB81=偶校验)D8120=H0437

、8位数据+奇校验+2停止位:

请按第

种情况设置。

、8位数据+偶校验+2停止位:

请按第

种情况设置。

嵌入式PLC以自由协议的方式访问其他公司设备,其通信格式必须与其他设备相同。

例如,与三菱FX系列PLC通信,双方通信格式设置成以下对应方式。

嵌入PLC格式字

FX_PLC格式字

嵌入PLC格式字

FX_PLC格式字

D8120=H0438

D8120=6088H

D8120=H0431

D8120=6081H

D8120=H0432

D8120=6082H

D8120=H0439

D8120=6089H

D8120=H0436

D8120=6086H

D8120=H0433

D8120=6083H

D8120=H043A

D8120=608AH

D8120=H0437

D8120=6087H

D8120=H043E

D8120=608EH

.

11.2.2自由协议的发送函数

函数功能号:

D8200=K29

调用方法:

SETM8200

入口参数:

通信格式(D8120);

待发送字节数(D8121);

发送区的起始单元(D8128);

发送/接收超时时间设定(D8127,可选参数)。

状态参数:

发送请求标志(M8121);

发送成功标志(M8122);

发送剩余字节数(D8122),超时剩余时间(D8130);

奇偶校验错标志(M8120),发送/接收超时标志(M8127)。

函数调用过程:

设置入口参数→赋函数功能号→调用函数→查看标志→决定下一流程。

发送方法(函数调用方法):

定时发送,随机发送,循环发送。

定时发送:

将发送缓冲区的内容,按一定周期,发送到网络上。

示例将D100-D199中的数据以500mS的周期发送到网络。

 

随机发送:

在符合设定的条件下,将指定的内容发送到网络中。

如系统报警时,将报警数据发送到网络。

示例中,X1吸合一次(延时200mS),D100---D199内容发出一次。

循环发送:

当一次发送完成后,紧接着执行下一次发送。

网络要求得到实时数据,同时允许丢失一些数据的情况下,可以采取循环发送方式。

示例中,将D100的内容以最快的速度向网络发送,1秒可发送560字节的内容。

 

在发送的三种方式中,一次最多发送232字节,超出部分不被发送。

11.2.3自由协议的接收函数

函数功能号:

D8200=K30

调用方法:

SETM8200

入口参数:

通信格式(D8120);

待接收字节数(D8123);

接收区的起始单元(D8129);

设定接收起始符(D8125);

设定接收终止符(D8126);

发送/接收超时时间设定(D8127,可选参数)。

状态参数:

接收请求标志(M8123);

接收成功标志(M8124);

已接收字节数(D8124);

奇偶校验错标志(M8120),

发送/接收超时标志(M8127)

超时剩余时间(D8130),

函数调用过程:

设置入口参数→赋函数功能号→调用函数→查看标志→决定下一流程。

接收数据的处理过程:

接收成功→取出接收区数据→清理接收区数据→复位请求标志→复位成功标志→重新调用接收函数,如图示过程。

接收函数的调用过程有两种方式:

程控调用方式和自动调用方式。

程控调用方式有函数号D8200=K30和调用指令SETM8200;

自动调用方式是D8120在设置时,设为发送自动转接收的方式。

发送完毕后,自动调用接收函数,因此在程序上没有明确的接收函数号和调用指令。

程序显式调用接收函数:

例1:

当接收数据长度达指定长度(10字节)时,取出接收区数据进行处理,并重新调用接收函数。

每次重新调用接收函数时,接收数据放在接收区的第一字节,接收数据字节计数器D8124从0开始计数。

例2:

当接收成功标志M8124置位时,进行数据处理,并重新调用接收函数。

当重新调用接收函数时,成功标志M8124自动复位。

例3:

带有起始/终止字符的报报文处理。

当D8120设成接收起始符终止符有效时,对应设定报文起始标志(如D8125=02H),终止标志(如D8126=03H),中间内容为长度可变的非标志字符。

当接收成功时(M8124=ON),进行报文处理。

在接收到起始标志(如02H)时,起始标志置于接收缓冲区的第一字节。

在接收到终止标志(如03H)时,置位接收成功标志(M8124ON)。

如果接收到的字节数(D8124)等于待接收的字节数(D8123)也置位接收成功标志;

当D8120设成接收起始符有效时,M8125置ON。

当D8120设成接收终止符有效时,M8126置ON。

设发送数据为:

H08HAAH02HAAHBBHCCHDDHEEHFFH03H11H12H13H14等14个字节,

带起始标志(02H)终止标志(03H)接收时,只收到

H02HAAHBBHCCHDDHEEHFFH03等8个数据。

不带标志接收时收到原14个字节。

本例发送方可由PLC发送,也可由计算机串口调试发送。

本例接收程序如下:

自动隐式调用接收函数:

例1:

当作为主站时,首先发出命令报文,然后,应立即侦听网络有无返回信息,此时主站应处于接收状态。

当接收完成或超时时间到,接着发送下一命令。

因此,通信控制字需设定成发送自动转接收状态,即D8120_Bit10=1(发送结束自动转接收)。

如果从站收到主站报文后,也回发10个字节的内容,则在主站上所统计的成功发送次数和成功接收次数相等。

如果从站每次回发5个字节,则接收成功次数为0,这是因为每次自动发送时,将接收字节计数器D8124清零。

例2:

当作为从站时,上电处于接收状态(上电调用接收函数),当收到数据后(不一定接收成功标志,可以通过D8124判断),决定向主站回发数据,当发送完毕后,又立即处于接收状态,因此也需设成发送自动转接收的方式。

例中,当收到10个字节数据后,自动回发10个字节数据,成功发送和成功接收的次数相等。

例1和例2可以完成一个主从结构的、自由访问的一对一的PLC系统。

但在例1和例2中,并没有看到多次调用接收函数,这是自动隐式调用接收函数的效果,由此提高了实时性。

11.2.4与自由协议相关的辅助函数

在工控通信中,根据不同的情况,各工控厂家有不同的通信协议。

有的以16进制的方

式传输,有的以ASCII码传输,有的以BCD码传输;校验方式有和校验,异或校验;传输顺序有的从高字节开始,有的从低字节开始;传输单位一般是以字节为单位,而PLC在梯形图中多以字为单位。

而自由协议的发送区和接收区是以字节为单位的连续区。

为适应各家协议,必须有相关的辅助函数,才能更好发挥自由协议的作用。

辅助函数只针对数据寄存器区。

1.ASCII码字符转HEX数值(函数号:

25)

将ASCII码表示的“0---9,A---F”字符转换成16进制的数值0---9,A---F。

如ASCII值为31323342(表示字符“123B”),经函数转换后成HEX值为123B,四个字节变成二个字节。

2.HEX数值转换成ASCII码字符(函数号:

26)

将HEX表示的数值变换为ASCII码,与25号函数功能相对。

如将HEX值AB23转换为ASCII码字符“AB23”,ASCII值为41423233。

3.区域移动(函数号:

27)

将字节拼成字,或将字拆成字节,或字区的移动。

如,填写发送字节时,将字节赋给字单元的低字节,我们会觉得方便;但对发送而言,发送的是连续字节区,因此发送前,又必须将不连续的低字节变成连续的字节,即连续的字区。

4.区域求和(函数号:

28)

在有和校验的协议中,以字节为单位进行求和运算。

因此对接收字可能需拆成字节,而后进行求和运算。

如11H22H33H44H55H66H77H的7个字节,求和结果为01DCH。

如果只传两个字的ASCII码值,则只传“DC”,ASCII码值为44H43H。

以上提供的辅助函数在自由协议方式下,使用的频率较高,辅助函数的调用方式也大体相同。

入口参数:

输入的元件号(D8201):

如D8201=K100,表示从D100开始。

输入的有效字节数(D8202):

如D8202=K10,表示10个字节。

起始字节高/低选择(M8201):

如SETM8201表示从低字节开始。

字/字节有效选择(M8202):

如SETM8202表示字节方式。

出口参数:

输出元件号(D8203):

如D8203=K1000,表示结果存在D1000超始区。

起始字节高/低选择(M8203):

如SETM8203表示从低字节开始。

字/字节有效选择(M8204):

如SETM8204表示字节方式。

以上函数的具体示例参见第八章<常用功能函数说明>

11.3自由协议的应用示例

自由协议有广泛的适应性,可以与其他公司的PLC,仪表,变频器进行通信连接。

面以实例方式说明。

11.3.1与第三方PLC的通信

以三菱PLC为例,用嵌入式PLC向FX2N写一个字的数据。

三菱FX2N,其通信协议部分如下所示,要用自由协议方式去访问三菱PLC,必须去适应该协议。

ENQ=05H,ACK=06H,NAK=15H。

其它部分均以ASCII码字符传输。

三菱FX的对应程序:

嵌入式PLC程序:

(略)

该部分程序较长,参考光盘“自由协议(作三菱主站)”的程序,该程序涉及到D区域移动函数,自动求和函数,字节移动函数,16进制与ASCII码相互转换的函数。

综合应用较强。

 

11.3.2与第三方仪表的通信

例1:

与AI系列智能调节仪进行通信。

仪表作为从站,接收两种命令:

读命令和写命令,两种命令的帧格式长度均为8个字节,地址信息在报文中规定。

被访问的仪表返回10个固定长度的字节。

用自由协议访问方式,同时访问三台AI调节仪。

程序参看光盘<自由协议-仪表通信部分>。

例2:

与称重仪表RANGER5000(AUSTRALIANMADE)进行通信,将其称重数据读到PLC内,然后进行相关控制。

其访问项较多,访问方式是发送ASCII字符,返回有16进制数值,也有BCD数值。

比如,询问仪表重量:

“S01;MSV?

1;”,“S01;”表示选择地址,“MSV?

1;”表示询问仪表的显示重量。

仪表返回6位BCD数值。

程序参见光盘<自由协议-仪表通信部分>。

与仪表连线需接成RS422方式。

11.3.3与变频器的通信

在应用中,已成功与以下变频器进行了RS485连线,并以通信方式工作。

DANFOSS丹佛斯变频器VLT2800,VLT5000。

华为TD200变频器。

正弦SINE系列变频器。

在以后的实践中,自由协议以其灵活的方式会适应各种特殊的要求。

应用自由协议与第三方设备通信主要有以下步骤:

、消化第三方设备通信协议;

、确定要访问的内容;

、用自由协议构建符合要求的发送帧并进行发送;

、用自由协议接收第三方设备的回发内容;

、按第三方协议的定义,对回复内容进行解读;

、将解读内容用于显示或控制。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2