位置:51电子网 » 技术资料 » 嵌入式系统

利用MODBUS提高多CPU协同开发效率

发布时间:2008/5/27 0:00:00 访问次数:424

在电力系统微机综合保护和自控装置以及其它工业自动化控制领域,微控制器的应用越来越广泛,其装置的复杂性也越来越高。为了解决其开发对象实时多任务性的要求,单cpu、单入开发的模式下在被多个、多类型cpu和多人协同开发的模式所代替。在这新的开发模式中,面临一个新问题——在实施信息交互的过程中如何将实现cpu之间信息交互的软硬件标准化,这是关系到该模式能否成功实施的关键。在众多的通信方式中,基于uart的rs-485串行通信模式以其连线简捷、可靠性高和可带动多cpu、多设备级连的能力而被广泛采用。在软件通信协议的选择上,modbus协议由于其通用、成熟的第三方标准测试软件,为用户使用提供了诸多优势。因此,在开发新型电动机综合保护装置th21-4m的过程中,采用rs-485串行通信方式和modbus通信协议,实现了多cpu之间的数据和控制命令的信息交互。为了增强串行通信的高效、协调性,笔者在通信机制的软硬件结构上采取了很多措施,并取得了很好的效果。在调试系统通信阶段,使用了各cpu模块先与modbus标准测试软件通信,之后再互相联调的方法,大大提高了协同开发的效率。实践证明,该设计思想简化了系统的结构,大大提高了装置的运行效率和可靠性。本文将结合th21-4m的设计思路,从硬件设计和软件规划两方面,介绍如何利用modbus通信协议,实现多cpu结构的协同开发。

1 th21-4m电动机综合保护装置的特点

th21-4m电动机综合保护装置综合保护功能以外,兼有测量、远动和通信的功能;大屏幕的汉字液晶显示,可以实现友好的人机界面;利用can总线,与监控主机进行通信,从而构成分级分散式的变电站综合自动化系统的子系统。

在设计上,由于装置需要实现多任务,为了优化系统功能,采用了多cpu的系统结构。其中一个cpu负责定时采样脉冲发送;主cpu模块负责数据处理、电量计算、故障判断和开关操作;而板模块上cpu负责人机交互,并实现与主保护模块和监控主机的通信任务。各个cpu模块有明确的任务分工,研制时也容易实现多人协同开发。在整个构成中,串行通信沟通了主cpu和面板cpu,使人机交互成为可能,因而点有重要的地位。建立合理的通信机制则是串行通信部分的核心的所在,它决定着通信的协调性和系统开发后期调试的效率。

2 通信机制介绍

2.1 通信机制硬件设计原理

本系统通信机制的提出以高效、可靠为目的。rs-485为半双工结构,现场中比全双工往往更接近于实用,在此采用只有2条信号线的最简型连接。系统接口电路图由图1所示。主保护模块上的80c196单片机输出的ttl逻辑电平通过光电隔离后,由max485芯片转换为rs-495电平,再由面板模块上的max485芯片转换为ttl逻辑电平,由80c31单片机读取;以之亦然。在80c196单片机一侧,使用并行输入输出口2(io_port2)的一位p2.7对max输入使能端re、输出使能端de进行控制。由图1可知,当p2.7输出高电平时,re使能,单片机一侧接收数据;当p2.7输出低电平时,de使能,单片机一侧发送数据。这样,避免了盲目发送造成的数据叠加丢失现象,通信质量高,通信速度也能得到保证。

2.2 通信协议介绍

为了保证保护装置中两个模块之间能够正确地传递数据,必须有一套关于信息传输的模式、数据格式和内容等的规定,即规约[1]或通信协议。虽然保护装置内部的通信相对简单,两具模块之间传递的数据也不是很多,但是自定义内部通信协议的弊端是很明显的。首先,自定义通信协议很难在时序、任务的协调上配合得很好,数据传送的可靠性也难以保证;首次,由于没有现成的较成熟的调试软件,主cpu模块基本是黑匣子,系统联调时的困难较多且难以克服。因此,采用了当前流行的modbus通信协议,并结合本装置的特点加以简化,从而实现了模块间的通信,事实证明效果很好。

modbus的通信方式为主从方式[2]。主方首先向从方发送通信请求指令,从方根据请求指令中的功能码向主方发回数据。每个从方都有自己独立的地址。主方所发的请求帧和从方所发的应答帧都是以从方地址开头的。从方只读发给自己的指令,对以其他从方地址开头的报文不作应答。这种一问一答的通信模式,大大提高了通信的正确率。但对于微机保护来说,该主从方式也存在着弊端,即当保护主模块进行保护动作后,无法立刻向上位机传送故障信息,只能由上位机不断向保护主模块询问保护是否动作,若有,则再进一步要求具体故障信息。

modbus有rtu(remote terminal unit)和ascii两种传送方式。为了保证较高的通信速度,采用了rtu方式,数据字节无奇偶校验位,加上起始、终止位后字节长度为10bit,数据间隔在24bit以内,采用循环冗余检验方式对报文进行校验。

modbus典型的报文格式如下:

一个通信报文的具体内容取决于该指令字符串的功能

在电力系统微机综合保护和自控装置以及其它工业自动化控制领域,微控制器的应用越来越广泛,其装置的复杂性也越来越高。为了解决其开发对象实时多任务性的要求,单cpu、单入开发的模式下在被多个、多类型cpu和多人协同开发的模式所代替。在这新的开发模式中,面临一个新问题——在实施信息交互的过程中如何将实现cpu之间信息交互的软硬件标准化,这是关系到该模式能否成功实施的关键。在众多的通信方式中,基于uart的rs-485串行通信模式以其连线简捷、可靠性高和可带动多cpu、多设备级连的能力而被广泛采用。在软件通信协议的选择上,modbus协议由于其通用、成熟的第三方标准测试软件,为用户使用提供了诸多优势。因此,在开发新型电动机综合保护装置th21-4m的过程中,采用rs-485串行通信方式和modbus通信协议,实现了多cpu之间的数据和控制命令的信息交互。为了增强串行通信的高效、协调性,笔者在通信机制的软硬件结构上采取了很多措施,并取得了很好的效果。在调试系统通信阶段,使用了各cpu模块先与modbus标准测试软件通信,之后再互相联调的方法,大大提高了协同开发的效率。实践证明,该设计思想简化了系统的结构,大大提高了装置的运行效率和可靠性。本文将结合th21-4m的设计思路,从硬件设计和软件规划两方面,介绍如何利用modbus通信协议,实现多cpu结构的协同开发。

1 th21-4m电动机综合保护装置的特点

th21-4m电动机综合保护装置综合保护功能以外,兼有测量、远动和通信的功能;大屏幕的汉字液晶显示,可以实现友好的人机界面;利用can总线,与监控主机进行通信,从而构成分级分散式的变电站综合自动化系统的子系统。

在设计上,由于装置需要实现多任务,为了优化系统功能,采用了多cpu的系统结构。其中一个cpu负责定时采样脉冲发送;主cpu模块负责数据处理、电量计算、故障判断和开关操作;而板模块上cpu负责人机交互,并实现与主保护模块和监控主机的通信任务。各个cpu模块有明确的任务分工,研制时也容易实现多人协同开发。在整个构成中,串行通信沟通了主cpu和面板cpu,使人机交互成为可能,因而点有重要的地位。建立合理的通信机制则是串行通信部分的核心的所在,它决定着通信的协调性和系统开发后期调试的效率。

2 通信机制介绍

2.1 通信机制硬件设计原理

本系统通信机制的提出以高效、可靠为目的。rs-485为半双工结构,现场中比全双工往往更接近于实用,在此采用只有2条信号线的最简型连接。系统接口电路图由图1所示。主保护模块上的80c196单片机输出的ttl逻辑电平通过光电隔离后,由max485芯片转换为rs-495电平,再由面板模块上的max485芯片转换为ttl逻辑电平,由80c31单片机读取;以之亦然。在80c196单片机一侧,使用并行输入输出口2(io_port2)的一位p2.7对max输入使能端re、输出使能端de进行控制。由图1可知,当p2.7输出高电平时,re使能,单片机一侧接收数据;当p2.7输出低电平时,de使能,单片机一侧发送数据。这样,避免了盲目发送造成的数据叠加丢失现象,通信质量高,通信速度也能得到保证。

2.2 通信协议介绍

为了保证保护装置中两个模块之间能够正确地传递数据,必须有一套关于信息传输的模式、数据格式和内容等的规定,即规约[1]或通信协议。虽然保护装置内部的通信相对简单,两具模块之间传递的数据也不是很多,但是自定义内部通信协议的弊端是很明显的。首先,自定义通信协议很难在时序、任务的协调上配合得很好,数据传送的可靠性也难以保证;首次,由于没有现成的较成熟的调试软件,主cpu模块基本是黑匣子,系统联调时的困难较多且难以克服。因此,采用了当前流行的modbus通信协议,并结合本装置的特点加以简化,从而实现了模块间的通信,事实证明效果很好。

modbus的通信方式为主从方式[2]。主方首先向从方发送通信请求指令,从方根据请求指令中的功能码向主方发回数据。每个从方都有自己独立的地址。主方所发的请求帧和从方所发的应答帧都是以从方地址开头的。从方只读发给自己的指令,对以其他从方地址开头的报文不作应答。这种一问一答的通信模式,大大提高了通信的正确率。但对于微机保护来说,该主从方式也存在着弊端,即当保护主模块进行保护动作后,无法立刻向上位机传送故障信息,只能由上位机不断向保护主模块询问保护是否动作,若有,则再进一步要求具体故障信息。

modbus有rtu(remote terminal unit)和ascii两种传送方式。为了保证较高的通信速度,采用了rtu方式,数据字节无奇偶校验位,加上起始、终止位后字节长度为10bit,数据间隔在24bit以内,采用循环冗余检验方式对报文进行校验。

modbus典型的报文格式如下:

一个通信报文的具体内容取决于该指令字符串的功能

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!