WO2023231978A1 - 可编程逻辑控制器的控制方法和可编程逻辑控制器 - Google Patents

可编程逻辑控制器的控制方法和可编程逻辑控制器 Download PDF

Info

Publication number
WO2023231978A1
WO2023231978A1 PCT/CN2023/096888 CN2023096888W WO2023231978A1 WO 2023231978 A1 WO2023231978 A1 WO 2023231978A1 CN 2023096888 W CN2023096888 W CN 2023096888W WO 2023231978 A1 WO2023231978 A1 WO 2023231978A1
Authority
WO
WIPO (PCT)
Prior art keywords
programmable logic
logic controller
interface
programming
language
Prior art date
Application number
PCT/CN2023/096888
Other languages
English (en)
French (fr)
Inventor
赵航
李武阳
Original Assignee
菲尼克斯(南京)智能制造技术工程有限公司
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 菲尼克斯(南京)智能制造技术工程有限公司 filed Critical 菲尼克斯(南京)智能制造技术工程有限公司
Publication of WO2023231978A1 publication Critical patent/WO2023231978A1/zh

Links

Classifications

    • 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
    • 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/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1103Special, intelligent I-O processor, also plc can only access via processor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates to the technical field of control of programmable logic controllers, and in particular to a control method of a programmable logic controller and a programmable logic controller.
  • PLC Programmable Logic Controller
  • LD Ladder Diagram
  • IL Instruction List
  • BBD Function Block
  • SFC Sequential Function Chart
  • ST Structured Text
  • PLC is not friendly to high-level languages in programming, such as C++, python and other high-level languages. Since PLC does not support the use of high-level languages for engineering development and program writing, this has resulted in engineers having to learn high-level languages. Additional learning of the above five programming languages supported by PLC increases the learning cost and reduces the applicability of PLC.
  • Embodiments of the present invention provide a control method for a programmable logic controller and a programmable logic controller, which solves the problem of increasing the user's learning cost and reducing the problem caused by the programmable logic controller in the prior art not supporting the use of high-level programming languages.
  • an embodiment of the present invention provides a control method for a programmable logic controller.
  • the control method includes:
  • a calling interface application sent by a high-level language program unit through a multi-language programming interface, where the calling interface application is an application instruction sent through a preset programming language;
  • the multi-language programming interface applies to call a remote control interface based on the calling interface, wherein the remote control interface is provided on the programmable logic controller;
  • the programmable logic controller is controlled through the remote control interface to perform corresponding programming actions.
  • embodiments of the present invention also provide a control device for a programmable logic controller, where the control device includes a multi-language programming interface and a remote control interface;
  • the multi-language programming interface is used to receive a calling interface application sent by a high-level language program unit, wherein, The calling interface application is an application instruction sent through a preset programming language, and the multi-language programming interface is also used to call the remote control interface based on the calling interface application;
  • the remote control interface is used to control the programmable logic controller to perform corresponding programming actions, wherein the remote control interface is provided on the programmable logic controller.
  • an embodiment of the present invention also provides a programmable logic controller, which includes the control device of the programmable logic controller in any of the above embodiments.
  • the embodiment of the present invention discloses a control method of a programmable logic controller and a programmable logic controller.
  • the control method includes: receiving a calling interface application sent by a high-level language program unit through a multi-language programming interface; the multi-language programming interface is based on the calling interface Apply to call the remote control interface, and control the programmable logic controller to perform corresponding programming actions through the remote control interface.
  • this application can receive application instructions sent by a preset programming language, and control the actions of the programmable logic controller through the remote control interface based on the application instructions, solving the problem that the programmable logic controller in the existing technology does not support
  • Figure 1 is a flow chart of a control method of a programmable logic controller provided by an embodiment of the present invention
  • Figure 2 is a flow chart of another control method of a programmable logic controller provided by an embodiment of the present invention.
  • Figure 3 is a structural diagram of a high-level language program unit and a programmable logic controller provided by an embodiment of the present invention.
  • FIG. 1 is a flow chart of a control method of a programmable logic controller provided by an embodiment of the present invention. like As shown in Figure 1, the control method of the programmable logic controller specifically includes the following steps:
  • S101 Receive a calling interface application sent by a high-level language program unit through a multi-language programming interface, where the calling interface application is an application instruction sent through a preset programming language.
  • the high-level language program unit is a client APP (Application, application) or other programming device that can implement programming using a high-level programming language.
  • the user can use the application programming interface (API, Application) set on the high-level language program unit to Programming Interface) sends a calling interface application to the multi-language programming interface set on the programmable logic controller.
  • the calling interface application can be a high-level programming language that is not supported by the traditional programmable logic controller.
  • the multi-language programming interface uses RPC (Remote Procedure) Call (Remote Procedure Call) calls to communicate and interact with high-level language program units.
  • the multi-language programming interface includes a gRPC interface.
  • the RPC framework actually provides a mechanism that enables communication between applications and also adheres to the Server/Client model.
  • client in this application, the high-level language program unit
  • server in this application, the remote control interface on the programmable logic controller
  • gRPC can define interfaces through protobuf, which can have more stringent interface constraints.
  • protobuf is a mixed language data standard, whose full name is Google Protocol Buffer. It is an efficient and lightweight structured data storage method that can be used for (data) Communication protocols, data storage, etc.
  • the gRPC interface Since protobuf supports multiple high-level programming languages such as Java, C++, Python, etc., the gRPC interface has the ability to support multiple high-level programming languages.
  • This application uses the gRPC interface as a multi-language programming interface to call the remote control interface of the programmable logic controller, so that the programmable logic controller also has the programming ability to support multiple high-level programming languages.
  • the multi-language programming interface applies to call the remote control interface based on the calling interface, where the remote control interface is set on the programmable logic controller.
  • the hardware execution of the programmable logic controller can be controlled by calling the remote control (RSC, Remote System Control) interface based on the calling interface application. programming action.
  • the hardware structure of the programmable logic controller mainly includes I/O modules, communication modules, signal modules, etc. It can use Intel or ARM architecture processors, and its operating system can use the RT-Linux system, so that the programmable logic controller has Deterministic real-time capabilities.
  • this application can receive application instructions sent by the preset programming language. Based on the application instructions, the actions of the programmable logic controller are controlled through the remote control interface, which solves the problem of increased user learning costs and reduced programmable logic control caused by the fact that the programmable logic controller in the existing technology does not support the use of high-level programming languages. It solves the technical problem of the applicability of the programmable logic controller and achieves the technical effect of improving the applicability of the programmable logic controller and reducing the user's learning cost.
  • the programmable logic controller can be applied to a variety of high-level programming languages, and users can directly transplant already formed algorithms or program projects, further improving programmability
  • the program portability of the logic controller reduces program development time.
  • Figure 2 is a flow chart of another control method of a programmable logic controller provided by an embodiment of the present invention.
  • the multi-language programming interface applies for a call based on the calling interface.
  • the control method of the programmable logic controller also includes:
  • the multi-language programming interface receives the program editing instructions sent by the high-level language program unit.
  • a call completion instruction will be fed back to the high-level language program unit.
  • the high-level language program unit will obtain the program editing instruction. It is transmitted to the programmable logic controller through the multi-language programming interface, so that the programmable logic controller can execute the programming actions under the program editing instructions.
  • the preset programming language includes one of the following: java, C, C++, Python, C#, Node.js, Ruby, Objective-C, PHP.
  • any high-level programming language supported by the multi-language programming interface can be used as a default programming language, and is not limited to the high-level programming languages listed above, which will not be described again here.
  • Figure 3 is a structural diagram of a high-level language program unit and a programmable logic controller provided by an embodiment of the present invention.
  • the high-level language program unit is provided on the programmable logic controller, or the high-level language program unit is provided outside the programmable logic controller and is connected to the programmable logic controller through a remote control device.
  • PLCnext takes the programmable logic controller PLCnext as an example.
  • the full name of PLCnext is PLCnext Technology, which is an open programmable control platform.
  • PLCnext Technology which is an open programmable control platform.
  • gRPC- PLCnext RSC client app refers to a high-level language program unit that can call the gRPC interface to control PLCnext.
  • gRPC-PLCnext RSC service app refers to a function expansion module equipped with gRPC interface.
  • PLCnext Device is a PLC device, see Figure 3, gRPC -PLCnext RSC client app can be set up on PLCnext, and the number can be multiple.
  • Figure 3 shows an exemplary diagram of two gRPC-PLCnext RSC client apps, multiple gRPC-PLCnext RSC
  • the client apps are all connected to the gRPC-PLCnext RSC service app through the gRPC interface.
  • the gRPC-PLCnext RSC service app controls the hardware of PLCnext Technology to perform programming actions through the RSC interface.
  • Figure 3 also exemplifies a schematic diagram of gRPC-PLCnext RSC client app set outside PLCnext. Similarly, there can be multiple gRPC-PLCnext RSC client app set outside PLCnext.
  • Figure In 3 Other Device A and Other Device B are used to distinguish the devices where different high-level language program units are located.
  • the number of high-level language program units is greater than or equal to 1, and when the number of high-level language program units is greater than 1, the default programming languages used among the multiple high-level language program units are different.
  • the number of high-level language program units can be multiple, and different preset programming languages can be used to control the programmable logic controller between different high-level language program units, which improves programmability.
  • the logic controller it should be noted that according to actual needs, some or all of the multiple high-level language program units can also use the same preset programming language, which will not be described again here.
  • Embodiments of the present invention also provide a control device for a programmable logic controller.
  • the control device includes a multi-language programming interface and a remote control interface;
  • the multi-language programming interface is used to receive a calling interface application sent by a high-level language program unit, where the calling interface application is an application instruction sent through a preset programming language.
  • the multi-language programming interface is also used to apply for calling the remote remote control based on the calling interface. control interface;
  • the remote control interface is used to control the programmable logic controller to perform corresponding programming actions, wherein the remote control interface is provided on the programmable logic controller.
  • the programmable logic controller when it is running, it provides a control interface through a remote control interface.
  • the multi-language programming interface will call the remote control interface.
  • the user's program development equipment ie, the above-mentioned high-level language program unit
  • the programming interface can realize the control of the hardware module of the programmable logic controller.
  • the multi-language programming interface is also used to receive program editing instructions sent by the high-level language program unit.
  • a call completion instruction will be fed back to the high-level language program unit.
  • the high-level language program unit will obtain the program editing instruction. It is transmitted to the programmable logic controller through the multi-language programming interface, so that the programmable logic controller can execute the programming actions under the program editing instructions.
  • the multi-language programming interface includes a gRPC interface.
  • the RPC framework actually provides a mechanism to enable communication between applications. And also follows the Server/Client model.
  • This application uses the gRPC interface as a multi-language programming interface to call the remote control interface of the programmable logic controller, so that the programmable logic controller also has the programming ability to support multiple high-level programming languages.
  • the preset programming language includes one of the following: java, C, C++, Python, C#, Node.js, Ruby, Objective-C, PHP.
  • any high-level programming language supported by the multi-language programming interface can be used as a default programming language, and is not limited to the high-level programming languages listed above, which will not be described again here.
  • control device also includes a high-level language program unit; the high-level language program unit is set on the programmable logic controller; or the high-level language program unit is set outside the programmable logic controller, and communicates with the programmable logic controller through the remote control device Logic controller is connected.
  • the number of high-level language program units is greater than or equal to 1, and when the number of high-level language program units is greater than 1, the default programming languages used among the multiple high-level language program units are different.
  • the number of high-level language program units can be multiple, and can be set on the programmable logic controller; they can also be high-level language program units on the user's program development equipment, and the program development equipment is in conjunction with the programmable logic controller. There are remote communication functions between logic controllers. According to actual needs, different preset programming languages can be used among multiple high-level language program units, or several high-level language program units or all high-level language program units can be selected to use the same preset programming language. I will not go into details here. .
  • the control device of the programmable logic controller provided by the embodiment of the present invention has the same technical features as the control method of the programmable logic controller provided by the above embodiment, so it can also solve the same technical problem and achieve the same technical effect.
  • An embodiment of the present invention also provides a programmable logic controller, which includes the control device of the programmable logic controller in any of the above embodiments.
  • the programmable logic controller provided by the embodiment of the present invention includes the control device of the programmable logic controller in the above embodiment. Therefore, the programmable logic controller provided by the embodiment of the present invention also has the beneficial effects described in the above embodiment. No further details will be given here.
  • connection In the description of the embodiments of the present invention, unless otherwise clearly stated and limited, the terms “installation”, “connection” and “connection” should be understood in a broad sense. For example, it can be a fixed connection or a detachable connection, or Integrated connection; it can be mechanical or electrical; it can be directly connected or through an intermediate medium Continuous connection can be the internal connection between two components.
  • connection a fixed connection or a detachable connection, or Integrated connection
  • continuous connection can be the internal connection between two components.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

本申请公开了一种可编程逻辑控制器的控制方法和可编程逻辑控制器,控制方法包括:通过多语言编程接口接收高级语言程序单元发送的调用接口申请;多语言编程接口基于调用接口申请调用远程控制接口,以及通过远程控制接口控制可编程逻辑控制器执行相应的编程动作。本申请通过设置多语言编程接口,能够接收预设编程语言发送的申请指令,并基于该申请指令通过远程控制接口控制可编程逻辑控制器动作,解决了现有技术中可编程逻辑控制器不支持使用高级编程语言所导致的增加了用户的学习成本以及降低了可编程逻辑控制器的适用性的技术问题,实现了提高可编程逻辑控制器的适用性、降低用户的学习成本的技术效果。

Description

可编程逻辑控制器的控制方法和可编程逻辑控制器 技术领域
本发明涉及可编程逻辑控制器的控制技术领域,尤其涉及一种可编程逻辑控制器的控制方法和可编程逻辑控制器。
背景技术
现阶段,可编程逻辑控制器(Programmable Logic Controller,PLC)的编程语言包括以下五种:梯形图(LD)、指令表(IL)、功能块(FBD)、顺序功能图(SFC)和结构化文本(ST)。
但是PLC对于编程中的高级语言支持不友好,例如C++,python等高级语言,由于PLC不支持使用高级语言进行工程的开发与程序的编写,这就导致了工程师们不得不在学习高级语言的基础上额外学习PLC所支持的上述五种编程语言,增加了学习成本,降低了PLC的适用性。
发明内容
本发明实施例提供一种可编程逻辑控制器的控制方法和可编程逻辑控制器,解决了现有技术中可编程逻辑控制器不支持使用高级编程语言所导致的增加了用户的学习成本以及降低了可编程逻辑控制器的适用性的技术问题。
第一方面,本发明实施例提供了一种可编程逻辑控制器的控制方法,所述控制方法包括:
通过多语言编程接口接收高级语言程序单元发送的调用接口申请,其中,所述调用接口申请为通过预设编程语言发送的申请指令;
所述多语言编程接口基于所述调用接口申请调用远程控制接口,其中,所述远程控制接口设置于所述可编程逻辑控制器上;以及
通过所述远程控制接口控制可编程逻辑控制器执行相应的编程动作。
第二方面,本发明实施例还提供了一种可编程逻辑控制器的控制装置,所述控制装置包括多语言编程接口以及远程控制接口;
所述多语言编程接口用于接收高级语言程序单元发送的调用接口申请,其中, 所述调用接口申请为通过预设编程语言发送的申请指令,所述多语言编程接口还用于基于所述调用接口申请调用所述远程控制接口;
所述远程控制接口用于控制可编程逻辑控制器执行相应的编程动作,其中,所述远程控制接口设置于所述可编程逻辑控制器上。
第三方面,本发明实施例还提供了一种可编程逻辑控制器,所述可编程逻辑控制器包括上述任意实施例中的可编程逻辑控制器的控制装置。
本发明实施例公开了一种可编程逻辑控制器的控制方法和可编程逻辑控制器,控制方法包括:通过多语言编程接口接收高级语言程序单元发送的调用接口申请;多语言编程接口基于调用接口申请调用远程控制接口,以及通过远程控制接口控制可编程逻辑控制器执行相应的编程动作。本申请通过设置多语言编程接口,能够接收预设编程语言发送的申请指令,并基于该申请指令通过远程控制接口控制可编程逻辑控制器动作,解决了现有技术中可编程逻辑控制器不支持使用高级编程语言所导致的增加了用户的学习成本以及降低了可编程逻辑控制器的适用性的技术问题,实现了提高可编程逻辑控制器的适用性、降低用户的学习成本的技术效果。
附图说明
图1是本发明实施例提供的一种可编程逻辑控制器的控制方法的流程图;
图2是本发明实施例提供的另一种可编程逻辑控制器的控制方法的流程图;
图3是本发明实施例提供的一种高级语言程序单元与可编程逻辑控制器的结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
需要说明的是,本发明的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于限定特定顺序。本发明下述各个实施例可以单独执行,各个实施例之间也可以相互结合执行,本发明实施例对此不作具体限制。
图1是本发明实施例提供的一种可编程逻辑控制器的控制方法的流程图。如 图1所示,该可编程逻辑控制器的控制方法具体包括如下步骤:
S101,通过多语言编程接口接收高级语言程序单元发送的调用接口申请,其中,调用接口申请为通过预设编程语言发送的申请指令。
具体地,高级语言程序单元为能够实现使用高级编程语言进行程序编写的客户端APP(Application,应用程序)或其他编程设备等,用户通过高级语言程序单元上设置的应用程序编程接口(API,Application Programming Interface)向可编程逻辑控制器上设置的多语言编程接口发送调用接口申请,该调用接口申请可以为传统的可编程逻辑控制器不支持的高级编程语言,多语言编程接口通过RPC(Remote Procedure Call,远程过程调用)调用的方式与高级语言程序单元进行通信交互。
可选地,多语言编程接口包括gRPC接口。
具体地,RPC框架实际是提供了一套机制,使得应用程序之间可以进行通信,而且也遵从Server/Client模型。使用的时候客户(Client)端(本申请中为高级语言程序单元)调用服务器(Server)端提供的接口(本申请中为可编程逻辑控制器上的远程控制接口)就像是调用本地的函数一样。gRPC可以通过protobuf来定义接口,从而可以有更加严格的接口约束条件,protobuf是一种混合语言数据标准,全称是Google Protocol Buffer,是一种高效轻便的结构化数据存储方式,可用于(数据)通信协议、数据存储等,由于protobuf支持诸如Java、C++、Python等多种高级编程语言,从而使得gRPC接口具有支持多种高级编程语言的能力。本申请利用gRPC接口作为多语言编程接口来调用可编程逻辑控制器的远程控制接口,使得可编程逻辑控制器也具有支持多种高级编程语言的编程能力。
S102,多语言编程接口基于调用接口申请调用远程控制接口,其中,远程控制接口设置于可编程逻辑控制器上。
S103,以及通过远程控制接口控制可编程逻辑控制器执行相应的编程动作。
具体地,在多语言编程接口接收到高级语言程序单元发送的调用接口申请之后,可以基于该调用接口申请通过调用远程控制(RSC,Remote System Control)接口来控制可编程逻辑控制器的硬件执行相应的编程动作。可编程逻辑控制器的硬件结构主要包括I/O模块、通信模块、信号模块等,可采用Intel或是ARM架构的处理器,其操作系统可以采用RT-Linux系统,使得可编程逻辑控制器具备确定性实时功能。
本申请通过设置多语言编程接口,能够接收预设编程语言发送的申请指令, 并基于该申请指令通过远程控制接口控制可编程逻辑控制器动作,解决了现有技术中可编程逻辑控制器不支持使用高级编程语言所导致的增加了用户的学习成本以及降低了可编程逻辑控制器的适用性的技术问题,实现了提高可编程逻辑控制器的适用性、降低用户的学习成本的技术效果。同时,通过使用本申请所提供的可编程逻辑控制器的控制方法,使得可编程逻辑控制器能够适用于多种高级编程语言,用户可以直接移植已经成型的算法或程序工程,进一步提高了可编程逻辑控制器的程序移植性,减少了程序开发的时间。
在上述各技术方案的基础上,图2是本发明实施例提供的另一种可编程逻辑控制器的控制方法的流程图,如图2所示,在S102多语言编程接口基于调用接口申请调用远程控制接口之后,该可编程逻辑控制器的控制方法还包括:
S201,多语言编程接口接收高级语言程序单元发送的程序编辑指令。
具体地,在多语言编程接口基于调用接口申请调用远程控制接口之后,会给高级语言程序单元反馈一个调用完成指令,高级语言程序单元在接收到给调用完成指令之后会将获取到的程序编辑指令通过多语言编程接口传送至可编程逻辑控制器,从而使得可编程逻辑控制器能够执行该程序编辑指令下的编程动作。
可选地,预设编程语言包括以下之一:java、C、C++、Python、C#、Node.js、Ruby、Objective-C、PHP。
具体来说,多语言编程接口支持的高级编程语言均可作为预设编程语言,并不限于上述所列举的几种高级编程语言,在此不再赘述。
图3是本发明实施例提供的一种高级语言程序单元与可编程逻辑控制器的结构图。
可选地,高级语言程序单元设置于可编程逻辑控制器上,或者,高级语言程序单元设置于可编程逻辑控制器之外,并通过远程控制装置与可编程逻辑控制器相连接。
具体地,以可编程逻辑控制器为PLCnext为例,PLCnext的全称为PLCnext Technology,是一种开放式可编程控制平台,以多语言编程接口为gRPC接口为例,如图3所示,gRPC-PLCnext RSC client app指的是一个可以调用gRPC接口来控制PLCnext的高级语言程序单元,gRPC-PLCnext RSC service app指的是设置有gRPC接口的功能拓展模块,PLCnext Device为PLC装置,参见图3,gRPC-PLCnext RSC client app可以设置于PLCnext上,并且数量可以为多个,图3中示例性地给出了具有两个gRPC-PLCnext RSC client app的示意图,多个gRPC-PLCnext RSC  client app均通过gRPC接口与gRPC-PLCnext RSC service app相连接,gRPC-PLCnext RSC service app通过RSC接口控制PLCnext Technology的硬件执行编程动作。
参见图3,图3中还示例性地给出了gRPC-PLCnext RSC client app设置于PLCnext之外的示意图,同理,设置于PLCnext之外的gRPC-PLCnext RSC client app也可以为多个,图3中以Other Device A和Other Device B来区分不同的高级语言程序单元所在的设备。
可选地,高级语言程序单元的数量大于等于1,且当高级语言程序单元的数量大于1时,多个高级语言程序单元之间所使用的预设编程语言均不相同。
具体地,如图3所示,高级语言程序单元的数量可以为多个,且不同的高级语言程序单元之间可以使用不同的预设编程语言对可编程逻辑控制器进行控制,提升了可编程逻辑控制器的适用性,需要说明的是,根据实际需要,多个高级语言程序单元中的其中几个或者全部也可以使用相同的预设编程语言,在此不再赘述。
本发明实施例还提供了一种可编程逻辑控制器的控制装置,控制装置包括多语言编程接口以及远程控制接口;
多语言编程接口用于接收高级语言程序单元发送的调用接口申请,其中,调用接口申请为通过预设编程语言发送的申请指令,多语言编程接口还用于基于所述调用接口申请调用所述远程控制接口;
远程控制接口用于控制可编程逻辑控制器执行相应的编程动作,其中,远程控制接口设置于可编程逻辑控制器上。
具体地,可编程逻辑控制器在运行时,通过远程控制接口来提供控制接口,多语言编程接口会调用该远程控制接口,用户的程序开发设备(即上述高级语言程序单元)只需要调用多语言编程接口即可实现对可编程逻辑控制器的硬件模块的控制。
可选地,多语言编程接口还用于接收高级语言程序单元发送的程序编辑指令。
具体地,在多语言编程接口基于调用接口申请调用远程控制接口之后,会给高级语言程序单元反馈一个调用完成指令,高级语言程序单元在接收到给调用完成指令之后会将获取到的程序编辑指令通过多语言编程接口传送至可编程逻辑控制器,从而使得可编程逻辑控制器能够执行该程序编辑指令下的编程动作。
可选地,多语言编程接口包括gRPC接口。
具体地,RPC框架实际是提供了一套机制,使得应用程序之间可以进行通信, 而且也遵从Server/Client模型。本申请利用gRPC接口作为多语言编程接口来调用可编程逻辑控制器的远程控制接口,使得可编程逻辑控制器也具有支持多种高级编程语言的编程能力。
可选地,预设编程语言包括以下之一:java、C、C++、Python、C#、Node.js、Ruby、Objective-C、PHP。
具体来说,多语言编程接口支持的高级编程语言均可作为预设编程语言,并不限于上述所列举的几种高级编程语言,在此不再赘述。
可选地,控制装置还包括高级语言程序单元;高级语言程序单元设置于可编程逻辑控制器上;或者,高级语言程序单元设置于可编程逻辑控制器之外,并通过远程控制装置与可编程逻辑控制器相连接。
可选地,高级语言程序单元的数量大于等于1,且当高级语言程序单元的数量大于1时,多个高级语言程序单元之间所使用的预设编程语言均不相同。
具体地,参见图3,高级语言程序单元的数量可以为多个,可以设置于可编程逻辑控制器上;也可以为用户的程序开发设备上的高级语言程序单元,该程序开发设备与可编程逻辑控制器之间具有远程通信功能。根据实际需要,多个高级语言程序单元之间可以使用不同的预设编程语言,也可以选择其中几个高级语言程序单元或者全部高级语言程序单元使用相同的预设编程语言,在此不再赘述。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例提供的可编程逻辑控制器的控制装置,与上述实施例提供的可编程逻辑控制器的控制方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例还提供了一种可编程逻辑控制器,该可编程逻辑控制器包括上述任意实施例中的可编程逻辑控制器的控制装置。
本发明实施例提供的可编程逻辑控制器包括上述实施例中的可编程逻辑控制器的控制装置,因此本发明实施例提供的可编程逻辑控制器也具备上述实施例中所描述的有益效果,此处不再赘述。
在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间 接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
最后应说明的是,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (13)

  1. 一种可编程逻辑控制器的控制方法,其特征在于,所述控制方法包括:
    通过多语言编程接口接收高级语言程序单元发送的调用接口申请,其中,所述调用接口申请为通过预设编程语言发送的申请指令;
    所述多语言编程接口基于所述调用接口申请调用远程控制接口,其中,所述远程控制接口设置于所述可编程逻辑控制器上;以及
    通过所述远程控制接口控制可编程逻辑控制器执行相应的编程动作。
  2. 根据权利要求1所述的可编程逻辑控制器的控制方法,其特征在于,在所述多语言编程接口基于所述调用接口申请调用远程控制接口之后,所述控制方法还包括:
    所述多语言编程接口接收所述高级语言程序单元发送的程序编辑指令。
  3. 根据权利要求1所述的可编程逻辑控制器的控制方法,其特征在于,所述多语言编程接口包括gRPC接口。
  4. 根据权利要求1所述的可编程逻辑控制器的控制方法,其特征在于,所述预设编程语言包括以下之一:java、C、C++、Python、C#、Node.js、Ruby、Objective-C、PHP。
  5. 根据权利要求1所述的可编程逻辑控制器的控制方法,其特征在于,所述高级语言程序单元设置于可编程逻辑控制器上,或者,所述高级语言程序单元设置于所述可编程逻辑控制器之外,并通过远程控制装置与所述可编程逻辑控制器相连接。
  6. 根据权利要求1所述的可编程逻辑控制器的控制方法,其特征在于,所述高级语言程序单元的数量大于等于1,且当所述高级语言程序单元的数量大于1时,多个所述高级语言程序单元之间所使用的所述预设编程语言均不相同。
  7. 一种可编程逻辑控制器的控制装置,其特征在于,所述控制装置包括多语言编程接口以及远程控制接口;
    所述多语言编程接口用于接收高级语言程序单元发送的调用接口申请,其中,所述调用接口申请为通过预设编程语言发送的申请指令,所述多语言编程接口还用于基于所述调用接口申请调用所述远程控制接口;
    所述远程控制接口用于控制可编程逻辑控制器执行相应的编程动作,其中,所述远程控制接口设置于所述可编程逻辑控制器上。
  8. 根据权利要求7所述的可编程逻辑控制器的控制装置,其特征在于,所述多语言编程接口还用于接收所述高级语言程序单元发送的程序编辑指令。
  9. 根据权利要求7所述的可编程逻辑控制器的控制装置,其特征在于,所述多语言编程接口包括gRPC接口。
  10. 根据权利要求7所述的可编程逻辑控制器的控制装置,其特征在于,所述预设编程语言包括以下之一:java、C、C++、Python、C#、Node.js、Ruby、Objective-C、PHP。
  11. 根据权利要求7所述的可编程逻辑控制器的控制装置,其特征在于,所述控制装置还包括所述高级语言程序单元;
    所述高级语言程序单元设置于可编程逻辑控制器上;
    或者,所述高级语言程序单元设置于所述可编程逻辑控制器之外,并通过远程控制装置与所述可编程逻辑控制器相连接。
  12. 根据权利要求7所述的可编程逻辑控制器的控制装置,其特征在于,所述高级语言程序单元的数量大于等于1,且当所述高级语言程序单元的数量大于1时,多个所述高级语言程序单元之间所使用的所述预设编程语言均不相同。
  13. 一种可编程逻辑控制器,其特征在于,所述可编程逻辑控制器包括上述权利要求7-12任一所述的可编程逻辑控制器的控制装置。
PCT/CN2023/096888 2022-05-31 2023-05-29 可编程逻辑控制器的控制方法和可编程逻辑控制器 WO2023231978A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210610289.3 2022-05-31
CN202210610289.3A CN114967586A (zh) 2022-05-31 2022-05-31 可编程逻辑控制器的控制方法和可编程逻辑控制器

Publications (1)

Publication Number Publication Date
WO2023231978A1 true WO2023231978A1 (zh) 2023-12-07

Family

ID=82958166

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/096888 WO2023231978A1 (zh) 2022-05-31 2023-05-29 可编程逻辑控制器的控制方法和可编程逻辑控制器

Country Status (2)

Country Link
CN (1) CN114967586A (zh)
WO (1) WO2023231978A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114967586A (zh) * 2022-05-31 2022-08-30 菲尼克斯(南京)智能制造技术工程有限公司 可编程逻辑控制器的控制方法和可编程逻辑控制器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012128720A (ja) * 2010-12-16 2012-07-05 Digital Electronics Corp クライアントコンピュータ、プログラマブル表示器、データ表示システムおよびそれらのプログラム
CN110493343A (zh) * 2019-08-22 2019-11-22 山东浪潮通软信息科技有限公司 一种基于opc的与多plc通讯的方法
CN114253210A (zh) * 2021-12-15 2022-03-29 昆船智能技术股份有限公司 基于Json-RPC的PLC通讯系统及方法
CN216351920U (zh) * 2021-10-25 2022-04-19 菲尼克斯(南京)智能制造技术工程有限公司 可编程逻辑控制器plc及可编程逻辑控制器plc系统
CN114967586A (zh) * 2022-05-31 2022-08-30 菲尼克斯(南京)智能制造技术工程有限公司 可编程逻辑控制器的控制方法和可编程逻辑控制器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012128720A (ja) * 2010-12-16 2012-07-05 Digital Electronics Corp クライアントコンピュータ、プログラマブル表示器、データ表示システムおよびそれらのプログラム
CN110493343A (zh) * 2019-08-22 2019-11-22 山东浪潮通软信息科技有限公司 一种基于opc的与多plc通讯的方法
CN216351920U (zh) * 2021-10-25 2022-04-19 菲尼克斯(南京)智能制造技术工程有限公司 可编程逻辑控制器plc及可编程逻辑控制器plc系统
CN114253210A (zh) * 2021-12-15 2022-03-29 昆船智能技术股份有限公司 基于Json-RPC的PLC通讯系统及方法
CN114967586A (zh) * 2022-05-31 2022-08-30 菲尼克斯(南京)智能制造技术工程有限公司 可编程逻辑控制器的控制方法和可编程逻辑控制器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: " Technology Enthusiasts. Revealing PLCnext Architecture Features and Core Components)", NANJING AUTOMATION AND INSTRUMENT ASSOCIATION, 24 April 2020 (2020-04-24), pages 1 - 3, XP093116464, Retrieved from the Internet <URL:www.njzdhyb.cn/537.html> [retrieved on 20240108] *
SCHOFIELD BORREGO BLANCO VIÑUELA BRAD JOÃO ENRIQUE, BORREGO J, BLANCO E, SWITZERLAND GENEVA: "Continuous Integration for PLC-based Control System Development", 18TH INT. CONF. ON ACC. AND LARGE EXP. PHYSICS CONTROL SYSTEMS ICALEPCS2021, 11 March 2022 (2022-03-11), pages 478 - 483, XP093116463, DOI: 10.18429/JACoW-ICALEPCS2021-TUPV035 *

Also Published As

Publication number Publication date
CN114967586A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
WO2023231978A1 (zh) 可编程逻辑控制器的控制方法和可编程逻辑控制器
WO2016188344A1 (zh) 一种基于软处理器的图像信号源及其处理图像信号的方法
JP2017520853A (ja) 仮想上位機器に基づく数値制御システム
CN102830654A (zh) 基于Android平台的开放式数控系统及其中进行二次开发的方法
US20220366913A1 (en) Systems and method for third party natural language understanding service integration
WO2018192178A1 (zh) 机器人点到点运动控制方法和系统
CN106945045B (zh) 基于ros和orocos的机器人控制的通信方法和系统
GB2471484A (en) A software framework for creating new software components in compliance with an existing multimedia application programming interface
JP3651573B2 (ja) ファクトリーオートメーションシステムの制御方法、ファクトリーオートメーションシステムの中央制御装置
CN114827268B (zh) 远程调试方法和设备
WO2023082531A1 (zh) Avs调节系统、方法、装置、设备及存储介质
US10755212B2 (en) Dynamic process execution architecture with disassociated resource control
CN107579847A (zh) 无源光网络地区自适应系统的数据配置方法
CN113760347B (zh) 数据处理
CN103064676A (zh) 一种对开放服务网关中组件的控制方法
US20220276641A1 (en) Method and industrial controller for the synchronized calling of a function block in a control program having opc ua
WO2018192177A1 (zh) 基于ros和orocos的机器人控制方法和系统
CN110995867A (zh) 一种用于人机交互的通信系统和机器人
JP3226163U (ja) 会話型ソフトウェアを用いた制御装置
CN109309692A (zh) 一种基于远程控制的多任务离线交互处理系统及被控终端
US20230408987A1 (en) Artificial intelligence model control system
CN109062591A (zh) 一种亚马逊Alexa技能无缝升级控制功能的方法
CN114675594B (zh) 异构plc协作控制系统、方法、装置、设备和介质
WO2022190418A1 (ja) 開発支援装置、開発支援方法および開発支援プログラム
JP2013008179A (ja) 人間系アプリケーション装置、システム系アプリケーション装置及びアプリケーションフロー制御装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23815157

Country of ref document: EP

Kind code of ref document: A1