一种多路并行CAN转以太网的方法及系统与流程

文档序号:22171316发布日期:2020-09-11 21:15阅读:438来源:国知局
一种多路并行CAN转以太网的方法及系统与流程

本发明涉及通讯技术领域,尤其涉及一种多路并行can转以太网的方法及系统。



背景技术:

工业现场经常使用总线设备进行组网通讯,而非现在普通用户常用的以太网。总线网络中,can总线网络是一种常见的结构。最初can(controllerareanetwork)是用于汽车电路的通讯协议,但由于其可靠性现如今已被广泛用于各种自动化设备中。在can总线网络结构中,设备通讯方式为多主模式:所有设备连接在同一条总线上,空闲时所有设备均可以发送消息(相比主从模式下,只有特定主机能够发送消息并申请回信)。应用于检测系统时,一般是在检测设备上装有can通讯模块,检测设备收集到信息后通过can模块发送到总线另一端的信息处理中心,再由信息处理中心将信息以其他形式传输到用户设备上。

使用can网络的检测设备、系统已有较多成熟产品,但常见设备受限于can协议,单套设备总线与端口数量有限,无法满足部分生产现场待测设备的数量需求,使用多组系统协同工作会导致成本暴增。为此,我们提出一种多路并行can转以太网的方法及系统。



技术实现要素:

基于背景技术存在的技术问题,本发明提出了一种多路并行can转以太网的方法及系统,具有将12路can总线进行并网,将数据以以太网形式封装起来传递给上位机,实现高速数据采集的特点,解决了现有设备总线与端口数量有限,无法满足部分生产现场待测设备的数量需求的问题。

本发明提供如下技术方案:

一种多路并行can转以太网的方法,包括如下步骤:通过多块控制芯片处理can总线通信,每条can总线连接20个监控节点,控制芯片采用spi接口实现can总线并网,选用一块可编程逻辑器件实现3路spi并网设计,在数据输出端采用并口总线与上一级芯片通信。

优选的,所述控制芯片采用arm芯片,所述控制芯片用于将can总线子网数据传输到spi接口。

一种多路并行can转以太网的系统,包括以太网、可编程逻辑器件和arm芯片;

所述arm芯片包括arm1芯片、arm2芯片、arm3芯片和arm4芯片,所述arm1芯片、arm2芯片和arm3芯片中每一个芯片将4条can总线的子网数据到spi接口,每条can总线连接20个监控节点;

所述可编程逻辑器件通过三个spi接口分别与arm1芯片、arm2芯片和arm3芯片连接通信,所述可编程逻辑器件与arm4芯片采用地址数据总线形式通信,所述arm4以以太网的接口与工控机通讯。

优选的,还包括静态随机存取存储器,所述静态随机存取存储器用于存储can总线收集到的数据。

优选的,还包括数据采集模块,所述数据采集模块利用上位机通过网口下发指令给can信息采集卡,经过协议转换最后通过can总线传递给综合测量装置。

优选的,还包括节点工作状态显示模块,当can智能节点物理连接不牢靠,没有接入can网络时,节点工作状态显示模块显示节点掉线。

优选的,还包括io卡,所述io卡通过can接口与can信息采集卡通信。

优选的,还包括修改can总线波特率模块,所述修改can总线波特率模块利用上位机下发指令给arm4芯片,arm4芯片自带一块内存为4kb的eeprom存储器,arm4芯片收到上位机下发指令,修改eeprom特定地址的值,然后重新给板卡上电,上电时首先判断eeprom存储器里面存储波特率的数值,然后通过两根引脚将信号传递给arm1芯片、arm2芯片和arm3芯片,使其波特率初始化与系统相匹配。

本发明提供了一种多路并行can转以太网的方法及系统,采用12路can总线并行工作,市面上没有同时采集这么多can总线的产品,并且所有的数据都在板级处理,效率很高;数据向上传递,125kbps的can、4mbps的spi、30mbps的并口,最后汇成以太网,底层can传输的速率才是速度的瓶颈,上层协议转换不会影响数据流的传输效率;中间一层的cpld,生产现场用到的设备越来越多,本文提到的监控系统,在老一期也有相同功能的产品,但是整个监控网络的覆盖面积提高了4倍,速度快了5倍,随着节点的增加,中间这块cpld可以极大的增强整个系统的扩展性;板级通讯,最后留出以太网的接口,以高速、便捷的方式与工控机进行交互,也可以对整个大的监控系统进行环网设计。

附图说明

图1为本发明网络架构图;

图2为现有技术ttcan的总线利用率示意图;

图3为本发明改进后的总线利用率示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-3,本发明提供一种技术方案:

一种多路并行can转以太网的方法,包括如下步骤:通过多块控制芯片处理can总线通信,每条can总线连接20个监控节点,控制芯片采用spi接口实现can总线并网,选用一块可编程逻辑器件实现3路spi并网设计,在数据输出端采用并口总线与上一级芯片通信。

所述控制芯片采用arm芯片,所述控制芯片用于将can总线子网数据传输到spi接口。

一种多路并行can转以太网的系统,包括以太网、可编程逻辑器件和arm芯片;

所述arm芯片包括arm1芯片、arm2芯片、arm3芯片和arm4芯片,所述arm1芯片、arm2芯片和arm3芯片中每一个芯片将4条can总线的子网数据到spi接口,每条can总线连接20个监控节点;

所述可编程逻辑器件通过三个spi接口分别与arm1芯片、arm2芯片和arm3芯片连接通信,所述可编程逻辑器件与arm4芯片采用地址数据总线形式通信,所述arm4以以太网的接口与工控机通讯。

每个监控节点的需要传输的信息为56bit,加上8bit功能码,总共64bit,can总线通信一帧数据传输最大数据为64bit,可以一帧数据传递完成。can标准帧数据域长度为64bit,加上地址信息等其它传输位总共差不多125bit。系统要求can传输速率为125kbps,这样每一个监控节点在总线上传输的时间位1ms。这种情况下,整个监控系统数据更新的理想速度为4.8s,这还不包括指令下发的时间。甲方对监控系统数据采集速率的要求为4s之内所有在上位机上得到更新。故此采用多路can总线并网的设计,使数据可以并行传输。因此需要对can节点进行子网的划分,最终结合现场施工和传输的快速性,本设计采用的是12个子网的设计。要解决的问题就是如何将这12路can总线进行并网,将数据以以太网形式封装起来传递给上位机,实现高速数据采集。

对12路can总线进行并网。目前半导体厂商的控制器,一般只包含2个can控制器,最多的can专用芯片也只有4个can控制器,因此还需要一级的协议转换,使12路can总线并网。can通信的波特率现场要求为125kbps,要想实现并网数据采集,中间层的通信速率要远大于can通信速率。spi接口实现简单,占用资源不多,并且通信速率快。因此can总线并网的下一级通信方式为spi接口,总共有三个spi接口。

底层通过多块控制芯片处理can总线通信,控制芯片采用spi接口实现can总线并网,一般的arm芯片只有2个spi接口,因此选用一块可编程逻辑器件(cpld)来实现3路spi并网设计,由于cpld实现以太网应用层协议难以实现,不能直接将spi数据转换层以太网报文,在数据输出端采用速率更快的并口总线来与上一级芯片通信。在结构上实现12*can->3*spi->并口总线->以太网。

芯片选型上,设计arm与cpld的组合,使用3片can专用芯片,arm1-arm3实现can总线子网数据到spi接口数据传输。以arm1为例,内部集成4个can控制器,作为每条can总线的主机,通过主节点发送命令请求,采集can总线上智能节点的数据。通过spi接口将can总线采集的数据上传,同时spi接收下发的指令,指令译码之后通过can总线发送给目标智能节点。通过3路spi的形式与cpld连接通信,在cpld中构建spi从机接收发送模块,spi通信的波特率是4mbps,同时对数据进行缓存,然后提供并行总线接口与arm4进行数据交换。cpld与顶层arm4采用地址数据总线形式通信,arm4有emc(外部存储接口),将cpld当成一片sram处理,数据传输可达到30mbps,考虑到本设计的数据量较大,外扩一块sram,将can总线收集到的数据按照设计的数据结构存储到外扩的sram中,最后arm4以以太网的接口与工控机通讯,实现整个系统的集中监控。

静态随机存取存储器,所述静态随机存取存储器用于存储can总线收集到的数据。

数据采集模块,所述数据采集模块利用上位机通过网口下发指令给can信息采集卡,经过协议转换最后通过can总线传递给综合测量装置。综合测量装置的数据回包,通过can总线传输给板卡,最终以以太网的形式传给上位机。同时将收集的数据进行存储,对数据进行故障判断,并发送相应的报警信息。对已经有故障或者处于其它状态的监控节点,可以单独设置相应的工作状态,比如说屏蔽该机组,则不判断当前节点是否异常。

节点工作状态显示模块,当can智能节点物理连接不牢靠,没有接入can网络时,节点工作状态显示模块显示节点掉线。当can智能节点物理连接不牢靠,没有接入can网络时,系统需要在底层can协议中判断节点掉线,该功能在设备现场安装的时候意义尤为重大。

io卡,所述io卡通过can接口与can信息采集卡通信。io卡功能包括io输入检测,例如切换节点工作状态;显示工作状态,包括报警信号灯、工作状态信号灯。另一个重要的功能是检测给监控节点供电的电源是否异常,电源正常的工作状态是380v,1600hz。io卡通过一个变压器对380v的供电电源进行处理,得到1.5v左右的交流电,然后对交流电进行滤波和处理得到方波,以测量电压和频率。

修改can总线波特率模块,所述修改can总线波特率模块利用上位机下发指令给arm4芯片,arm4芯片自带一块内存为4kb的eeprom存储器,arm4芯片收到上位机下发指令,修改eeprom特定地址的值,然后重新给板卡上电,上电时首先判断eeprom存储器里面存储波特率的数值,然后通过两根引脚将信号传递给arm1芯片、arm2芯片和arm3芯片,使其波特率初始化与系统相匹配。

本发明中,监控的节点是生产车间内若干个节点组成的物理上的集合,本发明可以监测4800个节点的工作状态,包括节点状态、反馈的电压、电流等信息,现有综合测量装置,测量20个监控节点的信息,每个综合测量装置留出来的通信接口是can接口,本发明的监控系统总共需要240个综合测量装置,能实现高速的采集这240个can节点的所有信息,解决了现有设备总线与端口数量有限,无法满足部分生产现场待测设备的数量需求的问题。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1