首页> 中国专利> 支持RS485Modbus多主站数据采集的通信转换器

支持RS485Modbus多主站数据采集的通信转换器

摘要

一种支持RS485&Modbus多主站数据采集的通信转换器,它包括:ARM微处理器、电源/复位电路、备用链路、UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口,所述的电源/复位电路的信号输出端与ARM微处理器的信号输入端相连,所述的ARM微处理器的信号输出端与备用链路的信号输入端相连,ARM微处理器还与UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口相连接。该转换器以ARM微处理器为核心,配合外围硬件接口电路,实现了2个主站设备同时采集一条RS485&Modbus总线上的数据,从而保证每个主站所采集的数据原始、真实。

著录项

  • 公开/公告号CN102932222A

    专利类型发明专利

  • 公开/公告日2013-02-13

    原文格式PDF

  • 申请/专利权人 南京富岛信息工程有限公司;

    申请/专利号CN201210387472.8

  • 申请日2012-10-15

  • 分类号H04L12/40(20060101);

  • 代理机构32218 南京天华专利代理有限责任公司;

  • 代理人夏平

  • 地址 210061 江苏省南京市高新开发区桐雨路6号南京软件园B1&B2

  • 入库时间 2024-02-19 18:13:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-05-04

    授权

    授权

  • 2013-03-20

    实质审查的生效 IPC(主分类):H04L12/40 申请日:20121015

    实质审查的生效

  • 2013-02-13

    公开

    公开

说明书

技术领域

本发明涉及工业现场总线通信技术领域,实现了一种支持RS485&Modbus多主站数据采集的通信转换器。

背景技术

 Modbus串行协议最初由Modicon公司在1979年提出的,是全球第一个真正用于工业现场的总线协议,现在已经是工业领域全球最流行的通用工业标准协议之一。

Modbus串行通信使用主-从技术,即在一条RS485&Modbus总线上仅允许存在一个主站点与多个从站点间进行数字通信,Modbus的这种主-从通信协议决定了在任何时刻只能存在一个主站进行数据采集。

在工业生产过程控制或数据采集系统中,如不同的DCS系统,PLC系统等,多个主站点需要同时从一条RS485&Modbus总线上采集数据的情况很多,解决这种问题目前普遍的做法是让一个站点作为主站点,在其采集数据后,再经通讯发送到其它站点。但这种方法不能避免数据在中间环节会被人为篡改,无法保证数据的原始性和真实性,难以在对数据原始性和真实性要求很高的场合(如海关监管)应用。因而开发能够实现RS485&Modbus多主站数据采集的通信转换器,具有极高的应用价值。

发明内容

本发明提供的一种多主站RS485&Modbus数据采集设备,它能够实现多个主站同时采集一条RS485&Modbus总线上的数据,采用通用的硬件接口电路,具有实时性强、使用灵活等特点。

为达到上述目的,本发明提供的一种支持RS485&Modbus多主站数据采集的通信转换器,它包括:ARM微处理器、电源/复位电路、备用链路、UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口,所述的电源/复位电路的信号输出端与ARM微处理器的信号输入端相连,ARM微处理器的信号输出端与备用链路的信号输入端相连,ARM微处理器还与 UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口相连接,其中第一RS485&Modbus接口和第二RS485&Modbus接口分别用于与两主站相连,第三RS485&Modbus接口与现场仪表总线相连,所述的ARM微处理器包括:配置文件模块、从站A模块、从站B模块、采集数据模块、采集管理模块、Modbus协议栈模块和主站模块,所述的从站A模块和从站B模块分别与第一RS485&Modbus接口和第二RS485&Modbus接口相连,从相应的主站采集命令信号,并将该命令信号下发到采集管理模块,采集管理模块将命令信号下发到主站模块,主站模块将采集到的命令信号通过第三RS485&Modbus接口下发到各个仪表,并从仪表读取相应的请求数据,仪表数据通过采集管理模块返回给采集数据模块,采集数据模块将返回的仪表数据写入对应的从站数据区。

一种支持RS485&Modbus多主站数据采集的通信转换器,它是通过如下步骤来实现的多个主站同时采集一条RS485&Modbus总线上的数据的:

A、 设备上电,电源/复位电路提供设备工作所需各路电源,运行NORFLASH中所固化软件代码,复位并运行系统;

B、 系统正常运行后,通过计算机对设备进行基本参数配置;

C、 配置成功后,从站模块A与从站模块B通过不断读取其所对应的RS485&Modbus接口数据,来检测所对应主站是否有命令下发;

D、 若检测到主站A或主站B有数据下发,则将该数据接收后,存放于SDRAM,调用Modbus解析模块,根据《GBZ 19582.2-2004 基于Modbus协议的工业自动化网络规范》对该数据进行解析,若该数据为合法Modbus命令,则将该指令转发至采集管理模块,并等待该命令响应帧;若检测到主站A和B同时有数据下发,则根据系统设置的优先级来决定读取的先后顺序;

E、 采集管理模块将从站模块A与从站模块B所下发Modbus命令转发至主站模块,并等待主站模块返回该命令响应帧;

F、 主站模块将从采集管理模块获取的Modbus命令下发至仪表,等待仪表响应后,从仪表读取该Modbus命令的响应帧,根据《GBZ 19582.2-2004 基于Modbus协议的工业自动化网络规范》所规定校验方法对该响应帧校验成功之后,将此Modbus命令响应帧发送至采集管理模块;

G、 采集管理模块将所读取Modbus命令响应帧发送至此帧所对应的从站模块;

H、 从站模块A与从站模块B将Modbus将响应帧发送至各自相应的Modbus主站,并继续检测对应主站是否有命令下发,返回步骤D。

所述的备用链路包括监控电路和继电器,所述的监控电路的信号输入端与ARM微处理器的信号输出端相连,监控电路的信号输出端与继电器的线圈a相连,继电器的常开触点b分别与ARM微处理器和第三RS485&Modbus接口相连接,继电器的常闭触点c分别与第一RS485&Modbus接口和第三RS485&Modbus接口相连结,当系统异常时,ARM微处理器无信号输出,线圈a断电,常开触点b断开,常闭触点c闭合,现场仪表总线与主站A直接相连,保证数据的正常采集。

所述的UI电路上设置有指示灯,系统配置成功后,UI电路通过该指示灯通知用户配置成功。

所述的ARM微处理器采用的是AT91RM9200芯片。

ARM微处理器负责整个通信转换器的监督与控制;

电源/复位电路为通信转换器提供电源与复位逻辑,其中复位电路在转换器系统崩溃时实现外部复位功能;

备用链路在通信转换器故障时,直接把与仪表通信的RS485&Modbus 接口的两根连线,通过中间继电器的一对常闭触点,自动切换至与主站设备通信的RS485&Modbus接口的总线上,提供临时应急通信措施;

UI电路为用户提示设备运行时的各种工作状态;

SDRAM为系统运行提供内存空间;

NORFLASH作为外部存储器,为系统固化代码、掉电保存数据提供存储空间;

第一RS485&Modbus接口和第二RS485&Modbus接口负责与两个主站设备通信,第三RS485&Modbus接口负责与远程仪表通信;

配置文件模块用于配置设备文件,配置文件包括仪表接口参数,转换器主口参数,转换器从口参数等,配置文件烧录到NORFLASH中保存;

采集数据模块存储主站模块所采集的数据;

采集管理模块管理从站A模块和从站B模块下发的Modbus采集命令,并且管理主站采集的数据,更新采集数据模块内的数据;

Modbus协议栈模块解析Modbus主站模块以及从站A模块和从站B模块的通讯协议;

主站模块采取的是线程不断轮询从站A与从站B的命令区;若发现命令区中存在有效命令,则将此命令下发至Modbus总线;在读取到正确仪表数据后,将返回仪表的数据写入对应从站的数据区。

本发明利用硬件电路和软件电路相结合的方法实现了多主站的RS485&Modbus数据采集,具体而言,本发明具有以下有益效果:

1.实现了两个Modbus主站同时采集一条RS485&Modbus总线上的数据的功能,保证了每个站点采集数据的原始性和真实性,防止数据在中间环节被人为篡改。

2.实现了在通信转换器自身故障情况下,通过备用链路实现自动切换到主站的功能。

附图说明

图1为支持RS485&Modbus多主站数据采集的通信转换器应用系统的结构示意图。

图2为支持RS485&Modbus多主站数据采集通信转换器的模块结构图。

图3为支持RS485&Modbus多主站数据采集通信转换器的备用链路的结构示意图。

图4为支持RS485&Modbus多主站数据采集通信转换器的工作流程图。

具体实施方式

下面结合具体实例和附图,对本发明进行详细说明,本实施例中ARM微处理器采用AT91RM9200、SDRAM 采用K4S561632C、NORFLASH 采用28F128J3A。

如图1、2所示,一种支持RS485&Modbus多主站数据采集的通信转换器,它包括:ARM微处理器、电源/复位电路、备用链路、UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口,所述的电源/复位电路的信号输出端与ARM微处理器的信号输入端相连,ARM微处理器的信号输出端与备用链路的信号输入端相连,ARM微处理器还与 UI电路、SDRAM、NORFLASH、第一RS485&Modbus接口、第二RS485&Modbus接口和第三RS485&Modbus接口相连接,其中第一RS485&Modbus接口和第二RS485&Modbus接口分别用于与两主站相连,第三RS485&Modbus接口与现场仪表总线相连,所述的ARM微处理器包括:配置文件模块、从站A模块、从站B模块、采集数据模块、采集管理模块、Modbus协议栈模块和主站模块,所述的从站A模块和从站B模块分别与第一RS485&Modbus接口和第二RS485&Modbus接口相连,从相应的主站采集命令信号,并将该命令信号下发到采集管理模块,采集管理模块将命令信号下发到主站模块,主站模块将采集到的命令信号通过第三RS485&Modbus接口下发到各个仪表,并从仪表读取相应的请求数据,仪表数据通过采集管理模块返回给采集数据模块,采集数据模块将返回的仪表数据写入对应的从站数据区。 

本实施例中以集散控制系统(DCS)作为主站A,可编程控制器(PLC)作为主站B同时从现场仪表采集数据,仪表1、2 … N等一般为现场仪表,如温度传感器、压力传感器、液位传感器等。

如图3、4所示,当设备上电后,电源/复位电路为整个设备提供工作所需的各路电源同时复位整个系统,运行NORFLASH中所固化软件代码,运行系统。系统正常运行后,根据DCS、PLC以及仪表通讯相关参数,通过人机接口对设备进行基本参数配置,初始化三组RS485&Modbus总线的波特率、数据位、校验位、停止位等通讯参数,配置成功后,UI电路通过指示灯通知用户配置成功。

配置成功后多主站Modbus数据采集通信转换器中的从站模块A与从站模块B,通过不断读取其所对应的RS485&Modbus接口数据,来检测所对应主站是否有命令下发;若检测到主站A有数据下发,将该数据接收后,存放于SDRAM,调用Modbus解析模块,根据《GBZ 19582.2-2004 基于Modbus协议的工业自动化网络规范》对该数据进行解析,若该数据为合法Modbus命令,则将该指令转发至采集管理模块,并等待该命令响应帧;采集管理模块依次将从站模块A与从站模块B所下发Modbus命令转发至主站模块,并等待主站模块返回该命令响应帧;主站模块将从采集管理模块所获取的Modbus命令下发至仪表,等待仪表响应时间之后,从仪表读取该Modbus命令之响应帧,根据《GBZ 19582.2-2004 基于Modbus协议的工业自动化网络规范》所规定校验方法对该响应帧校验成功之后,将此Modbus命令响应帧发送至采集管理模块;采集管理模块将所读取Modbus命令响应帧发送至此帧所对应的Modbus命令下发从站模块;从站模块A与从站模块B将Modbus响应帧发送至各自Modbus主站设备(DCS与PCL),并继续检测对应主站是否有数据下发。

备用链路包括监控电路和继电器,所述的监控电路的信号输入端与ARM微处理器的信号输出端相连,监控电路的信号输出端与继电器的线圈a相连,继电器的常开触点b分别与ARM微处理器和第三RS485&Modbus接口相连接,继电器的常闭触点c分别与第一RS485&Modbus接口和第三RS485&Modbus接口相连结。当系统正常工作时,备用电路中的继电器的常开触点b处于闭合状态,常闭触点c处于断开状态;当系统工作异常时,备用链路中的监控电路接收不到来自ARM微处理器的信号,线圈a断电,继电器的常开触点b断开,常闭触点c闭合,使主站A与现场仪表总线直接连接,保证主站A所对应的DCS设备正常工作,实现数据的正常采集。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号