CN112559075B - IOC remote control system - Google Patents
IOC remote control system Download PDFInfo
- Publication number
- CN112559075B CN112559075B CN202011508231.5A CN202011508231A CN112559075B CN 112559075 B CN112559075 B CN 112559075B CN 202011508231 A CN202011508231 A CN 202011508231A CN 112559075 B CN112559075 B CN 112559075B
- Authority
- CN
- China
- Prior art keywords
- ioc
- program
- tool
- management
- procserv
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44594—Unloading
-
- G—PHYSICS
- G21—NUCLEAR PHYSICS; NUCLEAR ENGINEERING
- G21B—FUSION REACTORS
- G21B1/00—Thermonuclear fusion reactors
- G21B1/25—Maintenance, e.g. repair or remote inspection
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E30/00—Energy generation of nuclear origin
- Y02E30/10—Nuclear fusion reactors
Abstract
The invention discloses an IOC remote control system, which comprises a terminal provided with a Linux operating system, wherein the Linux operating system is provided with an IOC program, a procServ tool and a management-procs tool, and the procServ tool and the management-procs tool are used for realizing the background operation and the process management of the IOC program; when the IOC program works, a user accesses the Shell of the IOC program; adding the subprocess of the procServ tool into the system service of Linux according to the management-procs tool, so that the IOC program can be automatically started after being started; the management-procs tool is also used to control the starting or stopping of the processes of the IOC program. The invention aims to provide an IOC remote control system, which enables an IOC program to automatically run in a background after being started, provides a remote control interface for a user and is convenient for the user to perform centralized control and management on the IOC program.
Description
Technical Field
The invention relates to the technical field of nuclear fusion, in particular to an IOC remote control system.
Background
The tokamak is a large-scale fusion experimental device which is formed by a plurality of subsystems. In the tokamak experiment process, different subsystems need to be effectively managed and scheduled, the exchange of data and commands among the subsystems is involved in the process, and meanwhile, experiment operation control personnel are required to be capable of timely mastering the operation state of each subsystem. If the communication protocol is independently defined for each subsystem to obtain the state information of the subsystem, the difficulty of later maintenance and expansion is extremely high.
The EPICS is an open-source software framework and provides a reliable platform for realizing a distributed control system. The IOC program in the software package is used as a server and is responsible for finishing specific input/output actions and local control tasks, and a channel access protocol is used for issuing self state information to the client or receiving instructions from the client from a network. For a fusion experimental device, the condition monitoring of subsystems and the sharing of operation data among the subsystems can be conveniently realized by using the IOC and the channel access protocol.
The user directly starts the IOC program through the script st.cmd under the default condition, but the method is inconvenient to do and the user needs to manually start the IOC program after starting the computer. If the IOC program is forgotten to run, the experimenter cannot monitor the running state of the system through EPICS.
Disclosure of Invention
The invention aims to provide an IOC remote control system, which enables an IOC program to automatically run in a background after being started, provides a remote control interface for a user and is convenient for the user to carry out centralized control and management on the IOC.
The invention is realized by the following technical scheme:
an IOC remote control system is characterized by comprising a terminal provided with a Linux operating system, wherein an IOC program, a procServ tool and a management-procs tool are arranged on the Linux operating system, and the procServ tool and the management-procs tool are used for realizing background operation and process management of the IOC program;
when the system works, a user accesses the Shell of the IOC program, and adds the IOC program as a subprocess of the procServ tool to a system service of a Linux operating system according to the management-procs tool, so that the IOC program can be automatically started after being started; and controlling the starting or stopping of the process of the IOC program by utilizing the management-procs tool.
Preferably, the system further comprises an IOC-manager program, wherein the IOC-manager program runs on each IOC server and is started together with the Linux operating system; when the IOC-manager program receives an HTTP request, the IOC-manager program remotely controls the process of the IOC program according to the HTTP request.
Preferably, the IOC-manager program is provided with an IOC management module, the IOC management module is provided with a plurality of subunits, and when the subunits are clicked, the program background sends a corresponding HTTP request to the IOC host according to an IP address of the IOC host.
Preferably, the subunits comprise a promoter subunit, a stop subunit and an application configuration subunit.
Preferably, when the sub-promoter unit is clicked, a program background sends a GET request to the corresponding IOC server, and after the IOC-manager program on the IOC server receives the GET request, the procServ tool is used to view the running state of the IOC program; if the IOC program is not started, starting the IOC program; and after the IOC program is successfully started, the user receives corresponding prompt information.
Preferably, when the application configuration subunit is clicked, the program background firstly modifies the state of the PV archiving storage according to the Archived attribute of the PV; then sending a request to the corresponding IOC host to enable the IOC-manager program to store the SDD in the database as a local JSON configuration file; then the IOC-manager program generates a db file of an EPICS IOC, a req file of an autosave module and a command script file of the IOC program by using the JSON configuration file; and finally restarting the IOC program to enable the new configuration file to take effect.
By default, the user directly starts the IOC program through the script st.cmd, and therefore the user needs to manually start the IOC program after starting up each time. If the IOC program is forgotten to run, the experimenter cannot monitor the running state of the IOC program through EPICS. Therefore, it is highly desirable for the experimenter that the IOC program is capable of self-starting at boot time. Based on this, after long-time research, the inventor designs the technical scheme of the application, so that the IOC program can automatically run in the background after being started, a remote control interface can be provided for a user, and the user can conveniently and centrally control and manage the IOC.
In the design process of the scheme, the inventor considers that the IOC process does not support to be directly put into the background operation through the nohup command, so a procServ tool is added, and the background operation and the process management of the IOC are realized in the Linux environment by using the procServ tool (the procServ is an open-source software tool which operates a process server in a background manner in a system service manner and is used for enabling the IOC by one sub-process). Meanwhile, an IOC-manager program of the Web server application program is written, and the IOC-manager program supports remote control over the process of the IOC program on the server through an HTTP protocol, so that a user can conveniently perform centralized control and management on the IOC program.
Compared with the prior art, the invention has the following advantages and beneficial effects:
in the scheme, a procServ tool is arranged, so that an IOC program can automatically run in a background after being started, and meanwhile, a Web server application program IOC-manager is written to provide a remote control interface for a user, so that the user can conveniently and centrally control and manage the IOC.
Drawings
The accompanying drawings, which are included to provide a further understanding of the embodiments of the invention and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the invention and together with the description serve to explain the principles of the invention. In the drawings:
FIG. 1 is a schematic structural diagram of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to examples and accompanying drawings, and the exemplary embodiments and descriptions thereof are only used for explaining the present invention and are not meant to limit the present invention.
An IOC remote control system, as shown in fig. 1, includes a terminal installed with a Linux operating system, on which an IOC program, a procServ tool and a management-procs tool are installed, where the procServ tool and the management-procs tool are used to implement background operation and process management on the IOC program.
procServ is an open-source software tool that runs a process server in the background in a system-service fashion, and fork starts an IOC program with a sub-process. When the system works, a user accesses the Shell of the IOC program and combines a tool management-procs written by Python, the user can add an instance (sub-process) of procServ to the systemd system service of Linux, so that the IOC program is automatically started after being started; the user can also conveniently control the starting and stopping of the IOC process by using a series of commands provided by the management-procs, wherein the commands provided by the management-procs comprise:
creating a procServ instance newly by the manager-procs add, and adding the procServ instance into the system service;
the management-procs remove the procServ instance from the system service;
a scope-procs start starts a procServ instance;
the management-procs stop stops the procServ instance;
the management-procs status checks the status of all procServ instances.
Further, in the scheme, in order to realize remote control of the IOC program, based on a Spring Boot framework, a Web server application program IOC-manager is developed by using Java language, and the IOC-manager program runs on each IOC server and is started together with an operating system.
In the scheme, the ioc-manager program is used for monitoring a specific port, and the port receives an HTTP request from a client and executes a corresponding command according to the content of the request. For example, updating the configuration file of the IOC program, starting or stopping the IOC process, etc., thereby achieving the purpose of remote control. Under a Linux operating system, an IOC-manager program indirectly controls the progress of an IOC program by using a procServ tool; under the Windows operating system, the IOC program is directly operated by the process name.
It should be noted that the port is not unique and can be specified according to actual requirements.
Fig. 1 shows a basic architecture of a complete configuration at an IOC host (using Linux as an example) side, in this embodiment, an IOC-manager program and a procServ tool have been used to implement a remote control interface of an IOC process, and the IOC program can be remotely controlled only by sending an HTTP request to the IOC-manager program on the IOC host.
In addition, in order to control and manage the IOC program, an IOC management module is arranged on the IOC-manager program, and the IOC management module is provided with three subunits: a promoter unit, a stop subunit and an application configuration subunit. When a user clicks any subunit, the program background sends a corresponding HTTP request to the IOC host according to the IP address of the IOC host.
Specifically, when a user clicks a promoter unit, a program background sends a GET request to a corresponding IOC server; after receiving the request, an IOC-manager on the IOC server checks the running state of the IOC program by using a procServ tool, and if the IOC program is not started, the IOC program is started; after the IOC program is successfully started, the user receives a corresponding prompt.
When a user clicks the stop subunit, the program background sends a GET request to the corresponding IOC server, an IOC-manager on the IOC server receives the request, and then checks the running state of the IOC program by using a procServ tool, and if the IOC program is not closed, the IOC program is closed.
When a user clicks an application configuration subunit, a program background firstly modifies the PV filing storage state according to the Archived attribute of the PV; then sending a request to a corresponding IOC host, and storing the SDD in the database as a local JSON configuration file by an IOC-manager program; then, the IOC-manager program generates a db file of the EPICS IOC, a req file of the autosave module and a command script file of the IOC program by using the JSON configuration file; and finally restarting the IOC program to enable the new configuration file to take effect.
In the application, the program background is a web backend program for managing the IOC.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.
Claims (2)
1. An IOC remote control system is characterized by comprising a terminal provided with a Linux operating system, wherein an IOC program, a procServ tool and a management-procs tool are arranged on the Linux operating system, and the procServ tool and the management-procs tool are used for realizing background operation and process management of the IOC program;
when the system works, a user accesses the Shell of the IOC program, and adds the IOC program as a subprocess of the procServ tool to a system service of a Linux operating system according to the management-procs tool, so that the IOC program can be automatically started after being started; controlling the starting or stopping of the process of the IOC program by utilizing the management-procs tool;
the system also comprises an IOC-manager program, wherein the IOC-manager program runs on each IOC server and is started together with the Linux operating system; when the IOC-manager program receives an HTTP request, the IOC-manager program remotely controls the process of the IOC program according to the HTTP request;
the IOC-manager program is provided with an IOC management module, the IOC management module is provided with a plurality of subunits, and when the subunits are clicked, a program background can send corresponding HTTP requests to an IOC host according to the IP address of the IOC host;
the subunits comprise a promoter subunit, a stop subunit and an application configuration subunit;
when the application configuration subunit is clicked, the program background firstly modifies the PV filing storage state according to the Archived attribute of the PV; then sending a request to the corresponding IOC host to enable the IOC-manager program to store the SDD in the database as a local JSON configuration file; then the IOC-manager program generates a db file of an EPICS IOC, a req file of an autosave module and a command script file of the IOC program by using the JSON configuration file; and finally restarting the IOC program to enable the new configuration file to take effect.
2. The IOC remote control system according to claim 1, wherein when the sub-promoter unit is clicked, a program background sends a GET request to the corresponding IOC server, and after the IOC-manager program on the IOC server receives the GET request, the procServ tool is used to view the running state of the IOC program; if the IOC program is not started, starting the IOC program; and after the IOC program is successfully started, the user receives corresponding prompt information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011508231.5A CN112559075B (en) | 2020-12-18 | 2020-12-18 | IOC remote control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011508231.5A CN112559075B (en) | 2020-12-18 | 2020-12-18 | IOC remote control system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112559075A CN112559075A (en) | 2021-03-26 |
CN112559075B true CN112559075B (en) | 2022-02-01 |
Family
ID=75031725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011508231.5A Active CN112559075B (en) | 2020-12-18 | 2020-12-18 | IOC remote control system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112559075B (en) |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6922746B2 (en) * | 2002-03-04 | 2005-07-26 | Intel Corporation | Data processing system preventing configuration cycles to permit control procedure selection for access to attached devices |
US6895480B2 (en) * | 2002-12-10 | 2005-05-17 | Lsi Logic Corporation | Apparatus and method for sharing boot volume among server blades |
JP4385900B2 (en) * | 2004-09-10 | 2009-12-16 | セイコーエプソン株式会社 | COMMUNICATION SETTING PROGRAM, START PROGRAM, COMMUNICATION SETTING METHOD, AND APPLICATION START METHOD |
US7447806B2 (en) * | 2005-09-22 | 2008-11-04 | International Business Machines Corporation | Method and apparatus for centralization configuration of data processing systems |
US8914783B2 (en) * | 2008-11-25 | 2014-12-16 | Fisher-Rosemount Systems, Inc. | Software deployment manager integration within a process control system |
US9141580B2 (en) * | 2010-03-23 | 2015-09-22 | Citrix Systems, Inc. | Systems and methods for monitoring and maintaining consistency of a configuration |
CN202134946U (en) * | 2011-08-03 | 2012-02-01 | 李健龙 | Battery remote control system |
CN202486599U (en) * | 2012-02-22 | 2012-10-10 | 中国科学院上海应用物理研究所 | Distributed centralized control system |
WO2015099767A1 (en) * | 2013-12-27 | 2015-07-02 | Intel Corporation | Scalable input/output system and techniques |
CN104009883A (en) * | 2014-05-09 | 2014-08-27 | 烽火通信科技股份有限公司 | Computer resource centralized remote real-time monitoring system and method |
CN104506611A (en) * | 2014-12-22 | 2015-04-08 | 浪潮电子信息产业股份有限公司 | Method for remote management of Linux operating system |
CN105739987B (en) * | 2016-02-03 | 2018-12-11 | 成都四方伟业软件股份有限公司 | The system framework of rapid build JavaWeb application towards SOA |
CN106094583A (en) * | 2016-06-13 | 2016-11-09 | 中国科学院等离子体物理研究所 | A kind of control system cross-platform data transmission realizing method based on EPICS |
US9621853B1 (en) * | 2016-06-28 | 2017-04-11 | At&T Intellectual Property I, L.P. | Service orchestration to support a cloud-based, multi-party video conferencing service in a virtual overlay network environment |
GB2551813B (en) * | 2016-06-30 | 2020-01-08 | Sophos Ltd | Mobile device policy enforcement |
CN106532770B (en) * | 2016-11-30 | 2019-10-18 | 上海电力学院 | Inverter control method based on fuzzy PCI and PR parallel connection complex controll |
CN106647330B (en) * | 2016-12-23 | 2019-09-17 | 核工业西南物理研究院 | A kind of Plasma shape real-time reconstructing system and method applied to tokamak |
US10719760B2 (en) * | 2017-04-09 | 2020-07-21 | Intel Corporation | Neural network scheduling mechanism |
US10489170B2 (en) * | 2017-06-19 | 2019-11-26 | Salesforce.Com, Inc. | Application warmup engine |
-
2020
- 2020-12-18 CN CN202011508231.5A patent/CN112559075B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN112559075A (en) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021237829A1 (en) | Method and system for integrating code repository with computing service | |
US9307055B1 (en) | Method and system for concurrent web based multitasking support | |
US8688772B2 (en) | Method and apparatus for web based storage on demand | |
US7689989B2 (en) | Thread monitoring using shared memory | |
CN111274001B (en) | Micro-service management platform | |
US8255476B2 (en) | Automated tape drive sharing in a heterogeneous server and application environment | |
CN105553741A (en) | Automatic deployment method for application system based on cloud computing | |
CN108173840B (en) | Intelligent logistics terminal integration system based on cloud platform | |
CN112799786A (en) | Exit method, device, equipment and storage medium of micro-service instance | |
CN110716793B (en) | Method, device, equipment and storage medium for executing distributed transaction | |
CN113220416B (en) | Cluster node expansion system based on cloud platform, implementation method and operation method | |
WO2017124799A1 (en) | Firmware management method and device | |
CN104899274A (en) | High-efficiency remote in-memory database access method | |
CN103049268A (en) | Naplet based application development and management system | |
US20050188068A1 (en) | System and method for monitoring and controlling server nodes contained within a clustered environment | |
CN112579267A (en) | Decentralized big data job flow scheduling method and device | |
CN114138754A (en) | Software deployment method and device based on Kubernetes platform | |
CN111158752A (en) | SAAS multi-version control system and use method thereof | |
CN116841705A (en) | Distributed scheduling monitoring system based on cloud protogenesis and deployment method thereof | |
CN113242312A (en) | Electric power real-time data transmission middleware and asynchronous data access method | |
CN112559075B (en) | IOC remote control system | |
CN112019362B (en) | Data transmission method, device, server, terminal, system and storage medium | |
CN111813430A (en) | Robot cluster intelligent updating and deploying method and system | |
CN111045697A (en) | Automatic rapid deployment method and system | |
CN103617077A (en) | Intelligent cloud migration method and system |
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 |