JP6163842B2 - プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム - Google Patents
プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム Download PDFInfo
- Publication number
- JP6163842B2 JP6163842B2 JP2013083323A JP2013083323A JP6163842B2 JP 6163842 B2 JP6163842 B2 JP 6163842B2 JP 2013083323 A JP2013083323 A JP 2013083323A JP 2013083323 A JP2013083323 A JP 2013083323A JP 6163842 B2 JP6163842 B2 JP 6163842B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- execution
- cycle
- fixed
- phase
- 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
- 238000006243 chemical reaction Methods 0.000 claims description 82
- 238000000034 method Methods 0.000 claims description 71
- 230000000737 periodic effect Effects 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 50
- 238000012546 transfer Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 61
- 238000012937 correction Methods 0.000 description 7
- 101100190617 Arabidopsis thaliana PLC2 gene Proteins 0.000 description 5
- 101100408456 Arabidopsis thaliana PLC8 gene Proteins 0.000 description 5
- 101100464304 Caenorhabditis elegans plk-3 gene Proteins 0.000 description 5
- 101100093534 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RPS1B gene Proteins 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 101100520231 Caenorhabditis elegans plc-3 gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
Landscapes
- Programmable Controllers (AREA)
Description
但し、上記のように定周期プログラムを間欠的に実行する場合であっても、複数の定周期プログラムの実行サイクルが同一である場合等、実行タイミングが重なると実行時に演算負荷が増大することにより定周期性を守れなくなるなどの問題が発生することがある。
図12の処理は、定周期(ここでは仮に100msとする)のタイマ割込みによって起動される。つまり、図12の処理は、タイマ割込み周期毎(本例では100(ms)毎)に実行される。しかし、図12の処理によって、上記のように実質的にタイマ割込み周期の整数倍の周期で、すなわちタイマ割込みの2回に1回(つまり、実質的に200(ms)周期で)や5回に1回(つまり、実質的に500(ms)周期で)の割合で、プログラム実行されることになる。
図13に示す例のタスクテーブル100は、タスク101、実行周期102、位相103、時間104の各データ項目より成る。
実行周期102と位相103は、各プログラム(A,B,C)の実行周期と位相である。尚、ここでは、実行周期毎の任意のタイミング(例えば800ms毎のタイミング)を、実行周期タイミングと呼ぶものとする。任意の実行周期タイミングから例えば800(ms)経過した時点が、次の実行周期タイミングとなる。基本的には(プログラムCの場合には)実行周期タイミングがプログラム(タスク)実行のタイミングとなるが、本例ではプログラムA,Bについては位相によって実行タイミングをズラしている。
時間104には、そのプログラムの直近の実行周期タイミングからの経過時間が格納される。よって、時間104は、随時更新されると共に、そのプログラムの実行周期タイミングとなる毎に‘0’リセットされる。
図12の処理では、まず、タスクテーブル100の全てのプログラム(全てのレコード)の時間104を更新する(例えば、タイマ割込み周期分を加算する;本例では+100(ms)インクリメントする)(ステップS51)。
本発明の課題は、位相制御機能を持たないPLC(例えばIEC61131-3標準に対応したPLC)であっても定周期プログラムの定周期性を守ることが出来るプログラマブルコントローラの支援装置等を提供することである。
図1は、本例のプログラマブルコントローラ(PLC)やその支援装置等から成るプログラマブルコントローラシステムの概略システム構成図である。
支援装置3は、PLC用のプログラム(特に上記定周期プログラム等)を開発者に任意に作成させるように支援するプログラム作成支援機能を有する。また、PLC用のプログラムをPLC2にダウンロードして記憶させるダウンロード機能を有する。尚、これらプログラム作成支援機能やダウンロード機能自体は、従来の支援装置と略同様であってよく、ここでは特に説明しない。
これについて、図2を参照して説明する。
図2は、主に支援装置3の機能ブロック図である(但し、PLC2の機能も一部示されている)。
この問題に対して、本手法では、主に“実行周期・位相定義情報格納部”12とプログラム変換部13を設けている。
何れにしても、PLC2には、上記「変換後の定周期プログラム」と「補正後のタスクテーブル」等が記憶された状態になる。そして、PLC2が有する制御プログラム実行部21は、これら「変換後の定周期プログラム」と「補正後のタスクテーブル」を用いて定周期プログラム実行制御を行うことで、実質的に、定周期プログラムの間欠実行を実現できる。
以下、具体例等を用いながら更に詳しく説明する。
例えば図3に示すような「変換後の定周期プログラム」の雛形が、予め作成されて支援装置3内の不図示の記憶装置(ハードディスク等)に記憶されている。そして、この雛形などに基づいて、各「変換後の定周期プログラム」が作成される。
図4の処理例では、まず、“実行周期・位相定義情報格納部”12に格納されている位相・周期定義表に基づいて、実行周期及び位相の最大公約数を求める(ステップS11)。これは、例えば、全ての定周期プログラム(A,B,C)の実行周期及び位相に基づいて、これらの最大公約数を求めるものである。
・周期定義値=実行周期÷最大公約数
・位相定義値=位相÷最大公約数
そして、処理対象プログラムの処理を上記ステップS4とし、当該ステップS4に対して上記ステップS1,S2,S3,S5の処理を図3のフォーマットに従って追加することで、処理対象プログラムを上記「変換後の定周期プログラム」に変換する(ステップS13)。
図5(a)、(b)には、上記位相・周期定義表の具体例(その1)、(その2)を示す。
これより、上記周期定義値、位相定義値の算出式を用いた場合、各定周期プログラムA,B,Cそれぞれの周期定義値、位相定義値は、図6(b)に示すようになる。一例として、定周期プログラムAを用いて説明するならば、その実行周期は800(ms)、位相は200(ms)であるので、
・周期定義値=800÷200=4
・位相定義値=200÷200=1
となる。
すなわち、この例では、ステップS1は「実行カウンタ=4?」となり、ステップS3は「実行カウンタ=1?」となる。
次に、図5(b)に示す具体例(その2)について説明する。
この例の場合には、ステップS11では800と400と300と200との最大公約数を求めることになるので、最大公約数=100となる。
ここでは、PLC2には既に上記位相・周期定義表30と略同一のタスクテーブルを既に保持しているものとする。そして、上記具体例(その1)を例にするならば、PLC2は上記タスクテーブル100を保持しているものと見做してもよいものとする。
ここで、本例のPLC2は、上記の通り、“間欠実行機能を持たないPLC”であるので、そのOSの機能・動作は、上記従来の図12等とは異なることになる。
尚、図7の処理は、概略的には、上記図12の処理においてステップS54の処理が無いものと略同様と見做しても構わない。また、図7の処理は、図12と同様に、定周期タイマ割込みによって100(ms)毎に起動・実行されるものとする。
「補正後のタスクテーブル」50は、データ構造自体は、上記タスクテーブル100と略同様と見做してもよい。但し、格納されるデータの内容が、上記の通り補正されている。
まず、処理対象レコードの実行周期52と時間54とが一致するか否かを判定する(ステップS22)。これは、処理対象レコードに係わる上記「変換後の定周期プログラム」の実行タイミングとなったか否かを判定するものと言うこともできる。但し、本手法では、「変換後の定周期プログラム」の実行タイミングとなっても、それがその定周期プログラムの実質的な実行タイミングを意味するとは限らない。つまり、「変換後の定周期プログラム」の実行タイミングとなる毎に「変換後の定周期プログラム」は実行されるが、そのステップS4の処理が実行されるとは限らない。
これより、まず、「変換後の定周期プログラムA」におけるステップS3の判定はYESとなるので(位相定義値=1なので)、ステップS4の処理が実行される(定周期プログラムAの実質的な実行が成される;よって星印(☆)がある)。そして、ステップS5で実行カウンタが+1インクリメントされる(実行カウンタ=2となる)。
これより、まず、「変換後の定周期プログラムA」におけるステップS3の判定はNOとなるので(位相定義値=1なので)、ステップS4の処理が実行されることなく、ステップS5が実行される(実行カウンタ=3となる)。
尚、図3に示すように、実行カウンタ値は、「変換後の定周期プログラム」の実行毎に+1インクリメントされる。
2 PLC
3 支援装置
4 通信線
11 変換元プログラム格納部
12 実行周期・位相定義情報格納部
13 プログラム変換部
14 変換先プログラム格納部
15 プログラム転送部
21 制御プログラム実行部
30 位相・周期定義表
31 タスク
32 実行周期
33 位相
50 補正後のタスクテーブル」
51 タスク
52 実行周期
53 位相
54 時間
Claims (8)
- 位相制御機能を持つプログラマブルコントローラ用に作成された複数の定周期プログラムを記憶する定周期プログラム記憶手段と、
予め任意に設定された前記各定周期プログラム毎の実行周期と位相を記憶する実行周期・位相記憶手段と、
前記複数の定周期プログラムの前記実行周期及び位相の最大公約数を算出し、前記各定周期プログラム毎に、その前記実行周期と位相と、前記最大公約数とに基づいて、“変換後の定周期プログラム”を生成する“変換後の定周期プログラム”生成手段と、
該各“変換後の定周期プログラム”を、位相制御機能を持たないプログラマブルコントローラに転送して記憶させる転送手段と、
前記位相制御機能を持たないプログラマブルコントローラにおける前記各“変換後の定周期プログラム”の実行周期を、前記最大公約数の時間とする実行周期設定手段と、
を有することを特徴とするプログラマブルコントローラの支援装置。 - 前記“変換後の定周期プログラム”は、前記定周期プログラムに対して、その前記実行周期と位相と前記最大公約数とに基づいて得られる定義値を用いた所定の条件を満たす場合に該定周期プログラムが実行される処理が、追加されることで生成されるものであることを特徴とする請求項1記載のプログラマブルコントローラの支援装置。
- 前記実行周期と位相と最大公約数とに基づいて得られる定義値は、前記実行周期を前記最大公約数で除算することで得られる周期定義値と、前記位相を前記最大公約数で除算することで得られる位相定義値とであることを特徴とする請求項2記載のプログラマブルコントローラの支援装置。
- 前記“変換後の定周期プログラム”には、該“変換後の定周期プログラム”の実行回数をカウントする処理が含まれると共に、該実行回数カウント値が前記周期定義値に達する毎に該実行回数カウント値を初期化する処理が含まれることを特徴とする請求項3記載のプログラマブルコントローラの支援装置。
- 前記“変換後の定周期プログラム”には、前記実行回数カウント値が初期化された後に該実行回数カウント値が前記位相定義値となったときに、前記定周期プログラムを実行させる処理が含まれることを特徴とする請求項4記載のプログラマブルコントローラの支援装置。
- プログラマブルコントローラの支援装置のコンピュータを、
全ての定周期プログラムの実行周期及び位相の最大公約数を算出し、前記各定周期プログラム毎に、その前記実行周期と位相と、前記最大公約数とに基づいて、“変換後の定周期プログラム”を生成する“変換後の定周期プログラム”生成手段であって、前記定周期プログラムは、位相制御機能を持つプログラマブルコントローラ用に作成された定周期プログラムである、“変換後の定周期プログラム”生成手段と、
該各“変換後の定周期プログラム”を、位相制御機能を持たないプログラマブルコントローラに転送して記憶させる転送手段と、
前記位相制御機能を持たないプログラマブルコントローラにおける前記各“変換後の定周期プログラム”の実行周期を、前記最大公約数の時間とする実行周期設定手段、
として機能させる為のプログラム。 - 位相制御機能を持たないプログラマブルコントローラと、プログラマブルコントローラの支援装置とを有するプログラマブルコントローラシステムであって、
前記プログラマブルコントローラの支援装置は、
位相制御機能を持つプログラマブルコントローラ用に作成された複数の定周期プログラムを記憶する定周期プログラム記憶手段と、
予め任意に設定された前記各定周期プログラム毎の実行周期と位相を記憶する実行周期・位相記憶手段と、
全ての前記定周期プログラムの前記実行周期及び位相の最大公約数を算出し、前記各定周期プログラム毎に、その前記実行周期と位相と、前記最大公約数とに基づいて、“変換後の定周期プログラム”を生成する“変換後の定周期プログラム”生成手段と、
該各“変換後の定周期プログラム”を、前記位相制御機能を持たないプログラマブルコントローラに転送して記憶させる転送手段と、
前記位相制御機能を持たないプログラマブルコントローラにおける前記各“変換後の定周期プログラム”の実行周期を、前記最大公約数の時間とする実行周期設定手段と、
を有することを特徴とするプログラマブルコントローラシステム。 - 前記位相制御機能を持たないプログラマブルコントローラは、
前記記憶された全ての前記“変換後の定周期プログラム”を、前記最大公約数の時間とされた前記実行周期で実行する制御プログラム実行手段を有し、
該実行される各“変換後の定周期プログラム”のなかでそのときに所定の条件を満たす“変換後の定周期プログラム”に含まれる定周期プログラムが実行されることを特徴とする請求項7記載のプログラマブルコントローラシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013083323A JP6163842B2 (ja) | 2013-04-11 | 2013-04-11 | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013083323A JP6163842B2 (ja) | 2013-04-11 | 2013-04-11 | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014206830A JP2014206830A (ja) | 2014-10-30 |
JP6163842B2 true JP6163842B2 (ja) | 2017-07-19 |
Family
ID=52120344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013083323A Active JP6163842B2 (ja) | 2013-04-11 | 2013-04-11 | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6163842B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07253806A (ja) * | 1994-03-15 | 1995-10-03 | Fuji Facom Corp | スケジューラ定義作成装置 |
JPH09160791A (ja) * | 1995-12-06 | 1997-06-20 | Fuji Electric Co Ltd | プログラム負荷調整装置 |
JP2010160600A (ja) * | 2009-01-07 | 2010-07-22 | Yamatake Corp | 情報処理装置、スケジューラ、及びスケジューリング方法 |
-
2013
- 2013-04-11 JP JP2013083323A patent/JP6163842B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014206830A (ja) | 2014-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5747584B2 (ja) | 制御装置およびシステムプログラム | |
US10324438B2 (en) | Sequence-control programming apparatus, sequence-control programming method, and operating system | |
CN113811852A (zh) | 依赖性版本冲突自动解决 | |
US11966731B2 (en) | Method for real-time updating of process software | |
CA2433379A1 (en) | Modulo scheduling of multiple instruction chains | |
JP2875842B2 (ja) | プログラマブルコントローラ | |
JP6879625B2 (ja) | プログラマブルコントローラ、管理装置および制御システム | |
CN104303150B (zh) | 用于管理计算机系统中的任务执行的方法 | |
US11287793B2 (en) | Control device, control method for control device, information processing program, and recording medium | |
JP6163842B2 (ja) | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム | |
CN111160558A (zh) | 量子芯片控制器、量子计算处理系统和电子设备 | |
WO2018096717A1 (ja) | コントロールシステム及びコントロール方法 | |
JP2019133206A (ja) | モータ駆動システム、モータ制御システムおよび自走ロボット | |
JP6403919B1 (ja) | 作画ソフトウェア、記憶媒体および作画装置 | |
US8621430B2 (en) | Method for code transformation supporting temporal abstraction of parameters | |
JPWO2019229845A1 (ja) | プログラム管理システム、プログラミング支援装置、プログラム管理方法、およびプログラミング支援プログラム | |
EP3521950B1 (en) | Control unit, data refreshing method, data refreshing program | |
JP6648663B2 (ja) | 演算装置、電子制御装置及び演算方法 | |
JP2002055848A (ja) | プログラム実行方式及び当該プログラム実行方式を格納した記憶媒体 | |
JP2010238232A (ja) | 産業用コントローラ | |
JP5511299B2 (ja) | データ演算装置の制御回路及びデータ演算装置 | |
JP2008289259A (ja) | 位置決め制御装置、駆動制御装置および制御システム演算交信処理方法 | |
JP6357806B2 (ja) | コントローラ冗長化システム、そのコントローラ | |
JP4305400B2 (ja) | マイクロコンピュータ | |
JP2020027346A (ja) | コントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160315 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170321 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170509 |
|
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: 20170523 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170605 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6163842 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |