WO2023037524A1 - コントローラユニット及び汎用オペレーティングシステムの電源操作方法 - Google Patents

コントローラユニット及び汎用オペレーティングシステムの電源操作方法 Download PDF

Info

Publication number
WO2023037524A1
WO2023037524A1 PCT/JP2021/033423 JP2021033423W WO2023037524A1 WO 2023037524 A1 WO2023037524 A1 WO 2023037524A1 JP 2021033423 W JP2021033423 W JP 2021033423W WO 2023037524 A1 WO2023037524 A1 WO 2023037524A1
Authority
WO
WIPO (PCT)
Prior art keywords
general
operating system
purpose operating
unit
controller unit
Prior art date
Application number
PCT/JP2021/033423
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 三菱電機株式会社
Priority to JP2022506624A priority Critical patent/JP7066081B1/ja
Priority to CN202180100110.3A priority patent/CN117651941A/zh
Priority to PCT/JP2021/033423 priority patent/WO2023037524A1/ja
Publication of WO2023037524A1 publication Critical patent/WO2023037524A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Definitions

  • the present disclosure relates to a power operation method for a controller unit and a general-purpose operating system.
  • programmable controllers are often used as control devices to control equipment. This type of programmable controller realizes coordinated control of a large number of devices by executing applications on a real-time operating system, for example.
  • Patent Document 1 describes a control device having a configuration in which a distributed control CPU (Central Processing Unit) that executes a real-time OS (Operating System) and an information processing CPU that executes a general-purpose OS are connected via a serial interface.
  • a distributed control CPU Central Processing Unit
  • the distributed control CPU periodically measures the operating state of the information processing CPU, and determines whether or not to request the information processing CPU to execute a task according to the measured operating state. Thereby, the information processing load can be distributed.
  • the present disclosure has been made in view of the above circumstances, and aims to reduce the power consumption of a programmable controller equipped with a general-purpose operating system.
  • the controller unit of the present disclosure is a controller unit that constitutes a programmable controller, and includes real-time operating system execution means having a first processor that executes a real-time operating system, and a first processor that executes a general-purpose operating system.
  • the general-purpose operating system execution means having two processors, the real-time operating system execution means comprising receiving means for receiving instruction data for instructing power state changes including starting and stopping the general-purpose operating system; a power control circuit for booting the system, wherein the power control circuit is used to boot the general-purpose operating system when the instruction data for booting the general-purpose operating system is received by the receiving means; The execution means halts the general-purpose operating system when the instruction data for halting the general-purpose operating system is received by the receiving means.
  • FIG. 1 is a diagram showing the configuration of a control system according to Embodiment 1;
  • FIG. FIG. 2 shows a hardware configuration of a controller unit according to Embodiment 1;
  • FIG. 2 shows a functional configuration of a controller unit according to Embodiment 1;
  • FIG. 4 is a diagram for explaining device values according to the first embodiment;
  • 1 shows a configuration of a power supply operation circuit according to Embodiment 1;
  • FIG. FIG. 4 is a diagram showing the flow of operating the power supply of the general-purpose OS according to the first embodiment;
  • a PLC (Programmable Logic Controller) 100 has a controller unit 120 that starts and stops a general-purpose OS according to instructions from the outside.
  • the controller unit 120 activates the general-purpose OS in response to a request from an external device that requires information processing by the general-purpose OS, and stops the general-purpose OS when the information processing is completed.
  • the outline of the PLC 100 and the controller unit 120 will be described in order below.
  • the PLC 100 constitutes the control system 10 together with the switch 103 and the semiconductor manufacturing equipment 104, as shown in FIG.
  • the control system 10 corresponds to part of the FA system installed in the factory.
  • the control system 10 is connected to the cloud server 30 via a network 300 typified by the Internet.
  • the control system 10 is connected to an external system 20, which, like the control system 10, is a part of the FA system via an industrial network 200 within the factory.
  • the PLC 100 of the control system 10 is a control device that controls equipment. Specifically, the PLC 100 operates the production line of semiconductor products by controlling the semiconductor manufacturing equipment 104 according to the input including the state of the switch 103 .
  • the PLC 100 is a building block type programmable controller configured by combining a plurality of modules. Specifically, the PLC 100 includes a power supply module 110 that supplies power to other modules, a controller unit 120 that corresponds to a CPU (Central Processing Unit) module that controls the other modules and determines the operation of the PLC 100, and a switch 103.
  • a power supply module 110 that supplies power to other modules
  • a controller unit 120 that corresponds to a CPU (Central Processing Unit) module that controls the other modules and determines the operation of the PLC 100
  • a switch 103 for controlling the PLC 100.
  • the power supply module 110 supplies power to other modules via power lines in the base module 170, as indicated by the thick arrows in FIG.
  • the base module 170 has a PLC bus 171 as a signal line for communication between modules, as indicated by the dashed lines in FIG.
  • the controller unit 120 acquires data indicating the state of the switch 103 from the input module 130 and acquires data output from the semiconductor manufacturing apparatus 104 from the input module 140 via the base module 170 . Further, the controller unit 120 controls the semiconductor manufacturing equipment 104 by transmitting control instructions for the semiconductor manufacturing equipment 104 to the output module 150 via the base module 170 . Further, the controller unit 120 operates in cooperation with devices of the external system 20 via the base module 170 and network module 160 . Note that the controller unit 120 has a function of being connected to the network 300 and communicating directly without going through the base module 170 .
  • the external system 20 includes a PLC 21 composed of a plurality of modules similar to the PLC 100 of the control system 10, a network connection input module 22 connected to a device (not shown) and receiving a signal from the device, and a a network connection output module 23 that is connected to a device and outputs a signal to the device.
  • PLC 21 , network connection input module 22 and network connection output module 23 are all connected to industrial network 200 to communicate with network module 160 of PLC 100 .
  • PLC21 implement
  • the network connection input module 22 and the network connection output module 23 are devices that exhibit functions equivalent to those of the input module 140 and the output module 150 of the PLC 100 via the industrial network 200 .
  • the PLC 100 may perform control based on a signal input to the network connection input module 22 or may control equipment connected to the network connection output module 23 .
  • FIG. 2 shows an overview of the hardware configuration of the controller unit 120 as a computer.
  • the controller unit 120 includes, as its hardware configuration, a real-time OS execution unit 51 having a first processor 411 and a first main storage unit 412, and a general-purpose OS execution unit 52 having a second processor 421 and a second main storage unit 422. , an auxiliary storage unit 43 , an input unit 44 , an output unit 45 , and a communication unit 46 .
  • the first main memory unit 412 , the second main memory unit 422 , the auxiliary memory unit 43 , the input unit 44 , the output unit 45 and the communication unit 46 are all connected to the first processor 411 and the second processor 421 via the internal bus 47 . Connected.
  • the first processor 411 and the second processor 421 each include a CPU (Central Processing Unit) or MPU (Micro Processing Unit), which is an integrated circuit.
  • the first processor 411 implements various functions of the real-time OS execution unit 51 by executing the program 431 stored in the auxiliary storage unit 43, and executes processing described later.
  • the program 431 includes a real-time OS as software and a ladder program for controlling the device.
  • a real-time OS is an OS for real-time processing. In the real-time OS, an upper limit value of the time from the issuance of an instruction for executing the arithmetic processing to the completion of the arithmetic processing is defined in advance in order to guarantee the real-time nature of the arithmetic processing.
  • the second processor 421 implements various functions of the general-purpose OS execution unit 52 by executing the program 432 stored in the auxiliary storage unit 43, and executes the processing described later.
  • the program 432 includes a general-purpose OS as software and application software executed on the general-purpose OS.
  • a general-purpose OS is an OS for general information processing.
  • the general-purpose OS does not guarantee the upper limit of the execution time of arithmetic processing that is guaranteed in the real-time OS.
  • information processing by the general-purpose OS and application software on the general-purpose OS is not always required in the control system 10. FIG. Such information processing is limited in situations where it is required, for example, analysis of information when an abnormality occurs, and collection and analysis of data after operation for a certain period of time.
  • the first main memory unit 412 and the second main memory unit 422 each include a RAM (Random Access Memory).
  • a program 431 is loaded from the auxiliary storage unit 43 into the first main storage unit 412 .
  • the first main storage unit 412 is used as a work area for the first processor 411 .
  • the program 432 is loaded from the auxiliary storage unit 43 to the second main storage unit 422 .
  • the second main storage unit 422 is used as a work area for the second processor 421 .
  • the auxiliary storage unit 43 includes non-volatile memory represented by EEPROM (Electrically Erasable Programmable Read-Only Memory) and HDD (Hard Disk Drive).
  • the auxiliary storage unit 43 stores programs 431 and 432 as well as various data used for the processing of the first processor 411 and the second processor 421 .
  • Auxiliary storage unit 43 supplies data to be used by first processor 411 to first processor 411 and stores the data supplied from first processor 411 according to instructions from first processor 411 .
  • the auxiliary storage unit 43 supplies data to be used by the second processor 421 to the second processor 421 and stores the data supplied from the second processor 421 according to instructions from the second processor 421 .
  • auxiliary storage unit 43 may be provided separately.
  • the separately provided auxiliary storage unit 43 may be included in each of the real-time OS execution unit 51 and the general-purpose OS execution unit 52 .
  • the real-time OS execution unit 51 and the general-purpose OS execution unit 52 may be mounted on different boards, or may be mounted on a single board.
  • the real-time OS executing section 51 corresponds to an example of real-time operating system executing means having a first processor that executes a real-time OS in the controller unit 120 .
  • the general-purpose OS execution unit 52 corresponds to an example of general-purpose operating system execution means having a second processor that executes a general-purpose OS in the controller unit 120 .
  • the input unit 44 includes input devices typified by input keys and a pointing device.
  • the input unit 44 acquires information input by the user of the PLC 100 and notifies the first processor 411 and the second processor 421 of the acquired information.
  • Information acquired by the input unit 44 includes, for example, parameters that determine the operation of the PLC 100 .
  • the output unit 45 includes output devices typified by LEDs (Light Emitting Diodes), LCDs (Liquid Crystal Displays), and speakers.
  • the output unit 45 presents various information to the user according to instructions from the first processor 411 and the second processor 421 .
  • the communication unit 46 includes a network interface circuit for transmitting/receiving Ethernet frames with an external device, and a communication interface circuit for transmitting/receiving data via the PLC bus 171 in the base module 170 .
  • the communication unit 46 receives signals from the outside and outputs data indicated by the signals to the first processor 411 and the second processor 421 . Also, the communication unit 46 transmits a signal indicating the data output from the first processor 411 and the second processor 421 to an external device.
  • the controller unit 120 has the function of independently executing the real-time OS and the general-purpose OS. More specifically, as shown in FIG. 3, the controller unit 120 has the functions of a real-time OS executing section 51 executing a real-time OS, a general-purpose OS executing section 52 executing a general-purpose OS, and communicating between the OSs. and an inter-OS communication unit 53 for The inter-OS communication unit 53 corresponds to the internal bus 47 in FIG.
  • the real-time OS execution unit 51 includes a PLC bus communication I/F (Interface) 511 for communicating via the PLC bus 171, a network communication I/F 512 for communicating via the network 300, the network 300 and industrial A dedicated protocol communication unit 513 for communicating with a predetermined dedicated protocol via the network 200, and a device value management unit 514 for storing and managing a device value indicating the content of an instruction to change the power supply state to a general-purpose OS. , a control unit 515 that controls the components of the real-time OS execution unit 51, and a power operation circuit 516 that activates the general-purpose OS.
  • the device value managed by the device value management unit 514 corresponds to an example of instruction data for instructing a change in the power state including starting and stopping of the general-purpose OS.
  • the device value management unit 514 corresponds to an example of storage means for storing instruction data.
  • a PLC bus communication I/F 511 and a network communication I/F 512 correspond to the communication unit 46 respectively.
  • the PLC bus communication I/F 511 has a receiving circuit 5111 that receives data from modules other than the controller unit 120 via the PLC bus 171 and a transmitting circuit 5112 that transmits data to the module.
  • the network communication I/F 512 also has a receiving circuit 5121 for receiving data via the network 300 and a transmitting circuit 5122 for transmitting data.
  • Each of the receiving circuits 5111 and 5121 corresponds to an example of receiving means for receiving instruction data in the controller unit 120 .
  • the dedicated protocol communication unit 513 is mainly realized by the first processor 411.
  • a dedicated protocol communication unit 513 communicates with the cloud server 30 on the network 300 using a dedicated protocol via the network communication I/F 512 .
  • the dedicated protocol communication unit 513 communicates with the external system 20 on the industrial network 200 via the PLC bus communication unit I/F 511 and the network module 160 using a dedicated protocol.
  • the device value management unit 514 is realized mainly by the cooperation of the first processor 411 and the auxiliary storage unit 43.
  • the device value management unit 514 has a storage area 5141 including multiple areas in which device values are respectively stored. As illustrated in FIG. 4, the storage area 5141 has an input device value area and an output device value area in which names and purposes of use are set in advance.
  • the input device value area includes an area where an instruction regarding the power state of the general-purpose OS is input. For example, an area identified as "X0" from other areas stores an input value for an instruction to start the general-purpose OS. For example, when this input value is "1", it indicates that an instruction has been input, and when it is "zero", it indicates that an instruction has not been input.
  • Activation of the general-purpose OS includes transition from a power-off state in which the general-purpose OS execution unit 52 does not consume any power to a power-on state in which the general-purpose OS can exhibit its functions by consuming power.
  • the information is stored in the second main memory unit 422 as necessary, and the power consumption is suppressed to return from the standby state, and the power is once changed from the ON state to the OFF state and then turned ON again. Includes restart to transition state.
  • the "X1" area stores an input value for a general-purpose OS shutdown instruction
  • the "X2" area stores an input value for a general-purpose OS standby instruction.
  • Shutdown means a transition from a power-on state to a power-off state
  • a standby instruction means an instruction to shift from a power-on state to a standby state.
  • the content of the notification to the external device of the controller unit 120 regarding the power state of the general-purpose OS is stored.
  • the "Y0" area stores an output value indicating whether or not the general-purpose OS is being restarted. For example, when this output value is "1", it indicates that the general-purpose OS is being restarted, and when it is "zero", it indicates that it is not being restarted.
  • an output value indicating whether the current power state of the general-purpose OS is power ON, power OFF, or standby is stored.
  • These device values stored in the storage area 5141 are synchronized with data in a device external to the controller unit 120, or subject to reading and writing by an external device.
  • the relationship between the external device and the device value within the controller unit 120 will be described.
  • modules attached to the base module 170 together with the controller unit 120 access the device values in the storage area 5141 via the PLC bus 171 and the PLC bus communication I/F 511 respectively. Such access synchronizes the device values between the modules, and the device values in the storage area 5141 are subject to reading and writing by other modules.
  • the switch 103 is, for example, an emergency stop switch for a production line, an instruction to start the general-purpose OS is input at the same time as the production line is stopped.
  • the device value “Y1” is assigned to the output from the output module 150 to the semiconductor manufacturing equipment 104 and synchronized, the device value “Y1” is immediately reflected in the output to the semiconductor manufacturing equipment 104 .
  • the general-purpose OS completes cause analysis of the emergency stop and restarts the production line, a control command to the semiconductor manufacturing equipment 104 is notified along with the completion of shutdown of the general-purpose OS.
  • the device of the external system 20 communicates with the network module 160 according to a predetermined dedicated protocol via the industrial network 200, and via the network module 160, PLC bus communication I / F 511 and dedicated protocol communication unit 513 Access the device value in storage area 5141 .
  • Such access synchronizes the device values between the controller unit 120 and the external system 20 , and makes the device values in the storage area 5141 subject to reading and writing by devices of the external system 20 .
  • values possessed by the PLC 21 , network connection input module 22 and network connection output module are assigned to device values in the storage area 5141 .
  • Changes in values by the control program executed by the PLC 21 or input values to the network connection input module 22 are reflected in the input device values in the storage area 5141 . Also, the output device value in the storage area 5141 is reflected in the value used by the PLC 21 or the output value from the network connection output module 23 .
  • Each module of the PLC 100 and each device of the external system 20 refer to the output device value of the storage area 5141 to grasp the power state of the general-purpose OS in the controller unit 120, and when the general-purpose OS is in a stopped state, the general-purpose OS When information processing becomes necessary, an input device value indicating an instruction to start the general-purpose OS is written in the storage area 5141 . Then, when the necessary information processing is completed, each module of the PLC 100 and each device of the external system 20 write an input device value indicating an instruction to stop the general-purpose OS into the storage area 5141 .
  • the device values in the storage area 5141 may be accessed by the cloud server 30 via the network 300, the network communication I/F 512 and the dedicated protocol communication section 513.
  • the cloud server 30 may periodically collect device values and manage their history.
  • control unit 515 is mainly realized by the first processor 411.
  • the control unit 515 controls the PLC bus communication I/F 511, network communication I/F 512, dedicated protocol communication unit 513, and device value management unit 514 to operate the production line using device values.
  • the control unit 515 determines the device value indicating the control command for the semiconductor manufacturing equipment 104 based on the device value indicating the input value of the switch 103 .
  • the control unit 515 monitors the device values of “X0” and “X3”, and activates the general-purpose OS using the power operation circuit 516 when a boot instruction for the general-purpose OS is input.
  • control unit 515 monitors the device values of “X1” and “X2”, and when an instruction to stop the general-purpose OS is input, the control unit 515 executes the general-purpose OS through the inter-OS communication unit 53 according to the contents of the instruction to stop.
  • the power management unit 521 of the unit 52 may be notified.
  • the power operation circuit 516 includes a power ON switch 5161 for inputting a general-purpose OS activation instruction to the general-purpose OS execution unit 52, and a general-purpose OS execution unit 52 for instructing the general-purpose OS execution unit 52 to restart the general-purpose OS. and a reset switch 5162 for inputting .
  • Each of these switches switches between an ON state and an OFF state according to a signal output from the control section 515 .
  • the power operation circuit 516 turns on the power ON switch 5161 to make it conductive, thereby supplying power to the general-purpose OS execution unit 52 and starting the general-purpose OS. becomes.
  • the general-purpose OS execution unit 52 includes a power management unit 521 that stops the general-purpose OS, a device value access unit 522 that accesses the device value of the device value management unit 514 via the inter-OS communication unit 53, and a network 300, and an information processing program 524 that runs on a general-purpose OS.
  • the power management unit 521 is mainly implemented by the second processor 421 .
  • the power management unit 521 may correspond to part of the functions of the general-purpose OS, or may correspond to application software on the general-purpose OS.
  • the power management unit 521 stops the general-purpose OS.
  • the power management unit 521 executes a command to instruct shutdown of the general-purpose OS or transition to standby.
  • the power management unit 521 may monitor the device value in the storage area 5141 via the device value access unit 522 to confirm whether or not there is a stop instruction.
  • the power management unit 521 periodically notifies the control unit 515 of the power state of the general-purpose OS via the inter-OS communication unit 53 . Furthermore, the power management unit 521 updates the output device value in the storage area 5141 to a value indicating the power state of the general-purpose OS via the device value access unit 522 . For example, the power management unit 521 updates the above-mentioned output device value to a value corresponding to "power ON" when the general-purpose OS starts up, and generates a command for stopping the general-purpose OS. to a value corresponding to "power OFF", and then stop the general-purpose OS. By being updated in this way, the device value indicates the power state of the general-purpose OS in real time.
  • the control unit 515 may grasp the power state of the general-purpose OS by at least one of confirmation of a device value indicating the power state of the general-purpose OS and direct notification from the power management unit 521 .
  • the device value access unit 522 is mainly realized by the second processor 421.
  • the device value access unit 522 may correspond to part of the functions of the general-purpose OS, or may correspond to application software on the general-purpose OS.
  • a network communication I/F 523 corresponds to the communication unit 46 .
  • the information processing program 524 is application software that runs on a general-purpose OS and is generated based on source code written in, for example, a general-purpose programming language by the user of the PLC 100 .
  • the general-purpose OS execution unit 52 refers to the device values in the storage area 5141 via the device value access unit 522 and performs information processing temporarily required in the control system 10 . Execute. This information processing is, for example, data collection and analysis of the collected data, and is executed for the purpose of investigating the cause of the abnormality or analyzing the state of the control system 10 when the abnormality occurs.
  • the external device 60 shown in FIG. 6 corresponds to other modules attached to the base module 170 together with the controller unit 120 or devices of the external system 20 .
  • the external device 60 determines whether or not the conditions for starting the general-purpose OS are satisfied (step S1). For example, the external device 60 determines whether or not it has detected an event including an anomaly that is preset to require analysis by a general-purpose OS. When determining that the activation condition is not satisfied (step S1; No), the external device 60 repeats the determination of step S1.
  • the external device 60 when it is determined that the activation condition is satisfied (step S1; Yes), the external device 60 writes a general-purpose OS activation instruction to the storage area 5141 managed by the real-time OS execution unit 51 (step S2).
  • the external device 60 writes information about the activation condition together with the activation instruction.
  • the information about the activation condition is, for example, information indicating the content of the abnormality that has occurred.
  • the real-time OS execution unit 51 detects the written activation instruction and activates the general-purpose OS using the power operation circuit 516 (step S3). As a result, the general-purpose OS execution unit 52 is brought into a state in which it can exhibit its functions.
  • the general-purpose OS execution unit 52 executes the information processing program 524 on the general-purpose OS (step S4). Specifically, the general-purpose OS execution unit 52 executing the information processing program 524 collects the device value indicating the information on the activation condition from the storage area 5141 by the device value access unit 522 . The general-purpose OS executing unit 52 analyzes the collected information and uploads the analysis result to the cloud server 30 from the network communication I/F 523 .
  • the general-purpose OS execution unit 52 notifies the real-time OS execution unit 51 of the completion of information processing (step S5). Specifically, the general-purpose OS executing unit 52 writes a device value indicating that the information analysis is completed in the storage area 5141 .
  • the external device 60 refers to the storage area 5141 (step S6) and determines whether or not the condition for stopping the general-purpose OS is satisfied (step S7). The stop condition is satisfied, for example, when analysis of sufficient information for the external device 60 ends. When determining that the stop condition is not satisfied (step S7; No), the external device 60 repeats the determination of step S7.
  • the external device 60 may cooperate with the running general-purpose OS to cause the information processing program 524 on the general-purpose OS to perform the information analysis again.
  • step S7 When it is determined that the stop condition is satisfied (step S7; Yes), the external device 60 writes the device value indicating the instruction to stop the general-purpose OS into the storage area 5141 of the real-time OS execution unit 51 (step S8).
  • the general-purpose OS execution unit 52 monitors the storage area 5141 and acquires the written stop instruction (step S9), it executes a shutdown command for the general-purpose OS and stops the general-purpose OS (step S10).
  • the real-time OS execution unit 51 uses the PLC bus communication I/F 511 or network communication when the device value as the instruction data for starting the general-purpose OS is When received by the I/F 512, the general-purpose OS is started using the power operation circuit 516, and when the instruction data for stopping the general-purpose OS is received, the general-purpose OS execution unit 52 stops the general-purpose OS. do.
  • the general-purpose OS can be activated only when necessary. Therefore, it is possible to reduce the power consumption of the PLC 100 on which the general-purpose OS is installed.
  • the real-time OS execution unit 51 corresponds to an example of booting means for booting the general-purpose OS.
  • the software configuration of the general-purpose OS is more complicated than that of the real-time OS, if the general-purpose OS runs for a long time like the real-time OS, the operation of the PLC 100 tends to become unstable and may end abnormally.
  • the controller unit 120 of this embodiment the operating time of the general-purpose OS can be shortened, and the operation of the PLC 100 can be stabilized. Furthermore, by stopping the general-purpose OS, the frequency of rewrite processing for the second main memory unit 422 is reduced, and the product life of the controller unit 120 can be extended.
  • the device value managed by the real-time OS execution unit 51 is used to manipulate the power state of the general-purpose OS.
  • the general-purpose OS execution unit 52 monitors the storage area 5141 of the real-time OS execution unit 51 and stops the general-purpose OS when a device value for stopping the general-purpose OS is stored in the storage area 5141 . Synchronization or writing and reading of device values is a function implemented in a general PLC 100 . Therefore, when adding the information processing function by the general-purpose OS to the PLC 100, it is not necessary to provide a new circuit for operating the power supply of the general-purpose OS between the general-purpose OS and the external device. Therefore, development costs can be suppressed.
  • the CPU module is replaced with the controller unit 120 and device values are set for the PLC 100 on which the general-purpose OS is not installed, other modules can use the functions of the general-purpose OS.
  • the A general-purpose OS can be used easily.
  • the receiving circuit 5111 of the PLC bus communication I/F 511 receives input data input to other controller units constituting the programmable controller or output data output from other controller units.
  • the first processor 411 updates the device value stored in the device value management unit 514 so as to be equal to the received data described above.
  • the general-purpose OS can be easily used in conjunction with the operation of the PLC 21. can do.
  • the PLC modules connected via the industrial network 200 store device values related to the power supply of the general-purpose OS in a mutually accessible storage area called a link device, and synchronize the device values in real time.
  • a general-purpose OS can be easily used via the industrial network 200 by using the refresh function.
  • the power state of the general-purpose OS can be notified to the external device using the device value.
  • This device value corresponds to an example of power state data indicating the current power state of the general-purpose OS.
  • the transmission circuits 5112 and 5122 correspond to an example of transmission means for reading out the power state data from the storage means and transmitting it to an external device.
  • Embodiment 2 Next, the second embodiment will be described, focusing on differences from the first embodiment described above. Equivalent reference numerals are used for configurations that are the same as or equivalent to those in the first embodiment.
  • the controller unit 120 equipped with a general-purpose OS corresponds to the CPU module of the PLC 100 has been described.
  • the PLC 100 has a CPU module 120a without a general-purpose OS and a controller unit 120 that functions as a network module and has a general-purpose OS.
  • the controller unit 120 has a configuration as shown in FIGS.
  • the network communication I/F 512 of the real-time OS execution unit 51 communicates with the device of the external system 20 via the industrial network 200 and communicates with the cloud server 30 via the network 300 .
  • controller unit 120 corresponds to a module that performs the network function of the PLC 100, it is possible to operate the power of the general-purpose OS from an external device.
  • a module with a general-purpose OS is a CPU module or a network module
  • an input module or an output module may be loaded with a general-purpose OS.
  • the controller unit 120 may be an expansion module whose main purpose is to add functions of a general-purpose OS.
  • PLC 100 may be a controller in which each module is integrally contained in a single housing.
  • Controller unit 120 may be configured as part of such an integrated controller.
  • the FA system has explained an example of manufacturing semiconductor products, but it is not limited to this.
  • the FA system may be, for example, another production system, an inspection system, a processing system, or another system.
  • the present disclosure is suitable for control devices equipped with a general-purpose OS.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Programmable Controllers (AREA)

Abstract

プログラマブルコントローラを構成するコントローラユニット(120)は、リアルタイムOSを実行する第1プロセッサを有するリアルタイムOS実行部(51)と、汎用OSを実行する第2プロセッサを有する汎用OS実行部(52)と、を備える。リアルタイムOS実行部(51)は、汎用OSの起動及び停止を含む電源状態の変更を指示するためのデバイス値を受信する受信回路(5111,5121)と、汎用OSを起動する電源操作回路(516)と、をさらに有し、汎用OSを起動するためのデバイス値が受信回路(5111,5121)によって受信された場合に、電源操作回路(516)を用いて汎用OSを起動する。汎用OS実行部(52)は、汎用OSを停止するためのデバイス値が受信回路(5111,5121)によって受信された場合に、汎用OSを停止する。

Description

コントローラユニット及び汎用オペレーティングシステムの電源操作方法
 本開示は、コントローラユニット及び汎用オペレーティングシステムの電源操作方法に関する。
 FA(Factory Automation)の現場では、機器を制御する制御装置としてのプログラマブルコントローラが用いられることが多い。この種のプログラマブルコントローラは、例えばリアルタイムオペレーティングシステム上のアプリケーションを実行することで多数の機器の協調制御を実現している。
 近年のデータ収集及びデータ分析の需要の高まりに伴って、一般的な情報処理を実行するために汎用オペレーティングシステムを搭載したプログラマブルコントローラが求められている。そこで、リアルタイムオペレーティングシステム及び汎用オペレーティングシステムの双方を実行可能な制御装置が提案されている(例えば、特許文献1を参照)。
 特許文献1には、リアルタイムOS(Operating System)を実行する分散制御CPU(Central Processing Unit)と、汎用OSを実行する情報処理CPUと、がシリアルインターフェースを介して接続される構成を有する制御装置について記載されている。この制御装置では、分散制御CPUが、情報処理CPUの稼働状態を定期的に測定し、測定した稼働状態に応じて情報処理CPUに対してタスクの実行を要求するか否かを判定する。これにより、情報処理の負荷を分散することができる。
特許第6808090号公報
 プログラマブルコントローラは、通常、長時間にわたって稼働を継続する。このため、特許文献1に記載の制御装置では、汎用OSを担う情報処理CPUによる消費電力量が大きくなる。したがって、汎用オペレーティングシステムを搭載したプログラマブルコントローラの消費電力量を低減する余地がある。
 本開示は、上記の事情に鑑みてなされたものであり、汎用オペレーティングシステムを搭載したプログラマブルコントローラの消費電力量を低減させることを目的とする。
 上記目的を達成するため、本開示のコントローラユニットは、プログラマブルコントローラを構成するコントローラユニットであって、リアルタイムオペレーティングシステムを実行する第1プロセッサを有するリアルタイムオペレーティングシステム実行手段と、汎用オペレーティングシステムを実行する第2プロセッサを有する汎用オペレーティングシステム実行手段と、を備え、リアルタイムオペレーティングシステム実行手段は、汎用オペレーティングシステムの起動及び停止を含む電源状態の変更を指示するための指示データを受信する受信手段と、汎用オペレーティングシステムを起動する電源操作回路と、をさらに有し、汎用オペレーティングシステムを起動するための指示データが受信手段によって受信された場合に、電源操作回路を用いて汎用オペレーティングシステムを起動し、汎用オペレーティングシステム実行手段は、汎用オペレーティングシステムを停止するための指示データが受信手段によって受信された場合に、汎用オペレーティングシステムを停止する。
 本開示によれば、汎用オペレーティングシステムを搭載したプログラマブルコントローラの消費電力量を低減させることができる。
実施の形態1に係る制御システムの構成を示す図 実施の形態1に係るコントローラユニットのハードウェア構成を示す図 実施の形態1に係るコントローラユニットの機能的な構成を示す図 実施の形態1に係るデバイス値について説明するための図 実施の形態1に係る電源操作回路の構成を示す図 実施の形態1に係る汎用OSの電源を操作する流れを示す図 実施の形態2に係るPLCの構成を示す図
 以下、本開示の実施の形態に係るプログラマブルコントローラについて、図面を参照しつつ詳細に説明する。
 実施の形態1.
 本実施の形態に係るPLC(Programmable Logic Controller)100は、外部からの指示に従って汎用OSを起動及び停止するコントローラユニット120を有する。当該コントローラユニット120は、汎用OSによる情報処理を必要とする外部の装置からの要求に応じて汎用OSを起動し、情報処理が完了したときには汎用OSを停止する。以下、PLC100の概要、及び、コントローラユニット120について順に説明する。
 PLC100は、図1に示されるように、スイッチ103及び半導体製造装置104とともに制御システム10を構成する。制御システム10は、工場に設置されるFAシステムの一部に相当する。制御システム10は、インターネットに代表されるネットワーク300を介してクラウドサーバ30に接続される。また、制御システム10は、工場内の産業用ネットワーク200を介して、制御システム10と同様にFAシステムの一部に相当する外部システム20に接続される。
 制御システム10のPLC100は、機器を制御する制御装置である。詳細には、PLC100は、スイッチ103の状態を含む入力に応じて半導体製造装置104を制御することで、半導体製品の生産ラインを稼働させる。また、PLC100は、複数のモジュールを組み合わせることで構成されるビルディングブロック形式のプログラマブルコントローラである。詳細には、PLC100は、電力を他のモジュールに供給する電源モジュール110と、他のモジュールを制御してPLC100の動作を決定するCPU(Central Processing Unit)モジュールに相当するコントローラユニット120と、スイッチ103の状態を示す信号が入力される入力モジュール130と、半導体製造装置104から信号が入力される入力モジュール140と、半導体製造装置104に信号を出力する出力モジュール150と、産業用ネットワーク200を介して通信するためのネットワークモジュール160とを、ベースモジュール170に装着することで構成される。
 電源モジュール110は、図1中の太線の矢印で示されるように、ベースモジュール170内の電源線を介して他のモジュールに電力を供給する。ベースモジュール170は、図1中の破線で示されるように、モジュール間で通信するための信号線としてのPLCバス171を有する。コントローラユニット120は、ベースモジュール170を介して、スイッチ103の状態を示すデータを入力モジュール130から取得するとともに半導体製造装置104から出力されるデータを入力モジュール140から取得する。また、コントローラユニット120は、ベースモジュール170を介して出力モジュール150へ、半導体製造装置104に対する制御指令を送信することで、半導体製造装置104を制御する。さらに、コントローラユニット120は、ベースモジュール170及びネットワークモジュール160を介して、外部システム20の装置と連携して動作する。なお、コントローラユニット120は、ベースモジュール170を介することなく、ネットワーク300に接続されて直接通信する機能を有する。
 外部システム20は、制御システム10のPLC100と同様に複数のモジュールで構成されるPLC21と、不図示の機器に接続されて当該機器からの信号が入力されるネットワーク接続入力モジュール22と、不図示の機器に接続されて当該機器へ信号を出力するネットワーク接続出力モジュール23と、を有する。PLC21、ネットワーク接続入力モジュール22及びネットワーク接続出力モジュール23はいずれも、産業用ネットワーク200に接続されてPLC100のネットワークモジュール160と互いに通信する。PLC21は、PLC100と協働することにより多数の機器の協調制御を実現する。ネットワーク接続入力モジュール22及びネットワーク接続出力モジュール23は、PLC100の入力モジュール140及び出力モジュール150と同等の機能を、産業用ネットワーク200を介して発揮する装置である。PLC100は、ネットワーク接続入力モジュール22に入力された信号に基づく制御を実行してもよいし、ネットワーク接続出力モジュール23に接続される機器を制御してもよい。
 図2には、コントローラユニット120のコンピュータとしてのハードウェア構成の概要が示されている。コントローラユニット120は、そのハードウェア構成として、第1プロセッサ411及び第1主記憶部412を有するリアルタイムOS実行部51と、第2プロセッサ421及び第2主記憶部422を有する汎用OS実行部52と、補助記憶部43と、入力部44と、出力部45と、通信部46と、を有する。第1主記憶部412、第2主記憶部422、補助記憶部43、入力部44、出力部45及び通信部46はいずれも、内部バス47を介して第1プロセッサ411及び第2プロセッサ421に接続される。
 第1プロセッサ411及び第2プロセッサ421はそれぞれ、集積回路であるCPU(Central Processing Unit)又はMPU(Micro Processing Unit)を含む。第1プロセッサ411は、補助記憶部43に記憶されるプログラム431を実行することにより、リアルタイムOS実行部51の種々の機能を実現して、後述の処理を実行する。プログラム431は、ソフトウェアとしてのリアルタイムOS、及び、機器を制御するためのラダープログラムを含む。リアルタイムOSは、リアルタイム処理のためのOSである。リアルタイムOSでは、演算処理のリアルタイム性を保証するために、演算処理を実行するための命令の発行から当該演算処理の完了までの時間の上限値が予め規定される。
 また、第2プロセッサ421は、補助記憶部43に記憶されるプログラム432を実行することにより、汎用OS実行部52の種々の機能を実現して、後述の処理を実行する。プログラム432は、ソフトウェアとしての汎用OS、及び、汎用OS上で実行されるアプリケーションソフトウェアを含む。汎用OSは、一般的な情報処理のためのOSである。汎用OSでは、リアルタイムOSにおいて保証される演算処理の実行時間の上限値が保証されない。制御システム10において、汎用OS及び汎用OS上のアプリケーションソフトウェアによる情報処理は、制御システム10においては必ずしも常時必要とはされない。このような情報処理は、例えば、異常発生時の情報の分析、並びに、一定時間稼働後のデータの収集及び分析のように、必要とされる状況が限定される。
 第1主記憶部412及び第2主記憶部422はそれぞれ、RAM(Random Access Memory)を含む。第1主記憶部412には、補助記憶部43からプログラム431がロードされる。そして、第1主記憶部412は、第1プロセッサ411の作業領域として用いられる。また、第2主記憶部422には、補助記憶部43からプログラム432がロードされる。そして、第2主記憶部422は、第2プロセッサ421の作業領域として用いられる。
 補助記憶部43は、EEPROM(Electrically Erasable Programmable Read-Only Memory)及びHDD(Hard Disk Drive)に代表される不揮発性メモリを含む。補助記憶部43は、プログラム431,432の他に、第1プロセッサ411及び第2プロセッサ421の処理に用いられる種々のデータを記憶する。補助記憶部43は、第1プロセッサ411の指示に従って、第1プロセッサ411によって利用されるデータを第1プロセッサ411に供給し、第1プロセッサ411から供給されたデータを記憶する。また、補助記憶部43は、第2プロセッサ421の指示に従って、第2プロセッサ421によって利用されるデータを第2プロセッサ421に供給し、第2プロセッサ421から供給されたデータを記憶する。
 なお、図2では、単一の補助記憶部43が設けられているが、リアルタイムOS実行部51によって利用される補助記憶部43と、汎用OS実行部52によって利用される補助記憶部43と、を別個に設けてもよい。別個に設けられた補助記憶部43は、リアルタイムOS実行部51及び汎用OS実行部52にそれぞれ含まれてもよい。また、リアルタイムOS実行部51及び汎用OS実行部52は、異なる基板上に実装されてもよいし、単一の基板上に実装されてもよい。リアルタイムOS実行部51は、コントローラユニット120において、リアルタイムOSを実行する第1プロセッサを有するリアルタイムオペレーティングシステム実行手段の一例に相当する。汎用OS実行部52は、コントローラユニット120において、汎用OSを実行する第2プロセッサを有する汎用オペレーティングシステム実行手段の一例に相当する。
 入力部44は、入力キー及びポインティングデバイスに代表される入力デバイスを含む。入力部44は、PLC100のユーザによって入力された情報を取得して、取得した情報を第1プロセッサ411及び第2プロセッサ421に通知する。入力部44によって取得される情報は、例えば、PLC100の動作を決定するパラメータを含む。
 出力部45は、LED(Light Emitting Diode)、LCD(Liquid Crystal Display)及びスピーカに代表される出力デバイスを含む。出力部45は、第1プロセッサ411及び第2プロセッサ421の指示に従って、種々の情報をユーザに提示する。
 通信部46は、外部の装置とEthernetフレームを送受するためのネットワークインタフェース回路、及び、ベースモジュール170内のPLCバス171を介してデータを送受するための通信インタフェース回路を含む。通信部46は、外部から信号を受信して、この信号により示されるデータを第1プロセッサ411及び第2プロセッサ421へ出力する。また、通信部46は、第1プロセッサ411及び第2プロセッサ421から出力されたデータを示す信号を外部の装置へ送信する。
 上述のハードウェア構成が協働することでコントローラユニット120は、リアルタイムOSと汎用OSをそれぞれ独立して実行する機能を有する。詳細には、図3に示されるように、コントローラユニット120は、その機能として、リアルタイムOSを実行するリアルタイムOS実行部51と、汎用OSを実行する汎用OS実行部52と、OS間で通信するためのOS間通信部53と、を有する。OS間通信部53は、図2の内部バス47に対応する。
 リアルタイムOS実行部51は、PLCバス171を介して通信するためのPLCバス通信I/F(Interface)511と、ネットワーク300を介して通信するためのネットワーク通信I/F512と、ネットワーク300及び産業用ネットワーク200を介して予め定められた専用のプロトコルで通信するための専用プロトコル通信部513と、汎用OSに対する電源状態の変更指示の内容を示すデバイス値を記憶して管理するデバイス値管理部514と、リアルタイムOS実行部51の構成要素を制御する制御部515と、汎用OSを起動する電源操作回路516と、を有する。デバイス値管理部514によって管理されるデバイス値は、汎用OSの起動及び停止を含む電源状態の変更を指示するための指示データの一例に相当する。デバイス値管理部514は、指示データが格納される記憶手段の一例に相当する。
 PLCバス通信I/F511及びネットワーク通信I/F512はそれぞれ、通信部46に対応する。PLCバス通信I/F511は、コントローラユニット120以外のモジュールからPLCバス171を介してデータを受信する受信回路5111及び当該モジュールに対してデータを送信する送信回路5112を有する。また、ネットワーク通信I/F512は、ネットワーク300を介してデータを受信する受信回路5121及びデータを送信する送信回路5122を有する。受信回路5111,5121はそれぞれ、コントローラユニット120において、指示データを受信する受信手段の一例に相当する。
 専用プロトコル通信部513は、主として第1プロセッサ411によって実現される。専用プロトコル通信部513は、ネットワーク通信I/F512を介して、ネットワーク300上のクラウドサーバ30と専用のプロトコルで通信する。また、専用プロトコル通信部513は、PLCバス通信部I/F511及びネットワークモジュール160を介して産業用ネットワーク200上の外部システム20と専用のプロトコルで通信する。
 デバイス値管理部514は、主として第1プロセッサ411及び補助記憶部43の協働により実現される。デバイス値管理部514は、デバイス値がそれぞれ格納される複数の領域を含む記憶領域5141を有する。記憶領域5141は、図4に例示されるように、名称及び使用目的が予め設定される入力デバイス値の領域と出力デバイス値の領域とを有する。入力デバイス値の領域は、汎用OSの電源状態に関する指示が入力される領域を含む。例えば、「X0」として他の領域から識別される領域には、汎用OSの起動指示についての入力値が格納される。この入力値は、例えば「1」のときに指示が入力されたことを示し、「ゼロ」のときに指示が入力されていないことを示す。
 汎用OSの起動は、汎用OS実行部52が電力をまったく消費していない電源OFFの状態から、電力を消費して汎用OSの機能を発揮することが可能な電源ONの状態への移行、及び、必要に応じて情報を第2主記憶部422に格納しておいて電力の消費を抑えたスタンバイ状態からの復帰、及び、電源をONの状態から一旦OFF状態に変更した上で再度ONの状態に移行する再起動を含む。
 また、「X1」の領域には、汎用OSのシャットダウン指示についての入力値が格納され、「X2」の領域には、汎用OSのスタンバイ指示についての入力値が格納される。シャットダウンは、電源ONの状態から電源OFFの状態への移行を意味し、スタンバイ指示は、電源ONの状態からスタンバイ状態への移行の指示を意味する。これらのシャットダウン指示及びスタンバイ指示は、汎用OSを停止する指示の一例に相当する。
 また、出力デバイス値の領域には、汎用OSの電源状態に関してコントローラユニット120の外部の装置に対する通知の内容が格納される。例えば、「Y0」の領域には、汎用OSが再起動中であるか否かを示す出力値が格納される。この出力値は、例えば「1」のときに汎用OSが再起動中であることを示し、「ゼロ」のときに再起動中ではないことを示す。また、「Y2」の領域には、汎用OSの現在の電源状態が、電源ON、電源OFF、及び、スタンバイ、のいずれであるかを示す出力値が格納される。
 記憶領域5141に格納されるこれらのデバイス値は、コントローラユニット120の外部の装置内のデータと同期され、又は、外部の装置による読み出し及び書き込みの対象となる。ここで、外部の装置とコントローラユニット120内のデバイス値との関係について説明する。
 コントローラユニット120とともにベースモジュール170に装着された他のモジュールはそれぞれ、PLCバス171及びPLCバス通信I/F511を介して記憶領域5141内のデバイス値にアクセスする。このようなアクセスにより、モジュール間でデバイス値が同期され、記憶領域5141内のデバイス値が他のモジュールによる読み出し及び書き込みの対象となる。例えば、PLC100に対する事前のパラメータ設定において、「X0」のデバイス値を、入力モジュール130に対するスイッチ103の入力に割り付けて同期させる場合には、スイッチ103への入力が直ちに「X0」の値に反映される。スイッチ103が例えば生産ラインの非常停止スイッチであれば、生産ラインの停止と同時に汎用OSに対する起動指示が入力されることとなる。同様に、「Y1」のデバイス値を出力モジュール150から半導体製造装置104への出力に割り付けて同期させる場合には、「Y1」のデバイス値が直ちに半導体製造装置104への出力に反映される。例えば、非常停止についての汎用OSによる原因分析が完了して生産ラインを再稼働させる際に、汎用OSのシャットダウン完了とともに半導体製造装置104への制御指令が通知されることとなる。
 また、外部システム20の装置は、産業用ネットワーク200を介して予め定められた専用のプロトコルに従ってネットワークモジュール160と通信し、ネットワークモジュール160、PLCバス通信I/F511及び専用プロトコル通信部513を介して記憶領域5141内のデバイス値にアクセスする。このようなアクセスにより、コントローラユニット120と外部システム20との間でデバイス値が同期され、記憶領域5141内のデバイス値が外部システム20の装置による読み出し及び書き込みの対象となる。例えば、PLC100のユーザによる事前のパラメータ設定において、PLC21、ネットワーク接続入力モジュール22及びネットワーク接続出力モジュールの有する値が、記憶領域5141のデバイス値に割り付けられる。そして、PLC21が実行する制御プログラムによる値の変更、或いは、ネットワーク接続入力モジュール22への入力値が、記憶領域5141の入力デバイス値に反映される。また、記憶領域5141の出力デバイス値が、PLC21によって利用される値、或いは、ネットワーク接続出力モジュール23からの出力値に反映される。
 PLC100の各モジュール及び外部システム20の各装置は、記憶領域5141の出力デバイス値を参照することによりコントローラユニット120における汎用OSの電源状態を把握し、汎用OSが停止状態であるときに汎用OSによる情報処理が必要になった場合には汎用OSの起動指示を示す入力デバイス値を記憶領域5141に書き込む。そして、必要な情報処理が完了した場合には、PLC100の各モジュール及び外部システム20の各装置は、汎用OSの停止指示を示す入力デバイス値を記憶領域5141に書き込む。
 さらに、記憶領域5141のデバイス値は、ネットワーク300、ネットワーク通信I/F512及び専用プロトコル通信部513を介して、クラウドサーバ30によってアクセスされてもよい。クラウドサーバ30は、デバイス値を定期的に収集してその履歴を管理してもよい。
 図3に戻り、制御部515は、主として第1プロセッサ411によって実現される。制御部515は、PLCバス通信I/F511、ネットワーク通信I/F512、専用プロトコル通信部513、及び、デバイス値管理部514を制御して、デバイス値を利用して生産ラインを稼働させる。例えば、制御部515は、スイッチ103の入力値を示すデバイス値に基づいて、半導体製造装置104に対する制御指令を示すデバイス値を決定する。また、制御部515は、「X0」及び「X3」のデバイス値を監視して、汎用OSに対する起動指示が入力された場合に、電源操作回路516を用いて汎用OSを起動する。さらに、制御部515は、「X1」及び「X2」のデバイス値を監視して、汎用OSに対する停止指示が入力された場合に、OS間通信部53を介して停止指示の内容を汎用OS実行部52の電源管理部521に通知してもよい。
 電源操作回路516は、図5に示されるように、汎用OS実行部52に対して汎用OSの起動指示を入力する電源ONスイッチ5161と、汎用OS実行部52に対して汎用OSの再起動指示を入力するリセットスイッチ5162と、を有する。これらのスイッチはそれぞれ、制御部515から出力される信号に応じてON状態とOFF状態とを切り替える。汎用OSが電源OFFの状態又はスタンバイ状態であるときには、電源操作回路516が電源ONスイッチ5161をON状態にして導通させることで、汎用OS実行部52に電力が投入されて汎用OSが起動することとなる。
 図3に戻り、汎用OS実行部52は、汎用OSを停止する電源管理部521と、OS間通信部53を介してデバイス値管理部514のデバイス値にアクセスするデバイス値アクセス部522と、ネットワーク300を介して通信するためのネットワーク通信I/F523と、汎用OS上で動作する情報処理プログラム524と、を有する。
 電源管理部521は、主として第2プロセッサ421によって実現される。電源管理部521は、汎用OSの一部の機能に相当してもよいし、汎用OS上のアプリケーションソフトウェアに相当してもよい。電源管理部521は、リアルタイムOS実行部51からOS間通信部53を介して、汎用OSの停止指示が入力されたことが通知されると、汎用OSを停止する。詳細には、電源管理部521は、汎用OSのシャットダウン又はスタンバイへの移行を指示するコマンドを実行する。なお、電源管理部521は、デバイス値アクセス部522を介して記憶領域5141のデバイス値を監視して、停止指示の有無を確認してもよい。
 また、電源管理部521は、汎用OSの電源状態を、OS間通信部53を介して制御部515に定期的に通知する。さらに、電源管理部521は、デバイス値アクセス部522を介して記憶領域5141の出力デバイス値を、汎用OSの電源状態を示す値に更新する。例えば、電源管理部521は、汎用OSが立ち上がったときに上述の出力デバイス値を「電源ON」に対応する値に更新し、汎用OSを停止するためのコマンドの生成と同時に上述の出力デバイス値を「電源OFF」に対応する値に更新してから汎用OSを停止する。このように更新されることで、デバイス値は、汎用OSの電源状態をリアルタイムに示す。制御部515は、汎用OSの電源状態を示すデバイス値の確認、及び、電源管理部521からの直接の通知、の少なくとも一方により汎用OSの電源状態を把握すればよい。
 デバイス値アクセス部522は、主として第2プロセッサ421によって実現される。デバイス値アクセス部522は、汎用OSの一部の機能に相当してもよいし、汎用OS上のアプリケーションソフトウェアに相当してもよい。ネットワーク通信I/F523は、通信部46に対応する。情報処理プログラム524は、PLC100のユーザが例えば汎用プログラミング言語で記述したソースコードに基づいて生成される、汎用OS上で動作するアプリケーションソフトウェアである。情報処理プログラム524を実行することにより、汎用OS実行部52は、デバイス値アクセス部522を介して記憶領域5141のデバイス値を参照して、制御システム10において一時的に必要とされる情報処理を実行する。この情報処理は、例えば、データ収集、及び、収集したデータの分析であって、異常の原因究明、或いは異常発生時における制御システム10の状況の分析を目的として実行される。
 続いて、制御システム10において汎用OSの電源を操作する一連の流れについて、図6を参照して説明する。図6に示される外部装置60は、コントローラユニット120とともにベースモジュール170に取り付けられる他のモジュール、又は、外部システム20の装置に相当する。
 外部装置60は、汎用OSの起動条件が成立するか否かを判定する(ステップS1)。例えば、外部装置60は、汎用OSによる分析を必要とすることが予め設定された、異常を含むイベントの発生を検知したか否かを判定する。起動条件が成立しないと判定した場合(ステップS1;No)、外部装置60は、ステップS1の判定を繰り返す。
 一方、起動条件が成立したと判定した場合(ステップS1;Yes)、外部装置60は、汎用OSの起動指示をリアルタイムOS実行部51によって管理される記憶領域5141に書き込む(ステップS2)。ここで、外部装置60は、起動指示とともに、起動条件に関する情報を書き込む。起動条件に関する情報は、例えば、発生した異常内容を示す情報である。
 次に、リアルタイムOS実行部51が、書き込まれた起動指示を検知して、電源操作回路516を用いて汎用OSを起動する(ステップS3)。これにより、汎用OS実行部52がその機能を発揮できる状態となる。汎用OS実行部52は、汎用OSの起動後に、汎用OS上で情報処理プログラム524を実行する(ステップS4)。具体的には、情報処理プログラム524を実行する汎用OS実行部52が、デバイス値アクセス部522により起動条件に関する情報を示すデバイス値を記憶領域5141から収集する。汎用OS実行部52は、収集した情報を解析して、ネットワーク通信I/F523から解析結果をクラウドサーバ30にアップロードする。
 次に、汎用OS実行部52は、情報処理の完了をリアルタイムOS実行部51に通知する(ステップS5)。具体的には、汎用OS実行部52は、情報の解析が完了したことを示すデバイス値を記憶領域5141に書き込む。外部装置60は、記憶領域5141を参照して(ステップS6)、汎用OSの停止条件が成立したか否かを判定する(ステップS7)。停止条件は、例えば、外部装置60にとって十分な情報の解析が終了したときに満たされる。停止条件が成立していないと判定した場合(ステップS7;No)、外部装置60は、ステップS7の判定を繰り返す。ここで、外部装置60は、起動中の汎用OSと連携して、汎用OS上の情報処理プログラム524による再度の情報解析を実行させてもよい。
 停止条件が成立したと判定した場合(ステップS7;Yes)、外部装置60は、汎用OSの停止指示を示すデバイス値をリアルタイムOS実行部51の記憶領域5141に書き込む(ステップS8)。汎用OS実行部52は、記憶領域5141を監視して、書き込まれた停止指示を取得すると(ステップS9)、汎用OSに対するシャットダウンのコマンドを実行し、汎用OSを停止する(ステップS10)。
 以上、説明したように、本実施の形態に係るコントローラユニット120によれば、リアルタイムOS実行部51は、汎用OSを起動するための指示データとしてのデバイス値がPLCバス通信I/F511又はネットワーク通信I/F512によって受信された場合に、電源操作回路516を用いて汎用OSを起動し、汎用OS実行部52は、汎用OSを停止するための指示データが受信された場合に、汎用OSを停止する。これにより、必要なときに限って汎用OSを起動することができる。したがって、汎用OSを搭載したPLC100の消費電力量を低減させることができる。なお、リアルタイムOS実行部51は、汎用OSを起動する起動手段の一例に相当する。
 また、リアルタイムOSに比して汎用OSのソフトウェア構成は複雑であるため、リアルタイムOSと同様に汎用OSを長時間にわたって稼働すると、PLC100の動作が不安定になりやすく異常終了するおそれがある。これに対して本実施の形態に係るコントローラユニット120によれば、汎用OSの稼働時間を短縮して、PLC100の動作を安定させることができる。さらに、汎用OSを停止することで第2主記憶部422に対する書換処理の頻度が低減し、コントローラユニット120の製品寿命を延長することができる。
 また、リアルタイムOS実行部51によって管理されるデバイス値を利用して、汎用OSの電源状態が操作される。例えば、汎用OS実行部52は、リアルタイムOS実行部51の記憶領域5141を監視して、汎用OSを停止するためのデバイス値が記憶領域5141に格納された場合に汎用OSを停止する。デバイス値の同期或いは書き込み及び読み出しは、一般的なPLC100において実現されている機能である。このため、PLC100に対して汎用OSによる情報処理の機能を付加する際に、汎用OSと外部の装置との間に、汎用OSの電源を操作するための新たな回路を設ける必要がない。したがって、開発コストを抑えることができる。
 具体的には、汎用OSが搭載されていないPLC100について、CPUモジュールをコントローラユニット120に交換してデバイス値を設定すれば、他のモジュールから汎用OSの機能を利用することができる。例えば、汎用OSに対する電源操作を示すデバイス値が、PLC100の他のモジュールに入力されるデータ又は他のモジュールから出力されるデータと同期される場合には、他のモジュールの入出力と連動して汎用OSを容易に利用することができる。この場合には、PLCバス通信I/F511の受信回路5111は、プログラマブルコントローラを構成する他のコントローラユニットに入力される入力データ又は他のコントローラユニットから出力される出力データである受信データを受信する受信手段の一例に相当し、第1プロセッサ411は、デバイス値管理部514に格納されるデバイス値を、上述の受信データと等しくなるように更新する。
 また、PLC100が、産業用ネットワーク200を介して接続されるPLC21と共有するデータを、汎用OSに対する電源操作のためのデバイス値として設定すれば、PLC21の動作と連係して容易に汎用OSを利用することができる。具体的には、産業用ネットワーク200を介して接続されるPLCのモジュールが相互にアクセス可能なリンクデバイスと呼ばれる記憶領域に汎用OSの電源に関するデバイス値を格納し、当該デバイス値をリアルタイムに同期させるリフレッシュ機能を利用して、産業用ネットワーク200を介して汎用OSを容易に利用することができる。
 また、汎用OSの電源状態を、デバイス値を利用して外部の装置に通知することができる。このデバイス値は、汎用OSの現在の電源状態を示す電源状態データの一例に相当する。また、送信回路5112,5122は、電源状態データを記憶手段から読み出して外部の装置に送信する送信手段の一例に相当する。
 実施の形態2.
 続いて、実施の形態2について、上述の実施の形態1との相違点を中心に説明する。なお、上記実施の形態1と同一又は同等の構成については、同等の符号を用いる。上記実施の形態1においては、汎用OS搭載するコントローラユニット120が、PLC100のCPUモジュールに相当する例について説明したが、コントローラユニット120がネットワークモジュール160に相当する形態も考えられる。
 図7に示されるように、PLC100は、汎用OSを搭載していないCPUモジュール120aと、ネットワークモジュールとして機能し汎用OSを搭載するコントローラユニット120と、を有する。コントローラユニット120は、図2,3に示されるような構成を有する。ただし、リアルタイムOS実行部51のネットワーク通信I/F512は、産業用ネットワーク200を介して外部システム20の装置と通信するとともに、ネットワーク300を介してクラウドサーバ30と通信する。
 以上、説明したように、コントローラユニット120がPLC100のネットワーク機能と担うモジュールに相当する場合においても、外部の装置から汎用OSの電源操作が可能になる。
 以上、本開示の実施の形態について説明したが、本開示は上記実施の形態によって限定されるものではない。
 例えば、汎用OSを搭載するモジュールがCPUモジュール又はネットワークモジュールである例について説明したが、これには限定されない。例えば、入力モジュール又は出力モジュールが汎用OSを搭載してもよい。また、コントローラユニット120は、汎用OSの機能の追加を主たる目的とする拡張モジュールであってもよい。
 また、PLC100がビルディングブロック形式の制御装置である例について説明したが、これには限定されない。PLC100は、各モジュールが単一の筐体において一体的に含まれる制御装置であってもよい。コントローラユニット120は、このような一体的な制御装置の一部として構成されてもよい。
 また、FAシステムが半導体製品を製造する例について説明したが、これには限定されない。FAシステムは、例えば、他の生産システム、又は、検査システム若しくは加工システムであってもよいし、その他のシステムであってもよい。
 本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
 本開示は、汎用OSを搭載した制御装置に適している。
 10 制御システム、 100,21 PLC、 103 スイッチ、 104 半導体製造装置、 110 電源モジュール、 120 コントローラユニット、 120a CPUモジュール、 130,140 入力モジュール、 150 出力モジュール、 160 ネットワークモジュール、 170 ベースモジュール、 171 PLCバス、 20 外部システム、 22 ネットワーク接続入力モジュール、 23 ネットワーク接続出力モジュール、 200 産業用ネットワーク、 30 クラウドサーバ、 300 ネットワーク、 411 第1プロセッサ、 412 第1主記憶部、 421 第2プロセッサ、 422 第2主記憶部、 43 補助記憶部、 431,432 プログラム、 44 入力部、 45 出力部、 46 通信部、 47 内部バス、 51 リアルタイムOS実行部、 511 PLCバス通信I/F、 5111,5121 受信回路、 5112,5122 送信回路、 512 ネットワーク通信I/F、 513 専用プロトコル通信部、 514 デバイス値管理部、 5141 記憶領域、 515 制御部、 516 電源操作回路、 5161 電源ONスイッチ、 5162 リセットスイッチ、 52 汎用OS実行部、 521 電源管理部、 522 デバイス値アクセス部、 523 ネットワーク通信I/F、 524 情報処理プログラム、 53 OS間通信部、 60 外部装置。

Claims (7)

  1.  プログラマブルコントローラを構成するコントローラユニットであって、
     リアルタイムオペレーティングシステムを実行する第1プロセッサを有するリアルタイムオペレーティングシステム実行手段と、
     汎用オペレーティングシステムを実行する第2プロセッサを有する汎用オペレーティングシステム実行手段と、を備え、
     前記リアルタイムオペレーティングシステム実行手段は、
     前記汎用オペレーティングシステムの起動及び停止を含む電源状態の変更を指示するための指示データを受信する受信手段と、
     前記汎用オペレーティングシステムを起動する電源操作回路と、をさらに有し、
     前記汎用オペレーティングシステムを起動するための前記指示データが前記受信手段によって受信された場合に、前記電源操作回路を用いて前記汎用オペレーティングシステムを起動し、
     前記汎用オペレーティングシステム実行手段は、前記汎用オペレーティングシステムを停止するための前記指示データが前記受信手段によって受信された場合に、前記汎用オペレーティングシステムを停止する、
     コントローラユニット。
  2.  前記リアルタイムオペレーティングシステム実行手段は、前記受信手段によって受信された前記指示データが格納される記憶手段、をさらに有し、
     前記汎用オペレーティングシステム実行手段は、前記記憶手段を監視して、前記汎用オペレーティングシステムを停止するための前記指示データが前記記憶手段に格納された場合に、前記汎用オペレーティングシステムを停止する、
     請求項1に記載のコントローラユニット。
  3.  前記受信手段は、前記プログラマブルコントローラを構成する他のコントローラユニットに入力される入力データ又は前記他のコントローラユニットから出力される出力データである受信データを受信し、
     前記第1プロセッサは、前記記憶手段に格納される前記指示データを、前記受信データと等しくなるように更新する、
     請求項2に記載のコントローラユニット。
  4.  前記記憶手段に格納される前記指示データは、前記プログラマブルコントローラが、ネットワークを介して接続される他のプログラマブルコントローラと共有するデータである、
     請求項2に記載のコントローラユニット。
  5.  前記受信手段は、前記ネットワークを介して予め定められたプロトコルで前記指示データを受信する、
     請求項4に記載のコントローラユニット。
  6.  前記汎用オペレーティングシステム実行手段は、前記汎用オペレーティングシステムの現在の電源状態を示す電源状態データを前記記憶手段に格納し、
     前記リアルタイムオペレーティングシステム実行手段は、前記電源状態データを前記記憶手段から読み出して外部の装置に送信する送信手段、をさらに有する、
     請求項2から5のいずれか一項に記載のコントローラユニット。
  7.  プログラマブルコントローラを構成するコントローラユニットにおける汎用オペレーティングシステムの電源操作方法であって、
     受信手段が、前記汎用オペレーティングシステムの起動及び停止を含む電源状態の変更を指示するための指示データを受信し、
     前記汎用オペレーティングシステムを起動するための前記指示データが前記受信手段によって受信された場合に、起動手段が、電源操作回路を用いて前記汎用オペレーティングシステムを起動し、
     前記汎用オペレーティングシステムを停止するための前記指示データが前記受信手段によって受信された場合に、前記汎用オペレーティングシステムを実行するプロセッサを有する汎用オペレーティングシステム実行手段が、前記汎用オペレーティングシステムを停止する、
     ことを含む汎用オペレーティングシステムの電源操作方法。
PCT/JP2021/033423 2021-09-10 2021-09-10 コントローラユニット及び汎用オペレーティングシステムの電源操作方法 WO2023037524A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022506624A JP7066081B1 (ja) 2021-09-10 2021-09-10 コントローラユニット及び汎用オペレーティングシステムの電源操作方法
CN202180100110.3A CN117651941A (zh) 2021-09-10 2021-09-10 控制器单元及通用操作系统的电源操作方法
PCT/JP2021/033423 WO2023037524A1 (ja) 2021-09-10 2021-09-10 コントローラユニット及び汎用オペレーティングシステムの電源操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/033423 WO2023037524A1 (ja) 2021-09-10 2021-09-10 コントローラユニット及び汎用オペレーティングシステムの電源操作方法

Publications (1)

Publication Number Publication Date
WO2023037524A1 true WO2023037524A1 (ja) 2023-03-16

Family

ID=81584934

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/033423 WO2023037524A1 (ja) 2021-09-10 2021-09-10 コントローラユニット及び汎用オペレーティングシステムの電源操作方法

Country Status (3)

Country Link
JP (1) JP7066081B1 (ja)
CN (1) CN117651941A (ja)
WO (1) WO2023037524A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1139066A (ja) * 1997-07-18 1999-02-12 Nec Corp パーソナルコンピュータの自動電源制御装置
WO2015114818A1 (ja) * 2014-01-31 2015-08-06 富士通株式会社 情報処理装置およびセンサ出力制御プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1139066A (ja) * 1997-07-18 1999-02-12 Nec Corp パーソナルコンピュータの自動電源制御装置
WO2015114818A1 (ja) * 2014-01-31 2015-08-06 富士通株式会社 情報処理装置およびセンサ出力制御プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IDEHARA AKIO, HIGASHIYAMA TOMOHIKO, OCHIAI SHINICHI: "A design of multiple OS platform under embedded system restrictions", EMBEDDED SYSTEMS SYMPOSIUM 2014, 24 October 2014 (2014-10-24), pages 114 - 119, XP093046670 *

Also Published As

Publication number Publication date
CN117651941A (zh) 2024-03-05
JPWO2023037524A1 (ja) 2023-03-16
JP7066081B1 (ja) 2022-05-12

Similar Documents

Publication Publication Date Title
USRE40817E1 (en) Process control system including automatic sensing and automatic configuration of devices
US8954784B2 (en) Reduced power failover
JP4788912B2 (ja) Plc
US20070055740A1 (en) System and method for interacting with a remote computer
CN110750309B (zh) 可远程控制电子设备的系统及方法
JP6996257B2 (ja) 制御装置、制御方法、およびプログラム
TWI713325B (zh) 可遠端控制電子設備的系統及方法
WO2023037524A1 (ja) コントローラユニット及び汎用オペレーティングシステムの電源操作方法
JP2004355446A (ja) クラスタシステム及びその制御方法
EP3751365A1 (en) Control device, monitoring method, and monitoring program
JP7374380B1 (ja) プログラマブルコントローラおよび製造システム
US8429281B2 (en) Method for operating an industrial automation system comprising a plurality of networked computer units, and industrial automation system
CN113835516A (zh) 一种设备管理方法、设备及介质
KR20190135723A (ko) Plc 시스템의 운전 방법 및 이를 이용하는 절전형 plc 시스템
JP2008171100A (ja) 機器管理装置ならびにこれを用いた遠隔監視システム
JP2017045303A (ja) パソコン機能異常時の要因検出が可能な制御装置
TWI757840B (zh) 顯示器的遠端管理方法與主機系統
US11842116B2 (en) Screen data generating system, screen data generating method, and program
JP2019032709A (ja) 分散システム
TWI392191B (zh) Remote control of the power supply system
JP5687171B2 (ja) コントローラ、監視ユニット、およびシーケンスプログラム更新方法
WO2011061828A1 (ja) 情報処理装置、情報処理装置の制御方法及び制御プログラム
JP6912421B2 (ja) 制御装置
CN117846999A (zh) 调整风扇转速的方法、装置、介质及风扇转速调控系统
Reis et al. Distributed processing system for gas odorization

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2022506624

Country of ref document: JP

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

Ref document number: 21956821

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202180100110.3

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE