Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7567566B2 - Information processing device and program - Google Patents
[go: Go Back, main page]

JP7567566B2 - Information processing device and program - Google Patents

Information processing device and program Download PDF

Info

Publication number
JP7567566B2
JP7567566B2 JP2021036616A JP2021036616A JP7567566B2 JP 7567566 B2 JP7567566 B2 JP 7567566B2 JP 2021036616 A JP2021036616 A JP 2021036616A JP 2021036616 A JP2021036616 A JP 2021036616A JP 7567566 B2 JP7567566 B2 JP 7567566B2
Authority
JP
Japan
Prior art keywords
mode
processor
control device
control
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021036616A
Other languages
Japanese (ja)
Other versions
JP2022136823A (en
Inventor
英輝 原田
州平 遠坂
大輔 若林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2021036616A priority Critical patent/JP7567566B2/en
Priority to PCT/JP2021/034557 priority patent/WO2022190424A1/en
Publication of JP2022136823A publication Critical patent/JP2022136823A/en
Application granted granted Critical
Publication of JP7567566B2 publication Critical patent/JP7567566B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Description

本開示は、情報処理装置、およびプログラムに関し、特に制御装置の設定のための情報処理装置およびプログラムに関する。 The present disclosure relates to an information processing device and a program, and in particular to an information processing device and a program for setting a control device.

様々な生産現場において、PLC(プログラマブルコントローラ)などの制御装置を用いたFA(Factory Automation)技術が広く普及している。近年の情報通信技術(ICT:Information and Communication Technology)の発展に伴って、このようなFA分野における制御装置においても、従来のシーケンスプログラムだけではなく、各種のアプリケーションプログラムが実行されるようになっている。 Factory automation (FA) technology using control devices such as programmable controllers (PLCs) has become widespread in various production sites. With the recent development of information and communication technology (ICT), control devices in the FA field are now able to run not only conventional sequence programs, but also various application programs.

たとえば特開2020-61055号公報(特許文献1)は、制御装置のプロセッサにおいて、一定の制御周期内に高優先度のプログラムと低優先度のプログラムとを実行させること、および、高優先度プログラムの実行を妨げないように、プロセッサの空き時間に低優先度プログラムを実行することを開示する。 For example, JP 2020-61055 A (Patent Document 1) discloses that a processor in a control device executes a high-priority program and a low-priority program within a certain control period, and executes a low-priority program during free time in the processor so as not to interfere with the execution of the high-priority program.

特開2020-61055号公報JP 2020-61055 A

上述の制御装置では、優先度の高い第1のプログラムがプロセッサによって、定周期で繰り返し実行される。さらに、第1のプログラムの実行を妨げないように、制御周期中のプロセッサの空き時間に、第2のプログラムおよび第3のプログラムをプロセッサに実行させる。演算速度および性能の向上の観点から、設定された制御周期の中で、プロセッサは、その周期を超えないぎりぎりの時間まで演算をおこなう。しかし、プロセッサおよび周辺回路は高負荷状態にあるため、制御装置の消費電力が大きい。制御装置の消費電力が大きくなるほど、制御装置から発せられる熱の量も大きくなる。 In the above-mentioned control device, the first program, which has a high priority, is repeatedly executed by the processor at a fixed cycle. Furthermore, in order not to impede the execution of the first program, the processor is made to execute the second program and the third program during the processor's free time during the control cycle. From the viewpoint of improving calculation speed and performance, the processor performs calculations within the set control cycle up to the very last moment without exceeding the cycle. However, because the processor and peripheral circuits are in a high load state, the power consumption of the control device is large. The greater the power consumption of the control device, the greater the amount of heat generated by the control device.

制御装置は、ある動作周囲温度で使用可能なように設計される。また、実際に作製された装置は、その動作周囲温度まで使用可能かどうか評価される。設計および評価は、制御装置にとって厳しい条件、すなわち、制御周期の終わりの直前までプロセッサが演算を行ったという条件(最大負荷状態)で実施される。 The control device is designed so that it can be used at a certain ambient operating temperature. The device that is actually manufactured is then evaluated to see if it can be used up to that ambient operating temperature. The design and evaluation are performed under harsh conditions for the control device, i.e., under conditions where the processor performs calculations until just before the end of the control period (maximum load condition).

小型サイズ、および製造コストの抑制といった点から、制御装置の放熱の能力に余裕がない可能性がある。たとえば、設計および評価の段階で決定した動作周囲温度の上限よりも高い周囲温度のもとで制御装置を最大負荷状態で動作させた場合には、制御装置の誤動作、停止、あるいは故障の可能性が生じる。 Due to the need for small size and low manufacturing costs, the control device may not have sufficient heat dissipation capacity. For example, if the control device is operated under maximum load at an ambient temperature higher than the upper limit of the operating ambient temperature determined during the design and evaluation stages, there is a possibility that the control device may malfunction, stop, or break down.

プロセッサの中には、高温時にクロック周波数を自動的に低下させる機能を有するものがある。クロック周波数を低下させることによってプロセッサの消費電力が下がるため、プロセッサの発熱量を下げることができる。しかし、PLCのように生産現場に用いられる制御装置では、クロック周波数を下げた場合には制御性能が低下するという問題が生じる。このため、制御装置によって制御される対象(製造装置)の動作が変化することが起こり得る。 Some processors have a function that automatically reduces the clock frequency when the temperature is high. By reducing the clock frequency, the power consumption of the processor is reduced, and the amount of heat generated by the processor can be reduced. However, in control devices used in production sites such as PLCs, there is a problem that the control performance decreases when the clock frequency is reduced. This can cause changes in the operation of the object (manufacturing equipment) controlled by the control device.

制御装置の使用されうる環境が多様になっている。したがって想定した使用周囲温度よりも高い温度の下で制御装置を使用する可能性も生じる。たとえば筐体を大きくすることによって、制御装置の放熱性能を高めようとすれば、制御装置の新たな設計が必要になる。サイズおよび製造コストに対する要請の点から、ハードウェアの変更は容易ではない。 The environments in which control devices can be used are becoming more diverse. As a result, there is a possibility that the control device will be used at temperatures higher than the ambient temperature for which it was intended. For example, if one were to increase the size of the casing to improve the heat dissipation performance of the control device, a new design for the control device would be required. Due to requirements regarding size and manufacturing costs, it is not easy to change the hardware.

本発明の1つの目的は、より高い周囲温度で制御装置を使用可能なように制御装置を設定するための情報処理装置および、情報処理装置によって実行されるプログラムを提供することである。 One object of the present invention is to provide an information processing device and a program executed by the information processing device for configuring a control device so that the control device can be used at higher ambient temperatures.

本開示の一例の情報処理装置は、プロセッサを有し、かつ制御対象を制御する制御装置によって実行されるタスクに関する設定を行うための情報処理装置であって、制御装置の動作モードに関するユーザ入力を受け付ける入力部と、ユーザ入力に従って制御装置の動作条件を設定する設定部と、設定部により設定された制御装置の動作条件を制御装置に転送する転送部とを備える。動作モードは、第1のモードと、第1のモードでの動作温度よりも高温で制御装置を動作させるための第2のモードとを含む。ユーザ入力によって第2のモードが選択された場合、設定部は、タスクの制御周期内に、プロセッサの空き時間を割り当てる。 An example of an information processing device of the present disclosure is an information processing device having a processor and for making settings related to a task executed by a control device that controls a control target, and includes an input unit that accepts user input related to an operation mode of the control device, a setting unit that sets the operation conditions of the control device according to the user input, and a transfer unit that transfers the operation conditions of the control device set by the setting unit to the control device. The operation modes include a first mode and a second mode for operating the control device at a higher temperature than the operating temperature in the first mode. When the second mode is selected by user input, the setting unit allocates free time of the processor within the control period of the task.

この開示によれば、情報処理装置は、ユーザによって第2のモードが選択された際に、制御周期内にプロセッサの空き時間を割り当てる。空き時間の間には、プロセッサは演算を行わないので、プロセッサの発熱量が抑えられる。したがって第1のモードでの周囲温度よりも高い温度において制御装置を動作させることが可能となる。情報処理装置は、第1のモードでの周囲温度よりも高い温度において制御装置が動作可能なように制御装置を設定することができる。 According to this disclosure, when the second mode is selected by the user, the information processing device allocates free time for the processor within the control period. During the free time, the processor does not perform calculations, so the amount of heat generated by the processor is reduced. Therefore, it becomes possible to operate the control device at a temperature higher than the ambient temperature in the first mode. The information processing device can set the control device so that the control device can operate at a temperature higher than the ambient temperature in the first mode.

上述の開示において、ユーザ入力によって第2のモードが選択された場合、設定部は、制御周期から空き時間を除いた第1の残り時間内に、複数のタスクのうち、プロセッサによる実行の優先度の高い高優先タスクの実行時間を割り当てる。 In the above disclosure, when the second mode is selected by user input, the setting unit allocates execution time for a high-priority task having a high priority for execution by the processor among the multiple tasks within a first remaining time that is obtained by subtracting free time from the control period.

上述の開示によれば、高優先タスクの実行に影響を与えることなく、制御周期内でプロセッサの空き時間を確保することができる。したがって、たとえば重要度の高いタスクの実行に影響を与えることなく、高い周囲温度において制御装置を動作させることができる。 According to the above disclosure, it is possible to secure free processor time within a control period without affecting the execution of high priority tasks. Therefore, for example, it is possible to operate the control device at high ambient temperatures without affecting the execution of tasks of high importance.

上述の開示において、ユーザ入力によって第2のモードが選択された場合に、設定部は、制御周期から空き時間および高優先タスクの実行時間を除いた第2の残り時間内に、複数のタスクのうち、実行の優先度の低い低優先タスクが割り当て可能かどうかを判断する。第2の残り時間内に、低優先タスクが割り当て可能である場合には、設定部は、第2の残り時間内に低優先タスクの実行時間を割り当てる。第2の残り時間内に、低優先タスクが割り当てできない場合には、設定部は、第2の残り時間を空き時間に割り当てる。 In the above disclosure, when the second mode is selected by user input, the setting unit determines whether a low-priority task, which has a low execution priority, among the multiple tasks can be assigned within a second remaining time that is the control period minus the free time and the execution time of the high-priority task. If the low-priority task can be assigned within the second remaining time, the setting unit assigns the execution time of the low-priority task within the second remaining time. If the low-priority task cannot be assigned within the second remaining time, the setting unit assigns the second remaining time to the free time.

上述の開示によれば、制御周期内に高優先タスクおよび低優先タスクを実行することによって、制御対象に対する制御の性能を向上させることができる。低優先タスクが実行できない場合は、制御周期内の空き時間をより長くすることができる。したがって、プロセッサの発熱量を抑える効果を高めることができる。 According to the above disclosure, by executing a high priority task and a low priority task within a control period, the control performance of the control object can be improved. If a low priority task cannot be executed, the free time within the control period can be made longer. Therefore, the effect of suppressing the amount of heat generated by the processor can be improved.

上述の開示において、ユーザ入力によって第2のモードが選択された場合に、設定部は、高優先タスクの実行時間の揺らぎに基づく高優先タスクの最大の実行時間を、第1の残り時間内に割り当てる。 In the above disclosure, when the second mode is selected by user input, the setting unit allocates the maximum execution time of the high priority task based on the fluctuation of the execution time of the high priority task within the first remaining time.

上述の開示によれば、制御周期内に空き時間を確保しつつ、高優先タスクを確実に実行することができる。 According to the above disclosure, it is possible to ensure that high priority tasks are executed while securing free time within the control cycle.

上述の開示において、設定部は、空き時間の少なくとも一部を、高優先タスクの終了直後に割り当てる。 In the above disclosure, the setting unit allocates at least a portion of the free time immediately after the high priority task ends.

上述の開示によれば、プロセッサが連続的に動作する時間を短くすることによって、制御周期を変えることなく、プロセッサの温度が大きく上昇することを抑えることができる。 According to the above disclosure, by shortening the time during which the processor operates continuously, it is possible to prevent the processor temperature from rising significantly without changing the control period.

上述の開示において、ユーザ入力によって第1のモードが選択された場合に、設定部は、制御周期内に空き時間を確保せず、かつ、複数のタスクが優先度の高い順に制御周期内で実行されるように、複数のタスクを割り当てる。 In the above disclosure, when the first mode is selected by user input, the setting unit assigns multiple tasks so that no free time is reserved within the control period and the multiple tasks are executed within the control period in descending order of priority.

上述の開示によれば、制御周期内に高優先タスクおよび低優先タスクを実行することによって、制御対象に対する制御の性能を向上させることができる。 According to the above disclosure, by executing high priority tasks and low priority tasks within a control period, it is possible to improve the control performance of a control object.

本開示の一例によれば、プロセッサを有し、かつ制御対象を制御する制御装置によって実行されるタスクに関する設定を、コンピュータに実行させるためのプログラムであって、コンピュータに、制御装置の動作モードに関するユーザ入力を受け付けるステップと、ユーザ入力に従って制御装置の動作条件を設定するステップと、制御装置の動作条件を制御装置に転送するステップとを実行させる。動作モードは、第1のモードと、第1のモードでの動作温度よりも高温で制御装置を動作させるための第2のモードとを含む。設定するステップは、ユーザ入力によって第2のモードが選択された場合に、タスクの制御周期内に、プロセッサの空き時間を割り当てるステップを含む。 According to one example of the present disclosure, a program for causing a computer to execute settings related to a task executed by a control device having a processor and controlling a control target causes the computer to execute the steps of accepting user input related to an operation mode of the control device, setting operation conditions of the control device according to the user input, and transferring the operation conditions of the control device to the control device. The operation modes include a first mode and a second mode for operating the control device at a higher temperature than the operating temperature in the first mode. The setting step includes a step of allocating free time of the processor within the control period of the task when the second mode is selected by user input.

この開示によれば、より高い周囲温度で制御装置を使用可能なように制御装置を設定することができる。 According to this disclosure, the control device can be configured to allow the control device to be used at higher ambient temperatures.

本開示によれば、より高い周囲温度で制御装置を使用可能なように制御装置を設定することができる。 According to the present disclosure, the control device can be configured so that it can be used at higher ambient temperatures.

本実施の形態に係る制御装置におけるデフォルトモードでのプログラムの実行スケジュールの一例を示す模式図である。FIG. 4 is a schematic diagram showing an example of a program execution schedule in a default mode in the control device according to the present embodiment. 本実施の形態に係る制御装置における拡張モードでのプログラムの実行スケジュールの一例を示す模式図である。5 is a schematic diagram showing an example of a program execution schedule in an extended mode in the control device according to the present embodiment. FIG. 一実施形態に係る制御装置を含む制御システムの模式図である。FIG. 1 is a schematic diagram of a control system including a control device according to an embodiment. 本実施の形態に係る制御装置を構成する演算ユニットのハードウェア構成の一例を示す模式図である。FIG. 2 is a schematic diagram showing an example of a hardware configuration of a computing unit that constitutes the control device according to the present embodiment. 本実施の形態に係るシステムを構成するサポート装置のハードウェア構成例を示すブロック図である。2 is a block diagram showing an example of a hardware configuration of a support device constituting the system according to the present embodiment. FIG. 本実施の形態に係る制御装置を構成する演算ユニットのソフトウェア構成の一例を示す模式図である。FIG. 2 is a schematic diagram showing an example of a software configuration of a computing unit that constitutes the control device according to the present embodiment. サポート装置の表示部によって提供される、動作モードの設定のための画面の一例を示す図である。FIG. 13 is a diagram showing an example of a screen for setting an operation mode, which is provided by a display unit of the support device. 第1の実施の形態に係る制御装置の動作モード設定処理の概略を示したフローチャートである。4 is a flowchart showing an outline of an operation mode setting process of the control device according to the first embodiment. デフォルトモードと拡張モードにおける、制御周期内の時間の割当ての優先度を説明した図である。11 is a diagram illustrating the priority of time allocation within a control period in the default mode and the extended mode. FIG. 制御装置の演算ユニットがデフォルトモードにおいて実行するタスク処理の例を説明する図である。FIG. 10 is a diagram illustrating an example of a task process executed by a computing unit of the control device in a default mode. 制御装置の演算ユニットが拡張モードにおいて実行するタスク処理の例を説明する図である。10A and 10B are diagrams illustrating an example of task processing executed by a computing unit of a control device in an extended mode. 制御装置の演算ユニットが拡張モードにおいて実行するタスク処理の別の例を説明する図である。11 is a diagram illustrating another example of task processing executed by the arithmetic unit of the control device in the extended mode. FIG. 制御装置の演算ユニットが拡張モードにおいて実行するタスク処理のさらに別の例を説明する図である。FIG. 11 is a diagram illustrating yet another example of task processing executed by the arithmetic unit of the control device in the extended mode. 第2の実施の形態に係る制御装置の動作モード設定処理の概略を示したフローチャートである。10 is a flowchart showing an outline of an operation mode setting process of a control device according to a second embodiment. 制御装置によるタスクの実行時におけるプロセッサ空き時間の制御に関する処理を説明するフローチャートである。10 is a flowchart illustrating a process related to control of a processor free time during execution of a task by a control device. 第2の実施の形態に係る制御装置の演算ユニットが拡張モードにおいて実行するタスク処理の例を説明する図である。13 is a diagram illustrating an example of a task process executed in an extended mode by a computing unit of a control device according to a second embodiment; FIG.

以下、図面を参照しつつ、本発明に従う実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the following description, the same parts and components are given the same reference numerals. Their names and functions are also the same. Therefore, detailed descriptions thereof will not be repeated.

<A.適用例>
まず、図1および図2を参照して、本発明が適用される場面の一例について説明する。
<A. Application Examples>
First, an example of a situation in which the present invention is applied will be described with reference to FIGS.

本実施の形態に係る制御装置は、任意の制御対象を制御するためのコンピュータであり、1または複数のプロセッサを有する。制御装置は、2つの動作モードを有する。第1の動作モードはデフォルト(標準)モードである。第2の動作モードは拡張モードである。 The control device according to this embodiment is a computer for controlling any control target, and has one or more processors. The control device has two operating modes. The first operating mode is the default (standard) mode. The second operating mode is the extended mode.

図1は、本実施の形態に係る制御装置におけるデフォルトモードでのプログラムの実行スケジュールの一例を示す模式図である。図2は、本実施の形態に係る制御装置における拡張モードでのプログラムの実行スケジュールの一例を示す模式図である。 Figure 1 is a schematic diagram showing an example of a program execution schedule in the default mode in a control device according to this embodiment. Figure 2 is a schematic diagram showing an example of a program execution schedule in the extended mode in a control device according to this embodiment.

図1に示すように、制御装置をデフォルトモードで動作させる場合、制御装置は、制御周期内で高優先タスク20と、低優先タスク30とを実行する。 As shown in FIG. 1, when the control device is operated in the default mode, the control device executes a high priority task 20 and a low priority task 30 within a control period.

本明細書において、「タスク」は、コンピューティング資源を割当てる制御の対象となる基本単位であり、各タスクに、実行させるべき1または複数のプログラムが設定される。すなわち、いずれかのタスクに対してコンピューティング資源が割当てられ、当該タスクが実行できる状態になると、当該タスクに設定されている1または複数のプログラムの実行が開始または再開される。 In this specification, a "task" is a basic unit that is the subject of control for allocating computing resources, and one or more programs to be executed are set for each task. In other words, when computing resources are allocated to a task and the task becomes ready to be executed, execution of one or more programs set for the task is started or resumed.

高優先タスク20は、制御周期内に実行すべきタスクである。高優先タスク20には、制御装置のプロセッサで繰返し実行される最も実行の優先度(以下、単に「優先度」とも称す。)の高いプログラムが設定される。高優先タスク20は、例えば、入出力データの更新処理、および最優先で実行されるべきシーケンス演算処理などを含んでもよい。高優先タスク20が制御周期内に必ず実行されるように、制御周期内に高優先タスク20の処理時間が割り当てられる。 The high priority task 20 is a task that should be executed within a control period. The program with the highest execution priority (hereinafter simply referred to as "priority") that is repeatedly executed by the processor of the control device is set as the high priority task 20. The high priority task 20 may include, for example, an update process of input/output data and a sequence calculation process that should be executed with the highest priority. A processing time for the high priority task 20 is allocated within the control period so that the high priority task 20 is always executed within the control period.

一方、低優先タスク30は、高優先タスク20よりも実行の優先度が低いタスクであり、たとえば要求があった場合に実行される。低優先タスク30には、高優先タスク20に設定されるプログラムより優先度が低いプログラムが設定される。 On the other hand, the low priority task 30 is a task that has a lower execution priority than the high priority task 20, and is executed, for example, when requested. A program that has a lower priority than the program set in the high priority task 20 is set in the low priority task 30.

制御装置は、スケジューラプログラムに従って、これらのタスクに設定される各プログラムの実行タイミングを管理する。スケジューラプログラムによるプログラムの実行管理は、適時のタイミングおよび期間で、コンピューティング資源を各プログラムに割当てることで実現できる。 The control device manages the execution timing of each program set for these tasks according to a scheduler program. The scheduler program manages program execution by allocating computing resources to each program at the appropriate timing and for the appropriate period.

デフォルトモードでは、スケジューラプログラムは、高優先タスク20に設定されたプログラムの実行を妨げないように、制御周期内の高優先タスク20を実行していない時間に、低優先タスク30に設定されるプログラムをプロセッサに実行させる。なお、スケジューラプログラムは、予め設定された制御周期を超えないように、制御周期内に低優先タスク30の実行時間を割り当てる。したがって、ある制御周期では、高優先タスク20および低優先タスク30を割り当てた状態で、さらにプロセッサの空き時間が生じることが起こり得る。また、別の制御周期では、高優先タスク20のみが割り当てられ、残りの時間がプロセッサの空き時間となることが起こり得る。 In the default mode, the scheduler program causes the processor to execute the program set as the low priority task 30 during the time during the control period when the high priority task 20 is not being executed, so as not to interfere with the execution of the program set as the high priority task 20. The scheduler program allocates the execution time of the low priority task 30 within the control period so as not to exceed a preset control period. Therefore, in one control period, even when the high priority task 20 and the low priority task 30 are assigned, there may still be free time on the processor. In another control period, only the high priority task 20 may be assigned, and the remaining time may become free time on the processor.

図2を参照して、標準的な制御装置の使用周囲温度(たとえば55℃以下の温度)よりも高い周囲温度(たとえば60℃)で制御装置を動作させる場合に、拡張モードが選択される。制御装置を拡張モードで動作させる場合、スケジューラプログラムは、制御周期のうちの所定の割合の時間を、プロセッサの空き時間40に確保する。制御周期に対する空き時間40の割合は、たとえば制御装置の開発者が、実際の装置を用いて空き時間を変えながら温度測定試験を実施することによって決定した値であってもよい。 Referring to FIG. 2, the extended mode is selected when the control device is operated at a higher ambient temperature (e.g., 60° C.) than the ambient temperature at which a standard control device is used (e.g., a temperature of 55° C. or less). When the control device is operated in the extended mode, the scheduler program reserves a predetermined percentage of the control period for the processor's free time 40. The percentage of the free time 40 relative to the control period may be a value determined, for example, by the developer of the control device by performing temperature measurement tests using an actual device while changing the free time.

次にスケジューラプログラムは、制御周期のうちの空き時間40を引いた残り時間(第1の残り時間)に高優先タスク20の処理時間を割り当てる。続いてスケジューラプログラムは、制御周期から空き時間40および高優先タスク20の処理時間を引いた第2の残り時間に、低優先タスク30を割り当てることができるかどうかを判断する。 Next, the scheduler program allocates the processing time of the high priority task 20 to the remaining time (first remaining time) obtained by subtracting the free time 40 from the control cycle. The scheduler program then determines whether the low priority task 30 can be allocated to the second remaining time obtained by subtracting the free time 40 and the processing time of the high priority task 20 from the control cycle.

第2の残り時間に、低優先タスク30を割り当てることができる場合、その制御周期では、高優先タスク20および低優先タスク30が割り当てられるとともに実行される。さらに、その制御周期では、予め決められた長さを持つ空き時間40が確保される。一方、第2の残り時間に、低優先タスク30を割り当てることができない場合は、その制御周期において、高優先タスク20のみ実行される。すなわち、高優先タスク20の実行時間以外の時間が、プロセッサの空き時間40となる。したがって実際のプロセッサ空き時間は、予め確保された時間よりも長くなる。 If the low priority task 30 can be assigned to the second remaining time, the high priority task 20 and the low priority task 30 are assigned and executed in that control period. Furthermore, a predetermined length of free time 40 is secured in that control period. On the other hand, if the low priority task 30 cannot be assigned to the second remaining time, only the high priority task 20 is executed in that control period. In other words, the time other than the execution time of the high priority task 20 becomes the processor free time 40. Therefore, the actual processor free time is longer than the time secured in advance.

たとえば制御装置をデフォルトモードで動作させている状態で、高優先タスクの最大処理時間が長くなり、制御周期内に空き時間を確保できないことが起こり得る。この状態において、制御装置の周囲温度が高くなると、制御周期を長く設定しなければならない。しかし、制御周期を長くすると、高優先タスクの処理の性能が低下する。すなわち制御装置の制御性能が低下する。 For example, when the control device is operating in default mode, the maximum processing time of a high priority task may become long, making it impossible to secure free time within the control period. In this state, if the ambient temperature of the control device becomes high, the control period must be set to a long period. However, if the control period is made long, the processing performance of the high priority task decreases. In other words, the control performance of the control device decreases.

本開示の実施の形態によれば、拡張モードにおいて、制御装置は、必ず、一定時間以上の長さの空き時間40を制御周期内に確保することができる。プロセッサは空き時間の間、演算を停止する。したがって、デフォルトモードでの動作に比べてプロセッサの消費電力を低減できる。プロセッサの消費電力を低減することによって、プロセッサの発熱量を抑えることができる。これにより、拡張モードでは、デフォルトモードよりも高い周囲温度でも制御装置を動作させることができる。特に、本開示の実施の形態によれば、制御装置の放熱性を高めるためのハードウェアの変更(たとえば筐体を大きくする)を不要としながら高い周囲温度でも制御装置を動作させることができる。 According to an embodiment of the present disclosure, in the extended mode, the control device can always secure a certain amount of free time 40 or more within the control cycle. The processor stops calculations during the free time. Therefore, the power consumption of the processor can be reduced compared to operation in the default mode. By reducing the power consumption of the processor, the amount of heat generated by the processor can be reduced. As a result, in the extended mode, the control device can be operated even at a higher ambient temperature than in the default mode. In particular, according to an embodiment of the present disclosure, the control device can be operated even at a high ambient temperature without the need to modify the hardware (e.g., by making the case larger) to improve the heat dissipation of the control device.

<B.構成例>
(B-1.システムの構成)
図3は、一実施形態に係る制御装置を含む制御システムの模式図である。本実施の形態に係る制御装置は、たとえばFAの生産ライン10に備えられ、制御対象を制御する。生産ライン10は、制御装置1A,1B,1C,1D,1E,1F,1G,1Hを含む。制御装置1A~1Hは、たとえばPLCによって実現される。
<B. Configuration Example>
(B-1. System Configuration)
3 is a schematic diagram of a control system including a control device according to an embodiment. The control device according to this embodiment is provided in, for example, an FA production line 10, and controls a control target. The production line 10 includes control devices 1A, 1B, 1C, 1D, 1E, 1F, 1G, and 1H. The control devices 1A to 1H are realized, for example, by PLCs.

制御装置1A~1Hは、通信装置4に接続される。制御装置1A~1Hは通信装置4を介して、互いの間でデータを遣り取りできる。通信装置4は、産業分野で行われる通信に必要なリアルタイム性を実現するための装置であり、たとえばIEEE 802.1.TSNに準拠したスイッチである。また、制御装置1A,1B,1C,1D,1E,1F,1G,1Hは、互いに時刻同期する。このために制御装置1A,1B,1C,1D,1E,1F,1G,1Hは、タイマー機能を備える。 The control devices 1A to 1H are connected to a communication device 4. The control devices 1A to 1H can exchange data with one another via the communication device 4. The communication device 4 is a device for achieving the real-time performance required for communication in the industrial field, and is, for example, a switch that complies with IEEE 802.1.TSN. In addition, the control devices 1A, 1B, 1C, 1D, 1E, 1F, 1G, and 1H are time-synchronized with one another. For this reason, the control devices 1A, 1B, 1C, 1D, 1E, 1F, 1G, and 1H are equipped with a timer function.

図3に示す生産ライン10において、制御装置1A~1Hのうち少なくとも1つが実施の形態に係る制御装置である。以後、実施の形態に係る制御装置として、制御装置1Aを説明する。なお、制御装置1A~1Hのすべてが本実施の形態に係る制御装置に該当してもよい。さらに、図3は、生産ライン10に含まれる制御装置の数を限定することを意図していない。 In the production line 10 shown in FIG. 3, at least one of the control devices 1A to 1H is a control device according to an embodiment. Hereinafter, control device 1A will be described as a control device according to an embodiment. Note that all of the control devices 1A to 1H may correspond to the control device according to this embodiment. Furthermore, FIG. 3 is not intended to limit the number of control devices included in the production line 10.

制御装置1Aは、制御対象であるフィールド機器5に対する制御処理を実行する。制御装置1Aは、その制御処理を実行するための機能が実装された複数の機能ユニットを備える。図1に示すように、制御装置1Aは、演算ユニット100A、機能ユニット201A,201B,201C,201DおよびI/Oユニット300Aを含む。フィールド機器5の種類は特に限定されず、たとえばサーボモータ等を含みうる。 The control device 1A executes control processing for the field device 5 to be controlled. The control device 1A has multiple functional units in which functions for executing the control processing are implemented. As shown in FIG. 1, the control device 1A includes an arithmetic unit 100A, functional units 201A, 201B, 201C, 201D, and an I/O unit 300A. The type of the field device 5 is not particularly limited, and may include, for example, a servo motor.

機能ユニット201A,201B,201C,201Dの各々が実装する機能は、特に限定されるものではない。たとえば、機能ユニット201A,201B,201C,201Dは、通信ユニットを含むことができる。図1に示した例では、機能ユニット201Dは通信ユニットであり、ネットワークを介して通信装置4に接続される。 The functions implemented by each of the functional units 201A, 201B, 201C, and 201D are not particularly limited. For example, the functional units 201A, 201B, 201C, and 201D may include a communication unit. In the example shown in FIG. 1, the functional unit 201D is a communication unit and is connected to the communication device 4 via a network.

AC-DC電源400Aは、交流電圧を直流電圧に変換して、その直流電圧を、制御装置1Aに電源電圧として供給する。制御装置1Aの電源電圧は、たとえばDC24Vである。 The AC-DC power supply 400A converts AC voltage into DC voltage and supplies the DC voltage to the control device 1A as the power supply voltage. The power supply voltage of the control device 1A is, for example, DC 24V.

制御装置1Bは、演算ユニット100B、機能ユニット202AおよびI/Oユニット300Bを含む。機能ユニット202Aは、たとえば通信ユニットであり、ネットワークを介して通信装置4に接続される。制御装置1Aと同様に、AC-DC電源400Bは、電源電圧(たとえばDC24V)を制御装置1Bの各機能ユニットに供給する。 The control device 1B includes an arithmetic unit 100B, a functional unit 202A, and an I/O unit 300B. The functional unit 202A is, for example, a communication unit, and is connected to the communication device 4 via a network. As with the control device 1A, the AC-DC power supply 400B supplies a power supply voltage (for example, DC 24V) to each functional unit of the control device 1B.

サポート装置8は、制御装置1A~1Hが対象を制御するために必要な準備を支援する装置である。具体的には、サポート装置8は、制御装置1A~1Hの各々で実行されるタスクに関する設定環境、制御装置1A~1Hにおけるタスクの実行状況のモニタ画面などを提供する。 The support device 8 is a device that assists the control devices 1A to 1H in making the necessary preparations to control the target. Specifically, the support device 8 provides a setting environment for the tasks executed by each of the control devices 1A to 1H, a monitor screen showing the execution status of the tasks in the control devices 1A to 1H, etc.

(B-2.演算ユニットのハードウェア構成)
図4は、本実施の形態に係る制御装置1Aを構成する演算ユニット100Aのハードウェア構成の一例を示す模式図である。図4を参照して、演算ユニット100Aは、プロセッサ101と、チップセット102と、メインメモリ104と、不揮発性メモリ106と、システムタイマ108と、PLCシステムバスコントローラ120と、フィールドネットワークコントローラ140と、USBコネクタ110とを含む。チップセット102と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
(B-2. Hardware configuration of the arithmetic unit)
Fig. 4 is a schematic diagram showing an example of a hardware configuration of a computing unit 100A constituting the control device 1A according to the present embodiment. Referring to Fig. 4, the computing unit 100A includes a processor 101, a chipset 102, a main memory 104, a non-volatile memory 106, a system timer 108, a PLC system bus controller 120, a field network controller 140, and a USB connector 110. The chipset 102 and other components are respectively coupled to each other via various buses.

プロセッサ101およびチップセット102は、典型的には、汎用的なコンピュータアーキテクチャに準じて構成される。すなわち、プロセッサ101は、チップセット102から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット102は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ101に必要な命令コードを生成する。さらに、チップセット102は、プロセッサ101での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。 The processor 101 and chipset 102 are typically configured according to a general-purpose computer architecture. That is, the processor 101 interprets and executes instruction codes sequentially supplied from the chipset 102 in accordance with an internal clock. The chipset 102 exchanges internal data with various components connected thereto, and generates instruction codes required by the processor 101. Furthermore, the chipset 102 has a function of caching data obtained as a result of the execution of arithmetic processing by the processor 101.

図4には、説明の便宜上、1つのプロセッサ101が描かれているが、複数のプロセッサ101を配置してもよいし、1つのプロセッサ101に複数のコアが実装されていてもよい。プロセッサ101の性能および構成は、要求されるコンピューティング資源に応じて決定されてもよい。 For ease of explanation, FIG. 4 illustrates one processor 101, but multiple processors 101 may be arranged, and multiple cores may be implemented in one processor 101. The performance and configuration of the processor 101 may be determined according to the computing resources required.

演算ユニット100Aは、記憶手段として、メインメモリ104および不揮発性メモリ106を有する。メインメモリ104は、揮発性の記憶領域(RAM)であり、演算ユニット100Aへの電源投入後にプロセッサ101で実行されるべき各種プログラムを保持する。また、メインメモリ104は、プロセッサ101による各種プログラムの実行時の作業用メモリとしても使用される。このようなメインメモリ104としては、DRAM(Dynamic Random Access Memory)またはSRAM(Static Random Access Memory)といったデバイスが用いられる。 The arithmetic unit 100A has a main memory 104 and a non-volatile memory 106 as storage means. The main memory 104 is a volatile storage area (RAM) and holds various programs to be executed by the processor 101 after the arithmetic unit 100A is powered on. The main memory 104 is also used as a working memory when the processor 101 executes various programs. Devices such as DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory) are used as this main memory 104.

不揮発性メモリ106は、リアルタイムOS(Operating System)、制御装置1Aのシステムプログラム、ユーザプログラム、システム設定パラメータといったデータを不揮発的に保持する。これらのプログラムやデータは、必要に応じて、プロセッサ101がアクセスできるようにメインメモリ104にコピーされる。このような不揮発性メモリ106としては、フラッシュメモリのような半導体メモリを用いることができる。あるいは、不揮発性メモリ106として、ハードディスクドライブのような磁気記録媒体などを用いてもよい。 The non-volatile memory 106 holds data such as a real-time OS (Operating System), the system program of the control device 1A, user programs, and system setting parameters in a non-volatile manner. These programs and data are copied to the main memory 104 as necessary so that the processor 101 can access them. Such non-volatile memory 106 may be a semiconductor memory such as a flash memory. Alternatively, a magnetic recording medium such as a hard disk drive may be used as the non-volatile memory 106.

システムタイマ108は、割り込み信号を発生させてプロセッサ101に提供する。典型的には、ハードウェアの仕様によって、複数の異なる周期でそれぞれ割り込み信号を発生するように構成されるが、OS(Operating System)やBIOS(Basic Input Output System)などによって、任意の周期で割り込み信号を発生するように設定することもできる。システムタイマ108が発生する割り込み信号を利用して、制御周期毎の制御動作が実現される。 The system timer 108 generates an interrupt signal and provides it to the processor 101. Typically, the system timer 108 is configured to generate interrupt signals at multiple different cycles depending on the hardware specifications, but it can also be set to generate interrupt signals at any cycle using the OS (Operating System) or BIOS (Basic Input Output System). The interrupt signals generated by the system timer 108 are used to realize control operations for each control cycle.

演算ユニット100Aは、通信回路として、PLCシステムバスコントローラ120およびフィールドネットワークコントローラ140を有する。これらの通信回路は、任意の指令値といった出力データを送信するとともに、任意のセンサから得られた検出値といった入力データを受信する。 The computing unit 100A has a PLC system bus controller 120 and a field network controller 140 as communication circuits. These communication circuits transmit output data such as any command value, and receive input data such as detection values obtained from any sensor.

PLCシステムバスコントローラ120は、PLCシステムバス(図示せず)を介したデータの遣り取りを制御する。より具体的には、PLCシステムバスコントローラ120は、DMA(Dynamic Memory Access)制御回路122と、PLCシステムバス制御回路124と、バッファメモリ126とを含む。PLCシステムバスコントローラ120は、PLCシステムバスコネクタ130を介してPLCシステムバスと内部的に接続される。 The PLC system bus controller 120 controls data exchange via a PLC system bus (not shown). More specifically, the PLC system bus controller 120 includes a DMA (Dynamic Memory Access) control circuit 122, a PLC system bus control circuit 124, and a buffer memory 126. The PLC system bus controller 120 is internally connected to the PLC system bus via a PLC system bus connector 130.

バッファメモリ126は、PLCシステムバスを介して他のユニットへ出力されるデータ(出力データ)用の送信バッファ、および、PLCシステムバスを介して他のユニットから入力されるデータ(入力データ)用の受信バッファとして機能する。DMA制御回路122は、メインメモリ104からバッファメモリ126への出力データの転送、および、バッファメモリ126からメインメモリ104への入力データの転送を行う。PLCシステムバス制御回路124は、PLCシステムバスに接続される他のユニットとの間で、バッファメモリ126の出力データを送信する処理および入力データを受信してバッファメモリ126に格納する処理を行う。 The buffer memory 126 functions as a transmission buffer for data (output data) output to other units via the PLC system bus, and as a reception buffer for data (input data) input from other units via the PLC system bus. The DMA control circuit 122 transfers output data from the main memory 104 to the buffer memory 126, and transfers input data from the buffer memory 126 to the main memory 104. The PLC system bus control circuit 124 performs the process of transmitting output data from the buffer memory 126 to other units connected to the PLC system bus, and the process of receiving input data and storing it in the buffer memory 126.

フィールドネットワークコントローラ140は、フィールドネットワーク(図示せず)を介したデータの遣り取りを制御する。すなわち、フィールドネットワークコントローラ140は、用いられるフィールドネットワークの規格に従い、出力データの送信および入力データの受信を制御する。より具体的には、フィールドネットワークコントローラ140は、DMA制御回路142と、フィールドネットワーク制御回路144と、バッファメモリ146とを含む。 The field network controller 140 controls the exchange of data via a field network (not shown). That is, the field network controller 140 controls the transmission of output data and the reception of input data in accordance with the standard of the field network used. More specifically, the field network controller 140 includes a DMA control circuit 142, a field network control circuit 144, and a buffer memory 146.

バッファメモリ146は、フィールドネットワークを介して他の装置などへ出力されるデータ(出力データ)用の送信バッファ、および、フィールドネットワークを介して他の装置などから入力されるデータ(入力データ)用の受信バッファとして機能する。DMA制御回路142は、メインメモリ104からバッファメモリ146への出力データの転送、および、バッファメモリ146からメインメモリ104への入力データの転送を行う。フィールドネットワーク制御回路144は、フィールドネットワークに接続される他の装置との間で、バッファメモリ146の出力データを送信する処理および入力データを受信してバッファメモリ146に格納する処理を行う。 The buffer memory 146 functions as a transmission buffer for data (output data) output to other devices via the field network, and as a reception buffer for data (input data) input from other devices via the field network. The DMA control circuit 142 transfers output data from the main memory 104 to the buffer memory 146, and transfers input data from the buffer memory 146 to the main memory 104. The field network control circuit 144 transmits output data from the buffer memory 146 to other devices connected to the field network, and receives input data and stores it in the buffer memory 146.

USBコネクタ110は、外部の装置と演算ユニット100Aとを接続するためのインターフェイスである。たとえば演算ユニット100Aは、USBコネクタ110およびUSBケーブルを介してサポート装置8に接続される。演算ユニット100Aのプロセッサ101で実行可能なプログラムなどは、サポート装置8から転送され、USBコネクタ110を介して制御装置1Aに取込まれる。 The USB connector 110 is an interface for connecting an external device to the computing unit 100A. For example, the computing unit 100A is connected to the support device 8 via the USB connector 110 and a USB cable. Programs executable by the processor 101 of the computing unit 100A are transferred from the support device 8 and imported into the control device 1A via the USB connector 110.

温度センサ161は、演算ユニット100Aの内部の温度を検出して、温度値を出力する。温度値は、チップセット102を介してプロセッサ101へと送られる。 The temperature sensor 161 detects the internal temperature of the computing unit 100A and outputs a temperature value. The temperature value is sent to the processor 101 via the chipset 102.

(B-3.サポート装置のハードウェア構成)
本実施の形態に係るサポート装置8は、一例として、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)がプログラムを実行することによって実現される。
(B-3. Hardware configuration of the support device)
The support device 8 according to the present embodiment is realized, for example, by hardware (for example, a general-purpose personal computer) that complies with a general-purpose architecture executing a program.

図5は、本実施の形態に係るシステムを構成するサポート装置8のハードウェア構成例を示すブロック図である。図5を参照して、サポート装置8は、CPUまたはMPUなどのプロセッサ802と、光学ドライブ804と、主記憶装置806と、二次記憶装置808と、USBコントローラ812と、入力部816と、表示部818とを含む。これらのコンポーネントはバス820を介して接続される。 Fig. 5 is a block diagram showing an example of the hardware configuration of the support device 8 constituting the system according to this embodiment. Referring to Fig. 5, the support device 8 includes a processor 802 such as a CPU or MPU, an optical drive 804, a main memory device 806, a secondary memory device 808, a USB controller 812, an input unit 816, and a display unit 818. These components are connected via a bus 820.

プロセッサ802は、二次記憶装置808に格納された各種プログラムを読み出して、主記憶装置806に展開して実行することで、後述するような各種処理を実現する。プロセッサ802は、ユーザ入力に従って制御装置1Aの動作条件を設定する設定部に相当する。 The processor 802 reads out various programs stored in the secondary storage device 808, deploys them in the main storage device 806, and executes them to realize various processes as described below. The processor 802 corresponds to a setting unit that sets the operating conditions of the control device 1A according to user input.

二次記憶装置808は、例えば、HDDあるいはSSDなどによって構成される。二次記憶装置808には、典型的には、ユーザプログラムの作成、タスクに関する設定などを行うツールである開発プログラム822が格納される。二次記憶装置808には、OSおよび他の必要なプログラムが格納されてもよい。 The secondary storage device 808 is configured, for example, by a HDD or SSD. The secondary storage device 808 typically stores a development program 822, which is a tool for creating user programs and configuring tasks. The secondary storage device 808 may also store an OS and other necessary programs.

サポート装置8は、光学ドライブ804を有することができる。光学ドライブ804は、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体805(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムを読み出す。記録媒体805から読み出されたプログラムは、二次記憶装置808などにインストールされてもよい。 The support device 8 may have an optical drive 804. The optical drive 804 reads a computer-readable program stored in a recording medium 805 (e.g., an optical recording medium such as a DVD (Digital Versatile Disc)) that non-transiently stores the program. The program read from the recording medium 805 may be installed in a secondary storage device 808 or the like.

サポート装置8で実行される各種プログラムは、ネットワーク上のサーバ装置などからダウンロードされてサポート装置8にインストールされてもよい。またサポート装置8が提供する機能は、OSが提供するモジュールの一部を利用する形で実現されてもよい。 The various programs executed by the support device 8 may be downloaded from a server device on the network and installed on the support device 8. In addition, the functions provided by the support device 8 may be realized by using some of the modules provided by the OS.

USBコントローラ812は、USB接続を介して制御装置1Aとの間のデータの遣り取りを制御する。本実施の形態では、USBコントローラ812は、制御装置1Aの動作条件を制御装置1Aに転送するための転送部を実現する。 The USB controller 812 controls data exchange with the control device 1A via the USB connection. In this embodiment, the USB controller 812 realizes a transfer unit for transferring the operating conditions of the control device 1A to the control device 1A.

入力部816は、キーボードおよびマウスなどで構成され、ユーザ操作、ユーザ入力などを受付ける。本実施の形態では、入力部816は、制御装置1Aの動作モードに関するユーザ入力を受け付けるように構成される。 The input unit 816 is configured with a keyboard, mouse, etc., and accepts user operations, user inputs, etc. In this embodiment, the input unit 816 is configured to accept user inputs related to the operation mode of the control device 1A.

表示部818は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ802からの処理結果などを出力する。 The display unit 818 is composed of a display, various indicators, a printer, etc., and outputs processing results from the processor 802.

図5には、プロセッサ802がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。 Figure 5 shows an example of a configuration in which the necessary functions are provided by the processor 802 executing a program, but some or all of these provided functions may be implemented using dedicated hardware circuits (e.g., ASICs or FPGAs, etc.).

(B-4.演算ユニットのソフトウェア構成)
図6は、本実施の形態に係る制御装置1Aを構成する演算ユニット100Aのソフトウェア構成の一例を示す模式図である。図6には、本実施の形態に係る各種機能を提供するためのソフトウェア群の一例を示す。これらのソフトウェア群に含まれる命令コードは、適切なタイミングで読み出され、演算ユニット100Aのプロセッサ101によって実行される。
(B-4. Software configuration of the arithmetic unit)
Fig. 6 is a schematic diagram showing an example of the software configuration of the arithmetic unit 100A constituting the control device 1A according to the present embodiment. Fig. 6 shows an example of a software group for providing various functions according to the present embodiment. Instruction codes included in this software group are read at appropriate timing and executed by the processor 101 of the arithmetic unit 100A.

図6を参照して、演算ユニット100Aで実行されるソフトウェアは、リアルタイムOS200と、システムプログラム210と、ユーザプログラム234とを含む。 Referring to FIG. 6, the software executed by the computing unit 100A includes a real-time OS 200, a system program 210, and a user program 234.

リアルタイムOS200は、演算ユニット100Aのコンピュータアーキテクチャに応じて設計されており、プロセッサ101がシステムプログラム210およびユーザプログラム234を実行するための基本的な実行環境を提供する。このリアルタイムOSは、典型的には、制御装置のメーカあるいは専門のソフトウェア会社などによって提供される。 The real-time OS 200 is designed according to the computer architecture of the computing unit 100A, and provides a basic execution environment for the processor 101 to execute the system program 210 and the user program 234. This real-time OS is typically provided by the manufacturer of the control device or a specialized software company.

システムプログラム210は、制御装置1Aとしての機能を提供するためのソフトウェア群である。具体的には、システムプログラム210は、スケジューラプログラム212と、IO処理プログラム214(入力処理プログラム216および出力処理プログラム218を含む)と、シーケンス命令実行部232と、システムサービスプログラム220とを含む。 The system programs 210 are a group of software for providing the functions of the control device 1A. Specifically, the system programs 210 include a scheduler program 212, an IO processing program 214 (including an input processing program 216 and an output processing program 218), a sequence command execution unit 232, and a system service program 220.

ユーザプログラム234は、ユーザにおける制御目的に応じて作成される。すなわち、制御装置1Aを用いて制御する制御対象に応じて、任意に作成されるプログラムである。ユーザプログラム234は、例えばサポート装置8において生成される。ユーザプログラム234は、サポート装置8から演算ユニット100Aへ転送されて、不揮発性メモリ106などに格納される。 The user program 234 is created according to the control objectives of the user. In other words, it is a program that is created arbitrarily according to the control target to be controlled using the control device 1A. The user program 234 is generated, for example, in the support device 8. The user program 234 is transferred from the support device 8 to the arithmetic unit 100A and stored in the non-volatile memory 106 or the like.

ユーザプログラム234は、シーケンス命令およびモーション命令などの命令コードからなるIEC(International Electrotechnical Commission:国際電気標準会議)プログラム236と、サーボモータなどの駆動装置を制御する制御アプリケーションの手順を表現するアプリケーションプログラム238とを含む。 The user program 234 includes an IEC (International Electrotechnical Commission) program 236 consisting of instruction codes such as sequence instructions and motion instructions, and an application program 238 that expresses the procedures of a control application that controls a drive device such as a servo motor.

IECプログラム236は、IECによって規定された国際規格IEC61131-3に従って記述された1または複数の命令からなるプログラムを包含する。 The IEC program 236 includes a program consisting of one or more instructions written in accordance with the international standard IEC 61131-3 defined by the IEC.

アプリケーションプログラム238は、目標軌跡を定義する1または複数のコマンドを含む。アプリケーションプログラム238は、ロボット言語やG言語などのインタプリタ型の言語で書かれたプログラムであってもよい。 The application program 238 includes one or more commands that define a target trajectory. The application program 238 may be a program written in an interpreted language such as a robotic language or a G language.

シーケンス命令実行部232は、IECプログラム236を実行して指令値を出力する。シーケンス命令実行部232は、IECプログラム236に含まれるシーケンス命令を解釈し、指定されたシーケンス演算(論理演算)を実行する。さらに、シーケンス命令実行部232は、IECプログラム236に含まれるモーション命令に従って指令値を算出する。モーション命令は、1つのコマンドによって複数の制御周期に亘って指令値の算出を定義しており、シーケンス命令実行部232は、このようなモーション命令を解釈して、モーション指令値を制御周期毎に更新する。 The sequence command execution unit 232 executes the IEC program 236 to output a command value. The sequence command execution unit 232 interprets the sequence command included in the IEC program 236 and executes a specified sequence operation (logical operation). Furthermore, the sequence command execution unit 232 calculates a command value according to a motion command included in the IEC program 236. A motion command defines the calculation of a command value over multiple control cycles by a single command, and the sequence command execution unit 232 interprets such a motion command and updates the motion command value for each control cycle.

システムサービスプログラム220は、図6に個別に示したプログラム以外の、制御装置1Aの各種機能を実現するためのプログラム群をまとめて示すものである。システムサービスプログラム220は、例えば、外部装置との間でファイルやデータを送受信する処理を実現するプログラム(すなわち、通信処理に係るプログラム)、異常監視処理および各種解析処理などを実現するプログラムなどであってもよい。 The system service program 220 is a group of programs for implementing various functions of the control device 1A other than the programs shown individually in FIG. 6. The system service program 220 may be, for example, a program that implements the process of sending and receiving files and data with an external device (i.e., a program related to communication processing), a program that implements abnormality monitoring processing and various analysis processing, etc.

本実施の形態に係る演算ユニット100Aにおいては、システムサービスプログラム220に含まれるプログラムは、少なくとも2つに優先度が区別されている。一例として、システムサービスプログラム220は、高優先タスク20に設定される高優先度サービスプログラム222と、低優先タスクに設定される低優先度サービスプログラム226とを含む。高優先度サービスプログラム222は、低優先度サービスプログラム226に比較して、実行に関する優先度が高く設定されている。 In the computing unit 100A according to this embodiment, the programs included in the system service program 220 are differentiated into at least two priority levels. As an example, the system service program 220 includes a high priority service program 222 that is set as the high priority task 20, and a low priority service program 226 that is set as the low priority task. The high priority service program 222 is set to have a higher priority for execution than the low priority service program 226.

高優先度サービスプログラム222は、アプリケーションプログラム実行部(図示せず)を含む。アプリケーションプログラム実行部は、例えば、アプリケーションプログラム238をインタプリタ方式で実行して、制御対象(たとえばサーボモータ)に対する指令値を出力する。 The high priority service program 222 includes an application program execution unit (not shown). The application program execution unit, for example, executes the application program 238 in an interpretive manner and outputs a command value for a control target (e.g., a servo motor).

スケジューラプログラム212は、タスク毎に設置された優先度に応じて、各タスクに設定されるプログラムをプロセッサ101に実行させる。すなわち、スケジューラプログラム212は、IO処理プログラム214、およびシステムサービスプログラム220等について、各実行周期での処理開始および処理中断後の処理再開を制御する。 The scheduler program 212 causes the processor 101 to execute the programs set for each task according to the priority set for each task. In other words, the scheduler program 212 controls the start of processing in each execution cycle and the resumption of processing after processing is interrupted for the IO processing program 214, the system service program 220, etc.

具体的には、スケジューラプログラム212は、制御機能2120と、監視機能2122とを含む。制御機能2120は、各処理に対してコンピューティング資源を割当てるための制御を司る。監視機能2122は、システムサービスプログラム220に含まれる各プログラムの実行状況を監視する。監視機能2122は、システムサービスプログラム220に含まれる高優先度サービスプログラム222の通知機能プログラムによる通知などに基づいて、各サービスの実行状況を把握する。 Specifically, the scheduler program 212 includes a control function 2120 and a monitoring function 2122. The control function 2120 is responsible for control for allocating computing resources to each process. The monitoring function 2122 monitors the execution status of each program included in the system service program 220. The monitoring function 2122 grasps the execution status of each service based on notifications by the notification function program of the high priority service program 222 included in the system service program 220, etc.

IO処理プログラム214は、演算ユニット100Aにおいて利用可能なデータ(入力データおよび出力データ)を更新する処理を司る。IO処理プログラム214の入力処理プログラム216は、PLCシステムバスコントローラ120および/またはフィールドネットワークコントローラ140によって受信された入力データを、演算ユニット100Aのプロセッサ101が使用するのに適した形式に再配置する。 The IO processing program 214 is responsible for updating the data (input data and output data) available in the computing unit 100A. The input processing program 216 of the IO processing program 214 rearranges the input data received by the PLC system bus controller 120 and/or the field network controller 140 into a format suitable for use by the processor 101 of the computing unit 100A.

出力処理プログラム218は、ユーザプログラム234の実行によって生成された出力データを、PLCシステムバスコントローラ120および/またはフィールドネットワークコントローラ140へ転送するのに適した形式に再配置する。PLCシステムバスコントローラ120またはフィールドネットワークコントローラ140が、プロセッサ101からの、送信を実行するための指令を必要とする場合は、出力処理プログラム218がそのような指令を発行する。 The output processing program 218 rearranges the output data generated by the execution of the user program 234 into a format suitable for transfer to the PLC system bus controller 120 and/or the field network controller 140. If the PLC system bus controller 120 or the field network controller 140 requires a command from the processor 101 to perform a transmission, the output processing program 218 issues such a command.

なお、プロセッサ101が図6に示されるプログラムを実行することで後述するような機能および処理を実現する実装形態に代えて、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などのハードワイヤードな回路を用いて実装してもよい。 In addition, instead of an implementation in which the processor 101 executes the program shown in FIG. 6 to realize the functions and processing described below, some or all of the functions and processing may be implemented using hardwired circuits such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array).

図7は、サポート装置8の表示部818によって提供される、動作モードの設定のための画面の一例を示す図である。図7に示す設定画面の例では、デフォルト(Default)モードと、拡張(Extended)モードとが画面に表示される。 Figure 7 is a diagram showing an example of a screen for setting the operation mode provided by the display unit 818 of the support device 8. In the example of the setting screen shown in Figure 7, a default mode and an extended mode are displayed on the screen.

デフォルトモードとは、動作周囲温度(Operating Ambient Temperature)が標準温度(この例では55℃)である場合の制御装置1Aの動作モードである。拡張モードとは、動作周囲温度が、デフォルトモードでの動作周囲温度よりも高い温度(たとえば60℃)での制御装置1Aの動作モードである。 The default mode is the operating mode of the control device 1A when the operating ambient temperature is the standard temperature (55°C in this example). The extended mode is the operating mode of the control device 1A when the operating ambient temperature is a temperature (e.g. 60°C) higher than the operating ambient temperature in the default mode.

ユーザがサポート装置の入力部816を操作することによって、画面内に矢印の形状で表現されたカーソルが上下に移動するとともに、その矢印が指す動作モードの表示が反転される。ユーザが決定のための操作を入力部816に対して行うことによって、入力部816は、ユーザによる動作モードの入力を受け付ける。
<C.制御装置の動作モードの設定>
(C-1.ツールによる設定)
第1の実施の形態では、サポート装置8が制御周期内の空き時間を設定する。
When the user operates the input unit 816 of the support device, a cursor represented in the shape of an arrow on the screen moves up and down, and the display of the operation mode pointed to by the arrow is highlighted. When the user operates the input unit 816 to confirm the selection, the input unit 816 accepts the input of the operation mode by the user.
C. Setting the Operation Mode of the Control Device
(C-1. Setting by tool)
In the first embodiment, the support device 8 sets the free time within the control period.

図8は、第1の実施の形態に係る制御装置の動作モード設定処理の概略を示したフローチャートである。サポート装置8がプログラムを実行することによって、図8に示した処理が実行される。図8を参照して、設定処理は、まず、サポート装置8において実行されるモード設定処理(ステップS11)を含む。具体的には、ユーザがサポート装置8の設定画面(図7を参照)を操作することによって、動作モードが決定される。入力部816は、ユーザによる動作モードの入力を受け付ける。 Figure 8 is a flow chart showing an overview of the operation mode setting process of the control device according to the first embodiment. The process shown in Figure 8 is executed by the support device 8 executing a program. Referring to Figure 8, the setting process first includes a mode setting process (step S11) executed in the support device 8. Specifically, the operation mode is determined by the user operating the setting screen (see Figure 7) of the support device 8. The input unit 816 accepts the input of the operation mode by the user.

ステップS12において、サポート装置8のプロセッサ802は、入力部816によって受け付けられた動作モードが、デフォルトモードまたは拡張モードのいずれであるかを判定する。デフォルトモードの場合、ステップS13において、デフォルトモードでの制御処理のための設定が実行される。一方、拡張モードの場合、ステップS14において拡張モードでの制御処理のための設定が実行される。 In step S12, the processor 802 of the support device 8 determines whether the operation mode accepted by the input unit 816 is the default mode or the extended mode. If it is the default mode, then in step S13, settings for control processing in the default mode are executed. On the other hand, if it is the extended mode, then settings for control processing in the extended mode are executed in step S14.

デフォルトモードおよび拡張モードの設定処理(ステップS13,S14)において、ユーザは、サポート装置8によって提供されるユーザインターフェイスを用いて、制御周期の長さ、および、高優先タスクの割り当て、低優先タスクの割当て等を設定する。デフォルトモードと拡張モードとでは、制御周期内のタスクの割当てが相違する。 In the process of setting the default mode and the extended mode (steps S13 and S14), the user sets the length of the control period, the allocation of high priority tasks, the allocation of low priority tasks, and the like, using a user interface provided by the support device 8. The allocation of tasks within the control period differs between the default mode and the extended mode.

図9は、デフォルトモードと拡張モードにおける、制御周期内の時間の割当ての優先度を説明した図である。デフォルトモードでは、高優先タスク(優先度:高)が制御周期内に優先的に割り当てられ、制御周期内の残りの時間に、低優先タスク(優先度:中~低)が割り当てられる。一方、拡張モードでは、プロセッサの空き時間が制御周期内に最優先で割り当てられる。次に、高優先タスク(優先度:高)の処理時間が割り当てられる。制御周期内の残りの時間に低優先タスクを割り当て可能である場合には、低優先タスクが割り当てられる。 Figure 9 is a diagram explaining the priority of time allocation within a control period in default mode and extended mode. In default mode, high priority tasks (high priority) are preferentially allocated within a control period, and low priority tasks (medium to low priority) are allocated to the remaining time within the control period. On the other hand, in extended mode, free time of the processor is allocated with top priority within a control period. Next, processing time for high priority tasks (high priority) is allocated. If a low priority task can be allocated to the remaining time within the control period, the low priority task is assigned.

図8に戻り、デフォルトモードの設定の場合、ユーザは、高優先タスクの割り当て、低優先タスクの割当ておよび、制御周期の長さを設定する。このとき、サポート装置8のプロセッサ802は、制御周期内にプロセッサ空き時間を確保しない。さらにプロセッサ802は、複数のタスクが優先度の高い順に制御周期内で実行されるように、複数のタスクが割り当てられることを可能にする。したがって、デフォルトモードでは、基本的に、制御周期内にプロセッサ空き時間が発生しない。あるいは、デフォルトモードにおいてプロセッサ空き時間が発生したとしても、空き時間は極めて短い。 Returning to FIG. 8, when the default mode is set, the user sets the allocation of high priority tasks, the allocation of low priority tasks, and the length of the control period. At this time, the processor 802 of the support device 8 does not reserve processor free time within the control period. Furthermore, the processor 802 enables multiple tasks to be assigned so that the tasks are executed within the control period in descending order of priority. Therefore, in the default mode, basically, processor free time does not occur within the control period. Or, even if processor free time occurs in the default mode, the free time is extremely short.

一方、拡張モードの設定の場合、サポート装置8のプロセッサ802は、制御周期中の一定の割合(たとえば10%)をプロセッサ空き時間として確保する。その上で、プロセッサ802は、制御周期内の残りの時間(第1の残り時間)内に高優先タスクの割当てが行われるように、ユーザの設定を受け付ける。 On the other hand, when the extended mode is set, the processor 802 of the support device 8 reserves a certain percentage (e.g., 10%) of the control period as processor free time. Then, the processor 802 accepts the user's setting so that high priority tasks are assigned within the remaining time (first remaining time) in the control period.

なお、拡張モードの設定において、プロセッサ802は、高優先タスクの処理時間の最大の揺らぎを考慮して、処理(タスク)専有時間を計算する。すなわち、プロセッサ802は、高優先タスクの最大の処理時間を計算して、その計算結果を表示部818に表示する。ユーザは、この計算結果に基づいて、高優先タスクの割り当ておよび制御周期を決定する。制御周期に対するプロセッサ空き時間の割合は一定であるので、ユーザが設定した制御周期の長さに応じてプロセッサ空き時間が決定される。したがって、高優先タスクの実行時間が長くなった場合であっても、制御周期内にプロセッサの空き時間を確保することができる。 When the extended mode is set, the processor 802 calculates the exclusive processing (task) time taking into account the maximum fluctuation in the processing time of the high priority task. That is, the processor 802 calculates the maximum processing time of the high priority task and displays the calculation result on the display unit 818. The user determines the allocation and control period of the high priority task based on this calculation result. Since the ratio of the processor free time to the control period is constant, the processor free time is determined according to the length of the control period set by the user. Therefore, even if the execution time of the high priority task becomes longer, the processor free time can be secured within the control period.

さらに、拡張モードの設定では、プロセッサ802は、制御周期から空き時間および高優先タスクの実行時間を除いた第2の残り時間内に、低優先タスクが割り当て可能かどうかを判断する。第2の残り時間内に、低優先タスクが割り当て可能である場合には、プロセッサ802は、その第2の残り時間内に低優先タスクの実行時間を割り当てる。一方、第2の残り時間内に、低優先タスクが割り当てできない場合には、プロセッサ802は、その第2の残り時間をプロセッサ空き時間に割り当てる。したがって、制御周期内に低優先タスクを割り当てできない場合には、プロセッサ空き時間が最初に確保された時間よりも長くなる。 Furthermore, in the extended mode setting, the processor 802 determines whether a low priority task can be assigned within a second remaining time, which is the control period minus the free time and the execution time of the high priority task. If a low priority task can be assigned within the second remaining time, the processor 802 assigns the execution time of the low priority task within the second remaining time. On the other hand, if a low priority task cannot be assigned within the second remaining time, the processor 802 assigns the second remaining time to the processor free time. Therefore, if a low priority task cannot be assigned within the control period, the processor free time becomes longer than the time initially secured.

ステップS13またはステップS14において、ユーザによる設定が終了すると、ステップS15において、プログラムおよび設定内容が、サポート装置8から制御装置1A(PLC)に転送される。拡張モードでは、デフォルトモードでサポート装置8から制御装置1A(PLC)に転送される内容に加えて、制御周期内にプロセッサ空き時間があることを示す情報、および、その空き時間の長さについての情報が制御装置1Aに送られる。 When the user finishes setting up in step S13 or step S14, the program and setting contents are transferred from the support device 8 to the control device 1A (PLC) in step S15. In the extended mode, in addition to the contents transferred from the support device 8 to the control device 1A (PLC) in the default mode, information indicating that there is processor free time within the control period and information about the length of that free time are sent to the control device 1A.

演算ユニット100Aが、拡張モードの設定に関する情報を受け取った場合、演算ユニット100Aは、その情報に含まれる空き時間の情報に基づいて、プロセッサ101への割り込み要求を設定する。これにより、演算ユニット100A内部の回路(たとえばシステムタイマ108)は、設定されたタイミングで割り込み信号を発生させ、その割り込み信号をプロセッサ101に提供する。以後の説明では、割り込み信号によってプロセッサ101に送られる割り込み要求を「IRQ(Interrupt ReQuest)」と称する。 When the arithmetic unit 100A receives information regarding the setting of the extended mode, the arithmetic unit 100A sets an interrupt request to the processor 101 based on the free time information contained in the information. This causes a circuit inside the arithmetic unit 100A (for example, the system timer 108) to generate an interrupt signal at the set timing and provide the interrupt signal to the processor 101. In the following explanation, the interrupt request sent to the processor 101 by the interrupt signal is referred to as an "IRQ (Interrupt ReQuest)."

図10は、制御装置1Aの演算ユニットがデフォルトモードにおいて実行するタスク処理の例を説明する図である。デフォルトモードでは、設定された制御周期ごとにIRQが発生する。演算ユニット100Aのプロセッサ101は、IRQに応じて処理を開始して高優先タスク20および低優先タスク30を実行する。デフォルトモードでは、制御周期の終わり直前までタスクが実行される。したがって、演算速度および制御性能が高められる。 Figure 10 is a diagram illustrating an example of task processing executed by the arithmetic unit of the control device 1A in default mode. In default mode, an IRQ occurs at each set control period. The processor 101 of the arithmetic unit 100A starts processing in response to the IRQ and executes the high priority task 20 and the low priority task 30. In default mode, tasks are executed until just before the end of the control period. Therefore, the calculation speed and control performance are improved.

図11は、制御装置1Aの演算ユニットが拡張モードにおいて実行するタスク処理の例を説明する図である。拡張モードでは、制御周期の開始時に加え、空き時間の開始時に、IRQが発生する。演算ユニット100Aのプロセッサ101は、制御周期内のIRQに応じて演算処理を停止する。プロセッサ101が演算を停止してから次の制御周期の開始までの時間が空き時間40に相当する。演算処理を停止した後、制御周期の開始時に次のIRQが発生する。プロセッサ101はIRQに応じて、次の制御周期での演算(高優先タスク20の実行)を開始する。 Figure 11 is a diagram illustrating an example of task processing executed by the arithmetic unit of the control device 1A in extended mode. In extended mode, an IRQ occurs at the start of a control cycle as well as at the start of free time. The processor 101 of the arithmetic unit 100A stops arithmetic processing in response to the IRQ within the control cycle. The time from when the processor 101 stops arithmetic processing to the start of the next control cycle corresponds to free time 40. After arithmetic processing is stopped, the next IRQ occurs at the start of the control cycle. In response to the IRQ, the processor 101 starts arithmetic processing in the next control cycle (execution of high priority task 20).

図12は、制御装置1Aの演算ユニットが拡張モードにおいて実行するタスク処理の別の例を説明する図である。図12に示すように、空き時間40の開始に加え、空き時間40の終了をIRQによってプロセッサ101に通知してもよい。これにより図12に示すように、空き時間40を制御周期内の任意の期間に配置させることができる。たとえば図12に示すように、空き時間40は、高優先タスク20と低優先タスク30との間(言い換える高優先タスク20の終了直後)に配置されてもよい。プロセッサ101が連続的に動作する時間を短くすることによって、制御周期を変えることなく、プロセッサ101の温度が大きく上昇することを抑えることができる。 Figure 12 is a diagram illustrating another example of task processing executed by the arithmetic unit of the control device 1A in the extended mode. As shown in Figure 12, in addition to the start of the free time 40, the end of the free time 40 may be notified to the processor 101 by IRQ. This allows the free time 40 to be placed at any time within the control period, as shown in Figure 12. For example, as shown in Figure 12, the free time 40 may be placed between the high priority task 20 and the low priority task 30 (in other words, immediately after the end of the high priority task 20). By shortening the time during which the processor 101 operates continuously, it is possible to prevent the temperature of the processor 101 from rising significantly without changing the control period.

図13は、制御装置1Aの演算ユニットが拡張モードにおいて実行するタスク処理のさらに別の例を説明する図である。図13に示すように、複数の空き時間40が制御周期内に配置されてもよい。各々の空き時間40の開始および終了がIRQによってプロセッサ101に通知される。この例によれば、高優先タスク20の終了直後にプロセッサ101の演算を停止させるだけでなく、低優先タスク30終了直後にもプロセッサ101の演算を停止させることができる。これによって、プロセッサ101が連続で稼働する時間を短くすることができるので、制御周期を変えることなく、プロセッサ101の温度が大きく上昇することを抑えることができる。 Figure 13 is a diagram illustrating yet another example of task processing executed by the arithmetic unit of the control device 1A in the extended mode. As shown in Figure 13, multiple free times 40 may be arranged within a control period. The start and end of each free time 40 is notified to the processor 101 by an IRQ. According to this example, not only can the calculation of the processor 101 be stopped immediately after the end of the high priority task 20, but also the calculation of the processor 101 can be stopped immediately after the end of the low priority task 30. This shortens the time that the processor 101 operates continuously, making it possible to prevent the temperature of the processor 101 from rising significantly without changing the control period.

なお、高優先タスクを複数のタスクに分割できる場合には、その分割されたタスクの終了ごとに空き時間を割り当てても良い。 If a high priority task can be divided into multiple tasks, free time can be allocated for each completed task.

(C-2.制御装置による設定)
第2の実施の形態では、拡張モードが設定された場合、制御装置1Aの演算ユニット100Aは、温度センサ161(図4を参照)の測定値に基づいて制御周期内の空き時間を決定する。
(C-2. Setting by control device)
In the second embodiment, when the extended mode is set, the arithmetic unit 100A of the control device 1A determines the free time within the control period based on the measurement value of the temperature sensor 161 (see FIG. 4).

図14は、第2の実施の形態に係る制御装置の動作モード設定処理の概略を示したフローチャートである。たとえばプロセッサ101が制御装置1Aのスケジューラプログラム212を実行することによって、図14に示した処理が実行される。まず、ステップS21において、演算ユニット100Aは、プログラムおよび設定内容の入力を受け付ける。ユーザは、サポート装置8を操作することにより、動作モードを決定するとともに、制御周期の長さ、高優先タスクの割り当て、低優先タスクの割当て等を設定する。サポート装置8から、プログラムおよび設定内容が制御装置1Aに転送される。設定内容は、動作モードに関する情報を含む。 Figure 14 is a flow chart showing an outline of the operation mode setting process of the control device according to the second embodiment. For example, the process shown in Figure 14 is executed by the processor 101 executing the scheduler program 212 of the control device 1A. First, in step S21, the arithmetic unit 100A accepts input of the program and the setting contents. By operating the support device 8, the user determines the operation mode and sets the length of the control period, the allocation of high priority tasks, the allocation of low priority tasks, etc. The program and the setting contents are transferred from the support device 8 to the control device 1A. The setting contents include information related to the operation mode.

ステップS22において、演算ユニット100Aのプロセッサ101は、サポート装置8から転送された情報に基づいて、ユーザにより設定された動作モードが、デフォルトモードまたは拡張モードのいずれであるかを判断する。デフォルトモードの場合、ステップS23において、プロセッサ101は、デフォルトモードでの制御処理のための設定を実行する。一方、拡張モードの場合、ステップS24において、プロセッサ101は、拡張モードでの制御処理のための設定を実行する。 In step S22, the processor 101 of the computing unit 100A determines whether the operation mode set by the user is the default mode or the extended mode, based on the information transferred from the support device 8. If the operation mode is the default mode, in step S23, the processor 101 executes settings for control processing in the default mode. On the other hand, if the operation mode is the extended mode, in step S24, the processor 101 executes settings for control processing in the extended mode.

デフォルトモードでの動作時に、プロセッサ101は、制御周期内にプロセッサ空き時間を確保しない。さらに複数のタスクが優先度の高い順に制御周期内で実行されるように、プロセッサ101は、制御周期内に複数のタスクを割り当てる。 When operating in the default mode, the processor 101 does not reserve processor free time within a control period. Furthermore, the processor 101 assigns multiple tasks within a control period so that multiple tasks are executed within the control period in descending order of priority.

拡張モードでの動作時に、プロセッサ101は、制御周期中の一定の割合(たとえば10%)をプロセッサ空き時間として確保する。その上で、プロセッサ101は、制御周期内の残りの時間(第1の残り時間)内に高優先タスクを割当てる。この場合において、プロセッサ101は、高優先タスクの処理時間の最大の揺らぎを考慮して高優先タスクを制御周期内に割り当てる。 When operating in extended mode, the processor 101 reserves a certain percentage (e.g., 10%) of the control period as processor free time. The processor 101 then allocates a high priority task to the remaining time (first remaining time) in the control period. In this case, the processor 101 allocates the high priority task to the control period taking into account the maximum fluctuation in the processing time of the high priority task.

さらに、プロセッサ101は、制御周期から空き時間および高優先タスクの実行時間を除いた第2の残り時間内に、低優先タスクが割り当て可能かどうかを判断する。第2の残り時間内に、低優先タスクが割り当て可能である場合には、プロセッサ101は、その第2の残り時間内に低優先タスクの実行時間を割り当てる。一方、第2の残り時間内に、低優先タスクが割り当てできない場合には、プロセッサ101は、その第2の残り時間をプロセッサ空き時間に割り当てる。 Furthermore, the processor 101 determines whether a low priority task can be assigned within a second remaining time, which is the control period minus the free time and the execution time of the high priority task. If a low priority task can be assigned within the second remaining time, the processor 101 assigns the execution time of the low priority task within the second remaining time. On the other hand, if a low priority task cannot be assigned within the second remaining time, the processor 101 assigns the second remaining time to the processor free time.

デフォルトモードにおいて実行するタスク処理、および拡張モードにおいて実行するタスク処理は、第1の実施の形態において説明された処理と基本的に同じであるので、詳細な説明は繰り返さない。第2の実施の形態では、拡張モードが選択された場合、制御周期に対するプロセッサ空き時間の割合が、温度センサ161によって測定された温度(すなわち制御装置1Aの動作周囲温度)に応じて変化する。この点において第2の実施の形態は第1の実施形態と相違する。 The task processing performed in the default mode and the task processing performed in the extended mode are basically the same as the processing described in the first embodiment, so detailed description will not be repeated. In the second embodiment, when the extended mode is selected, the ratio of the processor free time to the control period changes according to the temperature measured by the temperature sensor 161 (i.e., the operating ambient temperature of the control device 1A). In this respect, the second embodiment differs from the first embodiment.

図15は、制御装置1Aによるタスクの実行時におけるプロセッサ空き時間の制御に関する処理を説明するフローチャートである。ステップS31において、プロセッサ101は、温度センサ161から温度値(温度センサ値)を取得する。プロセッサ101は、所定の周期ごとに温度センサ161から測定値を取得して、その測定値の平均値を温度値として算出してもよい。 Figure 15 is a flowchart that explains the process related to the control of processor free time during execution of a task by the control device 1A. In step S31, the processor 101 acquires a temperature value (temperature sensor value) from the temperature sensor 161. The processor 101 may acquire measured values from the temperature sensor 161 at predetermined intervals and calculate the average of the measured values as the temperature value.

ステップS32において、プロセッサ101は、制御周期に対する空き時間の比率を求める。温度値から空き時間を求める方法は、特に限定されない。たとえばプロセッサ101は、制御周期に対する空き時間の比率を温度値から求めるための演算式を用いてもよい。 In step S32, the processor 101 calculates the ratio of the free time to the control period. There is no particular limitation on the method of calculating the free time from the temperature value. For example, the processor 101 may use an arithmetic formula for calculating the ratio of the free time to the control period from the temperature value.

プロセッサ101は、演算式および温度センサ161の検出値から、制御周期に対する空き時間の比率を求め、その比率と制御周期とに基づいて、空き時間を決定することができる。あるいは演算ユニット100Aの不揮発性メモリ106が、温度と、制御周期に対する空き時間の比率とを対応付けたテーブルを記憶してもよい。プロセッサ101は、そのテーブルと、温度センサ161の検出値から、制御周期に対する空き時間の比率を求め、その比率と制御周期とに基づいて、空き時間を決定することができる。演算式およびテーブルのいずれにおいても、制御周期に対する空き時間の比率は、温度が高いほど大きくなるように設定される。 The processor 101 can determine the ratio of free time to the control cycle from the arithmetic equation and the detection value of the temperature sensor 161, and determine the free time based on this ratio and the control cycle. Alternatively, the non-volatile memory 106 of the arithmetic unit 100A may store a table that associates temperatures with the ratio of free time to the control cycle. The processor 101 can determine the ratio of free time to the control cycle from the table and the detection value of the temperature sensor 161, and determine the free time based on this ratio and the control cycle. In both the arithmetic equation and the table, the ratio of free time to the control cycle is set to be larger as the temperature is higher.

ステップS33において、プロセッサ101は、制御周期内の空き時間を決定する。ステップS34において、プロセッサ101は、空き時間の情報をIRQに設定する。 In step S33, the processor 101 determines the free time within the control period. In step S34, the processor 101 sets the free time information in the IRQ.

上記の設定に従い、プロセッサ101は処理を実行する。拡張モードでは、IRQの発生によって、プロセッサ101は、演算を停止させる。さらに、IRQによって、次の制御周期の開始時がプロセッサ101に通知される。プロセッサ101はIRQに応じて、その制御周期での演算および処理を開始する。プロセッサ101が演算を停止する時間が空き時間である。 Processor 101 executes processing according to the above settings. In extended mode, the occurrence of an IRQ causes processor 101 to stop calculations. Furthermore, the IRQ notifies processor 101 of the start time of the next control cycle. In response to the IRQ, processor 101 starts calculations and processing for that control cycle. The time during which processor 101 stops calculations is free time.

図16は、第2の実施の形態に係る制御装置1Aの演算ユニットが拡張モードにおいて実行するタスク処理の例を説明する図である。図16に示すように、拡張モードにおいて、プロセッサ101は、温度センサ161の測定値が高いほど制御周期内の空き時間40を長くする。温度センサ161の測定値は、制御装置1Aの動作周囲温度を表わす。一方、制御装置1Aの動作周囲温度が低下した場合、制御装置1Aは、空き時間40を短くする。この場合、たとえば制御周期に対する空き時間の割合が、サポート装置8で設定された割合よりも大きく保たれる。 Figure 16 is a diagram illustrating an example of task processing executed in extended mode by the arithmetic unit of the control device 1A according to the second embodiment. As shown in Figure 16, in extended mode, the processor 101 lengthens the free time 40 within the control period as the measurement value of the temperature sensor 161 increases. The measurement value of the temperature sensor 161 represents the operating ambient temperature of the control device 1A. On the other hand, if the operating ambient temperature of the control device 1A decreases, the control device 1A shortens the free time 40. In this case, for example, the ratio of free time to the control period is maintained greater than the ratio set in the support device 8.

第2の実施の形態では、制御周期の長さは、空き時間の長さが温度に応じて変化するものの制御周期の長さは変化しない。システムの稼働中に制御周期の長さが変わると、高優先タスクの処理性能が変化する(高くなる、あるいは低くなる)可能性がある。高優先タスクの処理性能が変化すると、制御対象(たとえば製造装置)の動作に影響が生じる可能性がある。制御周期の長さを変えないことによって高優先タスクの処理性能が変化することを防ぐことができる。 In the second embodiment, the length of the control period does not change, although the length of the free time changes depending on the temperature. If the length of the control period changes while the system is running, the processing performance of the high priority task may change (become higher or lower). If the processing performance of the high priority task changes, it may affect the operation of the controlled object (e.g., manufacturing equipment). By not changing the length of the control period, it is possible to prevent changes in the processing performance of the high priority task.

図16では、1つの制御周期内に高優先タスクと低優先タスクとが実行される例が示されている。しかし、温度が高くなった場合に1つの制御周期内に高優先タスクのみが実行され、制御周期内の残りの時間が空き時間であってもよい。第1の実施の形態と同様に、第2の実施の形態でも、制御周期内へ空き時間の割当てが最も優先され、次に、高優先タスクの割り当てが優先される。したがって、制御周期内にプロセッサの空き時間を確保することができる。これにより、プロセッサの発熱量が増加することを抑えることができるので、プロセッサの温度が大きく上昇することを抑えることができる。 Figure 16 shows an example in which a high priority task and a low priority task are executed within one control period. However, if the temperature becomes high, only the high priority task may be executed within one control period, and the remaining time within the control period may be free time. As in the first embodiment, in the second embodiment, the allocation of free time within a control period is given the highest priority, followed by the allocation of high priority tasks. Therefore, free time for the processor can be secured within the control period. This makes it possible to prevent an increase in the amount of heat generated by the processor, and therefore a large increase in the processor temperature.

また、第2の実施の形態においても、IRQによって、図12、図13に示した空き時間の配置と同じ配置を採用することができる。制御周期内の空き時間40の配置は特に限定されない。 In the second embodiment, the same arrangement of free time as that shown in Figures 12 and 13 can be adopted by IRQ. The arrangement of free time 40 within the control period is not particularly limited.

<D.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
<D. Notes>
The present embodiment as described above includes the following technical idea.

[構成1]
プロセッサ(101)を有し、かつ制御対象を制御する制御装置(1A)によって実行されるタスクに関する設定を行うための情報処理装置(8)であって、
前記制御装置(1A)の動作モードに関するユーザ入力を受け付ける入力部(816)と、
前記ユーザ入力に従って前記制御装置(1A)の動作条件を設定する設定部(802)と、
前記設定部(802)により設定された前記制御装置(1A)の前記動作条件を前記制御装置(1A)に転送する転送部(812)とを備え、
前記動作モードは、第1のモードと、前記第1のモードでの動作温度よりも高温で前記制御装置(1A)を動作させるための第2のモードとを含み、
前記ユーザ入力によって前記第2のモードが選択された場合、前記設定部(802)は、前記タスクの制御周期内に、前記プロセッサ(101)の空き時間(40)を割り当てる、情報処理装置(8)。
[Configuration 1]
An information processing device (8) having a processor (101) and for making settings related to a task executed by a control device (1A) that controls a control target,
An input unit (816) that accepts user input regarding an operation mode of the control device (1A);
A setting unit (802) that sets operating conditions of the control device (1A) in accordance with the user input;
a transfer unit (812) that transfers the operating conditions of the control device (1A) set by the setting unit (802) to the control device (1A),
The operation modes include a first mode and a second mode for operating the control device (1A) at a temperature higher than an operating temperature in the first mode,
When the second mode is selected by the user input, the setting unit (802) allocates free time (40) of the processor (101) within a control period of the task.

[構成2]
前記ユーザ入力によって前記第2のモードが選択された場合、前記設定部(802)は、前記制御周期から前記空き時間(40)を除いた第1の残り時間内に、複数のタスクのうち、前記プロセッサ(101)による実行の優先度の高い高優先タスク(20)の実行時間を割り当てる、構成1に記載の情報処理装置(8)。
[Configuration 2]
When the second mode is selected by the user input, the setting unit (802) allocates execution time of a high-priority task (20) having a high priority for execution by the processor (101) among a plurality of tasks, within a first remaining time obtained by subtracting the free time (40) from the control period.

[構成3]
前記ユーザ入力によって前記第2のモードが選択された場合に、前記設定部(802)は、前記制御周期から前記空き時間(40)および前記高優先タスク(20)の実行時間を除いた第2の残り時間内に、前記複数のタスクのうち、実行の優先度の低い低優先タスク(30)が割り当て可能かどうかを判断して、
前記第2の残り時間内に、前記低優先タスク(30)が割り当て可能である場合には、前記設定部(802)は、前記第2の残り時間内に前記低優先タスク(30)の実行時間を割り当て、
前記第2の残り時間内に、前記低優先タスク(30)が割り当てできない場合には、前記設定部(802)は、前記第2の残り時間を前記空き時間(40)に割り当てる、構成2に記載の情報処理装置(8)。
[Configuration 3]
When the second mode is selected by the user input, the setting unit (802) determines whether or not a low-priority task (30) having a low execution priority among the plurality of tasks can be assigned within a second remaining time obtained by subtracting the free time (40) and the execution time of the high-priority task (20) from the control period,
When the low priority task (30) can be allocated within the second remaining time, the setting unit (802) allocates the execution time of the low priority task (30) within the second remaining time,
3. The information processing device (8) according to configuration 2, wherein, when the low priority task (30) cannot be allocated within the second remaining time, the setting unit (802) allocates the second remaining time to the free time (40).

[構成4]
前記ユーザ入力によって前記第2のモードが選択された場合に、前記設定部(802)は、前記高優先タスク(20)の実行時間の揺らぎに基づく前記高優先タスク(20)の最大の実行時間を、前記第1の残り時間内に割り当てる、構成2に記載の情報処理装置(8)。
[Configuration 4]
When the second mode is selected by the user input, the setting unit (802) allocates a maximum execution time of the high priority task (20) based on a fluctuation in the execution time of the high priority task (20) within the first remaining time.

[構成5]
前記設定部(802)は、前記空き時間(40)の少なくとも一部を、前記高優先タスク(20)の終了直後に割り当てる、構成2から構成4のいずれかに記載の情報処理装置(8)。
[Configuration 5]
The information processing device (8) according to any one of configurations 2 to 4, wherein the setting unit (802) allocates at least a part of the free time (40) immediately after the high priority task (20) is finished.

[構成6]
前記ユーザ入力によって前記第1のモードが選択された場合に、前記設定部(802)は、前記制御周期内に前記空き時間(40)を確保せず、かつ、複数のタスクが優先度の高い順に前記制御周期内で実行されるように、前記複数のタスクを割り当てる、構成1から構成5のいずれか1項に記載の情報処理装置(8)。
[Configuration 6]
The information processing device (8) according to any one of configurations 1 to 5, wherein, when the first mode is selected by the user input, the setting unit (802) allocates the plurality of tasks such that the free time (40) is not reserved within the control period and the plurality of tasks are executed within the control period in descending order of priority.

[構成7]
プロセッサ(101)を有し、かつ制御対象を制御する制御装置(1A)によって実行されるタスクに関する設定を、コンピュータ(8)に実行させるためのプログラムであって、
前記コンピュータ(8)に、
前記制御装置(1A)の動作モードに関するユーザ入力を受け付けるステップ(S11)と、
前記ユーザ入力に従って前記制御装置(1A)の動作条件を設定するステップ(S13,S14)と、
前記制御装置(1A)の前記動作条件を前記制御装置(1A)に転送するステップ(S15)とを実行させ、
前記動作モードは、第1のモードと、前記第1のモードでの動作温度よりも高温で前記制御装置(1A)を動作させるための第2のモードとを含み、
前記設定するステップ(S13,S14)は、
前記ユーザ入力によって前記第2のモードが選択された場合に、前記タスクの制御周期内に、前記プロセッサ(101)の空き時間(40)を割り当てるステップ(S14)を含む、プログラム。
[Configuration 7]
A program for causing a computer (8) to execute settings related to a task executed by a control device (1A) that has a processor (101) and controls a control target,
The computer (8),
A step (S11) of accepting a user input regarding an operation mode of the control device (1A);
Setting operating conditions of the control device (1A) according to the user input (S13, S14);
and a step (S15) of transferring the operating conditions of the control device (1A) to the control device (1A);
The operation modes include a first mode and a second mode for operating the control device (1A) at a temperature higher than an operating temperature in the first mode,
The setting steps (S13, S14) are
the step (S14) of allocating free time (40) of the processor (101) within a control period of the task when the second mode is selected by the user input.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present invention is indicated by the claims, not by the description of the embodiments above, and is intended to include all modifications within the meaning and scope of the claims.

1A~1H 制御装置、4 通信装置、5 フィールド機器、8 サポート装置、10 生産ライン、20 高優先タスク、30 低優先タスク、40 空き時間、100A,100B 演算ユニット、101,802 プロセッサ、102 チップセット、104 メインメモリ、106 不揮発性メモリ、108 システムタイマ、110 USBコネクタ、120 システムバスコントローラ、122,142 DMA制御回路、124 システムバス制御回路、126,146 バッファメモリ、130 システムバスコネクタ、140 フィールドネットワークコントローラ、144 フィールドネットワーク制御回路、161 温度センサ、200 リアルタイムOS、201A~201D,202A 機能ユニット、210 システムプログラム、212 スケジューラプログラム、214 IO処理プログラム、216 入力処理プログラム、218 出力処理プログラム、220 システムサービスプログラム、222 高優先度サービスプログラム、226 低優先度サービスプログラム、232 シーケンス命令実行部、234 ユーザプログラム、236 IECプログラム、238 アプリケーションプログラム、300A,300B I/Oユニット、400A,400B AC-DC電源、804 光学ドライブ、805 記録媒体、806 主記憶装置、808 二次記憶装置、812 USBコントローラ、816 入力部、818 表示部、820 バス、822 開発プログラム、2120 制御機能、2122 監視機能、S11~S34 ステップ。 1A to 1H Control device, 4 Communication device, 5 Field device, 8 Support device, 10 Production line, 20 High priority task, 30 Low priority task, 40 Free time, 100A, 100B Arithmetic unit, 101, 802 Processor, 102 Chip set, 104 Main memory, 106 Non-volatile memory, 108 System timer, 110 USB connector, 120 System bus controller, 122, 142 DMA control circuit, 124 System bus control circuit, 126, 146 Buffer memory, 130 System bus connector, 140 Field network controller, 144 Field network control circuit, 161 Temperature sensor, 200 Real-time OS, 201A to 201D, 202A Functional unit, 210 System program, 212 Scheduler program, 214 IO processing program, 216 Input processing program, 218 Output processing program, 220 System service program, 222 high priority service program, 226 low priority service program, 232 sequence command execution unit, 234 user program, 236 IEC program, 238 application program, 300A, 300B I/O unit, 400A, 400B AC-DC power supply, 804 optical drive, 805 recording medium, 806 main memory device, 808 secondary memory device, 812 USB controller, 816 input unit, 818 display unit, 820 bus, 822 development program, 2120 control function, 2122 monitoring function, S11 to S34 steps.

Claims (7)

プロセッサを有し、かつ制御対象を制御する制御装置によって実行されるタスクに関する設定を行うための情報処理装置であって、
前記制御装置の動作モードに関するユーザ入力を受け付ける入力部と、
前記ユーザ入力に従って前記制御装置の動作条件を設定する設定部と、
前記設定部により設定された前記制御装置の前記動作条件を前記制御装置に転送する転送部とを備え、
前記動作モードは、第1のモードと、前記第1のモードでの動作温度よりも高温で前記制御装置を動作させるための第2のモードとを含み、
前記ユーザ入力によって前記第2のモードが選択された場合、前記設定部は、前記タスクの制御周期内に、前記プロセッサの空き時間を割り当てる、情報処理装置。
An information processing device having a processor and configured to perform settings related to a task executed by a control device that controls a control target,
an input unit that accepts user input regarding an operation mode of the control device;
A setting unit that sets operating conditions of the control device in accordance with the user input;
a transfer unit that transfers the operating conditions of the control device set by the setting unit to the control device,
the operating modes include a first mode and a second mode for operating the controller at a temperature higher than an operating temperature in the first mode;
When the second mode is selected by the user input, the setting unit allocates free time of the processor within a control period of the task.
前記ユーザ入力によって前記第2のモードが選択された場合、前記設定部は、前記制御周期から前記空き時間を除いた第1の残り時間内に、複数のタスクのうち、前記プロセッサによる実行の優先度の高い高優先タスクの実行時間を割り当てる、請求項1に記載の情報処理装置。 The information processing device according to claim 1, wherein when the second mode is selected by the user input, the setting unit allocates execution time of a high-priority task having a high priority for execution by the processor among the multiple tasks within a first remaining time obtained by subtracting the free time from the control period. 前記ユーザ入力によって前記第2のモードが選択された場合に、前記設定部は、前記制御周期から前記空き時間および前記高優先タスクの実行時間を除いた第2の残り時間内に、前記複数のタスクのうち、実行の優先度の低い低優先タスクが割り当て可能かどうかを判断して、
前記第2の残り時間内に、前記低優先タスクが割り当て可能である場合には、前記設定部は、前記第2の残り時間内に前記低優先タスクの実行時間を割り当て、
前記第2の残り時間内に、前記低優先タスクが割り当てできない場合には、前記設定部は、前記第2の残り時間を前記空き時間に割り当てる、請求項2に記載の情報処理装置。
When the second mode is selected by the user input, the setting unit determines whether or not a low-priority task having a low execution priority among the plurality of tasks can be assigned within a second remaining time obtained by subtracting the free time and the execution time of the high-priority task from the control period,
When the low priority task can be allocated within the second remaining time, the setting unit allocates an execution time of the low priority task within the second remaining time;
The information processing apparatus according to claim 2 , wherein, when the low priority task cannot be assigned within the second remaining time, the setting unit assigns the second remaining time to the free time.
前記ユーザ入力によって前記第2のモードが選択された場合に、前記設定部は、前記高優先タスクの実行時間の揺らぎに基づく前記高優先タスクの最大の実行時間を、前記第1の残り時間内に割り当てる、請求項2に記載の情報処理装置。 The information processing device according to claim 2, wherein when the second mode is selected by the user input, the setting unit allocates a maximum execution time of the high priority task based on a fluctuation in the execution time of the high priority task within the first remaining time. 前記設定部は、前記空き時間の少なくとも一部を、前記高優先タスクの終了直後に割り当てる、請求項2から請求項4のいずれか1項に記載の情報処理装置。 The information processing device according to any one of claims 2 to 4, wherein the setting unit allocates at least a portion of the free time immediately after the high priority task ends. 前記ユーザ入力によって前記第1のモードが選択された場合に、前記設定部は、前記制御周期内に前記空き時間を確保せず、かつ、複数のタスクが優先度の高い順に前記制御周期内で実行されるように、前記複数のタスクを割り当てる、請求項1から請求項5のいずれか1項に記載の情報処理装置。 The information processing device according to any one of claims 1 to 5, wherein when the first mode is selected by the user input, the setting unit allocates the multiple tasks so that the free time is not reserved within the control period and the multiple tasks are executed within the control period in descending order of priority. プロセッサを有し、かつ制御対象を制御する制御装置によって実行されるタスクに関する設定を、コンピュータに実行させるためのプログラムであって、
前記コンピュータに、
前記制御装置の動作モードに関するユーザ入力を受け付けるステップと、
前記ユーザ入力に従って前記制御装置の動作条件を設定するステップと、
前記制御装置の前記動作条件を前記制御装置に転送するステップとを実行させ、
前記動作モードは、第1のモードと、前記第1のモードでの動作温度よりも高温で前記制御装置を動作させるための第2のモードとを含み、
前記設定するステップは、
前記ユーザ入力によって前記第2のモードが選択された場合に、前記タスクの制御周期内に、前記プロセッサの空き時間を割り当てるステップを含む、プログラム。
A program for causing a computer to execute settings related to a task executed by a control device that has a processor and controls a control target,
The computer includes:
accepting user input regarding an operational mode of the controller;
setting operating conditions of the controller in accordance with the user input;
and transferring the operating conditions of the control device to the control device;
the operating modes include a first mode and a second mode for operating the controller at a temperature higher than an operating temperature in the first mode;
The setting step includes:
a step of allocating free time of the processor within a control period of the task when the second mode is selected by the user input.
JP2021036616A 2021-03-08 2021-03-08 Information processing device and program Active JP7567566B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021036616A JP7567566B2 (en) 2021-03-08 2021-03-08 Information processing device and program
PCT/JP2021/034557 WO2022190424A1 (en) 2021-03-08 2021-09-21 Information processing device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021036616A JP7567566B2 (en) 2021-03-08 2021-03-08 Information processing device and program

Publications (2)

Publication Number Publication Date
JP2022136823A JP2022136823A (en) 2022-09-21
JP7567566B2 true JP7567566B2 (en) 2024-10-16

Family

ID=83227773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021036616A Active JP7567566B2 (en) 2021-03-08 2021-03-08 Information processing device and program

Country Status (2)

Country Link
JP (1) JP7567566B2 (en)
WO (1) WO2022190424A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002229663A (en) 2001-02-06 2002-08-16 Seiko Epson Corp Information processing device
JP2005165470A (en) 2003-11-28 2005-06-23 Toshiba Corp Electronic device and processor speed control method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7067406B2 (en) * 2018-10-12 2022-05-16 オムロン株式会社 Control system, control device and control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002229663A (en) 2001-02-06 2002-08-16 Seiko Epson Corp Information processing device
JP2005165470A (en) 2003-11-28 2005-06-23 Toshiba Corp Electronic device and processor speed control method

Also Published As

Publication number Publication date
WO2022190424A1 (en) 2022-09-15
JP2022136823A (en) 2022-09-21

Similar Documents

Publication Publication Date Title
JP6406466B1 (en) Control device, control method, and control program
US9618922B2 (en) CPU of PLC, system program for PLC, and recording medium storing system program for PLC
EP3076293A2 (en) Control apparatus
JP7000686B2 (en) Control device
JP7067406B2 (en) Control system, control device and control method
WO2018186358A1 (en) Control device, control method, and control program
US10877803B2 (en) Control apparatus, control method and non-transitory storage medium
JP6971016B2 (en) Controls, control methods and programs
JP2015176191A (en) controller
CN106020008A (en) control device
US11855907B2 (en) Robot control system and control method
JP7567566B2 (en) Information processing device and program
WO2020075351A1 (en) Control device
JP7455239B2 (en) Numerical control system, task assignment change device and numerical control method
JP4811260B2 (en) Programmable controller and its support device
WO2022190425A1 (en) Control device and control method
CN117742200A (en) Equipment motion control system, method and equipment
WO2022185581A1 (en) Control device and data transfer method
JP2016153986A (en) Computer resource use controller
JPWO2020079720A1 (en) Programmable logic controllers, external devices, methods, and programs
JP2017139876A (en) Control device
KR20160035446A (en) Control method of factory automation system, recording medium recording a program therefor and central processor of factory automation system
CN115956238A (en) controller
JP2020046954A (en) Control system, engineering tool, and controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240903

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240916

R150 Certificate of patent or registration of utility model

Ref document number: 7567566

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150