具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供的PCB设备报警数据推送方法,可应用在如图1的应用环境中,其中,客户端与服务端进行通信。其中,客户端可以是各种PCB加工设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
远程控制设备(如设备自动化管理系统)和PCB设备(如激光钻孔设备、激光切割设备、激光成像设备等)之间的通信数据使用同一种信息模型。该信息模型用于描述PCB设备的基本数据结构和信息特征。
信息模型提供了一种设备与远端之间,或设备与设备之间约定的一种数据交互的模型格式。该信息模型可表现为远程控制设备(远端)构建设备、方法、数据项的树形结构模型,以加快PCB设备与远程控制设备之间的沟通效率。
具体地,用信息模型去描述PCB设备,是用信息结构体描述PCB设备,用协议将其数据化(如第一请求中的子项结构数据项),远程控制设备在获取这些数据后,依据其信息结构体,快速全面还原设备的组成结构或控制功能,以方便远端快速实现设备监控及远程控制等功能。
信息模型用来描述不同设备的基本数据结构和信息特征,该模型使用基本的节点对设备进行设计建模,定义数据和设备结构基本关系。如图2所示,PCB钻孔设备的各个组件、各组件的元器件、传感器等组合布局与信息模型形成逻辑对应关系,不同的设备可以依据其设备特点设计不同的组件单元,以满足PCB设备加工过程中各工序段的设计需求。图2的示例中,PCB设备结构信息包括PCB板材、加工程序、传感器、设备基础信息、运动部件、当前参数集信息、控制接口等组件。组件可以是虚拟的功能模块、也可以是设备本身的结构。外部为具有圆形倒角的方框的表示为方法。方法是控制设备动作的实例表达。外部为椭圆框的表示为数据项。数据项可以表示为组件的参数。不管是PCB设备、数据项、方法还是组件,均有对应的地址,从而远程控制设备在调用相应的目标对象时,均可通过地址进行调用。
例如,定义PCB设备的地址是123,控制接口的地址为1234,加载参数集的地址为1344,加载参数集对应的参数地址是1600。远程控制设备需要调用加载参数集的参数时,可以通过类似访问目录的方式去找到对应的参数,例如通过以下地址:123/1234/1344/1600即可获取到加载参数集对应的参数地址。
在一实施例中,如图3所示,提供一种PCB设备报警数据推送方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤S10-S50。
S10、接收所述PCB设备推送的带有报警编号的报警消息。
可理解地,在符合推送条件时,PCB设备向远程控制设备发送报警消息。在此处,报警消息包含报警编号。需要注意的是,远程控制设备与PCB设备之间传送的消息,均符合上述定义的信息模型。
在一示例中,当PCB设备发生报警时,会生成相应的报警编号,然后发送类型为C5F5的报警消息给远程控制设备。报警消息包括包头和消息体,报警编号存储在消息体中。
S20、获取与所述报警编号匹配的目标报警报告。
可理解地,远程控制设备预存有报警编号与目标报警报告之间的关联数据,每一报警编号唯一关联一个目标报警报告。因而,可以使用报警编号在关联数据中进行查询,获得匹配的目标报警报告。
S30、从所述目标报警报告提取报警参数信息;所述报警参数信息包括报警参数的报警类别和/或报警等级。
可理解地,目标报警报告可以是预先定义好的。目标报警报告包括报告编号以及报警参数信息。报警参数信息包括但不限于报警类别和报警等级。可以根据实际需要定义报警类别和报警等级。
在一示例中,报警类别可定义为7类,分别为:
1、信息通报(状态告知,如正常上料时打开安全门);
2、操作命令(无效或非法的操作指令);
3、参数超限(实际参数值超出标准值允许范围);
4、设备自检(设备自动检测状态不符合设定值);
5、保护动作(设备保护、安全装置未生效);
6、故障报警(设备部件发生故障);
7、事故报警(运行过程中发生事故)。
在另一示例中,报警级别可定义4种,分别为:
1、一般(信息告知);
2、重要(对产品有影响需采取措施);
3、严重(设备异常、设备安全警报,设备自身不能处理,需要人工干预);
4、特别严重(涉及人身安全、不可恢复的错误、发生重大事故)。
S40、根据所述报警参数信息,确定推送时间。
可理解地,在获得报警参数信息之后,可以根据报警参数信息中的报警类别和/或报警等级设置目标报警报告的推送时间。在一些示例中,推送时间可以包括三种类型,一种是即时、一种是延时、一种是不推送。
S50、在所述推送时间向指定终端推送所述目标报警报告。
可理解地,指定终端可以根据实际需要进行指定,如可以是工作人员操作的设备(包括但不限于个人电脑、手机、PCB设备等)。通过报警等级或报警类别确定的推送时间,避免了工作人员一直需要守在PCB设备旁边的问题,同时在发生较为严重的报警时,能进行快速判断并响应,极大地提高了报警消息的处理效率。
步骤S10-S50中,接收所述PCB设备推送的带有报警编号的报警消息;在此处,报警消息可以只携带报警编号,进而大大减少报警消息的数据量大小,确保报警消息传达的及时性和完整性(若报警消息的数据量较大,则可能受PCB设备故障影响,导致报警消息无法发出或发出的消息不完整)。获取与所述报警编号匹配的目标报警报告,在此处,远程控制设备预存有报警编号与目标报警报告之间的关联数据,可以通过报警编号匹配到相应的目标报警报告。从所述目标报警报告提取报警参数信息;所述报警参数信息包括报警参数的报警类别和/或报警等级;根据所述报警参数信息确定推送时间;在此处,可以基于报警参数信息的不同,选取不同的推送时间。在所述推送时间向指定终端推送所述目标报警报告,以完成目标报警报告的推送,使工作人员及时获得目标报警报告。本实施例可以提高报警消息的传送效率,确保报警消息传达的及时性和完整性。
可选的,步骤S10之前,即所述接收所述PCB设备推送的带有报警编号的报警消息之前,还包括:
S11、向所述PCB设备发送带有所述报警编号的报警订阅请求;
S12、接收所述PCB设备返回的用于响应所述报警订阅请求的订阅确认信息。
可理解地,远程控制设备可以向PCB设备发送带有报警编号或所述报警参数信息的报警订阅请求。在此处,报警订阅请求可以携带有一个或多个报警编号。PCB设备接收到该报警订阅请求之后,可以启用该报警编号的报警订阅推送。在完成报警订阅推送的启用之后,可以向远程控制设备发送相应的订阅确认结果。
在一示例中,报警订阅请求的消息标识可以是C5F3。在一些情况下,也可以向PCB设备发送带有报警编号的取消订阅请求,以取消对该报警编号的订阅。取消订阅请求的消息标识可以是C5F4。
本实施例可以实现特定范围的报警消息的订阅。
可选的,所述报警订阅请求包括订阅周期和/或触发条件;
步骤S10,即所述接收所述PCB设备推送的带有报警编号的报警消息,包括:
S101、接收所述PCB设备按照所述订阅周期推送的所述报警消息;和/或,
S102、接收所述PCB设备满足所述触发条件时推送的所述报警消息。
可理解地,报警订阅请求可以包括订阅周期和/或触发条件。订阅周期可以根据实际需要设置,如可以是每分钟一次,也可以是每天一次。在设置订阅周期之后,PCB设备按照订阅周期向远程控制设备推送报警消息。
触发条件可以根据实际需要设置,如报警等级大于预设等级、报警类别处于推送范围等。在设置触发条件之后,若PCB设备监测到的报警等级和/或报警类别满足触发条件,则可以向远程控制设备推送报警消息。
本实施例提供了两种推送方式,一种按照订阅周期进行推送,另一种则在满足触发条件时进行推送,满足了报警消息的推送需求。
可选的,步骤S10之前,即所述接收所述PCB设备推送的带有报警编号的报警消息之前,还包括:
S13、向所述PCB设备发送关联请求,以使所述PCB设备根据所述关联请求中的关联关系数据设置报警编号和报告编号之间的关联关系,并生成设置结果;其中,一个报警编号与一个或多个报告编号关联,一个所述报告编号与一个所述目标报警报告关联;
S14、接收所述PCB设备返回的基于所述设置结果生成的关联应答消息。
可理解地,远程控制设备可以向PCB设备发送关联请求。关联请求包含关联关系数据。PCB接收到关联关系数据之后,可以使用关联关系数据设置报警编号和报告编号之间的关联关系。其中,每个目标报警报告都有一个报警编号。通过设置报警编号和报告编号之间的关联关系,可以建立报警编号和目标报警报告的关联关系。进而,PCB设备在生成目标报警报告时,可以自动匹配到报警编号,再根据报警编号生成报警消息。
在完成关联关系的设置之后,可以生成相应的设置结果。设置结果可以是全部成功、部分成功或全部失败。PCB设备端可以根据设置结果生成关联应答消息,并将关联应答消息发送给远程控制设备。在一些示例中,关联应答消息包含了关联成功的报警编码和报告编码。关联应答消息的消息标识可以是C5F2。
当报告编号为空时,应取消已经绑定的报警编号和报告编号之间的关联关系。如果存在关联请求异常或目标报警报告不存在等异常情况,PCB设备向远程控制设备发送关联出错应答信息。关联出错消息的消息标识为C5F2,其消息体中“ACK”数据项设置为“NOACK”,并在提示信息中备注错误原因。
本实施例通过发送关系数据,可以实现报警编号与目标报警报告之间的关联。
可选的,步骤S10之前,即所述接收所述PCB设备推送的带有报警编号的报警消息之前,还包括:
S15、向所述PCB设备发送报告定义请求,以使所述PCB设备根据所述报告定义请求中的报告定义参数,设置所述目标报警报告,并生成定义结果;
S16、接收所述PCB设备返回的基于所述定义结果生成的定义应答消息。
可理解地,远程控制设备可以向PCB设备发送报告定义请求,请求定义目标报警报告。报告定义请求包括报告定义参数。报告定义参数包括报告编号、参数编码等。其中,参数编码包括目标报警报告中包含的数据项地址组、数据项地址等。
PCB设备接收到报告定义请求之后,可以根据报告定义参数完成对目标报警报告的设置,生成定义结果。然后,PCB设备根据定义结果生成定义应答消息,返回给远程控制设备。在一示例中,报告定义请求的消息标识可为C5F1。
可选的,步骤S40,即所述根据所述报警参数信息确定推送时间,包括:
S401、判断所述报警等级是否大于预设等级;
S402、若所述报警等级大于所述预设等级,则将所述推送时间设置成第一推送时间;
S403、若所述报警等级小于或等于所述预设等级,则将所述推送时间设置成第二推送时间;所述第一推送时间小于所述第二推送时间。
可理解地,可以根据实际需要设置PCB设备发生异常时的报警等级。例如,PCB设备组件中的X轴、Y轴运动精度异常的报警等级为1级、Z轴上下感应器异常的报警等级为2级、距离传感器感应异常的报警等级为3级、刀头撞机的报警等级为4级。在此处,报警等级越高,说明报警的紧急程度越大。
预设等级可以根据实际需要进行设置。如可以是1级。报警等级在高于1级时,会严重影响实际的生产,因而,在报警等级在高于1级时,立即进行报警推送。在此处,第一推送时间可以根据实际需要进行设置,如0~5s。
报警等级等于1级时,影响程度较小,可以延时推送。在此处,第二推送时间可以根据实际需要进行设置,如30s~+∞s。在此处+∞s表示不推送。
本实施例通过对报警的严重程度进行分级,通过报警等级确定目标报警报告的推送时间,避免了工作人员一直需要守在设备旁边的问题,同时在发生较为严重的报警时,能进行快速判断并响应,极大地提高了目标报警报告的处理效率。
可选的,步骤S40,即所述根据所述报警参数信息确定推送时间,包括,7
S404、判断所述报警类别是否处于推送范围内;
S405、若所述报警类别处于所述推送范围内,则将所述推送时间设置成第一推送时间;
S406、若所述报警类别不处于所述推送范围内,则将所述推送时间设置成第二推送时间;所述第一推送时间小于所述第二推送时间。
可理解地,可以根据实际需要设置PCB设备发生异常时的报警类别。例如,某一操作人员的手被PCB设备中的某一组件压住了,此时的报警类别为事故报警,对应的报警类别编号为7;Z轴上下运动异常所属类别为故障报警,所属报警类别编码为6。
推送范围可以根据实际需要进行设置。如可以是{6,7}。报警类别处于推送范围时,危险性较大。因而,在报警类别处于推送范围时,立即进行报警推送。在此处,第一推送时间可以根据实际需要进行设置,如0~5s。
报警类别处于推送范围之外时,危险性较小,可以延时推送。在此处,第二推送时间可以根据实际需要进行设置,如30s~+∞s。在此处+∞s表示不推送。
本实施例通过对报警的严重程度进行分类,通过报警类别确定目标报警报告的推送时间,避免了工作人员一直需要守在设备旁边的问题,同时在发生较为严重的报警时,能进行快速判断并响应,极大地提高了目标报警报告的处理效率。
可选的,步骤S40,即所述根据所述报警参数信息确定推送时间,包括:
S407、将所述报警参数信息发送至解析服务器,以使所述解析服务器对所述报警参数信息进行解析,获得所述推送时间;
S408、接收所述解析服务器返回的所述推送时间。
可理解地,可以设置有专门用于解析报警参数信息的解析服务器。解析服务器上部署有用于解析报警参数信息的数学模型,例如集成模型(例如将GBDT(GradientBoosting Decision Tree,梯度提升树)、XgBoost(一种可扩展的端到端的提升树模型)、LightGBM分类器(Light Gradient Boosting Machine,轻量级梯度提升机器学习)集成在一起进行投票,然后通过少数服从多数的方式决定最终的分类结果),可将根据报警类别、报警等级,进行人工判断的报警推送时间的结果作为训练数据,添加到各个分类器(例如GBDT、XgBoost、LightGBM)进行训练,从而可以得到根据报警类别以及报警等级判断的集成模型。通过集成模型可以分析出PCB设备的当前的运行状态,进而生成合理的推送时间。在一些示例中,解析服务器还可以接收PCB设备所处环境的环境参量,如温度、湿度等,以及PCB设备自身的设备属性,如零配件产地、性能、使用时间等。结合报警参数信息、环境参量和设备属性,可以分析出更为准确的PCB设备状况,并确定出相应的推送时间。
本实施例设置了专门用于解析报警参数信息的解析服务器,大大减少了对远程控制设备的计算资源的占用,有利于提高远程控制设备的响应速度,而且,解析服务器可以提供高效准确的计算服务,减少推送时间的计算时长。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种PCB设备报警数据推送装置,该PCB设备报警数据推送装置与上述实施例中PCB设备报警数据推送方法一一对应。如图4所示,该PCB设备报警数据推送装置包括接收报警消息模块10、获取报警报告模块20、提取报警参数模块30、确定推送时间模块40和推送报告模块50。
各功能模块详细说明如下:
接收报警消息模块10,用于接收所述PCB设备推送的带有报警编号的报警消息;
获取报警报告模块20,用于获取与所述报警编号匹配的目标报警报告;
提取报警参数模块30,用于从所述目标报警报告提取报警参数信息;所述报警参数信息包括报警参数的报警类别和/或报警等级;
确定推送时间模块40,用于根据所述报警参数信息,确定推送时间;
推送报告模块50,用于在所述推送时间向指定终端推送所述目标报警报告。
可选的,PCB设备报警数据推送装置还包括订阅模块,所述订阅模块包括:
订阅请求单元,用于向所述PCB设备发送带有所述报警编号的报警订阅请求;
订阅确定单元,用于接收所述PCB设备返回的用于响应所述报警订阅请求的订阅确认信息。
可选的,所述报警订阅请求包括订阅周期和/或触发条件;
接收报警消息模块10包括:
定时接收单元,用于接收所述PCB设备按照所述订阅周期推送的所述报警消息;和/或,
条件接收单元,用于接收所述PCB设备满足所述触发条件时推送的所述报警消息。
可选的,PCB设备报警数据推送装置还包括关联模块,所述关联模块包括:
关联请求单元,用于向所述PCB设备发送关联请求,以使所述PCB设备根据所述关联请求中的关联关系数据设置报警编号和报告编号之间的关联关系,并生成设置结果;其中,一个报警编号与一个或多个报告编号关联,一个所述报告编号与一个所述目标报警报告关联;
关联应答单元,用于接收所述PCB设备返回的基于所述设置结果生成的关联应答消息。
可选的,PCB设备报警数据推送装置还包括报告定义模块,所述报告定义模块包括:
定义请求单元,用于向所述PCB设备发送报告定义请求,以使所述PCB设备根据所述报告定义请求中的报告定义参数设置所述目标报警报告,并生成定义结果;
定义应答单元,用于接收所述PCB设备返回的基于所述定义结果生成的定义应答消息。
可选的,确定推送时间模块40包括:
等级比较单元,用于判断所述报警等级是否大于预设等级;
第一推送时间单元,用于若所述报警等级大于所述预设等级,则将所述推送时间设置成第一推送时间;
第二推送时间单元,用于若所述报警等级小于或等于所述预设等级,则将所述推送时间设置成第二推送时间;所述第一推送时间小于所述第二推送时间。
可选的,确定推送时间模块40包括:
范围判断单元,用于判断所述报警类别是否处于推送范围内;
第一时间单元,用于若所述报警类别处于所述推送范围内,则将所述推送时间设置成第一推送时间;
第二时间单元,用于若所述报警类别不处于所述推送范围内,则将所述推送时间设置成第二推送时间;所述第一推送时间小于所述第二推送时间。
关于PCB设备报警数据推送装置的具体限定可以参见上文中对于PCB设备报警数据推送方法的限定,在此不再赘述。上述PCB设备报警数据推送装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括可读存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令。该内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信。该计算机可读指令被处理器执行时以实现一种PCB设备报警数据推送方法。本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时实现以下步骤:
接收所述PCB设备推送的带有报警编号的报警消息;
获取与所述报警编号匹配的目标报警报告;
从所述目标报警报告提取报警参数信息;所述报警参数信息包括报警参数的报警类别和/或报警等级;
根据所述报警参数信息,确定推送时间;
在所述推送时间向指定终端推送所述目标报警报告。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读存储介质,本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。可读存储介质上存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时实现以下步骤:
接收所述PCB设备推送的带有报警编号的报警消息;
获取与所述报警编号匹配的目标报警报告;
从所述目标报警报告提取报警参数信息;所述报警参数信息包括报警参数的报警类别和/或报警等级;
根据所述报警参数信息,确定推送时间;
在所述推送时间向指定终端推送所述目标报警报告。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性可读取存储介质或易失性可读存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。