Program, test support device, test support system, and test support method

JP7898648B1Active Publication Date: 2026-07-31MITSUBISHI ELECTRIC CORP
View PDF 11 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MITSUBISHI ELECTRIC CORP
Filing Date
2025-07-15
Publication Date
2026-07-31

AI Technical Summary

Benefits of technology

【0008】 本開示によれば、テストプログラムを作成するための工数を削減できる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007898648000001
    Figure 0007898648000001
  • Figure 0007898648000002
    Figure 0007898648000002
  • Figure 0007898648000003
    Figure 0007898648000003
Patent Text Reader

Abstract

The test support device (10) comprises a test program management unit (103) and a display control unit (106). The test program management unit (103) transmits flowchart information, which shows the flowchart input by the user to generate a control program for a programmable logic controller, to a generation device (20) that generates a test program for testing the control program based on the flowchart information. The test program management unit (103) acquires the test program generated by the generation device (20). The display control unit (106) displays the test program acquired by the test program management unit (103) on the display unit (107).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a program, a test support device, a test support system, and a test support method.

Background Art

[0002] A programmable logic controller (PLC) controls field devices provided at a production site by executing a control program. Before actually executing the control program of the PLC at the production site, a user needs to test the control program.

[0003] Patent Document 1 discloses a technique for outputting a test specification for testing a sequence program based on a flowchart input by a user for creating the sequence program which is a control program.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In the technique of Patent Document 1, although a test specification is output, a user needs to create a test program for testing the control program based on the test specification. Therefore, there is a problem that man-hours are required to create the test program. <0000​​​​​​

[0007] To achieve the above objectives, the program relating to this disclosure is On the computer, To generate a control program for a programmable logic controller, flowchart information showing a flowchart entered by the user is transmitted to a generation means that generates a test program for testing the control program based on the flowchart information. The generation means obtains the test program that it has generated, The acquired test program is displayed on the display means. 、 The generation means derives a first logic included in the control program from the flowchart information and generates a test program that includes the first logic and a second logic for testing the first logic. . [Effects of the Invention]

[0008] According to this disclosure, the effort required to create test programs can be reduced. [Brief explanation of the drawing]

[0009] [Figure 1] Diagram showing the overall configuration of the test support system according to the embodiment of this disclosure. [Figure 2] This figure shows an example of a flowchart that a user inputs into a test support device in an embodiment of the present disclosure. [Figure 3] This figure shows an example of a test program generated by the generation device according to the embodiment of this disclosure. [Figure 4] This figure shows an example of a test program display screen displayed by a test support device according to an embodiment of the present disclosure. [Figure 5] This figure shows an example of a test execution result display screen displayed by a test support device according to an embodiment of the present disclosure. [Figure 6] This figure shows an example of a detailed execution result display screen displayed by a test support device according to an embodiment of this disclosure. [Figure 7] This figure shows an example of a detailed execution result display screen displayed by a test support device according to an embodiment of this disclosure. [Figure 8]This figure shows an example of a list code representing a flowchart, generated by the flowchart creation unit of the test support device according to the embodiment of this disclosure. [Figure 9] This figure shows an example of the hardware configuration of a test support device according to an embodiment of the present disclosure. [Figure 10] A flowchart illustrating an example of program display processing by a test support device according to an embodiment of this disclosure. [Figure 11] A flowchart showing an example of test execution processing by a test support device according to an embodiment of this disclosure. [Modes for carrying out the invention]

[0010] The test support system according to the embodiment of this disclosure will be described below with reference to the drawings. In each drawing, the same or equivalent parts are denoted by the same reference numerals.

[0011] (Embodiment) A test support system 1 according to an embodiment will be described with reference to Figure 1. The test support system 1 is a test support system for supporting the testing of a PLC control program. The test support system 1 comprises a test support device 10 and a generation device 20. The test support device 10 and the generation device 20 are connected in a communicative manner. The test support system 1 is an example of a test support system according to this disclosure.

[0012] The test support device 10 generates a control program based on a flowchart input by the user to generate a control program, and obtains a test program for testing the control program from the generation device 20. More specifically, when the user inputs a flowchart representing the operation of the control program via the test support device 10, the test support device 10 generates a control program based on the flowchart, causes the generation device 20 to generate a test program based on the flowchart, and obtains the generated test program. The test support device 10 displays the generated control program and the obtained test program. The test support device 10 is realized by a computer such as a PC (Personal Computer) installed with an engineering tool program, a tablet terminal, or a smartphone.

[0013] The test program is a program for testing a control program under certain specific conditions. The test program incorporates the logic to be tested among the logics of the control program, and the test program further includes logic for testing the logic to be tested. Here, the term "incorporate" does not mean actually referring to the control program to incorporate the logic, but rather when generating the test program from the flowchart representing the operation of the control program, the test program is made to include logic equivalent to the logic of the control program by deriving the logic of the control program from the flowchart.

[0014] Also, after the test support device 10 displays the control program and the test program, when the user instructs the execution of the test of the control program via the test support device 10, the test support device 10 simulates the PLC and executes the test program. As described above, since the test program includes the logic in the control program to be tested and the logic for testing the logic to be tested, the user can test the control program by executing the test program. The test support device 10 is an example of the test support device according to the present disclosure.

[0015] The generation device 20 uses a learned model to generate a test program from a flowchart representing the operation of a control program based on a request from the test support device 10, and transmits the generated test program to the test support device 10. The generation device 20 is realized, for example, in a cloud server in which a generative AI (Artificial Intelligence) using a large language model (LLM: Large Language Models) operates. The generation device 20 may be operated by the administrator of the test support device 10, or may be operated by a person different from the administrator of the test support device 10. The generation device 20 derives the logic included in the control program from a flowchart representing the operation of the control program, and generates a test program including the derived logic and the logic for testing the derived logic. Generating a test program for testing the control program from a flowchart representing the operation of the control program requires more complex processing than generating the control program itself from the flowchart. Therefore, it is preferable that the generation device 20 be capable of advanced processing such as generative AI using an LLM. The administrator of the test support device 10 can make the generation of the test program by the generation device 20 more accurate by causing the generation device 20 to additionally learn general information on test engineering and the industry, such as boundary values and assumed values related to testing, in a design document, a specification document, etc., as needed. How the generation device 20 generates the test program will be described later. The generation device 20 is an example of the generation means according to the present disclosure.

[0016] According to Test Support System 1, test programs are automatically generated based on flowcharts representing the operation of the control program, thus reducing the effort required to create test programs. Furthermore, even though flowcharts contain less information such as initial values ​​and expected values ​​than the control program itself, Test Support System 1 can generate test programs based on flowcharts. Since creating flowcharts, which contain less information, requires less effort than creating the control program itself, Test Support System 1 can reduce the effort required to create test programs.

[0017] The following provides a general overview of how testing is performed using the test support system 1, with specific examples. First, the user inputs a flowchart representing the operation of a control program, such as the one shown in Figure 2, into the test support device 10. In Figure 2, M100 / M200 / M1000 / X0 / X100 / D100 / errorNumber are identifiers of a specific data type that represent memory locations on the PLC. The expression "Step Start M100" indicates that the condition transition occurs when the value of the identifier represented by M100 changes from FALSE to TRUE.

[0018] In response to the user's flowchart input, the test support device 10 generates a control program, the generation device 20 generates a test program, for example, as shown in Figure 3, and the test support device 10 acquires the generated test program. The code between the comment line "Execute ladder logic" and the comment line "End of ladder logic" in Figure 3 represents the logic of the control program. The test program shown in Figure 3 is written in ST language, one of the programming languages ​​defined in IEC 61131-3. Note that the programming language used to represent the test program may be different from the programming language used to represent the control program.

[0019] The test support device 10 displays the generated control program and the test program acquired from the generation device 20. The test support device 10 displays the test program using, for example, the test program display screen shown in Figure 4. On the test program display screen shown in Figure 4, tests are displayed for each test case. The test program display screen has a test case execution button for each test case, and when the user selects the test case execution button, the corresponding test case is executed. Also, when the user selects the "Execute all test cases" button, all test cases are executed.

[0020] In Figure 4, when the user selects the test execution button, the test support device 10 simulates the PLC and executes the test program. This allows the test support device 10 to test the control program using the test program. When the test program is completed, the test support device 10 displays the test execution results, for example, on the test execution result display screen shown in Figure 5. On the test execution result display screen shown in Figure 5, the test execution results are displayed for each test case. The test execution result screen is provided with a "show execution details" button for each test case, and by selecting this button, the user can view the detailed execution results for the corresponding test case. Furthermore, by selecting the "show execution details for all test cases" button, the test execution results for all test cases will be displayed.

[0021] When a user performs an operation to display the execution result details, the test support device 10 displays the details of the test execution results on the execution result details display screen shown in Figures 6 and 7, for example. The execution result details display screen shown in Figures 6 and 7 displays a control program expressed in ladder logic, one of the programming languages ​​defined in IEC 61131-3, and the test results are displayed superimposed on the display of the control program. This execution result details display screen allows the user to easily understand whether the test was completed successfully, whether an error occurred during the test, or whether the test was not executed for each part of the control program.

[0022] More specifically, Figure 6 shows the execution results when all test cases are run, and Figure 7 shows the execution results when some test cases are run. In Figure 6, all test cases are run, so there are no areas where tests are not performed. In Figure 7, some test cases are not run, so there are areas where tests are not performed. Figure 6 is a superimposed display of the results when all test cases are run.

[0023] Referring again to Figure 1, the functional configuration of the test support device 10 will be explained. The test support device 10 comprises an input unit 100, a communication unit 101, a flowchart creation unit 102, a test program management unit 103, a control program generation unit 104, a test execution unit 105, a display control unit 106, and a display unit 107.

[0024] The input unit 100 accepts user input. In particular, the input unit 100 accepts input operations for flowcharts representing the operation of a control program, test execution, and detailed execution result display. The input unit 100 outputs a signal indicating a flowchart input operation to the flowchart creation unit 102, and outputs signals indicating a test execution input operation and detailed execution result display input operation to the test execution unit 105. The input unit 100 includes, for example, input devices such as a keyboard, mouse, or touchscreen.

[0025] The communication unit 101 communicates with the generation device 20. Based on the control of the test program management unit 103 (described later), the communication unit 101 requests the generation device 20 to generate a test program, receives the test program generated by the generation device 20, and outputs it to the test program management unit 103.

[0026] The flowchart creation unit 102 creates a flowchart based on the user's flowchart input operations received by the input unit 100. More specifically, the flowchart creation unit 102 generates flowchart information representing the user's input flowchart based on the signals indicating the flowchart input operations output by the input unit 100. The flowchart information includes text data that represents the flowchart, for example, using list codes. For example, the flowchart shown in Figure 2 can be represented using list codes as shown in Figure 8.

[0027] The test program management unit 103 has several functions related to the management of test programs. Firstly, the test program management unit 103 requests the generation device 20 to generate a test program via the communication unit 101. More specifically, the test program management unit 103 transmits the flowchart information generated by the flowchart creation unit 102 and a prompt to request the generation of a test program to the generation device 20 via the communication unit 101.

[0028] Here, a prompt refers to a string of characters that indicates an instruction to request necessary information from the generation device 20. The test program management unit 103 sends a prompt to the generation device 20 with the following content: "The list code sent along with this instruction represents a flowchart that shows the operation of the PLC control program. Based on this list code, generate a test program in ST language to test the control program. Divide the test program into test cases. The rule for division is to sequentially add comments in the form (test case + number, test case + (number + 1), ...) to the beginning of each test case. Each test case should include assumed values. Add comments before the definition of assumed values ​​and before the section where the results of assumed values ​​are checked. The assumed values ​​themselves should also be included in the definition section." The unit also sends flowchart information including the list code along with the prompt.

[0029] In response to the test program management unit 103 sending the prompt and flowchart information described above to the generation device 20, the generation device 20 generates a test program for testing the control program based on the flowchart information, including the list code. Since the prompt instructs that the program be divided into test cases and comments be added to the beginning of each test case, the generation device 20 generates a test program with comments for each test case, as shown in Figure 3. The generation device 20 also outputs a test program that includes initial values ​​that need to be specified to execute the test, and expected values ​​that the control program is expected to output when the control program is executed based on the initial values. For example, in the example shown in Figure 3, initial values ​​are set for M100, X0, X100, and errorNumber in the four lines after the comment line for test case 1. Also, as shown in Figure 3, the test program includes comments regarding the definition of expected values ​​and the result confirmation locations, based on the instructions in the prompt. If the initial values ​​and expected values ​​are listed in the list code, the generation device 20 uses those values; if they are not listed, it infers the initial values ​​and expected values ​​based on the trained model. Furthermore, the test program includes comments to aid user understanding. For example, as shown in Figure 3, comments are provided to indicate which parts of the test program are ladder logic, that is, comments to help users understand which parts are the logic of the control program.

[0030] As described above, the test program management unit 103 has a first function: to transmit flowchart information and prompts to the generation device 20 via the communication unit 101, thereby causing the generation device 20 to generate a test program based on the flowchart information. In this respect, the test program management unit 103 is an example of a transmission means according to this disclosure.

[0031] Refer to Figure 1 again. Secondly, the test program management unit 103 acquires the test program generated by the generation device 20 via the communication unit 101. In this respect, the test program management unit 103 is an example of an acquisition means related to this disclosure.

[0032] Thirdly, the test program management unit 103 outputs the acquired test program to the test execution unit 105 and the display control unit 106.

[0033] The control program generation unit 104 generates a control program based on the flowchart information generated by the flowchart creation unit 102. The control program generation unit 104 outputs the generated control program to the display control unit 106. Note that the programming language used to represent the control program may be different from the programming language used to represent the test program. For example, the control program may be expressed in ladder logic, and the test program may be expressed in ST language.

[0034] The test execution unit 105 executes a test of the control program in response to a test execution input operation by the user. The test execution unit 105 is equipped with a simulator that simulates the operation of the PLC. The test execution unit 105 executes the test program output by the test program management unit 103 using the simulator. The test execution unit 105 checks whether the output of the test program conforms to the expected values ​​described in the test program. If the output does not conform to the expected values, the test execution unit 105 determines that an error occurred in the test for that part. If the output conforms to the expected values, the test execution unit 105 determines that the test for that part has been completed successfully.

[0035] When the test execution unit 105 completes the execution of the test program, it outputs information indicating the completion of the test program to the display control unit 106. In response to input from the user requesting detailed execution results, the test execution unit 105 outputs information indicating the details of the execution results to the display control unit 106.

[0036] The display control unit 106 controls the display unit 107 to display a screen on the display unit 107. In particular, the display control unit 106 has a function to display the screen described below. The display control unit 106 is an example of a display control means according to this disclosure.

[0037] Firstly, the display control unit 106 displays a screen for the user to input a flowchart. Secondly, the display control unit 106 displays a screen that displays the control program generated by the control program generation unit 104. Thirdly, the display control unit 106 displays a test program display screen, as shown in Figure 4, that displays the test program output by the test program management unit 103. Based on the comments regarding the test cases attached to the test program, the display control unit 106 displays the test program display screen in a table format separated by test cases. This makes it possible to execute tests for each test case. Fourthly, in response to receiving information from the test execution unit 105 indicating the completion of the test program, the display control unit 106 displays a test execution result display screen, as shown in Figure 5, that displays the test execution results. The display control unit 106 displays the test execution result display screen in a table format separated by test cases. This makes it possible to check the details of the execution results for each test case. Fifth, in response to receiving information from the test execution unit 105 indicating the details of the execution results, the display control unit 106 displays an execution result details display screen, as shown in Figure 6 or Figure 7, which displays the details of the execution results.

[0038] The display unit 107 displays a screen based on the control of the display control unit 106. The display unit 107 is, for example, a liquid crystal display. The display unit 107 may also be a touchscreen integrated with the input unit 100. Note that the display unit 107 is not necessarily a component of the test support device 10, but may be an external component of the test support device 10. For example, if the test support device 10 is a desktop PC, the display unit 107 will be an external component of the test support device 10. The display unit 107 is an example of a display means according to this disclosure.

[0039] An example of the hardware configuration of the test support device 10 will be described with reference to Figure 9. As mentioned above, the test support device 10 shown in Figure 9 is implemented, for example, by a computer.

[0040] The test support device 10 comprises a processor 1001, a memory 1002, an interface 1003, and a secondary storage device 1004, all of which are connected to each other via a bus 1000.

[0041] The processor 1001 is, for example, a CPU (Central Processing Unit). The processor 1001 reads the operation program stored in the secondary storage device 1004 into the memory 1002 and executes it, thereby realizing each function of the test support device 10.

[0042] Memory 1002 is a main memory device, for example, composed of RAM (Random Access Memory). Memory 1002 stores the operational program read by the processor 1001 from the secondary memory device 1004. Memory 1002 also functions as working memory when the processor 1001 executes the operational program.

[0043] Interface 1003 is an I / O (Input / Output) interface such as a serial port, USB (Universal Serial Bus) port, or network interface.

[0044] The secondary storage device 1004 is, for example, flash memory, an HDD (Hard Disk Drive), or an SSD (Solid State Drive). The secondary storage device 1004 stores the operational programs that the processor 1001 executes.

[0045] Referring to Figure 10, an example of program display processing by the test support device 10 will be explained. Here, program display processing refers to the process from when the user inputs a flowchart until the control program and test program are displayed. The process shown in Figure 10 starts, for example, when the test support device 10 is powered on.

[0046] The flowchart creation unit 102 of the test support device 10 awaits input of a flowchart by the user (step S101).

[0047] The flowchart creation unit 102, in response to the flowchart input received in step S101, generates flowchart information showing the input flowchart (step S102).

[0048] The control program generation unit 104 of the test support device 10 generates a control program based on the flowchart information generated in step S102 (step S103).

[0049] The test program management unit 103 of the test support device 10 transmits the flowchart information generated in step S102 and a prompt to the generation device 20 (step S104). The generation device 20 generates a test program in response to this transmission.

[0050] The test program management unit 103 obtains the test program from the generation device 20 (step S105).

[0051] The display control unit 106 of the test support device 10 controls the display unit 107 to display the control program generated in step S103 (step S106).

[0052] The display control unit 106 controls the display unit 107 to display the test program acquired in step S105 (step S107). The test support device 10 then terminates the program display process.

[0053] Note that the process in step S103 and the processes in steps S104-S105 may be executed in parallel.

[0054] Referring to Figure 11, an example of the test execution process by the test support device 10 will be explained. The process shown in Figure 11 starts, for example, after the completion of the process shown in Figure 10, with the test program display screen displayed.

[0055] The test execution unit 105 of the test support device 10 awaits input from the user for test execution (step S201).

[0056] The test execution unit 105 executes the test program output by the test program management unit 103 (step S202).

[0057] The test execution unit 105 checks whether the output of the test program conforms to the expected value (step S203).

[0058] The display control unit 106 of the test support device 10 controls the display unit 107 to display the test execution results (step S204). Then the test support device 10 terminates the test execution process. After this, the test support device 10 will display the details of the execution results according to the user's input.

[0059] The test support system 1 according to the embodiment has been described above. According to the test support system 1, the test program is automatically generated based on the flowchart entered by the user to generate the PLC control program, thus reducing the man-hours required to create the test program.

[0060] Furthermore, according to Test Support System 1, even though a flowchart contains less information than the control program itself, it is possible to generate a test program based on the flowchart. Since it is more efficient for the user to create a flowchart, which contains less information, than for the user to create the control program itself, Test Support System 1 can reduce the effort required to create a test program.

[0061] Furthermore, according to Test Support System 1, when a flowchart is modified, the test program can be automatically regenerated based on the modified flowchart. Therefore, by making it easy to regenerate the test program when a flowchart is modified, Test Support System 1 can prevent errors in modifying the test program and reduce the effort required to create the test program.

[0062] (modified version) In this embodiment, the test support device 10 displays the control program and test program generated based on the flowchart, and then executes the test program to perform the test. However, the test support device 10 does not necessarily have to have a function for test execution. In other words, the test support device 10 displays the generated control program and test program, but the execution of the test may be performed by another device, for example.

[0063] In this embodiment, the test program generated by the generation device 20 was expressed in ST language as shown in Figure 3. ST language is a programming language defined in IEC 61131-3. The generation device 20 may also generate test programs expressed in other programming languages ​​defined in IEC 61131-3, such as ladder language or function block diagram (FBD). The generation device 20 may also generate test programs expressed in general-purpose programming languages ​​such as C language, C++ language, or Python® language. The desired programming language can be specified in the prompt sent by the test support device 10 to the generation device 20. For example, the execution result of a test program expressed in C language can be displayed superimposed on a control program expressed in ladder language, as shown in Figures 6 and 7. Furthermore, the programming language used to express the control program can also be either a programming language defined in IEC 61131-3 or a general-purpose programming language.

[0064] In the hardware configuration shown in Figure 9, the test support device 10 is equipped with a secondary storage device 1004. However, the configuration is not limited to this; the secondary storage device 1004 may be located outside the test support device 10, and the test support device 10 and the secondary storage device 1004 may be connected via an interface 1003. In this configuration, removable media such as USB flash drives and memory cards can also be used as the secondary storage device 1004.

[0065] Alternatively, instead of the hardware configuration shown in Figure 9, the test support device 10 may be configured using a dedicated circuit employing an ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array), etc. Furthermore, in the hardware configuration shown in Figure 9, some of the functions of the test support device 10 may be implemented, for example, by a dedicated circuit connected to interface 1003.

[0066] The program used in the test support device 10 can be stored and distributed on computer-readable recording media such as CD-ROMs (Compact Disc Read Only Memory), DVDs (Digital Versatile Discs), USB flash drives, memory cards, and HDDs. By installing such a program on a specific or general-purpose computer, that computer can be made to function as the test support device 10.

[0067] Alternatively, the aforementioned program may be stored in a storage device owned by another server on the Internet, and the program may be downloaded from that server.

[0068] This disclosure allows for various embodiments and modifications without departing from the broad spirit and scope of this disclosure. Furthermore, the embodiments described above are for illustrative purposes only and do not limit the scope of this disclosure. In other words, the scope of this disclosure is indicated by the claims, not by the embodiments. Various modifications made within the scope of the claims and the equivalent significance of the disclosure are considered to be within the scope of this disclosure. [Explanation of symbols]

[0069] 1 Test support system, 10 Test support device, 20 Generation device, 100 Input unit, 101 Communication unit, 102 Flowchart creation unit, 103 Test program management unit, 104 Control program generation unit, 105 Test execution unit, 106 Display control unit, 107 Display unit, 1000 Bus, 1001 Processor, 1002 Memory, 1003 Interface, 1004 Secondary storage device.

Claims

1. On the computer, To generate a control program for a programmable logic controller, flowchart information showing a flowchart entered by the user is transmitted to a generation means that generates a test program for testing the control program based on the flowchart information. The generation means obtains the test program that it has generated, The acquired test program is displayed on the display means. The generation means derives a first logic included in the control program from the flowchart information and generates a test program including the first logic and a second logic for testing the first logic. program.

2. The flowchart information includes text data that represents the actions shown in the flowchart. The program according to claim 1.

3. The aforementioned computer further: In displaying the test program, the test program is displayed on the display means in a format separated for each test case. The program according to claim 1.

4. The aforementioned test program is expressed in a format that allows for the insertion of comments, The aforementioned computer further: In generating the test program, the generation means is instructed to divide the test program into test cases and add comments to the beginning of each test case. In displaying the test program, the test program is displayed on the display means in a format separated for each test case, based on the comments attached to the test program. The program according to claim 3.

5. The test program includes initial values ​​that need to be specified in order to execute the test program, and expected values ​​that the control program is expected to output when the control program is executed based on the initial values. The program according to any one of claims 1 to 4.

6. The control program is a program expressed in a programming language defined in IEC 61131-3. The aforementioned computer further: The results obtained by executing the test program are superimposed on the control program and displayed on the display means. The program according to any one of claims 1 to 4.

7. The control program is a program expressed in a programming language defined in IEC 61131-3. The aforementioned computer further, The results obtained by executing the test program for each test case are superimposed on the control program and displayed on the display means. The program according to claim 3 or 4.

8. The aforementioned test program is a program written in a programming language as defined in IEC 61131-3, such as C, C++, or Python®. The program according to any one of claims 1 to 4.

9. A transmission means for transmitting flowchart information, which shows a flowchart entered by a user to generate a control program for a programmable logic controller, to a generation means that generates a test program for testing the control program based on the flowchart information. An acquisition means for acquiring the test program generated by the generation means, A display control means that causes the acquisition means to display the test program acquired by the acquisition means on the display means, Equipped with, The generation means derives a first logic included in the control program from the flowchart information and generates a test program including the first logic and a second logic for testing the first logic. Test support device.

10. The test support device according to claim 9 and the generation means are provided, Test support system.

11. Computers To generate a control program for a programmable logic controller, flowchart information showing a flowchart entered by the user is transmitted to a generation means that generates a test program for testing the control program based on the flowchart information. The test program generated by the generation means is acquired, The acquired test program is displayed on the display means. The generation means derives a first logic included in the control program from the flowchart information and generates a test program including the first logic and a second logic for testing the first logic. Test support methods.