CN101059695B - 对控制器结构和变量名称的可编程访问 - Google Patents
对控制器结构和变量名称的可编程访问 Download PDFInfo
- Publication number
- CN101059695B CN101059695B CN2007101035370A CN200710103537A CN101059695B CN 101059695 B CN101059695 B CN 101059695B CN 2007101035370 A CN2007101035370 A CN 2007101035370A CN 200710103537 A CN200710103537 A CN 200710103537A CN 101059695 B CN101059695 B CN 101059695B
- Authority
- CN
- China
- Prior art keywords
- data
- title
- signal source
- plc
- separately
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 12
- 230000033001 locomotion Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 claims description 10
- 230000014509 gene expression Effects 0.000 claims description 5
- 230000015654 memory Effects 0.000 description 36
- 238000003860 storage Methods 0.000 description 18
- 238000005507 spraying Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 9
- 239000000284 extract Substances 0.000 description 7
- 239000003550 marker Substances 0.000 description 6
- 239000012634 fragment Substances 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000008676 import Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 239000007858 starting material Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000005476 soldering Methods 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000003466 welding Methods 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/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
本发明提供了一种系统和/或方法,用于在工业自动化环境里使用,其易于在可编程逻辑控制器内使用数据。接口部件可以易于接收涉及可编程逻辑控制器的数据部分。集成在可编程逻辑控制器(PLC)内并可通信地连接到所接口部件的访问部件可以用于在运行期间对名称和各自数据空间的可编程访问。
Description
相关申请的交叉引用
本申请要求2006年3月2日申请的序号为60/778,720、标题为“对控制器结构和变量名称的可编程访问”的美国临时专利申请的权益。将该申请的全部内容纳入本文,以供参考。
技术领域
本发明涉及工业控制系统,而且更具体来讲,涉及优化来自可编程逻辑控制器的数据的检索和/或使用。
背景技术
由于计算技术的发展,与几年前的类似商业相比时,现代商业可以更有效率地运行。例如,内部网络允许公司雇员通过电子邮件即时通信,迅速地传送数据文件到不同的雇员,操作数据文件,共享与项目有关的数据以便减少复制工作成果等等。此外,技术的改进使得工厂应用程序变得部分或完全地自动。例如,曾经需要工作人员使他们自己接近重型机械和其它各种危险条件的工作,现在可以在远离它的安全距离里完成。
此外,通过使用高精密度机械,与人类动作相关的不理想性日渐减少。许多这种工厂设备提供与生产相关的数据到可由在工厂场地的系统/进程/项目管理者访问的数据库。例如,传感器和相关软件可以检测特定机器在给定时间总量里已经完成操作的多个情况。此外,来自传感器的数据可以被传递到涉及系统警报的处理部件。因此,工厂自动化系统可以检查所收集的数据并自动和/或半自动地安排设备的运转、设备的替换以及其它各种涉及自动处理的程序。
虽然相对于自动控制工业过程已经提出了各种改进,但控制器的使用和设计没有大的改变。更详细地讲,工业控制器已经设计成能有效地进行实时控制。例如,传统的工业控制器从传感器接收数据并基于接收的数据控制启动器、驱动器等等。这种控制器利用与信号源和/或目的地相关联的符号和/或地址来识别数据的信号源和/或目的地。更具体来讲,工业控制器包括通信端口和/或适配器,以及可通信地连接到这种端口/适配器的传感器,启动器,驱动器等等。因此,控制器在接收到数据的时候可以识别设备身份,并进一步递送控制数据到适当的设备。
从上述可知,与传统工业控制器相关的数据被创建、传递和/或利用一小块物理地址空间存储。换句话说,通过浏览接收到和/或由控制器输出的数据而识别的所有内容是用于存储启动器或传感器的数据的存储器位置和状态的存储位置。这种工业控制器结构有效地操作特定设备的实时控制,然而,当不同的系统、用户、程序员、设备、应用程序等期望使用来自工业控制器的数据的时候,则出现了问题。例如,如果调度应用程序期望使用来自控制器的数据,那么熟悉所述控制器的人必须确定哪些数据是所希望的,前后参照所述数据的存储位置,输出所述存储内容并然后据此提取所需的数据。如果多个应用程序希望利用相同数据和/或如果与所述控制器数据相关联的名称和/或存储位置发生变化,那么所述问题变得复杂。
特别的是,数据变量、存储位置、名称等等可以例如项目文件方式离线存储。为了使其它设备、系统、应用程序等等来利用这种信息,程序员必须输出信息到一个文件(例如文本文件),然后从所述文件提取所期望的名称(例如利用软件工具和/或人工检出)。这种任务是令人沮丧的、太多细致的以及效率低下的,并且如果存储位置或数据名称变化,将所需要重复所述任务来利用数据重新关联系统软件。
发明内容
为了提供对本文所述一些方面的基本了解,以下提供了所要求保护的主题的简化描述。这种简要描述不是彻底的描述,并且不是用于确定关键/主要元件或描绘所要求保护的主题的范围。它的唯一目的是以简化形式的方式提供一些概念以作为后面提供的详细说明的前奏。
本发明涉及一种系统和/或方法,其易于可编程控制地访问与在可编程逻辑控制器内部的控制器、与所述控制器相关的部件、模块控制器部件的其中至少一个相关联的参考和/或名称,以便所述名称和/或参考数据串可以由控制系统内的各种元件使用。访问部件可以经由接口部件接收数据,其中可以根据可编程逻辑控制器分配名称。所述名称可以与任务,程序,例程,控制器,部件,控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,模块控制器部件,和/或可以在包括存储在PLC 104的参考和/或名称的自动环境内使用的任何适当的实体的其中至少一个相关联。所述访问部件在运行期间可以提供对名称和各自数据空间的可编程访问,其允许基于涉及这种空间和数据的名称而允许再使用对应于特定名称的数据。另外,在保留数据空间的核心功能的同时,这种再使用也可以自动修改为不同的名称。应当注意,PLC可以是自包含硬件的专用装置,或在“软PLC”的情况下运行在计算机上并提供类似PLC控制的一个软件。例如在软PLC的情况下,软PLC可以提取代码以直接访问项目数据库以便提取名称信息。
为了获得所述名称字符串,所述访问部件可以间接地指定所需的实体(例如部件,数据部分等等)的类型并且通过指定将获得的特顶项目使用执行背景信息或指引技术。前者的优势在于可以使用通用分类符(“This”),因此程序员可以开发从实际控制器结构提炼的遗传码。当执行程序的时候,则检索名称来提供一种继承。
根据本文所述的本发明的另一个方面,所述访问部件可以利用安全部件来为所述名称在粒状级别(granular level)和/或全局方式提供安全。特别的是,所述安全部件可以根据名称定义安全,授权和/或特权,其中部件和/或数据部分可以关联到一个特定的安全级别。访问部件可以进一步利用逻辑部件(例如,追踪至少一个名称),搜索部件(例如,在工业自动环境中提供数据查询),以及桥接部件(例如,提供网络性能)的其中至少一个。在如权利要求所述主题的其它方面,提供了一种在运行期间易于可编程控制地访问在可编程逻辑控制器内的名称和各自数据空间的方法。
为实现以上所述和相关后端,这里结合以下的描述和附图描述了本发明的某些例证性的方面。然而,这些方面是在其中可以使用本发明的原理的几个不同方式的表示,并且本发明意在包括所有这些方面和它们的等价物。根据以下对本发明的详细说明以及结合对附图的考虑时,本发明的其他优势以及新颖的特征将变得显而易见。
附图说明
图1举例说明了易于优化与在可编程逻辑控制器内的名称相关的编程能力的示例性系统的框图。
图2举例说明了在运行期间易于使用对PLC的可编程访问的示例性系统的框图。
图3举例说明了示例性系统框图,其易于可编程控制地访问在可编程逻辑控制器内的名称来执行与整个环境关联的数据。
图4举例说明了易于为在工业控制环境内使用的特定名称提供继承的示例性系统的框图。
图5举例说明了易于脚本化将要在人机接口(HMI)内使用的名称的示例性系统的框图。
图6举例说明了通过使用对在可编程逻辑控制器内的名称的可编程访问,易于在工业自动化环境内的编程的示例性系统的框图。
图7举例说明了易于可编程控制地访问在可编程逻辑控制器内的名称的示例性系统的框图。
图8举例说明了用于优化与在可编程逻辑控制器内的名称相关联的程控能力的示例性方法。
图9举例说明了示例性方法,其易于可编程控制地访问在可编程逻辑控制器内的名称以执行与整个环境关联的数据。
图10举例说明了示例性网络环境,其中可以使用所要求保护的主题的新方面。
图11举例说明了可以根据所要求保护的主题使用的示例性操作环境。
具体实施方式
现在参照附图描述所要求保护的主题,其中相同的表示标记始终用来参考相同的元件。在随后的描述中,为了说明的目的,提出了很多具体细节,以便提供对所要求保护的主题的彻底的了解。然而显而易见的是,该主题可以在没有这些具体细节的情况下实现。在其它情况下,众所周知的结构和设备以框图的形式示出,以便便于描述本发明。
正如本申请中所使用的那样,术语“部件”和“系统”等等意在表示与计算机有关的实体,任一硬件、硬件和软件的组合、软件或者执行中的软件。例如,部件可以是但不局限于在处理器上运行的进程、处理器、对象、实例、可执行的、执行的线程、程序和/或计算机。通过例证说明,在计算机上运行的应用程序以及所述计算机都可以是一个部件。一个或多个部件可以驻留在执行的进程和/或线程内,并且部件可以位于一个计算机上和/或分布在两个或更多计算机之间。
此外,所要求保护的主题可以实施为方法、装置或制造产品,使用标准程序和/或工程技术来产生软件、固件、硬件、或者它们的任意组合来控制计算机执行所公开的主题。正如此处使用的那样,术语“制造物”意在包括可从任何计算机可读设备、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不局限于:磁存储器(例如,硬盘,软盘,磁带…)、光盘(例如,光盘(CD),数字通用盘(DVD)…)、智能卡和闪存设备(例如卡,棒,键驱动…)。另外应当理解,可以使用载波来承载计算机可读电子数据,诸如在发送和接收电子邮件中或在访问诸如因特网或局域网(LAN)网络中使用的电子数据。当然,本领域技术人员在不脱离所要求保护的主题范围或精神的情况下,可以对该结构进行多种修改。此外,此处使用的单词“示例性”意思是充当一种实例、情况或例证说明。此处所述的作为“示例性”的任何方面或设计不是必须要看作是超过其它方面或设计的优选或有利。
现在转向所述附图,图1举例说明了易于优化与在可编程逻辑控制器内的名称相关联的程控能力的系统100。系统100包括访问部件102,其可以经由接口部件106(在以下将论述以及此处称为“接口”)接收数据,其中名称可以是由可编程逻辑控制器104(以下称为“PLC”)分配的。所述名称可以与任务(例如可执行碎片等等),程序(例如代码的地址等等),例程(例如代码块等等),控制器,部件,控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,模块控制器部件,设备,和/或可以在包括存储在PLC104中的参考和/或名称的自动环境内使用的任何适当的实体的其中至少一个相关联。此外,访问部件102在运行期间可以提供对名称和各自数据空间的可编程访问。换句话说,访问部件102可以基于涉及这种空间和数据的名称,允许再使用数据空间(例如关联数据),其中所述再使用可以自动地修改为不同的名称但利用数据空间的核心功能。此外,访问部件102可以允许名称/数据空间/功能的继承,增强封装,并显著地改善生产力来访问数据部分和再使用这种数据。应当注意,PLC可以是自包含硬件的专用装置,或在“软PLC”的情况下是运行在计算机上并提供类似PLC控制的一个软件。例如在软PLC的情况下,软PLC提取代码来直接访问项目数据库以便提取名称信息。
通过接口106接收的数据可以涉及由PLC104和/或自动化环境使用的任何数据。相对于PLC 104,数据可采取表示开启或关闭状态的单个位的形式、以整数和/或浮点数形式的数值的形式、作为独立符号存储的文本串的形式(例如有ASCII码表示的等等)。访问部件102可以接收这种数据并允许任何名称的暴露(以及对应数据空间)来基于这种接收的数据允许在自动环境和/或数据空间内的再使用。与PLC104相关联的数据可以构造成为部件和/或部分,其中每个分区和/或区段可以包括一个名称。访问部件102允许在数据空间(由名称标注的)内的一部分数据在不同的数据空间里以不同的名称使用,但仍保留这种数据的核心功能。例如,与喷雾装置1相关的代码可以由车间里的切除设备10使用,相差只不过是由特定的喷雾装置(例如喷雾装置2,喷雾装置3等等)参考。每个喷雾装置可以利用相同代码和/或数据来运行这种具有PLC的设备,然而由于除复制诸如例程代码片段和重命名所述例程以外,所述代码的内容还将需要改良来关联数据到每个特定的喷雾装置实例,因此编程这个设备是精确并可重复的。但是,访问部件102可以允许与喷雾装置1相关的数据/代码自动地为其它喷雾装置执行。在一个例子中,这种自动设备可以通过从控制器的存储器提取名称并将所述名称放置到可以操作的数据区域并且扩展来创建特定的数据串实例。因此,通过允许与喷雾装置1相关的代码/数据被所有喷雾装置再使用,同时自动地更新名称(例如,用适当的喷雾装置名称来更换喷雾装置1)并继承任何其它涉及此外的数据,极大地简化了对喷雾装置的编程。
例如,指令可以是现有指令或是作为控制器项目一部分的新指令,并且是由PLC在运行期间扫描到来请求访问部件102提供取自于PLC104的名称。换句话说,已收到的请求和/或数据可以影响在PLC104里使用的名称来使拟定程序和数据可以再使用。因此,控制器部件的名称可以由PLC104用作应用数据来作为控制决策的基础,和/或创建/增加可以发送给另一个系统部件/设备(例如,用于在未示出的人机接口(HMI)上显示)的数据(例如,ASCII文本串数据)。与ASCII文本串数据相关联的实例的益处在于与这些名称相关联的文本可以在不需要非得人工地键入和/或再编码代码和/或应用程序的情况下再使用。因此,访问部件102通过与利用名称和各自与PLC104相关联的数据空间结合,提供效率和增强的编程。
访问部件102进一步提供名称来与自动设备、用户、应用程序和/或一部分代码相关。所述名称和各自的数据空间可以,例如,被操作来用不同的名称(最新建立的)更换所述名称(预先存在系统100内)然而仍包括与所述数据空间相关联的数据和功能,其允许这种不同的名称、数据空间、和各自的数据能由自动设备、应用程序、用户、系统和/或整个系统100再使用。此外,系统100可以减少人工地从项目文件、应用程序、例程、任务、程序等等提取名称或创建工具来处理输出的名称文件和/或参照文件的需要。系统100允许其它设备利用最小努力来对在运行期间直接来自PLC104的所需信息执行可编程访问(例如,允许程序和/或部分代码访问这种名称和各自的数据空间)。另外,当代码被再使用之时,名称和各自的数据空间可以自动地从程序结构继承所述名称(和功能)而不必非得执行如上所述的搜索和替换操作。
将理解的是,所述设备(也称为自动化设备)可以是,但不局限于,人机接口(HMI),计算机,不同的控制器,卷轴,站点,焊接器,扫描器,带式运输机,推动器,泵,压力机,风扇,镜头,等等,或在自动化系统里使用的任何其它适当设备。此外,所述自动化设备可以由PLC 104控制。将理解的是,PLC104可以包含具有能在关于自动操作工业制造设备/处理方面使用的输入端和/或输出端的软件组件和硬件部件。另外,应该理解的是,访问部件102能增强多个PLC的可程控性,并且为了使整个本发明简洁,只描述了一个PLC104,但所要求保护的主题并不限制于此。
此外,PLC104可以包括能存储与任何适当实体相关的名称的内部数据存储器108,所述实体可以在自动化环境内使用,诸如是,但不局限于,任务(例如可执行片段等等),程序(例如,代码箱等等),例程(例如代码块等等),控制器,部件,控制器使用的代码部分,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动器,趋势,结构,标签,对象和模块控制器部件。
所述数据存储器108可以例如是易失性存储器或非易失性存储器之一,或者可以包括易失的和非易失性存储器两个为了例证说明,而不是限制,非易失性存储器可以包括只读存储器(ROM),可编程ROM(PROM),,电可编程序ROM(EPROM),电可擦可编程序ROM(EEPROM),或闪存。易失性存储器可以包括随机存取存储器(RAM),其充当外部高速缓冲存储器。为了例证说明而非限制,RAM可以许多形式实现,诸如静态RAM(SRAM),动态RAM(DRAM),同步DRAM(SDRAM),双倍速率SDRAM(DDR SDRAM),增强的SDRAM(ESDRAM),同步链接DRAM(SLDRAM),存储器总线式直接RAM(RDRAM),直接存储器总线式动态RAM(DRDRAM)和存储器总线式动态RAM(RDRAM)。本发明系统和方法的数据存储器108意在包括,但不局限于此,这些和任何其它合适的内存型式。另外,将理解的是,所述数据存储器108可以是服务器,数据库,硬盘驱动器等等。
此外,系统100可以包括任何合适的和/或必需的接口部件106,其提供不同的适配器,连接器,信道,通信通路等等来虚拟地将所述访问部件102集成到任何操作和/或数据库系统。另外,接口部件106可以提供不同的适配器,连接器,信道,通信通路等等,其提供与所述访问部件102的交互。
图2举例说明了在运行期间易于使用对PLC的可编程访问的系统200的框图。所述系统200可以包括具有可以提供对名称和各自数据空间的可编程访问的合并访问部件202的PLC 204。所述PLC 204还可以包括多个数据存储器,其中第一数据存储器208可以存储硬件配置(例如,也称为硬件数据存储器),第二数据存储器210可以提供名称存储器(例如,也称为名称数据存储器),以及第三数据存储器212可以提供数据存储器。项目文件214可以包括,但不局限于,硬件配置,应用程序代码,数据值,名称,文档等等。所述名称,代码,以及数据都由能被载入PLC 204的项目文件214产生。将理解的是,编程软件216能利用所述项目文件214和/或所述PLC 204的至少一个。此外,在PLC 204里的代码能利用访问部件202来读取所述名称并将它装入到提供数据存储的数据存储器212中。换句话说,访问部件202能在运行期间提供对名称数据存储器210的可编程访问。一旦名称被存储在数据存储器212里,那么它们就能被应用程序代码206用来基于至少一个控制决策、创建消息文本字符串、由HMI读取以便可以在显示器上使用等等。
图3举例说明了系统300,其易于可编程控制地访问在可编程逻辑控制器内的名称来执行与整个环境关联的数据。所述系统300包括访问部件302,其能在运行期间提供对在PLC304内的名称和数据空间308的可编程访问。所述访问部件302可以在运行期间通过接口106接收数据,由此可以基于所述接收的数据,为不同数据部分(具有不同的参考名称)编程控制地访问和使用名称和数据空间308。相对于PLC304,数据可以采取以下形式:表示开启或断开状态的单个位、以整数和/或浮点数形式的数值、存为单个字符的文本串(例如由ASCII码等表示的)。所述名称和数据空间308是任何具有由PLC 304、自动化环境等等使用的名称的实体。例如,所述名称和数据空间308可以与以下有关:任务(例如,可执行片段等等),程序(例如代码箱等等),例程(例如代码块),控制器,部件,由控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象和模块控制器部件。将理解的是,图3的访问部件302和PLC 304基本上类似于图1描述的访问部件102和PLC104。
在一个实例里,数据空间可以提供与在人机接口(HMI)里的文本串相关联的功能,其中所述名称(例如推动器设备1)与一个设备(例如推动器1)相关。在自动化环境内,可以存在任何合适数量的推动器设备。对于每个推动器设备,将通常包括用于HMI的许多文本串来显示信息,除信息涉及特定推动器设备之外,其中每个信息可以是基本上类似。因此,对于在推动器设备1上的“阻塞故障”,信息可以表示为“阻塞故障在推动器1上”。在这样的条件下,可以为所有的推动器设备显示该信息。通常,编程HMI里的这种文本串是非常繁琐和冗长的任务,其包括许多的复制、粘贴、搜索和更换。然而,访问部件302允许与推动器设备1相关联的数据空间被可编程控制地访问,并通过将名称推动器设备1替换为期望的不同名称(例如,推动器设备2,推动器设备3,推动器设备4等等),可以自动地执行与之关联的数据。换句话说,访问部件302可以提供对在PLC 304内的名称的可编程访问,其中所述访问呈现与之关联的名称和数据空间以允许在所述数据空间内的数据可以由具有不同名称的设备使用,而同时保留这种数据空间和数据的功能。
对于PLC304内的第一实体可以存在名称和数据空间308。然而,用户可以通过再使用来自第一实体的所述名称和数据空间308(不存在PLC304内)来编程第二实体的不同部分的数据。因此,用户可以在运行期间利用访问部件302来进行对名称和数据空间308的可编程访问,以允许以基本上类似的方式(除了具有不同的名称和各自的数据空间之外)为第二实体执行与第一实体相关联的这种数据。换句话说,在运行期间,在PLC 304内的名称和数据空间308的可编程访问可以在没有诸如复制、粘贴、搜索、更换等等重复代码技术的情况下,允许为特定的实体自动地修整数据部分并执行提供的功能。
基于由访问部件302提供的这种可编程访问,PLC 304和与之相关的设备306可以使用所述名称和数据空间308。将理解的是,所述设备306(也称为自动化设备)可以是,但不局限于是,人机接口(HMI),计算机,不同的控制器,卷轴,站点,焊接处,扫描器,带式运输机,泵,压力机,风扇,镜头,等等,或在自动化系统里使用的任何其它适当设备。换句话说,名称和数据空间308可以存储在PLC 304内,由访问部件302接收到的数据进行访问,在运行时再使用和执行,以及由PLC 304和/或设备306使用。
图4举例说明了易于为在工业控制环境内使用的特定名称提供继承的系统400。系统400可以包括在PLC 404内的内部访问部件402,其易于对在内存储的名称和各自数据空间的可编程访问性。所述访问部件402可以接收来自用户408的请求来检索在所述PLC 404内存储的名称和各自数据空间。基于与之关联的基本上类似的数据部分,可以复制这些检索到的名称和数据空间以简化在工业自动化环境内的编程。所述复制所得数据还可以继承与所述名称和各自空间相关联的特征。所述复制所得数据由用户定义的名称(不同于所述检索的名称)标记。因此,用户可以想要基于控制这种设备的数据部分(其中所述数据部分可以叫做“卷轴1”),编程四个卷轴设备(叫做卷轴1,卷轴2,卷轴3和卷轴4)。用户可以检索与“卷轴1”相关的数据,并通过在运行时利用“卷轴1”数据,而在全部使用的数据部分里,自动地用各自的名称“卷轴2”,“卷轴3”,“卷轴4”来替换该名称以复制这种数据来编程不同的卷轴。通过允许在运行时在PLC 404内的可编程访问,可以基于该再使用和自动公开/替换相应名称来优化对利用基本上类似的数据的系统400内多个实体的编程。
在另一个实例里,用户可以在运行时利用任何合适的请求和/或指令,诸如但不局限于“Get System Value”(GSV)或新的指令。在接收这种指令时,访问部件402可以检索名称并将它复制到用户创建的诸如字符串标签的变量中。一旦数据在字符串标签里可用,就可以使用存在的串操作指令来合并名称字符串和不同的字符来提供可以与应用程序406通信的有意义的消息。同样地,外部设备(未示出)可以,直接从PLC 404读取名称字符串为己所用。
例如,用户408可以处理请求来提供与PLC 404、程序文件、项目文件、应用程序、项目结构组织等等相关的各种名称。一旦用户408收到这种数据,它可以被再使用以创建应用程序代码(称为再使用应用程序代码410)。当用具体例子说明的时候,用户408可以给这个应用程序代码分配参考名称。该应用程序内的代码可以在独立的数据空间内参考数据。这个数据可以包含在最初创建代码时创建的数据报文字符串。通过上述指令,所述代码可以在运行期间影响访问部件402以用于自动地更改数据报文字符串来包括由用户408分配的名称。结果就是所述代码可以在不必人工地将名称再输入到数据变量中的情况下利用所述新名称。因此,通过影响用来定义由PLC404使用的项目结构的名称,系统400大大地提高了涉及PLC 404的编程效率,通常,开发可编程序控制器应用程序代码的用户无法影响在PLC 404内的这种数据(例如项目结构,变量名称,用户定义的变量,变量标记等等)以便可以在应用程序的其他部分里使用。
具体来讲,具有可编程控制地访问涉及与工业环境和/或PLC 404(例如,任务,程序,例程,控制器,部件,由控制器使用的代码部分,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,模块控制器部件等等)相关联的任何实体的名称的能力对于产生能传送到外部设备的文本字符串是有益的。此外,系统400通过再输入名称到字符串标签中,从而不需要用户408来创建代码部分。而且,可以将名称存储在PLC 404里,然后提供在运行所述项目的时候能够提取这些字符串的指令,应用程序406能够直接影响所述名称并避免这个再输入。此外,因为复制和再命名代码的时候,基于所述分配的新建名称,所述新的复制可以自动地继承名称,因此这一点提供了改善的对应用程序代码的再使用。这一点还可以避免双重输入以及如果第二输入错误时将产生的问题。
图5举例说明了易于脚本化包括人机接口(HMI)将要使用的名称的消息的系统500。系统500可以包括合并在PLC 504内部的访问部件502,其中可以提供对名称的可编程访问,其允许涉及该名称的数据可以在应用程序、代码、任务、程序、例程、部件、PLC504使用的实体、在工业自动化环境内使用的实体里再次使用。所述访问部件502可以经由接口106接收请求和/或指令,其中所述请求和/或指令可以是在运行时刻引发的,以检索名称并将它复制到用户定义的变量中。例如,用户定义的变量是字符串标签。一旦数据在字符串标签里可用,就可以使用存在的串操作指令来合并名称字符串和其它特征来提供可以传送到其它设备的有意义的消息。另外,外部设备可以直接从PLC 504读取名称字符串为己所用。
访问部件502包括链接部件506。系统500允许通过利用通用“This”分类符指定当前上下文关系的能力,其使得指令为执行所述指令的任务、程序或例程捕获名称和/或参考。通过请求对象类型和/或将要涉及的控制器元件,并让链接部件506基于控制器的代码中的请求位置返回取自于项目结构组织的名称,而允许对期望名称的间接关联。这一点允许创建遗传代码,其缺乏特定名称和/或从特定机器和/或应用程序的代码的使用中提取的。此外,因为链接部件506可以将指令链接到隐藏的标识符,其中即使正在检索的实体的名称发生了变化,所述指令也能够确保链接到所述名称,因此该链接部件506可以利用具体命名的实体。就变量或标签而论,可以指定标签的具体名称,并像程序结构实体一样,以无论名称本身如何变化而能够确保链接的方式将指令链接到标签。将理解的是,链接部件506可以是单机部件、合并到访问部件502里、合并到PLC 504里、和/或在其中的任何组合。
访问部件502包括脚本部件508,其可以提供与由例如人机接口510(HMI)使用的名称相关联的消息正文。换句话说,为了优化开发并保留在PLC 504以及HMI 510上的至少一个字符之间的紧密链接,访问部件502可以提取在PLC
504里使用的名称,其中脚本部件508使用这种名称来构造消息正文。具体来讲,HMI510接收名称和各自数据空间,其中PLC 504可以获得名称并自动地生成名称消息。脚本部件508利用与在环境(例如,任务,程序,例程,控制器,部件,由控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象和模块控制器部件等等)内的任何实体相关联的名称,可以给HMI 510提供任可合适的消息,因此所述消息可以为该HMI 510提供文本和/或字符。将理解的是,脚本部件508可以是单机部件、合并到访问部件502里、合并到PLC 504里、和/或在其中的任何可组合。
接下来是可以由本发明执行的实例,但它并不限于如权利要求所述的主题的能力。公司可以利用系统500来自动操作一些开发过程。所述公司可以在PLC
504里创建项目,其中任务、程序、例程、和附加指令(AOI)的名称可以是基于各自物理设备来仔细选择的。这可以确保项目名称及描述和在设备本身上可以找到的标签之间的紧密链接。例如,对于支架焊接站可以存在设备名为“RD1_BRK_WLD1”的设备。这个名称和/或参考可以是在程序名称里使用的相同名称和/或参考。公司此外可以让“RD1_C5”作为夹钳的名称,并且作为例程的名称或此外对于Add-On指令(AOI)作为实例标签的名称。最后,这里有一个叫做“CLS_FLT”的警报标签。此外,可以有附加信息,诸如在输入/输出(I/O)点标签上使用的名称为限位开关(“RD1_C5_L1”)和阀门(“RD1_C5_V1”)的附加信息。
为优化开发并保留在PLC 504(包括各自项目)以及HMI屏幕文字之间的紧密链接,公司可以提取在PLC 504里使用的名称,其中脚本部件508可以利用它们来构造消息正文。通常,公司不得不创建从在输出的项目内的各种对象对设备提取消息正文格式和设备名称的专用工具。为找到它们,公司可以在环形注释里创建一种脚本,环形注释用于告诉工具如何产生HMI消息。下列是与脚本可以看见的内容相关联的伪码:
<@%0Clamp%1Not Closed%2%3>
在上述伪码中,所述号码可以翻译成如下:
%0=机器码,其是环形注释所在的程序
%1=夹钳名称,其是环形注释文本所在例程
%2=开关名称,其是传递到所述例程中的标签的名称
%3=阀门输出端,其是传递到例程中或从例程中传出的标签的名称
基于上述,所得消息将翻译成如下:“RD1BRK WLD1Clamp RD1C5NotClosed RD1C5L1RD1C5V1”。通常,在创建项目代码的时候,创建所述程序的用户不得不输入这些名称。然后,他们必须进入代码中,为警报故障定位环形注释,然后再次输入所述名称。将名称嵌入到环形注释的可选方式将是创建数据文本串变量,在其中来人工地输入适当的名称。然后在运行时刻可以访问文本变量数据来生成HMI消息字符串。然而,在两种情况里,用户不得不设计名称两次,这些操作是非常容易出错的,其意味着,在启动期间,他们必须相对于代码审查和确认每一个消息来确保正确的文本显示在HMI 510上。
然而,系统500通过允许在PLC 504内的名称能可编程控制地访问因此缓解了上述问题。因此,可以自动地集成和/或合并新创建的名称(用户定义的)和与最初的名称(例如信号源)相关联的现有数据。换句话说,通过以基本上类似的方式执行数据,用户可以执行与名称相关联的数据作为将被复制(例如再使用、复制等等)到目的地的源数据,但用用户定义的名称来替换最初的名称(例如信号源)(例如所述目的地是用户定义的名称不存在和/或编程的)。
图6举例说明了通过使用对在可编程逻辑控制器内的名称的可编程访问,易于在工业自动化环境内的编程的系统600。此外,系统600可以包括能在运行时刻允许对在PLC 604内的至少一个名称和各自数据空间的可编程访问的访问部件602,其中所述名称可以与下列有关:任务(例如可执行片段等等),程序(例如,代码箱等等),例程(例如代码块等等),控制器,部件,控制器使用的代码部分,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象和模块控制器部件。例如,访问部件602可以接收标识特定的名称和数据空间作为目标的数据,其中访问部件602可以为目标(例如用户定义的变量)复制由所述目标确定的数据。将理解的是,访问部件602和PLC604基本上分别类似于在如上所述的图4、图3、图2、图1里的访问部件402、302、202、和102以及PLC404、304、204和104。
访问部件602可以利用追踪在PLC 604内的变量名称的记录部件606。将理解的是,记录部件606可以是单机部件、合并到访问部件602里、合并到PLC604里、和/或在其中的任何组合。例如,如果用户A使用访问部件602来调查变量名称,那么记录部件606可以追踪用户(例如经由IP地址、网络地址、用户名、计算机名等等)的日期与时间、以及访问的变量名称。记录部件606可以记录涉及接收名称的各个方面,诸如但不局限于,名称变化,名称更新,任务(例如,可执行片段等等),程序(例如代码箱等等),例程(例如代码块等等),控制器,部件,由控制器使用的代码部分,模块,I/O模块,网络,驱动,运动坐标轴系,驱动器,趋势,结构,标签,对象,模块控制器部件,项目文件,编辑名称,配置设定,安全设置,时间戳,日期,用户名和/或计算机名等等。此外,所述记录部件606可以存储器在数据存储器(未示出)里输入日志。
访问部件602此外可以执行搜索部件608,其简化与系统600相关联的任何数据的查询。相对于代码,名称,变量,设备,标记,用户定义的变量,代码部分,数据部分,与自动化环境相关联的实体,与PLC 604相关联的实体,任务,例程,程序,项目文件,标签,等等,搜索部件608允许用户和/或任何部件来查询系统600。例如,用户可以利用搜索部件608查询系统600来查找设备和/或与由在Localville Ohio车间内的特定PLC使用的传送器相关联的数据。在另一个实例里,搜索部件608可以允许开发人员提供与在部门5、舱室6内设备相关联的所有名称,并由控制器A控制。将理解的是,搜索部件608可以执行多种搜索和/或查询,上述实例不是如权利要求所述的主题的限制。此外,将理解的是,这里将搜索部件608描述成单机部件,但所述搜索部件608可以合并到访问部件602里,合并到PLC604里,单机部件,和/或在其中的任何组合。
所述访问部件602此外可以利用安全部件610,其为系统600提供保护来确保数据完整性和/或访问。特别的是,安全部件610可以根据预定等级制度,安全级别,用户名,密码,访问权限,数据重要性(例如,更重要的数据设计更高的安全级别)来定义安全,授权,和/或特权。例如,利用不同的安全授权和/或特权,特定的名称可以是第一安全级别,同时利用不同的安全授权和/或特权,不同的名称可以具有第二安全级别。因此,相对于名称,一组名称,名称位置,名称重要性,实体关系,任务关系,程序关系,例程关系,设备关系,项目文件关系,在项目结构内的数据关系等等,安全部件610可以提供粒状安全。将理解的是,利用与每个级相关联的特征,这里存在多级安全,并且本发明不局限于上述实例。此外,安全部件610为系统600提供粒状安全和/或特权。将理解的是,安全部件610可以是单机部件、合并到访问部件610里、合并到PLC604里、和/或在其中的任何组合。
访问部件602还包括桥接部件612,其简化在工业自动化环境内的网络。换句话说,桥接部件612可以充当网络桥接器。将理解的是,桥接部件612可以是单机部件、合并到访问部件602里、合并到PLC 604里、和/或在其中的任何组合。因此,由于可以操作由不同的网络运输的数据从而适用于公用网络。因此,桥接部件612可以识别与接收的涉及PLC 604的指令相关联的网络协议,并执行操作来转换这种数据以便它适用于预定义的协议。依据这种变换,可以使用映射来转换所述数据以便它适用于分级地结构化数据模型(而不是与单调的域名空间相关联的数据模型)。此后所述映射可以经由网络为这种数据的请求者提供分级地结构化数据,其中所述网络适用于预定义协议。例如第一网络协议可以是Fieldbus,Profibus,Hart,Modbus,ASI-bus和Foundation Fieldbus的至少一个,同时第二网络协议可以是通用工业的协议(CIP)。
图7举例说明了使用智能来简化对可编程逻辑控制器内的名称的可编程控制地访问的系统700。系统700包括访问部件702,PLC 704,和接口106,其所有基本上类似于在先前图里描述的各自部件、控制器、接口。所述系统700还包括一个智能部件706。访问部件702可以使用智能部件706来简化在PLC704内的名称和各自数据空间的可编程控制地访问。例如,智能部件706可以推断实体关系,任务关系,程序关系,例程关系,设备关系,项目文件关系,在项目结构内的数据关系,标签关联,到HMI的消息正文,脚本,合并数据为设备提供有意义的消息,名称,用户定义的名称,在标识符和指令之间的链接,名称变化等等。
此外,智能部件706可以帮助操作者角色和/或位置利用材料的消耗和这种材料的状态。例如,智能部件706可以推断在特定的工业自动化处理和/或系统的生产里使用的原材料的消耗。这种推断可以是至少部分地基于涉及材料消耗量、材料的状态和/或提供等等的历史数据。此外,可以将这种材料的消耗和状态传递给操作者和/或操作者的角色。
应该理解的是,智能部件706可以提供系统、环境的原因或推断状态,和/或来自一组作为经由事件和/或数据获取的观察结果的用户。可以使用推断来确定具体背景或动作,例如,或可以生成关于状态的概率分布。所述推断可以是概率,也就是基于数据和事件的考虑,关于感兴趣的状态的概率分布的计算。推断还可以指的是为根据一组事件和/或数据组成高级事件所使用的技术。这种推断根据一组看到的事件和/或存储的事件数据产生新事件或动作的结构,不管所述事件是否是和接近瞬间的接近相关,不管所述事件和数据是否来自一个或多个事件和数据源。各种分类(明确地和/或暗中地训练)方案和/或系统(例如支持向量机,神经网络,专家系统,贝叶斯信念网络,模糊逻辑,数据合成引擎等等)可以结合执行自动化使用和/或结合如权利要求所述的主题推断动作。
归类器是这样一种函数,用于将输入属性向量x=(x1,x2,x3,x4,x4,xn)映射至一可靠程度(confidence),其中所述输入属于一类(class)——也就是f(x)=confidence(class)。这种分类可以使用概率和/或基于统计的分析(例如因式分解到分析实用和成本)来预测或推断用户希望将自动地执行的动作。支持向量机(SVM)是可以使用的归类器的实例。所述SVM运行来在可能输入的空间里查找多维曲面,其多维曲面试图从非触发事件里分解处所述触发标准。直观地,这使得对测验资料分类正确,也就是接近但不和训练数据一致。其它可以使用的直接和非直接的分类方法包括,例如naive Bayes,Bayesian networks(贝叶斯网络),decision trees(决策树),neural networks,fuzzy logic models(模糊逻辑模型),和提供独立的不同图案的概率分类模式。此处使用的文本归类也涉及统计回归,用于开发优先级模型。
显示部件708可以提供各种类型的用户接口以进行在用户和连接到所述访问部件702的任何部件之间的交互。如上所述,显示部件708是可以由访问部件702使用的独立实体。然而,将理解的是,显示部件708和/或类似的视图部件可以合并到访问部件702和/或单机部件里。显示部件708可以提供一个或多个图形用户界面(GUI),命令总线接口等等。例如,可以实施GUI来向用户区域或装置来加载数据,输入数据,读取数据等等,并且可以包括区域来提供这种结果。这些区域可以包括已知的文本和/或图形区域,其包括对话框,静态控制,下拉菜单,列表框,弹出菜单,编辑控制,组合框,单选按钮,复选框,推进按钮,和图形框。另外,可以使用易于表示的工具,诸如用于导航的垂直和/或水平滚动条和工具条按钮来确定区域是否可视。例如,用户可以与一个或多个连接到所述访问部件702的部件交互。
用户还可以与所述区域交互来经由各种设备(诸如鼠标,滚动球,小键盘,键盘,笔和/或语音接通)选择并提供信息。通常,可以在输入信息之后使用键盘上的诸如按钮或者回车键之类的装置来启动查询。然而,将理解的是,所要求保护的主题并不限制于此。例如,仅仅高亮度显示复选框就可以开始信息传递。在另一个实例里,可以使用命令总线接口。例如,命令总线接口可以通过提供文本消息来给用户提示信息(例如,经由在显示器上的文本消息和音频声调)。用户然后可以提供合适的信息,诸如对应于在接口提示中提供的选项的字母数字输入或提示中提出的问题的答案。将理解的是,所述命令总线接口可以结合GUI和/或API使用。另外,命令总线接口利用有限的图形支持和/或低带宽通信信道,可以结合硬件(例如视频卡)和/或显示器(例如,黑白电视和增强型图形适配器)使用。
参见图8-9,举例说明了根据所要求保护的主题的各方面的方法。同时,为了简明说明起见,所述方法被显示和描述为一系列动作,应该理解的是,所要求保护的主题并不限制动作的顺序,因为一些动作可能以不同的顺序出现,和/或与这里描述及示出的动作同时出现。例如,本领域技术人员可以理解,作为选择所述方法可以表示为一系列互相联系的状态或事件,诸如在状态图里示出的。此外,根据所要求保护的主题,并不需要所有示出的动作来实现方法。此外,还可以理解,以下和整个说明书公开的方法能够存储在制造产品上以易于将这些方法传送和转移到计算机。正如本文所使用的那样,术语“制造产品”意在包括可从任何计算机可读设备、载体或介质访问的计算机程序。
具体回到图8,举例说明了用于优化与在可编程逻辑控制器内的名称相关联的编程能力的方法800。在参考标记802,可以接收关联到信号源名称的数据。所述名称可以与以下至少一个相关联:任务(例如可执行片断等),程序(例如代码的地址等等),例程(例如代码块等等),控制器,部件,控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,模块控制器部件,设备,和/或可以在包括存储在PLC 104的标记和/或名称的自动环境内使用的任何适当的实体。此外,可以由用户指定的信号源将是可以复制来用于项目结构内以不同名称实现的数据。
在参考标记804,可以提供在运行期间对控制器和/或可编程逻辑控制器(PLC)内信号源名称和各自数据空间的可编程访问。在运行期间对名称和各自数据空间(信号源)的可编程访问基于表示这些空间和数据的名称允许再使用数据空间(例如和相关数据),其中所述再使用可以自动地修改为不同的名称(目标)但使用所述数据空间的核心功能。此外,所述可编程控制地访问可以允许名称/数据空间/功能的继承,增强封装,以及可以显著地提高生产力来在与自动化环境和/或PLC相关联的项目结构内创建数据部分并再使用这种数据。
将理解的是,接收的数据可以影响定义在PLC内、用于依据不同的数据部分和/或项目结构的设备实施的部分项目结构的名称。因此,可以复制在PLC内的名称和各自数据空间(以及相关数据),并在没有再输入或手工介入的情况下利用适当的命名规则执行整个运行。换句话说,可编程控制访问涉及在自动化环境和/或PLC内的任何合适实体的名称的能力在创建与这种自动化环境相关联的数据部分(例如与HMI一起使用的文本字符串等等)时是有益的。
因此,用户希望可以基于控制这种设备的数据部分编程三个传送器设备(叫做传送器1,传送器2,和传送器3),其中这种用于传送器1的数据部分叫做“传送器1”。用户可以检索涉及“传送器1”的数据(例如也称为信号源),并通过在运行时使用“传送器1”数据但自动地在所使用的全部数据部分将该名称(例如信号源名称)更换为各自名称“传送器2”、“传送器3”来复制这种数据以编程不同的卷轴。通过允许在运行时可编程访问控制器和/或PLC,可以基于这些再使用和适当名称的自动公开/替换来优化在工业自动化环境内使用基本上类似数据的多个实体的编程。
图9举例说明了方法900,其易于可编程控制地访问在可编程逻辑控制器内的名称以执行与整个环境关联的数据。在参考标记902,接收标识信号源的数据。所述信号源与名称相关,其中所述名称可以与以下其中至少一个相关:任务(例如可执行片断等),程序(例如代码箱等等),例程(例如代码块等等),控制器,部件,控制器使用的部分代码,模块,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,模块控制器部件,设备,和/或可以在包括存储在PLC104的标记和/或名称的自动环境内使用的任何适当的实体。接收的数据可以标识信号源,其中所述信号源可以是将被复制和/或在项目结构内再使用的数据部分。在一个例子中,用户可以使用通用分类符诸如“This”函数,其可以检索涉及项目结构的数据部分,其中这种数据部分可以是将被复制和/或重复的信号源。
在参考标记904,可以提供在运行期间对PLC内的信号源名称(和包括与之相关的数据的各自数据空间)的可编程访问。使用这种运行时的可编程访问,可以复制并利用所述信号源名称和各自数据空间来给项目结构的部件提供功能,其中所述信号源名称可以自动地更新。在参考标记906,将信号源名称和相应数据复制到目的地。例如,用于传送器1的数据的现有传送器控制部件可以是信号源,同时用户利用这种用户定义的名称可以创建传送器2、传送器3等等作为目标。在参考标记908,可以复制信号源的功能到目标同时利用目标名称更换所述信号源名称。因此,可以复制在整个涉及传送器1和这种数据空间的数据部分中的涉及传送器1的数据部分并替换为目标名称(传送器2,传送器3等等)。
为了提供用于实现所要求保护的主题的各方面的其他背景,图10-11及其后论述意在提供在其中可以实现本发明的各方面的合适计算环境的简短概述。其中虽然所要求保护的主题已经以计算机程序的计算机可执行指令的背景描述了本发明,其中所述计算机程序是在本地计算机和/或远程计算机上运行的,但是本领域技术人员将理解的是,所要求保护的主题还可以结合其他程序模块来实现。通常,程序模块包括例行程序、程序、部件、数据结构等等,其用于执行特殊的任务和/或实现特殊的抽象数据类型。
此外,本领域技术人员将理解的是,本发明的方法可以采用其他计算机系统结构来实施,其包括单处理器或者多处理器计算机系统、小型计算机、大型计算机以及个人计算机、手持计算装置、基于微处理器和/或者可编程电器等等,其中的每个都可以可操作地与一个或多个关联设备通信。举例说明的所要求保护的主题的各个方面也可以在分布计算环境中实施,其中通过远程处理设备来执行特定任务,其中所述远程处理设备经由通信网络进行链接。然而,不是本发明的所有方面都在独立计算机上实施,有一些不是。在分布式计算环境里,程序模块可以位于本地和/或远程存储器存储设备上。
图10是可以结合所要求保护的主题使用的示例计算机环境1000的示意性框图。所述系统1000包括一个或多个客户端1010。客户端1010可以是硬件和/或软件(例如,线程、进程、处理设备)。所述系统1000还包括一个或多个服务器1020。所述服务器1020可以是硬件和/或软件(例如线程,处理,计算设备)。例如,服务器1020可以装载线程来执行由本发明使用的变换。
在客户端1010和服务器1020之间的一个可能的通信可以是以适用于在两个或更多计算机处理之间传输的数据包的形式。系统1000包括通信框架1040,其可以用来易于在客户端1010和服务器1020之间的通信。客户端1010可操作地连接至一个或多个客户端数据存储器1050,其可以用来存储本地信息到客户端1010。同样地,服务器1020可操作地连接至一个或多个服务器数据存储器1030,其用来存储本地信息到服务器1020。
参照图11,用于实现所要求保护的主题的各方面的示例性环境1100包括计算机1112。计算机1112包括处理部件1114,系统存储器1116和系统总线1118。所述系统总线1118连接,包括但不限于,系统存储器1116的系统部件到处理部件1114。处理部件1114可以是任何可利用的处理器。也可以使用双重微处理器以及其它多处理机系统结构作为处理部件1114。
所述系统总线1118可以是几种类型总线结构的任何一个,所述结构包括存储器总线或存储器控制器,外围总线或外部总线,和/或使用任何可利用的总线体系结构的本地总线,包括但不限于,工业标准结构(ISA),微型通道结构(MSA),延长ISA(EISA),集成电路设备(IDE),VESA本地总线(VLB),外围部件互联(PCI),插件总线,通用串行总线(USB),加速图形接口(AGP),个人计算机存储卡国际协会总线(PCMCIA),Firewire(IEEE 1394),和小型计算机系统接口(SCSI)。
系统存储器1116包括易失性存储器1120和非易失性存储器1122。基本输入/输出系统(BIOS),包含基本例程来在计算机1112内部的元件之间转送信息,诸如在起动期间,其存储在非易失性存储器1122。为了例证说明,而不是限制,非易失性存储器1122可以包括,只读存储器(ROM),可编程ROM(PROM),电可编程序ROM(EPROM),电可擦可编程序只读存储器(EEPROM),或闪存。易失性存储器1120包括随机存取存储器(RAM),其充当外部高速缓冲存储器。为了例证说明而非限制,RAM可以许多形式实现,诸如静态RAM(SRAM),动态RAM(DRAM),同步DRAM(SDRAM),双倍数据速率SDRAM(DDR SDRAM),增强的SDRAM(ESDRAM),同步信号链接DRAM(SLDRAM),存储器总线式直接RAM(RDRAM),直接存储器总线式动态RAM(DRDRAM)和存储器总线式动态RAM(RDRAM)。
计算机1112还包括可移除的/不可移除的、易失的/非易失的计算机存储介质。例如图11举例说明了一个盘式存储器1124。盘式存储器1124包括,但不局限于,像磁盘驱动,软盘驱动,磁带驱动,Jaz驱动,压缩驱动,LS-100驱动,闪存卡或记忆棒。此外,盘式存储器1124可以包括独立地或与其它存储介质结合的存储介质,包括但不限于,诸如光盘ROM设备(CD-ROM)的光盘驱动器,CD可记录驱动(CD-R驱动器),CD可重写驱动器(CD-RW驱动器)或数字通用盘ROM驱动器(DVD-ROM)。为易于连接磁盘存储装置1124到系统总线1118,通常使用诸如接口1126的可移动或非移动的接口。
将理解的是,图11描述了软件充当在用户和在合适的操作环境1100里描述的基本计算机资源之间的中介物。这种软件包括操作系统1128。操作系统1128可以存储在盘式存储器1124上,控制和分配计算机系统1112的资源。系统应用程序1130由操作系统1128通过存储在系统存储器1116或在盘式存储器1124上的程序模块1132和程序数据1134来利用资源管理。将理解的是,所要求保护的主题可以利用各种操作系统或操作系统的组合来实现。
用户通过输入设备1136输入命令或信息到计算机1112中。输入设备1136包括,但不局限于指示设备,例如鼠标,跟踪球,输入笔,触摸板,键盘,麦克风,游戏杆,游戏盘,卫星盆,扫描器,TV调谐卡,数字照相机,数字视频照相机,网络照相机等等。这些以及其它输入设备通过接口1138由系统总线1118连接到处理部件1114。接口1138包括,例如串行端口,并行端口,游戏端口,和通用串行总线(USB)。输出设备1140使用与输入设备1136相同类型的一些端口。因此,例如USB端口可用来提供输入到计算机1112,以及从计算机1112提供输出信息到输出设备1140。提供输出适配器1142来举例说明了在其它输出设备1140之中存在一些像监视器、扬声器、以及打印机一样需要专用适配器的输出设备1140。输出适配器1142包括,通过例证说明而非限制,提供在输出设备1140和系统总线1118之间的连接装置的视频以及声卡。应该注意的是,其它设备和/或系统也提供输入和输出能力,诸如远程计算机1144。
利用到诸如远程计算机1144的一个或多个远程计算机的逻辑连接,计算机1112可以在联网环境里运行。远程计算机1144可以是个人计算机,服务器,路由器,网络PC,工作站,使用微处理机的设备,对等设备或其他的公用网络节点等等,以及通常包括相对于计算机1112描述的许多或所有元件。为了简洁起见,利用远程计算机1144只举例说明了存储器设备1146。远程计算机1144通过网络接口1148逻辑连接至计算机1112,然后经由通信连接1150物理地相连。网络接口1148包括有线和/或无线通信网络,诸如局域网络(LAN)和广域网(WAN)。LAN技术包括光纤分布式数据接口(FDDI),铜导线分布式数据接口(CDDI),以太网,令牌环网(TokenRing)等等。WAN技术包括但不局限于,点到点链路,像综合服务数字网(ISDN)的电路交换网和其上的变化,分封式交换网络,和数字用户线路(DSL)。
通信连接1150指的是使用的硬件/软件来连接所述网络接口1148到总线1118。虽然为了清楚示例起见,通信连接1150示于计算机1112的内部,然而它还可以在计算机1112的外部。连接到网络接口1148所需的硬件/软件包括,只用于示例性目的,内部和外部技术诸如,包括正规的电话等级调制解调器的调制解调器,电缆调制解调器和DSL调制解调器,ISDN 适配器,和以太网卡。
上面描述的包括本发明的实例。当然,为了描述所要求保护的主题,当然不能描述每个想得到的部件或方法的组合,但本领域普通技术人员可以意识到的是,许多本发明此外的组合和交换是可能的。因此,所要求保护的主题意在包含所有落入如所附权利要求所述的精神和范围的这种改变,改良,和变化。
特别的是,按照由上述描述的部件、设备、电路、系统等等执行的各种功能,用于描述这种部件的术语(包括参考“装置”)意在对应到执行所描述的部件(例如相等的功能)的指定功能的任何部件(除非另有说明),即便在构造上不相当于所公开的结构,其执行本文举例说明的所要求保护的主题示例性方面的功能。在这方面,也将意识到的是,本发明包括系统和具有用于执行所要求保护的主题的各种方法的动作和/或事件的计算机可执行指令的计算机可读介质。
此外,虽然已经相对于多个实施例中的一个公开了本发明的特定特征,然而该由于给定或特定应用的需要和优势,该特征可以与其他实施例的一个或多个其它特征相结合。此外,就术语“包括”和用于详细的说明书或权利要求书中使用的“包括”而言,这些术语意为依照类似于术语“包括”的方式包含。
Claims (7)
1.一种用于使用在可编程逻辑控制器内的数据的系统,包括:
用于接收与名称和各自数据空间有关的数据部分的接口部件,所述名称和各自数据空间与可编程逻辑控制器相关联;以及
集成在可编程逻辑控制器(PLC)内并可通信地连接到所述接口部件的访问部件,用于在运行期间对名称和各自数据空间进行可编程访问,
其中,所述访问部件基于所接收的数据定位信号源以进行复制;所述信号源由所述名称和各自数据空间标识,并且
其中,所述访问部件提供如下的至少一个:与所述信号源相关联的数据到用户定义名称的目的地的复制;以及在与所述信号源和各自数据空间相关的整个数据里,利用用户定义的目标名称替换信号源名称的自动化替换。
2.如权利要求1所述的系统,其特征在于所述名称与以下至少一个相关联:任务,例程,控制器,控制器使用的代码部分,I/O模块,网络,驱动器,运动坐标轴系,驱动,趋势,结构,标签,对象,设备和模块控制器部件。
3.如权利要求2所述的系统,其特征在于所述名称是字符串标签,其中所述字符串标签是涉及可编程逻辑控制器的虚拟输入,物理输入,虚拟输出,和物理输出中的至少一个,以及所述字符串标签以基于ASCII的拉丁语,UNICODE格式和在亚洲语言里使用的格式中的至少一个表示。
4.如权利要求1所述的系统,其特征在于还包括链接部件,用于不顾链接到所述信号源的名称的变化,将所接收的数据链接到隐藏的标识符来允许数据保持链接到信号源,所述链接部件利用使用“This”函数的继承技术。
5.如权利要求1所述的系统,其特征在于还包括脚本部件,用于提供具有名称的消息脚本来与外部设备通信,所述外部设备是HMI,信息技术数据库,一不同的系统,以及一不同的控制器的至少一个。
6.一种用于在工业自动化环境内的编程的方法,包括:
接收与信号源名称和各自数据空间相关联的数据(802,902);
在运行期间在工业自动化环境内的可编程逻辑控制器(PLC)内提供对信号源名称和各自数据空间的可编程访问(804,904);
复制与所述信号源名称和各自数据空间相关联的数据到用户定义名称的目的地;
在整个与信号源名称和各自数据空间相关联的数据集里,用用户定义的目标名称自动地更换所述信号源名称;以及
使用从所述信号源名称和各自数据空间到用户定义的目标名称和各自数据空间的继承。
7.一种用于使用在可编程逻辑控制器内的数据的计算机实现的系统,包括:
用于接收与信号源名称和各自数据空间相关联的数据的装置;
用于在运行期间在工业自动化环境内的可编程逻辑控制器内提供对信号源名称和各自数据空间的可编程访问的装置;
用于复制与所述信号源名称和各自数据空间相关联的数据到用户定义名称的目的地的装置;
用于在整个与信号源名称和各自数据空间相关联的数据集里用用户定义的目标名称自动地更换所述信号源名称的装置;以及
用于使用从所述信号源名称和各自数据空间到用户定义的目标名称和各自数据空间的继承的装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US77872006P | 2006-03-02 | 2006-03-02 | |
US60/778,720 | 2006-03-02 | ||
US11/534,259 US7860589B2 (en) | 2006-03-02 | 2006-09-22 | Programmatic access to controller construct and variable names |
US11/534,259 | 2006-09-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101059695A CN101059695A (zh) | 2007-10-24 |
CN101059695B true CN101059695B (zh) | 2011-07-06 |
Family
ID=38158085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101035370A Expired - Fee Related CN101059695B (zh) | 2006-03-02 | 2007-03-02 | 对控制器结构和变量名称的可编程访问 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7860589B2 (zh) |
EP (1) | EP1830234B1 (zh) |
CN (1) | CN101059695B (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8489210B2 (en) | 2009-03-24 | 2013-07-16 | Rockwell Automation Technologies, Inc. | Electronic operator interface based controller and device automatic downloads |
DE112010005606T5 (de) * | 2010-05-28 | 2013-04-04 | Mitsubishi Electric Corp. | Protokoliereinrichtung, Protokoliersystem und Steuerverfahren für eine Protokoliereinrichtung |
EP2752668A3 (en) | 2010-07-23 | 2014-10-15 | Beckman Coulter, Inc. | System Or Method Of Including Analytical Units |
US8996575B2 (en) * | 2010-09-29 | 2015-03-31 | M-Files Oy | Method, an apparatus, a computer system, a security component and a computer readable medium for defining access rights in metadata-based file arrangement |
JP2012141853A (ja) * | 2011-01-04 | 2012-07-26 | Mitsubishi Electric Corp | プログラマブルコントローラ及びプログラマブルコントローラシステム |
KR101279710B1 (ko) * | 2011-04-01 | 2013-06-27 | 엘에스산전 주식회사 | Plc 데이터 로그모듈 및 이의 데이터 저장 방법 |
WO2012158541A1 (en) | 2011-05-13 | 2012-11-22 | Beckman Coulter, Inc. | System and method including laboratory product transport element |
WO2012158520A1 (en) | 2011-05-13 | 2012-11-22 | Beckman Coulter, Inc. | Laboratory product transport element and path arrangement |
CN102874666A (zh) * | 2011-07-15 | 2013-01-16 | 深圳市汇川控制技术有限公司 | 电梯应急物联网系统 |
JP6062449B2 (ja) | 2011-11-07 | 2017-01-18 | ベックマン コールター, インコーポレイテッド | 標本コンテナ検出 |
KR102040996B1 (ko) | 2011-11-07 | 2019-11-05 | 베크만 컬터, 인코포레이티드 | 로봇식 아암 |
BR112014011044A2 (pt) | 2011-11-07 | 2017-04-25 | Beckman Coulter Inc | amortecimento magnético para sistema de transporte de espécime |
BR112014011046A2 (pt) | 2011-11-07 | 2017-06-13 | Beckman Coulter, Inc. | fluxo de trabalho e sistema de centrífuga |
JP6190380B2 (ja) | 2011-11-07 | 2017-08-30 | ベックマン コールター, インコーポレイテッド | 等分機システムおよびワークフロー |
US9910054B2 (en) | 2011-11-07 | 2018-03-06 | Beckman Coulter, Inc. | System and method for processing samples |
KR101540554B1 (ko) | 2012-09-14 | 2015-07-29 | 베크만 컬터, 인코포레이티드 | 모세관 운반부를 갖는 분석 시스템 |
US9727033B2 (en) * | 2013-03-08 | 2017-08-08 | 2362738 Ontario Inc. | Method for producing PLC and HMI tag database and system |
US9703277B2 (en) * | 2014-05-07 | 2017-07-11 | Rockwell Automation Technologies, Inc. | Method and apparatus to track changes in an industrial controller |
US9946244B2 (en) * | 2014-08-25 | 2018-04-17 | Siemens Aktiengesellschaft | Intelligent programmable logic controller |
US10496067B2 (en) * | 2015-08-07 | 2019-12-03 | Siemens Aktiengesellschaft | Automation and control distributed data management systems |
KR102406380B1 (ko) * | 2016-01-05 | 2022-06-08 | 삼성전자주식회사 | 디스플레이 시스템, 디스플레이 장치 및 그의 제어 방법 |
KR102407127B1 (ko) * | 2016-01-05 | 2022-06-10 | 삼성전자주식회사 | 디스플레이 시스템, 디스플레이 장치 및 그의 제어 방법 |
EP3267271B1 (de) * | 2016-07-05 | 2018-12-26 | Siemens Aktiengesellschaft | Automatisierungssystem und verfahren zum betrieb |
US10427162B2 (en) | 2016-12-21 | 2019-10-01 | Quandx Inc. | Systems and methods for molecular diagnostics |
CN107689924B (zh) * | 2017-08-29 | 2021-08-24 | 北京格是菁华信息技术有限公司 | 监控数据的发送方法以及系统 |
CN108459552B (zh) * | 2018-01-31 | 2021-07-23 | 南京拓控信息科技股份有限公司 | 一种智能化面向对象的可编程的自动化控制方法 |
JP6954191B2 (ja) * | 2018-03-12 | 2021-10-27 | オムロン株式会社 | 制御システム、開発支援装置、および開発支援プログラム |
JP7135955B2 (ja) * | 2019-03-18 | 2022-09-13 | 株式会社デンソー | データ圧縮方法、データ圧縮装置 |
US11561532B2 (en) * | 2020-06-19 | 2023-01-24 | Rockwell Automation Technologies, Inc. | Systems and methods for metered automation controller functionality |
US11561522B2 (en) | 2020-11-11 | 2023-01-24 | Mapped Inc. | Data mapping based on device profiles |
WO2023215892A1 (en) | 2022-05-06 | 2023-11-09 | Mapped Inc. | Ensemble learning for extracting semantics of data in building systems |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6198480B1 (en) * | 1998-10-07 | 2001-03-06 | Wonderware Corporation | Object-oriented tag browser |
US20050203648A1 (en) * | 2004-03-15 | 2005-09-15 | David Martin | System and method for accessing PLC data on demand |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0344702A (ja) | 1989-07-13 | 1991-02-26 | Yaskawa Electric Mfg Co Ltd | プログラマブルコントローラ |
US5285376A (en) | 1991-10-24 | 1994-02-08 | Allen-Bradley Company, Inc. | Fuzzy logic ladder diagram program for a machine or process controller |
FR2741975B1 (fr) | 1995-11-30 | 1998-01-09 | Aeg Schneider Automation | Systeme d'entrees-sorties d'automate programmable |
US6868538B1 (en) | 1996-04-12 | 2005-03-15 | Fisher-Rosemount Systems, Inc. | Object-oriented programmable controller |
JP3222821B2 (ja) | 1997-12-25 | 2001-10-29 | 株式会社東芝 | プログラマブルコントローラ |
US6385496B1 (en) * | 1999-03-12 | 2002-05-07 | Fisher-Rosemount Systems, Inc. | Indirect referencing in process control routines |
JP2003295910A (ja) | 2002-03-29 | 2003-10-17 | Omron Corp | ユニット及びツール機器並びにプログラム製品 |
US7225037B2 (en) | 2003-09-03 | 2007-05-29 | Unitronics (1989) (R″G) Ltd. | System and method for implementing logic control in programmable controllers in distributed control systems |
US7424328B2 (en) * | 2006-01-03 | 2008-09-09 | De Silvio Louis F | Apparatus and method for wireless process control |
-
2006
- 2006-09-22 US US11/534,259 patent/US7860589B2/en active Active
-
2007
- 2007-03-02 EP EP07004365.8A patent/EP1830234B1/en active Active
- 2007-03-02 CN CN2007101035370A patent/CN101059695B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6198480B1 (en) * | 1998-10-07 | 2001-03-06 | Wonderware Corporation | Object-oriented tag browser |
US20050203648A1 (en) * | 2004-03-15 | 2005-09-15 | David Martin | System and method for accessing PLC data on demand |
Also Published As
Publication number | Publication date |
---|---|
US20070208440A1 (en) | 2007-09-06 |
US7860589B2 (en) | 2010-12-28 |
CN101059695A (zh) | 2007-10-24 |
EP1830234B1 (en) | 2013-05-08 |
EP1830234A1 (en) | 2007-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101059695B (zh) | 对控制器结构和变量名称的可编程访问 | |
US8086649B1 (en) | Incremental association of metadata to production data | |
US7881812B2 (en) | Editing and configuring device | |
CN101763280B (zh) | 用于生成控制系统可执行代码的系统、方法和计算机实施系统 | |
CN101563671B (zh) | 桥接过程自动化和信息管理环境中的人机界面技术 | |
US7962440B2 (en) | Adaptive industrial systems via embedded historian data | |
US20120194502A1 (en) | Searchable catalog for externally defined graphic element (edge) definitions | |
CN100498764C (zh) | 同步更新数据的方法 | |
US7574417B1 (en) | Self configuration of embedded historians | |
US7870223B2 (en) | Services associated with an industrial environment employing controller engine instances | |
US8032232B2 (en) | Natively retaining project documentation in a controller | |
CN1981301A (zh) | 用于开发动画可视化界面的系统和方法 | |
CN101241358A (zh) | 用于嵌入式历史记录组件的可调整数据收集速率 | |
CN105830417A (zh) | 用于替换和调试现场设备的方法和系统 | |
CN110765077B (zh) | 基于分布式文件系统统一管理ai模型的方法及系统 | |
CN103093045A (zh) | 一种交互式产品配置平台 | |
CN108681556A (zh) | 分布式指令域数据的访问方法及其系统 | |
CN115129736A (zh) | 基于规则引擎的规则事件动态加载与更新方法及相关设备 | |
CN102339421A (zh) | 一种用于生态建设管理的决策支持系统 | |
US7711440B1 (en) | Browser based embedded historian | |
CN101540014A (zh) | 运用无线射频识别于设施与设备维护管理的信息系统及其方法 | |
CN101675415A (zh) | 程序模式分析装置、模式出现状况信息产生方法、模式信息生成装置及程序 | |
CN114398442A (zh) | 一种基于数据驱动的情报处理系统 | |
CN102609802A (zh) | 自动化货柜管理系统与看板生产管理系统信息交互方法 | |
CN115087996A (zh) | 工业车间机器学习系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110706 Termination date: 20170302 |
|
CF01 | Termination of patent right due to non-payment of annual fee |