WO2021161518A1 - Control system, program creation assistance device, program creation assistance method, and program creation assistance program - Google Patents

Control system, program creation assistance device, program creation assistance method, and program creation assistance program Download PDF

Info

Publication number
WO2021161518A1
WO2021161518A1 PCT/JP2020/005829 JP2020005829W WO2021161518A1 WO 2021161518 A1 WO2021161518 A1 WO 2021161518A1 JP 2020005829 W JP2020005829 W JP 2020005829W WO 2021161518 A1 WO2021161518 A1 WO 2021161518A1
Authority
WO
WIPO (PCT)
Prior art keywords
main body
program
execution
test
execution code
Prior art date
Application number
PCT/JP2020/005829
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2020/005829 priority Critical patent/WO2021161518A1/en
Priority to JP2020533859A priority patent/JP6808102B1/en
Priority to DE112020005770.4T priority patent/DE112020005770T5/en
Priority to CN202080096084.7A priority patent/CN115066676B/en
Publication of WO2021161518A1 publication Critical patent/WO2021161518A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4434Reducing the memory space required by the program code
    • G06F8/4435Detection or removal of dead or redundant code

Abstract

A control system (1A) comprises a controller (30) and a program creation assistance device (10) that assists in creating a program used by the controller (30) to control a device, wherein the program includes a control program for formally controlling the device, and a test program for controlling a test process performed on the device, and wherein the program creation assistance device (10) is provided with: a main body execution code creation unit (13) that creates main body execution code, which is the executable code of the control program; a test execution code creation unit (23) that creates test execution code, which is the executable code of a test program for controlling a test adjustment process performed on the device; and a test execution condition specification unit (22) that creates test execution conditions, which are conditions for executing the test execution code. The main body execution code and the test execution code are created separately from each other, and the controller (30) controls the device using the main body execution code, the test execution code, and the test execution conditions.

Description

制御システム、プログラム作成支援装置、プログラム作成支援方法、およびプログラム作成支援プログラムControl system, program creation support device, program creation support method, and program creation support program
 本開示は、制御プログラムの作成を支援する制御システム、プログラム作成支援装置、プログラム作成支援方法、およびプログラム作成支援プログラムに関する。 This disclosure relates to a control system that supports the creation of a control program, a program creation support device, a program creation support method, and a program creation support program.
 従来、サーボモータなどの駆動機器を制御するコントローラが所望の制御動作を行うことができるか否かが確認される際には、駆動機器の動作を制御する制御プログラムのテストなどが行われる。テストなどが行われる際には、駆動機器の制御を行う本体部のソースコードと、テストなどの補助処理を行う補助部のソースコードとが一体化され、一体化されたソースコードから実行コードが作成される。そして、作成された実行コードがコントローラへ書込まれ、コントローラが、実行コードを実行することでテストなどが行われる。 Conventionally, when it is confirmed whether or not a controller that controls a drive device such as a servomotor can perform a desired control operation, a test of a control program that controls the operation of the drive device is performed. When a test is performed, the source code of the main body that controls the drive equipment and the source code of the auxiliary part that performs auxiliary processing such as testing are integrated, and the execution code is output from the integrated source code. Created. Then, the created execution code is written to the controller, and the controller executes the execution code to perform a test or the like.
 特許文献1に記載のコントローラサポート装置は、制御プログラムに入れられたデバッグ用のプログラムを用いて制御プログラムのシミュレーションを実行している。すなわち、特許文献1に記載のコントローラサポート装置が、補助処理を行う場合、制御プログラムに入れられた補助部のプログラムを用いて制御プログラムの補助処理を実行することとなる。このコントローラサポート装置の場合、例えばテスト条件の変更が必要になると、変更後のテスト条件に即して補助部のソースコードを編集し、本体部のソースコードと、編集された補助部のソースコードとを一体化したソースコードから実行コードを再作成する。そして、コントローラが、再作成された実行コードを実行することで、再テストなどが行われる。 The controller support device described in Patent Document 1 executes a simulation of the control program using a debugging program included in the control program. That is, when the controller support device described in Patent Document 1 performs auxiliary processing, the auxiliary processing of the control program is executed by using the program of the auxiliary unit included in the control program. In the case of this controller support device, for example, when it is necessary to change the test conditions, the source code of the auxiliary part is edited according to the changed test conditions, and the source code of the main body and the edited source code of the auxiliary part are edited. Recreate the execution code from the source code that integrates with. Then, the controller executes the recreated execution code to perform retesting and the like.
特許第5246186号公報Japanese Patent No. 5246186
 しかしながら、上記特許文献1のコントローラサポート装置では、制御プログラムのテストなどが完了した後、不要となった補助部の実行コードを制御プログラムから除去しておかないと、制御プログラムの本体部の実行コードのみを実行したい場合に補助部の実行コードが誤って実行されてしまう場合がある。また、補助部の実行コードを制御プログラムから正確に除去するには多大な手間を要する。 However, in the controller support device of Patent Document 1, the execution code of the main body of the control program must be removed from the control program after the test of the control program is completed. If you want to execute only, the execution code of the auxiliary part may be executed by mistake. In addition, it takes a lot of time and effort to accurately remove the execution code of the auxiliary part from the control program.
 本開示は、上記に鑑みてなされたものであって、本体部の実行コードが実行される際に補助部の実行コードが誤って実行されることを容易に防止できる制御システムを得ることを目的とする。 The present disclosure has been made in view of the above, and an object of the present invention is to obtain a control system that can easily prevent the execution code of the auxiliary part from being erroneously executed when the execution code of the main body part is executed. And.
 上述した課題を解決し、目的を達成するために、本開示の制御システムは、装置を制御するコントローラと、コントローラが装置の制御に用いるプログラムの作成を支援するプログラム作成支援装置と、を有する。プログラムは、装置への正式な制御を行う制御プログラムと、装置への補助処理を制御する補助プログラムとを含む。プログラム作成支援装置は、制御プログラムの実行コードである本体実行コードを作成する本体実行コード作成部と、補助プログラムの実行コードである補助実行コードを作成する補助実行コード作成部と、補助実行コードを実行する条件である補助実行条件を作成する補助実行条件作成部と、を備えている。また、プログラム作成支援装置は、本体実行コードと補助実行コードとを、別々に作成する。コントローラは、本体実行コード、補助実行コード、および補助実行条件を用いて装置を制御する。 In order to solve the above-mentioned problems and achieve the object, the control system of the present disclosure includes a controller that controls the device and a program creation support device that supports the creation of a program that the controller uses to control the device. The program includes a control program for formal control of the device and an auxiliary program for controlling auxiliary processing for the device. The program creation support device has a main body execution code creation unit that creates the main body execution code that is the execution code of the control program, an auxiliary execution code creation unit that creates the auxiliary execution code that is the execution code of the auxiliary program, and an auxiliary execution code. It is provided with an auxiliary execution condition creation unit that creates an auxiliary execution condition that is a condition to be executed. In addition, the program creation support device separately creates the main body execution code and the auxiliary execution code. The controller controls the device using the main body execution code, the auxiliary execution code, and the auxiliary execution conditions.
 本開示にかかる制御システムは、本体部の実行コードが実行される際に補助部の実行コードが誤って実行されることを容易に防止できるという効果を奏する。 The control system according to the present disclosure has an effect that it is possible to easily prevent the execution code of the auxiliary part from being erroneously executed when the execution code of the main body part is executed.
実施の形態1にかかる制御システムの構成を示す図The figure which shows the structure of the control system which concerns on Embodiment 1. 実施の形態1にかかる制御システムによる制御処理の手順を示すフローチャートA flowchart showing a procedure of control processing by the control system according to the first embodiment. 実施の形態1にかかるプログラム作成支援装置によるデータ作成処理の手順を示すシーケンス図A sequence diagram showing a procedure of data creation processing by the program creation support device according to the first embodiment. 実施の形態1にかかる制御システムによるデータ送信処理およびデータ保存処理の手順を示すシーケンス図A sequence diagram showing a procedure of data transmission processing and data storage processing by the control system according to the first embodiment. 実施の形態1にかかる制御システムによる制御プログラムの実行処理の手順を示すシーケンス図A sequence diagram showing a procedure of execution processing of a control program by the control system according to the first embodiment. 実施の形態2にかかる制御システムの構成を示す図The figure which shows the structure of the control system which concerns on Embodiment 2. 実施の形態2にかかる制御システムが制御するモータに接続された機構部を説明するための図The figure for demonstrating the mechanical part connected to the motor controlled by the control system which concerns on Embodiment 2. FIG. 実施の形態2にかかる制御システムに対して設定される制御用パラメータの第1例を示す図The figure which shows the 1st example of the control parameter set for the control system which concerns on Embodiment 2. 実施の形態2にかかる制御システムが用いる運転パターンの第1例を示す図The figure which shows the 1st example of the operation pattern used by the control system which concerns on Embodiment 2. 実施の形態2にかかる制御システムに対して設定される制御用パラメータの第2例を示す図The figure which shows the 2nd example of the control parameter set for the control system which concerns on Embodiment 2. 実施の形態2にかかる制御システムが用いる運転パターンの第2例を示す図The figure which shows the 2nd example of the operation pattern used by the control system which concerns on Embodiment 2. 実施の形態1,2にかかるプログラム作成支援装置を実現するハードウェア構成例を示す図The figure which shows the hardware configuration example which realizes the program creation support apparatus which concerns on Embodiments 1 and 2.
 以下に、本開示の実施の形態にかかる制御システム、プログラム作成支援装置、プログラム作成支援方法、およびプログラム作成支援プログラムを図面に基づいて詳細に説明する。なお、これらの実施の形態によりこの開示が限定されるものではない。 Hereinafter, the control system, the program creation support device, the program creation support method, and the program creation support program according to the embodiment of the present disclosure will be described in detail based on the drawings. It should be noted that the disclosure is not limited by these embodiments.
実施の形態1.
 図1は、実施の形態1にかかる制御システムの構成を示す図である。制御システム1Aは、プログラム作成支援装置10と、コントローラ30とを備えている。プログラム作成支援装置10は、表示装置3に接続され、コントローラ30は、アンプ4を介してモータ2に接続されている。
Embodiment 1.
FIG. 1 is a diagram showing a configuration of a control system according to the first embodiment. The control system 1A includes a program creation support device 10 and a controller 30. The program creation support device 10 is connected to the display device 3, and the controller 30 is connected to the motor 2 via the amplifier 4.
 コントローラ30は、駆動機器であるモータ2を制御するコンピュータである。プログラム作成支援装置10は、コントローラ30がモータ2を制御する際に用いる制御プログラムを作成するコンピュータである。 The controller 30 is a computer that controls the motor 2 which is a drive device. The program creation support device 10 is a computer that creates a control program used by the controller 30 to control the motor 2.
 プログラム作成支援装置10は、ユーザからの指示に従って、制御プログラムを作成する。また、プログラム作成支援装置10は、ユーザからの指示に従って、制御プログラムを実行する条件である実行条件を作成する。例えば、制御プログラムが制御プログラムPA,PB,PCを含んでいる場合がある。この場合において、制御プログラムPAだけを実行させたい場合、制御プログラムPBをスキップさせたい場合、制御プログラムPCの実行を特定回数(例えば、10回)だけ繰り返したい場合などがある。これらの処理を実行させるための条件が実行条件である。例えば、実行条件において、「制御プログラムPAが存在する場合には、制御プログラムPAをスキップさせる」ということが規定されている場合、コントローラ30は、制御プログラムPAが存在する場合に、制御プログラムPAをスキップさせる。 The program creation support device 10 creates a control program according to an instruction from the user. Further, the program creation support device 10 creates an execution condition which is a condition for executing the control program according to an instruction from the user. For example, the control program may include control programs PA, PB, and PC. In this case, there are cases where it is desired to execute only the control program PA, when it is desired to skip the control program PB, or when it is desired to repeat the execution of the control program PC a specific number of times (for example, 10 times). The conditions for executing these processes are the execution conditions. For example, if the execution condition stipulates that "when the control program PA exists, the control program PA is skipped", the controller 30 sets the control program PA when the control program PA exists. Let me skip it.
 本実施の形態のプログラム作成支援装置10は、モータ2の制御を行う際に用いられる本体部のソースコードと、本体部以外のソースコードとを別々に作成し、別々にコンパイルすることで、別々の実行コードを作成する。本体部以外のソースコードは、補助処理を制御するためのソースコードである。補助処理を制御するためのソースコードの例は、本体部のテストおよび調整(以下、テスト調整という)を行うソースコードである。なお、本体部のテスト結果によっては、本体部の調整が省略される場合もある。 The program creation support device 10 of the present embodiment is separated by separately creating the source code of the main body used when controlling the motor 2 and the source code other than the main body and compiling them separately. Create the executable code for. The source code other than the main body is the source code for controlling the auxiliary processing. An example of the source code for controlling the auxiliary processing is the source code for testing and adjusting the main body (hereinafter referred to as test adjustment). Depending on the test result of the main body, the adjustment of the main body may be omitted.
 プログラム作成支援装置10は、本体部のソースコードから本体部の実行コードを作成し、テスト調整用のソースコードからテスト調整用の実行コードを作成する。以下の説明では、本体部のソースコードを本体ソースコードといい、テスト調整用のソースコードをテストソースコードという。また、本体部の実行コードを本体実行コードといい、テスト調整用の実行コードをテスト実行コードという。 The program creation support device 10 creates the execution code of the main body from the source code of the main body, and creates the execution code for test adjustment from the source code for test adjustment. In the following explanation, the source code of the main body is called the main body source code, and the source code for test adjustment is called the test source code. The execution code of the main body is called the main body execution code, and the execution code for test adjustment is called the test execution code.
 プログラム作成支援装置10は、制御プログラムの本体ソースコードをコンパイルすることで、制御プログラムの本体実行コードを作成する。プログラム作成支援装置10は、制御プログラムのテストソースコードをコンパイルすることで、制御プログラムのテスト実行コードを作成する。 The program creation support device 10 creates the main body execution code of the control program by compiling the main body source code of the control program. The program creation support device 10 creates a test execution code of the control program by compiling the test source code of the control program.
 このように、プログラム作成支援装置10が作成する制御プログラムには、本体部となる制御プログラム(本体実行コード)と、テスト調整用の制御プログラム(テスト実行コード)との2本がある。本体部となる制御プログラムは、実際の製品として稼働する制御プログラムである。 As described above, there are two control programs created by the program creation support device 10: a control program (main body execution code) as the main body and a control program (test execution code) for test adjustment. The control program that is the main body is a control program that operates as an actual product.
 本体部となる制御プログラムは、モータ2を含んだ装置の制御に直接関与する処理を行う。換言すると、本体部となる制御プログラムは、モータ2を含んだ装置への正式な制御を行うプログラムである。 The control program that is the main body performs processing that is directly related to the control of the device including the motor 2. In other words, the control program that serves as the main body is a program that formalizes control of the device including the motor 2.
 テスト調整用の制御プログラムは、補助処理を制御する補助プログラムである。テスト調整用の制御プログラムは、テスト調整の際に必要であるが、テスト調整が完了した後には不要となる。 The control program for test adjustment is an auxiliary program that controls auxiliary processing. The control program for test adjustment is required for test adjustment, but is not required after the test adjustment is completed.
 なお、以下の説明では、本体部となる制御プログラムを単に本体プログラムといい、テスト調整用の制御プログラムをテストプログラムという。また、本体プログラムおよびテストプログラムの両方のプログラムを指す場合には、制御プログラムという。本体プログラムは、モーション制御プログラムを含んでいる場合があり、この場合、テストプログラムは、モーション制御プログラムのテスト調整などを行う。 In the following explanation, the control program that is the main body is simply called the main body program, and the control program for test adjustment is called the test program. When referring to both the main program and the test program, it is called a control program. The main body program may include a motion control program, and in this case, the test program performs test adjustment of the motion control program and the like.
 また、プログラム作成支援装置10は、本体実行コードが実行される際に用いられる実行条件と、補助実行コードであるテスト実行コードが実行される際に用いられる実行条件とを別々に作成する。以下の説明では、本体部の実行条件、すなわち本体プログラムを実行するための条件を本体実行条件といい、テスト調整用の実行条件、すなわちテストプログラムを実行するための条件をテスト実行条件という。 Further, the program creation support device 10 separately creates an execution condition used when the main body execution code is executed and an execution condition used when the test execution code which is the auxiliary execution code is executed. In the following description, the execution condition of the main body, that is, the condition for executing the main body program is referred to as the main body execution condition, and the execution condition for test adjustment, that is, the condition for executing the test program is referred to as the test execution condition.
 本体実行条件では、特定の本体プログラムが存在する場合には、この特定の本体プログラムをスキップさせることなどが規定されている。補助実行条件であるテスト実行条件では、本体プログラムの前に実行させるテストプログラムが存在する場合、このテストプログラムを実行させることなどが規定されている。また、本体実行条件およびテスト実行条件では、特定の変数が特定の値になる場合に、特定の処理を実行することなどが規定されていてもよい。 The main body execution condition stipulates that if a specific main body program exists, this specific main body program should be skipped. The test execution condition, which is an auxiliary execution condition, stipulates that if there is a test program to be executed before the main program, this test program should be executed. Further, the main body execution condition and the test execution condition may specify that a specific process is executed when a specific variable has a specific value.
 プログラム作成支援装置10は、本体実行コード、テスト実行コード、本体実行条件、およびテスト実行条件をコントローラ30に送信する。 The program creation support device 10 transmits the main body execution code, the test execution code, the main body execution condition, and the test execution condition to the controller 30.
 コントローラ30は、テスト調整の際には、本体実行コード、本体実行条件、テスト実行コード、およびテスト実行条件を用いて、モータ2の動作を制御する。また、コントローラ30は、テスト調整が完了した後は、本体実行コードおよび本体実行条件を用いて、モータ2の動作を制御する。コントローラ30は、本体実行コードとテスト実行コードとを別々に管理する。また、コントローラ30は、本体実行条件とテスト実行条件とを別々に管理する。 At the time of test adjustment, the controller 30 controls the operation of the motor 2 by using the main body execution code, the main body execution condition, the test execution code, and the test execution condition. Further, after the test adjustment is completed, the controller 30 controls the operation of the motor 2 by using the main body execution code and the main body execution conditions. The controller 30 manages the main body execution code and the test execution code separately. Further, the controller 30 manages the main body execution condition and the test execution condition separately.
 プログラム作成支援装置10は、本体ソースコード編集部11と、本体実行条件指定部12と、本体実行コード作成部13とを備えている。また、プログラム作成支援装置10は、補助ソースコード編集部であるテストソースコード編集部21と、補助実行条件作成部であるテスト実行条件指定部22と、補助実行コード作成部であるテスト実行コード作成部23と、通信部71と、入力部72とを備えている。 The program creation support device 10 includes a main body source code editing unit 11, a main body execution condition designation unit 12, and a main body execution code creation unit 13. Further, the program creation support device 10 includes a test source code editing unit 21 which is an auxiliary source code editing unit, a test execution condition specification unit 22 which is an auxiliary execution condition creation unit, and a test execution code creation unit which is an auxiliary execution code creation unit. A unit 23, a communication unit 71, and an input unit 72 are provided.
 通信部71は、本体送信部14と、本体受信部15と、テスト送信部24と、テスト受信部25とを有している。 The communication unit 71 has a main body transmitting unit 14, a main body receiving unit 15, a test transmitting unit 24, and a test receiving unit 25.
 コントローラ30は、通信部81と、本体実行コード記憶部33と、テスト実行コード記憶部43と、制御部82と、出力部83とを備えている。通信部81は、通信部71との間で通信可能となっている。通信部81と通信部71との間は、無線通信で接続されてもよいし、有線通信で接続されてもよい。 The controller 30 includes a communication unit 81, a main body execution code storage unit 33, a test execution code storage unit 43, a control unit 82, and an output unit 83. The communication unit 81 can communicate with the communication unit 71. The communication unit 81 and the communication unit 71 may be connected by wireless communication or by wired communication.
 通信部81は、本体受信部31と、本体送信部32と、テスト受信部41と、テスト送信部42とを有している。制御部82は、本体実行制御部34と、本体実行条件判定部35と、テスト実行制御部44と、テスト実行条件判定部45とを有している。 The communication unit 81 has a main body receiving unit 31, a main body transmitting unit 32, a test receiving unit 41, and a test transmitting unit 42. The control unit 82 includes a main body execution control unit 34, a main body execution condition determination unit 35, a test execution control unit 44, and a test execution condition determination unit 45.
 以下、プログラム作成支援装置10およびコントローラ30の各構成要素について説明する。プログラム作成支援装置10の入力部72は、ユーザからの指示を受付ける。入力部72がユーザから受付ける指示には、本体ソースコードを編集する指示、本体実行コードを作成する指示、本体実行条件を指定する指示、補助ソースコードであるテストソースコードを編集する指示、テスト実行コードを作成する指示、テスト実行条件を指定する指示などがある。 Hereinafter, each component of the program creation support device 10 and the controller 30 will be described. The input unit 72 of the program creation support device 10 receives an instruction from the user. The instructions received from the user by the input unit 72 include an instruction to edit the main body source code, an instruction to create the main body execution code, an instruction to specify the main body execution condition, an instruction to edit the test source code which is an auxiliary source code, and a test execution. There are instructions to write code, instructions to specify test execution conditions, and so on.
 また、入力部72がユーザから受付ける指示には、制御プログラムをコントローラ30に送信する指示、実行条件をコントローラ30に送信する指示、制御プログラムをコントローラ30に実行させる指示(以下、プログラム実行指示という場合がある)などがある。制御プログラムをコントローラ30に送信する指示には、本体プログラムを送信する指示(以下、本体プログラム送信指示という場合がある)と、テストプログラムを送信する指示(以下、テストプログラム送信指示という場合がある)とがある。 Further, the instructions received by the input unit 72 from the user include an instruction to transmit the control program to the controller 30, an instruction to transmit the execution condition to the controller 30, and an instruction to cause the controller 30 to execute the control program (hereinafter, referred to as a program execution instruction). There is) and so on. The instructions for transmitting the control program to the controller 30 include an instruction for transmitting the main body program (hereinafter, may be referred to as a main body program transmission instruction) and an instruction for transmitting the test program (hereinafter, may be referred to as a test program transmission instruction). There is.
 入力部72は、本体ソースコードを編集する指示を受付けると、この指示を、本体ソースコード編集部11に送信する。入力部72は、テストソースコードを編集する指示を受付けると、この指示を、テストソースコード編集部21に送信する。 When the input unit 72 receives an instruction to edit the main body source code, the input unit 72 transmits this instruction to the main body source code editing unit 11. When the input unit 72 receives the instruction to edit the test source code, the input unit 72 transmits this instruction to the test source code editing unit 21.
 入力部72は、本体実行コードを作成する指示を受付けると、この指示を、本体ソースコード編集部11を介して本体実行コード作成部13に送信する。入力部72は、テスト実行コードを作成する指示を受付けると、この指示を、テストソースコード編集部21を介してテスト実行コード作成部23に送信する。 When the input unit 72 receives the instruction to create the main body execution code, the input unit 72 transmits this instruction to the main body execution code creation unit 13 via the main body source code editing unit 11. When the input unit 72 receives the instruction to create the test execution code, the input unit 72 transmits this instruction to the test execution code creation unit 23 via the test source code editing unit 21.
 入力部72は、本体実行条件を指定する指示を受付けると、この指示を、本体ソースコード編集部11を介して、本体実行条件指定部12に送信する。入力部72は、テスト実行条件を指定する指示を受付けると、この指示を、テストソースコード編集部21を介して、テスト実行条件指定部22に送信する。 When the input unit 72 receives an instruction to specify the main body execution condition, the input unit 72 transmits this instruction to the main body execution condition specification unit 12 via the main body source code editing unit 11. When the input unit 72 receives an instruction to specify the test execution condition, the input unit 72 transmits this instruction to the test execution condition specification unit 22 via the test source code editing unit 21.
 なお、入力部72は、本体実行条件を指定する指示を、直接本体実行条件指定部12に送ってもよい。また、入力部72は、テスト実行条件を指定する指示を、直接テスト実行条件指定部22に送ってもよい。 Note that the input unit 72 may directly send an instruction for designating the main body execution condition to the main body execution condition designating unit 12. Further, the input unit 72 may directly send an instruction for designating the test execution condition to the test execution condition designating unit 22.
 入力部72は、本体プログラム送信指示を受付けると、この指示を通信部71に送信する。入力部72は、テストプログラム送信指示を受付けると、この指示を通信部71に送信する。入力部72は、プログラム実行指示を受付けると、この指示を、通信部71を介して、コントローラ30の通信部81に送信する。 When the input unit 72 receives the main body program transmission instruction, the input unit 72 transmits this instruction to the communication unit 71. When the input unit 72 receives the test program transmission instruction, the input unit 72 transmits this instruction to the communication unit 71. When the input unit 72 receives the program execution instruction, the input unit 72 transmits this instruction to the communication unit 81 of the controller 30 via the communication unit 71.
 本体ソースコード編集部11は、編集対象のソースコードを液晶モニタなどの表示装置3に表示させる。本体ソースコード編集部11は、表示装置3に表示中の情報に対して、本体ソースコードを編集する指示を受付ける。本体ソースコード編集部11は、本体ソースコードを編集する指示に従って、本体ソースコードを編集する。本体ソースコード編集部11は、本体実行コードを作成する指示を受付けると、本体ソースコードを本体実行コード作成部13に送信する。 The main body source code editing unit 11 displays the source code to be edited on a display device 3 such as a liquid crystal monitor. The main body source code editing unit 11 receives an instruction to edit the main body source code for the information displayed on the display device 3. The main body source code editing unit 11 edits the main body source code according to the instruction for editing the main body source code. When the main body source code editing unit 11 receives the instruction to create the main body execution code, the main body source code is transmitted to the main body execution code creation unit 13.
 本体実行コード作成部13は、本体実行コードを作成する指示を受付けると、本体ソースコードをコンパイルすることで、本体実行コードを作成する。本体実行コード作成部13は、作成した本体実行コードを通信部71に送信する。 When the main body execution code creation unit 13 receives the instruction to create the main body execution code, the main body execution code is created by compiling the main body source code. The main body execution code creation unit 13 transmits the created main body execution code to the communication unit 71.
 本体実行条件指定部12は、本体実行条件を指定する指示に従って、本体実行条件を作成する。本体実行条件指定部12は、作成した本体実行条件を通信部71に送信する。 The main body execution condition specification unit 12 creates the main body execution condition according to the instruction for designating the main body execution condition. The main body execution condition designation unit 12 transmits the created main body execution condition to the communication unit 71.
 通信部71の本体送信部14は、本体プログラム送信指示を受付けると、本体実行コードおよび本体実行条件をコントローラ30の通信部81に送信する。また、本体送信部14は、プログラム実行指示を受付けるとプログラム実行指示をコントローラ30の通信部81に送信する。 When the main body transmission unit 14 of the communication unit 71 receives the main body program transmission instruction, it transmits the main body execution code and the main body execution condition to the communication unit 81 of the controller 30. Further, when the main body transmission unit 14 receives the program execution instruction, the main body transmission unit 14 transmits the program execution instruction to the communication unit 81 of the controller 30.
 通信部71の本体受信部15は、コントローラ30からテスト調整の結果を示すデータ、本体実行コードなどを受信し、本体ソースコード編集部11に送信する。 The main body receiving unit 15 of the communication unit 71 receives data indicating the result of test adjustment, the main body execution code, and the like from the controller 30 and transmits the data to the main body source code editing unit 11.
 テストソースコード編集部21は、編集対象のソースコードを表示装置3に表示させる。テストソースコード編集部21は、表示装置3に表示中の情報に対して、テストソースコードを編集する指示を受付ける。テストソースコード編集部21は、テストソースコードを編集する指示に従って、テストソースコードを編集する。テストソースコード編集部21は、テスト実行コードを作成する指示を受付けると、テストソースコードをテスト実行コード作成部23に送信する。 The test source code editing unit 21 displays the source code to be edited on the display device 3. The test source code editing unit 21 receives an instruction to edit the test source code for the information displayed on the display device 3. The test source code editing unit 21 edits the test source code according to the instruction for editing the test source code. When the test source code editing unit 21 receives the instruction to create the test execution code, the test source code editing unit 21 transmits the test source code to the test execution code creation unit 23.
 テスト実行コード作成部23は、テスト実行コードを作成する指示を受付けると、テストソースコードをコンパイルすることで、テスト実行コードを作成する。テスト実行コード作成部23は、作成したテスト実行コードを通信部71に送信する。 When the test execution code creation unit 23 receives the instruction to create the test execution code, the test execution code is created by compiling the test source code. The test execution code creation unit 23 transmits the created test execution code to the communication unit 71.
 テスト実行条件指定部22は、テスト実行条件を指定する指示に従って、テスト実行条件を作成する。テスト実行条件指定部22は、作成したテスト実行条件を通信部71に送信する。 The test execution condition specification unit 22 creates a test execution condition according to an instruction for designating the test execution condition. The test execution condition specification unit 22 transmits the created test execution condition to the communication unit 71.
 通信部71のテスト送信部24は、テストプログラム送信指示を受付けると、テスト実行コードおよびテスト実行条件をコントローラ30の通信部81に送信する。 When the test transmission unit 24 of the communication unit 71 receives the test program transmission instruction, it transmits the test execution code and the test execution condition to the communication unit 81 of the controller 30.
 通信部71のテスト受信部25は、コントローラ30からテスト調整の結果を示すデータ、テスト実行コードなどを受信し、テストソースコード編集部21に送信する。 The test receiving unit 25 of the communication unit 71 receives data indicating the result of the test adjustment, the test execution code, and the like from the controller 30 and transmits the data to the test source code editing unit 21.
 コントローラ30の通信部81では、本体受信部31が、本体送信部14から情報を受信すると、受信した情報を本体実行コード記憶部33に記憶させる。本体受信部31が、本体送信部14から受信する情報は、本体実行コード、本体実行条件、プログラム実行指示などである。 In the communication unit 81 of the controller 30, when the main body receiving unit 31 receives information from the main body transmitting unit 14, the received information is stored in the main body execution code storage unit 33. The information received by the main body receiving unit 31 from the main body transmitting unit 14 is a main body execution code, a main body execution condition, a program execution instruction, and the like.
 本体送信部32は、プログラム作成支援装置10から要求のあった情報を本体実行コード記憶部33から読出して、プログラム作成支援装置10の通信部71に送信する。 The main body transmission unit 32 reads the information requested from the program creation support device 10 from the main body execution code storage unit 33 and transmits it to the communication unit 71 of the program creation support device 10.
 本体実行コード記憶部33は、通信部81から送られてくる情報および制御部82から送られてくる情報を記憶するメモリなどである。通信部81から本体実行コード記憶部33に送られてくる情報は、本体実行コード、本体実行条件、プログラム実行指示などであり、制御部82から送られてくる情報は、テスト調整の結果を示すデータなどである。 The main body execution code storage unit 33 is a memory or the like that stores information sent from the communication unit 81 and information sent from the control unit 82. The information sent from the communication unit 81 to the main body execution code storage unit 33 is the main body execution code, the main body execution condition, the program execution instruction, etc., and the information sent from the control unit 82 indicates the result of the test adjustment. Data etc.
 コントローラ30の通信部81では、テスト受信部41が、テスト送信部24から情報を受信すると、受信した情報をテスト実行コード記憶部43に記憶させる。テスト受信部41が、テスト送信部24から受信する情報は、テスト実行コード、テスト実行条件などである。 In the communication unit 81 of the controller 30, when the test receiving unit 41 receives information from the test transmitting unit 24, the received information is stored in the test execution code storage unit 43. The information received by the test receiving unit 41 from the test transmitting unit 24 is a test execution code, a test execution condition, and the like.
 テスト送信部42は、プログラム作成支援装置10から要求のあった情報をテスト実行コード記憶部43から読出して、プログラム作成支援装置10の通信部71に送信する。 The test transmission unit 42 reads the information requested from the program creation support device 10 from the test execution code storage unit 43 and transmits it to the communication unit 71 of the program creation support device 10.
 テスト実行コード記憶部43は、通信部81から送られてくる情報を記憶するメモリなどである。通信部81からテスト実行コード記憶部43に送られてくる情報は、テスト実行コード、テスト実行条件などである。 The test execution code storage unit 43 is a memory or the like that stores information sent from the communication unit 81. The information sent from the communication unit 81 to the test execution code storage unit 43 is a test execution code, a test execution condition, and the like.
 制御部82では、本体実行条件判定部35と、本体実行制御部34と、テスト実行制御部44と、テスト実行条件判定部45とが接続されている。制御部82では、本体実行制御部34と、本体実行条件判定部35と、テスト実行制御部44と、テスト実行条件判定部45とが、互いに情報を共有しながら動作する。なお、制御部82内の通信は、直接構成要素間で行われてもよいし、他の構成要素を介して行われてもよい。 In the control unit 82, the main body execution condition determination unit 35, the main body execution control unit 34, the test execution control unit 44, and the test execution condition determination unit 45 are connected. In the control unit 82, the main body execution control unit 34, the main body execution condition determination unit 35, the test execution control unit 44, and the test execution condition determination unit 45 operate while sharing information with each other. The communication in the control unit 82 may be performed directly between the components, or may be performed via other components.
 本体実行制御部34は、本体実行コード記憶部33がプログラム実行指示を記憶すると、プログラム実行指示を読出す。なお、プログラム実行指示は、本体受信部31から直接本体実行制御部34に送られてもよい。 The main body execution control unit 34 reads the program execution instruction when the main body execution code storage unit 33 stores the program execution instruction. The program execution instruction may be sent directly from the main body receiving unit 31 to the main body execution control unit 34.
 本体実行制御部34は、プログラム実行指示を読出すと、本体実行コード記憶部33で記憶されている本体実行コードを読出し、テスト実行制御部44にテスト実行コードの読出し指示を送信する。 When the main body execution control unit 34 reads the program execution instruction, the main body execution code is read out from the main body execution code storage unit 33, and the test execution code reading instruction is transmitted to the test execution control unit 44.
 本体実行制御部34は、本体実行条件判定部35に、本体実行条件を満たすか否かの判定指示を送信する。本体実行制御部34は、本体実行条件を満たす場合には、本体実行コードを実行し、本体実行条件を満たさない場合には、本体実行コードを実行しない(スキップする)。 The main body execution control unit 34 transmits a judgment instruction as to whether or not the main body execution condition is satisfied to the main body execution condition judgment unit 35. The main body execution control unit 34 executes the main body execution code when the main body execution condition is satisfied, and does not execute (skip) the main body execution code when the main body execution condition is not satisfied.
 本体実行条件判定部35は、本体実行条件を満たすか否かを判定し、判定結果を本体実行制御部34に送信する。本体実行条件を満たす場合、本体実行条件判定部35は、テスト実行条件判定部45に、テスト実行条件を満たすか否かの判定指示を送信する。 The main body execution condition determination unit 35 determines whether or not the main body execution condition is satisfied, and transmits the determination result to the main body execution control unit 34. When the main body execution condition is satisfied, the main body execution condition determination unit 35 transmits a determination instruction as to whether or not the test execution condition is satisfied to the test execution condition determination unit 45.
 テスト実行制御部44は、テスト実行条件判定部45に、テスト実行条件を満たすか否かの判定指示を送信する。テスト実行制御部44は、テスト実行条件を満たす場合には、テスト実行コードを実行し、テスト実行条件を満たさない場合には、テスト実行コードを実行しない。 The test execution control unit 44 transmits a determination instruction as to whether or not the test execution condition is satisfied to the test execution condition determination unit 45. The test execution control unit 44 executes the test execution code when the test execution condition is satisfied, and does not execute the test execution code when the test execution condition is not satisfied.
 テスト実行条件判定部45は、テスト実行条件を満たすか否かを判定し、判定結果をテスト実行制御部44に送信する。 The test execution condition determination unit 45 determines whether or not the test execution condition is satisfied, and transmits the determination result to the test execution control unit 44.
 制御部82は、本体プログラムがN本(Nは自然数)である場合、N本分の本体プログラムに対してループ処理を実行する。 When the number of main programs is N (N is a natural number), the control unit 82 executes loop processing for N main programs.
 出力部83は、本体実行制御部34から送られてくる動作指令を、信号を増幅するアンプ4を介してモータ2に出力し、テスト実行制御部44から送られてくる動作指令を、アンプ4を介してモータ2に出力する。モータ2は、アンプ4を介して送られてくる動作指令に従って動作する。 The output unit 83 outputs an operation command sent from the main body execution control unit 34 to the motor 2 via an amplifier 4 that amplifies the signal, and outputs an operation command sent from the test execution control unit 44 to the amplifier 4. Is output to the motor 2 via. The motor 2 operates according to an operation command sent via the amplifier 4.
 このように、プログラム作成支援装置10は、本体ソースコードにテストソースコードを混在させることなく、制御プログラムの本体ソースコードとテストソースコードとを各々個別に作成することができる。 In this way, the program creation support device 10 can individually create the main body source code and the test source code of the control program without mixing the test source code in the main body source code.
 また、プログラム作成支援装置10は、本体プログラムの本体ソースコードを変更することなく、テストプログラムのテストソースコードを変更することによって、テスト内容または調整内容を変更することができる。 Further, the program creation support device 10 can change the test content or the adjustment content by changing the test source code of the test program without changing the main body source code of the main body program.
 また、コントローラ30は、本体プログラムの本体実行コードとテストプログラムのテスト実行コードとを、それぞれ個別の記憶領域に保存しているので、プログラム作成支援装置10は、本体実行コードを変更することなく、テスト実行コードの追加、削除といった変更を容易に行うことができる。 Further, since the controller 30 stores the main body execution code of the main body program and the test execution code of the test program in individual storage areas, the program creation support device 10 does not change the main body execution code. You can easily make changes such as adding or deleting test execution code.
 また、プログラム作成支援装置10は、モータ2のテスト調整が完了した後に本体プログラムの本体実行コードを変更することなく、テストプログラムのテスト実行コードを容易に除去することができる。 Further, the program creation support device 10 can easily remove the test execution code of the test program without changing the main body execution code of the main body program after the test adjustment of the motor 2 is completed.
 図2は、実施の形態1にかかる制御システムによる制御処理の手順を示すフローチャートである。制御システム1Aのコントローラ30では、本体実行制御部34が、プログラム実行指示を読出すと、制御部82が初期化処理を実行する(ステップS110)。初期化処理が完了した後、制御部82が、本体実行コード記憶部33で記憶されている本体プログラムを読出して、読出した本体プログラムに対する反復処理を開始する。ここでは、本体プログラムP1、本体プログラムP2の順番で本体プログラムの処理手順が規定されている場合について説明する。 FIG. 2 is a flowchart showing a procedure of control processing by the control system according to the first embodiment. In the controller 30 of the control system 1A, when the main body execution control unit 34 reads the program execution instruction, the control unit 82 executes the initialization process (step S110). After the initialization process is completed, the control unit 82 reads the main body program stored in the main body execution code storage unit 33, and starts the iterative process for the read main body program. Here, a case where the processing procedure of the main body program is specified in the order of the main body program P1 and the main body program P2 will be described.
 本体実行条件判定部35は、本体プログラムP1に対し、本体実行条件を満たすか否かを判定する。ここでは、本体実行条件として、「本体実行条件が成立する時には、本体プログラムP1の実行をスキップすること」が規定されている場合について説明する。この場合、本体実行条件判定部35は、本体実行条件が成立するか否かを判定することで、本体プログラムP1の実行をスキップするか否かを判定する(ステップS120)。 The main body execution condition determination unit 35 determines whether or not the main body execution condition is satisfied for the main body program P1. Here, a case will be described in which "when the main body execution condition is satisfied, the execution of the main body program P1 is skipped" is specified as the main body execution condition. In this case, the main body execution condition determination unit 35 determines whether or not to skip the execution of the main body program P1 by determining whether or not the main body execution condition is satisfied (step S120).
 本体プログラムP1の実行をスキップする条件が成立しない場合(ステップS120、No)、テスト実行条件判定部45は、テスト実行条件を満たすか否かを判定する。ここでは、テスト実行条件として、「本体プログラムP1の実行前に実行するテストプログラムQ1が存在する時には、本体プログラムP1の実行前にテストプログラムQ1を実行する」ことが規定されている場合について説明する。この場合、テスト実行条件判定部45は、本体プログラムP1の実行前に実行するテストプログラムQ1があるか否かを判定する(ステップS130)。 When the condition for skipping the execution of the main program P1 is not satisfied (step S120, No), the test execution condition determination unit 45 determines whether or not the test execution condition is satisfied. Here, a case will be described in which it is stipulated that "when the test program Q1 to be executed before the execution of the main program P1 exists, the test program Q1 is executed before the execution of the main program P1" as the test execution condition. .. In this case, the test execution condition determination unit 45 determines whether or not there is a test program Q1 to be executed before the execution of the main program P1 (step S130).
 本体プログラムP1の実行前に実行するテストプログラムQ1がある場合(ステップS130、Yes)、テスト実行条件判定部45は、本体プログラムP1の実行前に対してテスト実行条件を満たすと判定する。この場合、テスト実行制御部44は、本体プログラムP1のテストプログラムQ1を実行する(ステップS140)。その後、本体実行制御部34は、本体プログラムP1を実行する(ステップS150)。 If there is a test program Q1 to be executed before the execution of the main program P1 (step S130, Yes), the test execution condition determination unit 45 determines that the test execution condition is satisfied before the execution of the main program P1. In this case, the test execution control unit 44 executes the test program Q1 of the main program P1 (step S140). After that, the main body execution control unit 34 executes the main body program P1 (step S150).
 一方、本体プログラムP1の実行前に実行するテストプログラムQ1がない場合(ステップS130、No)、テスト実行条件判定部45は、本体プログラムP1の実行前に対してテスト実行条件を満たさないと判定する。この場合、テスト実行制御部44は、テストプログラムQ1を実行せず、本体実行制御部34は、本体プログラムP1を実行する(ステップS150)。 On the other hand, when there is no test program Q1 to be executed before the execution of the main program P1 (step S130, No), the test execution condition determination unit 45 determines that the test execution condition is not satisfied before the execution of the main program P1. .. In this case, the test execution control unit 44 does not execute the test program Q1, and the main body execution control unit 34 executes the main body program P1 (step S150).
 本体プログラムP1の実行が完了すると、テスト実行条件判定部45は、本体プログラムP1の実行後に対してテスト実行条件を満たすか否かを判定する。ここでは、テスト実行条件として、「本体プログラムP1の実行後に実行するテストプログラムQ2が存在する時には、本体プログラムP1の実行後にテストプログラムQ2を実行する」ことが規定されている場合について説明する。この場合、テスト実行条件判定部45は、本体プログラムP1の実行後に実行するテストプログラムQ2があるか否かを判定する(ステップS160)。 When the execution of the main program P1 is completed, the test execution condition determination unit 45 determines whether or not the test execution condition is satisfied after the execution of the main program P1. Here, a case will be described in which it is stipulated that "when the test program Q2 to be executed after the execution of the main program P1 exists, the test program Q2 is executed after the execution of the main program P1" as the test execution condition. In this case, the test execution condition determination unit 45 determines whether or not there is a test program Q2 to be executed after the execution of the main program P1 (step S160).
 本体プログラムP1の実行後に実行するテストプログラムQ2がある場合(ステップS160、Yes)、テスト実行条件判定部45は、本体プログラムP1の実行後に対してテスト実行条件を満たすと判定する。この場合、テスト実行制御部44は、本体プログラムP1のテストプログラムQ2を実行する(ステップS170)。 When there is a test program Q2 to be executed after the execution of the main program P1 (step S160, Yes), the test execution condition determination unit 45 determines that the test execution condition is satisfied after the execution of the main program P1. In this case, the test execution control unit 44 executes the test program Q2 of the main program P1 (step S170).
 その後、本体実行条件判定部35は、本体プログラムP2に対し本体実行条件を満たすか否かを判定する。ここでは、本体実行条件として、「本体実行条件が成立する時には、本体プログラムP2の実行をスキップすること」が規定されている場合について説明する。この場合、本体実行条件判定部35は、本体実行条件が成立するか否かを判定することで、本体プログラムP2の実行をスキップするか否かを判定する(ステップS180)。 After that, the main body execution condition determination unit 35 determines whether or not the main body execution condition is satisfied for the main body program P2. Here, a case will be described in which "when the main body execution condition is satisfied, the execution of the main body program P2 is skipped" is specified as the main body execution condition. In this case, the main body execution condition determination unit 35 determines whether or not to skip the execution of the main body program P2 by determining whether or not the main body execution condition is satisfied (step S180).
 一方、本体プログラムP1の実行後に実行するテストプログラムQ2がない場合(ステップS160、No)、テスト実行条件判定部45は、テスト実行条件を満たさないと判定する。この場合、テスト実行制御部44は、テストプログラムQ2を実行せず、本体実行条件判定部35は、本体プログラムP2の実行をスキップするか否かを判定する(ステップS180)。 On the other hand, when there is no test program Q2 to be executed after the execution of the main program P1 (step S160, No), the test execution condition determination unit 45 determines that the test execution condition is not satisfied. In this case, the test execution control unit 44 does not execute the test program Q2, and the main body execution condition determination unit 35 determines whether or not to skip the execution of the main body program P2 (step S180).
 ステップS120において、本体プログラムP1の実行をスキップする条件が成立する場合(ステップS120、Yes)、本体実行制御部34は、本体プログラムP1の実行をスキップする。この場合、本体実行条件判定部35は、本体プログラムP2の実行をスキップするか否かを判定する(ステップS180)。 In step S120, when the condition for skipping the execution of the main body program P1 is satisfied (step S120, Yes), the main body execution control unit 34 skips the execution of the main body program P1. In this case, the main body execution condition determination unit 35 determines whether or not to skip the execution of the main body program P2 (step S180).
 本体プログラムP2の実行をスキップする条件が成立しない場合(ステップS180、No)、テスト実行条件判定部45は、テスト実行条件を満たすか否かを判定する。ここでは、テスト実行条件として、「本体プログラムP2の実行前に実行するテストプログラムQ3が存在する時には、本体プログラムP2の実行前にテストプログラムQ3を実行する」ことが規定されている場合について説明する。この場合、テスト実行条件判定部45は、本体プログラムP2の実行前に実行するテストプログラムQ3があるか否かを判定する(ステップS190)。 When the condition for skipping the execution of the main program P2 is not satisfied (step S180, No), the test execution condition determination unit 45 determines whether or not the test execution condition is satisfied. Here, a case will be described in which it is stipulated that "when the test program Q3 to be executed before the execution of the main program P2 exists, the test program Q3 is executed before the execution of the main program P2" as the test execution condition. .. In this case, the test execution condition determination unit 45 determines whether or not there is a test program Q3 to be executed before the execution of the main program P2 (step S190).
 本体プログラムP2の実行前に実行するテストプログラムQ3がある場合(ステップS190、Yes)、テスト実行条件判定部45は、本体プログラムP2の実行前に対してテスト実行条件を満たすと判定する。この場合、テスト実行制御部44は、本体プログラムP2のテストプログラムQ3を実行する(ステップS200)。その後、本体実行制御部34は、本体プログラムP2を実行する(ステップS210)。 If there is a test program Q3 to be executed before the execution of the main program P2 (step S190, Yes), the test execution condition determination unit 45 determines that the test execution condition is satisfied before the execution of the main program P2. In this case, the test execution control unit 44 executes the test program Q3 of the main program P2 (step S200). After that, the main body execution control unit 34 executes the main body program P2 (step S210).
 一方、本体プログラムP2の実行前に実行するテストプログラムQ3がない場合(ステップS190、No)、テスト実行条件判定部45は、本体プログラムP2の実行前に対してテスト実行条件を満たさないと判定する。この場合、テスト実行制御部44は、テストプログラムQ3を実行せず、本体実行制御部34は、本体プログラムP2を実行する(ステップS210)。 On the other hand, when there is no test program Q3 to be executed before the execution of the main program P2 (step S190, No), the test execution condition determination unit 45 determines that the test execution condition is not satisfied before the execution of the main program P2. .. In this case, the test execution control unit 44 does not execute the test program Q3, and the main body execution control unit 34 executes the main body program P2 (step S210).
 本体プログラムP2の実行が完了すると、テスト実行条件判定部45は、本体プログラムP2の実行後に対してテスト実行条件を満たすか否かを判定する。ここでは、テスト実行条件として、「本体プログラムP2の実行後に実行するテストプログラムQ4が存在する時には、本体プログラムP2の実行後にテストプログラムQ4を実行する」ことが規定されている場合について説明する。この場合、テスト実行条件判定部45は、本体プログラムP2の実行後に実行するテストプログラムQ4があるか否かを判定する(ステップS220)。 When the execution of the main program P2 is completed, the test execution condition determination unit 45 determines whether or not the test execution condition is satisfied after the execution of the main program P2. Here, a case will be described in which it is stipulated that "when the test program Q4 to be executed after the execution of the main program P2 exists, the test program Q4 is executed after the execution of the main program P2" as the test execution condition. In this case, the test execution condition determination unit 45 determines whether or not there is a test program Q4 to be executed after the execution of the main program P2 (step S220).
 本体プログラムP2の実行後に実行するテストプログラムQ4がある場合(ステップS220、Yes)、テスト実行条件判定部45は、本体プログラムP2の実行後に対してテスト実行条件を満たすと判定する。この場合、テスト実行制御部44は、本体プログラムP2のテストプログラムQ4を実行する(ステップS230)。 When there is a test program Q4 to be executed after the execution of the main program P2 (step S220, Yes), the test execution condition determination unit 45 determines that the test execution condition is satisfied after the execution of the main program P2. In this case, the test execution control unit 44 executes the test program Q4 of the main program P2 (step S230).
 一方、本体プログラムP2の実行後に実行するテストプログラムQ4がない場合(ステップS220、No)、テスト実行条件判定部45は、テスト実行条件を満たさないと判定する。この場合、テスト実行制御部44は、テストプログラムQ4を実行しない。 On the other hand, when there is no test program Q4 to be executed after the execution of the main program P2 (step S220, No), the test execution condition determination unit 45 determines that the test execution condition is not satisfied. In this case, the test execution control unit 44 does not execute the test program Q4.
 ステップS180において、本体プログラムP2の実行をスキップする条件が成立する場合(ステップS180、Yes)、本体実行制御部34は、本体プログラムP2の実行をスキップする。これにより、制御部82が、本体実行コード記憶部33から読出した本体プログラムに対する反復処理を終了する。 In step S180, when the condition for skipping the execution of the main body program P2 is satisfied (step S180, Yes), the main body execution control unit 34 skips the execution of the main body program P2. As a result, the control unit 82 ends the iterative processing for the main body program read from the main body execution code storage unit 33.
 なお、コントローラ30による反復処理は、図2で説明した方法に限らない。例えば、コントローラ30は、ユーザによって予め設定された時間間隔で周期的にステップS120からステップS230までの反復処理を実行してもよい。また、コントローラ30は、特定の外部信号(例えば緊急停止ボタンの押下を検出した際にコントローラ30に入力される信号)の入力を契機に反復処理を実行してもよい。 Note that the iterative processing by the controller 30 is not limited to the method described in FIG. For example, the controller 30 may periodically execute the iterative process from step S120 to step S230 at a time interval preset by the user. Further, the controller 30 may execute the iterative process triggered by the input of a specific external signal (for example, the signal input to the controller 30 when the pressing of the emergency stop button is detected).
 制御システム1Aでは、テスト調整時には、テストプログラムQ1~Q4が存在するので、ステップS140,S170,S200,S230の処理が実行される。一方、制御システム1Aでは、実運用時には、テストプログラムQ1~Q4がコントローラ30において無効化または削除されるので、ステップS140,S170,S200,S230の処理は実行されない。 In the control system 1A, since the test programs Q1 to Q4 exist at the time of test adjustment, the processes of steps S140, S170, S200, and S230 are executed. On the other hand, in the control system 1A, since the test programs Q1 to Q4 are invalidated or deleted in the controller 30 during actual operation, the processes of steps S140, S170, S200, and S230 are not executed.
 なお、制御システム1Aは、本体実行条件を用いなくてもよい。この場合、プログラム作成支援装置10は、本体実行条件指定部12を備えていなくてもよい。また、コントローラ30は、本体実行条件判定部35を備えていなくてもよい。そして、図2におけるステップS120,S180の処理が省略される。 Note that the control system 1A does not have to use the main body execution condition. In this case, the program creation support device 10 does not have to include the main body execution condition designation unit 12. Further, the controller 30 does not have to include the main body execution condition determination unit 35. Then, the processing of steps S120 and S180 in FIG. 2 is omitted.
 制御システム1Aでは、テスト実行条件指定部22が、本体プログラムの実行前にテスト実行コードを実行する条件である事前条件を、ユーザからの指示に従って指定可能となっている。また、制御システム1Aでは、テスト実行条件指定部22が、本体プログラムの実行後にテスト実行コードを実行する条件である事後条件を、ユーザからの指示に従って指定可能となっている。 In the control system 1A, the test execution condition specification unit 22 can specify a precondition, which is a condition for executing the test execution code before executing the main program, according to an instruction from the user. Further, in the control system 1A, the test execution condition specifying unit 22 can specify a post-condition, which is a condition for executing the test execution code after executing the main program, according to an instruction from the user.
 テスト実行条件判定部45は、設定された事前条件および事後条件に従って、テストプログラムのテスト実行コードを実行できるので、本体プログラムを変更すること無く、テストプログラムを実行することができる。事前条件が成立した場合に実行されるテスト実行コードの例は、本体プログラムの初期化である。事後条件が成立した場合に実行されるテスト実行コードの例は、本体プログラムの実行結果を用いた演算処理である。 Since the test execution condition determination unit 45 can execute the test execution code of the test program according to the set pre-condition and post-condition, the test program can be executed without changing the main body program. An example of the test execution code executed when the precondition is satisfied is the initialization of the main program. An example of the test execution code executed when the ex post facto condition is satisfied is the arithmetic processing using the execution result of the main program.
 また、制御システム1Aでは、テスト調整が完了した後にテスト実行コードを容易に無効化または削除できるので、本体実行コードが実行される際にテスト実行コードが誤って実行されることを容易に防止できる。 Further, in the control system 1A, since the test execution code can be easily invalidated or deleted after the test adjustment is completed, it is possible to easily prevent the test execution code from being executed by mistake when the main body execution code is executed. ..
 図3は、実施の形態1にかかるプログラム作成支援装置によるデータ作成処理の手順を示すシーケンス図である。ここでは、ソースコードの編集から実行条件の指定までの処理について説明する。プログラム作成支援装置10が作成するデータには、本体ソースコード、本体実行コード、本体実行条件、テストソースコード、テスト実行コード、テスト実行条件などが含まれている。図3に示す、本体ソースコード編集部11、テストソースコード編集部21、本体実行コード作成部13、テスト実行コード作成部23、本体実行条件指定部12、およびテスト実行条件指定部22からなる構成要素群51は、プログラム作成支援装置10に配置されている。 FIG. 3 is a sequence diagram showing a procedure of data creation processing by the program creation support device according to the first embodiment. Here, the processing from editing the source code to specifying the execution conditions will be described. The data created by the program creation support device 10 includes a main body source code, a main body execution code, a main body execution condition, a test source code, a test execution code, a test execution condition, and the like. A configuration consisting of a main body source code editing unit 11, a test source code editing unit 21, a main body execution code creation unit 13, a test execution code creation unit 23, a main body execution condition specification unit 12, and a test execution condition specification unit 22 shown in FIG. The element group 51 is arranged in the program creation support device 10.
 ユーザによって本体ソースコードの編集指示が入力部72に入力されると、この編集指示が本体ソースコード編集部11に送られ(st1)、本体ソースコード編集部11が、編集指示に従って本体ソースコードを編集する。 When the user inputs an editing instruction for the main body source code to the input unit 72, this editing instruction is sent to the main body source code editing unit 11 (st1), and the main body source code editing unit 11 outputs the main body source code according to the editing instruction. To edit.
 また、ユーザによってテストソースコードの編集指示が入力部72に入力されると、この編集指示がテストソースコード編集部21に送られ(st2)、テストソースコード編集部21が、編集指示に従ってテストソースコードを編集する。なお、st1の処理とst2の処理とは、何れが先に実行されてもよい。 Further, when the user inputs an edit instruction of the test source code to the input unit 72, the edit instruction is sent to the test source code editorial unit 21 (st2), and the test source code editorial unit 21 follows the edit instruction to test source. Edit the code. Either the st1 process or the st2 process may be executed first.
 st1の処理の後、ユーザによって本体実行コードの作成指示が入力部72に入力されると、この作成指示が本体ソースコード編集部11に送られる(st3)。これにより、本体ソースコード編集部11が、本体実行コードの作成指示を本体実行コード作成部13に送信し(st4)、本体実行コード作成部13が本体実行コードを作成する。 After the processing of st1, when the user inputs an instruction to create the main body execution code to the input unit 72, this creation instruction is sent to the main body source code editing unit 11 (st3). As a result, the main body source code editing unit 11 transmits a main body execution code creation instruction to the main body execution code creation unit 13 (st4), and the main body execution code creation unit 13 creates the main body execution code.
 st2の処理の後、ユーザによってテスト実行コードの作成指示が入力部72に入力されると、この作成指示がテストソースコード編集部21に送られる(st5)。これにより、テストソースコード編集部21が、テスト実行コードの作成指示をテスト実行コード作成部23に送信し(st6)、テスト実行コード作成部23がテスト実行コードを作成する。なお、st3の処理とst5の処理とは、何れが先に実行されてもよい。 After the processing of st2, when the user inputs a test execution code creation instruction to the input unit 72, this creation instruction is sent to the test source code editing unit 21 (st5). As a result, the test source code editing unit 21 sends a test execution code creation instruction to the test execution code creation unit 23 (st6), and the test execution code creation unit 23 creates the test execution code. Either the st3 process or the st5 process may be executed first.
 以下で説明するst7~st9の処理においては、本体プログラムが図2で説明した本体プログラムP1である場合について説明する。 In the processes of st7 to st9 described below, the case where the main program is the main program P1 described with reference to FIG. 2 will be described.
 本体プログラムP1に対する本体実行条件を指定する指示が、ユーザによって入力部72に入力されると、この指定指示が本体実行条件指定部12に送られる(st7)。これにより、本体実行条件指定部12が、ユーザ指示に従って、本体プログラムP1に対する本体実行条件を作成する。ここでの本体実行条件は、図2のステップS120で用いられる本体実行条件である。 When an instruction for designating the main body execution condition for the main body program P1 is input to the input unit 72 by the user, this designation instruction is sent to the main body execution condition designation unit 12 (st7). As a result, the main body execution condition designation unit 12 creates the main body execution condition for the main body program P1 according to the user instruction. The main body execution condition here is the main body execution condition used in step S120 of FIG.
 また、本体プログラムP1を実行する前の事前条件を指定する指示が、ユーザによって入力部72に入力されると、この指定指示がテスト実行条件指定部22に送られる(st8)。これにより、テスト実行条件指定部22が、ユーザ指示に従って、本体プログラムP1に対する事前条件を作成する。ここでの事前条件は、図2のステップS130で用いられるテスト実行条件である。 Further, when an instruction for designating a precondition before executing the main program P1 is input to the input unit 72 by the user, this designation instruction is sent to the test execution condition specification unit 22 (st8). As a result, the test execution condition designation unit 22 creates a preliminary condition for the main program P1 according to the user instruction. The precondition here is the test execution condition used in step S130 of FIG.
 また、本体プログラムP1を実行した後の事後条件を指定する指示が、ユーザによって入力部72に入力されると、この指定指示がテスト実行条件指定部22に送られる(st9)。これにより、テスト実行条件指定部22が、ユーザ指示に従って、本体プログラムP1に対する事後条件を作成する。ここでの事後条件は、図2のステップS160で用いられるテスト実行条件である。 Further, when an instruction for designating a post-condition after executing the main program P1 is input to the input unit 72 by the user, this designation instruction is sent to the test execution condition specification unit 22 (st9). As a result, the test execution condition specification unit 22 creates a post-condition for the main program P1 according to the user's instruction. The post-condition here is the test execution condition used in step S160 of FIG.
 なお、st7~st9の処理は、何れが先に実行されてもよい。すなわち、本体実行条件、事前条件、および事後条件は、何れの順番で作成されてもよい。また、st7~st9の処理は、st1~st6のうちの何れかの処理よりも先に実行されてもよい。また、入力部72は、本体実行条件を指定した指示を、本体ソースコード編集部11を介して、本体実行条件指定部12に送ってもよい。また、入力部72は、事前条件を指定した指示および事後条件を指定した指示を、テストソースコード編集部21を介して、テスト実行条件指定部22に送ってもよい。 It should be noted that any of the processes of st7 to st9 may be executed first. That is, the main body execution condition, the pre-condition, and the post-condition may be created in any order. Further, the processes of st7 to st9 may be executed before any of the processes of st1 to st6. Further, the input unit 72 may send an instruction specifying the main body execution condition to the main body execution condition designating unit 12 via the main body source code editing unit 11. Further, the input unit 72 may send an instruction for which the pre-condition is specified and an instruction for which the post-condition is specified to the test execution condition specification unit 22 via the test source code editing unit 21.
 このように、プログラム作成支援装置10は、st8の処理のように、本体プログラムを実行する前に実行するテストプログラムを事前条件として設定できる。すなわち、制御システム1Aでは、本体プログラムの本体実行コードの動作確認および調整を行うための試験データの準備といった、本体実行コードの実行開始前に実行させたいテストプログラムのテスト実行コードを、ユーザ指示に従って、事前条件として指定できる。 In this way, the program creation support device 10 can set a test program to be executed before executing the main program as a precondition, as in the process of st8. That is, in the control system 1A, the test execution code of the test program to be executed before the start of execution of the main body execution code, such as the preparation of test data for checking the operation and adjusting the main body execution code of the main body program, is executed according to the user instruction. , Can be specified as a precondition.
 また、プログラム作成支援装置10は、st9の処理のように、本体プログラムを実行した後に実行するテストプログラムを事後条件として設定できる。すなわち、制御システム1Aでは、本体プログラムの本体実行コードの実行結果が所望の結果を得られているか否かを判定すること、実行結果を記録することといった、本体実行コードの実行完了後に実行させたいテストプログラムのテスト実行コードを、ユーザ指示に従って、事後条件として指定できる。 Further, the program creation support device 10 can set a test program to be executed after executing the main program as a post-condition, as in the process of st9. That is, in the control system 1A, it is desired to execute the main body execution code after the execution of the main body execution code is completed, such as determining whether or not the execution result of the main body execution code of the main body program is obtained and recording the execution result. The test execution code of the test program can be specified as a post-condition according to the user instruction.
 図4は、実施の形態1にかかる制御システムによるデータ送信処理およびデータ保存処理の手順を示すシーケンス図である。ここでは、実行コードの送信から実行コードの保存までの処理について説明する。プログラム作成支援装置10がコントローラ30に送信するデータには、本体実行コードおよびテスト実行コードが含まれている。図4に示す、通信部71、本体送信部14、およびテスト送信部24からなる構成要素群52は、プログラム作成支援装置10に配置されている。また、図4に示す、通信部81、本体受信部31、テスト受信部41、本体実行コード記憶部33、およびテスト実行コード記憶部43からなる構成要素群61は、コントローラ30に配置されている。 FIG. 4 is a sequence diagram showing a procedure of data transmission processing and data storage processing by the control system according to the first embodiment. Here, the process from the transmission of the execution code to the saving of the execution code will be described. The data transmitted by the program creation support device 10 to the controller 30 includes the main body execution code and the test execution code. The component group 52 including the communication unit 71, the main body transmission unit 14, and the test transmission unit 24 shown in FIG. 4 is arranged in the program creation support device 10. Further, the component group 61 including the communication unit 81, the main body receiving unit 31, the test receiving unit 41, the main body execution code storage unit 33, and the test execution code storage unit 43 shown in FIG. 4 is arranged in the controller 30. ..
 ユーザによって、実行コードのコントローラ30への送信指示が、プログラム作成支援装置10の入力部72に入力されると、この送信指示が通信部71に送られる(st11)。 When the user inputs an instruction to transmit the execution code to the controller 30 to the input unit 72 of the program creation support device 10, this transmission instruction is sent to the communication unit 71 (st11).
 通信部71は、本体実行コードのコントローラ30への送信指示である本体送信指示を、本体送信部14に送信する(st12)。これにより、本体送信部14が、本体実行コードをコントローラ30の通信部81に送信する処理である本体送信処理を実行する(st13)。 The communication unit 71 transmits a main body transmission instruction, which is a main body transmission instruction to the controller 30 of the main body execution code, to the main body transmission unit 14 (st12). As a result, the main body transmission unit 14 executes the main body transmission process, which is a process of transmitting the main body execution code to the communication unit 81 of the controller 30 (st13).
 コントローラ30は、通信部81が本体実行コードを受信すると、本体実行コードを受信したことを示す本体受信情報を本体受信部31に送信する(st14)。本体受信部31は、本体受信情報を受信すると、本体実行コードの保存指示を本体実行コード記憶部33に送信する(st15)。本体実行コード記憶部33は、本体実行コードを保存する。 When the communication unit 81 receives the main body execution code, the controller 30 transmits the main body reception information indicating that the main body execution code has been received to the main body reception unit 31 (st14). When the main body receiving unit 31 receives the main body receiving information, the main body receiving unit 31 transmits a saving instruction of the main body execution code to the main body execution code storage unit 33 (st15). The main body execution code storage unit 33 stores the main body execution code.
 また、通信部71は、ユーザから実行コードの送信指示を受信すると、テスト実行コードのコントローラ30への送信指示であるテスト送信指示を、テスト送信部24に送信する(st16)。これにより、テスト送信部24が、テスト実行コードをコントローラ30の通信部81に送信する処理であるテスト送信処理を実行する(st17)。 Further, when the communication unit 71 receives the execution code transmission instruction from the user, the communication unit 71 transmits the test transmission instruction, which is the transmission instruction of the test execution code to the controller 30, to the test transmission unit 24 (st16). As a result, the test transmission unit 24 executes the test transmission process, which is the process of transmitting the test execution code to the communication unit 81 of the controller 30 (st17).
 コントローラ30は、通信部81がテスト実行コードを受信すると、テスト実行コードを受信したことを示すテスト受信情報をテスト受信部41に送信する(st18)。テスト受信部41は、テスト受信情報を受信すると、テスト実行コードの保存指示をテスト実行コード記憶部43に送信する(st19)。テスト実行コード記憶部43は、テスト実行コードを保存する。 When the communication unit 81 receives the test execution code, the controller 30 transmits the test reception information indicating that the test execution code has been received to the test reception unit 41 (st18). Upon receiving the test reception information, the test receiving unit 41 transmits an instruction to save the test execution code to the test execution code storage unit 43 (st19). The test execution code storage unit 43 stores the test execution code.
 st15の処理で保存された本体実行コードは、図2のステップS150、およびステップS210で用いられる本体プログラムP1,P2に対応している。st19の処理で保存されたテスト実行コードは、図2のステップS140,S170,S200,S230で用いられるテストプログラムQ1~Q4に対応している。 The main body execution code saved in the process of st15 corresponds to the main body programs P1 and P2 used in step S150 and step S210 of FIG. The test execution code saved in the process of st19 corresponds to the test programs Q1 to Q4 used in steps S140, S170, S200, and S230 of FIG.
 なお、図4では図示していないが、本体実行条件についても、st11~st15と同様の処理によって送信および保存が行われる。この処理で保存された本体実行条件は、図2のステップS120,S180で用いられる。 Although not shown in FIG. 4, the main body execution conditions are also transmitted and saved by the same processing as in st11 to st15. The main body execution conditions saved in this process are used in steps S120 and S180 of FIG.
 また、テスト実行条件についても、st11,st16~st19と同様の処理によって送信および保存が行われる。この処理で保存されたテスト実行条件は、図2のステップS130,S160,S190,S220で用いられる。 Also, the test execution conditions are transmitted and saved by the same processing as st11, st16 to st19. The test execution conditions saved in this process are used in steps S130, S160, S190, and S220 of FIG.
 このように、本体プログラムの本体実行コードと、テストプログラムのテスト実行コードとは、別々に作成されているので、コントローラ30は、本体プログラムの本体実行コードと、テストプログラムのテスト実行コードとの各々を、別々の記憶部に格納することができる。これにより、制御システム1Aは、本体実行コードおよびテスト実行コードの管理が容易となる。 In this way, the main body execution code of the main body program and the test execution code of the test program are created separately, so that the controller 30 includes the main body execution code of the main body program and the test execution code of the test program, respectively. Can be stored in separate storage units. As a result, the control system 1A can easily manage the main body execution code and the test execution code.
 図5は、実施の形態1にかかる制御システムによる制御プログラムの実行処理の手順を示すシーケンス図である。ここでは、本体プログラムおよびテストプログラムの実行処理について説明する。図5に示す、通信部81、本体実行制御部34、本体実行条件判定部35、テスト実行制御部44、テスト実行条件判定部45、本体実行コード記憶部33、およびテスト実行コード記憶部43からなる構成要素群62は、コントローラ30に配置されている。 FIG. 5 is a sequence diagram showing a procedure of execution processing of the control program by the control system according to the first embodiment. Here, the execution process of the main program and the test program will be described. From the communication unit 81, the main unit execution control unit 34, the main unit execution condition determination unit 35, the test execution control unit 44, the test execution condition determination unit 45, the main unit execution code storage unit 33, and the test execution code storage unit 43 shown in FIG. The component group 62 is arranged in the controller 30.
 ユーザによって、制御プログラムの実行指示が、プログラム作成支援装置10に入力されると、この実行指示がコントローラ30の通信部81に送信される(st21)。通信部81は、制御プログラムの実行指示を、本体実行制御部34に送信する(st22)。 When the user inputs the execution instruction of the control program to the program creation support device 10, the execution instruction is transmitted to the communication unit 81 of the controller 30 (st21). The communication unit 81 transmits an execution instruction of the control program to the main body execution control unit 34 (st22).
 本体実行制御部34は、本体プログラムの読出し処理を実行する(st23)。具体的には、本体実行制御部34は、本体実行コード記憶部33から、本体プログラムを読出す。 The main body execution control unit 34 executes the reading process of the main body program (st23). Specifically, the main body execution control unit 34 reads the main body program from the main body execution code storage unit 33.
 また、本体実行制御部34は、テストプログラムの読出し指示を、テスト実行制御部44に送信する(st24)。テスト実行制御部44は、テストプログラムの読出し処理を実行する(st25)。具体的には、テスト実行制御部44は、テスト実行コード記憶部43から、テストプログラムを読出す。 Further, the main body execution control unit 34 transmits a test program read instruction to the test execution control unit 44 (st24). The test execution control unit 44 executes the reading process of the test program (st25). Specifically, the test execution control unit 44 reads the test program from the test execution code storage unit 43.
 この後、コントローラ30では、本体プログラムの本数分のループ処理が実行される。1番目の本体プログラムに対し、コントローラ30は、処理101を実行する。処理101では、本体実行制御部34が、本体実行条件の判定指示を本体実行条件判定部35に送信する(st26)。 After that, the controller 30 executes loop processing for the number of main programs. The controller 30 executes the process 101 for the first main program. In the process 101, the main body execution control unit 34 transmits a main body execution condition determination instruction to the main body execution condition determination unit 35 (st26).
 処理101に含まれる処理201は、本体実行条件が成立する場合の処理であり、処理101に含まれる処理202は、本体実行条件が成立しない場合の処理である。 The process 201 included in the process 101 is a process when the main body execution condition is satisfied, and the process 202 included in the process 101 is a process when the main body execution condition is not satisfied.
 まず、本体実行条件が成立する場合の処理201について説明する。処理201では、本体実行条件判定部35は、事前条件の判定指示をテスト実行制御部44に送信する(st27)。 First, the process 201 when the main body execution condition is satisfied will be described. In process 201, the main body execution condition determination unit 35 transmits a determination instruction of the prior condition to the test execution control unit 44 (st27).
 処理201に含まれる処理301は、事前条件が成立する場合の処理であり、処理201に含まれる処理302は、事前条件が成立しない場合の処理である。事前条件が成立する場合の処理301では、テスト実行制御部44は、事前条件の判定指示をテスト実行条件判定部45に送信する(st28)。ここでのテスト実行条件判定部45は、事前条件が成立すると判定する。そして、テスト実行条件判定部45は、判定結果として、事前条件に対応するテストプログラムを実行させる指示をテスト実行制御部44に送信する(st29)。これにより、テスト実行制御部44は、事前条件が成立する場合のテストプログラムを実行する(st30)。なお、本体実行条件判定部35は、事前条件の判定指示を、テスト実行制御部44を介さずに、直接テスト実行条件判定部45に送信してもよい。 The process 301 included in the process 201 is a process when the precondition is satisfied, and the process 302 included in the process 201 is a process when the precondition is not satisfied. In the process 301 when the precondition is satisfied, the test execution control unit 44 transmits a determination instruction of the precondition to the test execution condition determination unit 45 (st28). The test execution condition determination unit 45 here determines that the precondition is satisfied. Then, the test execution condition determination unit 45 transmits an instruction to execute the test program corresponding to the prior condition to the test execution control unit 44 as the determination result (st29). As a result, the test execution control unit 44 executes the test program when the precondition is satisfied (st30). The main body execution condition determination unit 35 may directly transmit the determination instruction of the prior condition to the test execution condition determination unit 45 without going through the test execution control unit 44.
 テスト実行制御部44は、事前条件の判定結果として、テストプログラムを実行したことを示す判定結果(実行)を本体実行条件判定部35に送信する(st31)。st31の処理は、st27に対する応答である。 The test execution control unit 44 transmits a determination result (execution) indicating that the test program has been executed to the main body execution condition determination unit 35 as the determination result of the prior condition (st31). The processing of st31 is a response to st27.
 事前条件が成立しない場合の処理302でも、上述したst28およびst29の処理が実行される。この場合のテスト実行条件判定部45は、事前条件が成立しないと判定し、判定結果として、事前条件に対応するテストプログラムを実行させない指示をテスト実行制御部44に送信する。テスト実行制御部44は、事前条件の判定結果として、テストプログラムを実行しなかったことを示す判定結果(非実行)を本体実行条件判定部35に送信する(st32)。st32の処理は、st27に対する応答である。 The above-mentioned st28 and st29 processes are also executed in the process 302 when the preconditions are not satisfied. In this case, the test execution condition determination unit 45 determines that the precondition is not satisfied, and as a determination result, transmits an instruction not to execute the test program corresponding to the precondition to the test execution control unit 44. The test execution control unit 44 transmits, as the determination result of the prior condition, a determination result (non-execution) indicating that the test program has not been executed to the main body execution condition determination unit 35 (st32). The processing of st32 is a response to st27.
 処理301または処理302が完了した後、本体実行条件判定部35は、st27に対する判定結果を本体実行制御部34に送信する。すなわち、本体実行条件判定部35は、st27に対する応答として、処理301または処理302が実行されたことを示す判定結果(実行)を本体実行制御部34に送信する(st33)。 After the process 301 or process 302 is completed, the main body execution condition determination unit 35 transmits the determination result for st27 to the main body execution control unit 34. That is, the main body execution condition determination unit 35 transmits a determination result (execution) indicating that the process 301 or the process 302 has been executed to the main body execution control unit 34 as a response to st27 (st33).
 st33の処理の後、本体実行制御部34は、1番目の本体プログラムを実行する(st34)。そして、本体実行制御部34は、事後条件の判定指示を本体実行条件判定部35に送信する(st35)。本体実行条件判定部35は、事後条件の判定指示をテスト実行制御部44に送信する(st36)。 After the processing of st33, the main body execution control unit 34 executes the first main body program (st34). Then, the main body execution control unit 34 transmits a determination instruction of the post-condition to the main body execution condition determination unit 35 (st35). The main body execution condition determination unit 35 transmits a determination instruction of the ex post facto condition to the test execution control unit 44 (st36).
 処理201に含まれる処理401は、事後条件が成立する場合の処理であり、処理201に含まれる処理402は、事後条件が成立しない場合の処理である。事後条件が成立する場合の処理401では、テスト実行制御部44は、テスト実行条件判定部45に事後条件の判定指示を送信する(st37)。ここでの、テスト実行条件判定部45は、事後条件が成立すると判定する。そして、テスト実行条件判定部45は、判定結果として、事後条件に対応するテストプログラムを実行させる指示をテスト実行制御部44に送信する(st38)。これにより、テスト実行制御部44は、事後条件が成立する場合のテストプログラムを実行する(st39)。なお、本体実行条件判定部35は、事後条件の判定指示を、テスト実行制御部44を介さずに、直接テスト実行条件判定部45に送信してもよい。 The process 401 included in the process 201 is a process when the post-condition is satisfied, and the process 402 included in the process 201 is a process when the post-condition is not satisfied. In the process 401 when the ex-post condition is satisfied, the test execution control unit 44 transmits the ex-post condition determination instruction to the test execution condition determination unit 45 (st37). Here, the test execution condition determination unit 45 determines that the ex post facto condition is satisfied. Then, the test execution condition determination unit 45 transmits an instruction to execute the test program corresponding to the ex post facto condition to the test execution control unit 44 as the determination result (st38). As a result, the test execution control unit 44 executes the test program when the ex post facto condition is satisfied (st39). The main body execution condition determination unit 35 may directly transmit the determination instruction of the ex post facto condition to the test execution condition determination unit 45 without going through the test execution control unit 44.
 テスト実行制御部44は、事後条件の判定結果として、テストプログラムを実行したことを示す判定結果(実行)を本体実行条件判定部35に送信する(st40)。st40の処理は、st36に対する応答である。 The test execution control unit 44 transmits a determination result (execution) indicating that the test program has been executed to the main body execution condition determination unit 35 as the determination result of the ex post facto condition (st40). The processing of st40 is a response to st36.
 事後条件が成立しない場合の処理402でも、上述したst37およびst38の処理が実行される。この場合のテスト実行条件判定部45は、事後条件が成立しないと判定し、判定結果として、事後条件に対応するテストプログラムを実行させない指示をテスト実行制御部44に送信する。テスト実行制御部44は、事後条件の判定結果として、テストプログラムを実行しなかったことを示す判定結果(非実行)を本体実行条件判定部35に送信する(st41)。st41の処理は、st36に対する応答である。 The above-mentioned st37 and st38 processes are also executed in the process 402 when the post-condition is not satisfied. In this case, the test execution condition determination unit 45 determines that the ex-post condition is not satisfied, and as a determination result, transmits an instruction not to execute the test program corresponding to the ex-post condition to the test execution control unit 44. The test execution control unit 44 transmits, as the determination result of the ex post facto condition, a determination result (non-execution) indicating that the test program has not been executed to the main body execution condition determination unit 35 (st41). The processing of st41 is a response to st36.
 つぎに、本体実行条件が成立しない場合の処理202について説明する。処理202では、本体実行条件判定部35は、本体実行条件の判定結果として、本体プログラムを実行しなかったことを示す判定結果(非実行)を本体実行制御部34に送信する(st42)。st42の処理は、st26に対する応答である。 Next, the process 202 when the main body execution condition is not satisfied will be described. In the process 202, the main body execution condition determination unit 35 transmits a determination result (non-execution) indicating that the main body program has not been executed to the main body execution control unit 34 as the main body execution condition determination result (st42). The processing of st42 is a response to st26.
 ここで、比較例の実行コード(比較例の制御プログラム)について説明する。比較例の実行コードは、本体部のソースコードと、テスト調整部のソースコードとが一体化されたソースコードから作成された実行コードである。テスト調整部のソースコードは、テスト調査用の実行コードに対応するソースコードである。 Here, the execution code of the comparative example (control program of the comparative example) will be described. The execution code of the comparative example is the execution code created from the source code in which the source code of the main body and the source code of the test adjustment part are integrated. The source code of the test adjustment unit is the source code corresponding to the execution code for the test investigation.
 比較例の制御プログラムを用いた場合のテスト処理の手順について説明する。この場合の制御プログラムに対する反復処理では、1番目の制御プログラム、2番目の制御プログラムの順番で制御プログラムが実行される。 The procedure of the test process when the control program of the comparative example is used will be explained. In the iterative processing for the control program in this case, the control program is executed in the order of the first control program and the second control program.
 1番目の制御プログラムが実行される際には、1番目の制御プログラムに含まれる本体部とテスト調査部とが実行される。そして、2番目の制御プログラムが実行される際には、2番目の制御プログラムに含まれる本体部とテスト調査部とが実行される。そして、テスト調査が完了した後に、1番目の制御プログラムのソースコードからテスト調査部が削除され、2番目の制御プログラムのソースコードからテスト調査部が削除される。このような比較例の制御プログラムでは、テスト調整を行う実行コードが、種々の論理和を用いている場合があるので、テスト調整の完了後にテスト調整を行う実行コードを削除することが困難である。 When the first control program is executed, the main body part and the test investigation part included in the first control program are executed. Then, when the second control program is executed, the main body unit and the test investigation unit included in the second control program are executed. Then, after the test investigation is completed, the test investigation unit is deleted from the source code of the first control program, and the test investigation unit is deleted from the source code of the second control program. In the control program of such a comparative example, the execution code that performs the test adjustment may use various logical sums, so it is difficult to delete the execution code that performs the test adjustment after the test adjustment is completed. ..
 ところで、ユーザの運用上、動作確認が完了した実行コードに対して変更が禁止される場合がある。この場合、比較例の制御プログラムでは、テスト調整を行う実行コードもコントローラの記憶領域に残存することになる。したがって、無駄な記憶領域を消費する。 By the way, in terms of user operation, changes may be prohibited for the execution code whose operation has been confirmed. In this case, in the control program of the comparative example, the execution code for performing the test adjustment also remains in the storage area of the controller. Therefore, it consumes wasted storage area.
 また、動作確認が完了した実行コードに対して変更が禁止されていない場合であっても、比較例の実行コードの場合、制御プログラムのテスト調整が完了した後、制御プログラムからテスト調整用の実行コードが除去されると実行コードに変更が生じる。このため、比較例の実行コードの場合、変更後の実行コードが所望の動作を行うか否かを改めて確認する必要がある。 In addition, even if changes are not prohibited for the execution code for which the operation check has been completed, in the case of the execution code of the comparative example, after the test adjustment of the control program is completed, the execution for test adjustment is executed from the control program. When the code is removed, the executable code changes. Therefore, in the case of the execution code of the comparative example, it is necessary to reconfirm whether or not the changed execution code performs the desired operation.
 一方、本実施の形態の制御システム1Aは、テスト実行コードと本体実行コードとを分離して別々に記憶させているので、本体実行コードを変更することなく、テスト実行コードのみを容易に無効化または削除することができる。これにより、テスト調整の完了したテスト実行コードが、コントローラ30の記憶領域を無駄に消費することを回避できる。 On the other hand, in the control system 1A of the present embodiment, since the test execution code and the main body execution code are separately stored separately, only the test execution code is easily invalidated without changing the main body execution code. Or it can be deleted. As a result, it is possible to prevent the test execution code for which the test adjustment has been completed from wasting the storage area of the controller 30.
 また、本実施の形態の制御システム1Aでは、テスト実行コードが削除されても、本体実行コードには変更が生じないので、本体実行コードが所望の動作を行うか否かを改めて確認する必要がない。 Further, in the control system 1A of the present embodiment, even if the test execution code is deleted, the main body execution code is not changed. Therefore, it is necessary to reconfirm whether or not the main body execution code performs the desired operation. No.
 このように、実施の形態1によれば、本体実行コードとテスト実行コードとを、別々に作成しているので、本体実行コードが実行される際にテスト実行コードが誤って実行されることを容易に防止できる。 As described above, according to the first embodiment, the main body execution code and the test execution code are created separately, so that the test execution code is erroneously executed when the main body execution code is executed. It can be easily prevented.
 また、制御システム1Aは、テスト調整を実行するためのテスト実行コードを、本体実行コードから分離し、それぞれを独立させた状態で編集、実行、除去などを実行することが可能となる。これにより、制御システム1Aは、テストプログラムの編集、実行、除去などを容易に実行することが可能となる。 In addition, the control system 1A can separate the test execution code for executing the test adjustment from the main body execution code and execute editing, execution, removal, etc. in a state where each is independent. As a result, the control system 1A can easily edit, execute, and remove the test program.
実施の形態2.
 つぎに、図6から図9を用いて実施の形態2について説明する。実施の形態2では、モーション制御における指令値の演算用データ(例えば、後述する基準角度)に基づいて、テストソースコードを自動作成する。
Embodiment 2.
Next, the second embodiment will be described with reference to FIGS. 6 to 9. In the second embodiment, the test source code is automatically created based on the calculation data of the command value in the motion control (for example, the reference angle described later).
 図6は、実施の形態2にかかる制御システムの構成を示す図である。図6の各構成要素のうち図1に示す実施の形態1の制御システム1Aと同一機能を達成する構成要素については同一符号を付しており、重複する説明は省略する。 FIG. 6 is a diagram showing the configuration of the control system according to the second embodiment. Of the components of FIG. 6, components that achieve the same functions as the control system 1A of the first embodiment shown in FIG. 1 are designated by the same reference numerals, and redundant description will be omitted.
 制御システム1Bは、制御システム1Aの構成要素に加えて、プログラム作成支援装置10内に補助ソースコード作成部であるテストソースコード作成部20を備えている。テストソースコード作成部20は、テストソースコード編集部21に接続されている。 The control system 1B includes a test source code creation unit 20 which is an auxiliary source code creation unit in the program creation support device 10 in addition to the components of the control system 1A. The test source code creation unit 20 is connected to the test source code editing unit 21.
 テストソースコード作成部20は、モーション制御における指令値の演算用データに基づいて、モータ2のテスト調整に用いられるテストソースコードを自動作成する。モーション制御における指令は、コントローラ30がアンプ4に出力する出力値である。モーション制御における指令の例は、移動量、速度、トルクなどの目標値である。 The test source code creation unit 20 automatically creates the test source code used for the test adjustment of the motor 2 based on the data for calculating the command value in the motion control. The command in the motion control is an output value output from the controller 30 to the amplifier 4. Examples of commands in motion control are target values such as movement amount, speed, and torque.
 テストソースコード作成部20は、モーション制御における指令値に対して、コントローラ30で実行する本体プログラムの本体実行コードが、所望の演算を実行しているか否かを判定するためのテストプログラムのソースコードを作成する。これにより、プログラム作成支援装置10は、テストプログラムの作成に要するユーザの工数を削減することが可能になる。 The test source code creation unit 20 determines whether or not the main body execution code of the main body program executed by the controller 30 executes a desired operation with respect to the command value in the motion control. To create. As a result, the program creation support device 10 can reduce the man-hours of the user required to create the test program.
 つぎに、テストソースコード作成部20による、テストソースコードの作成処理例について説明する。図7は、実施の形態2にかかる制御システムが制御するモータに接続された機構部を説明するための図である。図8は、実施の形態2にかかる制御システムに対して設定される制御用パラメータの第1例を示す図である。図9は、実施の形態2にかかる制御システムが用いる運転パターンの第1例を示す図である。 Next, an example of the test source code creation process by the test source code creation unit 20 will be described. FIG. 7 is a diagram for explaining a mechanical unit connected to a motor controlled by the control system according to the second embodiment. FIG. 8 is a diagram showing a first example of control parameters set for the control system according to the second embodiment. FIG. 9 is a diagram showing a first example of an operation pattern used by the control system according to the second embodiment.
 プログラム作成支援装置10は、図8に示した制御用パラメータに基づいて、図9に示す運転パターンを作成する。なお、図7では、プログラム作成支援装置10の図示を省略している。 The program creation support device 10 creates the operation pattern shown in FIG. 9 based on the control parameters shown in FIG. Note that FIG. 7 omits the illustration of the program creation support device 10.
 ワークを所定の位置に移動させるなどの用途で用いられるワーク搬送装置は、モータ軸(以下、制御軸6という)を有したモータ2と、制御軸6に接続された機構部分(以下、機構部5という)とを備えている。コントローラ30は、制御対象であるモータ2の制御軸6を駆動することによって、機構部5の位置を制御する。このときの、機構部5の位置を示す運転パターンが、図9に示す運転パターンである。 Work transfer devices used for applications such as moving a work to a predetermined position include a motor 2 having a motor shaft (hereinafter referred to as a control shaft 6) and a mechanical portion (hereinafter referred to as a mechanical portion) connected to the control shaft 6. 5) and. The controller 30 controls the position of the mechanism unit 5 by driving the control shaft 6 of the motor 2 to be controlled. The operation pattern showing the position of the mechanism unit 5 at this time is the operation pattern shown in FIG.
 モーション制御を行わせる場合、コントローラ30からアンプ4に対して指令を与える手段の一例として、図8に示すような、制御の基準とする回転軸の回転位置(基準角度)に対する機構部5の目標位置、および目標位置と目標位置との間の区間の補間方法を与える手段がある。制御の基準とする回転軸は、制御軸6以外の、(図7には示されていない)他のモータ軸であってもよい。あるいは、制御の基準とする回転軸は、コントローラ30によって模擬される仮想的なモータ軸であってもよい。 When performing motion control, as an example of means for giving a command from the controller 30 to the amplifier 4, the target of the mechanism unit 5 with respect to the rotation position (reference angle) of the rotation axis as the control reference, as shown in FIG. There are means of providing a position and a method of interpolating the interval between the target position and the target position. The rotation shaft used as a control reference may be another motor shaft (not shown in FIG. 7) other than the control shaft 6. Alternatively, the rotation shaft used as the control reference may be a virtual motor shaft simulated by the controller 30.
 プログラム作成支援装置10は、図8に示すような制御用パラメータが設定されると、この制御用パラメータに基づいて、図9に示す運転パターン(波形71A,72A)を算出する。この運転パターン(波形71A,72A)は、コントローラ30で実行する制御プログラムの演算結果として算出される指令値と一致し、テストソースコード作成部20に対する入力データとなる。 When the control parameters shown in FIG. 8 are set, the program creation support device 10 calculates the operation patterns ( waveforms 71A, 72A) shown in FIG. 9 based on the control parameters. This operation pattern (waveforms 71A, 72A) matches the command value calculated as the calculation result of the control program executed by the controller 30, and becomes the input data for the test source code creation unit 20.
 図9に示すグラフの横軸は、制御軸6の基準角度であり、縦軸は制御軸6に接続された機構部5の目標位置である。波形71Aは、機構部5の目標位置の波形であり、波形72Aは、機構部5の目標速度である。テストソースコード作成部20は、図9に示した波形71A,72Aに基づいて、テストソースコードを作成する。テストソースコードは、機構部5の目標位置と、実際の位置との差分が許容範囲内であるか否かを判定するソースコードである。 The horizontal axis of the graph shown in FIG. 9 is the reference angle of the control axis 6, and the vertical axis is the target position of the mechanism unit 5 connected to the control axis 6. The waveform 71A is the waveform of the target position of the mechanism unit 5, and the waveform 72A is the target speed of the mechanism unit 5. The test source code creation unit 20 creates a test source code based on the waveforms 71A and 72A shown in FIG. The test source code is a source code for determining whether or not the difference between the target position of the mechanism unit 5 and the actual position is within the permissible range.
 図9では、例えば、基準角度が90度である時の機構部5の目標位置は、中心位置(0mm)であり、基準角度が210度である時の機構部5の目標位置は、中心位置から順方向に100mm離れた位置であることを示している。 In FIG. 9, for example, the target position of the mechanism unit 5 when the reference angle is 90 degrees is the center position (0 mm), and the target position of the mechanism unit 5 when the reference angle is 210 degrees is the center position. It is shown that the position is 100 mm away from the forward direction.
 コントローラ30は、基準角度および目標位置に基づいて、機構部5を目標位置に移動させることができるようにモータ2の回転方向および回転速度の指令値を演算し、演算結果としての指令値をアンプ4に出力する。 The controller 30 calculates the command values of the rotation direction and the rotation speed of the motor 2 so that the mechanism unit 5 can be moved to the target position based on the reference angle and the target position, and amplifies the command value as the calculation result. Output to 4.
 ユーザが、プログラム作成支援装置10を用いて作成する本体プログラムの本体ソースコードは、基準角度および目標位置を組とする制御用パラメータを入力とする。この本体ソースコードは、制御用パラメータを入力とし、モータ2の回転方向および回転速度といったモータ2の駆動を制御する指定値を演算して求める処理を実行する。 The main body source code of the main body program created by the user using the program creation support device 10 inputs control parameters including a reference angle and a target position. This main body source code takes control parameters as inputs, and executes a process of calculating and obtaining specified values for controlling the driving of the motor 2, such as the rotation direction and the rotation speed of the motor 2.
 制御用パラメータとしては、制御対象(図7の例では順方向または逆方向に直線移動する機構部5)が所望の動作を得られるように、任意の点数の目標位置が指定可能である。図9に示した例では(A)、(B)、および(C)の3点の目標位置が、ユーザによって指定された場合を示している。 As a control parameter, a target position of an arbitrary number of points can be specified so that the controlled object (mechanical unit 5 that linearly moves in the forward direction or the reverse direction in the example of FIG. 7) can obtain a desired operation. In the example shown in FIG. 9, the case where the target positions of the three points (A), (B), and (C) are specified by the user is shown.
 図8に示す例では、区間A-Bは、開始点が0度であり、終了点が90度である。区間A-Bにおける目標位置は0mmであり、区間A-Bはスプライン補間されている。また、区間B-Cは開始点が90度であり、終了点が210度である。区間B-Cにおける目標位置は100mmであり、区間B-Cはスプライン補間されている。また、区間C-Aにおける開始点が210度であり、終了点が360度である。区間C-Aにおける目標位置は0mmであり、区間C-Aはスプライン補間されている。なお、機構部5の加減速を調整するために、目標位置は、ユーザによって追加されてもよい。 In the example shown in FIG. 8, the section AB has a start point of 0 degrees and an end point of 90 degrees. The target position in the section AB is 0 mm, and the section AB is spline-interpolated. Further, the section BC has a start point of 90 degrees and an end point of 210 degrees. The target position in the section BC is 100 mm, and the section BC is spline-interpolated. Further, the start point in the section CA is 210 degrees, and the end point is 360 degrees. The target position in the section CA is 0 mm, and the section CA is spline-interpolated. The target position may be added by the user in order to adjust the acceleration / deceleration of the mechanism unit 5.
 図10は、実施の形態2にかかる制御システムに対して設定される制御用パラメータの第2例を示す図である。図11は、実施の形態2にかかる制御システムが用いる運転パターンの第2例を示す図である。図10に示す制御用パラメータは、図8に示す制御用パラメータに、新たな目標位置を追加した場合の運転パターン例を示している。 FIG. 10 is a diagram showing a second example of control parameters set for the control system according to the second embodiment. FIG. 11 is a diagram showing a second example of an operation pattern used by the control system according to the second embodiment. The control parameters shown in FIG. 10 show an example of an operation pattern when a new target position is added to the control parameters shown in FIG.
 プログラム作成支援装置10は、図10に示した制御用パラメータに基づいて、図11に示す運転パターンを作成する。ここでは、図9に示した目標位置の(B)から(C)までの間の機構部5の加減速を調整するために、図11に示す(D)および(E)の2点の目標位置が追加された場合について説明する。波形71Bは、機構部5の目標位置の波形であり、波形72Bは、機構部5の目標速度である。 The program creation support device 10 creates the operation pattern shown in FIG. 11 based on the control parameters shown in FIG. Here, in order to adjust the acceleration / deceleration of the mechanical unit 5 between the target positions (B) and (C) shown in FIG. 9, the two targets (D) and (E) shown in FIG. 11 are used. The case where the position is added will be described. The waveform 71B is the waveform of the target position of the mechanism unit 5, and the waveform 72B is the target speed of the mechanism unit 5.
 図10に示す例では、区間A-Bおよび区間C-Aは、図8で説明したとおりである。図10に示す例では、区間B-Dは、開始点が90度であり、終了点が120度である。区間B-Dにおける目標位置は10mmであり、区間B-Dはスプライン補間されている。また、区間D-Eは、開始点が120度であり、終了点が180度である。区間D-Eにおける目標位置は90mmであり、区間D-Eはスプライン補間されている。また、区間E-Cは、開始点が180度であり、終了点が210度である。区間E-Cにおける目標位置は100mmであり、区間E-Cはスプライン補間されている。 In the example shown in FIG. 10, the sections AB and CA are as described in FIG. In the example shown in FIG. 10, the section BD has a start point of 90 degrees and an end point of 120 degrees. The target position in the section BD is 10 mm, and the section BD is spline-interpolated. Further, the section DE has a start point of 120 degrees and an end point of 180 degrees. The target position in the section DE is 90 mm, and the section DE is spline-interpolated. Further, the section EC has a start point of 180 degrees and an end point of 210 degrees. The target position in the section EC is 100 mm, and the section EC is spline-interpolated.
 プログラム作成支援装置10は、ユーザが作成した本体プログラムおよび制御用パラメータによって制御対象が所望の動作を得られているか否かを確認する。プログラム作成支援装置10は、制御対象が所望の動作を得られているか否かを確認するためには、ある基準角度における、機構部5の目標位置と実際の装置における機構部5の実際の位置との差分が、実際の装置で許容されている範囲内であることが確認できればよい。実際の装置は、機構部5およびモータ2を備えたワーク搬送装置などである。 The program creation support device 10 confirms whether or not the controlled object has obtained the desired operation by the main body program created by the user and the control parameters. In order to confirm whether or not the controlled object has obtained a desired operation, the program creation support device 10 has a target position of the mechanism unit 5 at a certain reference angle and an actual position of the mechanism unit 5 in the actual device. It suffices if it can be confirmed that the difference from the above is within the range allowed by the actual device. The actual device is a work transfer device including the mechanism unit 5 and the motor 2.
 ここで、ある基準角度とは、プログラム作成支援装置10を用いてユーザが指定した値(図11では、(A)、(B)、(C)、(D)、(E)の5点の基準角度)に加えて、例えば、図9または図11のグラフに示されている区間A-B,B-C,C-Aの何れかに含まれる任意の基準角度ω(0度≦ω≦360度)のことを指す。なお、図11に示した例では、基準角度の最大値が360度の場合を示しているが、360度よりも大きな値が基準角度の最大値として設定されてもよい。 Here, a certain reference angle is a value specified by the user using the program creation support device 10 (in FIG. 11, five points (A), (B), (C), (D), and (E)). In addition to the reference angle), for example, any reference angle ω (0 degree ≦ ω ≦) included in any of the sections AB, BC, and CA shown in the graph of FIG. 9 or FIG. 360 degrees). In the example shown in FIG. 11, the case where the maximum value of the reference angle is 360 degrees is shown, but a value larger than 360 degrees may be set as the maximum value of the reference angle.
 各区間内の任意の基準角度ωに対する機構部5の目標位置は、図9または図11の例では、ユーザによって目標位置の補間方法が「スプライン補間」と指定されているので、テストソースコード作成部20は、演算によって目標値を算出することができる。 As for the target position of the mechanism unit 5 with respect to an arbitrary reference angle ω in each section, in the example of FIG. 9 or 11, the interpolation method of the target position is specified by the user as "spline interpolation", so the test source code is created. The unit 20 can calculate the target value by calculation.
 テストソースコード作成部20は、このような演算によって算出可能な任意の基準角度ωに対する機構部5の目標位置と、実際の装置における機構部5の実際の位置との差分が実際の装置で許容されている範囲内であるか否かを判定する処理を、テストプログラムのテストソースコードとして作成する。これにより、制御用パラメータの設定値の追加、変更、または削除が生じた場合に、実際の装置が所望の動作を得ているか否かを確認するためのテストソースコードを、ユーザが作成または修正する手間を省くことが可能となる。 The test source code creation unit 20 allows the difference between the target position of the mechanism unit 5 with respect to an arbitrary reference angle ω that can be calculated by such calculation and the actual position of the mechanism unit 5 in the actual device in the actual device. Create a process to determine whether or not it is within the specified range as the test source code of the test program. As a result, the user creates or modifies the test source code to check whether the actual device obtains the desired operation when the setting value of the control parameter is added, changed, or deleted. It is possible to save the trouble of doing this.
 なお、本体実行コード記憶部33とテスト実行コード記憶部43とは、物理的に異なる記憶装置であってもよい。これにより、本体実行コードを格納する記憶装置の記憶容量を逼迫せずにテスト実行コードを一時的にコントローラ30に書き込みながら、本体プログラムのテスト調整を実行することができる。また、テスト調整の完了後に制御プログラムの本体部以外のテスト実行コードの無効化または除去を行うためのユーザ操作を簡略化できる。 The main body execution code storage unit 33 and the test execution code storage unit 43 may be physically different storage devices. As a result, it is possible to execute the test adjustment of the main body program while temporarily writing the test execution code to the controller 30 without tightening the storage capacity of the storage device that stores the main body execution code. In addition, it is possible to simplify the user operation for invalidating or removing the test execution code other than the main body of the control program after the test adjustment is completed.
 本体実行コード記憶部33とテスト実行コード記憶部43とが、物理的に異なる別々の記憶装置である場合、本体実行コード記憶部33が本体実行コード記憶装置となり、テスト実行コード記憶部43がテスト実行コード記憶装置、すなわち補助実行コード記憶装置となる。 When the main body execution code storage unit 33 and the test execution code storage unit 43 are physically different storage devices, the main body execution code storage unit 33 becomes the main body execution code storage device, and the test execution code storage unit 43 tests. It becomes an execution code storage device, that is, an auxiliary execution code storage device.
 また、本体実行コード記憶部33とテスト実行コード記憶部43とを物理的に異なる記憶装置とし、かつテスト実行コード記憶部43となる記憶装置をコントローラ30から着脱可能な記憶装置(例えば、可搬性の外部記憶装置)としてもよい。これにより、テスト実行コード記憶部43となる記憶装置をコントローラ30から取り外すだけで、テスト実行コードをコントローラ30から除去することができる。 Further, the main body execution code storage unit 33 and the test execution code storage unit 43 are physically different storage devices, and the storage device serving as the test execution code storage unit 43 is a storage device that can be attached to and detached from the controller 30 (for example, portability). (External storage device). As a result, the test execution code can be removed from the controller 30 simply by removing the storage device serving as the test execution code storage unit 43 from the controller 30.
 また、制御部82は、テスト実行コードのキャッシュメモリへのアクセスを無効としてもよい。これにより、キャッシュメモリへは、テスト実行コードが格納されず、本体実行コードが格納されることとなる。この結果、テスト実行コードが実行されても、本体実行コードのキャッシュメモリからのヒット率(キャッシュ性能)が低下することを防止できる。すなわち、テスト実行コードがある場合と、テスト実行コードが無い場合とで、キャッシュメモリから本体実行コードを読出すことができる確率を同じにすることができる。したがって、制御部82は、実運用時と同じキャッシュメモリのヒット率で本体実行コードを実行させながら、本体プログラムのテスト調整を実行することができる。 Further, the control unit 82 may invalidate the access to the cache memory of the test execution code. As a result, the test execution code is not stored in the cache memory, but the main body execution code is stored. As a result, even if the test execution code is executed, it is possible to prevent the hit rate (cache performance) of the main body execution code from being reduced from the cache memory. That is, the probability that the main body execution code can be read from the cache memory can be made the same depending on whether the test execution code is present or not. Therefore, the control unit 82 can execute the test adjustment of the main body program while executing the main body execution code at the same cache memory hit rate as in the actual operation.
 このように、実施の形態2では、テストソースコード作成部20が、モーション制御における指令値の演算用データに基づいて、テストソースコードを自動作成している。これにより、制御用パラメータの設定値の追加、変更、または削除が生じた場合に、実際の装置が所望の動作を得ているか否かを確認するためのテストソースコードを、ユーザが作成または修正する手間を省くことが可能となる。 As described above, in the second embodiment, the test source code creation unit 20 automatically creates the test source code based on the data for calculating the command value in the motion control. As a result, the user creates or modifies the test source code to check whether the actual device obtains the desired operation when the setting value of the control parameter is added, changed, or deleted. It is possible to save the trouble of doing this.
 ここで、実施の形態1,2で説明したプログラム作成支援装置10のハードウェア構成について説明する。図12は、実施の形態1,2にかかるプログラム作成支援装置を実現するハードウェア構成例を示す図である。 Here, the hardware configuration of the program creation support device 10 described in the first and second embodiments will be described. FIG. 12 is a diagram showing an example of a hardware configuration that realizes the program creation support device according to the first and second embodiments.
 プログラム作成支援装置10は、図12に示した入力装置151、プロセッサ152、メモリ153、通信装置155、および出力装置154により実現することができる。プロセッサ152の例は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSP(Digital Signal Processor)ともいう)またはシステムLSI(Large Scale Integration)である。メモリ153の例は、RAM(Random Access Memory)、ROM(Read Only Memory)である。 The program creation support device 10 can be realized by the input device 151, the processor 152, the memory 153, the communication device 155, and the output device 154 shown in FIG. An example of the processor 152 is a CPU (Central Processing Unit, central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor, DSP (Digital Signal Processor)) or system LSI (Large Scale Integration). Examples of the memory 153 are RAM (Random Access Memory) and ROM (Read Only Memory).
 プログラム作成支援装置10は、プロセッサ152が、メモリ153で記憶されている、プログラム作成支援装置10の動作を実行するための、コンピュータで実行可能なプログラム作成支援プログラムを読出して実行することにより実現される。プログラム作成支援装置10の動作を実行するためのプログラムであるプログラム作成支援プログラムは、プログラム作成支援装置10の手順または方法をコンピュータに実行させるものであるともいえる。 The program creation support device 10 is realized by the processor 152 reading and executing a computer-executable program creation support program for executing the operation of the program creation support device 10 stored in the memory 153. NS. It can be said that the program creation support program, which is a program for executing the operation of the program creation support device 10, causes the computer to execute the procedure or method of the program creation support device 10.
 プログラム作成支援装置10で実行されるプログラム作成支援プログラムは、本体ソースコード編集部11と、本体実行条件指定部12と、本体実行コード作成部13と、テストソースコード編集部21と、テスト実行条件指定部22と、テスト実行コード作成部23とを含むモジュール構成となっており、これらが主記憶装置上にロードされ、これらが主記憶装置上に生成される。 The program creation support program executed by the program creation support device 10 includes the main body source code editing unit 11, the main body execution condition specification unit 12, the main body execution code creation unit 13, the test source code editing unit 21, and the test execution condition. It has a module configuration including a designation unit 22 and a test execution code creation unit 23, these are loaded on the main storage device, and these are generated on the main storage device.
 メモリ153は、プロセッサ152が各種処理を実行する際の一時メモリに使用される。メモリ153は、例えば、プログラム作成支援プログラム、本体実行コード、テスト実行コード、本体ソースコード、テストソースコード、本体実行条件、事前条件、事後条件などを記憶する。 The memory 153 is used as a temporary memory when the processor 152 executes various processes. The memory 153 stores, for example, a program creation support program, a main body execution code, a test execution code, a main body source code, a test source code, a main body execution condition, a pre-condition, a post-condition, and the like.
 入力装置151は、入力部72の機能を有している。入力装置151は、ユーザによって入力される情報を受付けるインタフェース装置であり、受付けた情報をプロセッサ152に送る。出力装置154は、プロセッサ152が作成した画面データを表示装置3などの外部装置に出力する。通信装置155は、通信部71の機能を有している。通信装置155は、コントローラ30との間で通信を実行する。 The input device 151 has the function of the input unit 72. The input device 151 is an interface device that receives information input by the user, and sends the received information to the processor 152. The output device 154 outputs the screen data created by the processor 152 to an external device such as the display device 3. The communication device 155 has the function of the communication unit 71. The communication device 155 executes communication with the controller 30.
 制御プログラムの作成を支援するプログラム作成支援プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータが読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されてもよい。また、プログラム作成支援プログラムは、インターネットなどのネットワーク経由でプログラム作成支援装置10に提供されてもよい。 The program creation support program that supports the creation of the control program is a file in an installable format or an executable format, and may be stored in a computer-readable storage medium and provided as a computer program product. Further, the program creation support program may be provided to the program creation support device 10 via a network such as the Internet.
 なお、プログラム作成支援装置10の機能について、一部を専用回路などの専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。 Note that some of the functions of the program creation support device 10 may be realized by dedicated hardware such as a dedicated circuit, and some may be realized by software or firmware.
 コントローラ30は、プログラム作成支援装置10と同様のハードウェア構成を有している。コントローラ30の機能について、一部を専用回路などの専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。 The controller 30 has the same hardware configuration as the program creation support device 10. Some of the functions of the controller 30 may be realized by dedicated hardware such as a dedicated circuit, and some may be realized by software or firmware.
 以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。 The configuration shown in the above embodiments is an example, and can be combined with another known technique, can be combined with each other, and does not deviate from the gist. It is also possible to omit or change a part of the configuration.
 1A,1B 制御システム、2 モータ、3 表示装置、4 アンプ、5 機構部、6 制御軸、10 プログラム作成支援装置、11 本体ソースコード編集部、12 本体実行条件指定部、13 本体実行コード作成部、14,32 本体送信部、15,31 本体受信部、20 テストソースコード作成部、21 テストソースコード編集部、22 テスト実行条件指定部、23 テスト実行コード作成部、24,42 テスト送信部、25,41 テスト受信部、30 コントローラ、33 本体実行コード記憶部、34 本体実行制御部、35 本体実行条件判定部、43 テスト実行コード記憶部、44 テスト実行制御部、45 テスト実行条件判定部、71,81 通信部、72 入力部、82 制御部、83 出力部、151 入力装置、152 プロセッサ、153 メモリ、154 出力装置、155 通信装置。 1A, 1B control system, 2 motor, 3 display device, 4 amplifier, 5 mechanism unit, 6 control axis, 10 program creation support device, 11 main unit source code editing unit, 12 main unit execution condition specification unit, 13 main unit execution code creation unit , 14, 32 main unit transmitter, 15, 31 main unit receiver, 20 test source code creation unit, 21 test source code editing unit, 22 test execution condition specification unit, 23 test execution code creation unit, 24, 42 test transmission unit, 25, 41 test receiving unit, 30 controller, 33 main unit execution code storage unit, 34 main unit execution control unit, 35 main unit execution condition judgment unit, 43 test execution code storage unit, 44 test execution control unit, 45 test execution condition judgment unit, 71, 81 communication unit, 72 input unit, 82 control unit, 83 output unit, 151 input device, 152 processor, 153 memory, 154 output device, 155 communication device.

Claims (9)

  1.  装置を制御するコントローラと、
     前記コントローラが前記装置の制御に用いるプログラムの作成を支援するプログラム作成支援装置と、
     を有し、
     前記プログラムは、前記装置への正式な制御を行う制御プログラムと、前記装置への補助処理を制御する補助プログラムとを含み、
     前記プログラム作成支援装置は、
     前記制御プログラムの実行コードである本体実行コードを作成する本体実行コード作成部と、
     前記補助プログラムの実行コードである補助実行コードを作成する補助実行コード作成部と、
     前記補助実行コードを実行する条件である補助実行条件を作成する補助実行条件作成部と、
     を備え、
     前記本体実行コードと前記補助実行コードとを、別々に作成し、
     前記コントローラは、
     前記本体実行コード、前記補助実行コード、および前記補助実行条件を用いて前記装置を制御する、
     ことを特徴とする制御システム。
    The controller that controls the device and
    A program creation support device that supports the creation of a program used by the controller to control the device, and
    Have,
    The program includes a control program for formal control of the device and an auxiliary program for controlling auxiliary processing for the device.
    The program creation support device is
    The main body execution code creation unit that creates the main body execution code that is the execution code of the control program,
    An auxiliary execution code creation unit that creates an auxiliary execution code that is an execution code of the auxiliary program,
    An auxiliary execution condition creation unit that creates an auxiliary execution condition that is a condition for executing the auxiliary execution code,
    With
    Create the main body execution code and the auxiliary execution code separately,
    The controller
    The device is controlled by using the main body execution code, the auxiliary execution code, and the auxiliary execution conditions.
    A control system characterized by that.
  2.  前記コントローラは、
     前記本体実行コードを記憶する本体実行コード記憶装置と、
     前記補助実行コードを記憶する補助実行コード記憶装置と、
     を備え、
     前記本体実行コード記憶装置と、前記補助実行コード記憶装置とは、別構成の記憶装置である、
     ことを特徴とする請求項1に記載の制御システム。
    The controller
    A main body execution code storage device that stores the main body execution code,
    An auxiliary execution code storage device that stores the auxiliary execution code,
    With
    The main body execution code storage device and the auxiliary execution code storage device are storage devices having different configurations.
    The control system according to claim 1.
  3.  前記補助実行コード記憶装置は、前記コントローラから着脱可能な記憶装置である、
     ことを特徴とする請求項2に記載の制御システム。
    The auxiliary execution code storage device is a storage device that can be attached to and detached from the controller.
    The control system according to claim 2.
  4.  装置への正式な制御を行う制御プログラムの実行コードである本体実行コードを作成する本体実行コード作成部と、
     前記装置への補助処理を制御する補助プログラムの実行コードである補助実行コードを作成する補助実行コード作成部と、
     前記補助実行コードを実行する条件である補助実行条件を作成する補助実行条件作成部と、
     を備え、
     前記本体実行コードと前記補助実行コードとを、別々に作成する、
     ことを特徴とするプログラム作成支援装置。
    The main body execution code creation unit that creates the main body execution code, which is the execution code of the control program that performs formal control over the device,
    An auxiliary execution code creation unit that creates an auxiliary execution code that is an execution code of an auxiliary program that controls auxiliary processing to the device, and an auxiliary execution code creation unit.
    An auxiliary execution condition creation unit that creates an auxiliary execution condition that is a condition for executing the auxiliary execution code,
    With
    The main body execution code and the auxiliary execution code are created separately.
    A program creation support device characterized by this.
  5.  前記本体実行コードを実行する条件である本体実行条件を作成する本体実行条件作成部をさらに備える、
     ことを特徴とする請求項4に記載のプログラム作成支援装置。
    It further includes a main body execution condition creation unit that creates a main body execution condition that is a condition for executing the main body execution code.
    The program creation support device according to claim 4, wherein the program creation support device is characterized by the above.
  6.  前記制御プログラムのソースコードである本体ソースコードを編集する本体ソースコード編集部と、
     前記補助プログラムのソースコードである補助ソースコードを編集する補助ソースコード編集部と、
     をさらに備え、
     前記本体実行コード作成部は、前記本体ソースコードから前記本体実行コードを作成し、
     前記補助実行コード作成部は、前記補助ソースコードから前記補助実行コードを作成する、
     ことを特徴とする請求項4または5に記載のプログラム作成支援装置。
    The main body source code editorial unit that edits the main body source code that is the source code of the control program,
    An auxiliary source code editorial department that edits the auxiliary source code that is the source code of the auxiliary program, and
    With more
    The main body execution code creation unit creates the main body execution code from the main body source code, and creates the main body execution code.
    The auxiliary execution code creation unit creates the auxiliary execution code from the auxiliary source code.
    The program creation support device according to claim 4 or 5.
  7.  前記制御プログラムに含まれるモーション制御における指令値の演算用データに基づいて、前記補助ソースコードを作成する補助ソースコード作成部をさらに備える、
     ことを特徴とする請求項6に記載のプログラム作成支援装置。
    An auxiliary source code creation unit that creates the auxiliary source code based on the calculation data of the command value in the motion control included in the control program is further provided.
    The program creation support device according to claim 6, wherein the program creation support device is characterized by the above.
  8.  装置への正式な制御を行う制御プログラムの実行コードである本体実行コードを作成する本体実行コード作成ステップと、
     前記装置への補助処理を制御する補助プログラムの実行コードである補助実行コードを作成する補助実行コード作成ステップと、
     前記補助実行コードを実行する条件である補助実行条件を作成する補助実行条件作成ステップと、
     を含み、
     前記本体実行コードと前記補助実行コードとを、別々に作成する、
     ことを特徴とするプログラム作成支援方法。
    The main body execution code creation step that creates the main body execution code, which is the execution code of the control program that performs formal control over the device,
    An auxiliary execution code creation step that creates an auxiliary execution code that is an execution code of an auxiliary program that controls auxiliary processing to the device, and
    An auxiliary execution condition creation step for creating an auxiliary execution condition, which is a condition for executing the auxiliary execution code, and
    Including
    The main body execution code and the auxiliary execution code are created separately.
    A program creation support method characterized by this.
  9.  装置への正式な制御を行う制御プログラムの実行コードである本体実行コードを作成する本体実行コード作成ステップと、
     前記装置への補助処理を制御する補助プログラムの実行コードである補助実行コードを作成する補助実行コード作成ステップと、
     前記補助実行コードを実行する条件である補助実行条件を作成する補助実行条件作成ステップと、
     をコンピュータに実行させ、
     前記本体実行コードと前記補助実行コードとを、別々に作成する、
     ことを特徴とするプログラム作成支援プログラム。
    The main body execution code creation step that creates the main body execution code, which is the execution code of the control program that performs formal control over the device,
    An auxiliary execution code creation step that creates an auxiliary execution code that is an execution code of an auxiliary program that controls auxiliary processing to the device, and
    An auxiliary execution condition creation step for creating an auxiliary execution condition, which is a condition for executing the auxiliary execution code, and
    Let the computer run
    The main body execution code and the auxiliary execution code are created separately.
    A program creation support program characterized by this.
PCT/JP2020/005829 2020-02-14 2020-02-14 Control system, program creation assistance device, program creation assistance method, and program creation assistance program WO2021161518A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2020/005829 WO2021161518A1 (en) 2020-02-14 2020-02-14 Control system, program creation assistance device, program creation assistance method, and program creation assistance program
JP2020533859A JP6808102B1 (en) 2020-02-14 2020-02-14 Control system, program creation support device, program creation support method, and program creation support program
DE112020005770.4T DE112020005770T5 (en) 2020-02-14 2020-02-14 Control system, programming support device, programming support method and programming support program
CN202080096084.7A CN115066676B (en) 2020-02-14 2020-02-14 Control system, program creation support device, program creation support method, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/005829 WO2021161518A1 (en) 2020-02-14 2020-02-14 Control system, program creation assistance device, program creation assistance method, and program creation assistance program

Publications (1)

Publication Number Publication Date
WO2021161518A1 true WO2021161518A1 (en) 2021-08-19

Family

ID=73993004

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/005829 WO2021161518A1 (en) 2020-02-14 2020-02-14 Control system, program creation assistance device, program creation assistance method, and program creation assistance program

Country Status (4)

Country Link
JP (1) JP6808102B1 (en)
CN (1) CN115066676B (en)
DE (1) DE112020005770T5 (en)
WO (1) WO2021161518A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179752A (en) * 1995-12-25 1997-07-11 Hudson Soft Co Ltd Debugging method and device for rom cartridge
WO2015170382A1 (en) * 2014-05-08 2015-11-12 三菱電機株式会社 Engineering tool, program editing device, and program editing system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5246186B2 (en) 1973-03-14 1977-11-22
JP5762154B2 (en) * 2011-06-08 2015-08-12 三菱電機株式会社 Information processing apparatus, information processing method, and program
CN104204975B (en) * 2012-03-26 2016-10-12 三菱电机株式会社 Sequencer debugging auxiliary device
JP5900143B2 (en) * 2012-05-15 2016-04-06 富士電機株式会社 Control system, control device, and program execution control method
JP6340886B2 (en) * 2014-04-10 2018-06-13 株式会社ジェイテクト Program creation support apparatus for programmable logic controller and program creation support method for programmable logic controller
DE112018000182T5 (en) * 2018-03-28 2020-01-23 Mitsubishi Electric Corporation PROGRAMMING SUPPORT DEVICE, PROGRAMMING SUPPORT METHOD AND PROGRAM

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179752A (en) * 1995-12-25 1997-07-11 Hudson Soft Co Ltd Debugging method and device for rom cartridge
WO2015170382A1 (en) * 2014-05-08 2015-11-12 三菱電機株式会社 Engineering tool, program editing device, and program editing system

Also Published As

Publication number Publication date
JP6808102B1 (en) 2021-01-06
DE112020005770T5 (en) 2022-09-15
CN115066676A (en) 2022-09-16
JPWO2021161518A1 (en) 2021-08-19
CN115066676B (en) 2023-06-09

Similar Documents

Publication Publication Date Title
US8250242B2 (en) Field bus system
WO2021161518A1 (en) Control system, program creation assistance device, program creation assistance method, and program creation assistance program
JP2000181634A (en) Mirroring device
JP2007058499A (en) Information processor and data writing method
US7477250B2 (en) Method and system for hapto-visual scene development and deployment
JP2004062663A (en) Method and device for rewriting program execution in disk storage device
JP7407932B2 (en) Refrigeration cycle equipment
WO2024062897A1 (en) Control system and software update method
JP2023025750A (en) Storage processing apparatus of vehicle data
JP3268841B2 (en) Control device for rocking device
JPH09259004A (en) Debugging method
JPH05334127A (en) I/o simulation system
JP2513142B2 (en) Program simulator device
JP3000607B2 (en) Bus controller
JP2669143B2 (en) Programmable controller programming device
JP4841281B2 (en) Data migration device
JPH05199298A (en) Firmware revision system for i interface test equipment
JP3245226B2 (en) Hydraulic servo controller
JPH08286754A (en) Real-time verification operation system for robot or the like in remote place
EP0933775A2 (en) Data compression and decompression system and a method used therefor
JP2004021582A (en) Information processing system, rewriting method of firmware, rewriting program and recording medium
JPH04149720A (en) Magnetic tape controller
JP2003099243A (en) Graphic display device and its control method
JPH07120175B2 (en) Composite control device and control method thereof
JPH0644012A (en) Data transfer system using pseudo magnetic disk device

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2020533859

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 20918147

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 20918147

Country of ref document: EP

Kind code of ref document: A1