Programmable controller, processing method, and program

The programmable controller automates backup and restoration of project files based on power supply or memory confirmation, addressing user skill barriers and reducing workload.

JP7777803B2Active Publication Date: 2025-12-01PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2022070325
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-04-21
Publication Date
2025-12-01
Estimated Expiration
2042-04-21

AI Technical Summary

Technical Problem

Users with insufficient skills in operating programmable controllers face difficulties in performing backup and restore operations to storage devices, leading to a heavy workload.

Method used

A programmable controller with a storage unit and control unit that automatically backs up or restores project files to/from an external memory upon power supply or memory confirmation, eliminating the need for manual intervention.

Benefits of technology

Reduces user workload by automating backup and restoration processes, ensuring they are performed smoothly without requiring advanced user skills.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007777803000001
    Figure 0007777803000001
  • Figure 0007777803000002
    Figure 0007777803000002
  • Figure 0007777803000003
    Figure 0007777803000003
Patent Text Reader

Abstract

To make it easier to further reduce a work load of a user.SOLUTION: A programmable controller 1 comprises a storage unit 3 and a control unit 2. The storage unit 3 stores a system program P1 in advance. The control unit 2 executes sequence control based on a project file FL1 including at least a user program P2 and the system program P1. The control unit 2 confirms a predetermined directory path in an external memory 5 using a commencement of supply of operating power to the control unit 2, or a confirmation of an existence of the external memory 5 as a trigger; and the control unit automatically backs up the project file FL1 to the external memory 5 or restores the project file FL1 from the external memory 5 depending on a confirmation result.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure generally relates to a programmable controller, a processing method, and a program, and more particularly to a programmable controller that performs sequence control, a processing method in the programmable controller, and a program. [Background technology]

[0002] Patent Document 1 discloses a programming device that edits and displays a sequence program executed by a programmable controller. In this programming device, when an instruction to back up a sequence program file is received, the CPU determines whether the sequence program is stored in the program storage device. If the sequence program is stored, the CPU uses directory information from the copy source to create directory information for the copy destination (backup destination), and copies the file stored in the program storage device to a storage area in the backup storage device. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2004-152025 Summary of the Invention [Problem to be solved by the invention]

[0004] However, if a user does not have sufficient skills in operating a programmable controller and its peripheral devices, it may be difficult to perform backup and restore operations to a storage device (external memory), which may result in a heavy workload for the user.

[0005] The present disclosure has been made in view of the above-mentioned circumstances, and aims to provide a programmable controller, a processing method, and a program that can more easily reduce the workload of a user. [Means for solving the problem]

[0006] A programmable controller according to one aspect of the present disclosure includes a storage unit and a control unit. The storage unit pre-stores a system program. The control unit executes sequence control based on a project file including at least a user program and the system program. Triggered by the start of supply of operating power to the control unit or the confirmation of the presence of an external memory, the control unit checks a predetermined directory path in the external memory, and automatically backs up the project file to the external memory or restores the project file from the external memory depending on the confirmation result.

[0007] A processing method according to one aspect of the present disclosure is a processing method for a programmable controller. The programmable controller includes a storage unit and a control unit. The storage unit pre-stores a system program. The control unit executes sequence control based on a project file including at least a user program and the system program. The processing method includes a confirmation processing step and an execution processing step. The confirmation processing step checks a predetermined directory path in the external memory when triggered by the start of supply of operating power to the control unit or the confirmation of the presence of an external memory. The execution processing step automatically backs up the project file to the external memory or restores the project file from the external memory depending on the confirmation result in the confirmation processing step.

[0008] A program according to one aspect of the present disclosure is a program for causing one or more processors to execute the above processing method. [Effects of the Invention]

[0009] The present disclosure has the advantage of making it easier to reduce the workload on the user. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is a schematic block diagram of an entire system including a programmable controller according to an embodiment. [Figure 2] FIG. 2 is a front view of the programmable controller. [Figure 3] FIG. 3 is a flowchart for explaining the operation of the programmable controller. DETAILED DESCRIPTION OF THE INVENTION

[0011] (overview) Hereinafter, a programmable controller, a processing method, and a program according to an embodiment will be described with reference to the drawings.

[0012] As shown in FIG. 1, a programmable controller 1 according to one embodiment includes a storage unit 3 (a first memory 31 and a second memory 32) and a control unit 2.

[0013] The storage unit 3 stores a system program P1 in advance. The control unit 2 executes sequence control based on a project file FL1 including at least a user program P2 and the system program P1. The device to be controlled by sequence control is not particularly limited, but may be, for example, a servo motor 7 (see FIG. 1) for driving a mechanical mechanism such as a ball screw mechanism, a gear mechanism, or a belt mechanism. The control unit 2 may include a main CPU (Central Processing Unit) (hereinafter referred to as "first CPU 21") and a CPU for motion control (hereinafter referred to as "second CPU 22").

[0014] The control unit 2 checks a predetermined directory path in the external memory 5 when the supply of operating power to the control unit 2 is started or when the presence of the external memory 5 is confirmed. Then, depending on the confirmation result, the control unit 2 automatically backs up the project file FL1 to the external memory 5 or restores the project file FL1 from the external memory 5. In this embodiment, as an example, it is assumed that the external memory 5 is a memory card C1.

[0015] According to the programmable controller 1, backup and restoration of the project file FL1 can be triggered by the start of supply of operating power, e.g., by power-on. Alternatively, backup and restoration of the project file FL1 can be triggered by the confirmation of the presence of the external memory 5, e.g., by the insertion of the external memory 5, such as the memory card C1, into the card slot 12. This increases the likelihood that backup and restoration of the project file FL1 will be performed automatically and smoothly, regardless of the user's operating skills with respect to the programmable controller 1 and its peripheral devices. As a result, the programmable controller 1 has the advantage of further reducing the user's workload. In the present disclosure, the term "user" may refer to, for example, a person who manages or monitors the programmable controller 1 and its peripheral devices, or a person who sets parameters and positioning settings for the control axes of the controlled device using a dedicated setting tool or the like.

[0016] A processing method according to one aspect is a processing method for the above-described programmable controller 1. The processing method includes a confirmation processing step and an execution processing step. In the confirmation processing step, a predetermined directory path in the external memory 5 is checked when the supply of operating power to the control unit 2 is started or the presence of the external memory 5 is confirmed, as a trigger. In the execution processing step, a backup of the project file FL1 to the external memory 5 or a restore of the project file FL1 from the external memory 5 is automatically executed depending on the confirmation result in the confirmation processing step. This processing method has the advantage of making it easier to reduce the workload on the user.

[0017] This processing method is used on a computer system (programmable controller 1). In other words, this processing method can also be embodied as a program. A program according to one aspect is a program for causing one or more processors to execute the above processing method. The program may be recorded on a computer-readable non-transitory recording medium.

[0018] (detail) (1) Overall structure Hereinafter, a programmable controller 1 (hereinafter sometimes abbreviated as "PLC1 (Programmable Logic Controller)") according to this embodiment and an entire system (control system 100) including its peripheral configuration will be described in detail with reference to FIGS. 1 and 2. As shown in FIG. 1, the peripheral configuration of the control system 100 may include a power supply unit 4, an external memory 5, a plurality of servo drivers 6, a plurality of servo motors 7 (devices to be controlled), a plurality of external devices 8, and the like. For convenience, only one servo driver 6, one servo motor 7, and one external device 8 are shown in FIG. 1.

[0019] The power supply unit 4 is connected to the PLC 1 and supplies operating power to the PLC 1 (particularly the control unit 2). The power supply unit 4 is electrically connected to, for example, a commercial AC power supply and converts AC power (for example, an effective value of 100 [V]) received from the commercial AC power supply into operating power for the control unit 2 (for example, DC 24 [V]).

[0020] In this embodiment, as an example, it is assumed that the external memory 5 is a memory card C1 (for example, an SD memory card) that can be inserted into or removed from the card slot 12 of the PLC 1 and that has a built-in nonvolatile memory such as a flash memory.

[0021] Each servo driver 6 is connected to a corresponding servo motor 7. Each servo driver 6 is communicably connected to a PLC 1, which corresponds to a higher-level controller, and follows commands related to sequence control from the PLC 1 to control the output torque, rotation speed, position, etc. of the servo motor 7, which is the controlled device. Each servo driver 6 supplies a predetermined amount of power to the servo motor 7 at an appropriate timing to control the output torque, rotation speed, position, etc. of the servo motor 7. Each servo driver 6 performs feedback control based on detection values ​​detected by an encoder attached to the servo motor 7, etc., so that the output torque, rotation speed, position, etc. approach their respective target values. Each servo driver 6 transmits feedback information to the PLC 1.

[0022] The multiple external devices 8 may include various sensors, monitoring monitors, indicator lights, personal computers (which may be mobile terminals such as notebook computers or tablet terminals), and server devices that comprehensively manage one or more PLCs 1.

[0023] PLC1 accepts registration, change, and deletion of user setting information T1 (see FIG. 1) via dedicated application software (setting tool) pre-installed on a personal computer (external device 8). A user launches the setting tool using an operation device and a display device including a liquid crystal display or an organic EL (Electro-Luminescence) display, and performs operations related to user setting information T1. The operation device may include, for example, a pointing device such as a mouse, and a keyboard.

[0024] The user setting information T1 includes a user program P2, which is a sequence program (for example, a ladder program) for controlling one or more control target devices. The user can edit the ladder program on a ladder editing screen in the setting tool, for example.

[0025] The user setting information T1 also includes information regarding variable data P3 (setting value) such as parameters related to the control axis of the servo motor 7, an IP address P4 (setting value) set in the PLC 1, and a time zone P5 (setting value) set in the PLC 1. The user can use the setting tool to edit the setting value of the variable data P3, the setting value of the IP address P4, the setting value of the time zone P5, etc.

[0026] The user setting information T1 is stored in a storage unit 3 (a first memory 31 described later) of the PLC 1. Furthermore, the user setting information T1 is stored in a project file FL1 and transferred between the PLC 1 and the external memory 5 during backup processing and restore processing.

[0027] At least a part of the above-described peripheral configuration of the control system 100 may be included in the configuration of the PLC 1. For example, the power supply unit 4 may be one of a plurality of units U1 (described later) of the PLC 1.

[0028] PLC 1 includes a computer system having one or more processors and memories (a storage unit 3 including a first memory 31 and a second memory 32). At least some of the functions of PLC 1 are realized by the processor of the computer system executing a program recorded in the memory of the computer system. The program may be recorded in the memory, or may be provided via a telecommunications line such as the Internet, or may be provided by being recorded on a non-transitory recording medium such as a memory card.

[0029] The PLC1 is composed of one or more units U1 (see Figure 2). Each unit U1 has a housing that houses an electronic circuit for realizing the corresponding function, and multiple units U1 can be installed in series.

[0030] The multiple units U1 include a CPU unit U11, which corresponds to a core unit of the PLC 1, and a motion control unit U12. The CPU unit U11 has a communication function that complies with standards for a wired LAN (Local Area Network) such as Ethernet (registered trademark). The CPU unit U11 can communicate with various devices (for example, a servo driver 6 and an external device 8).

[0031] The multiple units U1 may also include an input unit that inputs signals from various devices (for example, the servo driver 6 and external devices 8) to the CPU unit U11. The multiple units U1 may also include an output unit that outputs signals including the results of processing by the CPU unit U11 and the motion control unit U12 to various devices.

[0032] The multiple units U1 may also include an expansion unit for adding buses, a positioning unit, and a temperature input unit. The positioning unit has the function of positioning the control axis of the servo motor 7 based on parameters set using a setting tool or the like. The temperature input unit has the function of inputting a detection signal from a temperature sensor to the CPU unit U11.

[0033] For convenience, only the CPU unit U11 and the motion control unit U12 are shown in Figure 2. Two or more of the multiple units U1 may be configured as a single unit U1. For example, the CPU unit U11, the motion control unit U12, the input unit, and the output unit may be configured as a single unit U1.

[0034] The PLC 1 includes a control unit 2, a storage unit 3, and a housing 11. The housing 11 is formed in a rectangular box shape. The housing 11 here may include one or more housings of the above-mentioned multiple units U1. As an example, the housing 11 includes a housing 11A for the CPU unit U11 and a housing 11B for the motion control unit U12 (see FIG. 2).

[0035] The housing 11 houses the control unit 2 and the storage unit 3. The housing 11 has a card slot 12 (shown by imaginary lines in FIG. 2) into which a memory card C1 serving as external memory 5 can be inserted. FIG. 2 is a schematic front view of the housing 11 of the PLC 1 (the housing 11A of the CPU unit U11 and the housing 11B of the motion control unit U12). An openable slot cover 13 is provided on the front of the housing 11A of the CPU unit U11. By opening the slot cover 13, the card slot 12 hidden behind the slot cover 13 is exposed, allowing the memory card C1 to be inserted into or removed from the card slot 12.

[0036] The storage unit 3 includes a first memory 31 and a second memory 32. The first memory 31 is, for example, an electrically rewritable non-volatile semiconductor memory such as a flash memory. The second memory 32 is, for example, a volatile semiconductor memory. Both the first memory 31 and the second memory 32 are provided in the CPU unit U11, but they may be provided separately in different units U1.

[0037] The storage unit 3 stores a system program P1 in advance. In this embodiment, the system program P1 is stored in advance in a first memory 31. The first memory 31 also stores user setting information T1 generated using a setting tool.

[0038] The control unit 2 executes sequence control based on the project file FL1 and the system program P1. As shown in Fig. 1, the control unit 2 has a first CPU 21 corresponding to a main CPU and a second CPU 22 corresponding to a CPU for motion control. The first CPU 21 may be built into the CPU unit U11. The second CPU 22 may be built into the motion control unit U12.

[0039] The system program P1 is a program (firmware) for carrying out overall control of the PLC1.

[0040] The project file FL1 includes at least a user program P2 (user setting information T1). The user program P2 is an execution program, such as a motion program, that can be created and modified by a user to control one or more control target devices.

[0041] In this embodiment, the project file FL1 also includes user setting information T1, such as variable data P3 with a retention attribute, an IP address P4, and a time zone P5. The variable data P3 is data that is referenced or changed by the user program P2 (for example, parameters related to a control axis), and its "attribute" is classified according to whether or not it is retained when the PLC 1 is powered off. The variable data P3 with a retention attribute is data that indicates that it is retained when the PLC 1 is powered off.

[0042] The project file FL1 including the user program P2 and the above data (P3 to P5) is stored (backed up) in a non-volatile external memory 5 that does not require backup by a battery or the like. By storing the project file FL1 in the external memory 5, part or all of the project file FL1 can be easily deployed to a PLC other than the PLC1 that is the source of the project file FL1.

[0043] When the memory card C1 is inserted in the card slot 12 and the control unit 2 backs up the user setting information T1, the control unit 2 copies the user setting information T1 from the first memory 31 to the second memory 32, generates a project file FL1, and compresses the file. The control unit 2 transfers the compressed project file FL1 to the external memory 5 (memory card C1) and stores it in a specific folder D1 located in a predetermined directory path.

[0044] Information about a predetermined directory path to the specific folder D1 is stored in advance in the first memory 31. In this embodiment, as an example, it is assumed that the folder name of the specific folder D1 is "AUTO." That is, the PLC 1 stores information about the folder name "AUTO" in the first memory 31 in advance, and searches the external memory 5 for a folder named "AUTO" (specific folder D1).

[0045] On the other hand, when a user uses the memory card C1 for the first time, the user creates an "AUTO" folder in a predetermined directory path on the memory card C1 as an initial setting for the memory card C1. The "AUTO" folder can be created in a predetermined directory path on the memory card C1 using a setting tool or the like.

[0046] Furthermore, when the memory card C1 is inserted into the card slot 12 and the control unit 2 restores the user setting information T1, the control unit 2 copies the project file FL1 in the "AUTO" folder (specific folder D1) of the memory card C1 to the second memory 32. Then, the control unit 2 unpacks the (compressed) project file FL1 and returns (restores) it to the first memory 31.

[0047] In this embodiment, the PLC 1 automatically executes a backup process or a restore process of the user setting information T1 (project file FL1) when, for example, the power supply unit 4 is turned on, which serves as a trigger. That is, the control unit 2 checks a predetermined directory path in the external memory 5 when the power switch of the power supply unit 4 is turned on and the supply of operating power to the control unit 2 is started. Then, depending on the check result, the control unit 2 automatically executes a backup process of the project file FL1 to the external memory 5 or a restore process of the project file FL1 from the external memory 5. Execution of the backup process or the restore process requires that the memory card C1 is inserted in the card slot 12. Therefore, when the power supply unit 4 is turned on, the control unit 2 first checks whether the memory card C1 is inserted in the card slot 12 before checking the directory path.

[0048] If the control unit 2 determines that the project file FL1 does not exist in a specific folder D1 in a predetermined directory path, the control unit 2 automatically executes the above backup (processing). That is, if the project file FL1 does not exist in the "AUTO" folder on the memory card C1 when the power supply unit 4 is turned on, the control unit 2 copies the user setting information T1 from the first memory 31 to the second memory 32, generates the project file FL1, and compresses the file. The control unit 2 then transfers the compressed project file FL1 to the memory card C1 and stores it in the "AUTO" folder.

[0049] During restoration, a series of operations are automatically performed, including transferring the project file FL1 in the "AUTO" folder in the memory card C1 to the PLC1, and extracting the project file FL1 to a specified path (extraction destination) in the PLC1.

[0050] Furthermore, if the control unit 2 determines as a result of the check that the project file FL1 exists in a specific folder D1 in a predetermined directory path, it automatically executes the above-mentioned restore (processing). That is, if the project file FL1 exists in the "AUTO" folder on the memory card C1 when the power supply unit 4 is turned on, the project file FL1 in the "AUTO" folder is copied to the second memory 32. Then, the project file FL1 is extracted and restored to the first memory 31 as user setting information T1.

[0051] If the confirmation result shows that the specific folder D1 does not exist in the predetermined directory path, the control unit 2 does not execute either the backup (processing) or the restore (processing). Naturally, if the memory card C1 is not inserted in the card slot 12, the control unit 2 does not execute either the backup process or the restore process.

[0052] In short, from the user's perspective, the backup process or restore process can be automatically executed as long as the external memory 5 (memory card C1) is inserted into the card slot 12 and the power is turned on. Note that it is not essential that the external memory 5 (memory card C1) is inserted into the card slot 12 before the power is turned on in order for the backup process or restore process to be automatically executed. The power may be turned on first, and then the external memory 5 (memory card C1) may be inserted into the card slot 12 and the presence of the external memory 5 is confirmed, and the confirmation may be used as a trigger to automatically execute the backup process or restore process.

[0053] (2) Operation A series of flows of PLC1 will be described below with reference to Fig. 3. Note that the flowchart shown in Fig. 3 is merely an example of the operation flow of PLC1 according to the present disclosure, and the order of processes may be changed as appropriate, and processes may be added or omitted as appropriate.

[0054] First, when the user wants to back up (or restore) the project file FL1, the user inserts the memory card C1 into the card slot 12 before turning on the power switch of the power supply unit 4.

[0055] When the user turns on the power switch of the power supply unit 4 (step ST1: Yes), that is, when the supply of operating power to the control unit 2 starts, the PLC 1 checks whether or not there is a memory card C1 in the card slot 12 (step ST2). Note that neither the backup process nor the restore process is executed until the power switch of the power supply unit 4 is turned on (step ST1: No).

[0056] If the memory card C1 is present in the card slot 12 (step ST2: Yes), the PLC 1 checks the specified directory path in the memory card C1 (checking process step). That is, the PLC 1 searches for the "AUTO" folder (specific folder D1) in the specified directory path and determines whether the "AUTO" folder exists (step ST3). If the memory card C1 is not present in the card slot 12 (step ST2: No), the backup process and restore process are skipped.

[0057] If PLC1 determines that the "AUTO" folder exists (step ST3: Yes), it then checks whether the "AUTO" folder contains a project file FL1 (step ST4). If the "AUTO" folder does not contain a project file FL1 (step ST4: No), PLC1 automatically executes a backup process (step ST5: execution process step). On the other hand, if the "AUTO" folder contains a project file FL1 (step ST4: Yes), PLC1 automatically executes a restore process (step ST6: execution process step).

[0058] If PLC 1 determines that the "AUTO" folder does not exist (step ST3: No), it skips the backup process and the restore process. At that time, PLC 1 may notify the user by displaying a message on a display device attached to the personal computer (external device 8) that the "AUTO" folder has not been created even though the memory card C1 is inserted.

[0059] <Advantages> In this way, with PLC1, backup and restoration of the project file FL1 can be triggered by power-on. Therefore, regardless of the user's operating skill, backup and restoration of the project file FL1 are likely to be automatically performed without delay. In particular, this eliminates the need for the user to manually copy the project file FL1 to or from the external memory 5 using a configuration tool or to operate a physical switch dedicated to backup and restore. This also reduces the amount of work required for users to set up equipment at the installation site (a facility such as a factory) where the PLC1 is installed. As a result, the PLC1 has the advantage of further reducing the user's workload. Furthermore, at the installation site, the project file FL1 can be easily deployed to PLCs other than the PLC1 that generated the project file FL1. Furthermore, eliminating the need for a physical switch dedicated to backup and restore in the PLC1 also reduces the cost of the PLC1. As mentioned above, the trigger for automatically backing up or restoring the project file FL1 is not limited to power-on, but may also be confirmation of the presence of external memory 5 after power-on (for example, when external memory 5 is inserted into card slot 12).

[0060] Furthermore, if the "AUTO" folder does not exist on the memory card C1, neither backup nor restore is executed. Therefore, when an external memory other than the specified external memory 5 that is not intended by the user is inserted into the card slot 12, the possibility of backup or restore being executed can be reduced.

[0061] Furthermore, since the external memory 5 is the memory card C1, the project file FL1 can be backed up and restored at a relatively low cost.

[0062] (3) Variations The above embodiment is merely one of various embodiments of the present disclosure. The above embodiment can be modified in various ways depending on the design, etc., as long as the object of the present disclosure can be achieved. Furthermore, functions similar to those of the PLC 1 according to the above embodiment may be embodied in a processing method of the PLC 1, a computer program, a non-transitory recording medium on which a computer program is recorded, or the like.

[0063] Modifications of the above embodiment are listed below. The modifications described below can be applied in appropriate combinations.

[0064] The PLC 1 in the present disclosure includes a computer system. The computer system is primarily composed of a processor and memory as hardware. The functions of the PLC 1 in the present disclosure are realized by the processor executing a program stored in the memory of the computer system. The program may be pre-stored in the memory of the computer system, provided via a telecommunications line, or provided in a non-transitory recording medium such as a memory card, optical disk, or hard disk drive that is readable by the computer system. The processor of the computer system is composed of one or more electronic circuits, including a semiconductor integrated circuit (IC) or a large-scale integrated circuit (LSI). The integrated circuits, such as ICs and LSIs, are referred to by different names depending on the degree of integration, and include integrated circuits called system LSIs, very large-scale integrations (VLSIs), and ultra-large-scale integrations (ULSIs). Furthermore, field-programmable gate arrays (FPGAs), which are programmed after the LSI is manufactured, or logic devices that allow the reconfiguration of internal connections or circuit partitions within the LSI, can also be used as processors. Multiple electronic circuits may be integrated on a single chip or distributed across multiple chips. The multiple chips may be integrated into one device or distributed across multiple devices. The computer system referred to here includes a microcontroller having one or more processors and one or more memories. Therefore, the microcontroller also comprises one or more electronic circuits, including semiconductor integrated circuits or large-scale integrated circuits.

[0065] It is not essential that the multiple functions of PLC1 be concentrated in one housing. As described above, for example, the components of PLC1 may be distributed across multiple housings (multiple units U1). Furthermore, at least some of the functions of PLC1, for example, some of the functions of PLC1, may be realized by the cloud (cloud computing) or the like. Conversely, multiple functions of PLC1 may be concentrated in one housing.

[0066] In the above-described embodiment, the external memory 5 is a memory card C1, but there is no particular limitation on the type of external memory 5. For example, if the PLC 1 is provided with a USB (Universal Serial Bus) socket into which a connector terminal of a USB memory can be inserted and removed, the external memory 5 may be a USB memory.

[0067] Furthermore, the external memory 5 is not limited to a portable recording medium. If the PLC 1 can communicate with a file server located outside the installation site (a facility such as a factory) of the PLC 1 via a wide area network such as the Internet, the external memory 5 may be the memory of the file server. The file server may be a cloud server configured from multiple server devices.

[0068] The file server may be, for example, an FTP (File Transfer Protocol) server. PLC1 communicates with the FTP server in accordance with FTP communication standards, and during backup, PLC1 may transfer the project file FL1 to the FTP server and store it in the memory of the FTP server. During restore, PLC1 may restore the project file FL1 from the memory of the FTP server.

[0069] (summary) The above-described embodiments and the like disclose the following aspects.

[0070] A programmable controller (1) according to a first aspect includes a storage unit (3) and a control unit (2). The storage unit (3) pre-stores a system program (P1). The control unit (2) executes sequence control based on a project file (FL1) including at least a user program (P2) and the system program (P1). The control unit (2) checks a predetermined directory path in the external memory (5) when triggered by the start of supply of operating power to the control unit (2) or the confirmation of the presence of an external memory (5). Then, the control unit (2) automatically backs up the project file (FL1) to the external memory (5) or restores the project file (FL1) from the external memory (5) depending on the confirmation result.

[0071] According to the above aspect, backup and restoration of the project file (FL1) can be triggered by the start of supply of operating power or the confirmation of the presence of the external memory (5). Therefore, it is highly likely that backup and restoration of the project file (FL1) will be automatically performed without delay, regardless of the user's operating skill with the programmable controller (1) and its peripheral devices. As a result, the above programmable controller (1) has the advantage of making it easier to reduce the workload of the user.

[0072] Regarding the programmable controller (1) according to the second aspect, in the first aspect, the control unit (2) automatically executes the above backup if the confirmation result indicates that the project file (FL1) does not exist in a specific folder (D1) in a predetermined directory path.

[0073] According to the above aspect, the work involved in backing up the project file (FL1) becomes less time-consuming, and the workload on the user can be further reduced.

[0074] Regarding the programmable controller (1) according to the third aspect, in the first or second aspect, the control unit (2) automatically executes the above-mentioned restoration if the confirmation result indicates that the project file (FL1) exists in a specific folder (D1) in a predetermined directory path.

[0075] According to the above aspect, the work involved in restoring the project file (FL1) becomes less time-consuming, and the workload on the user can be further reduced.

[0076] With respect to the programmable controller (1) according to the fourth aspect, in any one of the first to third aspects, the control unit (2) does not perform either the backup or the restore as described above if the confirmation result indicates that a specific folder (D1) does not exist in a predetermined directory path.

[0077] According to the above aspect, it is possible to reduce the possibility that the project file (FL1) will be backed up or restored to an unintended external memory other than the predetermined external memory (5).

[0078] The programmable controller (1) according to a fifth aspect is any one of the first to fourth aspects, and further includes a housing (11) that houses the storage unit (3) and the control unit (2). The housing (11) has a card slot (12) into which a memory card (C1) serving as an external memory (5) can be inserted.

[0079] According to the above embodiment, backup and restoration of the project file (FL1) can be realized at a relatively low cost compared to when an external memory (5) other than the memory card (C1) is used.

[0080] A processing method according to a sixth aspect is a processing method in a programmable controller (1). The programmable controller (1) includes a storage unit (3) and a control unit (2). The storage unit (3) pre-stores a system program (P1). The control unit (2) executes sequence control based on a project file (FL1) including at least a user program (P2) and the system program (P1). The processing method includes a confirmation processing step and an execution processing step. The confirmation processing step is triggered by the start of supply of operating power to the control unit (2) or the confirmation of the presence of an external memory (5), and checks a predetermined directory path in the external memory (5). The execution processing step automatically backs up the project file (FL1) to the external memory (5) or restores the project file (FL1) from the external memory (5) depending on the confirmation result in the confirmation processing step.

[0081] According to the above aspect, it is possible to provide a processing method that can more easily reduce the workload on the user.

[0082] A program according to the seventh aspect is a program for causing one or more processors to execute the processing method according to the sixth aspect.

[0083] According to the above aspect, it is possible to provide a function that can more easily reduce the workload of the user.

[0084] The configurations according to the second to fifth aspects are not essential for the programmable controller (1) and can be omitted as appropriate. [Explanation of symbols]

[0085] 1 programmable controller 11. Housing 12 card slots 2. Control section 3 Storage section 5. External Memory C1 memory card D1 Specific folder FL1 project file P1 System Program P2 User Program

Claims

1. a storage unit that stores a system program in advance; a control unit that executes sequence control based on a project file including at least a user program and the system program; Equipped with the control unit, when triggered by the start of supply of operating power to the control unit or the confirmation of the presence of an external memory, checks a predetermined directory path in the external memory, and automatically backs up the project file to the external memory or restores the project file from the external memory according to the confirmation result; Programmable controller.

2. the control unit automatically executes the backup when the confirmation result indicates that the project file does not exist in a specific folder of the predetermined directory path.

10. The programmable controller of claim 1.

3. the control unit automatically executes the restoration when the confirmation result indicates that the project file exists in a specific folder of the predetermined directory path.

10. The programmable controller of claim 1.

4. the control unit does not execute either the backup or the restore if the confirmation result indicates that the specific folder does not exist in the predetermined directory path.

10. The programmable controller of claim 1.

5. a housing that houses the storage unit and the control unit, the housing has a card slot into which a memory card serving as the external memory can be inserted; 10. The programmable controller of claim 1.

6. A processing method in a programmable controller, comprising: the programmable controller includes a storage unit that stores a system program in advance, a project file that includes at least a user program, and a control unit that executes sequence control based on the system program; a confirmation processing step of confirming a predetermined directory path in the external memory when the supply of operating power to the control unit is started or when the presence of the external memory is confirmed; an execution processing step of automatically backing up the project file to the external memory or restoring the project file from the external memory according to the confirmation result in the confirmation processing step; Including, Processing method.

7. A program for causing one or more processors to execute the processing method according to claim 6.

Citation Information

Patent Citations

  • Programming device

    JP2004152025A

  • Distributed control system

    JP2009015401A

  • Robot controller, backup file preservation method, and program

    JP2019153134A

  • Programmable logic controller system and programmable logic controller

    WO2014174546A1