CN112363975A - 组态软件与fpga的交互方法及交互系统 - Google Patents
组态软件与fpga的交互方法及交互系统 Download PDFInfo
- Publication number
- CN112363975A CN112363975A CN202011167626.3A CN202011167626A CN112363975A CN 112363975 A CN112363975 A CN 112363975A CN 202011167626 A CN202011167626 A CN 202011167626A CN 112363975 A CN112363975 A CN 112363975A
- Authority
- CN
- China
- Prior art keywords
- functional
- data packet
- fpga
- module
- components
- 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 46
- 230000003993 interaction Effects 0.000 title claims abstract description 21
- 238000010586 diagram Methods 0.000 claims abstract description 77
- 238000012544 monitoring process Methods 0.000 claims description 41
- 238000013507 mapping Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 15
- 230000002452 interceptive effect Effects 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 abstract description 11
- 238000012986 modification Methods 0.000 abstract description 8
- 230000004048 modification Effects 0.000 abstract description 8
- 230000005540 biological transmission Effects 0.000 description 12
- 238000012905 input function Methods 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 101000623895 Bos taurus Mucin-15 Proteins 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012806 monitoring device Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7817—Specially adapted for signal processing, e.g. Harvard architectures
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了组态软件与FPGA的交互方法及系统,组态软件包括若干图形化组件,交互方法包括:通过若干图形化组件生成目标组态图;根据目标组态图生成目标数据包;发送目标数据包至FPGA;FPGA接收并解析目标数据包,并根据解析后的目标数据包对工业控制系统的数据进行处理。本发明中,在对FPGA的功能进行设计及修改时,无需花费大量的时间去写代码,即便是无相关背景知识的工程人员,也可以通过图形化组件来对FPGA的功能进行设计及修改,特别使在现场应用FPGA时,可以对FPGA的功能进行快速修改,节省了大量的时间成本,此外,通过图形化组件修改FPGA的功能也可以大量减少修改过程中认为因素引起的错误,进一步增加了对FPGA的功能实现的智能性。
Description
技术领域
本发明涉及数字化控制领域,特别涉及一种实现FPGA的功能的方法及交互系统。
背景技术
FPGA(现场可编程逻辑器件)功能越来越强大,应用场合也越来越广泛。FPGA的容量相比十年前,呈现出几何级别的增长。因此,FPGA的开发需求和难度越来越高,从编写FPGA代码到可以运行的下载文件的映射过程,也越来越长。哪怕一点点的功能改变,都需要几个小时甚至几十个小时的映射过程,不仅效率低下,对工程人员的要求也非常的高。
发明内容
本发明要解决的技术问题是为了克服现有技术中开发及修改FPGA功能效率低及难度大的缺陷,提供一种能够通过组态软件高效开发FPGA及修改FPGA功能的组态软件与FPGA的交互方法及交互系统。
本发明是通过下述技术方案来解决上述技术问题:
本发明提供了一种组态软件与FPGA的交互方法,所述组态软件包括若干图形化组件,所述交互方法包括:
通过所述若干图形化组件生成目标组态图,所述目标组态图用于对工业控制系统的数据进行处理;
根据所述目标组态图生成目标数据包;
发送所述目标数据包至所述FPGA;
所述FPGA接收并解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理。
较佳地,所述若干图形化组件包括若干功能组件及若干连接关系组件,所述通过所述若干图形化组件生成目标组态图的步骤包括:
通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图。
较佳地,所述若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,所述通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图的步骤包括:通过所述逻辑功能组件及所述连接关系组件构建所述输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
较佳地,所述FPGA中包括若干功能模块,所述数据包包括若干所述功能组件的配置信息、功能号及关联地址信息,所述功能号用于表征所述功能组件与所述功能模块的对应关系,所述关联地址信息用于表征与所述功能组件对应的功能模块在所述FPGA中输入地址和/或输出地址;
所述解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理步骤包括:
根据所述对应关系确定与每一所述功能组件对应的功能模块;
对每一所述功能组件的关联地址信息进行地址映射以生成地址映射表;
根据所述地址映射表构建与每一所述功能组件对应的功能模块之间的连接关系;
根据所述连接关系及每一所述功能组件的配置信息对对应的功能模块进行配置以实现对所述工业控制系统的数据的处理。
较佳地,所述FPGA中包括若干功能模块,所述数据包包括若干自身地址信息,所述自身地址信息用于表征所述功能组件对应的功能模块在所述FPGA中存放数据的地址;
所述解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理的步骤包括:
从所述自身地址信息中读取数据以进行显示。
较佳地,所从所述自身地址信息中读取数据以进行显示的步骤包括:
从每一所述自身地址信息中读取数据;
根据读取的数据生成监控数据包;
将所述监控数据包发送至外部监控设备,所述外部监控设备用于对所述监控数据包中的数据进行显示。
较佳地,所述解析所述目标数据包的步骤前还包括:
校验所述目标数据包。
较佳地,所述根据所述目标组态图生成目标数据包的步骤后还包括:
加密所述目标数据包;
所述发送所述目标数据包至所述FPGA的步骤后还包括
所述FPGA对所述目标数据包进行解密。
本发明还提供了一种组态软件与FPGA的交互系统,所述组态软件包括若干图形化组件,所述交互系统包括:组态软件与FPGA,所述组态软件包括组态图生成模块、数据包生成模块及数据包发送模块,所述FPGA包括数据包接收模块、数据包解析模块及数据监控模块;
所述组态图生成模块用于通过所述若干图形化组件生成目标组态图,所述目标组态图用于对工业控制系统的数据进行处理;
所述数据包生成模块用于根据所述目标组态图生成目标数据包;
所述数据包发送模块用于发送所述目标数据包至所述FPGA;
所述数据包接收模块用于接收所述目标数据包;
所述数据包解析模块用于解析所述目标数据包;
所述数据监控模块用于根据解析后的目标数据包对所述工业控制系统的数据进行处理。
较佳地,所述若干图形化组件包括若干功能组件及若干连接关系组件,所述组态图生成模块用于通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图。
较佳地,所述若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,所述组态图生成模块用于通过所述逻辑功能组件及所述连接关系组件构建所述输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
较佳地,所述FPGA中包括若干功能模块,所述数据包包括若干所述功能组件的配置信息、功能号及关联地址信息,所述功能号用于表征所述功能组件与所述功能模块的对应关系,所述关联地址信息用于表征与所述功能组件对应的功能模块在所述FPGA中输入地址和/或输出地址;
所述解析模块包括功能确定单元、地址映射单元、连接构建单元;
所述功能确定单元用于根据所述对应关系确定与每一所述功能组件对应的功能模块;
所述地址映射单元用于对每一所述功能组件的关联地址信息进行地址映射以生成地址映射表;
所述连接构建单元用于根据所述地址映射表构建与每一所述功能组件对应的功能模块之间的连接关系;
所述数据监控模块用于根据所述连接关系及每一所述功能组件的配置信息对对应的功能模块进行配置以对所述工业控制系统的数据进行处理。
较佳地,所述FPGA中包括若干功能模块,所述数据包包括若干自身地址信息,所述自身地址信息用于表征所述功能组件对应的功能模块在所述FPGA中存放数据的地址;
所述数据监控模块用于从所述自身地址信息中读取数据以进行显示。
较佳地,所述数据监控模块包括:数据读取单元、监控数据生成单元及数据显示单元;
所述数据读取单元用于从每一所述自身地址信息中读取数据;
所述监控数据生成单元用于根据读取的数据生成监控数据包;
所述数据显示单元用于将所述监控数据包发送至外部监控设备,所述外部监控设备用于对所述监控数据包中的数据进行显示。
较佳地,所述FPGA还包括校验模块,用于校验所述目标数据包,所述数据包接收模块用于调用所述校验模块,所述校验模块还用于对调用所述数据包解析模块。
较佳地,所述组态软件还包括加密模块,所述数据包生成模块还用于调用所述加密模块,所述加密模块用于加密所述目标数据包;
所述FPGA还包括解密模块,用于数据包接收模块还用于调用所述解密模块,所述解密模块用于对所述目标数据包进行解密。
本发明的积极进步效果在于:本发明通过若干图形化组件生成目标组态图,FPGA通过接收并解析根据目标组态图生成的目标数据包即可对工业控制系统的数据进行处理,本发明中,在对FPGA的功能进行设计及修改时,无需花费大量的时间去写代码,即便是无相关背景知识的工程人员,也可以通过图形化组件来对FPGA的功能进行设计及修改,特别使在现场应用FPGA时,可以对FPGA的功能进行快速修改,节省了大量的时间成本,此外,通过图形化组件修改FPGA的功能也可以大量减少修改过程中认为因素引起的错误,进一步增加了对FPGA的功能实现的智能性。
附图说明
图1为本发明实施例1的组态软件与FPGA的交互方法的流程图。
图2为实施例1的组态软件的示意图。
图3为实施例1的步骤104的第一实现方式的流程图。
图4为实施例1的步骤104的第二实现方式的流程图。
图5为本发明实施例2的组态软件与FPGA的交互系统的模块示意图。
图6为实施例2的数据包解析模块的模块示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供了一种组态软件与FPGA的交互方法,组态软件包括若干图形化组件,如图1所示,交互方法包括:
步骤101、通过若干图形化组件生成目标组态图。
步骤102、根据目标组态图生成目标数据包。
步骤103、发送目标数据包至FPGA。
步骤104、FPGA接收并解析目标数据包,并根据解析后的目标数据包对工业控制系统的数据进行处理。
其中,若干图形化组件包括若干功能组件及若干连接关系组件,具体的,若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,步骤101具体包括:通过逻辑功能组件及连接关系组件构建输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
图2示出了一具体场景下通过组态软件生成的目标组态图的局部示意图,其中,区域a为图形化组件放置区,用于放置各功能组件及连接关系组件,区域b为组态设计区,用于设计目标组态图,用户可以拖放区域a中的图形化组件到组态设计区,具体通过连接关系组件将需要的功能组件连接起来生成各个功能组件的互连逻辑,并设置好各个功能组件的属性以生成目标组态图,该目标组态图用于对工业控制系统的数据进行处理,具体的,目标组态图表征在FPGA中与各个功能组件对应的功能模块间的连接关系,从而通过目标组态图真正实现FPGA中硬件的配置和互连。
本实施例的工业控制系统可以为各种使用FPGA作为控制核心的工业控制系统,如航空航天系统、核电系统、数字化仪控系统等等,特别适用于经常改变FPGA现场功能的工程应用场合。
如附图标记10部分所示,其中,“压力7”为一功能组件,具体为输入功能组件,表示编号为7的压力设备的数据,“A/D”为一功能组件,表示数模转换器,“显示”为一功能组件,用于对某一数据进行显示,11表示一功能组件,表示比较器,用于比较两个数据的大小,“与”表示一功能组件,用于计算连接关系组件连接的两数据之和。该目标组态图还包括有输出功能组件,应当理解,这里的输出功能组件既可以表示某一输出的具体数值,也可以表示用于与其他系统进行连接的接口,同理,输入功能组件即可以表示某一输入的具体数值,也可以表示与其他系统进行连接的接口。
应当理解,前述具体场景仅作为举例说明,本实施例不以此为限。
应当理解,本实施例中的组态软件可以以QT(应用程序开发框架)框架为基础开发而成,具体的可以参考现有技术中对组态软件的开发技术,组态软件中的功能组件及连接关系组件可以根据需求进行配置,如可以包括最大值获取器、最小值获取器、或运算器、滤波器、置位复位器、平均值获取器、多路选择器、延时器等等。
本实施例中,通过若干图形化组件生成目标组态图,在对FPGA的功能进行设计及修改时,无需花费大量的时间去写代码,即便是无相关背景知识的工程人员,也可以通过图形化组件来对FPGA的功能进行设计及修改,特别使在现场应用FPGA时,可以对FPGA的功能进行快速修改,节省了大量的时间成本,此外,通过图形化组件修改FPGA的功能也可以大量减少修改过程中认为因素引起的错误,进一步增加了对FPGA的功能实现的智能性。
本实施例中,FPGA中包括若干功能模块。其中,功能模块与目标组态图中的功能组件具有对应关系,具体的,既可以一个功能组件对应一个功能模块,也可以多个功能组件对应一个功能模块。
本实施例中,有多种类型的数据包,在第一种类型的数据包中,数据包包括若干功能组件的配置信息、功能号及关联地址信息,功能号用于表征功能组件与功能模块的对应关系,关联地址信息用于表征与功能组件对应的功能模块在FPGA中输入地址和/或输出地址。
如图3所示,在该种方式下,步骤104具体包括:
步骤1041、根据对应关系确定与每一功能组件对应的功能模块。
步骤1042、对每一功能组件的关联地址信息进行地址映射以生成地址映射表。
步骤1043、根据地址映射表构建与每一功能组件对应的功能模块之间的连接关系。
步骤1044、根据连接关系及每一功能组件的配置信息对对应的功能模块进行配置以实现对工业控制系统的数据的处理。
在一种具体的实施方式中,数据包可以具体为如下格式:数据包包括同步字、序列号、互连信息总长度、功能部件总长度字段,由于一个数据包中可能包括多个功能组件的信息,因此,对于每一功能组件,数据包还可以包括如下字段:功能部件长度、部件功能号、类型、互联矩阵中的输入地址、互联矩阵中的输出地址、功能组件的配置信息等。
其中,同步字用于对数据包的包头进行判断,具体用于数据包的同步;序列号表示每一数据包的序列,每个数据包的序列号自动加1,FPGA可以根据序列号来判断数据在传输的过程中是否丢包;互连信息总长度用于表示数据包的总长度;功能部件长度:某个功能组件的数据的长度;功能号表示功能组件的代号,FPGA根据此代号决定使用哪个功能模块;类型用于表示功能组件对应的功能模块的输入及输出功能,具体的,功能模块可以单独拥有输入功能或者输出功能,也可以同时拥有输入与输出功能,其中,功能模块可以支持多输入及多输出;互连矩阵中的输入地址用于表示当与功能组件对应的功能模块具有输入功能时,在FPGA中输入地址对应于功能模块的输入信号,每个输入信号有一个地址,用于从FPGA的数据缓存中读取数据;互连矩阵中的输出地址用于表示当与功能组件对应的功能模块具有输出功能时,对应于功能模块的输出信号,每个输出信号都有一个地址,用于往FPGA的数据缓存中写入数据。功能组件的配置信息用于表示与功能组件对应的功能模块中各种参数的设置。
此外,每一数据包还可以包括一CRC(循环冗余校验码)校验字段,用于校验数据包以保证数据传输正确。
本实施例中,FPGA通过接收并解析目标数据包可以实现各个硬件功能模块之间的配置及互连,从而可以实现对工业控制系统的数据的运算、传输等功能。
在第二种类型的数据包中,数据包包括若干自身地址信息,自身地址信息用于表征功能组件对应的功能模块在FPGA中存放数据的地址。
在该种实现方式下,步骤104具体用于从自身地址信息中读取数据以进行显示。
在一种具体的实施方式中,数据包可以为如下格式:数据包包括同步字、序列号、显示点总长度,由于一个数据包中可能包括多个功能组件的信息,因此,对于每一功能组件,数据包包括与之对应的功能模块在FPGA中存放数据的自身地址信息。
其中,同步字、序列号的具体含义可以参考前文对同步字、序列号的解释,此处便不再赘述;显示点总长度用于表示与功能组件对应的功能模块存储数据的总的长度。
当数据包为第二种类型时,如图4所示,步骤104可以具体包括以下步骤:
步骤1141、从每一自身地址信息中读取数据。
步骤1142、根据读取的数据生成监控数据包。
步骤1143、将监控数据包发送至外部监控设备。
其中,外部监控设备用于对监控数据包中的数据进行显示。
本实施例中,FPGA通过接收并解析目标数据包可以对对具体功能模块的数据进行显示,从而可以实现对工业控制系统的数据的显示功能。
在一种具体的实施方式中,为了保证组态软件与FPGA之间数据的安全传输,步骤102之后还可以进一步包括加密目标数据包的步骤,对应的,步骤104中,FPGA在接收目标数据包后还可以进一步包括解密该目标数据包的步骤。应当理解,对目标数据包进行加密及解密的方法可以参考现有技术中对数据包的加密及解密方法,此处便不再赘述。
在一种具体的实施方式中,为了避免目标数据包的数据被篡改,步骤104在接收目标数据包后还可以进一步包校验目标数据包的步骤。
为了更好的理解本实施例,下面通过一具体实例对本实施例中的交互方法予以说明:
假设在组态软件中,将输入功能组件一及输入功能组件二同时与第一功能组件二连接,第一功能组件二与输出功能组件一连接,并且对输入功能组件一、输入功能组件二、第一功能组件二及输出功能组件进行配置以生成目标组态图,根据目标组态图生成目标数据包后,通过通信协议将目标数据包发送至FPGA,FPGA根据对应的通信协议,接收组态软件发送的数据包,根据数据包中的序列号可以判断是否丢包,根据CRC可以判断是否传输错误,若FPGA判断未发生丢包且未传输错误则可以解析目标数据包,则可以根据目标组态图中各个功能组件之间的连接关系进行地址映射,从而生成地址映射表,如,输入功能组件一对应的功能模块的输入地址为地址一、输出地址为地址二,第一功能组件二对应的功能模块的输入地址为地址三、输出地址为地址四。根据该地址映射表,可以把各功能模块连接到缓存,各功能模块可对缓存进行读写。不同模块,可以对同一地址进行写和读操作,进而实现类似连接线的互连。如,输入功能组件一对应的功能模块的输出地址与第一功能组件二对应的功能模块的输入地址为同一地址,因此可以实现其硬件上的互联。当功能组件中具有显示功能组件时,根据显示功能组件对应的功能模块的地址可以从缓存中读取数据,并对数据进行打包从而可以按照预设通信协议送往监控设备以进行显示。
本实施例中的交互方法,可以通过组态软件对FPGA进行功能设计,方便不懂FPGA技术的工程人员设计与修改FPGA的功能,在需要对FPGA的功能进行修改时,无需FPGA的重新映射过程,只需通过组态软件修改目标组态图,在现场应用时,便于功能快速修改,节省了大量测试时间,并且通过组态软件修改系统功能,也可以大量减少功能修改过程中的人为因素引起的错误。
实施例2
本实施例提供了一种组态软件与FPGA的交互系统,如图5所示,组态软件20包括若干图形化组件,交互系统包括:组态软件20与FPGA30,组态软件20包括组态图生成模块201、数据包生成模块202及数据包发送模块203,FPGA30包括数据包发送模块301、数据包解析模块302及数据监控模块303。
组态图生成模块201用于通过若干图形化组件生成目标组态图,目标组态图用于对工业控制系统的数据进行处理,数据包生成模块202用于根据目标组态图生成目标数据包,数据包发送模块203用于发送目标数据包至FPGA30,数据包发送模块301用于接收目标数据包,数据包解析模块302用于解析目标数据包,数据监控模块303用于根据解析后的目标数据包对工业控制系统的数据进行处理。
其中,若干图形化组件包括若干功能组件及若干连接关系组件,具体的,若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,步骤101具体包括:通过逻辑功能组件及连接关系组件构建输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
图2示出了一具体场景下通过组态软件20生成的目标组态图的局部示意图,其中,区域a为图形化组件放置区,用于放置各功能组件及连接关系组件,区域b为组态设计区,用于设计目标组态图,用户可以拖放区域a中的图形化组件到组态设计区,具体通过连接关系组件将需要的功能组件连接起来生成各个功能组件的互连逻辑,并设置好各个功能组件的属性以生成目标组态图,该目标组态图用于对工业控制系统的数据进行处理,具体的,目标组态图表征在FPGA30中与各个功能组件对应的功能模块间的连接关系,从而通过目标组态图真正实现FPGA30中硬件的配置和互连。
本实施例的工业控制系统可以为各种使用FPGA作为控制核心的工业控制系统,如航空航天系统、核电系统、数字化仪控系统等等,特别适用于经常改变FPGA现场功能的工程应用场合。如附图标记10部分所示,其中,“压力7”为一功能组件,具体为输入功能组件,表示编号为7的压力设备的数据,“A/D”为一功能组件,表示数模转换器,“显示”为一功能组件,用于对某一数据进行显示,11表示一功能组件,表示比较器,用于比较两个数据的大小,“与”表示一功能组件,用于计算连接关系组件连接的两数据之和。该目标组态图还包括有输出功能组件,应当理解,这里的输出功能组件既可以表示某一输出的具体数值,也可以表示用于与其他系统进行连接的接口,同理,输入功能组件即可以表示某一输入的具体数值,也可以表示与其他系统进行连接的接口。
应当理解,前述具体场景仅作为举例说明,本实施例不以此为限。
应当理解,本实施例中的组态软件20可以以QT框架为基础开发而成,具体的可以参考现有技术中对组态软件20的开发技术,组态软件20中的功能组件及连接关系组件可以根据需求进行配置,如可以包括最大值获取器、最小值获取器、或运算器、滤波器、置位复位器、平均值获取器、多路选择器、延时器等等。
本实施例中,通过若干图形化组件生成目标组态图,在对FPGA30的功能进行设计及修改时,无需花费大量的时间去写代码,即便是无相关背景知识的工程人员,也可以通过图形化组件来对FPGA30的功能进行设计及修改,特别使在现场应用FPGA30时,可以对FPGA30的功能进行快速修改,节省了大量的时间成本,此外,通过图形化组件修改FPGA30的功能也可以大量减少修改过程中认为因素引起的错误,进一步增加了对FPGA30的功能实现的智能性。
本实施例中,FPGA30中包括若干功能模块。其中,功能模块与目标组态图中的功能组件具有对应关系,具体的,既可以一个功能组件对应一个功能模块,也可以多个功能组件对应一个功能模块。
本实施例中,有多种类型的数据包,在第一种类型的数据包中,数据包包括若干功能组件的配置信息、功能号及关联地址信息,功能号用于表征功能组件与功能模块的对应关系,关联地址信息用于表征与功能组件对应的功能模块在FPGA30中输入地址和/或输出地址。
如图6所示,在该种方式下,数据包解析模块302包括功能确定单元3021、地址映射单元3022、连接构建单元3023,功能确定单元3021用于根据对应关系确定与每一功能组件对应的功能模块,地址映射单元3022用于对每一功能组件的关联地址信息进行地址映射以生成地址映射表,连接构建单元3023用于根据地址映射表构建与每一功能组件对应的功能模块之间的连接关系,数据监控模块303用于根据连接关系及每一功能组件的配置信息对对应的功能模块进行配置以对工业控制系统的数据进行处理。
在一种具体的实施方式中,数据包可以具体为如下格式:数据包包括同步字、序列号、互连信息总长度、功能部件总长度字段,由于一个数据包中可能包括多个功能组件的信息,因此,对于每一功能组件,数据包还可以包括如下字段:功能部件长度、部件功能号、类型、互联矩阵中的输入地址、互联矩阵中的输出地址、功能组件的配置信息等。
其中,同步字用于对数据包的包头进行判断,具体用于数据包的同步;序列号表示每一数据包的序列,每个数据包的序列号自动加1,FPGA30可以根据序列号来判断数据在传输的过程中是否丢包;互连信息总长度用于表示数据包的总长度;功能部件长度:某个功能组件的数据的长度;功能号表示功能组件的代号,FPGA30根据此代号决定使用哪个功能模块;类型用于表示功能组件对应的功能模块的输入及输出功能,具体的,功能模块可以单独拥有输入功能或者输出功能,也可以同时拥有输入与输出功能,其中,功能模块可以支持多输入及多输出;互连矩阵中的输入地址用于表示当与功能组件对应的功能模块具有输入功能时,在FPGA30中输入地址对应于功能模块的输入信号,每个输入信号有一个地址,用于从FPGA30的数据缓存中读取数据;互连矩阵中的输出地址用于表示当与功能组件对应的功能模块具有输出功能时,对应于功能模块的输出信号,每个输出信号都有一个地址,用于往FPGA30的数据缓存中写入数据。功能组件的配置信息用于表示与功能组件对应的功能模块中各种参数的设置。
此外,每一数据包还可以包括一CRC校验字段,用于校验数据包以保证数据传输正确。
本实施例中,FPGA30通过接收并解析目标数据包可以实现各个硬件功能模块之间的配置及互连,从而可以实现对工业控制系统的数据的运算、传输等功能。
在第二种类型的数据包中,数据包包括若干自身地址信息,自身地址信息用于表征功能组件对应的功能模块在FPGA30中存放数据的地址。
在该种实现方式下,数据监控模块303用于从自身地址信息中读取数据以进行显示。
在一种具体的实施方式中,数据包可以为如下格式:数据包包括同步字、序列号、显示点总长度,由于一个数据包中可能包括多个功能组件的信息,因此,对于每一功能组件,数据包包括与之对应的功能模块在FPGA30中存放数据的自身地址信息。
其中,同步字、序列号的具体含义可以参考前文对同步字、序列号的解释,此处便不再赘述;显示点总长度用于表示与功能组件对应的功能模块存储数据的总的长度。
当数据包为第二种类型时,数据监控模块303包括:数据读取单元、监控数据生成单元及数据显示单元;
数据读取单元用于从每一自身地址信息中读取数据;
监控数据生成单元用于根据读取的数据生成监控数据包;
数据显示单元用于将监控数据包发送至外部监控设备,外部监控设备用于对监控数据包中的数据进行显示。
本实施例中,FPGA30通过接收并解析目标数据包可以对对具体功能模块的数据进行显示,从而可以实现对工业控制系统的数据的显示功能。
在一种具体的实施方式中,为了保证组态软件20与FPGA30之间数据的安全传输,组态软件20还可以包括加密模块,数据包生成模块202还用于调用加密模块,加密模块用于加密目标数据包,FPGA30还可以包括解密模块,用于数据包发送模块301还用于调用解密模块,解密模块用于对目标数据包进行解密。应当理解,对目标数据包进行加密及解密的方法可以参考现有技术中对数据包的加密及解密方法,此处便不再赘述。
在一种具体的实施方式中,为了避免目标数据包的数据被篡改,FPGA30还可以包括校验模块,用于校验目标数据包,数据包发送模块301用于调用校验模块,校验模块还用于对调用数据包解析模块302。
本实施例中的交互方法予以说明:
假设在组态软件20中,将输入功能组件一及输入功能组件二同时与第一功能组件二连接,第一功能组件二与输出功能组件一连接,并且对输入功能组件一、输入功能组件二、第一功能组件二及输出功能组件进行配置以生成目标组态图,根据目标组态图生成目标数据包后,通过通信协议将目标数据包发送至FPGA30,FPGA30根据对应的通信协议,接收组态软件20发送的数据包,根据数据包中的序列号可以判断是否丢包,根据CRC可以判断是否传输错误,若FPGA30判断未发生丢包且未传输错误则可以解析目标数据包,则可以根据目标组态图中各个功能组件之间的连接关系进行地址映射,从而生成地址映射表,如,输入功能组件一对应的功能模块的输入地址为地址一、输出地址为地址二,第一功能组件二对应的功能模块的输入地址为地址三、输出地址为地址四。根据该地址映射表,可以把各功能模块连接到缓存,各功能模块可对缓存进行读写。不同模块,可以对同一地址进行写和读操作,进而实现类似连接线的互连。如,输入功能组件一对应的功能模块的输出地址与第一功能组件二对应的功能模块的输入地址为同一地址,因此可以实现其硬件上的互联。当功能组件中具有显示功能组件时,根据显示功能组件对应的功能模块的地址可以从缓存中读取数据,并对数据进行打包从而可以按照预设通信协议送往监控设备以进行显示。
本实施例中的交互方法,可以通过组态软件20对FPGA30进行功能设计,方便不懂FPGA30技术的工程人员设计与修改FPGA30的功能,在需要对FPGA30的功能进行修改时,无需FPGA30的重新映射过程,只需通过组态软件20修改目标组态图,在现场应用时,便于功能快速修改,节省了大量测试时间,并且通过组态软件20修改系统功能,也可以大量减少功能修改过程中的人为因素引起的错误。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (10)
1.一种组态软件与FPGA的交互方法,所述组态软件包括若干图形化组件,其特征在于,所述交互方法包括:
通过所述若干图形化组件生成目标组态图,所述目标组态图用于对工业控制系统的数据进行处理;
根据所述目标组态图生成目标数据包;
发送所述目标数据包至所述FPGA;
所述FPGA接收并解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理。
2.如权利要求1所述的组态软件与FPGA的交互方法,其特征在于,所述若干图形化组件包括若干功能组件及若干连接关系组件,所述通过所述若干图形化组件生成目标组态图的步骤包括:
通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图。
3.如权利要求2所述的组态软件与FPGA的交互方法,其特征在于,所述若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,所述通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图的步骤包括:通过所述逻辑功能组件及所述连接关系组件构建所述输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
4.如权利要求2所述的组态软件与FPGA的交互方法,其特征在于,所述FPGA中包括若干功能模块,所述数据包包括若干所述功能组件的配置信息、功能号及关联地址信息,所述功能号用于表征所述功能组件与所述功能模块的对应关系,所述关联地址信息用于表征与所述功能组件对应的功能模块在所述FPGA中输入地址和/或输出地址;
所述解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理步骤包括:
根据所述对应关系确定与每一所述功能组件对应的功能模块;
对每一所述功能组件的关联地址信息进行地址映射以生成地址映射表;
根据所述地址映射表构建与每一所述功能组件对应的功能模块之间的连接关系;
根据所述连接关系及每一所述功能组件的配置信息对对应的功能模块进行配置以实现对所述工业控制系统的数据的处理。
5.如权利要求2所述的组态软件与FPGA的交互方法,其特征在于,所述FPGA中包括若干功能模块,所述数据包包括若干自身地址信息,所述自身地址信息用于表征所述功能组件对应的功能模块在所述FPGA中存放数据的地址;
所述解析所述目标数据包,并根据解析后的目标数据包对所述工业控制系统的数据进行处理的步骤包括:
从所述自身地址信息中读取数据以进行显示。
6.一种组态软件与FPGA的交互系统,所述组态软件包括若干图形化组件,其特征在于,所述交互系统包括:组态软件与FPGA,所述组态软件包括组态图生成模块、数据包生成模块及数据包发送模块,所述FPGA包括数据包接收模块、数据包解析模块及数据监控模块;
所述组态图生成模块用于通过所述若干图形化组件生成目标组态图,所述目标组态图用于对工业控制系统的数据进行处理;
所述数据包生成模块用于根据所述目标组态图生成目标数据包;
所述数据包发送模块用于发送所述目标数据包至所述FPGA;
所述数据包接收模块用于接收所述目标数据包;
所述数据包解析模块用于解析所述目标数据包;
所述数据监控模块用于根据解析后的目标数据包对所述工业控制系统的数据进行处理。
7.如权利要求6所述的组态软件与FPGA的交互系统,其特征在于,所述若干图形化组件包括若干功能组件及若干连接关系组件,所述组态图生成模块用于通过所述连接关系组件构建所述功能组件之间的关系以生成目标组态图。
8.如权利要求7所述的组态软件与FPGA的交互系统,其特征在于,所述若干功能组件包括若干输入功能组件、若干输出功能组件及若干逻辑功能组件,所述组态图生成模块用于通过所述逻辑功能组件及所述连接关系组件构建所述输入功能组件与对应的输出功能组件之间的连接关系以生成目标组态图。
9.如权利要求7所述的组态软件与FPGA的交互系统,其特征在于,所述FPGA中包括若干功能模块,所述数据包包括若干所述功能组件的配置信息、功能号及关联地址信息,所述功能号用于表征所述功能组件与所述功能模块的对应关系,所述关联地址信息用于表征与所述功能组件对应的功能模块在所述FPGA中输入地址和/或输出地址;
所述数据包解析模块包括功能确定单元、地址映射单元、连接构建单元;
所述功能确定单元用于根据所述对应关系确定与每一所述功能组件对应的功能模块;
所述地址映射单元用于对每一所述功能组件的关联地址信息进行地址映射以生成地址映射表;
所述连接构建单元用于根据所述地址映射表构建与每一所述功能组件对应的功能模块之间的连接关系;
所述数据监控模块用于根据所述连接关系及每一所述功能组件的配置信息对对应的功能模块进行配置以对所述工业控制系统的数据进行处理。
10.如权利要求7所述的组态软件与FPGA的交互系统,其特征在于,所述FPGA中包括若干功能模块,所述数据包包括若干自身地址信息,所述自身地址信息用于表征所述功能组件对应的功能模块在所述FPGA中存放数据的地址;
所述数据监控模块用于从所述自身地址信息中读取数据以进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011167626.3A CN112363975B (zh) | 2020-10-27 | 2020-10-27 | 组态软件与fpga的交互方法及交互系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011167626.3A CN112363975B (zh) | 2020-10-27 | 2020-10-27 | 组态软件与fpga的交互方法及交互系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112363975A true CN112363975A (zh) | 2021-02-12 |
CN112363975B CN112363975B (zh) | 2024-02-06 |
Family
ID=74510986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011167626.3A Active CN112363975B (zh) | 2020-10-27 | 2020-10-27 | 组态软件与fpga的交互方法及交互系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112363975B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114326488A (zh) * | 2021-12-01 | 2022-04-12 | 浙江源创智控技术有限公司 | 一种用于楼控系统的io模块通道联动的组态分配方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040060032A1 (en) * | 2002-05-17 | 2004-03-25 | Mccubbrey David L. | Automated system for designing and developing field programmable gate arrays |
CN106528082A (zh) * | 2016-09-27 | 2017-03-22 | 北京广利核系统工程有限公司 | 基于fpga的图形化组态方法和装置 |
CN107423054A (zh) * | 2017-06-29 | 2017-12-01 | 北京广利核系统工程有限公司 | 基于fpga的自定义图形化算法组态装置、系统和方法 |
CN108319453A (zh) * | 2017-12-20 | 2018-07-24 | 中核控制系统工程有限公司 | 一种基于fpga控制逻辑的算法组态软件设计方法 |
WO2018137146A1 (zh) * | 2017-01-24 | 2018-08-02 | 北京广利核系统工程有限公司 | 图形组态语言转换方法及装置 |
CN109243650A (zh) * | 2018-10-22 | 2019-01-18 | 国核自仪系统工程有限公司 | 基于fpga的具有组态功能的核电站安全级仪控系统及方法 |
CN110120922A (zh) * | 2019-05-14 | 2019-08-13 | 中国核动力研究设计院 | 一种基于fpga的数据交互网络管理系统及方法 |
CN111488631A (zh) * | 2020-06-28 | 2020-08-04 | 中国核动力研究设计院 | 一种核级安全显示装置及其组态-解析系统 |
-
2020
- 2020-10-27 CN CN202011167626.3A patent/CN112363975B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040060032A1 (en) * | 2002-05-17 | 2004-03-25 | Mccubbrey David L. | Automated system for designing and developing field programmable gate arrays |
CN106528082A (zh) * | 2016-09-27 | 2017-03-22 | 北京广利核系统工程有限公司 | 基于fpga的图形化组态方法和装置 |
WO2018137146A1 (zh) * | 2017-01-24 | 2018-08-02 | 北京广利核系统工程有限公司 | 图形组态语言转换方法及装置 |
CN107423054A (zh) * | 2017-06-29 | 2017-12-01 | 北京广利核系统工程有限公司 | 基于fpga的自定义图形化算法组态装置、系统和方法 |
CN108319453A (zh) * | 2017-12-20 | 2018-07-24 | 中核控制系统工程有限公司 | 一种基于fpga控制逻辑的算法组态软件设计方法 |
CN109243650A (zh) * | 2018-10-22 | 2019-01-18 | 国核自仪系统工程有限公司 | 基于fpga的具有组态功能的核电站安全级仪控系统及方法 |
CN110120922A (zh) * | 2019-05-14 | 2019-08-13 | 中国核动力研究设计院 | 一种基于fpga的数据交互网络管理系统及方法 |
CN111488631A (zh) * | 2020-06-28 | 2020-08-04 | 中国核动力研究设计院 | 一种核级安全显示装置及其组态-解析系统 |
Non-Patent Citations (1)
Title |
---|
刘志凯,等: "基于FPGA的算法组态技术在安全级数字化I&C中的应用", 仪器仪表用户, no. 11 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114326488A (zh) * | 2021-12-01 | 2022-04-12 | 浙江源创智控技术有限公司 | 一种用于楼控系统的io模块通道联动的组态分配方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112363975B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109460223B (zh) | 一种api网关管理系统及其方法 | |
CN108897691A (zh) | 基于接口模拟服务的数据处理方法、装置、服务器和介质 | |
CN112367680B (zh) | 基于智能电表的外部通信测试方法、装置和计算机设备 | |
CN113468049B (zh) | 基于可配置化接口的测试方法、装置、设备及介质 | |
KR20080052341A (ko) | 내장형 시스템 소프트웨어 자동 테스트 시스템 및 방법과테스트 시나리오 작성 방법 | |
CN110769002A (zh) | 基于LabVIEW的报文解析方法、系统、电子设备和介质 | |
CN109922049A (zh) | 基于区块链的验证装置及方法 | |
US20070157134A1 (en) | Method for testing a hardware circuit block written in a hardware description language | |
CN114185808A (zh) | 自动化测试方法、装置、电子设备及计算机可读存储介质 | |
CN112363975B (zh) | 组态软件与fpga的交互方法及交互系统 | |
CN107293330B (zh) | 对随机存取存储器ram进行仿真验证的方法和仿真验证系统 | |
US11163579B2 (en) | Instruction generation based on selection or non-selection of a special command | |
CN111247516A (zh) | 一种电路结构、系统级芯片SoC、处理数据的方法 | |
CN113535578A (zh) | 一种cts测试方法、装置及测试设备 | |
CN117560593A (zh) | 自适应io模块中的信号传输方法、装置、设备及介质 | |
WO2013064063A1 (zh) | 加密机模拟测试装置及方法 | |
US20200364313A1 (en) | Generating and adding additional control information to logic under test to facilitate debugging and comprehension of a simulation | |
CN110825538A (zh) | 一种基于mq可自定义数据类型动态进行数据交互的方法 | |
CN116125853A (zh) | 集成电路的安全控制方法、装置、存储介质及电子设备 | |
CN113438226B (zh) | 基于混合传输协议的报文生成、解析方法、设备及系统 | |
CN110517045B (zh) | 区块链数据处理方法、装置、设备和存储介质 | |
CN107908418A (zh) | 光纤通道节点卡的逻辑程序升级方法及光纤通道总线设备 | |
CN112486542A (zh) | 基于动态链接库的配置文件生成、更新方法及系统 | |
CN109542698A (zh) | 一种基于变异测试的虚拟原型错误检测方法 | |
CN113515461B (zh) | 通讯测试方法、装置、电子设备及存储介质 |
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 |