您的位置 首页 电路

以FPGA为根底的完成MEWTOCOL-COM与MODBUS RTU协议转化办法的规划

以FPGA为基础的实现MEWTOCOL-COM与MODBUS RTU协议转换方法的设计-现场总线技术是在工业自动化领域中解决工业现场的智能化仪器仪表、控制器、执行机构等现场设备间的数字通信以及这些现场控制设备和高级控制系统之间的信息传递问题,是工业设备自动化和信息化的基础。然而,由于历史原因,现场总线的通信协议却种类繁多,根据IEC61158第四版国际标准,已有20种现场总线协议成为国际标准[1]。常用的现场总线协议有西门子的MPI和PPI Rockwell的DF1、松下的MEWTOCOL-COM以及绝大多数设备厂商都遵循的MODBUS协议等。由于不同设备商支持的协议标准不同,导致不同设备商的设备之间不能直接互联互通,这就造成了生产制造单位在扩大生产线或设计产品线时,无法做到资源的合理规划和充分利用,老旧产线无法顺利接入智能网络等困境。

0 导言

现场总线技能是在工业主动化范畴中处理工业现场的智能化仪器仪表、操控器、执行机构等现场设备间的数字通讯以及这些现场操控设备和高档操控体系之间的信息传递问题,是工业设备主动化和信息化的根底。但是,因为前史原因,现场总线的通讯协议却品种繁复,依据IEC61158第四版国际规范,已有20种现场总线协议成为国际规范[1]。常用的现场总线协议有西门子的MPI和PPI Rockwell的DF1、松下的MEWTOCOL-COM以及绝大多数设备厂商都遵从的MODBUS协议等。因为不同设备商支撑的协议规范不同,导致不同设备商的设备之间不能直接互联互通,这就造成了出产制作单位在扩展出产线或规划产品线时,无法做到资源的合理规划和充分利用,老旧产线无法顺畅接入智能网络等窘境。

现在,针对不同的工业协议之间的彼此转化,最常见的办法有依据嵌入式体系完结协议转化、依据专用芯片完结协议转化和依据FPGA完结协议转化[2]。表1是对这三种常用办法的优缺点的比较。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

本文针对松下电工的私有协议 MEWTOCOL-COM 和规范串行协议 MODBUS RTU进行了深化的研讨,并规划和完结了一种 MEWTOCOL-COM 与 MODBUS RTU协议快速转化的电路计划,不光处理了 MEWTOCOL-COM 规范设备与 MODBUS RTU规范设备集成在一个现场总线网络中进行互联互通、数据交换的问题,并且完结了两个协议快速转化,转化前后的数据报文时延小于2 ms。

1 MEWTOCOL-COM与MODBUS通讯原理

1.1 MEWTOCOL-COM通讯原理

MEWTOCOL-COM是松下电工FP系列PLC与PLC、核算机或许HMI触摸屏之间选用的一种专用的通讯协议。该协议选用主从应对办法,数据传送选用的是ASCII码编码办法,每次通讯的开端,都由主站(主PLC、核算机或许HMI触摸屏)发送指令,从站(从PLC)接受到指令后,主动进行相应的呼应,主站依据从站的呼应,能够得知从设备是否正确执行了刚刚发送的指令,这样就构成了一个交互式的操作。图1是完结主从通讯模型的示意图。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

1.2 MEWTOCOL-COM根本帧格局

MEWTOCOL-COM协议中规则了根本帧格局,根本帧格局有操控代码,包含了帧头、指令、正常呼应、过错呼应、完毕等字符,如表2所示。MEWTOCOL-COM的每次通讯都先由主站建议,主站建议指令帧,指令帧内容除了包含操控代码外,还包含一些特别标志码、PLC站号和呼号字符等[3]。表3是根本帧的格局。指令帧在文本区域中填写指令代码和操作地址,指令代码意义如表4所示。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

1.3 MODBUS RTU作业原理

自1979年来,MODBUS现已成为工业范畴通讯协议的业界规范,通过MODBUS衔接着百万台主动化设备之间的通讯。在OSI模型中,MODBUS坐落第7层,是一种使用层报文传输协议。

MODBUS在串行通讯办法下,通讯帧格局有两种:一种是主机建议的查询和指令从设备的格局,另一种是从设备收到主机指令后的应对格局[4]。通讯原理是选用恳求/应对的办法进行主从通讯,其作业原理如图2所示。MODBUS主站通过向相应物理地址的从站发送相应的操控信息进行总线数据的交互,一般选用的是一对多的物理衔接办法,其通讯的本质是主从1对1的恳求/应对办法的通讯进程[5]。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

当物理层为RS422或RS485的串行通讯办法下,MODBUS通讯协议有两种数据的收发办法,一种是RTU(Remote Terminal Unit)办法,别的一种是ASCII办法。与ASCII办法不同的是,RTU办法下的报文内容是按十六进制的字节办法进行收发,没有报文的开端和完毕符号。MODBUS协议规则,在工业总线上的一切设备,都必须支撑RTU办法,而ASCII通讯办法作为可选项,而非必选项。本文以RTU办法为研讨目标,树立MEWTOCOL-COM与MODBUS RTU报文的指令、地址映射联系,然后完结两种不同的总线协议的彼此转化。

在MODBUS RTU协议中,主机设备一般通过不同的功用码完结对位、字进行操作,这儿的功用码便是对应MEWTOCOL-COM中的指令。

1.4 指令映射表

为了完结MEWTOCOL-COM 协议与MODBUS 协议的彼此转化,首要创立指令对应表,如表5所示。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

1.5 地址映射表

MODBUS的地址编码是从1开端,并且分不同的地址段,MEWTOCOL-COM的地址是从0开端,要进行两者彼此之间的转化,MODBUS的地址是MEWTOCOL-COM的地址+1。转化联系如表6所示。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

2 FPGA完结规划

本文结合实践协议网关项目验证了一种依据FPGA的高速协议转化的规划计划,它以Altera公司Cyclone系列FPGA芯片为中心,选用原理图和Verilog HDL言语编程完结[4-8]。选用友晶供给的DE0-Nano开发板,合作开发软件Quartus II 13.0,规划了一个验证体系,体系选用固定波特率115 200 b/s,接纳MEWTOCOL-COM协议数据,运用8 bit数据位,1 bit中止位,无奇偶校验位。

转化后的MODBUS RTU协议报文,依照8 bit数据位,1 bit中止位的发送。

FPGA从串行端口接纳一帧MEWTOCOL-COM协议数据%10#RDD011050110757cr,标明读取站号为10的寄存器地址1105-1107三个字的内容,转化为MODBUS RTU报文后,为0A 03 04 52 00 03 A4 51。

2.1 顶层规划

图3是验证体系的顶层RTL视图,顶层总共有三个输入端口:clk,rst_n和rxd信号,别离标明FPGA的外部时钟输入,复位信号的输入(低电平有用)和串口接纳信号。顶层的两个输出端口,别离是数据输出有用信号d_valid和串口发送信号txd。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

顶层总共例化了4个独立模块,别离是pll,uart_receiver,cov_fp_mod和uart_transfer模块。

2.2 各模块阐明

(1)时钟模块PLL

PLL模块选用Altera公司供给的根底相环IP,输入时钟clk是50 MHz,通过PLL后,输出信号c0是波特率的采样时钟,本例中选用固定波特率115 200 b/s,因而,选用频率为波特率115 200的16倍,即1.843 2 MHz。

采样时钟c0作为模块的运转时钟,别离送到串行端口的收发数据模块。

(2)串口接纳数据模块uart_receiver

uart_receiver模块是从串行端口rxd信号中接纳串行数据,并转化成8 bit并行数据后从dout端口输出,一起模块将给出data_ready指示信号,标明串并转化完结1个字节的有用数据。

(3)协议转化模块cov_fp_mod

cov_fp_mod模块是从串口接纳数据模块中接纳并行的8 bit数据,一起依照MEWTOCOL-COM协议帧转化为MODBUS RTU协议帧的办法,将从头拼装数据,并实时地发送到串口发送数据模块。

(4)串口发送数据模块uart_transfer

串口发送数据模块是将协议转化模块输出的协议帧数据,进行并串转化,并发送到串行接口线路上。

2.3 SignalTap信号抓取

图4是通过Altera(现为Intel)公司的Quartus II软件信号抓取东西SignalTap,实时取得的FPGA的内部信号数据,其间rxd和txd为FPGA的串口输入和输出信号,i_data_d是来自MEWTOCOL-COM协议的做了同步处理后的并行数据,send_en是转化模块进行转化后使能数据输出的指示信号;o_data信号是协议转化模块的MODBUS RTU协议报文的输出并行数据;silent_interval_done信号是依据MODBUS RTU协议,发送数据报文前后至少要坚持3.5个字符时刻以内,串口总线坚持幽静,关于波特率为115 200 b/s时,要求这个时刻为1 750 μs。当总线上不满足幽静时刻时,信号silent_interval_done为低电平,否则为高电平,标明数据能够从串行端口上进行发送。信号t35_cnt是串口总线幽静时刻的累加寄存器值,当MODBUS RTU协议的数据从串行端口上发送完毕后,信号t35_cnt便开端从0计时,直到计满1 750 μs后,silent_interval_done信号才为高电平有用,标明串口发送总线上能够进行数据的传送了。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

SignalTap的采样时钟运用16x波特率的时钟,即1.843 2 MHz,每个时钟周期为0.542 5 μs。从接纳到MEWTOCOL-COM协议的数据到转化为MODBUS RTU的数据并发送,通过将SignalTap的数据导出为csv格局,得到从rxd信号接纳开端有用核算到协议转化发送txd信号有用输出,两者之间的时刻差2 212个时刻单位,每个时刻单位为0.542 5 μs,则协议转化并开端发送的时刻为0.542 5×2 212=1 200.01 μs。因而,协议转化时刻很短,并且不需求彻底接纳完好的一个MEWTOCOL-COM协议的报文才开端转化,硬件电路上能够在恰当的时刻内开端进行转化,大大节省了协议收发的时刻延时(协议转化的CRC核算为组合逻辑,时延为纳秒级,不影响整个转化时延)。

3 测验

假定PC按MEWTOCOL-COM协议从站号(设备地址)为10号(规模是1~32)的坚持寄存器DT1105号开端读取数据,直到读到寄存器1107号,指令帧:%10#RDD011050110757cr。

其间57是数据帧的BCC校验字段,cr是完毕符。

3.1 指令转化

依据指令对应联系,在读取坚持寄存器,MEWTOCOL-COM的RD指令对应MDOBUS RTU的03功用码。

3.2 地址转化

首要是站号的进制转化,MEWTOCOL-COM协议中是ASCII通讯,站号为10,对应到MODBUS RTU的十六进制格局便是0x0a。

其次是拜访的寄存器地址转化,在MEWTOCOL-COM协议中,拜访的是数据坚持寄存器DT1105~DT1107,开始寄存器地址是1105,完毕地址是1107,总共3个寄存器。在MODBUS RTU协议中,需求开始地址和拜访的寄存器数量,因而,依据表4,MOBUS RTU的地址是MEWTOCOL-COM的地址+1,DT1105的地址映射到MODBUS RTU地址,16位的十六进制便是0x0452。

最终是不同协议中地址字段的转化映射联系。MEWTOCOL-COM协议字段运用了开始地址和完毕地址,而MODBUS RTU协议中运用的是寄存器的开始地址和被拜访的寄存器的数量,因而,还要核算出实践的拜访寄存器的数量,1 107-1 105+1=3,转成16位的十六进制数据是0x0003,并填入MODBUS RTU协议字段中。

3.3 转化前后通讯帧

通过上述指令、地址和数据的转化和映射联系,由PC宣布的MEWTOCOL-COM协议的通讯帧指令%10#RDD011050110757cr,通过FPGA电路转化到从站号25号接纳到的MODBUS RTU协议通讯帧是(hex格局):0A 03 04 52 00 03 A4 51。

4 定论

本文在深化分析了MEWTOCOL-COM和MODBUS RTU两种现场总线通讯协议的根底上, 提出了依据FPGA架构的协议转化办法的硬件计划,方便快捷地完结了不同现场总线网络的互联互通,并能快速进行协议转化和收发,两者延时时刻约1 200 μs,FPGA的资源占用也比较小,图5是归纳后的实践逻辑数量,归纳代码现已包含了两者协议的彼此转化逻辑,试验验证了依据FPGA完结MEWTOCOL-COM与MODBUS RTU协议转化,达到了快速转化和收发的特色,为现场总线网关的规划供给了一个很好的处理计划。

以FPGA为根底的完结MEWTOCOL-COM与MODBUS RTU协议转化的办法规划

参考文献

[1] 梅恪,沈璞。关于总线国际规范IEC61158的研讨报告[J]。仪器仪表规范化与计量,2003(2):30-34.

[2] 王治灵。依据FPGA的多协议转化体系的研讨与规划[D]。成都:电子科技大学,2018.

[3] 高伟增,徐君鹏。松下PLC编程与使用(第二版)[M]。北京:机械工业出版社,2015.

[4] 于枫.ALTERA可编程逻辑器材使用技能[M]。北京:科学出版社,2004.

[5] 李洪伟,袁斯华。依据Quartus II的FPGA/CPLD规划[M]。北京:电子工业出版社,2006.

[6] 吴志杰,王新霞,孔凡敏,等。多路阻隔的Modbus协议转化器的规划[J]。电子技能使用,2016,42(10):77-79.

[7] 吴继华,王诚.Altera FPGA/CPLD规划[M]。北京:人民邮电出版社,2005.

[8] 夏宇闻.Verilog数字体系规划教程[M]。北京:北京航空航天大学出版社,2003.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/dianlu/89582.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部