CN110099033A - 一种下位机架构及canfd总线数据库的硬件实时查询方法 - Google Patents
一种下位机架构及canfd总线数据库的硬件实时查询方法 Download PDFInfo
- Publication number
- CN110099033A CN110099033A CN201810090274.2A CN201810090274A CN110099033A CN 110099033 A CN110099033 A CN 110099033A CN 201810090274 A CN201810090274 A CN 201810090274A CN 110099033 A CN110099033 A CN 110099033A
- Authority
- CN
- China
- Prior art keywords
- message
- bus
- signal
- transceiver
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 13
- 230000003321 amplification Effects 0.000 claims description 2
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 2
- 238000012856 packing Methods 0.000 abstract 3
- 230000005540 biological transmission Effects 0.000 abstract 2
- 238000004806 packaging method and process Methods 0.000 abstract 1
- 238000004321 preservation Methods 0.000 abstract 1
- 238000004590 computer program Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种下位机架构及CANFD总线数据库的硬件实时查询方法,下位机包括CAN FD收发器、Json 格式CAN FD总线数据库、Json解析器、报文解析器、报文打包器。Json解析器通过解析Json 格式CAN FD总线数据库文件,生成发送报文定义和接收信号定义;报文解析器根据接受信号定义将CAN FD收发器报文解析,建立接收的所有CAN FD报文列表;报文打包器根据发送报文定义自动打包信号为报文,打包后的报文通过CAN FD收发器发送到CAN FD总线上,建立其所要发送的所有CAN FD报文列表。本发明克服了基于CAN FD总线数据保存和访问问题,构建了一个简单易于解析的CAN FD总线数据库格式,可使下位机能自动读取数据库文件,实时解析从总线上接收到的报文,自动发送数据库文件中所要求发送的报文。
Description
技术领域
本发明涉及计算机硬件技术领域,尤其涉及一种下位机架构及CANFD总线数据库的硬件实时查询方法。
背景技术
现有的CAN FD总线数据库都是基于上位机PC设计的关系型数据库,或者是基于专有文件格式的CAN FD数据库。关系型数据库通常由若干张表组成,如信号表、报文表和节点表。信号表包含网络中所有信号的定义,包括信号名、信号长度、字节序、最大值、最小值、放大因子、偏移量、单位和注释等字段;报文表包含网络中可能出现的所有报文定义,每个报文均包含了相应信号,这些信号的定义可以在信号表中找到;节点表中包含了整个网络中所有节点的定义,每个节点均包含了其发送的报文和接受的信号,相应的报文和信号可以在报文表和信号表中找到具体定义。基于专有文件格式的CAN FD数据库与关系型数据库相类似,通过特殊的字符标识出节点列表、报文列表、信号列表以及注释列表等等。基于这些数据库,上位机PC的CAN FD网络监控程序可以将接收到的CAN FD报文解析成所需要的信号,CAN FD控制程序根据CAN FD总线数据库可以主动构建和发送相应的CAN FD报文给下位机,CAN FD仿真程序可以根据数据库模拟多个CAN FD节点之间CAN FD报文的发送和接收。
现有技术中存在的缺点是:
1、基于关系型数据库的CAN FD总线数据库虽然实现方便,但需要CAN FD网络监控仿真软件集成数据库引擎;基于专有文件格式的CAN FD总线数据库往往需要CAN FD网络监控仿真程序集成复杂的文件解析程序;上述方法均会导致上位机软件的复杂性;
2、数据库引擎或者是文件解析程序由于其复杂性,难以移植到下位机程序中,因此往往需要针对不同的CAN FD网络编写不同的CAN FD报文发送和接收解析程序,增加了下位机软件开发与测试的复杂性;
3、当CAN FD网络数据库发生变更时,如增加或删除了一些信号或报文,往往需要重新编写下位机程序的CAN FD报文发送和接收解析程序,这样难以应对频繁的变更需求。
发明内容
本发明针对上述现有技术的不足,提供了一种下位机架构及CANFD总线数据库的硬件实时查询方法,其克服了基于CAN FD总线数据保存和访问的问题,构建了一个简单且易于解析的CAN FD总线数据库格式,使得相关的CAN FD数据可以得到高效的管理,同时可以使得下位机能自动读取此数据库文件,实时解析从总线上接收到的报文,自动发送数据库文件中所要求发送的报文。
为解决现有技术中存在的问题,采用的具体技术方案是:
一种下位机架构,其包括CAN FD收发器、Json 格式CAN FD总线数据库、Json解析器、报文解析器、报文打包器;其中,
CAN FD收发器:与CAN FD总线、报文解析器、报文打包器均相连,用于将从CAN FD总线接收到的报文传递给报文解析器,并用于将经报文打包器打包成的报文通过CAN FD收发器发送至CAN FD总线;
Json 格式CAN FD总线数据库:与Json解析器相连,用于存储CAN FD网络数据库文件;
Json解析器:其输入端与Json格式 CAN FD总线数据库相连,用于读取并解析Json格式CAN FD总线数据库的文件,生成当前下位机节点的发送报文的定义和接收信号的定义;其输出端与报文打包器和报文解析器均相连,用于将发送报文的定义和接收信号的定义分别传递给报文打包器和报文解析器;
报文解析器:与Json解析器和CAN FD收发器均相连,报文解析器根据从Json解析器所接收到的接收信号的定义,将CAN FD收发器从CAN FD总线接收到的报文进行解析;
报文打包器:与Json解析器和CAN FD收发器相连,其根据从Json解析器所接收到的发送报文定义,将信号打包成报文,并通过CAN FD收发器发送到CAN FD总线上。
优选的方案,所述Json格式CAN FD总线数据库的文件存储在Flash存储器内,当CAN FD总线数据库定义发生更改时,将数据库文件重新写入Flash存储器。
进一步优选的方案,所述Json 格式CAN FD总线数据库包括节点列表对象、报文列表对象和信号列表对象。所述节点列表对象包含整个网络中可能出现的所有节点的定义,包括节点名称、节点注释,以节点名为键。所述信号列表对象包含了整个网络中可能出现的所有信号的定义,包括信号名、信号长度、字节序、最小最大值、放大因子、偏量、单位、信号注释,以信号名为键。所述报文列表对象包含了整个网络中可能出现的所有报文的定义,包括报文名称、报文标识符、报文数据长度、报文注释,为报文标识符为键。
本发明还提供了一种下位机架构及CANFD总线数据库的硬件实时查询方法,其包括以下步骤:
S1、Json解析器通过解析Json 格式CAN FD总线数据库的文件,生成当前下位机节点的发送报文的定义和接收信号的定义;
S2、报文解析器根据生成的报文信号的定义,将CAN FD收发器从CAN FD总线接收到的报文进行解析,从而建立其所接收的所有CAN FD报文列表;
S3、报文打包器根据当前节点发送报文的定义,自动打包信号为报文;自动打包后的报文通过CAN FD收发器发送到CAN FD总线上,从而建立其所要发送的所有CAN FD报文列表。
其中,所述Json 格式CAN FD总线数据库的文件包含有信号列表对象、报文列表对象和节点列表对象;所述信号列表对象内可以定义任意个独立信号;所述报文列表对象内可以定义任意个独立报文,每个独立报文内部包含其所装载的独立信号;所述节点列表对象内可以定义任意个独立节点,每个独立节点内部包含其所发送和接收的报文信号列表。
通过采用上述方案,本发明的一种下位机架构及CANFD总线数据库的硬件实时查询方法与现有技术相比,其技术效果在于:
1、本发明克服了基于CAN FD总线数据保存和访问的问题,构建了一个简单且易于解析的CAN FD总线数据库格式,使得相关的CAN FD数据可以得到高效的管理,同时可以使得下位机能自动读取此数据库文件,实时解析从总线上接收到的报文,自动发送数据库文件中所要求发送的报文。
2、本发明可以实现CAN FD总线数据库的硬件实时查询,Json格式由于其简单性可以很容易在下位机实现其解析,其强大性足以描述CAN FD数据库;因此可以由下位机根据Json格式的CAN FD数据库实现CAN FD报文的接收解析和发送,并且当CAN FD网络定义发生变化时能够自动地正确接收发送CAN FD报文,节省了开发测试的成本。
附图说明
图1为本发明实施方式中下位机的总架构图;
图2本发明实施方法中CAN FD总线数据库的总架构图。
图中标号为:101、下位机;102、CAN FD收发器;103、Json格式CAN FD总线数据库;104、Json解析器;105、报文解析器;106、报文打包器;107、CAN FD总线CANH;108、CAN FD总线CANL;109、信号列表对象;110、报文列表对象;111、节点列表对象;201-206、独立信号;301-303、独立报文;501、独立节点;401、节点发送报文列表对象;402、节点接收信号列表对象。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实例并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
本发明为了克服基于CAN FD总线数据保存和访问的问题,构建了一个简单且易于解析的CAN FD总线数据库格式,使得相关的CAN FD数据可以得到高效的管理,同时可以使得下位机能自动读取此数据库文件,实时解析从总线上接收到的报文,自动发送数据库文件中所要求发送的报文。
如图1所示,下位机总架构包括下位机101,下位机101包括CAN FD收发器102,Json格式CAN FD总线数据库103,Json解析器104,报文解析器105,报文打包器106,CAN FD总线CANH107,CAN FD总线CANL108。Json格式CAN FD总线数据库103与Json解析器104相连,Json解析器104的输出端与报文解析器105和报文打包器106均相连,CAN FD收发器102与报文解析器105也相连,报文打包器106的输出端与CAN FD收发器102相连,CAN FD收发器102与CANFD总线CANH107和CAN FD总线CANL108相连。
Json格式CAN FD总线数据库103的文件存储在Flash存储器内,当CAN FD总线数据库定义发生更改时可以将数据库文件重新写入。
下位机程序中的Json文件解析器104可以实时读取并解析Json数据库,生成当前下位机节点的发送报文的定义和接收信号的定义,分别传递给下位机程序中的报文打包器106和报文解析器105。下位机程序中的报文解析器105根据接收信号的定义将CAN FD收发器102从CAN FD总线(CAN FD总线CANH107和CAN FD总线CANL108)接收到的报文解析,下位机程序中的报文打包器106根据发送报文定义将信号打包成报文,并通过CAN FD收发器102发送到CAN FD总线(CAN FD总线CANH107和CAN FD总线CANL108)上。在图2中,创建Json格式CAN FD总线数据库文件(103),其内包含信号列表对象109、报文列表对象110和节点列表对象111。信号列表对象109内可以定义任意个独立信号201-206。报文列表对象110内可以定义任意个独立报文301-303,每个报文内部包含其所装载的独立信号,比如独立报文301装载了独立信号201-202;独立报文302装载了独立信号203-204;独立报文303装载了独立信号205-206。节点列表对象103内可以定义任意个独立节点501,每个节点内部包含其所发送和接收的报文信号列表,例如独立节点501发送独立报文301与独立报文302,并接收独立信号205,独立信号205包含在独立报文303中。
采用上述的方法,可以实现CAN FD总线数据库的硬件实时查询,Json格式由于其简单性可以很容易在下位机实现其解析,其强大性足以描述CAN FD数据库;因此可以由下位机根据Json格式的CAN FD数据库实现CAN FD报文的接收解析和发送,并且当CAN FD网络定义发生变化时能够自动地正确接收发送CAN FD报文,节省了开发测试的成本。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明的保护范围,凡在本发明的精神和原则之内,所作的任何修改、等同替换、均包含在本发明的保护范围之内。
Claims (8)
1.一种下位机架构,其特征在于,其包括CAN FD收发器、Json 格式CAN FD总线数据库、Json解析器、报文解析器、报文打包器;其中,
CAN FD收发器:与CAN FD总线、报文解析器、报文打包器均相连,用于将从CAN FD总线接收到的报文传递给报文解析器,并用于将经报文打包器打包成的报文通过CAN FD收发器发送至CAN FD总线;
Json 格式CAN FD总线数据库:与Json解析器相连,用于存储CAN FD网络数据库文件;
Json解析器:其输入端与Json格式 CAN FD总线数据库相连,用于读取并解析Json格式CAN FD总线数据库的文件,生成当前下位机节点的发送报文的定义和接收信号的定义;其输出端与报文打包器和报文解析器均相连,用于将发送报文的定义和接收信号的定义分别传递给报文打包器和报文解析器;
报文解析器:与Json解析器和CAN FD收发器均相连,报文解析器根据从Json解析器所接收到的接收信号的定义,将CAN FD收发器从CAN FD总线接收到的报文进行解析;
报文打包器:与Json解析器和CAN FD收发器相连,其根据从Json解析器所接收到的发送报文定义,将信号打包成报文,并通过CAN FD收发器发送到CAN FD总线上。
2. 根据权利要求1所述的一种下位机架构,其特征在于,所述Json格式CAN FD总线数据库的文件存储在Flash存储器内,当CAN FD总线数据库定义发生更改时,将数据库文件重新写入Flash存储器。
3. 根据权利要求1所述的一种下位机架构,其特征在于,所述Json 格式CAN FD总线数据库包括节点列表对象、报文列表对象和信号列表对象。
4.根据权利要求3所述的一种下位机架构,其特征在于,所述节点列表对象包含整个网络中可能出现的所有节点的定义,包括节点名称、节点注释,以节点名为键。
5.根据权利要求3所述的一种下位机架构,其特征在于,所述信号列表对象包含了整个网络中可能出现的所有信号的定义,包括信号名、信号长度、字节序、最小最大值、放大因子、偏量、单位、信号注释,以信号名为键。
6.根据权利要求3所述的一种下位机架构,其特征在于,所述报文列表对象包含了整个网络中可能出现的所有报文的定义,包括报文名称、报文标识符、报文数据长度、报文注释,为报文标识符为键。
7.一种CANFD总线数据库的硬件实时查询方法,其特征在于,其包括以下步骤:
S1、Json解析器通过解析Json 格式CAN FD总线数据库的文件,生成当前下位机节点的发送报文的定义和接收信号的定义;
S2、报文解析器根据生成的报文信号的定义,将CAN FD收发器从CAN FD总线接收到的报文进行解析,从而建立其所接收的所有CAN FD报文列表;
S3、报文打包器根据当前节点发送报文的定义,自动打包信号为报文;自动打包后的报文通过CAN FD收发器发送到CAN FD总线上,从而建立其所要发送的所有CAN FD报文列表。
8. 根据权利要求7所述的一种CANFD总线数据库的硬件实时查询方法,其特征在于,所述Json 格式CAN FD总线数据库的文件包含有信号列表对象、报文列表对象和节点列表对象;所述信号列表对象内可以定义任意个独立信号;所述报文列表对象内可以定义任意个独立报文,每个独立报文内部包含其所装载的独立信号;所述节点列表对象内可以定义任意个独立节点,每个独立节点内部包含其所发送和接收的报文信号列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810090274.2A CN110099033B (zh) | 2018-01-30 | 2018-01-30 | 一种下位机架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810090274.2A CN110099033B (zh) | 2018-01-30 | 2018-01-30 | 一种下位机架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110099033A true CN110099033A (zh) | 2019-08-06 |
CN110099033B CN110099033B (zh) | 2021-12-14 |
Family
ID=67442739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810090274.2A Expired - Fee Related CN110099033B (zh) | 2018-01-30 | 2018-01-30 | 一种下位机架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110099033B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112378420A (zh) * | 2020-10-30 | 2021-02-19 | 北斗星通智联科技有限责任公司 | 用于汽车导航测试的信号模拟方法、系统及电子设备 |
CN112532492A (zh) * | 2020-12-08 | 2021-03-19 | 航天科技控股集团股份有限公司 | 用于测试汽车仪表的can虚拟报文组建方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514262A (zh) * | 2013-08-14 | 2014-01-15 | 上海固泰科技有限公司 | FlexRay总线数据库的设计和查询方法 |
CN103559186A (zh) * | 2013-08-15 | 2014-02-05 | 上海固泰科技有限公司 | Can总线数据库的设计和查询方法 |
CN104268739A (zh) * | 2014-08-29 | 2015-01-07 | 蓝信工场(北京)科技有限公司 | 一种将企业信息系统快速转化为移动应用的方法和系统 |
US20150228151A1 (en) * | 2014-02-10 | 2015-08-13 | Bally Gaming, Inc. | System and method for enhancing player experience using social media data |
CN107222458A (zh) * | 2017-04-17 | 2017-09-29 | 珠海格力电器股份有限公司 | 一种兼容Modbus协议的BACnet协议栈的数据处理方法及系统 |
-
2018
- 2018-01-30 CN CN201810090274.2A patent/CN110099033B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514262A (zh) * | 2013-08-14 | 2014-01-15 | 上海固泰科技有限公司 | FlexRay总线数据库的设计和查询方法 |
CN103559186A (zh) * | 2013-08-15 | 2014-02-05 | 上海固泰科技有限公司 | Can总线数据库的设计和查询方法 |
US20150228151A1 (en) * | 2014-02-10 | 2015-08-13 | Bally Gaming, Inc. | System and method for enhancing player experience using social media data |
CN104268739A (zh) * | 2014-08-29 | 2015-01-07 | 蓝信工场(北京)科技有限公司 | 一种将企业信息系统快速转化为移动应用的方法和系统 |
CN107222458A (zh) * | 2017-04-17 | 2017-09-29 | 珠海格力电器股份有限公司 | 一种兼容Modbus协议的BACnet协议栈的数据处理方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112378420A (zh) * | 2020-10-30 | 2021-02-19 | 北斗星通智联科技有限责任公司 | 用于汽车导航测试的信号模拟方法、系统及电子设备 |
CN112532492A (zh) * | 2020-12-08 | 2021-03-19 | 航天科技控股集团股份有限公司 | 用于测试汽车仪表的can虚拟报文组建方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110099033B (zh) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108769165B (zh) | 一种物联网中数据处理方法、物联网接入系统 | |
US7725606B2 (en) | Method and apparatus for two phase structured message to tagged message translation | |
US10133622B2 (en) | Enhanced error detection in data synchronization operations | |
US20130195117A1 (en) | Parameter acquisition method and device for general protocol parsing and general protocol parsing method and device | |
CN105187258B (zh) | 一种可配置的Trap告警解析处理方法 | |
JP2004133632A (ja) | データ中継装置およびこれを用いたデータ管理システム | |
KR102437000B1 (ko) | M2M/IoT 서비스 계층에서의 시맨틱 추론 서비스의 인에이블링 | |
CN106339498A (zh) | 数据同步方法、装置和系统 | |
CN112541002A (zh) | 程序语言转换方法、装置、电子设备及存储介质 | |
CN108092835A (zh) | 电动汽车充电桩的检测方法和装置 | |
CN106776314A (zh) | 一种测试系统 | |
CN110099033B (zh) | 一种下位机架构 | |
CN102761532A (zh) | 网络视频的信息处理系统和方法 | |
CN112468322B (zh) | 一种即插即用的电网稳控装置通信测试方法及系统 | |
CN101309178B (zh) | 一种自动交换光网络系统日志信息的解析方法及装置 | |
CN113887173A (zh) | 一种基于xml的协议动态组包和解析方法 | |
CN111294235A (zh) | 数据处理方法、装置、网关及可读存储介质 | |
CN106802865B (zh) | 用于软件测试的应答模拟装置及方法 | |
CN110134380A (zh) | 一种基于模板引擎的代码生成方法、装置及电子设备 | |
CN112379965B (zh) | 沙盒文件映射系统、客户端装置、映射端装置、沙盒文件映射方法以及电子设备 | |
CN103532737A (zh) | 一种处理多种类型告警的方法、装置及系统 | |
CN106302349A (zh) | 基于libpcap的HTTP包分析方法及装置 | |
KR100746090B1 (ko) | Gui 컴포넌트와 수신 패킷 형식의 변경이 가능한 센서네트워크 모니터링 장치 및 이를 기반으로 하는 모니터링소프트웨어 재구성 방법 | |
CN114168366A (zh) | 基于swagger实现前端请求发送处理的方法、装置、处理器及其计算机可读存储介质 | |
US9436440B1 (en) | System, method, and computer program for validating web service interface design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211214 |