CN113778031A - 一种智能控制节点和数据传输方法 - Google Patents
一种智能控制节点和数据传输方法 Download PDFInfo
- Publication number
- CN113778031A CN113778031A CN202110997602.9A CN202110997602A CN113778031A CN 113778031 A CN113778031 A CN 113778031A CN 202110997602 A CN202110997602 A CN 202110997602A CN 113778031 A CN113778031 A CN 113778031A
- Authority
- CN
- China
- Prior art keywords
- data
- chipset
- chip set
- module
- pcie
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000005540 biological transmission Effects 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000004886 process control Methods 0.000 claims abstract description 9
- 230000002093 peripheral effect Effects 0.000 claims abstract description 5
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 4
- 238000004891 communication Methods 0.000 claims description 22
- 230000033001 locomotion Effects 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000013500 data storage Methods 0.000 claims description 8
- 238000013528 artificial neural network Methods 0.000 claims description 2
- 230000000007 visual effect Effects 0.000 abstract 1
- 230000004044 response Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004092 self-diagnosis Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- 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/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
- G05B19/4186—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by protocol, e.g. MAP, TOP
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31129—Universal interface for different fieldbus protocols
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Studio Devices (AREA)
Abstract
本公开实施例公开了一种应用于工业控制系统的智能控制节点和数据传输方法。其中,所述智能控制节点包括:控制器本体、人工智能AI模块;所述控制器本体设置为,执行逻辑或过程控制类任务;还设置为通过以太网协议接口与所述工业控制系统中的上位机通信,通过高速串行计算机扩展总线PCIe交换机与所述AI模块通信;所述AI模块设置为,执行工业机器视觉处理类任务。本公开实施例方案提出了崭新的工业控制节点架构,引入了AI模块独立处理工业机器视觉处理类任务,能够充分满足工业控制系统中相关视频图像智能处理\控制需求。
Description
技术领域
本发明涉及但不限于工业控制领域,具体涉及一种应用于工业控制系统的智能控制节点和数据传输方法。
背景技术
工业控制领域的业务需求日益复杂,包括增多的控制对象、日益复杂的控制任务,以及多源异构的信息来源等方面都加剧了工业控制系统或设备的复杂度。特别是伴随视频监控,图像识别技术应用与推广,越来越多的工业控制系统中需利用视频或图像相关智能方案,进一步提升整体控制的智能化水平。这些智能算法大多具有迭代演化执行、并行性强的特点,需要强大的运算能力和更多的存储资源,无法直接部署到传统的基于嵌入式平台的控制器模块中。如何突破控制器单站有限资源环境的限制,使控制器具备工业图像智能识别处理及智能化控制能力,是本领域急需解决的问题。
发明内容
本公开实施例提供一种应用于工业控制系统的智能控制节点和数据传输方法,提出了崭新的工业控制节点(控制器)架构,引入了AI模块独立处理工业机器视觉处理类任务,以充分满足工业控制系统中相关视频图像智能处理\控制需求。
本公开实施例提供一种智能控制节点,应用于工业控制系统,包括:
控制器本体、人工智能AI模块;
其中,所述控制器本体设置为,执行逻辑或过程控制类任务;还设置为通过以太网协议接口与所述工业控制系统中的上位机通信,通过高速串行计算机扩展总线PCIe交换机与所述AI模块通信;
所述AI模块设置为,执行工业机器视觉处理类任务。
本公开实施例还提供一种数据传输方法,应用于上述智能控制节点,包括:
工业相机获取视频数据;
所述智能控制节点中的AI模块根据预装载的图像预处理算法处理所述视频数据;
所述AI模块根据预装载的AI推理算法处理预处理后的视频数据,得出推理结果;
所述AI模块根据预装载的数据格式规范,处理所述推理结果得到规定格式的数据后,向上位机上报所述规定格式的数据。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本公开实施例中一种智能控制节点的结构示意图;
图2为本公开实施例中另一种智能控制节点的结构示意图;
图3为本公开实施例中另一种智能控制节点的结构示意图;
图4为本公开实施例中另一种智能控制节点的结构示意图;
图5为本公开实施例中一种数据传输方法的流程图;
图6为本公开实施例中另一种数据传输方法的流程图;
图7为本公开实施例中另一种数据传输方法的流程图;
图8为本公开实施例中另一种数据传输方法的流程图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
工业控制系统中逐渐涉及越来越多的视频或图像数据的传输和处理,为了提升处理有效性和准确性,这些有关视频或图像的处理方案越发“智能”,具有迭代演化执行、并行性强的特点,必然要求更强大的运算能力和相关资源。在已有的基于嵌入式平台的控制器中,无法简单有效地部署这些智能处理方案。因此,本公开实施例提出了新的智能控制节点架构,为多类型处理单元的混合异构架构,能够支撑逻辑控制、过程控制、运动控制、机器视觉等实时或非实时任务的处理,满足复杂的运算需求。通过独立的AI模块处理视频或图像数据,能够大幅度提升处理速度,降低工业控制系统网络中的通信带宽。
本公开实施例提供一种智能控制节点,如图1所示,应用于工业控制系统,包括:
控制器本体101、人工智能AI模块102;
其中,所述控制器本体101设置为,执行逻辑或过程控制类任务;还设置为通过以太网协议接口与所述工业控制系统中的上位机通信,通过高速串行计算机扩展总线PCIe交换机与所述AI模块102通信;
所述AI模块102设置为,执行工业机器视觉处理类任务。
一些示例性实施例中,逻辑或过程控制类任务主要针对控制生产过程中对响应速度要求相对不高的情况,例如,允许在百毫秒级别返回响应的任务;即,逻辑或过程控制类任务为控制生产过程中任务执行的响应时间不超过第一响应时长的任务。例如,开关量顺序控制和/或模拟量连续运算控制,执行算术运算、函数运算、三角几何运算、矩阵运算和/或闭环控制PID(比例-积分-微分)运算等,一些示例性实施例中,第一响应时长为百毫秒级时长,例如,第一响应时长为200毫秒,即逻辑或过程控制类任务是要求响应时间不超过200毫秒的控制任务。
一些示例性实施例中,如图2所示,所述智能控制节点还包括:现场可编程门阵列FPGA模块103,设置为执行实时性运动控制类任务,通过所述PCIe交换机与所述控制器本体101通信。
一些示例性实施例中,实时性运动控制类任务主要针对控制生产过程中对响应速度要求相对较高的情况,例如,必须在毫秒级别以内返回响应的任务;即,实时性运动控制类任务为控制生产过程中任务执行的响应时间不超过第二响应时长的任务。例如,对目标对象的位置、速度和/或加速度所做的控制;可以是单坐标的直线运动,也可以是多坐标的平台、立体、角度变换等运动。一些示例性实施例中,第二响应时长为毫秒级时长,例如,第二响应时长为1毫秒,即实时性运动控制类任务是要求在1毫秒内响应的控制任务。
其中,第一响应时长大于第二响应时长。
一些示例性实施例中,如图3所示,所述智能控制节点还包括:其他任务执行模块104,设置为执行采集信号输入、执行信号输出和/或与其他被控制设备(现场仪表)的数据通信任务;所述其他任务执行模块104也通过所述PCIe交换机与控制器本体通信。
一些示例性实施例中,采集信号输入包括:指电流、电压、温度、压力等模拟量信号的采集、滤波及数字化转化,和/或开关量信号的采集及滤波等。执行信号输出包括:输出数字量信号的锁存及模拟化,和/或开关量信号输出及保持等。数据通信任务指完成与现场仪表或其它设备之间的以太网或现场总线协议通信,包括:通信的建立、参数配置、数据交换和/或诊断处理等。
可以理解,所述控制器本体101上设置所述PCIe交换机(PCIe Swtich)作为PCIeRC端通过该PCIe总线与外部模块102-104进行通信,包括预装数据下载、控制命令下发、采集数据上报等。AI模块102连接工业相机,可以诊断自身状态及工业相机状态等,并将诊断结果实时上报到控制器本体101中;AI模块102通过工业相机获取现场视频或图像,进行图形图像识别及处理,把结果上传到控制器本体进行进一步处理,还可以将异常图片通过控制器本体101传输到上位机进行存储。
一些示例性实施例中,所述控制器本体101包括:CPU1011,以太网协议接口1012和PCIe交换机1013。
一些示例性实施例中,如图4所示,控制器本体101还包括PCIe RC接口逻辑1014,PCIe RC接口逻辑通过PCIe交换机1013与外部模块102-104进行通信。其中,PCIe RC接口逻辑1014为硬件描述语言实现的采用RC(Root Complex)模式通信的PCIe协议逻辑。
一些示例性实施例中,如图4所示,所述AI模块102包括:AI芯片组1021和FPGA芯片组1022;
所述AI芯片组1021包括:中央处理器CPU10211、嵌入式神经网络处理器NPU10212、以太网接口10213;
所述AI芯片组1021还包括:第一USB接口10214或第一SPI接口10215;
所述FPGA芯片组1022包括:微处理器MCU10221;还包括:第二USB接口10222或第二SPI接口10223;
所述以太网接口10213用于与工业相机通信;
所述AI芯片组1021通过第一USB接口10214与所述FPGA芯片组1022的第二USB接口10222通信;或者,所述AI芯片组1021通过第一SPI接口10215与所述FPGA芯片组的第二SPI接口10223通信。
一些示例性实施例中,所述FPGA芯片组1022还包括:存储器10224、存储控制器10225、PCIe EP接口逻辑10226、PCIe接口10227;
所述PCIe EP接口逻辑10226为硬件描述语言实现的采用EP(Endpoint)模式通信的PCIe协议逻辑,也称为PCIe EP逻辑;
所述FPGA芯片组1022设置为,利用所述PCIe EP接口逻辑10226逻辑通过所述PCIe接口10227与所述控制器本体101通信。
一些示例性实施例中,所述存储器10224为DDR(Double Data Rate,双倍速率存储器)。
需要说明的是,FPGA芯片组1022采用EP模式与控制器本体101进行PCIe协议通信,控制器本体101侧的对应为PCIe RC接口逻辑1014,也称为PCIe RC(Root Complex)逻辑。
一些示例性实施例中,所述AI芯片组1021还设置为,作为主站通过USB(UniversalSerial Bus,通用串行总线)或SPI(Serial Peripheral Interface,串行外设接口)协议读写所述存储器10224中数据。
一些示例性实施例中,所述FPGA芯片组1022还设置为,通过通用输入输出GPIO设置所述AI芯片组1021的信号位。
其中,所述AI芯片组1021的信号位至少包括以下之一:
输入中断信号、读取完成信号、写入完成信号。
一些示例性实施例中,通过GPIO设置所述AI芯片组1021的信号位,包括:通过GPIO设置这些信号位低电平,则信号位有效;相应地,通过GPIO设置这些信号位高电平,则清除信号位。本领域技术人员还可以选择其他设置方式,不限于本公开记载的示例。
一些示例性实施例中,所述控制器本体101还设置为,通过GPIO设置所述FPGA芯片组1022的信号位。
其中,所述FPGA芯片组1022的信号位至少包括:PCIe EP接口逻辑的输入中断信号。
一些示例性实施例中,通过GPIO设置所述FPGA芯片组1022的信号位,包括:通过GPIO设置这些信号位低电平,则信号位有效;相应地,通过GPIO设置这些信号位高电平,则清除信号位。本领域技术人员还可以选择其他设置方式,不限于本公开记载的示例。
一些示例性实施例中,所述AI芯片组通过第一USB接口与所述FPGA芯片组的第二USB接口通信,包括:
所述AI芯片组作为主站,所述FPGA芯片组作为从站,通过USB协议通信;或者,所述AI芯片组作为从站,所述FPGA芯片组作为主站,通过USB协议进行通信;
或者,
所述AI芯片组作为主站,所述FPGA芯片组作为从站,通过USB协议通信;或者,所述AI芯片组作为从站,所述FPGA芯片组作为主站,通过SPI协议进行通信。
需要说明的是,图4所示的智能控制节点为本公开实施例方案的实施例的结构示意图,暂未体现上述记载中涉及的控制器本体101中的PCIe交换机1013和FPGA芯片组1022中的PCIe接口10227,本领域技术人员能够知晓相关方面的具体实施步骤。
本公开实施例还提供一种数据传输方法,如图5所示,包括:
步骤501,工业相机获取视频数据;
步骤502,所述智能控制节点中的AI模块根据预装载的图像预处理算法处理所述视频数据;
步骤503,所述AI模块根据预装载的AI推理算法处理预处理后的视频数据,得出推理结果;
步骤504,所述AI模块根据预装载的数据格式规范,处理所述推理结果得到规定格式的数据后,向上位机上报所述规定格式的数据。
一些示例性实施例中,步骤502包括:
所述AI模块中AI芯片组中的CPU执行所述图像预处理算法进行所述视频数据的预处理。
步骤503包括:
所述AI模块中AI芯片组中的NPU执行所述AI推理算法得出所述推理结果。
步骤504包括:
步骤5041,所述AI模块中AI芯片组中的CPU根据所述数据格式规范处理所述推理结果得到所述规定格式的数据;
步骤5042,所述AI芯片组上报所述规定格式的数据到所述AI模块中的FPGA芯片组;
步骤5043,所述FPGA芯片组通过PCIe EP接口逻辑上报所述规定格式的数据到所述智能控制节点中的控制器本体;
步骤5044,所述控制器本体通过所述以太网接口向所述上位机上报所述规定格式的数据。
一些示例性实施例中,步骤501或502之前,所述方法还包括:
步骤5011,所述智能控制节点中的控制器本体通过PCIe交换机发送预装数据到所述AI模块中的FPGA芯片组;
步骤5012,所述AI模块中的AI芯片组基于与所述FPGA芯片组协商好的通信参数,通过USB或SPI接口获取所述预装数据;
步骤5013,所述AI芯片组加载所说预装数据。
其中,所述预装数据至少包括以下之一:
图像预处理算法、AI推理算法、数据格式规范。
一些示例性实施例中,所述预装数据还至少包括以下之一:
PCIe EP接口逻辑的初始化参数、AI芯片组与FPGA芯片组的通信参数。
一些示例性实施例中,所述预装数据还包括其他来自控制器(节点)的下装参数。
一些示例性实施例中,步骤5011包括:
所述FPGA芯片组的PCIe EP接口逻辑执行EP模式初始化后,所述控制器本体启动直接存储器访问DMA发送所述预装数据到所述FPGA芯片组中PCIe EP接口逻辑中的EP端数据存储区中,并通过所述FPGA芯片组中存储控制器将所述EP端数据存储区中的预装数据写入所述FPGA芯片组中的存储器;
一些示例性实施例中,步骤5012包括:
所述控制器本体完成所述预装数据发送后,通过GPIO设置所述AI芯片组中的输入中断信号,指示所述AI芯片组下载所述预装数据;
所述AI芯片组根据所述输入中断信号的指示,作为协议主站通过USB或SPI协议读取所述存储器中的预装数据;
所述AI芯片组读取完毕后,所述AI芯片组设置自身的读取完成信号;
所述FPGA芯片组读取所述AI芯片组的读取完成信号,复位GPIO以清除所述AI芯片组的输入中断信号,并清除所述AI芯片组的读取完成信号。
一些示例性实施例中,步骤501或502之前,所述方法还包括:
步骤5014,所述AI模块进行自检和/或所述AI模块对连接的工业相机进行状态诊断;
步骤5015,所述AI模块上报自检结果和/或工业相机诊断结果给所述控制器本体。
需要说明的是,在步骤5011-5015均执行的情况下,步骤5014-5015与步骤5011-5013不限定执行先后。
一些示例性实施例中,步骤5042包括:
所述AI芯片组获取所述FPGA芯片组中存储器的状态;
在确定所述存储器的状态为允许写入的情况下,所述AI芯片组作为主站通过USB或SPI协议将所述规定格式的数据写入所述存储器中;
在写入完成后,所述AI芯片组设置自身的写入完成信号。
一些示例性实施例中,步骤5043包括:
所述FPGA芯片组读取所述AI芯片组的写入完成信号;
通过GPIO设置所述PCIe EP接口逻辑的输入中断信号,并清除所述AI芯片组的写入完成信号;
所述FPGA芯片组通过所述PCIe EP接口逻辑向所述控制器本体发送中断;
所述控制器本体根据中断信号,启动直接存储器访问DMA访问所述PCIe EP接口逻辑中的EP端数据存储区,获取所述存储器中的规定格式的数据;
所述规定格式的数据读取完毕后,所述控制器本体通过PCIe协议清除所述PCIeEP接口逻辑的输入中断信号。
本公开实施例还提供一种数据传输方法,该传输方法用于传输下行数据给AI芯片,如图6所示,包括:
1、AI模块FPGA芯片组上的EP端完成初始化,划分好BAR空间,区分为数据存储区域(用于读写DDR)和寄存器区域(用于操作GPIO)。
2、控制器本体通过PCIe总线的DMA传输把下行数据发送给AI模块FPGA芯片组上的PCIe EP接口逻辑的EP端数据存储区,再通过DDR控制器写入DDR中。
3、控制器本体完成所有下行数据的发送后,通过PCIe总线写PCIe EP接口逻辑的EP端的寄存器区域,通过GPIO(置位成低电平有效)置位AI芯片组的“输入中断”信号,通知AI芯片组可以进行下行数据获取。
4、AI芯片组作为协议主站通过USB/SPI协议获取FPGA芯片组中的DDR中存储的下行数据,搬运完成后置位自身的“读取完成”信号。
5、FPGA芯片组的MCU在查询到AI芯片组置位的“读取完成”信号后,复位GPIO(置位成高电平无效)以清除AI芯片组的“输入中断”信号,并清除AI芯片组置位的“读取完成”信号。
本公开实施例还提供一种数据传输方法,该传输方法用于传输上行数据给控制器,如图7所示,包括:
1、AI芯片组查询FPGA芯片组的DDR数据状态,状态为允许写时,AI芯片组作为USB/SPI主站把数据搬运到FPGA芯片组,最终写入其DDR中,搬运完成后置位FPGA芯片组上的“写入完成”信号。
2、FPGA芯片组中的MCU查询到AI芯片组置位的“写入完成”信号,操作GPIO置位PCIe EP接口逻辑的“输入中断”信号(置位成低电平有效),并清除AI芯片组置位的“写入完成”信号。
3、AI模块FPGA芯片组的PCIe EP接口逻辑通过PCIe总线发送中断给控制器本体。
4、控制器本体启动DMA访问AI模块FPGA芯片组的PCIe EP接口逻辑,并从FPGA芯片组的DDR中读取数据。
5、PCIe EP接口逻辑完成数据传输后,控制器本体通过PCIe协议写PCIe EP接口逻辑的GPIO区域,通过GPIO清除PCIe EP接口逻辑的“输入中断”信号(置位成高电平无效)。
本公开实施例还提供一种数据传输方法,图形图像识别及处理任务主要在AI芯片组内完成,其软件程序运行在AI芯片组所集成的CPU中,NPU作为运算资源被CPU调用,如图8所示,包括:
1、初始化设置;
包括:AI芯片组协商完与FPGA芯片组的通信参数等,接收来自控制器本体的下装参数,更新配置各运行参数。
2、算法模型装载;
其中,就是把图形图像运算模型文件从FLASH等非易失性存储器中装载到内存中,为后续AI推理过程做数据准备。如果控制器本体有新下装的算法模型,则会更新FLASH存储器中的文件,并重新加载到内存中,否则只在AI模块上电后加载一次到内存中;
3、模块自诊断;
对AI模块自身状态、连接的工业相机状态等进行自诊断,如果诊断出有严重问题,则会置位本次运算结果不可信;
4、工业相机图像获取;
完成对工业相机视频图像信号的采集,从中获取所需要的视频帧,可以是以周期采集的方式进行采集,或者以事件触发的方式进行视频帧的采集,这取决于上位机组态软件的设置;
5、图像预处理;
图像预处理过程包括针对图像的畸形矫正、旋转、尺寸规格化、色彩及亮度补偿、灰度化等。如果判断出图片异常无法使用,则直接进入第8步,否则根据算法模型的入口函数要求,针对待处理图片设置各种运算参数属性。
6、AI推理;
AI推理运算是图形图像处理任务的核心部分,也是计算量最大的部分,软件程序调用算法模型的接口函数并把任务分配到NPU上完成推理运算。
7、推理结果获取;
在NPU完成AI推理运算后,软件程序获取NPU输出的AI推理运算结果,并对运算结果进行分析整理,得到规定格式的数据。
8、上报结果。
程序与FPGA芯片组协商通信,并把自诊断结果、图形图像运算结果或者异常图像作为上行数据发送给FPGA芯片组,再上报给控制器本体处理。
本公开实施例提供的一种智能控制节点,应用于工业控制系统中担当相关方案中控制器的角色,该智能控制节点的系统架构为多类型处理单元的混合异构架构,支撑逻辑或过程控制、运动控制、机器视觉等实时和非实时任务处理,可满足复杂运算需求。控制器本体与AI模块、FPGA模块和/或其他模块通过PCIe互连,实现异构计算中专用加速单元与处理器之间的协同工作。该架构相在快速图形采集识别及处理、降低通信带宽等方面相对传统的工业控制器具有很强的优势,能够很好满足机器视觉图形图像处理的要求。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (10)
1.一种智能控制节点,应用于工业控制系统,其特征在于,包括:
控制器本体、人工智能AI模块;
其中,所述控制器本体设置为,执行逻辑或过程控制类任务;还设置为通过以太网协议接口与所述工业控制系统中的上位机通信,通过高速串行计算机扩展总线PCIe交换机与所述AI模块通信;
所述AI模块设置为,执行工业机器视觉处理类任务。
2.如权利要求1所述的智能控制节点,其特征在于,
还包括:现场可编程门阵列FPGA模块,设置为执行实时性运动控制类任务,通过所述PCIe交换机与所述控制器本体通信。
3.如权利要求1或2所述的智能控制节点,其特征在于,
所述AI模块包括:AI芯片组和FPGA芯片组;
所述AI芯片组包括:中央处理器CPU、嵌入式神经网络处理器NPU、以太网接口;
所述AI芯片组还包括:第一USB接口或第一SPI接口;
所述FPGA芯片组包括:微处理器MCU;还包括:第二USB接口或第二SPI接口;
所述以太网接口用于与工业相机通信;
所述AI芯片组通过第一USB接口与所述FPGA芯片组的第二USB接口通信;或者,所述AI芯片组通过第一SPI接口与所述FPGA芯片组的第二SPI接口通信。
4.如权利要求3所述的控制节点,其特征在于,
所述FPGA芯片组还包括:存储器、存储控制器、PCIe EP接口逻辑、PCIe接口;
所述PCIe EP接口逻辑为硬件描述语言实现的采用EP模式通信的PCIe协议逻辑;
所述FPGA芯片组设置为,利用所述PCIe EP接口逻辑通过所述PCIe接口与所述控制器本体通信。
5.如权利要求4所述的智能控制节点,其特征在于,
所述AI芯片组还设置为,作为主站通过USB或SPI协议读写所述存储器中数据;
或者,
所述FPGA芯片组还设置为,通过通用输入输出GPIO设置所述AI芯片组的信号位;
或者,
所述控制器本体还设置为,通过GPIO设置所述FPGA芯片组的信号位。
6.一种数据传输方法,其特征在于,应用于如权利要求1-5任一项所述的智能控制节点,包括:
工业相机获取视频数据;
所述智能控制节点中的AI模块根据预装载的图像预处理算法处理所述视频数据;
所述AI模块根据预装载的AI推理算法处理预处理后的视频数据,得出推理结果;
所述AI模块根据预装载的数据格式规范,处理所述推理结果得到规定格式的数据后,向上位机上报所述规定格式的数据。
7.如权利要求6所述的方法,其特征在于,
所述智能控制节点中的AI模块根据预装载的图像预处理算法处理所述视频数据,包括:所述AI模块中AI芯片组中的CPU执行所述图像预处理算法进行所述视频数据的预处理;
所述AI模块根据预装载的AI推理算法处理预处理后的视频数据,得出推理结果,包括:所述AI模块中AI芯片组中的NPU执行所述AI推理算法得出所述推理结果;
所述AI模块根据预装载的数据格式规范,处理所述推理结果得到规定格式的数据后,向上位机上报所述规定格式的数据,包括:所述AI模块中AI芯片组中的CPU根据所述数据格式规范处理所述推理结果得到所述规定格式的数据;所述AI芯片组上报所述规定格式的数据到所述AI模块中的FPGA芯片组;所述FPGA芯片组通过PCIe EP接口逻辑上报所述规定格式的数据到所述智能控制节点中的控制器本体;所述控制器本体通过所述以太网接口向所述上位机上报所述规定格式的数据。
8.如权利要求6所述的方法,其特征在于,
所述方法还包括:
所述智能控制节点中的控制器本体通过PCIe交换机发送预装数据到所述AI模块中的FPGA芯片组;
所述AI模块中的AI芯片组基于与所述FPGA芯片组协商好的通信参数,通过USB或SPI接口获取所述预装数据;
所述AI芯片组加载所述预装数据;
其中,所述预装数据至少包括以下之一:
图像预处理算法、AI推理算法、数据格式规范。
9.如权利要求8所述的方法,其特征在于,
所述智能控制节点中的控制器本体通过PCIe交换机发送预装数据到所述AI模块中的FPGA芯片组,包括:
所述FPGA芯片组的PCIe EP接口逻辑执行EP模式初始化后,所述控制器本体启动直接存储器访问DMA发送所述预装数据到所述FPGA芯片组中PCIe EP接口逻辑中的EP端数据存储区中,并通过所述FPGA芯片组中存储控制器将所述EP端数据存储区中的预装数据写入所述FPGA芯片组中的存储器;
所述AI模块中的AI芯片组基于与所述FPGA芯片组协商好的通信参数,通过USB或SPI接口获取所述预装数据,包括:
所述控制器本体完成所述预装数据发送后,通过GPIO设置所述AI芯片组中的输入中断信号,指示所述AI芯片组下载所述预装数据;所述AI芯片组根据所述输入中断信号的指示,作为协议主站通过USB或SPI协议读取所述存储器中的预装数据;所述AI芯片组读取完毕后,所述AI芯片组设置自身的读取完成信号;所述FPGA芯片组读取所述AI芯片组的读取完成信号,复位GPIO以清除所述AI芯片组的输入中断信号,并清除所述AI芯片组的读取完成信号。
10.如权利要求7所述的方法,其特征在于,
所述AI芯片组上报所述规定格式的数据到所述AI模块中的FPGA芯片组,包括:
所述AI芯片组获取所述FPGA芯片组中存储器的状态;在确定所述存储器的状态为允许写入的情况下,所述AI芯片组作为主站通过USB或SPI协议将所述规定格式的数据写入所述存储器中;在写入完成后,所述AI芯片组设置自身的写入完成信号;
所述FPGA芯片组通过PCIe EP接口逻辑上报所述规定格式的数据到所述智能控制节点中的控制器本体,包括:
所述FPGA芯片组读取所述AI芯片组的写入完成信号;通过GPIO设置所述PCIe EP接口逻辑的输入中断信号,并清除所述AI芯片组的写入完成信号;所述FPGA芯片组通过所述PCIe EP接口逻辑向所述控制器本体发送中断;所述控制器本体根据中断信号,启动直接存储器访问DMA访问所述PCIe EP接口逻辑中的EP端数据存储区,获取所述存储器中的规定格式的数据;所述规定格式的数据读取完毕后,所述控制器本体通过PCIe协议清除所述PCIeEP接口逻辑的输入中断信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110997602.9A CN113778031A (zh) | 2021-08-27 | 2021-08-27 | 一种智能控制节点和数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110997602.9A CN113778031A (zh) | 2021-08-27 | 2021-08-27 | 一种智能控制节点和数据传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113778031A true CN113778031A (zh) | 2021-12-10 |
Family
ID=78839651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110997602.9A Pending CN113778031A (zh) | 2021-08-27 | 2021-08-27 | 一种智能控制节点和数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113778031A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104284065A (zh) * | 2014-09-30 | 2015-01-14 | 华中科技大学 | 一种基于fpga的工业智能相机 |
CN104835163A (zh) * | 2015-05-11 | 2015-08-12 | 华中科技大学 | 一种针对运动目标检测的嵌入式实时高速双目视觉系统 |
CN112085038A (zh) * | 2019-05-27 | 2020-12-15 | 湖北三江航天万峰科技发展有限公司 | 一种基于多核dsp的高速视频图像处理方法及系统 |
CN112148670A (zh) * | 2020-10-19 | 2020-12-29 | 北京大地信合信息技术有限公司 | 多功能业务板卡以及数据处理方法 |
CN112947304A (zh) * | 2021-03-09 | 2021-06-11 | 上海交通大学 | 智能相机多核异构片上集成系统及视觉控制方法 |
-
2021
- 2021-08-27 CN CN202110997602.9A patent/CN113778031A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104284065A (zh) * | 2014-09-30 | 2015-01-14 | 华中科技大学 | 一种基于fpga的工业智能相机 |
CN104835163A (zh) * | 2015-05-11 | 2015-08-12 | 华中科技大学 | 一种针对运动目标检测的嵌入式实时高速双目视觉系统 |
CN112085038A (zh) * | 2019-05-27 | 2020-12-15 | 湖北三江航天万峰科技发展有限公司 | 一种基于多核dsp的高速视频图像处理方法及系统 |
CN112148670A (zh) * | 2020-10-19 | 2020-12-29 | 北京大地信合信息技术有限公司 | 多功能业务板卡以及数据处理方法 |
CN112947304A (zh) * | 2021-03-09 | 2021-06-11 | 上海交通大学 | 智能相机多核异构片上集成系统及视觉控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0298396A2 (en) | Function-distributed control apparatus | |
US10782667B2 (en) | Real-time environment and programmable logic controller | |
KR102544829B1 (ko) | 모터 제어 방법 및 디바이스 | |
CN114708480B (zh) | 一种负载均衡控制方法、装置及电子设备 | |
US20230022294A1 (en) | Method for Scheduling Hardware Accelerator and Task Scheduler | |
CN110673647B (zh) | 全向避障方法及无人飞行器 | |
CN111371662A (zh) | 一种冗余的自动驾驶系统及其控制方法 | |
EP3557345B1 (en) | Control apparatus, system program, and control method | |
CN110405750B (zh) | 一种机器人的运动控制方法、装置及机器人 | |
CN114463163B (zh) | 一种异构多核的图像处理方法及装置 | |
CN111045393A (zh) | 驱控一体伺服实现系统 | |
US11520302B2 (en) | Control system and control device | |
CN113778031A (zh) | 一种智能控制节点和数据传输方法 | |
US5867383A (en) | Programmable logic controller | |
CN113741166A (zh) | 一种基于多cpu工业系统控制器的工控逻辑冗余实现方法 | |
CN108388943B (zh) | 一种适用于神经网络的池化装置及方法 | |
CN116627614A (zh) | 任务同步方法、处理器、设备、存储介质及程序产品 | |
CN112947304A (zh) | 智能相机多核异构片上集成系统及视觉控制方法 | |
EP3850446B1 (en) | Extension device for a programmable logic controller | |
CN117971745B (zh) | 一种数据处理系统、方法、装置、设备及介质 | |
CN114458660B (zh) | 一种电控总线液压阀用控制系统及控制方法 | |
CN112965436B (zh) | 一种单线程多轴控制方法及相关装置 | |
US20240201732A1 (en) | Method for operating a data processing system | |
CN115408109A (zh) | 运行系统 | |
US20240199070A1 (en) | Method for operating a data processing system |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211210 |