CN113820969A - 用于计量的自动化控制器功能的系统和方法 - Google Patents

用于计量的自动化控制器功能的系统和方法 Download PDF

Info

Publication number
CN113820969A
CN113820969A CN202110644381.7A CN202110644381A CN113820969A CN 113820969 A CN113820969 A CN 113820969A CN 202110644381 A CN202110644381 A CN 202110644381A CN 113820969 A CN113820969 A CN 113820969A
Authority
CN
China
Prior art keywords
capabilities
industrial automation
certificate
automation controller
project
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
Application number
CN202110644381.7A
Other languages
English (en)
Other versions
CN113820969B (zh
Inventor
大卫·艾伦·约翰斯顿
詹姆士·约瑟夫·凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rockwell Automation Technologies Inc
Original Assignee
Rockwell Automation Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Rockwell Automation Technologies Inc filed Critical Rockwell Automation Technologies Inc
Publication of CN113820969A publication Critical patent/CN113820969A/zh
Application granted granted Critical
Publication of CN113820969B publication Critical patent/CN113820969B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4185Total 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41865Total 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 job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41885Total 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 modeling, simulation of the manufacturing system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/103Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for protecting copy right

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Strategic Management (AREA)
  • Automation & Control Theory (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computing Systems (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

公开了用于计量的自动化控制器功能的系统和方法。计量自动化控制器功能包括:访问定义工业自动化控制器的一个或更多个操作的项目代码;分析项目代码以识别工业自动化控制器的由一个或更多个操作所利用的一个或更多个能力;生成指示工业自动化控制器的一个或更多个能力的文件;将该文件发送至服务器,该服务器生成用于授权工业自动化控制器执行项目代码的证书;从服务器接收证书,该证书标识文件和针对工业自动化控制器执行项目代码以执行一个或更多个操作的授权;以及将项目代码、文件和证书发送至工业自动化控制器以供执行。

Description

用于计量的自动化控制器功能的系统和方法
技术领域
本公开内容总体上涉及工业自动化系统的控制器。更具体地,本公开内容涉及控制工业自动化系统中的控制器的哪些功能是可用的。
背景技术
工业自动化系统可以用于提供一个或更多个致动器的自动控制。具体地,控制器可以从电源接收电力,并且向致动器输出经调节的电力信号,以控制致动器的移动。通常,用于工业自动化系统的控制器可用于(单独地作为工业自动化系统内的部件或者作为工业自动化部件内的子部件)从具有有限数量的特征和/或能力的组合的制造商或销售方处销售。因此,客户可能不能找到具有他或她寻求的特征的特定组合的控制器。客户可能最终支付更高的价格来购买具有他或她不打算利用的一个或更多个额外特征和/或能力的控制器。类似地,客户可能最终购买缺少他或她所寻求的一个或更多个特定特征的控制器,并且调整用于操作该控制器的应用以适应所购买的控制器。此外,一旦客户购买了控制器,则客户可能被锁定在购买时控制器的特征中,而不具有添加或移除特征的能力。因此,可能希望给予客户在购买之前定制控制器的特征以及在购买控制器之后添加或移除特征的能力。
发明内容
在一个实施方式中,一种有形非暂态计算机可读介质包括如下程序指令,所述程序指令在由处理器执行时使处理器:访问定义控制器的一个或更多个操作的项目代码,分析项目代码以标识控制器的由一个或更多个操作所利用的一个或更多个能力,生成指示控制器的一个或更多个能力的文件,将文件发送至服务器,该服务器生成用于授权控制器执行项目代码的证书,从服务器接收证书,该证书标识文件和针对控制器执行项目代码以执行一个或更多个操作的授权,以及将项目代码、文件和证书发送至控制器以供执行。
在另一实施方式中,一种方法包括:接收用于定义项目的一个或更多个输入,分析项目以识别控制器的由项目所利用的一个或更多个能力,生成包括控制器的由项目所利用的一个或更多个能力的文件,将文件发送至服务器,从服务器接收证书,其中,证书标识清单和针对控制器执行与文件相关联的项目的授权,将项目、文件和证书发送至控制器以供执行。
在又一实施方式中,一种系统包括计算装置和布置在防火墙后面的控制器。计算装置被配置成分析项目代码以识别控制器的由项目代码所利用的一个或更多个能力,生成包括控制器的由项目代码所利用的一个或更多个能力的清单,将清单发送至服务器,其中,服务器被配置成生成用于授权控制器执行项目代码的证书,从服务器接收证书,该证书标识清单和针对控制器执行项目代码以执行一个或更多个操作的授权,以及将项目代码、清单和证书发送至控制器。控制器被配置成从计算装置接收项目代码、清单和证书,对证书进行解密,验证证书匹配清单和项目代码,以及执行项目代码。
附图说明
当参照附图阅读以下具体实施方式时,将更好地理解本实施方式的这些和其他特征、方面和优点,在附图中,相同的附图标记在所有附图中表示相同的部分,在附图中:
图1示出了根据本文呈现的实施方式的工业自动化系统的示意图,工业自动化系统包括控制器、计算装置和远程服务器;
图2示出了根据本文呈现的实施方式的可以用作图1的计算装置和/或远程服务器的示例部件的框图;
图3示出了根据本文呈现的实施方式的用于计量控制器功能的系统的示意图;
图4示出了根据本文呈现的实施方式的用于计量控制器功能的处理的流程图;
图5示出了根据本文呈现的实施方式的从图1的计算装置的角度的用于计量控制器功能的处理的流程图;
图6示出了根据本文呈现的实施方式的从图1的远程服务器的角度的用于计量控制器功能的处理的流程图;以及
图7示出了根据本文呈现的实施方式的从图1的控制器的角度的用于计量控制器功能的处理的流程图。
具体实施方式
以下将描述一个或更多个具体实施方式。为了提供对这些实施方式的简明描述,在本说明书中没有描述实际实现方式的所有特征。应当理解,在任何这样的实际实现方式的开发中,如在任何工程项目或设计项目中,必须做出大量的特定于实现方式的决策来实现开发者的具体目标,例如符合系统相关约束条件和商业相关约束条件,这些具体目标可能会因实现方式而变化。此外,应当理解,这样的开发努力可能是复杂且耗时的,但对于受益于本公开内容的普通技术人员而言,这样的开发努力仍然是设计、制作和制造的例行任务。
在介绍本公开内容的各种实施方式的元件时,冠词“一”、“一个”、“该”以及“所述”旨在表示存在一个或更多个元件。术语“包括”、“包含”和“具有”旨在是包含在内的并且表示可能存在除了所列出的元件以外的附加元件。
工业自动化系统可以利用控制器从电源接收电力,并且向致动器输出经调节的电力信号,以控制致动器的移动。控制器可以是控制多个工业自动化部件(例如,电机控制中心或MCC)的独立控制单元、控制单个自动化部件的操作的控制器或较大工业自动化系统内的子部件。控制器通常可从具有有限数量的特征组合的制造商或销售方处获得。因此,寻找具有与从制造商或销售方处获得的型号不匹配的特定特征组合的控制器的客户可能会接受与他们寻找的特定特征组合最接近的型号的控制器。因此,客户可能支付更高的价格来购买具有他们所寻求的所有特定特征但也具有他们不打算利用的一个或更多个特征和/或能力的控制器。可替选地,客户可能购买缺少他们所寻找的一个或更多个特定特征的控制器,并且调整工业自动化系统的其他方面以适应所购买的控制器。此外,一旦购买了控制器,客户可能被限制于在购买时控制器的特征,而不具有添加或移除特征的能力。
所公开的技术使得客户能够针对他或她的特定工业自动化项目定制控制器的特征/能力(例如,在一个或更多个任务或处理的执行期间,针对控制器在控制工业自动化系统或部件时定义操作和/或提供操作指南的文件或程序代码的部分),并且然后针对指定的时间量、指定的项目周期数或其他需要的情况,在逐个项目的基础上添加或移除(例如,计量)控制器的特征/能力。具体地,由客户操作的计算系统分析工业自动化项目,以识别工业自动化项目利用了哪些控制器特征/能力,并且生成用于工业自动化项目的清单,该清单标识工业自动化项目所利用的控制器特征/能力。该清单可以标识例如所使用的运动轴的数量、所使用的以太网节点的数量、所使用的语言的标识、正在使用什么高级指令(如果有的话)(例如,PID控制回路、其他控制回路、销售方开发的特征等)、所使用的连接的数量、是否使用机器学习和/或人工智能、是否正在使用分析等。清单被发送至与控制器的制造商/销售方或其他服务提供商相关联的远程/云服务器。远程/云服务器确定工业自动化项目所利用的并且在清单中标识的哪些特征/能力对客户不可用。例如,远程/云服务器可以审查客户过去的购买和/或现有的许可协议,以识别哪些特征/能力不是免费的并且没有被购买。然后,客户可以购买对不可用特征/能力的访问。一旦客户访问了对工业自动化项目所利用的并且在清单中标识的控制器特征/能力,远程/云服务器就生成加密的证书,该加密的证书被发送回计算装置。计算装置向控制器发送工业自动化项目、清单和证书。控制器对证书进行解密,验证证书(例如,确认工业自动化项目、清单和证书都彼此匹配)。在证书验证后,控制器运行或执行工业自动化项目。在一些实施方式中,控制器可以在工业自动化项目的执行期间收集数据,所述数据在工业自动化项目的执行之后被发送回计算装置。
作为介绍,图1是工业自动化系统10的示意图。如图所示,工业自动化系统10包括控制器12和致动器14(例如,电机)。工业自动化系统10还可以包括或者耦接至电源16。电源16可以包括发电机或外部电网。控制器12可以是控制多个工业自动化部件(例如,多个电机14)的独立控制单元、电机控制中心(MCC)的一部分、控制单个自动化部件(例如,电机14)的操作的控制器12或者较大的工业自动化系统10内的子部件。在本实施方式中,控制器12包括用户接口18(例如人机接口(HMI))和控制系统20,控制系统20可以包括存储器22和处理器24。控制器12可以包括用于容纳工业自动化系统10的各种部件(例如电机起动器、断路开关等)的机柜或一些其他外壳。
控制系统20可以(例如,经由存储在存储器22上并被配置成由处理器24执行的计算机可读代码或指令)被编程以提供用于驱动电机14的信号。在某些实施方式中,控制系统20可以根据特定应用所需的特定配置进行编程。例如,控制系统20可以被编程以响应外部输入,例如参考信号、警报、命令/状态信号等。外部输入可以源自一个或更多个继电器或其他电子装置。控制系统20的编程可以通过软件配置或固件代码来完成,该软件配置或固件代码可以(例如,经由计算装置26)被加载到控制系统20的内部存储器22上或者经由控制器12的用户接口18进行编程。控制系统20的固件可以响应定义的操作参数集合。各种操作参数的设置确定了控制器12的操作特性。例如,各种操作参数可以确定电机14的速度或扭矩,或者可以确定控制器12如何响应各种外部输入。因此,操作参数可以用于映射控制器12内的控制变量或控制通信地耦接至控制器12的其他装置。这些变量可以包括例如速度预设、反馈类型和值、计算增益和变量、算法调整、状态和反馈变量、可编程逻辑控制器(PLC)如控制编程等。
在一些实施方式中,控制器12可以通信地耦接至用于检测工业自动化系统10内的操作温度、电压、电流、压力、流速等的一个或更多个传感器28。利用来自传感器的反馈数据,控制系统20可以详细跟踪工业自动化系统10可以运行的各种条件。例如,反馈数据可以包括例如实际电机速度、电压、频率、电能质量、报警条件等条件。在一些实施方式中,反馈数据可以被传送回计算装置26以用于另外的分析。
计算装置26可以经由有线连接或无线连接通信地耦接至控制器12。计算装置26可以使用在计算装置26上运行的本地应用或者使用可经由浏览器访问的网站来从定义工业自动化项目的用户接收输入。用户可以通过编写代码、与可视化编程接口交互、经由图形用户接口输入或选择值、提供一些其他输入或其组合来定义工业自动化项目。计算装置26可以向控制器12发送项目以供执行。工业自动化项目的执行使控制器12通过一个或更多个任务和/或处理的执行来控制工业自动化系统。在一些应用中,控制器12可以被布置在防火墙后面,使得控制器不具有互联网接入,并且不与防火墙之外的除计算装置26之外的任何装置进行通信。如前面所讨论的,控制器可以在项目执行期间收集反馈数据,该反馈数据可以被提供回计算装置26以用于分析。反馈数据可以包括例如一个或更多个执行时间、一个或更多个警报、一个或更多个错误消息、一个或更多个警报条件、一个或更多个温度、一个或更多个压力、一个或更多个流速、一个或更多个电机速度、一个或更多个电压、一个或更多个频率等。可以基于对反馈数据的分析经由计算装置26更新项目。
计算装置26可以经由互联网或一些其他网络与云服务器30或远程服务器进行通信。在本实施方式中,云服务器30由控制器12的制造商操作。然而,在其他实施方式中,云服务器可以由控制器的销售方、服务提供商等操作。云服务器30可以用于帮助客户创建和/或修改项目,以帮助解决控制器12可能出现的任何问题,或者提供其他服务(例如,项目分析、启用、限制控制器12的能力、数据分析、控制器固件更新等)。远程/云服务器30可以是由控制器12的制造商、销售方或服务提供商操作的一个或更多个服务器。远程/云服务器30可以被布置在由控制器12的制造商、销售方或服务提供商拥有和/或操作的设施处。在其他实施方式中,远程/云服务器30可以被布置在控制器12的制造商、销售方或服务提供商拥有或租用服务器空间的数据中心中。在另外的实施方式中,远程/云服务器30可以包括在一个或更多个数据中心中运行的多个服务器,以提供云计算环境。
图2示出了可以用作图1所示的计算装置26和/或云/远程服务器30的计算装置100的示例部件的框图。如本文所使用的,计算装置100可以被实现为一个或更多个计算系统,所述计算系统包括膝上型计算机、笔记本型计算机、台式计算机、平板计算机、HMI或工作站计算机,以及服务器型装置或便携式通信型装置(例如蜂窝电话)和/或其他合适的计算装置。
如图所示,计算装置100可以包括各种硬件部件,例如一个或更多个处理器102、一个或更多个总线104、存储器106、输入结构108、电源110、网络接口112、用户接口114和/或用于执行本文描述的功能的其他计算机部件。
在某些实现方式中,一个或更多个处理器102是被配置成执行存储在存储器106或其他可访问位置中的指令的微处理器。可替选地,一个或更多个处理器102可以被实现为专用集成电路(ASIC)、现场可编程门阵列(FPGA)和/或被设计成以专用方式执行本文讨论的功能的其他装置。应当理解,多个处理器102或处理部件可以用于以分布式方式或并行方式执行本文讨论的功能。
存储器106可以包含用于存储数据或可执行例程的任何有形非暂态介质,包括易失性存储器、非易失性存储器或其任何组合。尽管为了方便起见在图2中显示为单个块,但是存储器106可以在相同或不同的物理位置中包含各种离散介质。一个或更多个处理器102可以经由一个或更多个总线104访问存储器106中的数据。
输入结构108用于使得用户能够向装置100输入数据和/或命令,并且可以包括鼠标、触摸板、触摸屏、键盘、控制器等。电源110可以是用于向计算装置100的各种部件提供电力的任何合适的源,包括线路和电池电力。在所描绘的示例中,装置100包括网络接口112。这样的网络接口112可以使得能够使用一个或更多个通信协议与网络上的其他装置进行通信。在所描绘的示例中,装置100包括用户接口114,例如被配置成显示由一个或更多个处理器102提供的图像或数据的显示器。用户接口114可以包括例如监视器、显示器等。应当理解,在现实世界的环境中,可以采用基于处理器的系统例如图2的计算装置100来实现本方法的一些或全部,例如执行图1所示的计算装置26和/或云/远程服务器30的功能。
回到图1,通常,控制器12的销售方可以仅提供有限数量的具有预定特征/能力组合的控制器12的型号。例如,如果客户希望购买具有特定特征和/或能力组合的控制器12,但是销售方不出售具有特定特征和/或能力组合的控制器12,则客户可能最终为具有所寻求的所有特征和/或能力以及客户不计划使用的一个或更多个另外的特征和/或能力的控制器12支付更高的价格。可替选地,客户可能最终购买缺少客户寻求的一个或更多个特定特征和/或能力的控制器12,并且确定如何使购买的控制器12在其应用中工作。另外,当客户购买控制器12时,通常,控制器12的特定特征和/或能力不能被打开或关闭。因此,即使控制器12的一个或更多个特定特征和/或能力可能没有被定期使用,或者甚至在控制器12的整个寿命期间根本没有被使用,客户也可能最终支付以在控制器12的整个寿命内使用控制器12的特定特征和/或能力。此外,在购买了控制器12之后,客户可能无法选择向控制器12添加特定的特征和/或能力。因此,所公开的技术包括使用由云服务器30生成并由控制器12验证的证书,以使得客户能够定制控制器12的特征和/或能力,以及向控制器12添加和/或移除特征和/或能力,使得客户仅支付控制器12的正在使用的特征和/或能力。因此,定制控制器12的特征/能力、添加控制器12的特征/能力和/或移除控制器12的特征/能力在本文中可以被称为计量(meter)控制器功能。特定的控制器12特征/能力可以针对设定的时间段(特定的持续时间、在某个日期/时间之前、在某个日期/时间之后等等)、针对设定数量的周期等等对特定的项目、特定的客户可用。
图3是用于计量控制器12功能的系统的示意图。如前所述,计算装置26用于使用在计算装置26上运行的本地软件应用或使用经由浏览器访问的网页来生成项目200。项目200可以通过编写代码、与可视编程接口交互、经由图形用户接口输入或选择值、提供一些其他输入或其某种组合来进行创建和/或编辑。项目200是定义工业自动化系统10内的控制器12和一个或更多个工业自动化部件在执行一个或更多个工业自动化任务期间要如何操作的代码的一部分。在项目200已经完成之后,计算装置26执行项目200的分析以确定项目200利用了控制器12的哪些特征和/或能力。例如,这可以包括所使用的运动轴的数量、所使用的以太网节点的数量、所使用的语言、正在使用什么高级指令(如果有的话)(例如,PID控制回路、其他控制回路、销售方开发的特征等)、所使用的连接的数量、是否使用机器学习和/或人工智能、是否正在使用分析、中央处理单元(CPU)性能、可用的存储器的量、安全等级(例如,安全完整性等级2、安全完整性等级3等)、冗余能力等。计算装置26生成指示哪些特征和/或能力正在被利用的清单202,并且将清单202发送至云服务器30。清单202可以包括例如列出项目200所利用的特征和/或能力的数据文件以及如下的数据文件:所述数据文件具有对应于特征和/或能力的集合列表的字段,以及在每个字段中指示是否使用了相应的特征/能力,以及针对特定字段使用了该特征/能力的多少、使用了特征/能力的什么级别以及/或者使用了该特征/能力多少次。在一些实施方式中,清单202可以包括在其上项目200被授权运行的控制器12的唯一标识。因此,客户可以选择购买证书204以在特定的控制器12或多个控制器上运行,或者在有限数量的控制器12上运行。然而,应当理解,也可以设想其他形式的清单。在示出的实施方式中,项目200本身不被发送至云服务器30。一些客户可能希望将项目200的各个方面保密,并且因此可能不希望将项目200发送至云服务器30。因此,在本实施方式中,清单202可以仅指示项目200正在使用哪些特征和/或能力,而不是项目200正在使用这些特征和/或能力的具体方式。然而,设想了其中项目200可以与清单202一起被发送至云服务器30的实施方式(例如,用于项目分析、故障排除、帮助开发项目等)。此外,设想了其中项目200被发送至云服务器30并且清单202由云服务器30生成的实施方式。
云服务器30交叉检查过去的购买、许可协议等,并且确定项目200使用的什么特征和/或能力(如果有的话)不是免费的并且没有支付。如果存在不免费且未支付的特征和/或能力,则云服务器30生成声明,该声明标识由项目200使用的不免费且未支付的特征和/或能力、用于获得对这些特征和/或能力的访问的选项以及与每个选项相关联的成本。客户通过选择选项中的一个或更多个选项并为所选择的选项提供支付或承诺提供支付来做出响应。响应于接收到选项中的一个或更多个选项的选择和支付(例如,一次付清、每月支付、每季度支付、每年支付等),或者响应于确定项目200所使用的所有特征和/或能力都被过去的购买和/或现有的许可协议覆盖,云服务器30生成针对清单202的证书204并将该证书204发送至计算装置26。该证书可以针对特定的项目、特定的持续时间、直到截止日期、在开始日期之后、在一定数量的周期内等等是有效的。
在本实施方式中,证书204是加密的X.509证书,其包括与存储在控制器上的公钥相对应的私钥。通常,证书204可以包括公钥或私钥以及标识(例如,主机名、实体或个人)。证书204由可信的证书机构签名。证书204可以包括例如版本号、序列号、签名算法ID、发行者名称、有效期、开始日期和结束日期、主题名称、主题公钥信息、主题公钥、主题私钥信息、主题私钥、发行者唯一标识符、主题唯一标识符、扩展、证书签名算法、证书签名或其某种组合。在证书204被签名之后,公钥可以用于验证使用对应私钥进行签名的文档。如果遇到无法识别的扩展,则证书204被拒绝。在一些实施方式中,签名机构可以使用证书撤销列表来传达证书已经被签名机构视为无效。此外,在具有多个证书机构的实施方式中,可以使用认证路径验证算法来使得证书204能够由中间证书或签名机构签名。然而,应当理解,证书204可以利用其他已知的加密和/或安全标准和技术来保护证书204。
在一些实施方式中,控制器12可以由第二实体从第一实体例如原始设备制造商(OEM)购买。第二实体可以将控制器12结合到产品(例如,用于特定应用的交钥匙(trun-key)工业自动化系统10)中,并且然后将该产品出售给第三实体(例如,最终客户)。在这样的实施方式中,可以存在多个证书204。例如,第一实体可以将控制器12出售给具有第一能力集合的第二实体。第二实体然后将控制器12封装到产品中,使得仅第一能力集合的子集可用于使用,并且将该产品出售给第三实体。因此,可以沿着实体链针对每个交易创建证书204,证书204指定如由交易条款管理的控制器12的能力。例如,第一证书204可以基于第一实体与第二实体之间的交易条款将第一能力集合识别为可供第二实体使用。第二证书204可以基于第二实体与第三实体之间的交易条款将第一能力集合的子集识别为可供第三实体使用。应当理解,该证书链可以通过实体之间的另外级别的交易来传播。因此,设想了可以存在三个、四个、五个或更多个证书204的实施方式。在这样的实施方式中,控制器12可以在执行项目200之前验证多个证书204。例如,控制器12可以验证除了最后一个发行者之外的每个证书204的发行者与链中的下一证书204的主题相匹配。除了链中的最后一个证书204之外,每个证书204由与链中的下一证书204相对应的密钥来签名,使得可以使用包含在后续证书204中的密钥来验证一个证书204的签名。链中的最后一个证书204被称为信任锚(trust anchor),因为证书204是从可信任的来源或通过某种可信任的过程传递的。
在上述具有两个证书204和三个实体的实施方式中,第三实体,即最终客户,可以决定他们想要使用第一能力集合的第一能力子集之外的控制器12功能。因此,如果这些能力在第一能力集合内,则第三实体可以向第二实体支付对另外的能力的访问。如果另外的能力在第一能力集合之外,则第二实体和/或第三实体可以向第一实体支付对另外的能力的访问,从而产生新的证书。
计算装置26将项目200、清单202和证书204发送至控制器12。控制器12使用存储在其存储器中的对应的公钥的副本来对证书204进行解密,并且确认证书204匹配清单202。在一些实施方式中,控制器12可以由制造商、销售方或一些其他实体利用存储在其存储器中的公钥进行预编程。在其他实施方式中,公钥可能已经经由固件更新或一些其他网络通信被接收。
除了提供或更新公钥之外,固件更新可以用于在现场“翻新”传统控制器12,以添加功能和增加能力。例如,固件更新可以为安装的控制器12提供新的分析能力、新的使用算法、要实现的新的控制回路等。
如果证书204匹配清单202,则控制器12运行或执行该项目。控制器12不评估哪些特征已经支付、哪些特征包括在过去的购买中或者哪些特征已经被许可。只要已经提供了匹配清单202的有效证书204,控制器12就运行项目200。
图4是用于计量控制器12功能的处理300的流程图。如前所述,在计算装置26上创建或编辑项目。计算装置26分析该项目以生成标识由该项目使用的各种控制器特征和/或能力的清单。在302处,清单被发送至云服务器30。云服务器30分析清单,并且将清单所标识的控制器特征和/或能力与过去的购买、许可协议等进行比较,并且确定由清单标识的哪些控制器特征和/或能力(如果有的话)不是免费的并且没有被购买。如果存在购买的特征和/或能力,则云服务器30生成声明,该声明标识由项目200使用的尚未购买的特征和/或能力、用于获得对这些特征和/或能力的访问的选项以及与每个选项相关联的成本。在304处,该声明被发送至计算装置26。在306处,计算装置26发送针对尚未购买的特征和/或能力的一个或更多个选项和/或支付的标识。在308处,云服务器30生成包括私钥的针对清单的证书(例如,加密的X.509证书),并且将该证书发送至计算装置。在310处,计算装置26将项目、清单和证书发送至控制器12。控制器12使用存储在其存储器中的对应的公钥的副本来对证书204进行解密,并且确认该证书匹配清单202。如果证书204匹配清单202,则控制器12运行该项目。在一些实施方式中,在312处,控制器可以将在项目运行期间收集的数据发送至计算装置26。该数据可以包括例如一个或更多个执行时间、一个或更多个警报、一个或更多个错误消息、一个或更多个警报条件、一个或更多个温度、一个或更多个压力、一个或更多个流速、一个或更多个电机速度、一个或更多个电压、一个或更多个频率等。
图5是从计算装置26的角度的用于计量控制器功能的处理400的流程图。在框402处,接收定义工业自动化项目的输入。该输入可以包括编程代码、对可视化编程环境的输入和/或对图形用户接口(GUI)的输入,该图形用户接口设置阈值、位移、速度、温度、电压、电流或控制工业自动化系统的其他方面以执行一个或更多个工业自动化任务或处理。
在框404处,分析项目并生成清单。该分析涉及确定项目所利用的控制器特征和/或能力。例如,该分析可以确定所使用的运动轴的数量、所使用的以太网节点的数量、所使用的语言的标识、正在使用什么高级指令(如果有的话)(例如,PID控制回路、其他控制回路、销售方开发的特征等)、所使用的连接的数量、是否使用机器学习和/或人工智能、是否正在使用分析等。分析结果包括在清单中。即,清单标识了项目所利用的控制器特征和/或能力。清单的分析和/或生成可以在执行一个或更多个脚本期间或响应于执行一个或更多个脚本来执行。例如,脚本可以使处理器解析定义项目的程序代码并应用一个或更多个规则,或者以其他方式寻找代码的指示特定控制器特征和/或能力正被项目使用的特征。因为清单可以不包括关于项目到底如何使用列举的特征和/或能力的具体信息,所以可能不愿意将敏感数据(例如,商业秘密、具体配方、关于制造处理的细节等)发送给第三方的客户可能会觉得将清单发送给外部目的地感到舒服。在框406处,清单被发送至远程/云服务器。在一些实施方式中,清单可以被加密(例如,使用公钥/私钥方案或一些其他加密技术)。在其他实施方式中,清单可以以未加密的形式发送。
如前面所讨论的,在一些实施方式中,分析可以由云服务器30而不是由计算装置26来执行。在这样的实施方式中,客户可以将项目发送云服务器30以执行分析并生成清单,该清单与证书一起或与证书分开返回到计算装置26。
在接收到清单时,云服务器30可以交叉检查过去的购买和与客户的现有许可协议,并且识别清单中哪些控制器特征和/或能力不是免费的并且还没有支付。即,云服务器30生成并发送清单中需要支付的控制器特征和/或能力的声明以供计算装置26接收(框408)。在一些实施方式中,声明可以包括用于获取控制器特征和/或能力的选项(例如,一次付清、定期支付、具有其他特征/能力的封装等)。在框410处,从针对特征和/或能力的声明和/或支付中选择选项之一的命令被发送至远程服务器。在一些实施方式中,可以发送支付承诺来代替支付。此外,在一些实施方式中,支付可以通过第三方支付服务进行。一旦清单中需要支付的所有控制器特征和/或能力都已被支付,则云服务器30生成并发送证书以供计算装置接收(框412)。在本实施方式中,证书是加密的X.509证书,其包括与存储在控制器12上的公钥相对应的私钥。然而,应当理解,证书可以利用其他已知的加密和/或安全标准和技术来保护证书204。如前面所讨论的,在一些实施方式中,云服务器30可以发送多个证书。
在框414处,计算装置26将项目、清单和证书发送至控制器12。控制器12验证证书和清单,并且然后运行项目。在一些实施方式中,控制器12可以发送从运行项目中收集的数据以供计算装置接收(框416)。
图6是从云/远程服务器30的角度的用于计量控制器功能的处理500的流程图。在框502处,从客户接收清单。如前面所讨论的,在一些实施方式中,云服务器30可以从客户接收项目并分析该项目以生成清单。清单标识项目所使用的控制器特征和/或能力。例如,清单可以标识使用了多少运动轴、使用了多少以太网节点、使用了哪些语言、正在使用什么高级指令(如果有的话)(例如,PID控制回路、其他控制回路、销售方开发的特征等)、使用了多少连接、是否使用机器学习和/或人工智能、是否正在使用分析等。
在框504处,识别未购买的正在使用的特征。例如,可以审查之前的购买和现有的许可证,以从清单中识别未购买的控制器特征和/或能力。然后识别用于访问控制器特征和/或能力的选项,并计算与每个选项相关联的成本。在框506处,生成声明,该声明标识用于访问客户还没有访问的控制器特征和/或能力的各种选项,以及与每个选项相关联的成本。该声明可以标识例如单个控制器特征和/或能力、控制器特征和/或能力的封装、或包括对控制器特征和/或能力的访问的可用服务(例如,分析)。此外,该声明可以包括用于由客户针对即时项目或任何永久项目使用特定的控制器特征和/或能力的一次性支付、每月支付、每季度支付、每年支付等的选项。
在框510处,从客户接收命令和/或支付。命令规定了声明中说明的选项中的一个或更多个选项,以及针对一个或更多个所选择的选项的支付。在一些实施方式中,可以发送支付承诺来代替支付。此外,在一些实施方式中,支付可以通过第三方支付服务进行。
在框512处,针对清单生成证书。该证书可以是加密的证书(例如,X.509证书),其包括与存储在控制器上的公钥相对应的私钥。在框514处,证书被发送至客户的计算装置。
图7是从控制器12的角度的用于计量控制器功能的处理600的流程图。在框602处,从计算装置接收项目、清单和证书(例如,加密的X.509证书)。在框604处,对证书进行解密。如前所述,证书包括私钥,并且公钥被存储在控制器12的存储器中。控制器12可以由制造商或销售方利用公钥预编程。可替选地,公钥可能已经经由对控制器12的固件更新或一些其他通信方法获得。
在框606处,验证证书。即,对项目匹配清单以及清单匹配证书进行确认。在项目最终确定和清单生成之后生成的证书标识了清单。这可以包括清单编号、与清单相关联的一些其他字母数字字符串、或者对应于清单的一些其他数据。在一些实施方式中,证书还可以标识项目。该证书被加密以及仅使得与特定清单相关联的项目能够运行防止了客户使用伪造的证书来运行项目。如前面所讨论的,在一些实施方式中,可能存在多个证书要验证。
在框608处,执行项目。在一些实施方式中,可以在执行项目的同时收集数据(框610)。该数据可以包括例如一个或更多个执行时间、一个或更多个警报、一个或更多个错误消息、一个或更多个警报条件、一个或更多个温度、一个或更多个压力、一个或更多个流速、一个或更多个电机速度、一个或更多个电压、一个或更多个频率等。在这样的实施方式中,数据可以存储在控制器12内,并且数据分析在控制器12内执行。在其他实施方式中,数据中的一些或所有可以被发送回计算装置(框612)。分析可以在计算装置26上执行,或者发送至云服务器30或另一第三方以进行分析。
应当理解,尽管图5至图7分别是从计算装置、远程服务器和控制器的角度进行的,但是可以设想这样的实施方式,其中,由图5至图7中的一个部件执行的所示出和描述的动作可以由系统中的其他部件来执行。例如,被描述为由计算装置执行的动作可以由远程服务器或控制器执行,被描述为由远程服务器执行的动作可以由计算装置或控制器执行,并且被描述为由控制器执行的动作可以由计算装置或远程服务器执行。此外,尽管被描述为验证证书、清单和项目并且然后执行项目的工业自动化部件是控制器,但是应当理解,不同的工业自动化部件、任何其他工业设备或由控制系统操作的部件的集合可以执行这些任务。
所公开的技术使得客户能够针对他或她的特定项目定制工业自动化控制器的特征/能力,并且然后在逐个项目的基础上添加或移除控制器的特征/能力。具体地,由客户操作的计算系统分析工业自动化项目,以识别该项目利用了哪些控制器特征/能力,并针对该项目生成标识该项目利用的控制器特征/能力的清单。清单被发送至与控制器的制造商/销售方或其他服务提供商相关联的远程/云服务器。远程/云服务器确定项目利用并在清单中标识的哪些控制器功能客户无法访问。例如,远程/云服务器可以审查客户过去的购买和/或现有的许可协议,以识别哪些功能/能力不是免费的并且还没有支付。然后,客户可以购买对特征/能力的访问。一旦客户访问了项目所利用的并在清单中标识的控制器特征/能力,远程/云服务器生成加密的证书,该证书被发送回计算装置。计算装置将项目、清单和证书发送至控制器。控制器对证书进行解密,验证证书(例如,确认项目、清单和证书都匹配)。在证书验证后,控制器运行项目。在一些实施方式中,控制器可以在项目执行期间收集数据,该数据在项目执行之后被发送回计算装置。
虽然本文仅说明和描述了本公开内容的某些特征,但是本领域技术人员将进行许多修改和改变。因此,应当理解,所附权利要求旨在涵盖落入本文所描述的实施方式的真实精神内的所有这些修改和改变。

Claims (20)

1.一种有形非暂态计算机可读介质,其包括程序指令,所述程序指令在由处理器执行时,使所述处理器执行包括以下的操作:
访问存储在存储器中的项目代码,其中,所述项目代码被配置成定义工业自动化控制器的一个或更多个操作;
分析所述项目代码以识别所述工业自动化控制器的由所述一个或更多个操作所利用的一个或更多个能力;
生成指示所述工业自动化控制器的所述一个或更多个能力的文件;
将所述文件发送至服务器,其中,所述服务器被配置成生成用于授权所述工业自动化控制器执行所述项目代码的证书;
从所述服务器接收所述证书,其中,所述证书标识所述文件和针对所述工业自动化控制器执行所述项目代码以执行所述一个或更多个操作的授权;以及
将所述项目代码、所述文件和所述证书发送至所述工业自动化控制器以供执行。
2.根据权利要求1所述的有形非暂态计算机可读介质,其中,分析所述项目代码以识别所述一个或更多个能力包括:解析所述项目代码以识别所述项目代码的指示所述一个或更多个能力的一个或更多个特征。
3.根据权利要求2所述的有形非暂态计算机可读介质,其中,解析所述项目代码以识别所述一个或更多个特征包括执行脚本,所述脚本将一个或更多个规则应用于所述项目代码以识别由所述项目代码引用的运动轴的数量、由所述项目代码引用的以太网节点的数量、由所述项目代码引用的连接的数量或其组合。
4.根据权利要求1所述的有形非暂态计算机可读介质,所述操作包括从所述服务器接收声明,所述声明标识:
所述工业自动化控制器的由所述项目代码利用的一个或更多个能力中的未购买的至少一个能力;以及
与获得对所述一个或更多个能力中的未购买的至少一个能力中的每一个能力的访问相关联的相应成本。
5.根据权利要求4所述的有形非暂态计算机可读介质,其中,所述声明标识用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项。
6.根据权利要求5所述的有形非暂态计算机可读介质,所述操作包括:
向所述服务器发送用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的至少一个选项的选择、以及针对用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的所选择的至少一个选项的支付信息。
7.根据权利要求5所述的有形非暂态计算机可读介质,所述操作包括:
向所述服务器发送用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的至少一个选项的选择;以及
向第三方支付服务发送针对用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的所选择的至少一个选项的支付信息。
8.一种方法,包括:
经由处理器接收用于定义项目的一个或更多个输入;
分析所述项目以识别工业自动化控制器的由所述项目所利用的一个或更多个能力;
生成包括所述工业自动化控制器的由所述项目所利用的一个或更多个能力的文件;
将所述文件发送至服务器;
从所述服务器接收证书,其中,所述证书标识所述文件和针对所述工业自动化控制器执行与所述文件相关联的所述项目的授权;以及
将所述项目、所述文件和所述证书发送至所述工业自动化控制器以供执行。
9.根据权利要求8所述的方法,其中,分析所述项目以识别所述一个或更多个能力包括:解析项目代码以识别所述项目代码的指示所述一个或更多个能力的一个或更多个特征。
10.根据权利要求9所述的方法,其中,所述一个或更多个特征包括由所述项目代码引用的运动轴的数量、由所述项目代码引用的以太网节点的数量、由所述项目代码引用的连接的数量或其组合。
11.根据权利要求8所述的方法,其中,所述工业自动化控制器被配置成响应于所述证书匹配所述文件和所述项目来执行所述项目。
12.根据权利要求8所述的方法,其中,所述工业自动化控制器被配置成响应于在没有所述证书的情况下接收到所述项目而拒绝执行所述项目。
13.根据权利要求8所述的方法,包括从所述工业自动化控制器接收在所述项目的执行期间收集的数据。
14.根据权利要求13所述的方法,其中,所述数据包括一个或更多个执行时间、一个或更多个警报、一个或更多个错误消息、一个或更多个告警条件、一个或更多个温度、一个或更多个压力、一个或更多个流速、一个或更多个电机速度、一个或更多个电压、一个或更多个频率或其组合。
15.一种系统,包括:
计算装置,其被配置成执行第一操作,所述第一操作包括:
分析项目代码以识别工业自动化控制器的由所述项目代码所利用的一个或更多个能力;
生成包括所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力的清单;
将所述清单发送至服务器,其中,所述服务器被配置成生成用于授权所述工业自动化控制器以执行所述项目代码的证书;
从所述服务器接收证书,其中,所述证书标识所述清单和针对所述工业自动化控制器执行所述项目代码以执行所述一个或更多个操作的授权;以及
将所述项目代码、所述清单和所述证书发送至所述工业自动化控制器;以及
所述工业自动化控制器,其中,所述工业自动化控制器被布置在防火墙后面,并且其中,所述工业自动化控制器被配置成执行第二操作,所述第二操作包括:
从所述计算装置接收所述项目代码、所述清单和所述证书;
对所述证书进行解密;
验证所述证书匹配所述清单和所述项目代码;
以及
执行所述项目代码。
16.根据权利要求15所述的系统,其中,所述证书包括私钥,并且其中,使用存储在所述工业自动化控制器的存储器中的公钥来对所述证书进行解密。
17.根据权利要求16所述的系统,其中,所述证书包括X.509证书。
18.根据权利要求15所述的系统,所述第二操作包括:
在所述项目代码的执行期间收集数据;以及
将所述数据发送至所述计算装置。
19.根据权利要求15所述的系统,包括所述服务器,其中,所述服务器被配置成执行第三操作,所述第三操作包括:
从所述计算装置接收所述清单;
确定与所述计算装置相关联的客户能够访问所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力;
响应于确定与所述计算装置相关联的客户能够访问所述工业自动化控制器的所述一个或更多个能力,生成所述证书;以及
将所述证书发送至所述计算装置。
20.根据权利要求19所述的系统,所述第三操作包括:
确定所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力中的未购买的至少一个能力;
生成声明,所述声明标识:
所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力中的未购买的至少一个能力;以及
用于获得对所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力中的未购买的至少一个能力的访问的多个选项;以及
与获得对所述工业自动化控制器的由所述项目代码所利用的一个或更多个能力中的未购买的至少一个能力中的每一个能力的访问相关联的相应成本;
将所述声明发送至所述计算装置;以及
从所述计算装置接收:
用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的至少一个选项的选择;以及
针对用于获得对所述一个或更多个能力中的所述至少一个能力的访问的多个选项中的所选择的至少一个选项的支付信息。
CN202110644381.7A 2020-06-19 2021-06-09 用于计量的自动化控制器功能的系统和方法 Active CN113820969B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/906,080 2020-06-19
US16/906,080 US11561532B2 (en) 2020-06-19 2020-06-19 Systems and methods for metered automation controller functionality

Publications (2)

Publication Number Publication Date
CN113820969A true CN113820969A (zh) 2021-12-21
CN113820969B CN113820969B (zh) 2024-02-09

Family

ID=76325364

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110644381.7A Active CN113820969B (zh) 2020-06-19 2021-06-09 用于计量的自动化控制器功能的系统和方法

Country Status (3)

Country Link
US (1) US11561532B2 (zh)
EP (1) EP3926921A1 (zh)
CN (1) CN113820969B (zh)

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5421235A (en) * 1977-07-18 1979-02-17 Transaction Management Effective transaction terminal
US5758069A (en) * 1996-03-15 1998-05-26 Novell, Inc. Electronic licensing system
CN1505307A (zh) * 2002-11-20 2004-06-16 传送来自于完成加密操作的证书的精简信息的系统和方法
US20040268120A1 (en) * 2003-06-26 2004-12-30 Nokia, Inc. System and method for public key infrastructure based software licensing
US20050229004A1 (en) * 2004-03-31 2005-10-13 Callaghan David M Digital rights management system and method
WO2006059343A2 (en) * 2004-11-30 2006-06-08 White Vision Software Limited A method and system for institution of information communication and computation framework
US7233830B1 (en) * 2005-05-31 2007-06-19 Rockwell Automation Technologies, Inc. Application and service management for industrial control devices
US20070208440A1 (en) * 2006-03-02 2007-09-06 Rockwell Automation Technologies, Inc. Programmatic access to controller construct and variable names
US20080082449A1 (en) * 2006-09-29 2008-04-03 Rockwell Automation Technologies, Inc. Authentication for licensing in an embedded system
US20100332404A1 (en) * 2009-06-29 2010-12-30 David Valin Method and mechanism for protection, sharing, storage, accessing, authentication, certification, attachment and tracking anything in an electronic network
CN103097970A (zh) * 2010-08-19 2013-05-08 Abb技术有限公司 用于对机器人控制器提供安全远程访问的系统和方法
CN104049547A (zh) * 2013-03-13 2014-09-17 洛克威尔自动控制技术股份有限公司 用于工业自动化系统的软件的代码启用远程激活
CN104142629A (zh) * 2013-05-09 2014-11-12 洛克威尔自动控制技术股份有限公司 使用基于云的数据对工业机器环境进行虚拟化
CN105659646A (zh) * 2013-08-23 2016-06-08 通用电气公司 移动设备验证
US20160179993A1 (en) * 2014-12-22 2016-06-23 Rockwell Automation Technologies, Inc. Predictive analysis having data source integration for industrial automation
US20160252895A1 (en) * 2015-02-27 2016-09-01 Rockwell Automation Technologies, Inc. Industrial automation control system content protection
US20170041794A1 (en) * 2015-08-07 2017-02-09 Qualcomm Incorporated Validating authorization for use of a set of features of a device
US20180052451A1 (en) * 2016-08-19 2018-02-22 Rockwell Automation Technologies, Inc. Remote industrial automation site operation in a cloud platform
US20190050414A1 (en) * 2017-08-14 2019-02-14 Rockwell Automation Technologies, Inc. Modular control manifest generator for cloud automation
US20200175590A1 (en) * 2018-11-29 2020-06-04 Shu Ya Huo Method to turn digital rental buyer into subscriber and an apparatus to secure access & trade the rental item
US20200348654A1 (en) * 2019-04-30 2020-11-05 Automation Anywhere, Inc. Zero footprint robotic process automation system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1287416B1 (en) * 2000-04-07 2007-06-13 Viatech Technologies Inc. System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files
GB2373605B (en) * 2001-03-23 2005-04-27 Ibm A method of metering use of digitally encoded products
AU2003262857A1 (en) * 2002-08-24 2004-03-11 Ingrian Networks, Inc. Selective feature activation
US7913295B2 (en) 2007-04-04 2011-03-22 Microsoft Corporation Method and apparatus to enable a securely provisioned computing environment
US8244640B2 (en) 2007-06-21 2012-08-14 Microsoft Corporation Packet schema for pay-as-you-go service provisioning
US8484474B2 (en) 2010-07-01 2013-07-09 Rockwell Automation Technologies, Inc. Methods for firmware signature
US9781187B2 (en) * 2012-09-22 2017-10-03 Avaya Inc. Attribute scoping and hierarchy
US9468338B1 (en) 2013-04-17 2016-10-18 Conrad D. Canter Portable and modular cooking oil cleaning and cooking oil replenishment system
US20140337924A1 (en) * 2013-05-10 2014-11-13 Research In Motion Limited Methods and systems for dynamic license management
US10033319B2 (en) * 2015-09-01 2018-07-24 Rockwell Automation Technologies, Inc. Method for tuning a motor drive using frequency response
EP3757689B1 (en) * 2019-06-24 2023-04-12 ABB Schweiz AG Updating features in an automation device

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5421235A (en) * 1977-07-18 1979-02-17 Transaction Management Effective transaction terminal
US5758069A (en) * 1996-03-15 1998-05-26 Novell, Inc. Electronic licensing system
CN1505307A (zh) * 2002-11-20 2004-06-16 传送来自于完成加密操作的证书的精简信息的系统和方法
US20040268120A1 (en) * 2003-06-26 2004-12-30 Nokia, Inc. System and method for public key infrastructure based software licensing
US20050229004A1 (en) * 2004-03-31 2005-10-13 Callaghan David M Digital rights management system and method
WO2006059343A2 (en) * 2004-11-30 2006-06-08 White Vision Software Limited A method and system for institution of information communication and computation framework
US7233830B1 (en) * 2005-05-31 2007-06-19 Rockwell Automation Technologies, Inc. Application and service management for industrial control devices
US20070208440A1 (en) * 2006-03-02 2007-09-06 Rockwell Automation Technologies, Inc. Programmatic access to controller construct and variable names
CN101059695A (zh) * 2006-03-02 2007-10-24 洛克威尔自动控制技术股份有限公司 对控制器结构和变量名称的可编程访问
US20080082449A1 (en) * 2006-09-29 2008-04-03 Rockwell Automation Technologies, Inc. Authentication for licensing in an embedded system
US20100332404A1 (en) * 2009-06-29 2010-12-30 David Valin Method and mechanism for protection, sharing, storage, accessing, authentication, certification, attachment and tracking anything in an electronic network
CN103097970A (zh) * 2010-08-19 2013-05-08 Abb技术有限公司 用于对机器人控制器提供安全远程访问的系统和方法
CN104049547A (zh) * 2013-03-13 2014-09-17 洛克威尔自动控制技术股份有限公司 用于工业自动化系统的软件的代码启用远程激活
CN104142629A (zh) * 2013-05-09 2014-11-12 洛克威尔自动控制技术股份有限公司 使用基于云的数据对工业机器环境进行虚拟化
CN105659646A (zh) * 2013-08-23 2016-06-08 通用电气公司 移动设备验证
US20160179993A1 (en) * 2014-12-22 2016-06-23 Rockwell Automation Technologies, Inc. Predictive analysis having data source integration for industrial automation
US20160252895A1 (en) * 2015-02-27 2016-09-01 Rockwell Automation Technologies, Inc. Industrial automation control system content protection
US20170041794A1 (en) * 2015-08-07 2017-02-09 Qualcomm Incorporated Validating authorization for use of a set of features of a device
US20180052451A1 (en) * 2016-08-19 2018-02-22 Rockwell Automation Technologies, Inc. Remote industrial automation site operation in a cloud platform
US20190050414A1 (en) * 2017-08-14 2019-02-14 Rockwell Automation Technologies, Inc. Modular control manifest generator for cloud automation
US20200175590A1 (en) * 2018-11-29 2020-06-04 Shu Ya Huo Method to turn digital rental buyer into subscriber and an apparatus to secure access & trade the rental item
US20200348654A1 (en) * 2019-04-30 2020-11-05 Automation Anywhere, Inc. Zero footprint robotic process automation system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
栾楠, 陈建平, 言勇华: "工业机器人网络控制与编程", 组合机床与自动化加工技术, no. 10 *

Also Published As

Publication number Publication date
US11561532B2 (en) 2023-01-24
CN113820969B (zh) 2024-02-09
EP3926921A1 (en) 2021-12-22
US20210397162A1 (en) 2021-12-23

Similar Documents

Publication Publication Date Title
US10635422B2 (en) Systems and methods for delivering and accessing software components
US11249462B2 (en) Industrial data services platform
US8719586B1 (en) Digital rights management for applications
US11314493B1 (en) Industrial automation smart object inheritance
CN107077574A (zh) 用于客户端设备的信任服务
Barati et al. Tracking GDPR compliance in cloud-based service delivery
US20140188732A1 (en) Secure provisioning manifest for controlling peripherals attached to a computer
WO2001001227A1 (en) A system, method and article of manufacture for tracking software sale transactions of an internet-based retailer for reporting to a software publisher
EP3665884A1 (en) Systems and methods for automating security controls between computer networks
Islam et al. Remote device management via smart contracts
CN113820969B (zh) 用于计量的自动化控制器功能的系统和方法
CN110781459A (zh) 一种授权许可的管控方法、系统及电子设备
US20220343351A1 (en) Distributed scoring system
CN110879876A (zh) 用于发行证书的系统和方法
US20240111273A1 (en) Performance-based smart contracts in industrial automation
EP4343600A2 (en) Industrial blockchain enabled automation control
US20240106667A1 (en) Tokenized industrial automation software
EP4345719A1 (en) Industrial automation blockchain data management
US20240106666A1 (en) INDUSTRIAL AUTOMATION MANUFACTURING WITH NFTs AND SMART CONTRACTS
JP2003029863A (ja) ソフトウェアライセンス管理システム
CN116415222B (zh) 流程工业数字工厂云设计平台的授权管理方法及系统
US20240104520A1 (en) INDUSTRIAL SECURITY USING BLOCKCHAIN OR NFTs
US20240103504A1 (en) Blockchain-enabled digital twins for industrial automation systems
US20210312408A1 (en) Method for Payment-Based Execution of a Function of a Field Device to be Performed, Corresponding Field Device and Service Unit
KR20160109837A (ko) 원클릭 결제 처리 장치 및 방법

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