JP2526710B2 - プログラマブルコントロ―ラのプログラミング方法 - Google Patents
プログラマブルコントロ―ラのプログラミング方法Info
- Publication number
- JP2526710B2 JP2526710B2 JP2119305A JP11930590A JP2526710B2 JP 2526710 B2 JP2526710 B2 JP 2526710B2 JP 2119305 A JP2119305 A JP 2119305A JP 11930590 A JP11930590 A JP 11930590A JP 2526710 B2 JP2526710 B2 JP 2526710B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- buffer
- stored
- key
- 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.)
- Expired - Lifetime
Links
Landscapes
- Programmable Controllers (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 この発明はプログラマブルコントローラのプログラミ
ング方法に関するものである。
ング方法に関するものである。
第5図は、従来のプログラマブルコントローラのプロ
グラミング方法が適用されたプログラマブルコントロー
ラ(以下、PCと記す)およびプログラミング装置を示す
ブロック構成図である。
グラミング方法が適用されたプログラマブルコントロー
ラ(以下、PCと記す)およびプログラミング装置を示す
ブロック構成図である。
図において、(10)はPCである。(20)はプログラミ
ング装置であり、中央演算装置(以下、CPUと略す)(2
1)、システムプログラムメモリ(22)、作業領域メモ
リ(23)補助記憶装置(24)、ディスプレイ装置(2
5)、入力装置であるキーボード(26)、PCとのインタ
ーフェイスであるI/Oインターフェイス装置(27)から
構成されている。なお、PC(10)とプログラミング装置
(20)のI/Oインターフェイス装置(27)との間はケー
ブル(30)により接続されている。
ング装置であり、中央演算装置(以下、CPUと略す)(2
1)、システムプログラムメモリ(22)、作業領域メモ
リ(23)補助記憶装置(24)、ディスプレイ装置(2
5)、入力装置であるキーボード(26)、PCとのインタ
ーフェイスであるI/Oインターフェイス装置(27)から
構成されている。なお、PC(10)とプログラミング装置
(20)のI/Oインターフェイス装置(27)との間はケー
ブル(30)により接続されている。
第6図は従来のプログラミングにおける処理の流れを
示すフローチャートであり、CPU(21)とこのCPU(21)
によりアクセスされる作業領域(23)とを用いてテキス
トデータで記述されたシーケンスプログラムをマシン語
の実行プログラムに変換する動作を示している。
示すフローチャートであり、CPU(21)とこのCPU(21)
によりアクセスされる作業領域(23)とを用いてテキス
トデータで記述されたシーケンスプログラムをマシン語
の実行プログラムに変換する動作を示している。
図において、ステップ(101)はシステムプログラム
の開始処理、ステップ(102)は作成済プログラムを補
助記憶装置(24)から作業領域メモリ(23)に読み出
し、ディスプレイ装置(25)に表示を行う初期処理、ス
テップ(103)はキー入力処理、ステップ(104)はキー
入力データが終了を示すものか否かの判定処理、ステッ
プ(105)は終了処理、ステップ(108)は押されたキー
が[Enter]キーか否かを判定する判定処理、ステップ
(108A)は入力データバッファ内容のチェック処理、ス
テップ(108B)は、エラー処理、ステップ(108C)は入
力データバッファの内容をマシン語に変換する変換処
理、ステップ(109)は改行処理、ステップ(111)は、
i=0の初期化および入力バッファのクリア処理、ステ
ップ(112)はディスプレイ装置への出力処理、ステッ
プ(113)はキー入力データを入力データバッファのi
番目に格納する格納処理、ステップ(114)は、iをイ
ンクリメントするインクリメント処理である。
の開始処理、ステップ(102)は作成済プログラムを補
助記憶装置(24)から作業領域メモリ(23)に読み出
し、ディスプレイ装置(25)に表示を行う初期処理、ス
テップ(103)はキー入力処理、ステップ(104)はキー
入力データが終了を示すものか否かの判定処理、ステッ
プ(105)は終了処理、ステップ(108)は押されたキー
が[Enter]キーか否かを判定する判定処理、ステップ
(108A)は入力データバッファ内容のチェック処理、ス
テップ(108B)は、エラー処理、ステップ(108C)は入
力データバッファの内容をマシン語に変換する変換処
理、ステップ(109)は改行処理、ステップ(111)は、
i=0の初期化および入力バッファのクリア処理、ステ
ップ(112)はディスプレイ装置への出力処理、ステッ
プ(113)はキー入力データを入力データバッファのi
番目に格納する格納処理、ステップ(114)は、iをイ
ンクリメントするインクリメント処理である。
第7図は入力データバッファに格納されたデータ(3
5)と、プログラムバッファに格納されたデータ(37)
と、ディスプレイ(25)に表示されたディスプレイ表示
(36)との関係を示す説明図である。なお、入力データ
バッファおよびプログラムバッファは第5図に示す作業
領域メモリ(23)内に設けられている。
5)と、プログラムバッファに格納されたデータ(37)
と、ディスプレイ(25)に表示されたディスプレイ表示
(36)との関係を示す説明図である。なお、入力データ
バッファおよびプログラムバッファは第5図に示す作業
領域メモリ(23)内に設けられている。
次に動作について説明する。第5図において、プログ
ラミング装置(20)では、CPU(21)がシステムプログ
ラムメモリ(22)に格納されているシステムプログラム
をアクセスし、作業領域メモリ(23)を使用して、PC
(10)のプログラムデータを作成する。この時、PC(1
0)のプログラムの作成者はキーボード(26)からデー
タの入力を行い、そのデータは、ディスプレイ装置(2
5)に出力される。作成されたPC(10)のプログラムはI
/Oインターフェイス(27)、ケーブル(30)を介してPC
(10)に送信される。また、必要に応じて補助記憶装置
(24)に上記プログラムデータを格納する。
ラミング装置(20)では、CPU(21)がシステムプログ
ラムメモリ(22)に格納されているシステムプログラム
をアクセスし、作業領域メモリ(23)を使用して、PC
(10)のプログラムデータを作成する。この時、PC(1
0)のプログラムの作成者はキーボード(26)からデー
タの入力を行い、そのデータは、ディスプレイ装置(2
5)に出力される。作成されたPC(10)のプログラムはI
/Oインターフェイス(27)、ケーブル(30)を介してPC
(10)に送信される。また、必要に応じて補助記憶装置
(24)に上記プログラムデータを格納する。
次に、システムプログラムメモリ(22)に格納されて
いるシステムプログラムにもとづくPC(10)のプログラ
ミング処理について第6図に示すフローチャートにより
説明する。
いるシステムプログラムにもとづくPC(10)のプログラ
ミング処理について第6図に示すフローチャートにより
説明する。
第6図において、ステップ(101)でCPU(21)はシス
テムプログラムのアクセスを開始し、ステップ(102)
で初期処理としてプログラムの作成済部分をディスプレ
イ装置(25)に出力し、入力データバッファをクリア
し、i=0の代入を行った後、ステップ(103)に進
む。
テムプログラムのアクセスを開始し、ステップ(102)
で初期処理としてプログラムの作成済部分をディスプレ
イ装置(25)に出力し、入力データバッファをクリア
し、i=0の代入を行った後、ステップ(103)に進
む。
ステップ(103)ではキーボード(26)のキーが押さ
れるのを待ち、キーが押されるとステップ(104)に進
む。
れるのを待ち、キーが押されるとステップ(104)に進
む。
ステップ(104)では押されたキーがPC(10)のプロ
グラムの作成の終了を示すキーであるか否かを判定し、
終了を示すキーであればステップ(105)に進み、終了
処理を行う。終了を示すキーでなければステップ(10
8)に進む。
グラムの作成の終了を示すキーであるか否かを判定し、
終了を示すキーであればステップ(105)に進み、終了
処理を行う。終了を示すキーでなければステップ(10
8)に進む。
ステップ(108)では先にステップ(103)で押された
キーが[Enter]キーであるか否かの判定を行い、[Ent
er]キー以外のキーであればステップ(112)に進む。
キーが[Enter]キーであるか否かの判定を行い、[Ent
er]キー以外のキーであればステップ(112)に進む。
ステップ(112)ではいずれのキーが押されたかをデ
ィスプレイ装置(25)に表示する表示処理を行い、次に
ステップ(113)でこのキーを示すデータを入力データ
バッファのi番目に格納する処理を行いステップ(11
4)に進む。
ィスプレイ装置(25)に表示する表示処理を行い、次に
ステップ(113)でこのキーを示すデータを入力データ
バッファのi番目に格納する処理を行いステップ(11
4)に進む。
ステップ(114)ではiのインクリメント処理を実行
し、ステップ(103)に戻る。
し、ステップ(103)に戻る。
ステップ(108)で、先にステップ(103)において
[Enter]キーが押されていると判定されると、ステッ
プ(108)からステップ(108A)に進む。
[Enter]キーが押されていると判定されると、ステッ
プ(108)からステップ(108A)に進む。
ステップ(108A)では入力データバッファに格納され
ているデータが、PCの命令として正しいかのチェックを
行う。チェックの結果エラーがあれば、次にステップ
(108B)でエラー表示などのエラー処理を行う。ステッ
プ(108A)でのチェックの結果、エラーがなければステ
ップ(108C)に進む。
ているデータが、PCの命令として正しいかのチェックを
行う。チェックの結果エラーがあれば、次にステップ
(108B)でエラー表示などのエラー処理を行う。ステッ
プ(108A)でのチェックの結果、エラーがなければステ
ップ(108C)に進む。
ステップ(108C)では入力データバッファ内のデータ
をPC(10)のマシン語に変換するとともに変換結果をプ
ログラムバッファに転送し、ステップ(109)に進む。
をPC(10)のマシン語に変換するとともに変換結果をプ
ログラムバッファに転送し、ステップ(109)に進む。
ステップ(109)ではディスプレイ表示画面上で改行
を行い、次に、ステップ(111)でi=0を行いiを初
期化するとともに入力データバッファをクリアし、ステ
ップ(103)に戻る。
を行い、次に、ステップ(111)でi=0を行いiを初
期化するとともに入力データバッファをクリアし、ステ
ップ(103)に戻る。
すなわち、第7図において、キー入力の結果、入力デ
ータバッファに格納されたデータ(35)はディスプレイ
装置(25)の画面に表示され、[Enter]キー押される
とこの入力データバッファの内容はPC(10)のマシン語
に変換され、プログラムバッファに格納される。
ータバッファに格納されたデータ(35)はディスプレイ
装置(25)の画面に表示され、[Enter]キー押される
とこの入力データバッファの内容はPC(10)のマシン語
に変換され、プログラムバッファに格納される。
また、行単位(命令単位)で入力内容が所定のルール
に添うものであるか否かのチェックが行われマシン語に
変換される。
に添うものであるか否かのチェックが行われマシン語に
変換される。
PCはこのようにしてマシン語に変換されプログラムバ
ッファに格納されたマシン語のプログラムを実行する。
ッファに格納されたマシン語のプログラムを実行する。
なお、第7図aにおいて入力データバッファへの入力
内容は説明の都合上、入力データ2行分が書かれている
が、実際には入力データバッファの容量は1行分しかな
く、[Enter]キーが押される毎に入力データバッファ
の内容はクリアされる。
内容は説明の都合上、入力データ2行分が書かれている
が、実際には入力データバッファの容量は1行分しかな
く、[Enter]キーが押される毎に入力データバッファ
の内容はクリアされる。
従来のプログラマブルコントローラのプログラミング
方法は以上のように構成されているので、複数のプログ
ラムに共通部分があっても、それぞれ個別のプログラム
として作成するので、これらのプログラムを格納するた
めに所要メモリ容量が増大するとともに、この共通部分
に変更が生じた時には複数個のプログラムを全て変更す
る必要があった。
方法は以上のように構成されているので、複数のプログ
ラムに共通部分があっても、それぞれ個別のプログラム
として作成するので、これらのプログラムを格納するた
めに所要メモリ容量が増大するとともに、この共通部分
に変更が生じた時には複数個のプログラムを全て変更す
る必要があった。
また、プログラム全体で見た場合における命令の相関
関係等のチェックを行うことができなかった。
関係等のチェックを行うことができなかった。
また、接点、コイルなどのデバイスがプログラム上で
どのステップで使用されているかはその都度個々につい
て検索する等により調べなければならず、プログラムの
作成や修正を迅速に行うことができないという問題があ
った。
どのステップで使用されているかはその都度個々につい
て検索する等により調べなければならず、プログラムの
作成や修正を迅速に行うことができないという問題があ
った。
この発明は上述のような問題点を解決するためになさ
れたもので、プログラムを格納するメモリエリアの増大
化を防止され、プログラムのチェックもれが防止され、
プログラムの作成、変更等の作業が容易化されるプログ
ラマブルコントローラのプログラミング方法を得ること
を目的とする。
れたもので、プログラムを格納するメモリエリアの増大
化を防止され、プログラムのチェックもれが防止され、
プログラムの作成、変更等の作業が容易化されるプログ
ラマブルコントローラのプログラミング方法を得ること
を目的とする。
この発明に係るプログラマブルコントローラのプログ
ラミング方法は、選択的に実行される部分を有する所定
のプログラムにおけるそれぞれの命令が入力手段を介し
て操作者により入力され第1記憶手段に格納される第1
段階と、選択的に実行される部分については選択された
部分のみを有するプログラムである実行プログラムの命
令がマシン後に変換され、第1記憶手段の記憶内容等に
もとづき命令がプログラム上の所定のルールが満足され
ているか否かがチェックされ、マシン語に変換された命
令が第2記憶手段に格納される第2段階と、第2段階が
実行プログラムのそれぞれの命令について実行される第
3段階と、を有し、制御手段の制御のもとに第1乃至第
3段階における動作が行われるようにしたものである。
ラミング方法は、選択的に実行される部分を有する所定
のプログラムにおけるそれぞれの命令が入力手段を介し
て操作者により入力され第1記憶手段に格納される第1
段階と、選択的に実行される部分については選択された
部分のみを有するプログラムである実行プログラムの命
令がマシン後に変換され、第1記憶手段の記憶内容等に
もとづき命令がプログラム上の所定のルールが満足され
ているか否かがチェックされ、マシン語に変換された命
令が第2記憶手段に格納される第2段階と、第2段階が
実行プログラムのそれぞれの命令について実行される第
3段階と、を有し、制御手段の制御のもとに第1乃至第
3段階における動作が行われるようにしたものである。
また、所定の指定がなされていれば接点およびコイル
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれるようにしたものである。
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれるようにしたものである。
この発明におけるプログラマブルコントローラのプロ
グラミング方法は、選択的に実行される部分を有する所
定のプログラムにおけるそれぞれの命令が入力手段を介
して操作者により入力され第1記憶手段に格納される動
作が第1段階行われ、選択的に実行される部分について
は選択された部分のみを有するプログラムである実行プ
ログラムの命令がマシン語に変換され、第1記憶手段の
記憶内容等にもとづき命令がプログラム上の所定のルー
ルが満足されているか否かがチェックされ、マシン語に
変換された命令が第2記憶手段に格納される動作が第2
段階で行われ、第2段階が実行プログラムのそれぞれの
命令について実行される。
グラミング方法は、選択的に実行される部分を有する所
定のプログラムにおけるそれぞれの命令が入力手段を介
して操作者により入力され第1記憶手段に格納される動
作が第1段階行われ、選択的に実行される部分について
は選択された部分のみを有するプログラムである実行プ
ログラムの命令がマシン語に変換され、第1記憶手段の
記憶内容等にもとづき命令がプログラム上の所定のルー
ルが満足されているか否かがチェックされ、マシン語に
変換された命令が第2記憶手段に格納される動作が第2
段階で行われ、第2段階が実行プログラムのそれぞれの
命令について実行される。
また、所定の指定がなされていれば接点およびコイル
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれる。
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれる。
この発明の実施例におけるプログラマブルコントロー
ラのプログラミング方法が適用されたPC(10)およびプ
ログラミング装置(20)のハードウェアのブロック構成
図は、従来例の説明で用いた第5図と同一である。
ラのプログラミング方法が適用されたPC(10)およびプ
ログラミング装置(20)のハードウェアのブロック構成
図は、従来例の説明で用いた第5図と同一である。
第1図は、この発明の一実施例において、プログラム
作成時におけるプログラミング装置(20)の動作を示す
フローチャートである。なお、この動作は制御手段であ
るCPC(21)がシステムプログラムメモリ(22)に格納
されているシステムプログラムを実行することにより具
現される。
作成時におけるプログラミング装置(20)の動作を示す
フローチャートである。なお、この動作は制御手段であ
るCPC(21)がシステムプログラムメモリ(22)に格納
されているシステムプログラムを実行することにより具
現される。
第1図において、ステップ(101)からステップ(10
5)まで、ステップ(108)、ステップ(109)、およ
び、ステップ(108)からステップ(114)まで、は従来
例を示す第6図と同一である。
5)まで、ステップ(108)、ステップ(109)、およ
び、ステップ(108)からステップ(114)まで、は従来
例を示す第6図と同一である。
ステップ(106)は先にステップ(103)においてテキ
ストデータをマシン語プログラムに変換する変換キーが
押されているか否かを判定するステップであり、ステッ
プ(107)はテキストデータをマシン語プログラムに変
換する処理を行うステップである。
ストデータをマシン語プログラムに変換する変換キーが
押されているか否かを判定するステップであり、ステッ
プ(107)はテキストデータをマシン語プログラムに変
換する処理を行うステップである。
第2図はステップ(107)の変換処理の詳細を示すフ
ロー図である。このフロー図は第1記憶手段であるテキ
ストデータバッファに格納されているテキストデータプ
ログラムを所定の分割/分岐条件に対応するマシン語プ
ログラムに変換し、すなわち、選択的に実行される部分
については選択された部分のみを有するプログラムであ
る実行プログラムをマシン語に変換し、この変換結果を
第2記憶手段であるプログラムバッファに格納する動作
を示している。なお、テキストデータプログラムはテキ
ストデータで記述されたプログラムステップを複数有す
るプログラムである。
ロー図である。このフロー図は第1記憶手段であるテキ
ストデータバッファに格納されているテキストデータプ
ログラムを所定の分割/分岐条件に対応するマシン語プ
ログラムに変換し、すなわち、選択的に実行される部分
については選択された部分のみを有するプログラムであ
る実行プログラムをマシン語に変換し、この変換結果を
第2記憶手段であるプログラムバッファに格納する動作
を示している。なお、テキストデータプログラムはテキ
ストデータで記述されたプログラムステップを複数有す
るプログラムである。
第3図は、この発明の実施例における入力データバッ
ファに格納されたデータ(35)と、テキストデータバッ
ファに格納されたテキストデータ(37)と、ディスプレ
イ表示(36)との関係を示す説明図である。
ファに格納されたデータ(35)と、テキストデータバッ
ファに格納されたテキストデータ(37)と、ディスプレ
イ表示(36)との関係を示す説明図である。
第4図はテキストデータバッファに格納されたテキス
トデータ(37)と、プログラムバッファに格納されたマ
シン語の実行プログラム(38)と、テーブル、例えば、
接点コイル使用先テーブル(39)と、の関係を示す説明
図である。
トデータ(37)と、プログラムバッファに格納されたマ
シン語の実行プログラム(38)と、テーブル、例えば、
接点コイル使用先テーブル(39)と、の関係を示す説明
図である。
なお、入力データバッファ、テキストデータバッフ
ァ、プログラムバッファ、後述するテンポラリバッフ
ァ、接点コイル使用リストを格納するエリアは第5図に
示す作業領域メモリ(23)に設けられている。
ァ、プログラムバッファ、後述するテンポラリバッフ
ァ、接点コイル使用リストを格納するエリアは第5図に
示す作業領域メモリ(23)に設けられている。
第2図に示すフローチャートにおいて、ステップ(11
5)は開始ステップ、ステップ(116)はプログラムバッ
ファのクリア、テンポラリバッファのクリア、および、
j=0、K=0の代入等の初期化処理を行うステップ、
ステップ(117)はテキストデータバッファからテキス
トデータ(37)の読み出しを行うステップ、ステップ
(118)は読み出したテキストデータ(37)が終了を示
すテキストデータであるか否かを判定するステップ、ス
テップ(119)は終了ステップである。
5)は開始ステップ、ステップ(116)はプログラムバッ
ファのクリア、テンポラリバッファのクリア、および、
j=0、K=0の代入等の初期化処理を行うステップ、
ステップ(117)はテキストデータバッファからテキス
トデータ(37)の読み出しを行うステップ、ステップ
(118)は読み出したテキストデータ(37)が終了を示
すテキストデータであるか否かを判定するステップ、ス
テップ(119)は終了ステップである。
ステップ(120)は読み出されたテキストデータ(3
7)が条件文か否かを判定するステップ、ステップ(12
1)は条件文に記述された条件が成立しているか否かを
判定するステップ、ステップ(122)は条件が成立して
いない時に条件分割部分を読み飛ばす処理を行うステッ
プ、ステップ(123)は条件文を読み飛ばす処理を行う
ステップである。
7)が条件文か否かを判定するステップ、ステップ(12
1)は条件文に記述された条件が成立しているか否かを
判定するステップ、ステップ(122)は条件が成立して
いない時に条件分割部分を読み飛ばす処理を行うステッ
プ、ステップ(123)は条件文を読み飛ばす処理を行う
ステップである。
ステップ(124)は読み出されたテキストデータが[E
nter]キーを示すテキストデータ(37)であるか否かを
判定するステップ、ステップ(125)は[Enter]キーを
示すテキストデータ(37)ではない場合に読み出された
データをテンポラリバッファのj番目に格納するステッ
プ、ステップ(126)はjをインクリメントするステッ
プである。
nter]キーを示すテキストデータ(37)であるか否かを
判定するステップ、ステップ(125)は[Enter]キーを
示すテキストデータ(37)ではない場合に読み出された
データをテンポラリバッファのj番目に格納するステッ
プ、ステップ(126)はjをインクリメントするステッ
プである。
ステップ(127)はテンポラリバッファのテキストデ
ータ(37)をマシン語プログラム(38)に変換するステ
ップ、ステップ(128)はエラーが発生したか否かを判
定するステップ、ステップ(129)はエラーが発生して
いる場合にエラー処理を行うステップ、ステップ(13
0)はエラーが発生していない場合にマシン語に変換さ
れたデータをプログラムバッファに書き込む処理を行う
ステップである。
ータ(37)をマシン語プログラム(38)に変換するステ
ップ、ステップ(128)はエラーが発生したか否かを判
定するステップ、ステップ(129)はエラーが発生して
いる場合にエラー処理を行うステップ、ステップ(13
0)はエラーが発生していない場合にマシン語に変換さ
れたデータをプログラムバッファに書き込む処理を行う
ステップである。
ステップ(131)は接点コイル使用先等を出力する指
定がなされているか否かを判定するステップ、ステップ
(132)はこの接点コイル使用先等を出力するステッ
プ、ステップ(133)は接点コイル使用先等を出力する
指定がなされていない場合においてステップ(132)を
実行後、または、ステップ(129)の実行後にj=0を
行うとともにテンポラリバッファをクリアするステッ
プ、ステップ(134)はステップ(133)の実行後にkを
インクリメントするステップである。
定がなされているか否かを判定するステップ、ステップ
(132)はこの接点コイル使用先等を出力するステッ
プ、ステップ(133)は接点コイル使用先等を出力する
指定がなされていない場合においてステップ(132)を
実行後、または、ステップ(129)の実行後にj=0を
行うとともにテンポラリバッファをクリアするステッ
プ、ステップ(134)はステップ(133)の実行後にkを
インクリメントするステップである。
次に動作について説明する。上述のように第1図にお
いて、ステップ(101)の開始からステップ(105)の終
了までの動作は第6図に示した従来例と同一である。
いて、ステップ(101)の開始からステップ(105)の終
了までの動作は第6図に示した従来例と同一である。
ステップ(104)において、キー入力データが終了を
示すものでない場合にステップ(104)からステップ(1
06)に進む。
示すものでない場合にステップ(104)からステップ(1
06)に進む。
ステップ(106)では先のステップ(103)で押された
キーがテキストデータ(37)をマシン語の実行プログラ
ム(38)に変換するキーであるか否か判定し、変換を行
うキーであればステップ(107)に進む。
キーがテキストデータ(37)をマシン語の実行プログラ
ム(38)に変換するキーであるか否か判定し、変換を行
うキーであればステップ(107)に進む。
ステップ(107)では第2図に示す変換処理を実行
し、ステップ(103)に戻る。
し、ステップ(103)に戻る。
ステップ(106)において先のステップで変換を行う
キーが押されていないと判定されるとステップ(108)
に進む。
キーが押されていないと判定されるとステップ(108)
に進む。
ステップ(108)では先のステップ(103)で押された
キーが[Enter]キーであるか否かを判定し、[Enter]
キーが押されていると判定されるとステップ(109)に
進む。
キーが[Enter]キーであるか否かを判定し、[Enter]
キーが押されていると判定されるとステップ(109)に
進む。
ステップ(109)ではディスプレイ表示の改行処理を
行い、次に、ステップ(110)で入力データバッファに
格納されている1行分の入力データをテキストデータバ
ッファに転送してステップ(111)に進む。
行い、次に、ステップ(110)で入力データバッファに
格納されている1行分の入力データをテキストデータバ
ッファに転送してステップ(111)に進む。
ステップ(111)ではi=0を行うとともに入力バッ
ファをクリアする処理を行い、ステップ(103)に戻
る。
ファをクリアする処理を行い、ステップ(103)に戻
る。
このようにして、プログラムステップ単位の入力デー
タが入力データバッファからテキストデータバッファに
転送される。
タが入力データバッファからテキストデータバッファに
転送される。
ステップ(108)で先のステップ(103)で押されたキ
ーが[Enter]キーでないと判定されればステップ(11
2)に進む。
ーが[Enter]キーでないと判定されればステップ(11
2)に進む。
ステップ(112)ではディスプレイ装置(25)に入力
データを出力する。
データを出力する。
次にステップ(113)で入力データバッファのi番目
に入力データを格納し、ステップ(114)に進む。
に入力データを格納し、ステップ(114)に進む。
ステップ(114)ではiのインクリメントを行い、ス
テップ(103)に戻る。
テップ(103)に戻る。
第2図は上述のようにテキストデータ(37)をマシン
語の実行プログラム(38)に変換する処理を示すフロー
図である。
語の実行プログラム(38)に変換する処理を示すフロー
図である。
ステップ(115)の開始ステップの後にステップ(11
6)において初期処理としてプログラムバッファ、およ
び、テンポラリバッファをクリアするとともにj=0、
k=0の処理を行う。
6)において初期処理としてプログラムバッファ、およ
び、テンポラリバッファをクリアするとともにj=0、
k=0の処理を行う。
次に、ステップ(117)でテキストデータバッファの
k番目のデータを読み出しステップ(118)に進む。
k番目のデータを読み出しステップ(118)に進む。
ステップ(118)ではステップ(117)で読み出された
データが終了を示すデータであるか否かの判定を行い、
終了を示すデータがあればステップ(119)に進み終了
処理を行う。また、終了を示すデータでなければステッ
プ(120)に進む。
データが終了を示すデータであるか否かの判定を行い、
終了を示すデータがあればステップ(119)に進み終了
処理を行う。また、終了を示すデータでなければステッ
プ(120)に進む。
ステップ(120)ではステップ(117)で読み出された
データが条件文を示すデータがあるか否かの判定を行
い、条件文を示すデータであればステップ(121)に進
む。また、条件文を示すデータでなければステップ(12
4)に進む。
データが条件文を示すデータがあるか否かの判定を行
い、条件文を示すデータであればステップ(121)に進
む。また、条件文を示すデータでなければステップ(12
4)に進む。
ステップ(121)ではこの条件文の条件が成立してい
るか否かの判定を行い、条件文の条件が不成立であれば
ステップ(122)に進み、ステップ(122)で条件文と条
件分割部分の読み飛ばし処理を行った後ステップ(12
4)に進む。また、条件文の条件が成立していればステ
ップ(123)に進み、ステップ(123)で条件文の読み飛
ばし処理を行った後ステップ(124)に進む。
るか否かの判定を行い、条件文の条件が不成立であれば
ステップ(122)に進み、ステップ(122)で条件文と条
件分割部分の読み飛ばし処理を行った後ステップ(12
4)に進む。また、条件文の条件が成立していればステ
ップ(123)に進み、ステップ(123)で条件文の読み飛
ばし処理を行った後ステップ(124)に進む。
ステップ(124)ではステップ(117)で読み出された
データが[Enter]キーが押されたことを示すデータか
否かの判定を行い、[Enter]キーが押されたことを示
すデータであればステップ(127)に進む。また、[Ent
er]キーが押されたことを示すデータでなければステッ
プ(125)に進む。
データが[Enter]キーが押されたことを示すデータか
否かの判定を行い、[Enter]キーが押されたことを示
すデータであればステップ(127)に進む。また、[Ent
er]キーが押されたことを示すデータでなければステッ
プ(125)に進む。
ステップ(125)では先にステップ(117)で読み出さ
れたデータをテンポラリバッファのj番目に格納し、ス
テップ(126)に進む。
れたデータをテンポラリバッファのj番目に格納し、ス
テップ(126)に進む。
ステップ(126)ではjのインクリメントを行いステ
ップ(134)に進む。
ップ(134)に進む。
ステップ(134)ではkのインクリメントを行い、ス
テップ(117)に戻る。
テップ(117)に戻る。
ステップ(127)では、テンポラリバッファのテキス
トデータをマシン語に変換し、ステップ(128)に進
む。
トデータをマシン語に変換し、ステップ(128)に進
む。
ステップ(128)ではエラーの発生の有無の判定を行
い、エラーが発生していればステップ(129)に進む。
い、エラーが発生していればステップ(129)に進む。
ステップ(129)ではエラー表示などのエラー処理を
行い、ステップ(133)に進みステップ(133)でj=0
を行うとともにテンポラリバッファをクリアし、次に、
ステップ(134)でkのインクリメントを行った後、ス
テップ(117)に戻る。
行い、ステップ(133)に進みステップ(133)でj=0
を行うとともにテンポラリバッファをクリアし、次に、
ステップ(134)でkのインクリメントを行った後、ス
テップ(117)に戻る。
ステップ(128)でエラーの発生がなければステップ
(130)に進む。
(130)に進む。
ステップ(130)では先に、ステップ(127)でマシン
語に変換されたデータをプログラムバッファに書き込み
ステップ(131)に進む。
語に変換されたデータをプログラムバッファに書き込み
ステップ(131)に進む。
次に、ステップ(131)では接点コイル使用先出力等
の指定がなされているか否かの判定を行い、指定がなさ
れていればステップ(132)に進み、ステップ(132)で
接点コイル使用先出力等の処理を行い、ステップ(13
3)に進む。また、指定がなされていなければそのまま
ステップ(133)に進む。
の指定がなされているか否かの判定を行い、指定がなさ
れていればステップ(132)に進み、ステップ(132)で
接点コイル使用先出力等の処理を行い、ステップ(13
3)に進む。また、指定がなされていなければそのまま
ステップ(133)に進む。
ステップ(133)以降の動作はエラー時の処理で説明
したようなステップ(133)でj=0およびテンポラリ
バッファのクリアを行い、ステップ(134)でkのイン
クリメントを行った後、ステップ(117)に戻る。
したようなステップ(133)でj=0およびテンポラリ
バッファのクリアを行い、ステップ(134)でkのイン
クリメントを行った後、ステップ(117)に戻る。
以上のように、この実施例ではテキストデータバッフ
ァにすべての入力データを格納した後にテキストデータ
バッファの先頭から最終までを順にマシン語の実行プロ
グラムに変換していくので、テキストデータバッファの
内容を参照してプログラム全体をチェックすることがで
きるため、何等かの原因でデータが壊れた場合やプログ
ラム上の矛盾が生じている場合に、これらの異常を検出
することができる。
ァにすべての入力データを格納した後にテキストデータ
バッファの先頭から最終までを順にマシン語の実行プロ
グラムに変換していくので、テキストデータバッファの
内容を参照してプログラム全体をチェックすることがで
きるため、何等かの原因でデータが壊れた場合やプログ
ラム上の矛盾が生じている場合に、これらの異常を検出
することができる。
また、接点、コイル使用先リスト等の出力の指定があ
る時にはテンポラリバッファの内容をマシン語に変換す
る都度ステップ(132)で接点コイル使用先テーブル(3
9)に接点コイル使用先データをセットしてゆき、変換
終了時には接点コイル使用リストテーブル(39)が完成
するため、このテーブルを作成するために再度プログラ
ムの先頭から最終までを検索するなどの必要がない。
る時にはテンポラリバッファの内容をマシン語に変換す
る都度ステップ(132)で接点コイル使用先テーブル(3
9)に接点コイル使用先データをセットしてゆき、変換
終了時には接点コイル使用リストテーブル(39)が完成
するため、このテーブルを作成するために再度プログラ
ムの先頭から最終までを検索するなどの必要がない。
さらに、第3図において、入力バッファのデータ(3
5)は、例えば、ディスプレイ表示(36)のように表示
され、同時に、テキストデータバッファに書き込まれ
る。
5)は、例えば、ディスプレイ表示(36)のように表示
され、同時に、テキストデータバッファに書き込まれ
る。
すなわち、第4図において、テキストデータバッファ
のデータ(37)は第2図におけるステップ(127)でマ
シン語に変換されプログラムバッファに書き込まれる。
接点コイル使用先の出力等の指定があれば接点コイル使
用先テーブル(39)等に登録される。
のデータ(37)は第2図におけるステップ(127)でマ
シン語に変換されプログラムバッファに書き込まれる。
接点コイル使用先の出力等の指定があれば接点コイル使
用先テーブル(39)等に登録される。
例えば、第4図aに示すテキストデータバッファに格
納されているテキストデータをマシン語の実行プログラ
ムに変換して、第4図bに示すプログラムバッファに格
納する手順は以下に示す通りである。
納されているテキストデータをマシン語の実行プログラ
ムに変換して、第4図bに示すプログラムバッファに格
納する手順は以下に示す通りである。
すなわち、この手順において1行目と2行目の命令
(LDX0、OUTY1)は条件文ではないので第2図のステッ
プ(120)から直接ステップ(124)に進みステップ(12
4)以降の処理が行なわれる(変換が行われる)。
(LDX0、OUTY1)は条件文ではないので第2図のステッ
プ(120)から直接ステップ(124)に進みステップ(12
4)以降の処理が行なわれる(変換が行われる)。
3行目から6行目までの選択的に実行される部分につ
いてはCASE1が成立しているとしているので、ステップ
(123)で3行目および6行目の条件文は読み飛ばされ
(変換は行われない)、4行目および5行目(LDX10、O
UTY11)の条件分割部分についてはステップ(124)に進
みステップ(124)以降の処理が行われる(変換が行わ
れる)。
いてはCASE1が成立しているとしているので、ステップ
(123)で3行目および6行目の条件文は読み飛ばされ
(変換は行われない)、4行目および5行目(LDX10、O
UTY11)の条件分割部分についてはステップ(124)に進
みステップ(124)以降の処理が行われる(変換が行わ
れる)。
7行目と8行目の命令(LDX100、OUTY101)は条件文
ではないのでステップ(120)から直接ステップ(124)
に進みステップ(124)以降の処理が行われる(変換が
行なわれる)。
ではないのでステップ(120)から直接ステップ(124)
に進みステップ(124)以降の処理が行われる(変換が
行なわれる)。
9行目から12行目までの選択的に実行される部分につ
いてはCASE2が不成立としているので、ステップ(122)
で9行目および12行目の条件文と、10行目および11行目
(LDX10、OUTY11)の条件分割部分と、は共に読み飛ば
され変換は行なわれない。
いてはCASE2が不成立としているので、ステップ(122)
で9行目および12行目の条件文と、10行目および11行目
(LDX10、OUTY11)の条件分割部分と、は共に読み飛ば
され変換は行なわれない。
13行目の命令(END)は条件文ではないのでステップ
(120)から直接ステップ(124)に進みステップ(12
4)以降の処理が行なわれる(変換が行なわれる)。
(120)から直接ステップ(124)に進みステップ(12
4)以降の処理が行なわれる(変換が行なわれる)。
このようにして第4図bに示すマシン語の実行プログ
ラムが完成する。
ラムが完成する。
以上のように本発明によれば、選択的に実行される部
分を有する所定のプログラムにおけるそれぞれの命令が
入力手段を介して操作者により入力され第1記憶手段に
格納される動作が第1段階行われ、選択的に実行される
部分については選択された部分のみを有するプログラム
である実行プログラムの命令がマシン語に変換され、第
1記憶手段の記憶内容等にもとづき命令がプログラム上
の所定のルールが満足されているか否かがチェックさ
れ、マシン語に変換された命令が第2記憶手段に格納さ
れる動作が第2段階で行われ、第2段階が実行プログラ
ムのそれぞれの命令について実行されるようにしたの
で、プログラムを格納するメモリエリアの増大化を防止
でき、プログラムのチェックもれが防止でき、プログラ
ムのチェック、作成、変更作業等を容易化できる効果が
ある。
分を有する所定のプログラムにおけるそれぞれの命令が
入力手段を介して操作者により入力され第1記憶手段に
格納される動作が第1段階行われ、選択的に実行される
部分については選択された部分のみを有するプログラム
である実行プログラムの命令がマシン語に変換され、第
1記憶手段の記憶内容等にもとづき命令がプログラム上
の所定のルールが満足されているか否かがチェックさ
れ、マシン語に変換された命令が第2記憶手段に格納さ
れる動作が第2段階で行われ、第2段階が実行プログラ
ムのそれぞれの命令について実行されるようにしたの
で、プログラムを格納するメモリエリアの増大化を防止
でき、プログラムのチェックもれが防止でき、プログラ
ムのチェック、作成、変更作業等を容易化できる効果が
ある。
また、所定の指定がなされていれば接点およびコイル
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれるようにしたので、このテ
ーブルが自動的に容易に作成された作業者はこのテーブ
ルを参照してプログラムのチェック、作成、変更を行う
ことができ、これらの作業をさらに容易化できる効果が
ある。
等のそれぞれのデバイスがいずれの命令に記述されてい
るかが示されるように第2段階が実行される毎に所定デ
ータがテーブルに書き込まれるようにしたので、このテ
ーブルが自動的に容易に作成された作業者はこのテーブ
ルを参照してプログラムのチェック、作成、変更を行う
ことができ、これらの作業をさらに容易化できる効果が
ある。
第1図はこの発明の一実施例によるプログラマブルコン
トローラのプログラミング方法の概略を示すフローチャ
ート、第2図は第1図に示したフローチャート中のテキ
ストデータからPCマシン語への変換ステップの詳細を示
すフローチャート、第3図および第4図はそれぞれこの
発明の実施例によるプログラマブルコントローラのプロ
グラミング方法が適用されたプログラミング装置におけ
る入力バッファとディスプレイ表示およびテキストバッ
ファの関係、およびテキストデータバッファとプログラ
ムデータバッファの関係を示す説明図である。第5図は
従来例およびこの発明の実施例によるPCおよびPCのプロ
グラミング装置の構成図、第6図は従来のプログラマブ
ルコントローラのプログラミング方法を示す概略フロー
チャート、第7図は従来のプログラマブルコントローラ
のプログラミング方法が適用されたプログラミング装置
における入力データバッファ、ディスプレイ表示画面、
プログラムバッファの関係を示す説明図である。 図において、(10)はPC、(20)はPCのプログラミング
装置、(21)は中央演算装置、(22)はシステムプログ
ラムメモリ、(23)は作業領域メモリ、(24)は補助記
憶装置、(25)はディスプレイ装置、(26)はキーボー
ド、(27)はI/Oインターフェイス、(30)は接続ケー
ブル、(35)は入力バッファに格納された入力データ、
(36)はディスプレイ表示画面、(37)はテキストデー
タバッファに格納されたテキストデータ、(38)はプロ
グラムバッファに格納されたマシン語プログラム、(3
9)は接点コイル使用先のテーブルを示す。 なお、図中、同一符号は同一、または相当部分を示す。
トローラのプログラミング方法の概略を示すフローチャ
ート、第2図は第1図に示したフローチャート中のテキ
ストデータからPCマシン語への変換ステップの詳細を示
すフローチャート、第3図および第4図はそれぞれこの
発明の実施例によるプログラマブルコントローラのプロ
グラミング方法が適用されたプログラミング装置におけ
る入力バッファとディスプレイ表示およびテキストバッ
ファの関係、およびテキストデータバッファとプログラ
ムデータバッファの関係を示す説明図である。第5図は
従来例およびこの発明の実施例によるPCおよびPCのプロ
グラミング装置の構成図、第6図は従来のプログラマブ
ルコントローラのプログラミング方法を示す概略フロー
チャート、第7図は従来のプログラマブルコントローラ
のプログラミング方法が適用されたプログラミング装置
における入力データバッファ、ディスプレイ表示画面、
プログラムバッファの関係を示す説明図である。 図において、(10)はPC、(20)はPCのプログラミング
装置、(21)は中央演算装置、(22)はシステムプログ
ラムメモリ、(23)は作業領域メモリ、(24)は補助記
憶装置、(25)はディスプレイ装置、(26)はキーボー
ド、(27)はI/Oインターフェイス、(30)は接続ケー
ブル、(35)は入力バッファに格納された入力データ、
(36)はディスプレイ表示画面、(37)はテキストデー
タバッファに格納されたテキストデータ、(38)はプロ
グラムバッファに格納されたマシン語プログラム、(3
9)は接点コイル使用先のテーブルを示す。 なお、図中、同一符号は同一、または相当部分を示す。
Claims (2)
- 【請求項1】選択的に実行される部分を有する所定のプ
ログラムにおけるそれぞれの命令が入力手段を介して操
作者により入力され第1記憶手段に格納される第1段階
と、 上記選択的に実行される部分については選択された部分
のみを有する上記プログラムである実行プログラムの上
記命令がマシン語に変換され、上記第1記憶手段の記憶
内容等にもとづき上記命令がプログラム上の所定のルー
ルが満足されているか否かがチェックされ、マシン語に
変換された上記命令が第2記憶手段に格納される第2段
階と、 上記第2段階が上記実行プログラムのそれぞれの上記命
令について実行される第3段階と、を有し、 制御手段の制御のもとに上記第1乃至第3段階における
動作が行われることを特徴とするプログラマブルコント
ローラのプログラミング方法。 - 【請求項2】所定の指定がなされていれば接点およびコ
イル等のそれぞれのデバイスがいずれの命令に記述され
ているかが示されるように第2段階が実行される毎に所
定データがテーブルに書き込まれることを特徴とする請
求項1記載のプログラマブルコントローラのプログラミ
ング方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2119305A JP2526710B2 (ja) | 1990-05-09 | 1990-05-09 | プログラマブルコントロ―ラのプログラミング方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2119305A JP2526710B2 (ja) | 1990-05-09 | 1990-05-09 | プログラマブルコントロ―ラのプログラミング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04227504A JPH04227504A (ja) | 1992-08-17 |
JP2526710B2 true JP2526710B2 (ja) | 1996-08-21 |
Family
ID=14758139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2119305A Expired - Lifetime JP2526710B2 (ja) | 1990-05-09 | 1990-05-09 | プログラマブルコントロ―ラのプログラミング方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2526710B2 (ja) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52139886A (en) * | 1976-05-18 | 1977-11-22 | Nippon Seiko Kk | Sequence controller |
JPS59106044A (ja) * | 1982-12-10 | 1984-06-19 | Omron Tateisi Electronics Co | プログラマブル・コントロ−ラのプログラミング装置 |
JPS60237542A (ja) * | 1984-05-10 | 1985-11-26 | Mitsubishi Electric Corp | プログラム制御装置 |
JPS63192106A (ja) * | 1987-02-05 | 1988-08-09 | Fujitsu Ltd | シ−ケンス制御方式 |
JPH07120172B2 (ja) * | 1988-09-08 | 1995-12-20 | 富士電機株式会社 | プログラマブルコントローラ |
JPH0281206A (ja) * | 1988-09-19 | 1990-03-22 | Fanuc Ltd | ラダープログラム処理方式 |
-
1990
- 1990-05-09 JP JP2119305A patent/JP2526710B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH04227504A (ja) | 1992-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR900001033B1 (ko) | 시켄스 제어방법 및 그 제어장치 | |
US5301198A (en) | Method for debugging a program by executing a block mode run | |
US6289264B1 (en) | Debugging system for robot programs | |
JP2526710B2 (ja) | プログラマブルコントロ―ラのプログラミング方法 | |
JPS63288357A (ja) | デ−タ編集方式 | |
GB2175112A (en) | Sequence control method and apparatus | |
JP4387288B2 (ja) | 制御用表示装置、エディタ装置、プログラムおよび記録媒体 | |
JP2785606B2 (ja) | パイプライン処理方式コンピュータ用プログラムのデバッガ | |
JPH05113818A (ja) | 多重プログラム機能を有する数値制御装置 | |
JPH03125212A (ja) | キーボード操作支援装置 | |
JPH0546377A (ja) | 制御プログラム作成方法及びその作成装置 | |
JPS6274130A (ja) | プログラム構造資料作成処理装置 | |
JP2811804B2 (ja) | 変数出力範囲指定方式 | |
JPS6152748A (ja) | マイクロコンピユ−タ開発装置のトレ−ス選択方式 | |
KR970011897B1 (ko) | 언어해석 처리장치 | |
JPS61131124A (ja) | 会話入力処理方式 | |
JP2862369B2 (ja) | 画像表示制御装置 | |
JP2860054B2 (ja) | プログラムデバッグ装置 | |
JPH06348549A (ja) | ソフトウエア処理装置 | |
JPS60186960A (ja) | キ−操作記憶方式 | |
JPH01307844A (ja) | 編集装置 | |
JPH081549B2 (ja) | 文字処理装置 | |
JPH0423102A (ja) | プログラマブルコントローラ用プログラミング装置 | |
JPH06231001A (ja) | シンボル名入力装置 | |
JPH056208A (ja) | 制御装置及びその制御方法 |