JP6460107B2 - Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program - Google Patents
Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program Download PDFInfo
- Publication number
- JP6460107B2 JP6460107B2 JP2016534037A JP2016534037A JP6460107B2 JP 6460107 B2 JP6460107 B2 JP 6460107B2 JP 2016534037 A JP2016534037 A JP 2016534037A JP 2016534037 A JP2016534037 A JP 2016534037A JP 6460107 B2 JP6460107 B2 JP 6460107B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- time
- chart
- time chart
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、機器制御システム、タイムチャート作成装置、機器制御装置、機器制御方法、タイムチャート作成方法及びコンピュータプログラムに関する。 The present invention relates to a device control system, a time chart creation device, a device control device, a device control method, a time chart creation method, and a computer program.
特許文献1には、タイムチャートからラダープログラムを自動作成する制御プログラム自動作成装置が記載されている。
また、特許文献2には、パソコンを用いて入力機器及び出力機器のタイムチャートを編集するとともに、タイムチャートデータを機械語にコンパイル処理し、コンパイル処理された機械語を処理装置にインターフェースにより伝送することが記載されている。 In
本発明の解決しようとする課題は、タイムチャートに基いて機器制御するにあたり、条件分岐等を含む高等な制御を可能とすることである。 The problem to be solved by the present invention is to enable high-level control including conditional branching and the like in device control based on a time chart.
本発明の一の側面に係る機器制御システムは、1又は2以上の機器の動作を時間軸に対して記述したタイムチャートを作成するタイムチャート作成装置と、前記タイムチャート作成装置が作成したタイムチャートに基づいて、前記1又は2以上の機器を制御する機器制御装置と、を備え、前記タイムチャート作成装置は、前記タイムチャートに、時間軸に対して制御命令を記述した制御チャートを作成する制御チャート作成部と、前記タイムチャートに、時間軸に対して機器の動作を記述した少なくとも1つの機器チャートを作成する機器チャート作成部と、を有する。 A device control system according to one aspect of the present invention is a time chart creation device that creates a time chart in which operations of one or more devices are described with respect to a time axis, and a time chart created by the time chart creation device And a device control device that controls the one or more devices based on the time chart, wherein the time chart creating device creates a control chart in which a control command is written in the time chart with respect to a time axis A chart creation unit; and a device chart creation unit that creates at least one device chart describing an operation of the device with respect to a time axis in the time chart.
また、本発明の一の側面に係る機器制御システムでは、前記機器制御装置は、前記制御チャートに基づいて、前記内部時刻を制御する制御命令実行部と、前記少なくとも1つの機器チャートと前記機器制御装置の内部時刻とに基づいて、機器を動作させる機器出力実行部と、を備えてよい。 Further, in the device control system according to one aspect of the present invention, the device control device includes a control command execution unit that controls the internal time based on the control chart, the at least one device chart, and the device control. A device output execution unit that operates the device based on the internal time of the device.
また、本発明の一の側面に係る機器制御システムでは、前記制御命令実行部は、前記制御チャートに応じて、前記内部時刻を書き換えてよい。 In the device control system according to one aspect of the present invention, the control command execution unit may rewrite the internal time according to the control chart.
また、本発明の一の側面に係る機器制御システムでは、前記制御命令は、少なくとも、条件分岐、条件付きループ、サブルーチンコールのいずれかを含んでよい。 In the device control system according to one aspect of the present invention, the control instruction may include at least one of a conditional branch, a conditional loop, and a subroutine call.
また、本発明の一の側面に係る機器制御システムでは、前記制御命令は、さらに、事象の発生に応じて前記内部時刻を書き換える、例外処理命令を含んでよい。 In the device control system according to one aspect of the present invention, the control command may further include an exception processing command that rewrites the internal time according to the occurrence of an event.
また、本発明の一の側面に係る機器制御システムでは、前記タイムチャート作成装置は、前記タイムチャートを、時刻に紐付けられた機器の動作を示す動作データと、時刻に紐付けられた制御命令を示す制御命令データと、を含む制御データに変換する変換部と、前記制御データを前記機器制御装置に送信する送信部と、を備え、前記機器制御装置は、前記制御データに基づいて前記1又は2以上の機器を制御してよい。 In the device control system according to one aspect of the present invention, the time chart creation device includes the time chart, operation data indicating the operation of the device associated with the time, and a control command associated with the time. A control unit that converts the control data into control data, and a transmission unit that transmits the control data to the device control device, the device control device based on the control data. Alternatively, two or more devices may be controlled.
また、本発明の一の側面に係る機器制御システムでは、前記タイムチャート作成部は、前記制御チャートを、前記機器チャートと共通の時間軸上に、前記機器チャートと区別し得る態様で表示し、前記制御命令は、前記制御チャート上の時刻を指定して記述されてよい。 Further, in the device control system according to one aspect of the present invention, the time chart creation unit displays the control chart on the common time axis with the device chart in a manner that can be distinguished from the device chart, The control command may be described by designating a time on the control chart.
また、本発明の一の側面に係る機器制御システムでは、前記機器制御装置は、前記機器の動作が機器への出力を意味するものである場合、前記内部時刻に応じて当該機器への出力を実行する機器出力実行部と、前記機器の動作が機器からの入力を意味するものである場合、当該機器からの入力がなされるまで前記内部時刻の進行を停止する内部時刻停止部と、を有してよい。 In the device control system according to one aspect of the present invention, when the operation of the device means output to the device, the device control apparatus outputs to the device according to the internal time. A device output execution unit to be executed; and an internal time stop unit that stops the progress of the internal time until an input from the device is made when the operation of the device means an input from the device. You can do it.
また、本発明の別の一の側面に係るタイムチャート作成装置は、上述の機器制御システムに使用されるものである。 Moreover, the time chart preparation apparatus which concerns on another one side surface of this invention is used for the above-mentioned apparatus control system.
また、本発明の一の側面に係るタイムチャート作成装置では、前記タイムチャートの動作をシミュレートするタイムチャートシミュレート部と、前記機器の動作をシミュレートする機器シミュレート部と、を有してよい。 The time chart creation device according to one aspect of the present invention includes a time chart simulation unit that simulates the operation of the time chart, and a device simulation unit that simulates the operation of the device. Good.
また、本発明の別の一の側面に係る機器制御装置は、上述の機器制御システムに使用されるものである。 Moreover, the apparatus control apparatus which concerns on another one side surface of this invention is used for the above-mentioned apparatus control system.
また、本発明の別の一の側面に係る機器制御方法は、タイムチャートに、時間軸に対して制御命令を記述した制御チャートを作成し、時間軸に対して機器の動作を記述した少なくとも1つの機器チャートを作成して、タイムチャートを作成し、前記タイムチャートに基いて1又は2以上の機器を制御する。 According to another aspect of the present invention, there is provided a device control method in which a control chart in which a control command is described with respect to a time axis is created on a time chart, and at least one device operation is described with respect to the time axis. One device chart is created, a time chart is created, and one or more devices are controlled based on the time chart.
また、本発明の別の一の側面に係るタイムチャート作成方法は、上述の機器制御方法に使用されるものである。 A time chart creation method according to another aspect of the present invention is used for the above-described device control method.
また、本発明の別の一の側面に係るコンピュータプログラムは、コンピュータを、上述のタイムチャート作成装置として機能させる。 A computer program according to another aspect of the present invention causes a computer to function as the above-described time chart creation device.
本発明の発明者の見地によれば、タイムチャートは、機器の動作を直感的に理解しやすい点で、従来機器制御に用いられているラダーチャートやC言語等を用いた制御プログラムに対しメリットが大きい。しかしながら、タイムチャートは規定の動作を時間軸に対し記述することはできても、条件分岐や繰り返しなど、一般に制御構造として知られる高度な制御を記述し実行する方法は知られておらず、タイムチャートを用いて機器を動作させる上での制限となっていた。 According to the viewpoint of the inventor of the present invention, the time chart is advantageous over a control program using a ladder chart or C language that has been used for conventional device control in that the operation of the device is intuitively easy to understand. Is big. However, even though the time chart can describe the specified operation with respect to the time axis, there is no known method for describing and executing advanced control generally known as control structures such as conditional branching and repetition. It was a limitation in operating the equipment using the chart.
そこで、本発明の発明者は、タイムチャートを用いた機器制御において条件分岐等を含む高度な制御を行うことについて鋭意研究開発を行った結果、新規かつ独創的な機器制御システム等を発明するに至った。以下、かかる機器制御システム等をその実施形態を通じ図面を参照しつつ詳述する。 Therefore, the inventor of the present invention has invented a new and original device control system and the like as a result of earnest research and development on performing advanced control including conditional branching in device control using a time chart. It came. The device control system and the like will be described in detail below with reference to the drawings through the embodiments.
図1は本発明の実施形態に係るタイムチャート作成装置2及び機器制御装置3を含む機器制御システム1の例を示す概略図である。同図には、機器制御システム1の一例として、タイムチャート作成装置2及び機器制御装置3に加え、機器制御装置3に接続されたサーボコントローラ4、スイッチ5及びランプ6と、さらにサーボコントローラ4に接続されたサーボモータ7が示されている。 FIG. 1 is a schematic diagram illustrating an example of a
機器制御装置3は、自身に接続された種々の機器の動作を1又は2以上のタイムチャートに基いて制御する装置である。ここでの機器制御装置3は、一般に産業用機器のコントローラとして知られる機器と同種の装置であり、シーケンサ、或いはPLC(Programmable Logic Controller)として知られる装置であってよい。なお、機器制御装置3は、各機器の制御をタイムチャートのみに基いて行うものでなくともよく、タイムチャートに加え、一般的なラダープログラムや他の言語による制御プログラムをも実行できるものであってよい。
The
また、タイムチャート作成装置2は、機器制御装置3において実行されるタイムチャートを作成し、機器制御装置3により解釈され実行できる形式の制御データに変換して機器制御装置3に転送する装置である。タイムチャート作成装置2は専用の装置であってもよいが、図示の通りの一般的なコンピュータを用い、タイムチャート作成装置2として機能させるコンピュータプログラムを実行することにより実現されている。かかるコンピュータプログラムは、各種の光ディスクや半導体メモリなどのコンピュータ可読情報記憶媒体に格納されてよく、該媒体からコンピュータにインストールされるようにすることが好ましい。或いは、インターネット等の各種の情報通信ネットワークからコンピュータにダウンロードされてもよく、さらには情報通信ネットワークを通じて遠隔地にあるサーバによりその機能が提供される、いわゆるクラウドコンピューティングにより実現されてもよい。 The time
ここで、タイムチャートとは、1又は2以上の機器の動作を共通の時間軸に対して図示した図を意味しており、制御データとは、かかるタイムチャートを機器制御装置3が認識できる形式の電子データとして変換したものを意味するものとする。タイムチャート及び制御データの具体的な構成については後ほど詳述する。 Here, the time chart means a diagram illustrating the operation of one or more devices with respect to a common time axis, and the control data is a format in which the
また、ここでいう機器は、機器制御装置3により機器制御システム1の一部として制御の対象とされる物品を指し、機器制御装置3と何らかの電気的な入力又は出力をするものである。機器制御装置3への入力を行うような機器としては、例えば例示したスイッチ5が、また機器制御装置3からの出力を受けるような機器としては、例えば例示したランプ6が、また機器制御装置3と入出力をする機器としては、例えば例示したサーボコントローラ4のようなモータコントローラがあり、サーボコントローラ4を介して間接的に機器制御装置3により制御されるサーボモータ7のようなアクチュエータも本明細書にいう機器に該当する。なお、図1に示したサーボコントローラ4、スイッチ5、ランプ6及びサーボモータ7は、本明細書にいう機器を例示するため示されたものであり、機器制御システム1に含まれる機器の種類や数は、機器制御システム1により実現しようとする制御の内容により異なる。 In addition, the equipment here refers to an article to be controlled by the
なお、以上の説明及び図1では、本実施形態の説明に不要な他の詳細な構成や配線、例えば、電源線や接地線の接続については説明及び図示を簡略化するため省略している。また、接続態様やコネクタの種類等についても特に限定されるものではない。さらに、機器制御装置3が動作するにあたっては、必ずしもタイムチャート作成装置2が接続されている必要はなく、機器制御装置3に制御データが転送されているならば、タイムチャート作成装置2がなくとも機器制御装置3は動作可能である。また、タイムチャート作成装置2もまた必ずしも機器制御装置3に接続されている必要はなく、タイムチャート及び制御データの作成はタイムチャート作成装置2単独で可能である。 In the above description and FIG. 1, other detailed configurations and wirings that are not necessary for the description of the present embodiment, such as connection of power supply lines and ground lines, are omitted for the sake of simplicity. Further, the connection mode, the type of connector, and the like are not particularly limited. Further, when the
図2は、タイムチャート作成装置2の物理的な構成を示すブロック図である。タイムチャート作成装置2はここでは一般的なコンピュータであり、CPU(Central Processing Unit)2a、RAM(Random Access Memory)2b、外部記憶装置2c、GC(Graphics Controller)2d、入力デバイス2e及びI/O(Input/Output)2fがデータバス2gにより相互に
電気信号のやり取りができるよう接続されている。ここで、外部記憶装置2cはHDD(Hard Disk Drive)やSSD(Solid State Drive)等の静的に情報を記録できる装置である。またGC2dからの信号はフラットパネルディスプレイ等の、使用者が視覚的に画像を認識するモニタ2hに出力され、画像として表示される。入力デバイス2eはキーボードやマウス、タッチパネル等の、ユーザが情報を入力するための機器であり、I/O2fはタイムチャート作成装置2が外部の機器、ここでは、機器制御装置3と情報をやり取りするためのインタフェースである。
FIG. 2 is a block diagram showing a physical configuration of the time
図3は、タイムチャート作成装置2により作成され、表示されたタイムチャート10の一例を示す図である。タイムチャート10は、横軸を時間軸とし、機器制御システムに含まれる機器の動作を記述した機器チャート11を、機器と同数含む。図3に示した例では、6つの機器が含まれるため、機器チャート11の数は6つであり、それぞれ枠で囲われて表示されている。 FIG. 3 is a diagram illustrating an example of the
例えば、「Xスイッチ」、「Yスイッチ」と名付けられた機器チャート11は、押しボタンスイッチに対応付けられた機器チャート11であり、破線で示された基準線13の位置がスイッチオフ、すなわち押しボタンが押されていない状態を、また波形が基準線13から立ちあがって示されている位置がスイッチオン、すなわち押しボタンが押されている状態を示している。また、機器チャート11の左端には、その機器の種類をわかりやすく示すアイコンと、機器チャート11に付けられた名前が表示されている。 For example, the
また、「X軸」、「Y軸」、「Z軸」と名付けられた機器チャート11は、モータに対応付けられた機器チャート11であり、基準線はモータの速度が0、すなわち停止している状態を示している。波形が基準線13の位置から上側に現れると、モータが正転していることを示し、その高さが回転速度を示す。また、波形が基準線13の位置から下側に現れると、モータが逆転していることを示し、同様にその高さが回転速度を示す。すなわち、「X軸」、「Y軸」、「Z軸」と名付けられた機器チャート11に示される波形は、モータの速度波形である。なお、速度波形に替えて、或いは加えて、モータの位置波形を示すようにしてもよい。 The
さらに、「ハンド」と名付けられた機器チャートは、指令により開閉するハンド(後述する)に対応付けられた機器チャート11であり、基準線13の位置がハンドを開状態とする指令を、波形が基準線13から立ち上がって示されている位置がハンドを閉状態とする指令を示している。 Furthermore, the device chart named “hand” is a
さらに、タイムチャート10は、制御チャート12を含む。制御チャート12は、先に説明した機器チャート11とは異なり、特定の機器に対応付けられない仮想的なチャートである。そして、制御チャート12には、タイムチャート10全体の高度な制御を行うための制御命令が記述される。 Further, the
機器チャート11及び制御チャート12は共通の時間軸に対し示されている。したがって、機器チャート11上に示された全ての動作及び、制御チャート12上に示された制御命令は、時間軸に対して記述されることになる。制御チャート12の上部には時間軸上の時刻を示す時間目盛14が表示されている。ここでは、時間目盛14の時間の単位は秒である。また、時間目盛14のさらに上部には、実行中のタイムチャート10の現在時刻を示すマーカ15が示されている。このマーカ15は、タイムチャート10に記述された動作を実行するとその動作に合わせて右方向に移動していき、現在の実行時点を示すためのものである。 The
図3に示したタイムチャート10は、図4に示すクレーンゲーム機20の動作を記述したものである。クレーンゲーム機20は、よく知られているように、押しボタンスイッチであるXスイッチ21を押している間、クレーン22が図中示したX方向に移動し、さらに押しボタンスイッチであるYスイッチ23を押している間、クレーン22が図中示したY方向に移動するというものである。その後の動作は自動的に行われ、クレーン22がZ方向に下がり、開状態であったハンド24が閉じる。さらにクレーン22がZ方向に上昇し、その後クレーン22は初期位置である景品獲得口26の直上に移動し、ハンド24が再び開状態となる。この一連の動作において、ハンド24により筺体内に配置された景品25を掴み上げることに成功していれば、景品25は景品獲得口26に落とされ、景品取出し口27から取り出すことができる。 The
改めて図3のタイムチャート10を参照しつつ、この動作を機器制御装置3がどのように実行するかを以下に説明する。 With reference to the
機器制御装置3は、タイムチャート10上の時刻を示す内部時刻を保持している。そして、タイムチャート10に記述された動作及び制御命令は、この内部時刻の進行に伴って、すなわち、内部時刻が各動作及び制御命令が記述された時刻に到来したときに実行される。このことは、マーカ15は、時間目盛14上での内部時刻の位置を示すものであることを示している。 The
まず、内部時刻の初期値として0秒の時点よりタイムチャート10の実行が開始される。内部時刻は実時間の進行に従って進行していく。そして、この例では、時刻0.5秒において、制御チャート12に「1」と記されたラベルが記述されている。このラベルは、一般的なコンピュータプログラム言語におけるラベルと同様の機能を有するものであり、タイムチャート10上の特定の位置を示すだけのものであって、その他の意義は有していない。本実施形態におけるラベルと一般的なコンピュータプログラム言語におけるラベルとを比較すると、前者はその位置としてタイムチャート10上の時刻を指し示すのに対して、後者はプログラムリスト又はプログラムカウンタ上の地点を指し示す点が異なる。 First, the execution of the
また、時刻0.5秒においては、「Xスイッチ」についての機器チャート11に信号がオンとなることを示す波形が記述されている。ここで、図4に示されるように、Xスイッチ21は押しボタンスイッチであり、遊技者が当該スイッチを押すことによりその信号が変化するものである。そのため、機器制御装置3は、Xスイッチ21の状態が機器チャート11に記述されたものと一致する、すなわち、Xスイッチが押下されるまで内部時刻の進行を停止し、0.5秒のまま保持する。この制御により、機器制御装置3は、Xスイッチ21が押下されるまで待機する動作をすることになる。 At time 0.5 seconds, a waveform indicating that the signal is turned on is described in the
Xスイッチ21が押下されると、内部時刻が再度進行を開始する。そして内部時刻が0.6秒に到達した時点で、「X軸」についての機器チャート11に動作「Feed」が記載されている。この動作「Feed」は、該当するモータを所定の速度で連続的に回転させることを意味している。したがって、この動作「Feed」が有効である間、機器制御装置3は、X軸モータを回転させ続ける。 When the
そして、内部時刻が1.0秒に到達すると、「Xスイッチ」についての機器チャート11に信号がオフとなることを示す波形が記述されている。この場合についても先ほどと同様に、機器制御装置3は、Xスイッチ21の状態が機器チャート11に記述されたものと一致する、すなわち、Xスイッチが解放されるまで内部時刻を停止、1.0秒のまま保持する。この制御により、機器制御装置3は、Xスイッチ21が解放されるまで待機する動作をすることになる。この間、X軸モータの動作「Feed」は有効であるから、X軸モータは回転し続けることになる。 When the internal time reaches 1.0 second, a waveform indicating that the signal is turned off is described in the
Xスイッチ21が解放されると、内部時刻が再度進行を開始する。そして内部時刻が1.1秒に到達した時点には「X軸」についての機器チャート11に動作「Hold」が記載されており、これは動作「Feed」を終えることを意味している。したがって、内部時刻が1.1秒の時点で機器制御装置3は、X軸モータを停止する。 When the
以上の動作により、Xスイッチ21を押下している間、クレーン22をX方向に移動させるという制御が実現されている。さらに、内部時刻が1.5秒から2.1秒の間に、「Yスイッチ」についての機器チャート11と「Y軸」についての機器チャート11の記述により、X軸の場合と全く同様に、Yスイッチ23を押下している間、クレーン22をY方向に移動させるという制御が実現されている。 With the above operation, the control of moving the
その後内部時刻は2.5秒の時点まで進行し、「Z軸」についての機器チャート11に示されたように、機器制御装置3は、Z軸モータを指定された速度波形で内部時刻が4.5秒の時点まで負方向に回転させる。これにより、クレーン22はZ方向に所定の距離だけ自動的に下降することになる。 Thereafter, the internal time advances to a time point of 2.5 seconds, and as shown in the
続けて、内部時刻が5.0秒に到達すると、「ハンド」についての機器チャート11に信号がオンとなることを示す波形が記述されている。ここで、図4のハンド24は機器制御装置3からの信号がオンである間は閉じ、当該信号がオフである間は開く、という動作をするものである(なお、ハンド24を開閉する動力源はどのような機構であってもよい。電磁ソレノイドや空圧アクチュエータ等適宜の機器を用いてよい)。したがって、この時点でハンド24は閉じ、閉状態となる。 Subsequently, when the internal time reaches 5.0 seconds, a waveform indicating that the signal is turned on is described in the
さらに内部時刻が6.0秒の時点で、「Z軸」についての機器チャート11に動作「Home」が記述されている。この動作「Home」は、該当するモータを所定の速度で原点位置に復帰させる動作を意味している。したがって、この動作「Home」により、Z軸はその原点位置に向かって正転し、クレーン22はZ方向に自動的に上昇することになる。そして、機器制御装置3は、この原点復帰動作が完了するまで、すなわち、Z軸モータから原点復帰信号が入力されるまで内部時刻の進行を停止し、6.0秒のまま保持する。これにより、機器制御装置3は、Z軸モータの原点復帰動作が完了するまで待機する動作をする。Z軸モータの原点復帰が完了すると、内部時刻は再度進行を開始する。 Furthermore, when the internal time is 6.0 seconds, the operation “Home” is described in the
その後内部時刻が6.5秒に到達すると、「X軸」についての機器チャート11及び「Y軸」についての機器チャート11の双方に動作「Home」が記述されている。これにより、先ほどのZ軸と同様に、機器制御装置3は、X軸とY軸の双方に対し原点復帰動作を指令し、その動作が完了するまで内部時刻の進行を停止し待機する。これにより、クレーン22はその初期位置、すなわち、景品獲得口26の直上の位置まで復帰することになる。 Thereafter, when the internal time reaches 6.5 seconds, the operation “Home” is described in both the
X軸とY軸双方の原点復帰動作が完了した後、内部時刻が7.0秒まで進行すると、「ハンド」についての機器チャート11に信号がオフとなることを示す波形が記述されている。したがって、この時点でハンド24が開く。ハンド24による景品25の把持に成功していれば、景品25は景品獲得口26内に落下することになる。 When the internal time advances to 7.0 seconds after completion of the origin return operation for both the X axis and the Y axis, a waveform indicating that the signal is turned off is described in the
以上でクレーンゲームの一連の動作は終了であるが、内部時刻はさらに7.5秒の時点まで進行する。この時点で制御チャート12に「Jump(1)」と記された制御命令が記述されている。この制御命令は、機器制御装置3によるタイムチャート10上の実行位置を指定したラベルの位置に移動させることを示すものであり、多くのコンピュータプログラム言語においてgoto文として知られている制御転送命令(いわゆるジャンプ命令)である。ここで示した制御命令は、内部時刻が7.5秒に到達した時点で、ラベル「1」に実行を移すことを指示するものであり、この例では、0.5秒の時点に実行が移る。機器制御装置3は、この制御転送を、内部時刻をラベル「1」が記述された時刻である0.5秒に書き換えることにより実行している。これにより、タイムチャート10上の実行時刻は0.5秒の時点に戻ることになり、以降上述した一連の動作を繰り返し実行することができる。 Although a series of operations of the crane game is completed as described above, the internal time further advances to a point of 7.5 seconds. At this time, a control command described as “Jump (1)” is described in the
ここで、本明細書で言う制御命令とは、一般的なコンピュータプログラム言語にいう制御命令あるいは制御構文と同等のものである。一般的なコンピュータプログラム言語にいう制御命令あるいは制御構文は、命令の実行順序を通常の逐次実行以外の順序に変化させる指令であるが、ここでいう制御命令は、機器の動作や制御命令の実行順序を記述された時間通り以外の順序に変化させるものということができる。また、本明細書で言う高度な制御とは、単なる逐次実行とは異なり、制御命令により、制御の実行順序を記述された以外の順序に変化させる制御を指す。すなわち、本実施形態では、タイムチャート10が時間軸に対して制御命令を記述した制御チャート12を含むことにより、タイムチャート10上で高度な制御を記述することができ、また、かかるタイムチャート10を変換して得られる制御データが、時刻に紐づけられた制御命令を示す制御命令データを含むことにより、タイムチャート10に基く高度な制御を実行することができるのである。 Here, the control instruction referred to in the present specification is equivalent to a control instruction or control syntax in a general computer program language. A control command or control syntax in a general computer program language is a command that changes the execution order of commands to a sequence other than normal sequential execution. It can be said that the order is changed to an order other than the described time. Further, advanced control as used in this specification refers to control in which the execution order of control is changed to an order other than that described by a control instruction, unlike simple sequential execution. That is, in the present embodiment, since the
そして、図3に示したように、制御命令は、機器チャート11とは別個に表示される制御チャート12上の時刻を指定して記述される。これにより、タイムチャート10に接した際に、その制御の実行順序に関係する部分、すなわち、高度な制御に関する部分である制御命令の記述を一瞥して把握できる。すなわち、制御チャート12が機器チャート11と区別し得る態様で表示されることにより、制御命令が機器の動作の記述中に埋没して認識が困難となる事態を防いでいるのである。結果、タイムチャート10の可読性が高まり、修正等の保守や再利用が容易になる等、タイムチャート10の生産性が高まる。 As shown in FIG. 3, the control command is described by designating a time on the
図5は、本実施形態に係る機器制御システム1の機能ブロック図である。なお、ここで示した機能ブロックは、機器制御システム1に含まれる機器、特にタイムチャート作成装置2と機器制御装置3が有する機能に着目して示したものであり、必ずしも各機能ブロックに1対1に対応する物理的構成が存在することを有しない。いくらかの機能ブロックはタイムチャート作成装置2のCPU2aや、機器制御装置3が有するプロセッサ等の汎用或いは専用の情報処理装置が特定のソフトウェアを実行することにより実現され、またいくらかの機能ブロックはタイムチャート作成装置2のRAM2bや、機器制御装置3が有するメモリ等の情報記憶装置に特定の記憶領域が割り当てられることにより実現されてよい。 FIG. 5 is a functional block diagram of the
タイムチャート作成装置2は、タイムチャート作成部2i、変換部2j及び送信部2kを有する。また、さらに好ましくはタイムチャートシミュレート部2m、機器シミュレート部2nをも備えたものとするとよい。 The time
タイムチャート作成部2iは、モニタ2hに例えば図3に示したような態様でタイムチャートを表示し、入力デバイス2eからの入力を受け付け、タイムチャートを作成する部分であり、制御チャートを作成する制御チャート作成部2o及び機器チャートを作成する機器チャート作成部2pを含む。タイムチャート作成部2iは、タイムチャートを作成するにあたり、ユーザからの入力指示が容易となるよう適宜のGUI(Graphical
User Interface)を備えていることが望ましい。そのようなGUIとしては、例えば、図3に即して説明するならば、制御チャート作成部2oでは、制御チャート12の基準線13上の特定の時刻を任意のポインティングデバイスでポイントすると、記述可能な制御命令の選択肢が表示され、あるいは必要な情報を入力させるためのダイアログを表示する等が挙げられる。機器チャート作成部2pでは、機器チャート11の基準線13上の特定の時刻を同様にポイントすると、記述可能な動作の選択肢が表示され、あるいはダイアログを表示する等である。The time
It is desirable to have a User Interface. Such a GUI can be described, for example, by referring to FIG. 3 when the control chart creation unit 2o points to a specific time on the
変換部2jは、タイムチャート作成部2iで作成されたタイムチャートを制御データに変換する部分である。ここで、図3に示したように、タイムチャート10には制御チャート12が含まれ、制御命令は制御チャート12上に記述されるようになっている。しかしながら、前述したように、制御チャート12は特定の機器に対応づけられるものではなく、高度な制御に関するタイムチャート10の可読性を向上するための仮想的なチャートである。そのため、機器制御装置3においてタイムチャートに基く制御を実行するにあたっては、必ずしも制御チャートが明示的に示されていることは必要ではない。すなわち、タイムチャートから変換された制御データが、制御命令であることを示すデータを含んでいれば、機器制御装置3自体は制御チャートそのものを認識することなくタイムチャートにしたがった制御を実行することが可能である。したがって、制御データは、タイムチャートに含まれる制御チャートに記述され、時刻に紐づけられた制御命令を示す制御命令データと、タイムチャートに含まれる機器チャートに記述され、時刻に紐づけられた機器の動作を示す動作データを含むものとなる。 The
変換部2jにより変換された制御データは、送信部2kにより機器制御装置3に送信され、後述する制御データ保持部3aに保持され、必要に応じて読みだされて実行されることになる。ここで、一般的に、タイムチャート作成装置2において作成されるタイムチャートそのものを示す情報のデータ量と、変換部2jにより変換された制御データのデータ量とを比較すると、制御データのデータ量の方が小さい。したがって、制御データをタイムチャート作成装置2側で作成し送信することにより、通信しなければならないデータ量及び、制御データ保持部3aで保持しなければならないデータ量は低減される。また、機器制御装置3側にタイムチャートを解読するためのエンジンを別途用意する必要がなく、容量の削減及び、高速な動作が可能である。さらに、タイムチャートの仕様変更などの際には、タイムチャート作成装置2側の変換部2jの仕様を変更すればよく、機器制御装置3側のファームウェア等の変更は通常必要ないため、柔軟な運用が可能である。 The control data converted by the
ところで、制御データの具体的な構成や形式は、先述したように、時刻に紐付けられた機器の動作を示す動作データと、時刻に紐付けられた制御命令を示す制御命令データと、を少なくとも含むものであれば特に限定はなくいかなるものであってもよい。すなわち、制御データのデータ形式がテキスト形式であってもバイナリ形式であってもよい。例えば、制御データを示す電子ファイルがテキスト形式のものである場合には、当該ファイルはいわゆるCSV形式等の配列形式やXML形式としてよい。 By the way, as described above, the specific configuration and format of the control data includes at least the operation data indicating the operation of the device linked to the time and the control command data indicating the control command linked to the time. Any material may be used as long as it is contained. That is, the data format of the control data may be a text format or a binary format. For example, when the electronic file indicating the control data is in a text format, the file may be in an array format such as a so-called CSV format or an XML format.
図6は、制御データの構成例を示す図である。一例として、制御データは、ファイル冒頭に項目として初期化データを有し、その後、必要な数だけ動作データ及び制御データが続く。ファイルの最後には、必要であれば、制御データの終了を示すeof(End Of File)が付加される。なお、ここでは制御データはCSV形式のデータであり、各項目はカンマで区切って示される。 FIG. 6 is a diagram illustrating a configuration example of control data. As an example, the control data has initialization data as an item at the beginning of the file, and then the necessary number of operation data and control data follow. At the end of the file, if necessary, eof (End Of File) indicating the end of the control data is added. Here, the control data is CSV format data, and each item is shown separated by a comma.
初期化データは、タイムチャート自身についての情報や、タイムチャートを実行するにあたり必要となる各種の情報、例えば機器制御装置3に接続される機器の情報を含むデータである。例えば、必要な情報は「ENTRY=”value”;・・・」といった形式で示される。具体的には、タイムチャートの名前が「クレーンゲーム」、製作者の名前が「yaskawa」、機器として図3に示したものを使用する場合、一例として、「CHARTNAME=”クレーンゲーム”;AUTHOR=”yaskawa”;M1=”SWITCH”;M2=”SERVO”;M3=”SWITCH”;M4=”SERVO”;M5=”SERVO”;M6=”CYLINDER”」等となる。ここで、ENTRYとして示された「CHARTNAME」はタイムチャートの名前を、「AUTHER」はその制作者を示し、「M1」〜「M6」は機器制御装置3に接続された機器の種別を示すものである。もちろん、必要に応じてこれ以上の情報を初期化データに含ませてよい。 The initialization data is data including information on the time chart itself and various information necessary for executing the time chart, for example, information on the equipment connected to the
また、動作データは、その動作データが対象とする機器と、その動作が記述された時刻と、その動作の内容を含むデータであり、例えば、「時刻;機器番号;動作」といった形式で示される。例えば、図3の「Xスイッチ」についての機器チャート11において、0.5秒の時点で示された動作であれば、「0.5;M1;ON」等となる。 In addition, the operation data is data including the target device of the operation data, the time at which the operation is described, and the content of the operation, and is represented in a format such as “time; device number; operation”, for example. . For example, in the
制御命令データについても同様であり、制御命令データである旨、その制御命令が記述された時刻及びその制御命令の内容を含むデータとなっている。例えば、図3に示したジャンプ命令であれば、「7.5;C;JUMP0.5」等となる。ここで、「C」は制御命令であることを示し、「JUMP0.5」は内部時刻が0.5秒の時点に制御を移すことを示す。 The same applies to the control command data. The data includes the time when the control command is described and the content of the control command, indicating that the control command data is included. For example, in the case of the jump instruction shown in FIG. 3, “7.5; C; JUMP 0.5” or the like is obtained. Here, “C” indicates a control command, and “JUMP 0.5” indicates that the control is transferred to the time when the internal time is 0.5 seconds.
図5に戻り、機器制御装置3は、制御データ保持部3aに転送された制御データを保持する。また、機器制御装置3は、内部時刻計時部3bを有しており、内部時刻を計時する。ここで、内部時刻計時部3bにより計時される内部時刻の進行速度は、通常は実時間の進行速度と一致するものとされるが、これを異なるものとしてもよい。すなわち、内部時刻の進行速度を、実時間に対しより早く、或いはより遅いものとしてもよい。この内部時刻の進行速度の実時間の進行速度に対する比はオーバーライド係数として知られており、必要に応じてこのオーバーライド係数を調整することにより、タイムチャートを実行する際の進行速度を早めたり、遅くしたりしてよい。 Returning to FIG. 5, the
そして、制御データ保持部3aに保持された制御データは、内部時刻計時部3bにより計時される内部時刻の進行に従って、制御データ読込部3cにより読み込まれる。制御データ読込部3cが有する機能は、内部時刻に該当する時刻を持つ動作データ及び制御命令データを読み込み、読み込んだデータが制御命令データであれば、かかるデータを制御命令実行部3dに、読み込んだデータが動作データであれば、当該動作データが機器への出力を意味するものである場合、機器出力実行部3eに、当該動作データが機器からの入力を意味するものである場合、内部時刻停止部3fにそれぞれ送るというものである。 The control data held in the control
制御命令実行部3dは、制御命令データを解釈し、実行する。制御命令は通常、その命令を実行するための条件と、その結果としてタイムチャート上での制御転送を示すので、制御命令実行部3dは、制御命令データの解釈の結果、必要に応じて内部時刻計時部3bに保持される内部時刻を書き換える。あるいは、さらに、制御命令実行部3dは、制御命令が、指定した時間の待機を示すもの等である場合などに、内部時刻計時部3bに保持される内部時刻の進行を停止させてもよい。 The control
機器出力実行部3eは、動作データを解釈し、機器にかかる動作を実現するために必要な信号を出力する。これにより、各機器はタイムチャートに記述された通りの動作を行うこととなる。 The device
内部時刻停止部3fは、動作データを解釈し、機器からの入力が、タイムチャートに記述されたデータと一致するまで、内部時刻計時部3bにおける内部時刻の進行を停止する部分である。これにより、機器制御装置3は、例えば特定のスイッチが押下されるまで待機する、といった動作を行う。 The internal time stop unit 3f is a part that interprets the operation data and stops the progress of the internal time in the internal time counting unit 3b until the input from the device matches the data described in the time chart. Thereby, the
ところで、本実施形態にかかる機器制御システム1において使用し得る制御命令は、先の例に示したジャンプ命令に限定されるものではなく、より高度な制御を実現するため、種々の命令を使用可能としてよい。 By the way, the control command that can be used in the
例えば、制御命令には条件分岐として知られる命令が含まれていてよい。 For example, the control instruction may include an instruction known as a conditional branch.
図7Aには、条件分岐命令として、いわゆるif文を記述した制御チャート12を示した。機器制御装置3は、内部時刻が1.0秒の時点で制御命令であるIf命令を解釈し、If命令に紐づけられた条件が満足されているか否かを判別する。なお、この条件は同図には示されていないが、タイムチャート作成装置2のタイムチャート作成部2iにより、If命令を制御チャート12に追加する際に表示されるダイアログ等によりあらかじめ入力される。この条件は例えば、スイッチやモータ等の特定の機器の状態に基くものであったり、或いは、機器制御装置3が内部に保持する変数の値に基くものであったりしてよい。この条件が満足されている場合には機器制御装置3は、If命令に続くタイムチャート、すなわち1.0秒〜3.0秒の部分を実行し、その後If節の終了を示すEndif命令が記述された5.0秒の時点に制御を移す。 FIG. 7A shows a
一方、If命令に紐づけられた条件が満足されていない場合には、機器制御装置3は、Else命令が記述された3.0秒の時点に制御を移し、それ以降の部分、すなわち、3.0秒〜5.0秒の部分を実行し、さらにその後、Endif命令が記述された5.0秒以降の部分を実行することになる。 On the other hand, if the condition associated with the If command is not satisfied, the
図7Bには、条件分岐命令として、いわゆるswitch文を記述した制御チャート12を示した。機器制御装置3は、内部時刻が1.0秒の時点で制御命令であるSwitch命令を解釈し、Switch命令に紐づけられた条件に応じて以降の制御を分岐する。 FIG. 7B shows a
すなわち、Switch命令に紐づけられた条件が、Case1命令やCase2命令に紐づけられたものと一致する場合には当該命令の時点に制御を移し、一致するものが無い場合にはSwitch命令に続く部分を実行する。いずれにしても、該当する範囲のタイムチャートが実行されると、Switch節の終了を示すSend命令が記述された7.0秒の時点に制御を移す。なお、この例ではいわゆるフォールスルーはなされないが、標準でフォールスルーをしたり、明示的にフォールスルーを指示するようにしてもよい。また、Switch命令に続く部分がいわゆるdefault節となっているが、default節を明示的に示すようにしてもよい。 That is, if the condition associated with the Switch instruction matches that associated with the
また、制御命令には、条件付きループとして知られる命令が含まれていてよい。 In addition, the control instruction may include an instruction known as a conditional loop.
図8Aには、条件付きループとして、カウント制御ループ、すなわち、いわゆるforループを記述した制御チャート12を示した。機器制御装置3は、内部時刻が1.0秒の時点で制御命令であるFor命令を解釈し、For命令に示された回数だけ、Next命令が記述された5.0秒までの範囲を繰り返し実行する。すなわち、1.0秒〜5.0秒の範囲を任意の回数だけ繰り返し実行することができる。 FIG. 8A shows a
図8Bには、条件付きループとして、条件制御ループ、すなわち、いわゆるwhileループ(do−whileループとも)を記述した制御チャート12を示した。機器制御装置3は、内部時刻が1.0秒の時点で制御命令であるWhile命令を解釈し、While命令に紐づけられた条件が満足される間、Wend命令が記述された5.0秒までの範囲を繰り返し実行する。この条件は、If命令の場合と同様、タイムチャート作成装置2のタイムチャート作成部2iにより、ダイアログ等によりあらかじめ入力される。また、While節を強制的に終了し、Wend命令以降の部分に制御を移すことを示すBreak命令を記述できるようにしてもよい。 FIG. 8B shows a
さらに、制御命令には、サブルーチンコールとして知られる命令が含まれていてよい。図9には、サブルーチンコールとして、いわゆるcall文を記述した制御チャート12を示した。機器制御装置3は、内部時刻が1.0秒の時点で制御命令であるCall命令を解釈し、Call命令に示されたラベル「2」が記述された5.0秒の時点に制御を移す。そして、機器制御装置3は、内部時刻がReturn命令が記述された8.0秒の時点に到達すると、実行されたCall命令が記述された時点である1.0秒の時点に制御を戻し、その後引き続きタイムチャートを実行する。すなわち、同図に示した例では、機器制御装置3は、内部時刻が1.0秒に到達すると、内部時刻が5.0秒〜8.0秒の範囲のタイムチャートを実行し、その後1.0秒の時点に戻って4.0秒までタイムチャートを実行し、さらにJump命令により0.5秒の時点に戻って以降繰り返す、という動作をすることになる。 Further, the control instruction may include an instruction known as a subroutine call. FIG. 9 shows a
以上の通り、本実施形態においては、好ましくは制御命令に少なくとも条件分岐、条件付きループ、サブルーチンコールのいずれかが含まれる。かかる制御命令を用いることにより、より高度な制御が行え、タイムチャートの可読性が向上するほか、重複する動作を繰り返し記述する必要がなくなる等、タイムチャートの生産性が向上する。 As described above, in the present embodiment, the control instruction preferably includes at least one of a conditional branch, a conditional loop, and a subroutine call. By using such a control command, more advanced control can be performed, the readability of the time chart is improved, and the productivity of the time chart is improved such that there is no need to repeatedly describe overlapping operations.
さらに、本実施形態においては、制御命令にいわゆる例外処理を行うための例外処理命令が含まれていてよい。ここでいう例外処理命令は、何らかの事象、たとえばエラーの発生に応じて、内部時刻を書き換えて制御を移すことにより、特定の例外処理を行うというものである。この事象は、いわゆるエラーとしてあらかじめ定められているもの(例えば、機器制御装置3自身が発するエラーや、機器制御装置3と接続されるサーボコントローラ等の機器が発するエラー等)としてもよいし、ユーザが事象を設定できるようにしてもよい。例外処理に設定すべき事象としては、例えば、非常停止ボタンの押し下げなどが考えられる。以降、例外処理を発生させるべき事象のことを、単に事象という。 Further, in the present embodiment, the control instruction may include an exception processing instruction for performing so-called exception processing. The exception processing instruction here is to perform specific exception processing by rewriting the internal time and transferring control in response to occurrence of some event, for example, an error. This event may be predetermined as a so-called error (for example, an error generated by the
図10Aは、例外処理として、例外発生時に特定の時刻へとジャンプするものを制御チャート12に記述した例である。この制御は、特にエラー等の事象が発生することがなければ内部時刻が0.5秒から5.0秒までの処理を繰り返すというものである。 FIG. 10A is an example in which the
そして、1.0秒の時点に記述されている制御命令であるTry_J命令は、事象発生の監視の開始を意味し、4.0秒の時点に記述されている制御命令であるTry_E命令は、事象発生の監視の終了を意味する。すなわち、このTry_J命令とTry_E命令に挟まれた区間である0.5〜4.0秒の区間内において事象が発生すれば、例外処理が行われることになる。 The Try_J command, which is a control command described at the time of 1.0 second, means the start of event occurrence monitoring, and the Try_E command, which is a control command written at the time of 4.0 seconds, It means the end of event occurrence monitoring. That is, if an event occurs in a section of 0.5 to 4.0 seconds, which is a section between the Try_J instruction and the Try_E instruction, exception handling is performed.
0.5〜4.0秒の区間内において事象が発生し、例外区間が図10Aに示すようにTry_J命令で定義されている場合には、機器制御装置3は例外処理用の特別なラベルである「Catch」が記述されている6.0秒の時点に制御を移す。この処理は通常のJump命令と同様であるので、単に内部時刻が6.0秒の時点に書き換えられることになる。以降、6.0秒以降に記述された例外処理が適宜解釈され、実行されることとなる。 When an event occurs in the interval of 0.5 to 4.0 seconds and the exception interval is defined by the Try_J instruction as shown in FIG. 10A, the
図10Bは、例外処理として、例外発生時にサブルーチンコールを行うものを制御チャート12に記載した例である。この場合も同様に、特にエラー等の事象が発生することがなければ内部時刻が0.5秒から5.0秒までの処理が繰り返される。 FIG. 10B shows an example in which a subroutine call is made in the
そして、1.0秒の時点に記述されている制御命令であるTry_C命令は、先のTry_J命令と同様に事象発生の監視の開始を意味し、Try_E命令は事象発生の監視の終了を意味するので、この例でも0.5〜4.0秒の区間内において事象が発生すれば、例外処理が行われることになる。 The Try_C command, which is a control command described at the time of 1.0 second, means the start of event occurrence monitoring, and the Try_E command means the end of event occurrence monitoring, like the previous Try_J command. Therefore, even in this example, if an event occurs in a section of 0.5 to 4.0 seconds, exception processing is performed.
0.5〜4.0秒の区間内において事象が発生し、例外区間が図10Bに示すようにTry_C命令で定義されている場合には、機器制御装置3は例外処理用の特別なラベルである「Catch」が記述されている6.0秒の時点へのサブルーチンコールを行う。すなわち、機器制御装置3は、事象が発生した時点での内部時刻を記憶しておき、内部時刻を6.0秒に書き換えることにより例外処理ルーチンへと処理を移す。例外処理の終了後、内部時刻が、この例では8.0秒の時点に記述されたReturn命令に到達すると、事象が発生した時点である、記憶しておいた時刻へと内部時刻を再度書き換え、制御を継続することになる。この場合には、CatchラベルとReturn命令に挟まれた区間が、例外制御用のサブルーチンとなることになる。 When an event occurs in the interval of 0.5 to 4.0 seconds and the exception interval is defined by the Try_C instruction as shown in FIG. 10B, the
なお、上述の例では、例外処理命令(Try_J命令、Try_C命令、Try_E命令、Catchラベル、Return命令)を他の制御命令と同じく制御チャート12上に記述したが、タイムチャート作成者の理解をより容易にするため、例外処理命令を記述する制御チャートを通常の制御命令(例外処理命令以外の制御命令)と異なるチャートに記述するようにしてもよい。 In the above example, exception handling instructions (Try_J instruction, Try_C instruction, Try_E instruction, catch label, Return instruction) are described on the
図10Cは、例外処理命令を、通常の制御命令を記述する通常制御チャート12aとは区別して示されるチャートである、例外ハンドラ12bに記述した例を示す図である。ここで、例外ハンドラ12bもまた、特定の機器に対応付けられない仮想的なチャートであることから、制御チャート12の一種である。したがって、この例では制御チャート12には通常制御チャート12aと例外ハンドラ12bとが含まれることになる。 FIG. 10C is a diagram illustrating an example in which an exception handling instruction is described in an
以上のように、制御命令に特定の事象に応じて内部時刻を書き換える、例外処理命令を含むことにより、より柔軟かつ高度な制御が可能となる。なお、以上の例では事象の発生時に制御を移す先として特別のラベルであるCatchを用意したが、これを図3等に示した通常のラベルとし、Try_J命令やTry_C命令で、例外処理を行う際の制御の移動先のラベルを指定するようにしてもよい。また、さらにTry_J命令やTry_C命令ごとに監視する事象を指定するようにして、事象に応じて異なる例外処理を行えるようにしてもよい。 As described above, by including an exception processing instruction that rewrites the internal time according to a specific event in the control instruction, more flexible and advanced control is possible. In the above example, “Catch” which is a special label is prepared as a destination to which control is transferred when an event occurs, but this is used as a normal label shown in FIG. You may make it designate the label of the movement destination of the control at the time. Further, an event to be monitored may be specified for each Try_J instruction or Try_C instruction so that different exception processing can be performed according to the event.
図11は、タイムチャート作成装置2によりタイムチャートを作成する手順を示すフロー図である。この手順は、同図に示すように、まず、タイムチャート作成装置2のタイムチャート作成部2iの制御チャート作成部2oにより制御チャートを、機器チャート作成部2pにより機器チャートをGUI上で作成し(ステップS1)、次いで変換部2jにより作成したタイムチャートを制御データに変換し(ステップS2)、最後に変換された制御データを送信部2kにより機器制御装置3へと送信すればよい(ステップS3)。 FIG. 11 is a flowchart showing a procedure for creating a time chart by the time
図12は、機器制御装置3により制御データに基いてタイムチャートを実行する手順を示すフロー図である。まず、機器制御装置3の内部時刻計時部3bは、内部時刻を初期値である0秒に設定する(ステップS4)。続いて、制御データ読込部3cは、内部時刻に合致する時刻をもつ制御命令データ、或いは、動作データが存在するか否か判別し、存在していれば当該データを読み込む(ステップS5)。この動作は、同時刻に複数のデータが存在する場合には、複数のデータ全てについて読み込みが完了した場合に、もはやデータが存在しないものと判別することになる。 FIG. 12 is a flowchart showing a procedure for executing a time chart based on the control data by the
現在の内部時刻に対応する制御命令データも動作データも存在しない場合には、つづくステップS6にてタイムチャートの実行の終了を判別する。この判別は、現在の内部時刻以降の時刻に対応する制御命令データも動作データも存在しない場合に肯定される。この判別の具体的な手法は特に限定されないが、例えば、あらかじめ制御データの初期化データ内に制御命令データ又は動作データが最後に記述された時刻を記述しておいたり、制御データを検索して最も遅い時刻として記述されている時刻を抽出しておくことにより容易に実現できる。あるいは、タイムチャート上に明示的に動作の終了を制御命令として記述しておくようにしてもよい。 If neither the control command data nor the operation data corresponding to the current internal time exists, it is determined in step S6 whether the execution of the time chart is finished. This determination is affirmed when neither control command data nor operation data corresponding to the time after the current internal time exists. The specific method of this determination is not particularly limited. For example, the time when control command data or operation data was last described in the initialization data of the control data is described in advance, or the control data is searched. This can be easily realized by extracting the time described as the latest time. Alternatively, the end of the operation may be explicitly described as a control command on the time chart.
タイムチャートの実行を終了しない場合には、さらにステップS7へと進み、内部時刻計時部3bにより内部時刻が更新される。この内部時刻の更新は、所定のタイミングで所定の量だけ内部時刻を進めるようになされ、例えば、実時間が1ms進行する毎に内部時刻に1msを加算する。内部時刻が更新されると、再びステップS5へと戻り、以降繰り返す。 If the execution of the time chart is not terminated, the process further proceeds to step S7, where the internal time is updated by the internal time counter 3b. The internal time is updated so that the internal time is advanced by a predetermined amount at a predetermined timing. For example, 1 ms is added to the internal time every time the actual time advances by 1 ms. When the internal time is updated, the process returns to step S5 again and is repeated thereafter.
ステップS5にて現在の内部時刻に対応する制御命令データ又は動作データが存在する場合には、ステップS8へと進み、当該データが制御命令データであるか動作データであるかにより制御を分岐させる。制御命令データである場合にはステップS9へと進み、制御命令実行部3dにより制御命令データが解釈され、必要に応じて内部時刻が書き換えられる。その後制御は再びステップS5へと戻る。 If there is control command data or operation data corresponding to the current internal time in step S5, the process proceeds to step S8, and the control is branched depending on whether the data is control command data or operation data. If it is control command data, the process proceeds to step S9, where the control
一方、ステップS8において当該データが動作データである場合には、さらにステップS10へと進み、当該動作データが機器への出力を意味するものであるか、機器からの入力を意味するものであるかを判別する。出力を意味するものである場合、ステップS11へと進み、機器出力実行部3eにより、動作データに応じた機器への出力が実行される。その後制御はステップS5へと戻される。 On the other hand, if the data is operation data in step S8, the process further proceeds to step S10, and whether the operation data means output to the device or input from the device. Is determined. If it means output, the process proceeds to step S11, and output to the device according to the operation data is executed by the device
ステップS10において、当該動作データが入力を意味するものである場合、ステップS12へと進み、内部時刻停止部3fにより、当該機器からの入力が、当該動作データに示された動作と一致するか否かを判別する。一致しなければ、ステップS13にて内部時刻の進行を停止し、再びステップS12へと戻り、当該機器からの入力が、当該動作データに示された動作と一致するまで繰り返す。一致すれば、ステップS5へと制御を戻す。これにより、停止していた内部時刻は進行を再開することになる。 If it is determined in step S10 that the operation data represents input, the process proceeds to step S12, and whether or not the input from the device matches the operation indicated by the operation data by the internal time stop unit 3f. Is determined. If they do not match, the progress of the internal time is stopped in step S13, the process returns to step S12 again, and the input from the device is repeated until it matches the operation indicated in the operation data. If they match, control returns to step S5. Thus, the progress of the stopped internal time is resumed.
なお、図5に示したように、タイムチャート作成装置2は、タイムチャートシミュレート部2mと機器シミュレート部2nをさらに有していてもよい。このタイムチャートシミュレート部2mと機器シミュレート部2nは、タイムチャート作成装置2により作成されたタイムチャートの動作を、機器制御装置3を用いて現実に実行させることなくシミュレーションにより確認するための構成である。 As illustrated in FIG. 5, the time
より詳しくは、タイムチャートシミュレート部2mは、機器制御装置3が制御データを実行する場合と同様の動作を、タイムチャートに基いてタイムチャート作成装置2上で再現する。また、機器シミュレート部2nは、機器制御装置3に接続される予定の機器の動作を、タイムチャート作成装置2上で再現する。 More specifically, the time chart simulating unit 2m reproduces the same operation as when the
再現されたタイムチャートに記述された動作や制御、各機器の状態は、タイムチャート作成装置2のモニタ2h上に表示される。またこのとき、再現中の内部時刻は図3に示すマーカ15の位置として示される。これにより、機器制御システム1を現実に構築することなく、作成したタイムチャートの動作を確認することができるため、タイムチャートの不具合の発見と修正等、いわゆるデバッグ作業を簡便かつ安価に行うことができる。 The operation and control described in the reproduced time chart and the state of each device are displayed on the
図13は、タイムチャート作成装置2によりタイムチャートの動作をシミュレーションにより確認する手順を示すフロー図である。 FIG. 13 is a flowchart showing a procedure for confirming the operation of the time chart by simulation by the time
まず、ステップS14において、タイムチャートシミュレート部2mによりタイムチャートの動作を再現する。続くステップS15では、機器シミュレート部2nにより機器の動作を再現する。さらにステップS16において、シミュレーションを終了するか否かを判別し、タイムチャートの実行が終了に至っていないか、あるいはユーザによりシミュレーションの終了が支持されていない場合にはステップS14に戻り、以降繰り返す。シミュレーションを終了する場合にはそのままタイムチャート作成装置2はシミュレーションを終了する。 First, in step S14, the operation of the time chart is reproduced by the time chart simulator 2m. In the subsequent step S15, the operation of the device is reproduced by the device simulation unit 2n. Further, in step S16, it is determined whether or not to end the simulation, and if the execution of the time chart has not ended or if the end of the simulation is not supported by the user, the process returns to step S14 and is repeated thereafter. When ending the simulation, the time
以上説明した各実施形態の構成は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成そのものに限定することは意図されていない。当業者はこれら開示された実施形態に種々の変形、例えば、各部材あるいはその部分の形状や数、配置等を適宜変更してもよく、また、フローチャートに示した制御は、同等の機能を奏する他の制御に置き換えてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。 The configuration of each embodiment described above is shown as a specific example, and the invention disclosed in this specification is not intended to be limited to the configuration of the specific example itself. Those skilled in the art may appropriately change various modifications to the disclosed embodiments, for example, the shape, number, arrangement, etc. of each member or part thereof, and the control shown in the flowchart has an equivalent function. It may be replaced with another control. It should be understood that the technical scope of the invention disclosed herein includes such modifications.
Claims (12)
前記タイムチャート作成装置が作成したタイムチャートに基づいて、前記1又は2以上の機器を制御する機器制御装置と、を備え、
前記タイムチャート作成装置は、
前記タイムチャートに、時間軸に対して制御命令を記述した制御チャートを作成する制御チャート作成部と、
前記タイムチャートに、時間軸に対して機器の動作を記述した少なくとも1つの機器チャートを作成する機器チャート作成部と、を有し、
前記タイムチャート作成装置は、
前記制御チャートを、前記機器チャートと共通の時間軸上に、前記機器チャートと区別し得る態様で表示し、
前記制御命令は、前記制御チャート上の時刻を指定して記述され、少なくとも、条件分岐、条件付きループ、サブルーチンコールのいずれかを含む、
機器制御システム。 A time chart creation device for creating a time chart describing the operation of one or more devices with respect to a time axis;
A device control device that controls the one or more devices based on the time chart created by the time chart creation device;
The time chart creation device includes:
In the time chart, a control chart creating unit that creates a control chart describing a control command with respect to the time axis, and
A device chart creating unit for creating at least one device chart describing the operation of the device with respect to the time axis in the time chart;
The time chart creation device includes:
The control chart is displayed in a manner that can be distinguished from the equipment chart on a time axis common to the equipment chart,
The control instruction is described by specifying a time on the control chart, and includes at least one of a conditional branch, a conditional loop, and a subroutine call.
Equipment control system.
前記制御チャートに基づいて、内部時刻を制御する制御命令実行部と、
前記少なくとも1つの機器チャートと前記機器制御装置の内部時刻とに基づいて、機器を動作させる機器出力実行部と、を備える、請求項1に記載の機器制御システム。 The device control device
Based on the control chart, a control command execution unit for controlling the internal time,
The device control system according to claim 1, further comprising: a device output execution unit that operates the device based on the at least one device chart and an internal time of the device control apparatus.
前記タイムチャートを、時刻に紐付けられた機器の動作を示す動作データと、時刻に紐付けられた制御命令を示す制御命令データと、を含む制御データに変換する変換部と、
前記制御データを前記機器制御装置に送信する送信部と、を備え、
前記機器制御装置は、
前記制御データに基づいて前記1又は2以上の機器を制御する、請求項1〜4のいずれか1項に記載の機器制御システム。 The time chart creation device includes:
A conversion unit that converts the time chart into operation data indicating the operation of the device associated with the time and control data indicating a control instruction associated with the time;
A transmission unit for transmitting the control data to the device control device,
The device control device
Controlling said one or more devices based on the control data, the device control system according to any one of claims 1-4.
前記機器の動作が機器への出力を意味するものである場合、内部時刻に応じて当該機器への出力を実行する機器出力実行部と、
前記機器の動作が機器からの入力を意味するものである場合、当該機器からの入力がなされるまで前記内部時刻の進行を停止する内部時刻停止部と、を有する請求項1〜5のいずれか1項に記載の機器制御システム。 The device control device
When the operation of the device means output to the device, a device output execution unit that executes output to the device according to the internal time,
If the operation of the equipment is intended to mean an input from devices, claim 1-5 having a internal time stop for stopping the progress of the internal time to the input from the device is made The device control system according to item 1.
前記機器の動作をシミュレートする機器シミュレート部と、を有する請求項7に記載のタイムチャート作成装置。 A time chart simulator for simulating the operation of the time chart;
The time chart creating apparatus according to claim 7 , further comprising: a device simulating unit that simulates the operation of the device.
前記タイムチャートに基いて1又は2以上の機器を制御し、
前記制御命令は、少なくとも、条件分岐、条件付きループ、サブルーチンコールのいずれかを含む、機器制御方法。 At least one device chart describing the operation of the device with respect to the time axis is created in the time chart, and a control chart in which a control command is described with respect to the time axis is arranged on the time axis common to the device chart. Create to display in a manner that can be distinguished from the device chart, create a time chart,
Control one or more devices based on the time chart ,
The device control method , wherein the control instruction includes at least one of a conditional branch, a conditional loop, and a subroutine call .
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/068962 WO2016009518A1 (en) | 2014-07-16 | 2014-07-16 | Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2016009518A1 JPWO2016009518A1 (en) | 2017-04-27 |
JP6460107B2 true JP6460107B2 (en) | 2019-01-30 |
Family
ID=55078037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016534037A Active JP6460107B2 (en) | 2014-07-16 | 2014-07-16 | Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6460107B2 (en) |
WO (1) | WO2016009518A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019117249A1 (en) * | 2017-12-13 | 2019-06-20 | 株式会社 Preferred Networks | Control device, control method, and program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05158508A (en) * | 1991-12-05 | 1993-06-25 | Toshiba Corp | Sequence specification preparation supporting device |
JPH07191717A (en) * | 1992-02-05 | 1995-07-28 | Toshiba Corp | Automatic preparing device for control program |
JP2003228403A (en) * | 2002-02-01 | 2003-08-15 | Ide Keiki:Kk | Sequence control method and sequencer device |
JP4922684B2 (en) * | 2006-07-10 | 2012-04-25 | 神奈川県 | How to create a ladder diagram |
JP5694715B2 (en) * | 2010-09-16 | 2015-04-01 | キヤノン株式会社 | Timing chart processing apparatus and method for displaying timing chart |
-
2014
- 2014-07-16 JP JP2016534037A patent/JP6460107B2/en active Active
- 2014-07-16 WO PCT/JP2014/068962 patent/WO2016009518A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
JPWO2016009518A1 (en) | 2017-04-27 |
WO2016009518A1 (en) | 2016-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2577413B1 (en) | Method and system for closed-loop controller programming | |
EP2549344B1 (en) | Simulation method of control program enabling a selective restart of the simulation | |
US10761513B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
WO2010121104A1 (en) | Sequence element replacement | |
JP4322770B2 (en) | Screen creation device, screen creation program, and recording medium recording the same | |
CN102681856A (en) | System and method used for achieving human-computer interface of robot and based on demonstrator | |
EP4134918A1 (en) | Program and device for simulation | |
US11820014B2 (en) | Simulated local demonstration data for robotic demonstration learning | |
US11472025B2 (en) | Robotic demonstration learning device | |
JPH1011118A (en) | Sequence controller, data processor, data recording and reproducing method, and recording medium | |
JP6460107B2 (en) | Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program | |
US11524402B2 (en) | User feedback for robotic demonstration learning | |
JP6460108B2 (en) | Device control system, time chart creation device, device control device, device control method, time chart creation method, and computer program | |
JP2014206939A (en) | Controller, control device, device control system, computer program and computer readable information storage medium | |
JP5314959B2 (en) | Information processing apparatus, control method therefor, computer program, and storage medium | |
JP5962839B2 (en) | Controller, time chart creation device, computer program, and computer-readable information storage medium | |
JP5803952B2 (en) | Controller, time chart creation device, computer program, information storage medium, device control method, and time chart creation method | |
WO2022190417A1 (en) | Development support device, development support method, and development support program | |
CN220855475U (en) | Composite on-line industrial intelligent control circuit | |
JP2003288113A (en) | Simulation method of equipment and simulation program of equipment | |
JP4563255B2 (en) | Programmable display, control program, and recording medium recording the program | |
Scott | Learning RSLogix 5000 Programming: Build robust PLC solutions with ControlLogix, CompactLogix, and Studio 5000/RSLogix 5000 | |
JP2006099573A (en) | Screen forming device, screen forming program and storage medium recording the same | |
JP2001005517A (en) | Monitor method for control program and its device | |
JP5693668B2 (en) | Information processing apparatus, control method therefor, computer program, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171128 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180621 |
|
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: 20181204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6460107 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |