用于电子地提供自动化服务的数据获取的制作方法

文档序号:6283482阅读:302来源:国知局
专利名称:用于电子地提供自动化服务的数据获取的制作方法
技术领域
本发明涉及工业自动化领域,具体涉及与用于自动化机床的系统相关联的服务或软件的提供。
背景技术
在工业自动化领域中,尤其是在有关机床及其使用的子领域内,专攻控制技术和软件的厂商已经向制造和营销自动化机床的原始设备厂商(OEM)提供了软件。OEM继而向终端用户提供包括这些技术和软件的自动化设备,所述终端用户通常是拥有、管理和操作其从OEM购买的设备的设备制造商。这些年来,OEM已经与这些终端用户发展了坚实的关系。
OEM通常不将其行为局限于开发和营销象机床类的商品,而是他们也向他们或也许由其他方向终端用户销售的设备提供后继的服务。虽然OEM已经提供了决定性的商品和服务,它们被其在提供下述服务的能力上的现有局限所限制,这些服务充分利用关于其机床操作的详细信息。这种限制起源于现有系统在机床控制过程中心获得对于数据的访问的能力上的局限。机床控制软件对于其给定任务高度专用,并且过去一般没有直接涉及由于机器的即时控制之外的原因而引起的数据获取和后续处理。
出于类似的原因,用于诸如机床的设备的控制系统和软件的厂商一般不直接或与OEM协作向终端用户提供对他们的技术的基于知识的性能改进。
对于机床控制系统可用数据的访问——如果可以获得和适当地被管理——可以被开掘或利用来向终端用户提供多种效能或其他利益,包括机器可用性和寿命的改进、在使用所述机器的终端用户制造商方面的生产率的提高和下面更详细地说明的其他利益。
从工业控制器获取现场数据(live data)的能力尚不可得,更谈不上通过网络将其发送到服务提供商的能力,所述服务提供商能够分析、聚集或管理这样的数据,并且产生用于自动化机床的解决方案。结果,没有用于开发作为被收集的数据的函数的任何增值服务或软件(以下统称为“内容”)的基础,也没有从服务提供商通过网络向例如终端客户(客户端)的机床控制系统发送和下载服务或软件形式的内容的基础。
相反,与诸如机床的自动化设备相关联的工程技术服务被人工地提供并且主要是仅响应于终端用户的请求或由于与实际控制器数据的状态无关的其他促动因素。但是这种现有的人工手段未充分利用可用的网络和计算技术。它不能提供实时或计算密集的服务,或者提供复杂的与机器相关联的服务,诸如轴线分析和优化、机器数据查看、磨损分析、机器检验和验收、机器校准、动态机器建模、工件相关联的服务、过程分析、软件服务、数据管理服务等。
向诸如机床的自动化设备的用户提供软件和服务相关联的内容的现有手段也不能向这样的内容提供经常与人工相对的计算机提供的服务相关联的经济性。通过网络访问控制器软件也提供了向终端用户提供免费信息服务的机会,诸如关于软件发布、公司目录、产品和业务文件、聊天室和用户组、技术专论(white paper)的信息和其他信息,它们可能来自控制软件提供者、OEM或两者。
还存在一种未满足的需要帮助用户缩短开发时间、更快地和以更为优惠的成本建立营销体系、并使他们能够以比以前的产品更优良的产品来更快地缩短开发时间和建立营销体系。处理这种未满足的需要将需要措施来保证生产设施的最大可获得性,降低与那些设施相关联的操作成本,提高它们的生产率和提供最好的产品质量。

发明内容
通过按照本发明的系统和方法的各个方面可以解决上述被长期感知但是未满足的需要。
按照本发明的系统和方法涉及通过诸如因特网的公共网络来在自动化机床(诸如CNC/PLC机床)和主机服务器之间建立连接。来自生产过程的机床数据被实时地收集并通过因特网发送到主机。可以以同步或异步的方式来进行数据收集,并且可以由操作员设置用于异步数据收集的条件。存储数据的主机使用多种应用来分析和评估所述数据。还可以经由因特网向操作机器的用户发送结果,所述结果可能涉及机器状态、机器磨损、处理稳定性、工件质量和机器能力的长期变化。
所述系统和方法为用户和制造商提供了开放式应用程序员接口(API),使得按照本发明的系统和方法提供的服务和软件的接收者可以定制他们从内容提供者获得的内容和技能(know-how)。按照本发明使得客户可以获得的所述服务和软件内容包括但不限于机器服务、机器性能、工件服务、数据管理和电子销售(e-sales)。
按照本发明的系统和方法也可以用于提供机床投入运行服务(诸如,与机床的服务相关联的计算机辅助运行(CAR)(runoff运行)和干扰分析)。通过循环执行的CAR测量还可以得到结果的变化。而且,来自控制器(例如由NC程序处理的)的数据可以被可视化或被处理以便比以前的机床更早地显露在机床中的弱点。
而且,按照本发明的系统和方法使得数据管理服务成为可能,按照所述数据管理服务,对于控制相关的数据(诸如,NC程序数据、机器数据和参数)的基于万维网的归档和管理成为可能。这些数据可以提供给客户,并在数据丢失的情况下可以更高的数据安全性来迅速恢复生产。
在本发明的一个实施例中,以专用于所涉及的机床的代码从机床向主机上载的数据的识别使能建立机床的所选择的方面的时间历史,它继而向机床用户以及向服务于它们的OEM提供丰富的信息。
本发明的一个方面包括一种用于从工业控制器获取数据的方法,所述方法包括步骤通过网络接收程序代码;由控制器提供对所述程序代码的访问;运行被访问的程序代码以从控制器收集数据,其中,通过向控制器库编译所述程序代码和将所编译的程序代码链接到控制器基本代码来由控制器访问所述程序代码。
本发明的另一个方面涉及一种用于从CNC机床获取数据的方法,包括步骤通过网络接收程序代码;由数控内核(NCK)访问所述程序代码;运行被访问的程序代码以从NCK收集数据,其中,通过向NCK库编译所述程序代码和将所编译的程序代码链接到NCK基本代码来由NCK访问所述程序代码。
本发明的另一个方面涉及一种用于从工业控制器获取实时数据的系统。所述系统包括一个基本子系统,通过网络与主机系统通信,并且与人机接口(HMI)子系统通信;一个编译循环;一个数据存储设备;至少一个控制任务,所述基本子系统被适配来通过经由网络下载从主机接收程序代码,并且按照所下载的代码中的指令来检测事件的发生,并在检测到后向所述存储设备中的相应位置写入实时数据。
按照本发明的另一个方面,一种用于从工业控制器获取实时数据的系统包括一个控制器,通过网络与主机系统通信,并且与人机接口(HMI)通信;一个编译循环;一个数据存储设备;至少一个控制任务,所述控制器被配置来通过经由网络下载从主机接收程序代码,并按照所下载的代码中的指令来检测事件的发生,并在检测到后向所述存储设备中的相应位置写入实时数据。
本发明的另一个方面涉及一种用于远程配置计算机化的数值控制器(CNC)的数控内核(NCK)的方法,所述CNC用于从数控内核(NCK)获取实时数据。CNC通过网络与主机系统通信,其具有与其相关联的识别信息,并且包括人机接口(HMI),用于与主机保持通信和经由一个接口与NCK保持通信。所述主机与用于存储CNC识别信息的数据存储设备通信,并且在所述数据存储设备中还存储有与被识别的CNC一起使用的数据获取软件。按照本发明的所述方法包括步骤通过网络从CNC检索CNC识别信息;从数据存储设备检索软件,所述软件用于配置CNC的数据获取轨迹,所述检索基于CNC的识别信息;通过网络从主机向HMI下载软件,所下载的软件被适配用于配置数据获取轨迹而不修改NCK。
在附图中说明了按照本发明的系统和方法的各个其他方面,但不限于此。


图1示出了按照本发明的系统的一个实施例,所述系统用于通过网络以及通过人工手段提供自动化服务。
图2示出了按照本发明的系统的一个实施例,所述系统用于通过网络向客户提供自动化服务和/或软件。
图3示出了按照本发明系统的一个实施例的体系结构的高层示意图。
图4示出了按照本发明的系统的一个实施例中的服务器-客户端体系结构的示意图,重点放在系统客户端的结构。
图5以示意图形式示出了与按照本发明的系统的主机部分的一个实施例的配置相关联的系统结构。
图6以示意图形式示出了与按照本发明的系统的客户端部分的一个实施例的配置相关联的系统结构。
图7A和7B以示意图形式示出了与负责获取实时数据的系统的客户端部分的多个方面的实施例相关联的系统结构。
图8以流程图形式示出了与按照本发明的一种方法的一个实施例相关联的步骤,用于从CNC机床或其他自动化制造设备获取实时数据。
图9A-9C以流程图形式示出了与按照本发明的一种方法的实施例相关联的步骤,用于根据实时控制数据经由网络来提供自动化相关的内容,并且用于构造收入所述实时控制数据的数据库。
图10以示意图的形式示出了按照本发明的数据库的一个实施例,以及建立数据库的环境。
图11-23示出了与在本发明的一个实施例中的自动化相关服务、即圆周测试的提供的示例相关联的阶段。
具体实施例方式
按照本发明的系统和方法的一个实施例涉及一种自动化软件和服务内容提供者,它操作主机或服务器系统,所述主机或服务器系统通过诸如因特网的公用网络与客户端自动化系统通信。通过一个示例来描述所述实施例,所述示例在客户端涉及具有控制系统的机床,所述控制系统包括控制核心(诸如数控内核或“NCK”);操作系统,诸如Microsoft Windows的适当版本,它执行实时控制并且经由NCK与机床的操作装置硬件通信,并且它接收经由机床中的适当传感器获得的数据;HMI(“人机接口”),运行在所述操作系统上。在这个示例中,通过因特网和被称为万维网或“web”的因特网的子集来进行通信。在本发明的范围内,其他的客户端配置也是可能的,它们是其他公用网络和用于经由这样的网络传送信息的手段。在所图解的示例中,诸如Internet Explorer或Netscape Navigator的传统浏览器运行在客户端操作系统上,并且通过从主机下载网页和传送用户数据来与主机通信。
虽然机床被描述为可以使用本发明的自动化系统类型的一个主要示例,但是按照本发明的系统和方法也可以用于涉及设备的实时控制的任何自动化系统。
机器处理器例如经由通过公用网络25(优选的是因特网)从内容提供者下载而被安装,并且在机床自动化系统中由用户(在此在一些情况下称为用户或操作员)启动。下面,公用网络25可以被简称为网络25。操作自动化系统的用户可以访问操作网站的主机,并且从主机下载网页,所述网页提供用于选择内容的菜单。所述主机网站然后以例如可通过因特网或其它网络从主机服务器下载的网页支持的菜单驱动的方式引导用户来输入关于所期望的现有服务、软件或其他内容的信息。作为响应,主机应用程序产生内容(诸如机床源代码),它随后通过网络被发送到客户端。运行在控制系统HMI上的机器处理器接口模块从浏览器向机器处理器传送信息,机器处理器继而可以建立相应的作业,包括必要时解译所下载的内容和例如经由与运行NCK的NCU之间的接口(所述接口可以为了一些目的而被看作操作面板逻辑接口)来安装它。可以使得客户端HMI能够按照任何适当的方法来访问所述机器处理器和机器处理器接口,所述适当的方法包括通过网络从主机下载、或从诸如光盘的存储介质安装、或利用提供给OEM并且因此被客户通过购买机床本身而获得的其他控制软件来提供。
诸如服务或软件的内容的提供最好发生在由终端用户操作员的人工启动时、或按照时间表自动发生、或在其他条件下发生,所述其他条件包括从终端用户设施收集的数据而导出的条件。在任何情况下,如果所下载的内容包括涉及运行实际机床的指令,则进行提供来保证按照所述内容的机器的启动由于安全的原因而由人工开始。
图1-7示出了整个系统的体系结构,所述整个系统包括主机、客户端和OEM实体。图1高度抽象地示出了基于因特网的自动化服务公司10如何可以向多个用户提供包括软件、服务等的内容,在双向的基础上与所述客户共享信息,所述多个客户由系统1-N(分别是附图标号14、16和18)表示。另外,人工工程技术服务的通常提供者12(诸如OEM)也与客户系统1-N(12,14,16)通信,所述人工工程技术服务12可能有很多。这个体系结构虽然有益于某些应用,但是可能不为最佳,因为在基于因特网的自动化服务公司10和人工工程技术服务公司12之间没有通信,并且当然不被现代网络技术所支持。对于这种方案,任何一方都不能受益于另一方的信息。
在图2中,在图的左部示出了通常的机床生产链。负责控制系统硬件和软件的自动化产品提供商22向它的客户机床OEM24出售它的产品并提供服务。OEM24继而将从自动化产品提供商购买的控制系统产品与它制造和/或销售的其他设备集成,并且向它的客户23(在此有时称为“终端用户”)出售,所述客户23通常是制造商。服务提供商20在本发明的一个实施例中最好通过因特网与所有三个前述实体进行双向通信。另外,所述服务提供商可以与软件工具27和特殊服务28的第三方提供者以及与因特网伙伴29通信。虽然在附图中被示出为非双向的,但是信息流可以是双向的,并且也可以通过因特网来发生。
图3示出了服务提供商20、OEM24和客户23的更详细的视图。服务提供商20包括主机30(以下简称为“主机”),它与系统/客户数据库34和交互用户32通信,用于执行管理或其他功能。任何数量的这样的数据库34和交互用户32可以与主机30交互。应用程序接口(API)36也使得OEM伙伴24(在所述附图的右上方)可以处理由主机30提供的内容。在OEM伙伴24的交互用户可以因此通过经由网络25与内容提供者主机30通信来利用对客户数据访问的成果(如下所述),所述网络25优选的是因特网。在OEM24,一个或多个交互用户40与用于管理或其他目的的OEM伙伴主机38交互。
还通过在主机30和客户端26之间的网络25来提供内容。在其他地方,主机30可以被称为主机、服务器或服务器/主机。客户端(或客户)26可以包括一个或多个计算机数字控制的/可编程逻辑控制器(CNC/PLC)系统42、外围设备和传感器、控制器44、个人计算机45和主计算机46,其中的一些或全部通过内部网络47进行通信。如下更详细地所述,客户端26建立通过网络25与主机30的安全通信,通过网络25来选择和接收内容,向主机30发回诸如实时控制数据的数据。另外,客户端26可以通过网络25向主机30发送表示支付费用以交换所述内容的允诺的信号,或可以向内容提供者发送信用卡号码或任何与费用的实际或预期传送相关联的信号。或者,可以发送客户或客户端代码以及机器代码,所述机器代码特别用于识别作为服务或软件的提供对象的客户端机器,并且客户端26或客户23或负责的金融实体(未示出)可以随后对所下载的内容开帐单或收费。
可以采取所有可用的预防措施来保证在内容提供者20、OEM伙伴24和客户端26之间传送的数据的安全性和完整性。例如防火墙31、37、39分别提供一种安全措施,用于通过因特网与主机30、主机API37和OEM伙伴主机38通信。防火墙和其他安全特征——例如,密码保护和加密方案,但不限于此——也优选被提供在客户端26和网络25之间。通过内部网络47来提供用于客户端26的防火墙和安全特征。
图4示出了按照本发明的一种系统的体系结构的一个实施例,重点放在因特网左侧的客户的客户端系统以及它与内容提供者主机30的通信。在这个实施例中,客户的客户端系统包括控制器,诸如由西门子AG制造的SINUMERIK控制器,其中包括处理器,用于运行尤其是HMI(人机接口)50。HMI50与NCU接口60通信,它继而与机床70通信。
HMI50是操作员(未示出)与其交互的控制器软件的部分。HMI50支持和提供对各种应用的访问,并且在许多现有的控制器中继而被现代操作系统支持,所述现代操作系统共享至少与PC用户熟悉的操作系统的一些类似点。与所述机床控制系统相关联的软件的另一个部分是数值控制部分,它包括数值控制单元(NCU)和核心(NCK)(未示出),它们与机床70和NCU接口60实际地通信。将参照图7来更详细地讨论涉及NCU和NCK的相关计算。
客户端系统的控制器HMI50通过优选为因特网的网络25与由内容提供者操作的服务器/主机系统30进行双向通信。较低的一组箭头将在客户端内的浏览器软件与主机(它对应于图5中的附图标号500和图6中的附图标号600)连接。可以运行在上述的操作系统上的客户端浏览器52能够从主机30下载网页。浏览器52提供可以由其他适合的软件提供的网络接口功能,只要所述其他适合的软件与网络25兼容。与HMI50交互并且使用浏览器52的操作员(未示出)可以访问运行在主机30上的网站(未示出),并且开始请求特定的内容。在所图解的实施例中的数据传输主要从主机30到浏览器52。操作员对所下载的内容的响应包括以任何与网络25和主机30的配置已知的方式通过因特网(即万维网)向主机传回信息,所述所下载的内容可能包括某些选择和参数。但是,不以这种方式来向主机30发送机器控制相关数据,诸如实时的控制数据。
客户端系统也包括机器处理器56,它也运行在HMI系统50的环境中,它包括可以接收来自主机30的指令并且建立作业57、58的任何功能,所述作业57、58最终涉及调用NCK。
浏览器52和机器处理器56经由机器处理器接口54彼此通信,机器处理器接口54将经由浏览器52从主机30下载的内容转换为机器处理器56可以处理的格式。在本发明的一个实施例中,浏览器52使用例如从华盛顿州的Redmond的微软公司可以获得的COM技术经由远程过程调用与机器处理器接口54通信。同样,机器处理器接口54使用远程功能调用与机器处理器56通信,引导机器处理器56建立和执行在57、58的作业,所述在57、58的作业最终将指导机床并且获取在运行机床70中产生的数据。机器处理器56与NCU接口模块60通信,NCU接口模块60将作业指令转换为NCK(未示出)能够处理的格式。在这样的执行中,任务是请求由NCK处理一个或多个机床命令的任务以及从任何可用的机床状态数据或其他控制相关的数据收集数据的任务。可以使用现有机床系统可用的现有跟踪功能和使用下面参照图7和图8所述的数据获取手段来进行数据收集。另外,在本发明的范围内,可以开发其他增强的跟踪功能来以与当前可用的不同的方式来提取数据。
在图4中所示的本发明的实施例中的系统结构因此包括不对称的数据路径,即第一双向路径,用于涉及选择和下载内容的交互;第二单向路径,用于从客户端向主机30发送所获取的数据(诸如实时控制数据)。这种不对称数据路径体系结构的优点是可以以比下述方式更为安全和迅速的方式发送实时控制数据如果它与操作员与主机30的万维网会话相关联地被发送时的情况。用于在主机30接收这样的实时控制数据的端口和所述端口与其可以通信的处理器可以被配置来以专用的方式尽可能快地接收输入数据。
机床命令的启动可能因为安全的原因而需要操作员的人为干预。结合由机器处理器预见的作业命令而收集的数据可以随后被传送到主机。在所图解的本发明的这个方面的实施例中,在上面的箭头中示出了这样的数据的传送。数据的传送最好是单向的,并且不涉及万维网。更确切的,优选的是经由最为可用和安全的网络手段来传送它,因为可能没有可能来延迟接收正在被收集和传送的数据,而诸如万维网的更为公用的手段则遭受通常的拥塞和其他问题。但是,在一些实施例中,万维网是适当的传送手段。
总之,图5示出了如何例如在操作员的请求下从内容提供者主机向机床客户端下载内容;如何由客户端系统使用所下载的内容来建立和执行产生所关心的数据的机床作业指令;如何从机床控制系统收集数据和以适当的方式向主机传送数据。在主机网站,可以作为所收集的数据的函数来产生对于客户端系统的拥有者或操作员的多种类型的值的内容。这样的内容的示例在接近本文结尾的附录中给出。
更具体而言,图5示出了与服务器/主机30的实施例相关联的系统体系结构。通过数据路径500和经由服务器用户接口502向客户端26发送和从客户端26接收数据。服务器用户接口502可以提供万维网服务,换句话说是网站,并且经由超文本传送协议(http)或其他适当的协议与客户端26通信。在一些实施例中,服务器用户接口502可以运行在多个机器上,以便在硬件或软件故障的情况下提供冗余。
服务器用户接口502也选用地与工作流服务器504通信,工作流服务器504在一个背景请求处理器的容量中工作,所述背景请求处理器实际上帮助处理消耗时间的任务。服务器接口502也可以与服务器数据接口506通信。服务器数据接口506在数据路径600上通过网络25从客户端26接收数据上载。这个数据经常包括从机床70或其他的自动化设备获取的实时控制数据。在一个实施例中,客户端26可以格式化所述数据以包括首标或报头,所述首标或报头可以由服务器/主机30使用来处理与所述首标或报头相关联的数据,并且例如将所述数据引导到特定的处理器。被格式化的数据随后经由http或其他适当的协议被传送。
服务器用户接口502和服务器数据接口506都与安全模块508和数据提供者510通信。安全模块508提供按照公知方法的功能,用于保证试图访问服务器/主机30或其某些方面的实体被授权如此。
数据提供者510作为与服务器/主机30的数据库部分的数据接口。它实际上用于屏蔽服务器用户接口502和服务器数据接口506以免需要知道数据如何被系统的数据库软件处理,以便例如可以更容易地修改软件。
返回从服务器用户接口502和服务器数据接口506接收数据的工作流服务器504,它与数值分析模块512和模拟模块514通信。数值分析模块512负责分析从客户端26接收的数据。模拟模块514与所请求的内容相关联地模拟客户机器方面的行为。管理环境516提供为整个服务器/主机系统30可用的数据中心和计算资源,并且可以检测误差或发出适当的警告。
数据提供者510与数据中心518通信,数据中心518包括数据库软件520和数据复制协调器522。可以包括诸如SQL簇的任何适当功能的数据库软件可以支持多个数据库(DB1、DB2、......)520(类似于图3的附图标号34)。数据库520可以由交互用户32、OEM伙伴24(在此附图中未示出链接)或其他实体访问。数据复制协调器522包括负责处理数据的软件,所述数据可能相关,但是可能驻留或需要驻留在一个或多个远程的位于例如另一个大洲上的数据中心中。
图6示出了在本发明的一个方面的实施例中的用于客户端26的体系结构。数据被发送到服务器主机30的服务器用户接口502并且从其被接收。数据由浏览器602通过网络25(未示出)经由数据路径500往返被发送,所述浏览器602运行在客户端26的HMI 50上。类似于图4的浏览器52,浏览器602经由http通过因特网或其他网络从服务器/主机30接收数据。所述数据可能是以网页的形式,所述网页用于识别经由操作员的对于客户端26的服务,通过使用在网页上按键返回消息来选择由服务器/主机30提供的服务,其中所述操作员运行浏览器602并且已经登录到服务器/主机30。结合图11-23说明了在这种体系结构下支持的交互的类型的示例。
浏览器602与机器处理器604通信(见图4的相似结构56),所述机器处理器604与运行所关心的自动化设备(在这个附图中未示出)的控制器通信。接收从控制器获取的数据的机器处理器604还与安全模块606通信,安全模块606也运行在客户端26的HMI上。安全模块606保证所有与客户端26的通信仅仅来自服务器/主机30或其他的授权服务器。安全模块606因此防止了潜在的由未经授权方对自动化系统的非法修改和攻击,所述未经授权方如果不被排除在外,则可能会发出有害于所述自动化系统的控制指令或者获得对于客户端系统26的拥有者期望保密的数据的访问。
在图5和6中,按照内容提供者的需要,可以在未示出链接的模块之间共享数据,或者可以由用户从未示出输出的模块访问数据。
按照本发明的用于客户端功能的其他体系结构可能避免使用浏览器。但是,这样的手段虽然在本发明的范围内但会直接向因特网暴露机器处理器的功能。
在本发明的范围内的另一种客户端体系结构可在单个或较小数量的模块内集中与浏览器、机器处理器和机器处理器接口以及NCU接口相关的功能。但是,这样的手段因为其不太模块化而可能使建立和维护太昂贵。
本发明的一个方面涉及从与特定的自动化设备相关联的控制器收集或“获取”控制器数据,所述控制器数据可以实质上是实时的。所获取的、关于受控机器或设备的状态的低层数据在本发明的一个实施例中被经由数据路径500(图5和6)向客户端26的HMI50下载的程序代码指定。图7示出了用于实现这个功能的体系结构的一个实施例。主机30经由网络25与(客户端26的)HMI50(这个附图中未明确示出)通信。HMI50也耦合到数据存储设备52。如上所述,HMI50提供工业控制设备的用户接口部分,并且通常被配备来运行任何数量的应用程序,包括浏览器等。因为HMI50的主要目的之一是使得操作员能够修改用于特定机床或其他自动化设备的控制器的方面,因此HMI50与负责机器控制的另一个进程通信,所述另一个进程通常运行在独立的处理器上。
与本发明的相关联的数据获取涉及“跟踪”功能。综合的跟踪功能向用户更综合和最佳地提供控制(例如,HMI、NC、PLC)和驱动数据。这些功能是直接或经由增值服务被提供可取决于所跟踪的应用程序。
通过对于本发明的这个方面的概览,在一个实施例中,下载的程序代码包括编译循环。编译循环是基于数控内核的兼容应用接口的、对于由OEM软件开发者提供的实时控制软件的功能补充。在当前实施例中,编译循环可以被开发和编译为基于API的一个库而没有任何控制软件的代码。被编译的编译循环可以随后被下载到控制。在因此改变控制配置(一些机器数据的设置)后,在系统下一次加电时,所述编译循环被动态链接到控制软件中。由此,在控制的实时处理中可以获得由编译循环提供的功能补充。
或者,数据获取涉及跟踪功能,其中,不下载编译循环,而是通过NCU接口60来进行现有的跟踪功能的控制和参数化。这可以通过驻留在HMI50中的软件来实现,所述软件将因特网请求映射到操作面板接口或映射到跟踪的参数化/控制。或者,可以通过下载任何执行这些任务的HMI应用程序来进行跟踪功能的控制,所述HMI应用程序可以象任何可以通过万维网下载的代码一样被下载。在将因特网请求映射到操作面板接口的、驻留在HMI中的软件的情况下,控制逻辑、即要执行的步骤序列最好驻留在主机系统30中,并且本地软件仅仅具有对于NCK的网关功能。在下载HMI应用程序的时候,控制逻辑将驻留在被下载到HMI50的软件中。这个软件是否是例如java/javascript小程序或任何Windows程序是一个实施细节,所述java/java script小程序或任何Windows程序使用HMI-OEM应用程序接口(API)被下载和安装以运行在HMI上。
可用的自动化控制器提供NCK-OEM API以及HMI-OEM API,自动化产品提供商22通常提供它们以便使得OEM24可以定制其硬件专有的特征和专用于满足其客户23的需要的特征。数据获取功能可以单独使用NCK-OEMAPI或单独使用HMI-OEM API。如果即使不连接HMI、所述数据获取功能也必须作业,并且如果功能要求附加的实时处理,则优选NCK-OEM,所述实时处理诸如预处理数据、扩展的触发能力等。
图7A和7B中分别示出了被配置来获取实时工业控制数据的系统的两个实施例。所图解的实施例涉及用于机床的控制器(CNC);但是,下述的本发明的特征也可以应用到其他的工业自动化环境中。
按照本发明的数据获取功能的一个特征是可以通过网络下载下述程序代码,它使能预处理和获取实时控制器数据。正在与HMI50交互的、诸如图3中所示的交互用户32的操作员选择特定的网络提供的服务(见图11-23所述的示例)。例如从由服务提供商(主机)30提供的因特网网站选择所述服务。通过网络向HMI50发送适当的程序代码。HMI50经由NCU接口60、机器处理器接口54和机器处理器56和NCK66而影响对机床70或其他受控的工业设备的控制。NCK66包括基本系统68、NCK OEM应用程序接口69,NCKOEM应用程序接口69允许被下载的程序代码作为编译循环72被插入NCK66。基本系统68提供数据获取的跟踪功能,它可以通过NCK OEM应用程序接口69被扩展。该跟踪功能在本地收集数据,并且将其存储到与任何级76-84(偶数)相关联的缓冲器或队列中,其后非循环的任务提取缓冲器数据并且将其存储到数据存储设备74中的文件中,以便可以以后将其合并到跟踪数据中,所述数据存储设备74可以是例如静态RAM。在数据存储设备74中的文件也可以以队列模式或循环缓冲器模式被使用,在所述队列模式中,数据在另一端被转储的同时在一个位置被加入,在所述循环缓冲模式中,丢失最老的数据。为了将跟踪能力扩展到不能直接被基本系统69获得的用户程序信息,可以将跟踪码插入到用户程序中(例如插入到特殊的功能块形式的PLC用户程序中),所述用户程序向跟踪功能提供本地用户程序数据。这些细节可以由内容提供者20配置,内容提供者20从主机30下载程序代码和配置数据。
基本系统68也与各种层次的控制任务通信,其中包括预运行控制任务76、主(即内插器(IPO)层)控制任务78、伺服控制和驱动数据控制任务80、PLC数据82和在机器控制内的其他信息源84,因此基本系统68可以访问在控制内的所有时间层,其中包括最快时间层。编译循环72(例如被下载的程序代码)可以通过NCK OEM应用程序接口69访问基本系统68、控制任务76、78、80、PLC数据82和其他信息源84。如图7B所示,预运行76和主运行78控制任务可以共享信息,主运行78和伺服控制和驱动数据控制任务80也可以共享信息,主运行78和PLC数据82任务也可以共享信息。
根据对于NCK66结构及其接口功能的理解而涉及的被下载的程序可以包括与NCK66兼容的编译循环,它可以通过下列方式被配置来扩展跟踪的触发、事件或数据能力通过NCK-OEM应用程序接口69从NCK66访问所需要的信息,预处理它,并且向跟踪提供结果。所包括的编译循环也可以被配置来建立和控制预先选择的、实时数据的跟踪,所述实时数据可以被NCK66直接或通过如上所述的由编译循环72提供的扩展来获得。所包括的编译循环也可以被配置来向控制系统施加任何种类的影响(例如在编译循环的控制下移动轴线),所述控制系统可以使用NCK-OEM应用程序接口69来实现。结果得到的程序代码被下载到HMI50并且经由NCU接口60被存储在NCK66中。被下载的代码可以随后被动态链接到NCK库。被下载的代码可以包括(1)用于下述的代码执行可用的NCK数据的实时预处理,并且向跟踪功能提供作为可跟踪数据的预处理结果;(2)用于下述的代码分析可以获得的事件和CNK66的状态信息,并且从该新信息建立用于调用跟踪功能的新事件;(3)用于下述的代码分析可以获得的数据或事件以及状态信息,将其与所配置的条件相比较,因此向跟踪功能提供新的触发能力;(4)用于下述的代码以所期望的方式通过NCK-OEM应用程序接口69影响控制系统,有可能借助于所提供的事件或数据与一个跟踪同步地进行;(5)用于以所期望的方式配置跟踪功能的代码和配置数据。
跟踪功能的配置需要下述说明(1)定义通过跟踪功能要获取什么数据的数据列表;(2)事件,当其发生时,要调用在数据列表中的特定数据的跟踪功能;(3)触发,当检测到其时终止跟踪功能;(4)触发后延迟周期,用于定义在触发的检测和与相应跟踪的相关联的停止之间的延迟。通过示例,获取数据(或终止数据获取)的事件(或触发)可以是循环的,诸如在机床控制环境中的每个内插循环,或者是不循环的,诸如在每次改变一个新的工具时。
数据列表是存储在基本系统68中的配置数据,并且可以通过操作员面板接口64或图4的机器处理器接口54和机器处理器56从外部访问,或者通过编译循环接口、即到操作员的面板接口64或图4的机器处理器接口54和机器处理器56从内部访问。在本发明的这个方面的一个实施例中,可以在所下载的程序代码内包括所期望的用于数据获取的跟踪功能。在其他的当前优选的实施例中,使用被下载的NCK程序代码来扩展交易能力,同时通过HMI 50应用程序来进行配置和开始,其中HMI50应用程序可以通过网络25从主机30下载,或者可以是将主机30的通信映射到操作员面板接口64或图4的机器处理器接口54和机器处理器56的常驻网关应用程序。或者,作为另一个选择,所下载的NCK程序代码可以从机器数据或全局用户数据读取具体配置,所述机器数据或全局用户数据是经由下载机器数据或全局用户数据文件而获得的。
图8提供了高层流程图,它描述了与在本发明的一个实施例中执行数据获取的方法相关联的步骤。客户端系统HMI50在步骤902通过网络25从主机30接收与所选择的服务相关联的程序代码。在步骤904提供由实时控制器(在此为NCK66)到所下载的程序代码(例如如上所述)的访问,并且执行所述程序代码。在步骤906,识别和配置数据列表,所述数据列表指定要获取的数据。这可通过执行所访问的代码或通过其他方式(例如通过从网络向NCK66下载配置数据)实现。另外,在步骤908,配置相应的事件,当发生这些事件时,获取指定数据。而且,这可以通过执行所访问的代码或其他手段来进行,如上所述。在步骤910,还按照被访问的下载代码或其他手段来设置触发,如上所述。
在步骤912,开始/使能跟踪。这个步骤也可以通过执行被访问的代码或通过经由网络25启动的行为来进行。然后,在步骤914检测到在步骤908配置的事件的发生时,建立到相应的数据列表的链接。链接到数据列表包括存储应当使用哪个数据列表的一个引用。为此目的,每个数据列表具有一个适当的标示,诸如一个ID号码。如果数据列表是与用户专用的,则在数据列表标示中可以包括对应的用户标示。在不可过度使用诸如存储器或处理器时间资源的约束下,多个用户可以并行指定和运行其本身的独立跟踪。
如果在步骤916检查到基本系统68的数据收集容量还没有用完,则根据包括多个项目——每个标识一个要记录的数据——的链接的数据列表,通过NCK基本系统68访问所有期望的信息,并且如果需要的话,则通过执行所下载的软件来访问所有期望的信息。在步骤918,指定的数据被写入到数据存储设备74,所述数据存储设备74可以是适当的缓冲器。只要数据存储设备74的容量未用完,则跟踪继续,直到在步骤920检测到发生相应的触发。在触发后延迟的结尾,假定已经指定了一个链接,则到相应数据列表的链接结束并且终止向存储位置74的写入。如果在步骤16已经用完了数据收集容量,则也将激活步骤920。
在这个阶段,可以通过常驻在HMI50内的所下载的程序代码来访问在数据存储设备14中收集的数据,所下载的程序代码可以继而向操作员显示在数据存储设备14中收集的数据,并且可以随后通过网络向主机30发送在数据存储设备14中收集的数据来用于存储、分析或其他操作。
可以以至少两种方式来指定跟踪功能。在一种被称为“普通跟踪”的规范中,在一定的事件时开始和结束跟踪,并且仅仅当停止跟踪时发生传送。在被称为“无尽跟踪”的第二种规范中,跟踪在后台运行,并且在所述客户端系统之外(例如向HMI)连续传送所获取的数据。
跟踪需要对于NCK(数控内核)数据的只读访问。由例如功能产生器的写入访问与跟踪的实际定义相互矛盾,因此将被添加——如果有的话——作为与跟踪功能相结合的附加功能。情况可能如此,例如其中,对于某些自动流程,功能产生器和跟踪是外部连接的功能。
考虑到包括操作模式等的相关信息的跟踪的配置可以离线进行。如果跟踪在进行,则不能修改边界条件。更确切地,对于跟踪配置的改变必须停止或挂起跟踪。
由跟踪提供的实际分析或可视化不是跟踪功能本身的一个方面,而是使用一个或多个跟踪的应用的一个方面。
综合的跟踪功能的可能应用包括机器投入使用支持;故障检测和系统问题的调试;应用问题(尤其是对于具有多个通道、同步行为等的复杂应用);运行时情况(偶发的运行时问题);失效处理(经由NC核心转储的完全数据收集)、逻辑分析(示波器,转速计等)。
对于所获取的信息存在多个公共要求。这些包括数据的调节,所述数据包括系统变量、驱动信号、PLC标志以及事件(状态、状态的改变、二进制信号、警告等);对于本地用户程序数据(例如在NC程序中,在PLC程序中的标志)的访问;将所跟踪的本地数据复制为适当的全局变量。可以将以下内容作为跟踪功能的触发所有的数据和事件,包括来自所有系统部件的数据,尤其是来自移动同步(内部)行为、PLC和驱动器的以前难于访问和可结合的信息,以及通过操作员屏幕界面可以获得的所有信息。为了专门或内部的目的,在每个情况下,经由物理地址的无约束的访问是可能的。
在一些情况下,可能存在例如对于PLC数据进行跟踪的某些要求。可以安排对于PLC外围设备的访问或对于在用户程序中的标志的访问而不影响PLC。可以安排对用户程序数据(I>标志,...)和与以用户程序——如果必要的话则通过插入到用户程序中的附加命令——来发生记录的点同步的能力的访问。但是,在本发明的一个实施例中优选对PLC外围设备的访问或对在用户程序中的标志的访问而不影响PLC和/或用户程序。类似地,本发明的一个实施例包括同时可以跟踪的最多32个PLC信号。而且,在必要的程度上,通过向用户程序插入适当的命令,可以从相关的用户程序内获得可用的用户数据,其中所述用户程序将相关的数据存储到跟踪缓冲器中。另外,可以从在机床/控制系统内的不同来源获得的缓冲数据可以被并入到一个数据的合集(joint set)中,并且可以被在HMI上的适当用户程序显示或分析。
记录处理优选地是有效的并且对于特定的用途被裁剪。有效条件实质上需要仅仅记录必要信息并且不比所需要的更经常地记录。在连续信号和事件(偶发信号)之间优选保持清楚的区分。如果可能,则(考虑到运行时间的影响)在记录期间进行数据压缩,并且注意最小化管理开销,即获得最少的可能记录位置。
如果使用条件是未知的或不可限定的,则优选支持可能的使用和操作方法的全频谱。例如,依赖于应用,相对于其中最新的数据在队列变满时被丢失的队列配置,优选其中丢失仅仅限于最旧的数据的环形缓冲器。所需要的最后的附加信息可能包括时间标记、时间计数器等。其他的与使用相关的要求可能依赖于数据的数量、操作模式和由特定的应用要求的选用的附加信息。
例如,为了调试困难的错误,记录一个跟踪的行为优选尽可能免于崩溃。即,在错误后的运行中,应当保存早期记录的数据。
更为优选的是,对每个变量的记录可以作为其本身的定时特性的函数,以降低所涉及的数据量。原则上,将变量的记录定时以隐含地并入所述变量的函数/作用域可能例如降低需要收集的数据量。
优选地,在事件或条件驱动基础上收集数据而不是连续地进行。可以自动地建立附加文件或档案,其也可以包括NC程序,其中包含主程序、子程序、循环等,而不是必然地出现在跟踪文件中。随后,对这个档案的引用或指向它的指针被自动登记到跟踪文件中。因此可以提前防止由于人工实现该功能造成的档案不一致。人工归档可能在数据收集后若干日发生,在此期间,配置数据可能已经改变。这也可以通过一个应用来指定,这意味着内部接口可以不必满足这个条件。
在本发明的一个实施例中,分布部件的配置的必要变换可以被编程以自动发生。而且,配置的可以获得的元信息的收集和提供应当尽可能自动化。HMI逻辑接口可以用作内部配置接口。为了以最小的花费来获得灵活的可扩展性,在跟踪中,可将新的信号仅仅并入HMI逻辑接口部件。
用于上述或用于跟踪的过程控制的方法应当优选提供下列功能开始条件(人工、NC程序、PLC、同步动作、自动时间控制、连续运行、外部输入等)和停止/触发条件(人工、NC程序、PLC、同步动作、内部相加、时间控制、外部事件等)。数据被存储在(与HMI相关联的)文件中。
触发条件优选可以在下述状态中设置对单独的位触发;使用文本来取代数值代码以识别状态,以根据从状态X到状态Y的状态变量(精确限定的状态转换)的变化来触发;根据给定的NC指令数触发;根据给定的相关代码的第n次发生来触发。在必要的程度上,用于每个变量的触发条件被分离。可以使用条件链例如,第一条件1必须被满足,然后条件2或条件3,并且如果满足条件5,则将记录特定的数据直到条件6发生。
例如,在崩溃或停止后,数据一旦被传送,则资源优选地再次自由。注意必要时必须存在一个成对的条件,以便如果例如已经发生了感兴趣的事件或条件(诸如错误)则尽快地关闭自动重起。
如在本文中其他位置所述,在HMI中适当地发生数据的准备。按照本发明的各个方面的不同实施例,可以仅仅在文件基础上约束应用。而且,可以使用COM连接来支持经由连续数据流的块访问(不缓存文件)。要服务三类用户(1)有准备的用户,诸如在HMI上控制软件厂商的应用程序,例如跟踪可视化、IBN或诊断工具;(2)OEM用户(经由HMI-OEM的客户端应用);(3)基于万维网的服务。
在本发明的一个实施例中,应当向用户开放跟踪。用于配置(哪些信号,如何被安装)的开放的、可以访问的接口包括对于OEM的控制(开始,停止......)、分析(数据文件格式)。
按照本发明的一个实施例,跟踪的显示与逻辑-分析器-示波器是可以比较的。可以显示来自不同来源的信号。可以显示对程序模块的引用。优选地提供光标/缩放功能。优选的是,超过四个信号是可能的。也优选的是,提供滤波器以允许信号选择的直观化。在通常的用户不必熟悉所有下述信息时,可以提供说明各种信号和事件的帮助。
可以以下列的方式来获得数据收集的高鲁棒性。在可能的程度上,在崩溃之后可以获得数据。在跟踪期间的突发误差不应当导致数据溢出,应当在资源不足的事件下有适当的反应。如果已经发生了感兴趣的事件或条件,则数据文件不可以被后消除。
优选的是,使用上述数据获取功能的系统应当使用不超过大约60%的可用循环时间,这可能有助于避免干扰任何运行的应用程序。
图9A-9C以流程图的形式示出了按照本发明的一种方法的一个实施例,用于根据实时控制数据经由网络来提供自动化相关的内容并且构建并入实时控制数据的数据库。
客户端26在所图解的实施例中是机床,但是在其他的实施例中它也可以是其他的自动化设备,客户端26的用户在步骤902调用由内容提供者20操作的主机30。但是在本实施例中,不限于此,主机30和客户端26的用户经由万维网通信。主机30在步骤906发送一个网页,所述网页向用户查询ID码,所述ID码可以包括客户ID码和机器ID码。客户ID使得主机30可以检索这样的客户数据并且建立适合于那个客户的会话,其中所述客户ID已经在早期的注册处理中被建立,在所述注册处理中已经收集了多个与客户相关的数据。另外,主机30可以访问关于其客户操作的、并且其提供服务的各种类型自动化设备的数据。在接收到机器ID之后,主机30可以检索适合于一个会话的信息,所述会话使得用户可以从包括服务的内容中选择,所述服务适合于客户的需要,并且被提供给对应于所述机器ID的机器类型。下面参照图10提供了关于主机30可以获得的数据的进一步细节。
在考虑到客户的身份和所调用的机器而建立这样的会话时,主机30在步骤906向用户发送可以对客户进行裁剪的一组选项。在步骤908,用户发送并且主机30接收用户对于选项的选择。根据用户的选择,在步骤910,主机30从数据库检索一组用于客户端机床的特性,并且在步骤912确认所选择的选项适合于由客户端26正在操作的机床。否则,主机30在步骤914通知用户在当前情况下所选择的选项是不适合的并且应当选择另一个选项。
否则,主机30在步骤916检索所选择的选项的价格信息,并且在步骤918检索内容,诸如程序代码,所述程序代码与所选择的选项相关联,并且可以在主机30和/或在客户端26被执行。通常,数据将被传送到客户端26以按照上述的说明被用于帮助控制机床和收集特定的结果数据。在检索之后,在步骤920,已被主机30检索的任何诸如程序代码的内容被发送到客户端26。
在步骤922,图9B,主机30建立对应于用户所选择的选项的事项(transaction)的数据库记录。(参见图10和相关描述)。在步骤924,主机30将客户端和机床ID与数据库记录相关联。另外,在步骤926,主机30将调用所选择的选项的日期和时间与在步骤924建立的数据库记录相关联。此外,在步骤926,主机30将数据和时间与调用的选项与在步骤924建立的数据库记录相关联。而且,主机30还可以在步骤928将早期检索的(或其他)价格数据与所述数据库记录相关联。
接着,主机30等待用户相应于所选择的选项和相关联的所下载的程序代码和/或数据启动相对应的客户端机床行为。这个在步骤930的等待步骤的目的是保证用户的安全尤其是当调用移动机器的时候,运行机器应当包括一个人工步骤以有助于保证操作员在即将来临的机器行为开始之前知道它,于是避免了对人员的损害。
主机30在步骤932接收一个消息,表明用户已经启动了与所选择的选项相关联的行为。主机30随后还在步骤934等待发送与操作机床相关产生并且在所选择的选项的过程期间从机床控制器收集的数据。然后,在步骤936,主机30接收从客户端26机床收集的机床数据。主机30在步骤938按照对应于由用户选择的选项的代码从客户端26收集的数据。然后,在步骤940,处理(例如由图5的数值分析模块512产生的)从客户端26上载的数据的结果被发送到客户端26,或在一些实施例被发送到拥有或控制它的实体。
当会话或事项接近结束时或在另一个适当的时间,计费信息在步骤942根据所检索的价格信息被检索或产生,并且被处理以发送到用户或其拥有者或操作员。
当会话接近终止时,在步骤944使得可以获得与客户端26对应和对于所选择的选项对应、并且包括描述事项的各个方面的数据的诸如数据库记录的适当的数据结构,用于由拥有和/或操作客户端26的客户访问或由伙伴组织(例如在图3的OEM24)访问。优选使得仅仅在获得拥有或操作客户端26的实体的批准时进行由OEM24的访问,所述批准的一个指示也可以被包括在用于特定的客户的、由主机30存储的数据中。也可以使得访问视OEM24向客户23(即主机30的拥有者和/或操作员)先前或随后的传送费用而定。在任何一种情况下,用于访问的价格可以按照任何商业上的适当规则。在一个实施例中,第一价格分量被确定为给定的循环时段的统一价格函数,第二价格分量被计算为所提供的内容的函数。
上述步骤的顺序和细节可能不同。而且,可以在不脱离本发明的这个方面的范围的情况下增加其他的步骤。
图10中示出了按照本发明的数据库的一个实施例和建立和访问数据库的环境。这个附图向图3所示的结构提供了进一步的细节,它也示出了在主机30和操作客户端系统26的客户或OEM24或其他之间的连接,所述操作客户端系统26的客户或OEM24或其他可以安排和获得通常在交换费用中的对于数据库的访问。
在所图解的实施例中,服务提供商20通过其主机30向多个客户端系统261、262、...、26N提供网络提供的自动化相关内容,每个客户端系统控制相应的机床701、702、...、70N。在提供该内容的过程中,数据被客户端系统获取并且被上载到主机系统30,所述主机系统30存储这些数据以及与运行网络提供的自动化相关内容业务相关联的其他数据。主机30向至少两个数据库写入数据第一数据库34A包括商业数据;第二数据库34B包括技术数据。
下面示出了对应于每个数据库34A和34B的数据结构的示例。对应于数据库34A的数据结构1010包括用于多个客户端1-N的每个的数据集。每个集可以包括客户标识符,它可以代码的形式,用于识别负责相应的客户端的客户;事项码,用于识别可以提供给客户的内容(例如服务或软件)的特性;描述客户业务的相关方面的数据;与客户签订的合同和与这样的合同的相关要求有关的数据,包括对于那个客户的特定事项设置的价格;与如何对客户进行计费相关的数据;以及任何其他感兴趣的客户数据。一种未示出的类似数据结构可以记录预订数据库的客户的客户标识符、识别所获得的访问的特性的代码、访问的日期、访问的价格(如果对于给定的价格模型是相关的)和其他的相关数据。在默认的情况下,对于在数据结构1010内的客户数据的访问将限于所述数据是其数据的特定客户。但是,一般,客户可以允许由诸如特定的OEM24的第三方来访问数据结构1010。
对应于数据库34B的数据结构1012包括多个数据集,每个客户一个。在数据结构1012中的每个客户数据集可以根据那个客户的唯一ID而被记录和访问。在给定的客户的数据内,可以有与由客户操作的机器或客户端设备相对应的任何数量的数据集。每个这样的机器或客户端设备被包括在数据结构1012中的唯一的标识符或代码识别。对于那个特定的机器或客户端,可以存储各种管理数据,因为要保证适当地处理访问权。在默认的情况下,在数据结构1012中的客户数据仅仅可以由从其收集数据的客户来访问。但是,客户可以指示允许在预先选择的条件下由装入机床制造商的其他方访问数据的意愿;这样的意愿可以在数据结构1012的管理数据字段中被表示。所述数据结构还可以包括用于与主机30的特定事项的代码。并且伴有日期和一个或多个价格。或者,可以根据在数据结构10中所存储的数据在计费时查找价格数据,其中所存储的数据是关于事项的特性和那个事项的价格规则以及那个客户端的。数据结构1012也可以包括与特定的事项相关联的、从客户端设备或机器收集的数据,所述数据可以包括从例如图7所示的客户端26的NCK66获取的实时控制跟踪数据或者按照在此说明的方法可以访问的任何其他数据。另外,在提供给定事项的服务或软件期间,机器警报数据和机器配置数据可以帮助提供客户端26的状态的精确图像。
如图所示,在结构1010和1012中的数据首先被客户组织。假设一个客户可能具有服务提供商20能够提供其内容的任何数量的机器,可在给定的客户的数据中提供多个字段,每个字段对应于由那个客户操作的机器,每个这样的机器ID(或客户端ID)对于所述特定的机床或其他受控设备是唯一的。数据结构1012因此可以提供所述特定机器的、随着时间的行为的历史视图。
对于数据结构1010和1012的每个,可以增加或删除某个信息,可以重新排序数据,并且可以使用与本发明的这个方面一致的其他数据结构。
图11-23示出了在本发明的一个实施例中与自动化相关的服务的提供的示例相关联的阶段,所述示例即机床圆周测试。在每个图中,提供了代表性的屏幕显示的多个方面,示出了机床的操作员当与客户端系统26相关联的HMI50的显示交互时具有的视图。在所图解的实施例中,用户运行在HMI50上运行的浏览器52以查看通过网络25从主机30下载到HMI50的网页。在提供网页的情况下,用户可以选择选项和输入由浏览器向主机30发回的数据。
在图11中,用户事先从对于这个客户和这个特定的机床提供的选项中选择了圆周测试。用户这样做的能力以提前建立关于操作机床的客户实体方的客户关系为先决条件,导致建立与在图10的数据库34A中的1010的那些类似的数据库项目。
圆周测试的关键点是确定机床在其任何平面上能够驱动末端执行器通过圆周的程度。实际的路径被测量和与真实的圆周相比较。比较的结果使得不仅可以推断如果例如圆周超出公差则是否需要维护机器,而且可以允许即使当机床驱动一个圆周的能力在公差内也可诊断磨损条件和它们的起因。
在图11中,如箭头所示,用户在选择与多个电路测量手段中的第一个相关联的开始按钮,所述多个电路测量手段是直接测量设备、机器测量系统(MMS)和球形杆(ballbar)设备。对于这些选项的每个,用户以通过按下相应的信息按钮来检索信息。用户也可以通过按下在图标“圆周测试”紧下面的、在左上角的信息按钮来请求关于圆周测试本身的信息。
图12示出了后续的网页,其中提示用户选择其中要驱动圆周的平面。示出了表示三个平面的立方体,这是用于选择三个基面(由限定它们的轴线对识别)的选项。在这个附图中,用户已经选择了X/Y平面。这个选择被上载到主机30,主机30发送更新的网页数据,如图13所示。该网页数据包括对X/Y平面选择按钮以及在所述立方体上的所选择平面加阴影,向用户提供直观的队列以有助于确认已经正确地做出了所期望的选择。
一旦主机30接收到关于平面选择的完整信息,则它下载图14所示的网页,其中包括允许用户输入平面选择参数的表格。所述参数包括圆周的直径、圆周的中心点(在X/Y笛卡儿坐标中)、以微米计的公差+/-、以每分钟毫米计的给进速度路径、行进方向(顺时针或逆时针),以及表示完成参数选择的确认按钮。而且,在图14所示的网页中下载的是X/Y平面中的图,其中示出了中心点和以那个点为中心的三个同心圆,包括所期望的圆周和外圆和内圆,所述外圆和内圆用于限定所期望的圆周的至今尚未指定的公差带。
在图15中,已经由主机30从浏览器52接收到中心点和公差带的设置,主机30随后下载网页的更新,在图中指示所选择的直径100毫米和外圆和内圆,所述外圆和内圆限定在以(X=0,Y=0)为中心的所期望圆周周围+/-20毫米的公差带。另外,用户被提示指定命令路径,它是顺时针的或逆时针的。
在图16中,用户选择由浏览器52向主机30上载的顺时针的命令路径。主机30向浏览器52下载网页的更新,如图17所示,其中加亮各种用户选择以向用户反馈其选择准备好被登记。用户通过按下“确认”,通知主机30已经完成了用于圆周测试的参数。
图18示出了相对于其已经被用户指定来驱动的路径的机床的视图。按照结合图4-8(A-C)所述的手段,主机30向浏览器52下载软件,所述软件被机器处理器接口54、机器处理器56、操作员面板逻辑接口64处理,并且被NCK66运行以通过具有已经选择的参数的圆周来驱动机床,并且获取也被用户选择的、通过直接测量设备测量的数据。所获得的数据按照上述手段被上载到主机30,在此它被处理(例如由图5中的数值分析模块512处理),并且在此产生更新的网页信息并将其下载到浏览器52。用户于是可以看到如图19和20所示的叠加在图上的路径,包括实际公差和中心偏差,可以用户也可以读取数值形式的公差,在此是(+17,-19)而不是指定的(+20,-20),并且用户可以读取所测量的偏差(+5,+7)。
在图21中,用户然后通过从主机30下载而被提示是否将圆周测试的结果归档。在此,用户已经选择了“是”,引导主机30在诸如34B的数据库中以类似于数据结构1012的形式归档数据。
在图22中,用户被允许利用不仅最近归档的圆周测试数据,还有早期归档的数据。由主机30下载的结果/比较网页允许用户查看三个测试的每个的结果,其中使用图11中所提供的三种方法中的不同的一种来进行每个测试,所述查看独立地具有特定的选择结果。用户也被提示进行三个结果的比较。在这个情况下,用户选择比较。该选择被上载到主机30,它从档案中检索数据(例如从数据库34B中的数据结构1012)。在图23中,示出了三个图,每个都与图19和20中所示的结果具有相同的格式。它们较小以使得可以进行并排的比较。在所图解的示例中,对于圆周测试的三种手段中的每种,结果实际上是相同的,虽然一般不是这样。
虽然在这些附图中未示出,但是主机30可以被配置来记住上述事项的日期和时间,并且根据存储在数据库34A的数据结构1010中的客户数据来计算要由客户支付的价格。
总之,图11-23示出了客户23如何可以从远程主机调用电子的、网络提供的内容,所述客户23是属于一个客户的客户端26的拥有者和/或操作员。所述内容包括软件,它通过由用户参数化的特定运动来驱动机床,配置客户端26以获取与机床运动相关联的实时数据,并且向主机上载所获取的数据以分析和格式化以便供用户查看,并且应用户的要求将所获取的数据存储在一个档案中。用户随后被允许不仅查看这个结果,而且查看其他的、通过不同的手段或的先前的结果。并且比较通过不同手段获得的结果。
上述的示例仅仅是为了说明,不是限定性的。事实上,通过各种对于本发明的改进使得多种内容是可能的,其中所述内容包括服务和软件,所述改进包括下列机器相关的服务,诸如机器利用评估软件BDE,其中机器利用评估包括运行时间数据收集;功能建立和使用,包括用于显示机器运行时间、停机时间和容量的图像的评估的编译;轴线分析;傅立叶变换和伯德图(Bodeplot)产生,本征频率的识别,定期分析,趋势分析;轴线参数优化,包括接合速度、加速度、跳动、过滤、KV系数、摩擦和松弛补偿。按照本发明可以提供的其他服务区域包括机器数据查看,用于功能和数据存储的正确性和一致性;磨损分析,包括路径沿随(path-following)协议和行为评估,趋势分析、运行、摩擦、润滑和传输问题;处理监控,包括驱动参数、协议保持、电流容量、力矩、跳动、旋转测量和温度。按照本发明的系统和方法使得下列有可能以往不可能的远程机器检查和接受技术,包括用于路径沿随评估的圆周信息测试、重复精度、刚性测量等;机器校准,包括单轴校准,旋转轴校准和工件/设备测量。由本发明的各个方面使能的内容提供的其他领域包括动态机器建模和分析;工件相关的服务,包括与工件几何形状(诸如相对于实际目标的寻轨精度和跟踪功能的测量和记录)和工件表面(包括动态寻轨行为、速度、加速度的测量和记录)相关的那些;工件表面质量模拟,表面NC程序输入,表面内插输出、表面位置目标和来自当前驱动数据的表面(实际的)。另一个区域涉及过程分析,包括过程参数的测量和文件编制和分析,切割速度和切割功率的计算和记录、激光输出等。用于提供通过本发明的进步而使得可能的服务的另外的重要领域包括软件服务、诸如销售和批发,提供产品软件的新版本、体服务包,提供通信软件;数据管理服务,它有关机床数据、NC程序数据、系统软件、PLC程序、结果数据、处理数据、工件数据、归档、备份和配置管理;以及自动化系统维护、诊断软件的提供,用于识别在故障时的缺陷部件的工具的提供,设施的改变历史的存储,对于隐错跟踪系统的访问,连接到因特网订货系统,中央服务帐户管理,特殊问题和事故处理的咨询。
处理上述的本发明的方面的实施例,本领域的技术人员能够达到多种其他的方案和步骤,它们如果未在本文中明确地说明也仍然体现本发明的原理,并且落入所附的权利要求的范围内。例如,方法步骤的排序不是固定的,而是能够在不脱离本发明的范围和精神的情况下被修改。
权利要求
1.一种用于从工业控制器获取数据的方法,包括步骤a.通过网络接收程序代码;b.由控制器提供对所述程序代码的访问;以及c.运行被访问的程序代码以从控制器收集数据;其中,通过向控制器库编译所述程序代码和将所编译的程序代码链接到控制器基本代码来由控制器提供对所述程序代码的访问。
2.按照权利要求1的方法,还包括步骤运行所访问的代码以配置要获取数据的事件。
3.按照权利要求2的方法,还包括步骤设置触发,在检测到它时终止数据的获取。
4.按照权利要求3的方法,还包括步骤检测事件的发生,并且在检测到时,向存储设备中的位置写入在相应数据列表中标示的数据。
5.按照权利要求2的方法,还包括步骤在向存储位置写入所获取的数据之前,查看以确定用于存储数据的容量是否已经用完。
6.按照权利要求5的方法,其中,只有当用于数据收集的容量未用完时才进行向存储位置写入数据的步骤。
7.按照权利要求4的方法,还包括步骤检测触发的发生,并在检测到时,停止向存储位置写入数据。
8.按照权利要求7的方法,其中,所述停止向存储位置写入数据的步骤被延迟直到预先设定的触发后延迟时段完成。
9.按照权利要求7的方法,其中,定义了低于预选的限制的附加事件和相应的触发,还包括步骤检测附加事件的发生,并且在每次检测到时,向存储设备上相应的附加位置写入在相应的附加数据列表中标示的数据。
10.按照权利要求9的方法,还包括步骤检测附加触发的发生,并在每次检测到时,停止向存储设备上相应位置写入相应的数据。
11.按照权利要求7的方法,其中,通过链接到相应的数据列表来标示要获取的数据。
12.按照权利要求7的方法,还包括步骤结束到数据列表的链接。
13.按照权利要求7的方法,其中,所述存储位置可以被控制器的基本部件访问。
14.按照权利要求1的方法,其中,程序代码包括一个编译循环。
15.按照权利要求1的方法,其中,数据被收集在高速本地循环缓冲器中并从其中被读取。
16.按照权利要求1的方法,其中,在控制功能运行时收集数据,该方法还包括步骤监控以保证数据的收集不干扰运行时过程。
17.一种用于从CNC机床获取数据的方法,包括步骤a.通过网络接收程序代码;b.由数控内核(NCK)提供对所述程序代码的访问;c.运行被访问的程序代码以从NCK收集数据;其中,通过向NCK库编译所述程序代码和将所编译的程序代码链接到NCK基本代码来由NCK提供对所述程序代码的访问。
18.按照权利要求17的方法,还包括步骤运行所访问的代码以配置要获取数据的事件。
19.按照权利要求18的方法,还包括步骤设置触发,在检测到它时终止数据的获取。
20.按照权利要求19的方法,还包括步骤检测事件的发生,并且在检测到时,向存储设备中的位置写入在相应的数据列表中标示的数据。
21.按照权利要求20的方法,还包括步骤在向存储位置写入所获取的数据之前,查看以确定用于存储数据的容量是否已经用完。
22.按照权利要求20的方法,其中,只有当用于数据收集的容量未用完时才进行向存储位置写入数据的步骤。
23.按照权利要求22的方法,还包括步骤检测触发的发生,在检测到时,停止向存储位置写入数据。
24.按照权利要求23的方法,其中,所述停止向存储位置写入数据的步骤被延迟直到预先设定的触发后延迟时段完成。
25.按照权利要求23的方法,其中,定义了低于预选的限制的附加事件和相应的触发,还包括步骤检测附加事件的发生,并且在每次检测到时,向存储设备上相应的附加位置写入在相应的附加数据列表中标示的数据。
26.按照权利要求25的方法,还包括步骤检测附加触发的发生,在每次检测到时,停止向存储设备上相应位置写入相应的数据。
27.按照权利要求20的方法,其中,通过链接到相应的数据列表来标示要获取的数据。
28.按照权利要求27的方法,还包括步骤结束到数据列表的链接。
29.按照权利要求17的方法,其中,所述存储位置可以被CNC的一个基本部件访问。
30.按照权利要求17的方法,其中,所述程序代码包括一个编译循环。
31.按照权利要求17的方法,其中,数据被收集在高速本地循环缓冲器中并从其中被读取。
32.按照权利要求17的方法,其中,在NCK机器控制功能的运行时收集数据,该方法还包括步骤监控以保证数据的收集不干扰运行时过程。
33.一种用于从工业控制器获取实时数据的系统,所述系统包括一个基本子系统,通过网络与主机系统通信,并且与人机接口(HMI)子系统通信;一个编译循环;一个数据存储设备;至少一个控制任务,所述基本子系统被适配用来通过经由网络下载从主机接收程序代码,并且按照所下载代码中的指令来检测事件的发生,并在检测到后向所述存储设备中的相应位置写入实时数据。
34.按照权利要求33的系统,还被配置来检测触发的发生,并且在检测到时,停止向存储设备中的相应位置写入实时数据。
35.按照权利要求33的系统,其中,所述至少一个控制任务包括一个非循环任务。
36.按照权利要求33的系统,其中,所述工业控制器是CNC工具。
37.按照权利要求33的系统,其中,所述至少一个控制任务包括一个内插器(IPO)控制任务。
38.按照权利要求33的系统,其中,所述至少一个控制任务包括一个伺服控制任务。
39.按照权利要求33的系统,其中,所述至少一个控制任务包括一个驱动控制任务。
40.按照权利要求33的系统,其中,所述至少一个控制任务包括一个预运行任务。
41.一种用于从工业控制器获取实时数据的系统,所述系统包括一个控制器,通过网络与主机系统通信,并且与人机接口(HMI)通信;一个编译循环;一个数据存储设备;至少一个控制任务,所述控制器被配置来通过经由网络下载从主机接收程序代码,并按照在所下载代码中的指令来检测事件的发生,并在检测到后向所述存储设备中的相应位置写入实时数据。
42.按照权利要求41的系统,其中,所述控制器装置包括一个CNC机床控制器。
43.按照权利要求42的系统,其中,所述控制器装置包括一个基本子系统。
44.按照权利要求41的系统,还被配置为检测触发的发生,并且在检测到时,停止向存储设备中的相应位置写入实时数据。
45.按照权利要求41的系统,其中,所述至少一个控制任务包括一个非循环任务。
46.按照权利要求41的系统,其中,所述至少一个控制任务包括一个内插器(IPO)控制任务。
47.按照权利要求41的系统,其中,所述至少一个控制任务包括一个伺服控制任务。
48.按照权利要求41的系统,其中,所述至少一个控制任务包括一个驱动控制任务。
49.按照权利要求41的系统,其中,所述至少一个控制任务包括预运行任务。
50.一种用于远程配置计算机化的数值控制器(CNC)的数控内核(NCK)的方法,所述CNC用于从数控内核(NCK)获取实时数据,所述CNC通过网络与主机系统通信,所述CNC还具有与其相关联的识别信息,并且包括人机接口(HMI),用于保持与主机的通信和经由一个接口与NCK保持通信,所述主机与用于存储CNC识别信息的数据存储设备通信,并且在所述数据存储设备中还存储有与被识别的CNC一起使用的数据获取软件,所述方法包括步骤通过网络从CNC检索CNC识别信息;从数据存储设备检索软件,所述软件用于配置CNC的数据获取轨迹,所述检索基于CNC的识别信息;以及通过网络从主机向HMI下载软件,所下载的软件被适配用于配置数据获取轨迹而不修改NCK。
51.按照权利要求50的方法,其中,所述CNC识别信息包括对该CNC唯一的机器码。
52.按照权利要求51的方法,其中,所下载的软件包括一个编译循环,用于扩展NCK数据获取跟踪功能。
53.按照权利要求51的方法,其中,所述HMI支持机器处理器和机器处理器接口软件,用于在HMI和NCK之间的通信。
全文摘要
根据从客户的客户端机床控制系统在因特网上收集的、来自一个受控过程的实时数据来在主机系统上产生内容。通过下载软件来从客户端机床获取所述实时数据,所述软件用于操纵控制器功能以执行数据获取跟踪预定的事件和触发。所获取的数据被主机检索,主机可以根据所述数据来产生内容,或者提供由其他方对于数据的选择性的、被授权的访问。
文档编号G05B19/408GK1527961SQ02814109
公开日2004年9月8日 申请日期2002年7月5日 优先权日2001年7月13日
发明者沃尔克·克雷德勒, 沃尔克 克雷德勒, 莱杰斯, 克努特·莱杰斯, 冈 马奇勒, 沃尔夫冈·马奇勒, 德恩费尔德纳, 雷纳·德恩费尔德纳, 格雷夫, 斯蒂芬·格雷夫, 凯弗, 迈克尔·凯弗 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1