CN104570903B - 可编程逻辑器件编辑器及编辑方法 - Google Patents

可编程逻辑器件编辑器及编辑方法 Download PDF

Info

Publication number
CN104570903B
CN104570903B CN201410555389.6A CN201410555389A CN104570903B CN 104570903 B CN104570903 B CN 104570903B CN 201410555389 A CN201410555389 A CN 201410555389A CN 104570903 B CN104570903 B CN 104570903B
Authority
CN
China
Prior art keywords
pld
logical order
block
order block
incompatible
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.)
Active
Application number
CN201410555389.6A
Other languages
English (en)
Other versions
CN104570903A (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 CN104570903A publication Critical patent/CN104570903A/zh
Application granted granted Critical
Publication of CN104570903B publication Critical patent/CN104570903B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0175Coupling arrangements; Interface arrangements
    • H03K19/017581Coupling arrangements; Interface arrangements programmable
    • 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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

本申请涉及一种可编程逻辑器件编辑器及编辑方法。提供了一种用于对要被编程到PLD中的PLD代码进行编辑的PLD编辑器以及方法。PLD编辑器包括接口、存储***及处理***。处理***被配置成获得PLD代码,其中,PLD代码包括一个或更多个逻辑指令块以及每个逻辑指令块的相应的块参数,其中PLD代码被计划编程到PLD中。处理***被配置成根据PLD设备的库将PLD代码的一个或更多个逻辑指令块与可用于PLD的逻辑指令块的库的子集进行比较,确定一个或更多个逻辑指令块中的不相容逻辑指令块,指示不相容逻辑指令块,并且使用逻辑指令块的库的子集对不相容逻辑指令块进行校正。

Description

可编程逻辑器件编辑器及编辑方法
技术背景
可编程逻辑器件(PLD)用于各种控制应用中,如工业应用中的控制器和/或驱动器。PLD是能够被编程用于具体控制应用的低成本器件,如例如用于操作电机。编程PLD的能力使得PLD对于独立应用是理想的。
由于PLD的广泛应用和发展,不断需要改进这种器件的可靠性和易用性。改进的一个领域在于编程,其中,用户需要能够快速容易地生成特定PLD的编程代码的完全集。然而,同样重要的是编程是正确的且功能性的,而不需要在工程师或其他用户部分消耗过量的设计和编程时间。
接近编程PLD设备的现有技术是重新使用现有编程,其中,现有编程可以被修改并且然后用于新应用,其中,现有编程通常被修改并且然后以某种方式被重新使用。然而,这引入了由于原始PLD和新修改的PLD之间的差异而不适当或不完全编程的危险,这可以导致比编程PLD设备时所消耗的较少时间更多的损失时间。另外,存在会保留代码的不需要部分的危险,其中,所保留的代码占用存储空间并且在某些情况下可以导致PLD或相关联器件的不适当行为。
发明内容
在实施方式中,提供了一种用于对要被编程到PLD中的PLD代码进行编辑的PLD编辑器。PLD编辑器包括:用于与PLD通信的接口;用于存储PLD代码、PLD设备的库及逻辑指令块的库的存储***;以及耦接至接口和存储***的处理***。其中,处理***被配置成获得PLD代码,其中,PLD代码包括一个或更多个逻辑指令块以及每个逻辑指令块的相应的块参数,其中,PLD代码被计划编程到PLD中。处理***被配置成根据PLD设备的库将PLD代码的一个或更多个逻辑指令块与可用于PLD的逻辑指令块的库的子集进行比较,确定一个或更多个逻辑指令块中的不相容逻辑指令块,指示不相容逻辑指令块,并且使用逻辑指令块的库的子集对不相容逻辑指令块进行校正。
提供了此概述,以简化的形式来介绍在技术公开中下面进一步描述的构思的选择。应当理解的是,此概述不意图标识所要求保护的主题的关键特征或本质特征,而且不意图用于限制所要求保护的主题的范围。
附图说明
图1示出了耦接至PLD编辑器的可编程逻辑器件(PLD)。
图2示出了示例性PLD代码。
图3示出了示例性PLD编辑器的细节。
图4是用于对要被编程到PLD中的PLD代码进行编辑的PLD编辑方法的流程图。
图5是用于对要被编程到PLD中的PLD代码进行编辑的PLD编辑方法的流程图。
图6A至6B示出了由PLD编辑器生成的给PLD编辑器的用户的示例图形显示。
具体实施方式
以下描述和相关联的附图教示本发明的最佳模式。为了教示发明原理的目的,可以简化或省略最佳模式的一些传统方面。下述权利要求指定本发明的范围。最佳模式的一些方面可以不落入由权利要求所指定的本发明的范围内。由此,本领域技术人员会理解落入本发明的范围内的根据最佳模式的变型。本领域技术人员将理解,可以以各种方式结合下面所描述的特征,以形成本发明的多种变型。因此,本发明不限于下面所描述的具体示例,而是仅由权利要求及其等效替代来限定。
图1示出了耦接至PLD编辑器120的可编程逻辑器件(PLD)100。PLD编辑器120可以用于生成代码的部分或者生成整套编程代码。PLD编辑器120可以用于选择编程代码的现有集。PLD编辑器120可以用于对用于编程到PLD 100中的所选择的PLD代码130进行编辑。PLD编辑器120可以用于将PLD代码130编程到PLD 100中。PLD代码130可以被编程到PLD 100的存储***103中的易失性存储空间或非易失性存储空间中。
PLD编辑器120可以通过通信链路108耦接至PLD 100,如图所示。通信链路108可以包括任何形式的通信链路,包括有线通信链路和无线通信链路。通信链路108可以用于将PLD代码130从PLD编辑器120传输至PLD 100。通信链路108可以是临时链路或永久链路。
PLD 100可以包括任何PLD设备。PLD 100包括接口101、处理***102及存储***103。存储***103可以接收并存储PLD代码130。存储***103还可以存储编程例程125、编辑例程127及PLD代码集的库146。在操作中,PLD 100的处理***102可以检索PLD代码130并且执行PLD代码130。PLD 100的处理***102在执行PLD代码130时可以被配置成进行包括下述的任何想要的PLD操作:对输入进行接收和处理,与外部设备(未示出)通信,操作和/或控制外部设备,将数据提供给外部设备,处理来自外部设备的数据,监测对外部设备的操作,包括监测对外部设备的错误操作或不适当操作,以及积累关于对外部设备操作的数据。该列表不是穷尽的并且对PLD 100的其他操作是考虑接受的并且在说明书和权利要求的范围内。
PLD代码130可以使用预定功能。PLD代码130可以由标准符号或其他表示来代表。因此,用户会能够选择并实施这些预定功能,其中,可以通过用户提供所需的参数来完成编程从而完成所选择的功能。
PLD 100可以被配置成操作和/或驱动电机,例如,由于PLD设备在运动控制、定位控制即旋转控制中的广泛使用。在一种电机控制示例中,对PLD代码130的编程可以包括控制电机操作的各个方面的定时器,包括驱动信号脉冲宽度、驱动信号占空比、驱动信号接通时间和断开时间以及其他。然而,应当理解的是,PLD 100的其他或另外的用途是考虑接受的并且在说明书和权利要求的范围内。
PLD编辑器120可以包括接口121、处理***122及存储***123。应当理解的是,PLD编辑器120还可以包括附加的部件、电路或子***(为了清楚的目的而被省略)。
PLD编辑器120的接口121可以耦接至PLD 100的接口101,用于将PLD代码130传输至PLD 100。PLD编辑器120的接口121可以耦接至PLD 100的接口101,用于对PLD 100进行编程。在编程期间,PLD代码130可以从PLD编辑器120下载到PLD 100并且被安装在PLD 100的存储***103中。
编程例程125被配置成将PLD代码130传输至PLD 100,包括将PLD代码130编程到PLD 100中。因此,编程例程125可以包括适当的擦除和编程周期时间、编程检查、编程确认及编程子例程。
即使PLD 100的计划用途中的小差异会需要PLD代码130需要进行编辑,其中,PLD代码130被计划用于不同的PLD设备和/或不同的端应用。此外,虽然PLD编程的基础构思对所有制造商来说是通常的,即使在I/O寻址、存储器组织及指令集中的小差异意指PLD程序从不在不同的制造者之间或者甚至在不同的模型之间完全地可交换。
PLD编辑器120的编辑例程127被配置成确定与PLD 100不相容的PLD代码130中的不相容逻辑指令块,将不相容逻辑指令块指示给PLD编辑器120的用户,并且对不相容逻辑指令块进行校正。
替选地,PLD编辑器120可以包括存储一个或更多个现有PLD代码集的PLD代码集的库146。PLD编辑器120的用户可以从PLD代码集的库146选择PLD代码130并且对PLD代码130进行编辑以重新使用PLD代码130用于新应用。因此,编辑例程127可以被配置成从PLD代码集的库146检索PLD代码130,确定与PLD 100不相容的PLD代码130中的不相容逻辑指令块,将不相容逻辑指令块指示给PLD编辑器120的用户,并且对不相容逻辑指令块进行校正。
PLD代码集的库146可以被存储在PLD编辑器120中,如所示出的。替选地,PLD代码集的库146中的一些或全部可以被外部存储并且由PLD编辑器120经由接口121和合适的通信链路(未示出)进行访问。通信链路可以包括合适的有线链路或无线链路。通信链路可以与用于对PLD 100进行编程的通信链路108不同或者相同。
图2示出了示例性PLD代码130。PLD代码130可以包括由PLD 100的处理***102执行的操作例程131。在电机控制应用中,操作例程131可以将PLD 100配置为电机控制器并且可以执行进行电机控制操作的各种指令。
PLD代码130可以包括一个或更多个指令块133。一个或更多个指令块133包括由处理***102在执行操作例程131时要执行的逻辑指令。在电机控制示例中,指令块133可以包括控制电机控制的定时方面的定时器块,如驱动信号脉冲宽度、驱动信号占空比、驱动信号接通时间和断开时间以及其他。
PLD代码130可以包括每个指令块133的块参数134。块参数134可以包括由相应的指令块133所需的值或其他信息。在电机控制示例中,指令块133包括定时器块可以需要例如包括起始时间和停止时间的参数。取决于下述因素如PLD 100的特性、需求或设计,端用途/应用以及特定指令块133,每个指令块133可以需要具体数量的块参数134(即不同的定时器块可以需要不同数量的参数)。其他或另外的因素是考虑接受的并且在说明书和权利要求的范围内。
图3示出了示例性PLD编辑器120的细节。在本示例中,PLD编辑器120的存储***123存储编程例程125、编辑例程127、PLD代码130及PLD代码集的库146,如前面所讨论的那样。存储***123另外可以存储PLD设备的库140、逻辑指令块的库142、显示例程152、比较例程155及校正例程158。
PLD设备的库140包括PLD设备及可以用于编程所需要的相关联信息的库。PLD设备的库140可以包括已知的PLD设备。PLD设备的库140可以包括通常或之前所使用的PLD设备。PLD设备的库140可以包括预计在某个时间点使用的PLD设备。PLD设备的库140可以包括其中PLD设备的代码已经被创建和/或编辑的PLD设备。
PLD设备的库140可以包括例如一个或更多个PLD模型的PLD信息。PLD设备的库140可以包括例如一个或更多个PLD制造商的PLD信息。然而,其他PLD信息是考虑接受的并且在说明书和权利要求的范围内。
PLD设备的库140可以被存储在PLD编辑器120中,如所示出的。替选地,PLD设备的库140中的一些或者全部可以被外部存储并且由PLD编辑器120经由接口121和通信链路进行访问。
逻辑指令块的库142包括能够在可用的PLD设备中使用的至少部分可能的逻辑指令块133的库。逻辑指令块的库142可以存储进行具体功能的多种逻辑指令块。此外,逻辑指令块的库142可以存储使用不同参数的多种逻辑指令块,如进行类似的功能但是可以使用不同的参数和/或不同数量的参数的逻辑指令块的家族。在电机控制示例中,逻辑指令块的库142可以存储多种定时器块,其中,可以根据特定时间块和计划的定时器操作来选择特定定时器块。
逻辑指令块的库142可以被存储在PLD编辑器120中,如所示出的。替选地,逻辑指令块的库142中的一些或者全部可以被外部存储并且由PLD编辑器120经由接口121和通信链路进行访问。
显示例程152包括被配置成在编辑进程期间显示PLD代码130的逻辑指令块133的例程。逻辑指令块133可以由显示例程152显示,以便向用户示出哪个逻辑指令块133被包括在PLD代码130中。逻辑指令块133可以由显示例程152显示,以便示出对于PLD 100适当的并且被适当配置的逻辑指令块133。逻辑指令块133可以由显示例程152显示,以便示出不相容逻辑指令块,即对于PLD 100不适当的或者被不适当配置的或者即对于PLD 100不适当又被不适当配置的逻辑指令块133。
显示例程152可以直观地指示任何不相容逻辑指令块。显示例程152可以以不同的颜色来显示不相容逻辑指令块。显示例程152可以用阴影线或虚线来显示不相容逻辑指令块。显示例程152可以使用不同的线、不同的颜色、不同的颜色强度或者不同的灰阶值来显示不相容逻辑指令块。显示例程152可以通过改变不相容逻辑指令块的一个或多个方面来显示不相容逻辑指令块。然而,应该理解的是,显示例程152可以以各种合适的方式来指示不相容逻辑指令块。
比较例程155包括被配置成比较一个或更多个逻辑指令块133并且确定一个或更多个逻辑指令块133是否对于PLD 100是适当的例程。比较可以包括根据PLD设备的库140中的PLD设备信息将一个或更多个逻辑指令块133与指令块的库142的子集进行计较。通过使用目标PLD 100在指令块的库142中进行索引,能够将一个或更多个逻辑指令块133与适当的逻辑指令块的集进行比较。
校正例程158包括被配置成对所标识的不相容逻辑指令块进行校正的例程。校正例程158可以对所标识的不相容逻辑指令块进行自动校正。校正例程158可以呈现来自用户的对具体信息的请求,如用户应当填补一个或多个缺失的块参数134的指示。校正例程158可以指示逻辑指令块133中不需要的信息(即一个或更多个不需要的块参数134)。校正例程158可以指示已经从逻辑指令块133自动删除的信息。
在一个示例中处理***122执行编辑例程127时,编辑例程127可以将处理***122配置成获得PLD代码130,其中,PLD代码130包括一个或更多个逻辑指令块133以及一个或更多个逻辑指令块133中的每个逻辑指令块的相应的块参数134,其中,PLD代码130被计划编程到PLD 100中(即用户可以选择已经极适合于想要的PLD 100的PLD代码);将处理***122配置成根据PLD设备的库140将PLD代码130的一个或更多个逻辑指令块133与逻辑指令块的库142的子集进行比较,确定一个或更多个逻辑指令块133中的不相容逻辑指令块,将不相容逻辑指令块指示给PLD编辑器120的用户,并且使用逻辑指令块的库142的子集对不相容逻辑指令块进行校正。
在另一个示例中处理***122执行编辑例程127时,编辑例程127可以将处理***122配置成获得PLD代码130,其中,PLD代码130包括一个或更多个逻辑指令块133以及一个或更多个逻辑指令块133中的每个逻辑指令块的相应的块参数134,其中,PLD代码130被计划编程到PLD 100中;将处理***122配置成根据PLD设备的库140将PLD代码130的一个或更多个逻辑指令块133与逻辑指令块的库142的子集进行比较;将处理***122配置成确定一个或更多个逻辑指令块133中的不相容逻辑指令块;将处理***122配置成将不相容逻辑指令块指示给PLD编辑器120的用户,其中,不相容逻辑指令块可以包括不相容逻辑指令块133或不相容块参数134;并且将处理***122配置成使用逻辑指令块的库142的子集对不相容逻辑指令块进行校正,其中,不相容逻辑指令块133和不相容块参数134被校正。
图4是用于对要被编程到PLD 100中的PLD代码130进行编辑的PLD编辑方法的流程图400。在步骤401中,获得PLD代码130。用户可以选择或指定PLD代码130。PLD代码130可以是例如预先存在的PLD代码130。PLD代码130可以从存储在PLD编辑器120中的PLD代码集的库146获得。替选地,PLD代码130可以从在PLD编辑器120外部的其他源获得。
PLD代码130可以由PLD编辑器的用户进行修改,以便将PLD代码130编程到目标PLD100中。修改PLD代码130可以比从头开始创建新的PLD代码更具有时效性。此外,修改PLD代码130可以导致所得代码中编码错误的较低风险,尤其是其中目标PLD 100最低程度地不同于其中之前使用PLD代码130的PLD设备的情况下。
在步骤402中,将PLD代码130的逻辑指令块133与逻辑指令块的库142进行比较。比较可以包括根据PLD设备的库140中的PLD设备信息将一个或更多个逻辑指令块133与指令块的库142的子集进行计较。通过使用目标PLD 100在指令块的库142中进行索引,能够将一个或更多个逻辑指令块133与适当的逻辑指令块的集进行比较。
在步骤403中,确定一个或更多个逻辑指令块133中的不相容逻辑指令块作为比较的结果。
在步骤404中,指示不相容逻辑指令块。指示可以包括给PLD编辑器120的用户的指示。可以用阴影线或虚线来直观地指示不相容逻辑指令块。可以使用不同的线、不同的颜色、不同的颜色强度或者不同的灰阶值来直观地指示不相容逻辑指令块。可以通过改变不相容逻辑指令块的一个或多个方面来直观地指示不相容逻辑指令块。然而,应该理解的是,可以以各种合适的方式来指示不相容逻辑指令块。
在步骤405中,对不相容逻辑指令块进行校正。不相容逻辑指令块被校正以使得PLD代码130能够被编程到PLD 100中。不相容逻辑指令块被校正以使得PLD代码130在被编程到PLD 100中时在由PLD 100执行时会适当且高效地操作PLD 100。
校正可以包括移除不需要的或不适当的逻辑指令块133。校正可以包括修改不适当的逻辑指令块133。校正可以包括为PLD 100提供适当的逻辑指令块133。
图5是用于对要被编程到PLD 100中的PLD代码130进行编辑的PLD编辑方法的流程图500。在步骤501中,获得PLD代码130,如前面所讨论的那样。
在步骤502中,将PLD代码130的逻辑指令块133与逻辑指令块的库142进行比较,如前面所讨论的那样。
在步骤503中,确定一个或更多个逻辑指令块133中的不相容逻辑指令块133和不相容块参数134作为比较的结果,如前面所讨论的那样。
在步骤504中,指示不相容逻辑指令块133和不相容块参数134。指示可以包括给PLD编辑器120的用户的指示,如前面所讨论的那样。指示可以包括给PLD编辑器120的用户的视觉指示,如前面所讨论的那样。
在步骤505中,对不相容逻辑指令块133和不相容块参数134进行校正。不相容逻辑指令块133和不相容块参数134被校正以使得PLD代码130能够被编程到PLD 100中。不相容逻辑指令块133和不相容块参数134被校正以使得PLD代码130在被编程到PLD 100中时在由PLD 100执行时会适当且高效地操作PLD 100。
校正可以包括移除不需要的或不适当的逻辑指令块133。校正可以包括移除逻辑指令块133的不需要的或不适当的块参数134。
校正可以包括修改不适当的逻辑指令块133。校正可以包括修改逻辑指令块133的不适当的块参数134。
校正可以包括为PLD 100提供适当的逻辑指令块133。校正可以包括为逻辑指令块133提供适当的块参数134。
图6A示出了由PLD编辑器120生成的给PLD编辑器120的用户的示例图形显示。显示包括带有重置(TONR)块的延迟定时器,其中,TONR块被直观地/图示地指示为不适当的。在所示示例中,TONR块的不适当状态由包括虚线的TONR指令块进行直观地指示。应当理解的是,虚框可以实际上被固定,可以根据适当的指令块用不同的颜色而生成,或者可以经过一段时间被移动、闪光或者以别的方式被动画或者在外观上进行改变。
另外,不适当的指令块的显示可以伴随有显示文本。显示文本可以进一步指示指令块是不适当的。显示文本可以进一步指出指令块是怎样不适当的。例如,在图中所示出的TONR块中,所显示的块可以伴随有陈述在TONR块中输入PRE及其所有捆绑是不支持的文本。文本可以通知用户TONR块实际上不能使用。
此外,不适当的指令块的显示可以伴随有能够由用户选择的一个或多个图形输入图标。例如,图形输入图标可以包括能够用作为不适当的值或配置的替代的适当的值或配置的选择。例如,图形输入选择可以包括“自动校正”特征,其中,在用户选择了自动校正图形输入选择时,PLD编辑器120对不适当的指令块进行自动校正。其中,用户必须选择自动校正特征,但是不必进行校正或者知道如何对不适当的指令块进行校正。
图6B示出了在图6A中的不适当的指令块已经被校正之后由PLD编辑器120生成的图形显示。现在指令块用实线示出,指示指令块被适当地配置并且被适当地用于指令集中。此外,指令块示出了已经改变了“PRE”指令块参数部分。
以上描述和相关联的图教示了本发明的最佳模式。下述权利要求指定本发明的范围。注意,最佳模式的一些方面可以不落入由权利要求所指定的本发明的范围内。本领域技术人员将理解的是,以上所描述的特征可以以各种方式结合,以形成本发明的多种变型。因此,本发明不限于以上所描述的具体实施方式,而是仅由权利要求及其等效替代来限定。

Claims (10)

1.一种可编程逻辑器件PLD编辑器,用于对要被编程到PLD中的PLD代码进行编辑,所述PLD编辑器包括:
用于与所述PLD通信的接口;
用于存储所述PLD代码、PLD设备的库及逻辑指令块的库的存储***;以及
耦接至所述接口和所述存储***的处理***,其中,所述处理***被配置成获得所述PLD代码,其中,所述PLD代码包括一个或更多个逻辑指令块以及所述一个或更多个逻辑指令块中的每个逻辑指令块的相应的块参数,其中所述PLD代码被计划编程到所述PLD中;所述处理***被配置成根据所述PLD设备的库将所述PLD代码的所述一个或更多个逻辑指令块与能够用于所述PLD的所述逻辑指令块的库的子集进行比较,确定所述一个或更多个逻辑指令块中的不相容逻辑指令块,指示所述不相容逻辑指令块,并且使用所述逻辑指令块的库的所述子集对所述不相容逻辑指令块进行校正。
2.根据权利要求1所述的PLD编辑器,其中,指示所述不相容逻辑指令块进一步包括直观地指示所述不相容逻辑指令块。
3.根据权利要求1所述的PLD编辑器,其中,对所述不相容逻辑指令块进行校正包括在用户不发起校正或不输入校正的情况下对所述不相容逻辑指令块进行校正。
4.根据权利要求1所述的PLD编辑器,其中,对所述不相容逻辑指令块进行校正包括:
所述PLD编辑器访问指令块的库并且将任何不相容逻辑指令块指示给用户;
所述PLD编辑器检索替选逻辑指令块并且将所述替选逻辑指令块显示给所述用户;以及
所述PLD编辑器接收用户指令选择并且实施所述不相容逻辑指令块中的所选择的逻辑指令块。
5.根据权利要求1所述的PLD编辑器,其中,对所述不相容逻辑指令块进行校正包括:
所述PLD编辑器访问指令块的库并且将任何不相容块参数指示给用户;以及
所述PLD编辑器接收用户参数选择并且实施所述不相容逻辑指令块中的所选择的块参数。
6.根据权利要求1所述的PLD编辑器,其中,对所述不相容逻辑指令块进行校正包括:
所述PLD编辑器访问指令块的库并且将任何不相容块参数指示给用户;
所述PLD编辑器将所选择的块参数的参数范围指示给所述用户;以及
所述PLD编辑器接收用户参数选择并且实施所述不相容逻辑指令块中的所选择的块参数。
7.根据权利要求1所述的PLD编辑器,其中,所述PLD代码是从PLD代码集的库获得的。
8.一种可编程逻辑器件PLD编辑方法,用于对要被编程到PLD中的PLD代码进行编辑,所述方法包括:
PLD编辑器获得所述PLD代码,其中,所述PLD代码包括一个或更多个逻辑指令块以及所述一个或更多个逻辑指令块中的每个逻辑指令块的相应的块参数,其中所述PLD代码被计划编程到所述PLD中;
所述PLD编辑器根据所述PLD设备的库将所述PLD代码的所述一个或更多个逻辑指令块与能够用于所述PLD的逻辑指令块的库的子集进行比较;
所述PLD编辑器确定所述一个或更多个逻辑指令块中的不相容逻辑指令块;
所述PLD编辑器将所述不相容逻辑指令块指示给所述PLD编辑器的用户;以及
所述PLD编辑器使用所述逻辑指令块的库的所述子集对所述不相容逻辑指令块进行校正。
9.根据权利要求8所述的方法,其中,指示所述不相容逻辑指令块进一步包括直观地指示所述不相容逻辑指令块。
10.根据权利要求8所述的方法,其中,对所述不相容逻辑指令块进行校正包括在用户不发起校正或不输入校正的情况下对所述不相容逻辑指令块进行校正。
CN201410555389.6A 2013-10-11 2014-10-11 可编程逻辑器件编辑器及编辑方法 Active CN104570903B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/051,617 US9112493B2 (en) 2013-10-11 2013-10-11 PLD editor and method for editing PLD code
US14/051,617 2013-10-11

Publications (2)

Publication Number Publication Date
CN104570903A CN104570903A (zh) 2015-04-29
CN104570903B true CN104570903B (zh) 2017-05-31

Family

ID=51690897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410555389.6A Active CN104570903B (zh) 2013-10-11 2014-10-11 可编程逻辑器件编辑器及编辑方法

Country Status (4)

Country Link
US (2) US9112493B2 (zh)
EP (1) EP2860626B1 (zh)
CN (1) CN104570903B (zh)
BR (1) BR102014025349A2 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6705768B2 (ja) 2017-04-06 2020-06-03 ファナック株式会社 情報処理装置
JP6474447B2 (ja) * 2017-04-06 2019-02-27 ファナック株式会社 情報処理装置
US10678513B2 (en) * 2017-09-12 2020-06-09 Devfactory Fz-Llc Library upgrade method, apparatus, and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5794033A (en) * 1995-10-24 1998-08-11 International Business Machines Corporation Method and system for in-site and on-line reprogramming of hardware logics with remote loading in a network device
JP2001075615A (ja) * 1999-08-31 2001-03-23 Digital Electronics Corp エディタ装置およびエディタプログラムを記録した記録媒体
CN1743982A (zh) * 2004-09-02 2006-03-08 台达电子工业股份有限公司 可编程逻辑控制器的程序编辑***与方法
JP3847585B2 (ja) * 2001-07-31 2006-11-22 株式会社デジタル エディタの登録装置、登録プログラムおよびそれを記録した記録媒体
CN101529351A (zh) * 2006-08-24 2009-09-09 西门子能量及自动化公司 用于配置可编程逻辑控制器的设备、***和方法
CN101776877A (zh) * 2009-01-12 2010-07-14 鸿富锦精密工业(深圳)有限公司 可编程逻辑控制器程序编辑***及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797673B2 (en) 2004-12-16 2010-09-14 The Mathworks, Inc. Applying coding standards in graphical programming environments
EP2040135A3 (en) 2007-09-20 2011-08-03 Rockwell Automation Technologies, Inc. Automated validation of application code for an industrial control environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5794033A (en) * 1995-10-24 1998-08-11 International Business Machines Corporation Method and system for in-site and on-line reprogramming of hardware logics with remote loading in a network device
JP2001075615A (ja) * 1999-08-31 2001-03-23 Digital Electronics Corp エディタ装置およびエディタプログラムを記録した記録媒体
JP3847585B2 (ja) * 2001-07-31 2006-11-22 株式会社デジタル エディタの登録装置、登録プログラムおよびそれを記録した記録媒体
CN1743982A (zh) * 2004-09-02 2006-03-08 台达电子工业股份有限公司 可编程逻辑控制器的程序编辑***与方法
CN101529351A (zh) * 2006-08-24 2009-09-09 西门子能量及自动化公司 用于配置可编程逻辑控制器的设备、***和方法
CN101776877A (zh) * 2009-01-12 2010-07-14 鸿富锦精密工业(深圳)有限公司 可编程逻辑控制器程序编辑***及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一类PLC的编译器的设计与实现;陆林,白瑞林;《微计算机信息》;20081231;第24卷(第12-1期);第17-19页 *
可编程逻辑控制器编辑软件的研究及实现;韩俊平,叶红;《研究与开发》;20070630;第36卷(第6期);第29-30页 *

Also Published As

Publication number Publication date
BR102014025349A2 (pt) 2016-04-19
CN104570903A (zh) 2015-04-29
EP2860626B1 (en) 2019-03-20
US9112493B2 (en) 2015-08-18
US9805153B2 (en) 2017-10-31
US20170300606A9 (en) 2017-10-19
US20150355887A1 (en) 2015-12-10
EP2860626A1 (en) 2015-04-15
US20150102836A1 (en) 2015-04-16

Similar Documents

Publication Publication Date Title
CN104570903B (zh) 可编程逻辑器件编辑器及编辑方法
US20120265838A1 (en) Programmable logic controller
CN108861420B (zh) 防呆上料控制方法及装置、计算机可读存储介质
CN104205057B (zh) 可编程逻辑控制器、编程工具以及程序及参数编辑***
CN102969975B (zh) 电动机***及电动机控制装置
CN106920384A (zh) 智能电子设备适配遥控器的方法和装置
CN106033191A (zh) 家电设备的控制方法及装置
CN104932875B (zh) 图像处理装置、管理***及管理方法
CN110955420A (zh) 一种自定义设备控制方法、装置、设备以及可读介质
CN106547252A (zh) 能够在注释中追加显示 cnc 运行状况的梯形图监控装置
CN110221828A (zh) 一种汽车电子控制单元通讯程序的可视化编程方法
CN102037682B (zh) 用于创建和配置设备网络的***
CN109343881A (zh) 固件升级更新方法、装置和空调
CN108131773A (zh) 空调器的控制装置、空调器和控制方法
CN110687921A (zh) 一种无人机飞行控制方法、装置及电子设备和存储介质
CN111611026A (zh) 一种基于侧孔机的nc文件快速加载实现方法
CN111123781B (zh) 参数校正控制方法、装置、小家电及存储介质
CN109581997A (zh) 批量离线刷新方法及***和离线刷新设备
US20060041324A1 (en) System and method of editing a program used for a programmable logic controller
CN106020918A (zh) 电视软件编译方法及***
JP2010257245A (ja) プログラマブルコントローラおよびラダープログラム作成装置
CN111966523A (zh) 一种管理电器参数的方法、***、设备以及介质
JP5574688B2 (ja) プログラマブルコントローラのコメント情報ダウンロード装置
CN111488105B (zh) 一种机械臂动作流程的生成方法及装置
CN104464815B (zh) 一种快速准确的otp编程控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: ohio

Patentee after: Rockwell automation technologies

Address before: ohio

Patentee before: Rockwell Automation Tech Inc.