本发明属于电池管理系统技术领域,尤其涉及一种基于can总线的通讯系统。
背景技术:
动力电池作为电动汽车的核心部件,其安全性能电动至关重要。目前,一般采用电池管理系统来监视动力电池的电压、剩余电量、电流、温度等各种性能参数并根据相应的参数来控制动力电池以此保证动力电池的使用安全,电池管理系统与动力电池通过can总线来实现通讯,且电池管理系统预先安装一套应用程序来实现与动力电池的通讯及控制。然而,现有的电池管理系统,其接口为can接口,如需要电池管理系统观察到其内部的程序或者对电池管理系统实现读写控制或者对应用程序进行更新,则必须要带有can接口专用的设备,这些专用设备通常只有电池生产或维护厂商才有,不仅价格高且操作复杂。
技术实现要素:
本发明的目的在于针对以上存在的技术问题,提供成本低且使用方便的基于can总线的通讯系统。
为解决上述技术问题,本发明提供一种基于can总线的通讯系统, 包括上位机、usb-can接口卡以及下位机;所述上位机与usb-can接口卡通过usb协议进行通讯,所述usb-can接口卡与下位机通过can协议进行通讯;所述usb-can接口卡用于将usb协议数据包转换成can协议数据包,或者将can协议数据包转换成usb协议数据包;所述上位机与下位机通过所述usb-can接口卡进行通讯。
在一个优选实施方式中,所述上位机为电脑,其至少包括主机、显示器、键盘及鼠标。
在一个优选实施方式中,所述下位机为一电池管理系统。
在一个优选实施方式中,所述上位机还用于定义参数变量,每个参数变量在下位机均具有一存取指针地址。
在一个优选实施方式中,所述上位机还用于对下位机写入数据的命令进行解析并展示。
本发明的有益效果是:本发明通过usb-can接口卡实现上位机(即电脑)与下位机(即电池管理系统的通讯),不需要改变现有电池管理系统的硬件,也不需要专门的的设备即可实现对下位机的控制,成本低,使用方便。
附图说明
图1为本发明提供的一种基于can总线的通讯系统的架构图。
图2为本发明提供的一种基于can总线的通讯系统的工作流程图。
具体实施方式
为了使本发明的目的、技术方案和有益技术效果更加清晰明白,以下结合附图和具体实施方式,对本发明进行进一步详细说明。应当理解 的是,本说明书中描述的具体实施方式仅仅是为了解释本发明,并不是为了限定本发明。
如图1所示,为本发明提供的一种基于can总线的通讯系统100,包括上位机10、usb-can接口卡20以及下位机30。
所述上位机10为电脑例如台式电脑或笔记本电脑,其至少包括主机、显示器、键盘及鼠标(图未示)。
所述usb-can接口卡20是一款用于个人电脑的usb形式的can接口卡。usb-can接口卡的一般用途有:1)基于个人电脑的can报文检测和监控。(2)基于pc的canopen类的软plc控制。(3)基于pc的canopen的信号。(4)基于can-bus的fcs系统(focuscontrolsystem,集中式控制系统)配合远程i/o系统。usb-can常见有2种等级:(1)工业级(因为现场环境比较恶劣,所以抗干扰能力要求高,温度范围也要求较高,一般为-45度至+80度);(2)商用级(用于实验室等现场环境较好的场合,所以防护等级要求较低,温度范围大概是-10度到+60度)。本实施方式中,usb-can接口卡20采用商用级且用于实现基于个个电脑的can报文件检测和监控功能。所述usb-can接口卡20通过usb总线与上位机10连接。
所述下位机30为一电池管理系统,所述电池管理系统30用于连接至电动汽车的动力电池(图未示),用于监视动力电池的电压、剩余电量、电流、温度等各种性能参数并根据相应的参数来控制动力电池以此保证动力电池的使用安全,电池管理系统与动力电池通过can总线来实现通讯。所述电池管理系统通过can总线与usb-can接口卡20连接。
使用时,所述上位机10与usb-can接口卡20通过usb协议进行 通讯,所述usb-can接口卡20与下位机30通过can协议进行通讯。所述usb-can接口卡20用于将usb协议数据包转换成can协议数据包,或者将can协议数据包转换成usb协议数据包。所述上位机10还用于定义参数变量,每个参数变量在下位机均具有一存取指针地址。
如图2所示,在实现上位机10对下位机30的读写控制时,首先,上位机输入新增变量,所述新增变量即上位机10上位机已经定义好的参数变量,然后通过上位机输入选择数据类型(例如长整型、短整型、浮点数点数据类型)并输入变量的指针地址,由上位机打包命令通过usb协议与usb-can接口卡进行底层数据交互,usb-can接口卡将接收到上位机的usb协议数据转换为can协议数据并与下位机通过can协议与下位机进行底层数据交互,下位机接收到经usb-can接口卡转发的上位机的打包命令后进行解析,判断是否为“读”命令,若是,则计算指针地址,获取参数变量的数据后选择数据长度,可以分别以1字节、2字节或4字节进行数据读取。判断是否为“读”命令,若否,则进行“写”操作,先计算指针地址获取参数变量的数据后选择数据长度,可以分别以1字节、2字节或4字节进行数据写入。完成数据写入后,下位机将写入数据进行命令打包通过can协议与usb-can接口进行底层数据交互,usb-can接口卡将接收到下位机的can协议数据转换为usb协议数据并与上位机通过usb协议与上位机进行底层数据交互,上位机对写入数据的命令进行解析并展示(例如通过显示器展示)。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的 专利保护范围内。