(广州华立科技职业学院,广州 511325)
人工智能是当前最热门的话题之一,在各个领域都具有广泛的用途,如在工业领域,人工智能可以帮助大幅度减轻编程,减少工程开发的工程量,使工程内部的控制工作能够进行得更加顺利,控制逻辑在面对环境变化时可以更加灵敏地运行[1]。未来自动化系统将会大力应用人工智能,并将人工智能打造成自动化系统的重要功能系统,在全自动化集成环境下,可实现涵盖从现场层、控制器层、边缘层直至云端的可扩展智能解决方案,当应用环境和应用目标不同时,还要进行适当调整。加入人工智能模块的系统不仅能够在单台机器上使用,也可以在所有机器上使用[2]。
SIMATIC于1958年诞生,距今已经有50年的历史,无论是PLC、工业软件,还是HMI都是SIEMENS自动化品牌研究的内容。目前SIMATIC已经从S3系列发展到S7系列,已经成为目前我国最被信赖的品牌之一。SIMATIC S7—1500 TM NPU人工智能识别模块具有很强的识别能力,可以识别场景,但是特定场景识别能力较差,由于识别过程中设备的稳定性不高,所以很难得到高精度识别结果,控制效果差[3]。
MMX—VPU英文全称为MovidiusMynad X视觉处理器(VPU),是一种视觉神经卡,具有高效的视觉识别能力和处理能力,可以有效提高Simatic控制系统内部的人工智能模块的控制能力[4]。综上所述,基于MMX—VPU设计了一种Simatic系统的人工智能模块,分析了模块内部摄像机的布置结构,并阐述了模块的识别功能。
人工智能模块,是集成人工智能(AI)芯片的模块,被应用于SIMATIC S7—1500控制器和ET 200MP I/O系统中[5]。SIMATIC指的是西门子自动化系列产品,由西门子(SIEMENS)+自动化(Automatic)共同组成。SIEMENS全新TM 神经处理器如图1所示。
图1 SIEMENS全新TM神经处理器
本文设计的人工智能模块是基于MMX-VPU设计的,共包括人工智能视觉识别单元和人工智能视觉处理单元两部分。
SIMATIC S7—1500控制器采用的处理器为TM神经处理器(NPU),该处理器是由Intel公司生产,是MovidiusMynad X视觉处理器(VPU)系列的产品之一,该处理器在处理神经网络问题中具备高效处理的能力,人工智能模块中配有的USB 3.1接口和千兆以太网端口可以利用SD卡获得训练过程的神经系统功能。
针对Simatic系统设计人工智能识别模块,该模块的核心设备为摄像机和加速度计,通过摄像机和加速度计同时工作完成信息的识别。智能模块中的摄像机是由美国TASED公司研发的360人工智能视觉摄像机,该摄像机的设计原理为是人工智能视觉原理,清晰度为1080P,镜头的角度为150°广角,不仅可以识别物体,同时可以判断物体的颜色,辨别语音,并进行雷达监测。在人工智能模块中,对摄像机结构进行安排,结构示意图如图2所示。
图2 人工智能识别模块摄像机结构示意图
观察图2可知,设计的人工智能模块摄像机结构示意图由上下两层结构组成,共有两个端口,上层端口为检测端,下层端口为重构端。检测端的检测器负责检测信息,分类器负责实现信息分类,跟踪器负责对得到的信息进行跟踪。重构端包括多种电路,如:异常监测电路、形状恢复电路和分辨率恢复电路,除此之外,重构端还加入了一个重构器。当传来初始特定场景图像信息后,检测端内部拥有固定的顺序,这一固定顺序可以将图像的原始参数打乱,并对参数进行分类,通过跟踪器对比原始图像参数和3D立体图像的参数,完成对比后返回重构端,再通过重构端来完成新一次的立体重建。重构端中的加速度计会对特定场景图像中的物体进行加速测量,整个测量工作都需要数字控制,内部的供电蓄电池电量为3.3 V,并自带编程入口,可以编程数据,数据编程入口得到的结果通过计算机软件进行测量,根据测量结果设计代码,直接送给加速度计使用,从而有效提高人工智能模块识别的效率和识别的精度。
识别单元使用的芯片为复旦微电子公司生产的型号为FM11RF08的非接触式识别芯片,芯片结构如图3所示。
图3 FM11RF08非接触式识别芯片
该芯片使用的标准为ISO/IEC 14443—A芯片,不需要电源就要进行数据传输和能量传输,芯片的工作频率为13.56 MHz,通讯波特率为106 kbit/s,芯片使用的通讯方式为半双工通讯方式,加入的加密算法满足算法的M1标准,对数据的识别时间低于100 ms[6]。芯片内部加入了三重防伪认证,可以有效确保数据在安全的状态下实现通信和传输,如果SIMATIC系统使用了分级密钥,那么每个扇区都会设置两套独立的密钥。通讯方式为非接触通讯,每个数据块之间都设定了16位CRC纠错,每个字节都需要进行奇偶校验位,通过编码的方式对“1”、“0”或者无信息进行区分。
人工智能模块内部配有传感器和CPU,传感器上的数据和CPU程序上的数据不可以直接反馈给中心系统,需要在神经网络的基础上进行处理,通常采用的处理算法是机器学习算法。传统的图像处理算法在进行信息识别时,必须要对每项信息数据进行精准地设置,但是机器学习算法是通过分析图像数据来进行识别的,灵活性更高。加入机器学习算法后的人工智能处理模块可以同时完成生产工厂的视觉质量检验和图像引导,效率更高,专业性更强。
在人工智能模块的处理单元上安装了VPU,该款VPU采用的是英特尔新款 Myriad X VPU芯片,并通过专用的硬件加速器实现加速工作。利用Myriad X进行图像处理和神经网络计算,Myriad X在计算机视觉领域中有着重要的地位,是计算机视觉应用的先驱。单元内部的嵌入式英特尔芯片可以在训练模型的基础上,提高处理和数据评估的速度,加强人工智能模块在工业自动化领域的应用范围[7]。
在处理单元的集成接口上安装可兼容的传感器,通过传感器来采集数据,被采集到的数据和CPU程序内部数据在经过神经网络处理后,还需要重新进入CPU程序中完成评估。处理单元的外部框架选用的是Tensorflow开放式人工智能框架,大大提高运行过程的开放性。基于MMX-VPU的人工智能处理单元处理过程如图4所示。
图4 基于MMX-VPU的人工智能处理单元处理过程
处理单元将AI算法逻辑融合到一起,有效降低应用成本,在人工智能模块中加入具有AI 功能的MyriadTMX视觉处理单元芯片,能够大大提高神经网络对数据的处理效率。在中央机架Simatic控制系统的CPU后面、分布式I/P接口模块的前面安装TM NPU,安装数量根据实际应用情况决定。
处理单元通过神经系统完成运行,该神经系统必须要在SD卡上经过训练,利用千兆以太网和USB3.1兼容传感器作为处理单元内部集成接口[8]。利用背板总线获得CPU数据,并将获得的数据作为原始数据在CPU程序中进行处理和分析,运行过程如图5所示。
图5 CPU数据处理过程
处理模块中使用的处理芯片名称为Tensor Processing Units,简称TPU,TPU芯片又称张量处理器芯片,能够有效加速神经网络,对大量数据库进行并行计算,并且在计算过程中确保消耗的能耗很低[9]。
芯片结构如图6所示。
图6 TPU处理芯片
TPU内部不主要是由运算单元、数据单元、控制逻辑单元和I/O共同组成。TPU在设计时,缩短了控制单元所占空间,将缩小的空间应用到存储器和运算单元中,因此芯片虽然只有其它芯片的一半,但是学习速度是传统GPU的15~30倍,性能功耗比也能高出30~80倍,十分适合应用到人工智能模块中。
基于MMX-VPU的SIMATIC控制系统的人工智能模块具有优秀的识别功能和处理功能。识别单元中的传感器采集到的信息会在处理单元内部的神经网络中不断训练,对图像的各种参数进行判别。通过STEP 7标准软件包与数据进行控制操作,包括编程、组态、模拟和维护等等。利用C7 PLC和SIMATIC WinAC对智能模块中的PC设备进行组态编程和维护,实现各项目的管理工作。编程和在线仿真的操作平台为Windows平台。
人工智能模块中加入了基于PC的控制软件,该软件可以使用个人计算机完成程序的运行,通过WinAC提供的软件PLC和插槽PLC来实现人工智能模块硬件PLC的识别和处理功能。由于控制系统智能模块内部的处理器完全兼容,所以可以采用统一的编程工具进行编程,在S7系列的处理器上进行操作。
通过应用于机器级的ProTool和应用控级的WinCC设计人机界面软件,使人工智能模块中的操作面板和标准PC都能够在短时间内很好地完成组态。除了作为组态软件外,ProTool/Pro还可以监控Windows系统的运行状况。利用WinCC监控SIMATIC控制系统的数据,WinCC不仅能够实现数据监控,还能够进行数据采集,操作简单、开放性强、可靠性高,将其与人工智能模块中的PLC硬件进行结合,有效减少项目的处理时间。
为了检验基于MMX-VPU的SIMATIC控制系统的人工智能模块的工作效果,设计了实验研究,拍摄6组图像作为实验场景。
设置实验参数如表1所示。
表1 实验参数
设定的实验环境如图7所示。
图7 实验环境
根据上述实验参数和实验环境进行实验,同时选用传统的SIMATIC控制系统以及加入本文研究的人工智能模块的SIMATIC控制系统对4组图像数据进行识别和控制测试,得到的实验结果如下。
(1)识别效率测试:
传统的SIMATIC控制系统以及加入本文研究的人工智能模块的SIMATIC控制系统在对4组数据进行识别时花费的平均时间如表2所示。
表2 识别时间平均值对比结果
由表2可知,所提方法比传统方法的平均识别时间快331.97/ms。根据图像相对数据量和识别图像花费的时间计算出识别效率,得到的实验结果如图8所示。
图8 识别效率测试实验结果
由图8可知,加入所提方法后,识别效率较加入之前提高了55%。人工智能模块内部的软件识别程序可以对不同场景进行区分识别,即使是复杂场景,软件也可以将复杂信息过滤掉,从而提高识别效率。在进行识别时,人工智能模块会同时下发应答指令、防冲突指令、选择指令、验证指令、读写指令和传输指令,系统内部的人工智能模块各项设备同时工作,对复杂场景进行识别,识别的信息会快速输入到验证中心,通过验证中心检验所识别的数据的准确性,操作速度快,准确性高,对于加强系统的整体运行有重要效果。
(2)响应时间测试:
图9 响应时间测试结果
由上图可知,在对相同的数据量进行控制时,加入人工智能模块的SIMATIC控制系统花费的响应时间较未加入人工智能模块的SIMATIC控制系统快0.5/ms。未加入人工智能模块的SIMATIC控制系统在进行数据量识别时需要耗费大量的时间,且需要反复校验确保识别的准确率,所有的识别项目都是逐一进行的,而加入人工智能模块的SIMATIC控制系统中的各项设备同时工作,所有软件都会同时配合硬件工作,由监控程序控制效果,大大节省响应时间。
根据上述实验结果,得到如下实验结论:
(1)基于MMX-VPU的SIMATIC控制系统的人工智能模块具有很强的场景识别能力和信息处理能力,能够在短时间内实现特定场景信息识别,效率高、精度好;
(2)MMX-VPU的人工智能模块不仅能够识别低层视觉特征和低层听觉特征,同时可以得到最佳状态序列,将识别到的特征做成一个映射,通过映射来反映特征在时域上的联系,从而更好地表达特征;
(3)尤其是在复杂环境下,MMX-VPU视觉卡能够有效滤除掉杂乱信息背景,使特征点数目得到减少,进而提高特征点的质量;
(4)通过分析SIMATIC的控制效果可知,加入基于MMX-VPU的人工智能模块后,系统的拓扑结构更强,灵活性更高,鲁棒性更强;
(5)利用神经网络对得到的数据进行训练,使环境背景音和噪音能够完全融合到控制系统中,从而提高控制系统的工作效果。
人工智能模块在未来的集成自动化领域有着广阔的发展前景,不仅可以帮助自动化系统的控制逻辑更加灵活地面对环境变化,同时可以打造更加灵活地生产流程。本文设计的基于MMX-VPU的人工智能模块由识别单元和处理单元两部分组成,具有很强的控制能力,并可以帮助用户根据所处环境和应用目标自主地调整解决方案的规模。
该人工智能模块同时具备高灵活性、高质量、高效率和高性价比的优点,同时引用人工智能和机器算法,使SIMATIC控制系统在处理未知对象时更加轻松,不再需要耗费大量的资源进行编程,灵活性更高;可靠地质检专家知识可以直接输入人工智能模块,所有的神经网络模型都会利用上层网络进行训练,增加控制系统的质量;在面对人工干预时,人工智能模块会快速灵活地响应,缩短停机时间,增加系统的实用能力;SIMATIC控制系统可以通过人工智能模块在短时间内检测出生产遇到的问题,从而避免出现报废产品,降低工作成本。