JP2009134366A - エディタ装置、エディタプログラムおよびそれを記録した記録媒体 - Google Patents

エディタ装置、エディタプログラムおよびそれを記録した記録媒体 Download PDF

Info

Publication number
JP2009134366A
JP2009134366A JP2007308040A JP2007308040A JP2009134366A JP 2009134366 A JP2009134366 A JP 2009134366A JP 2007308040 A JP2007308040 A JP 2007308040A JP 2007308040 A JP2007308040 A JP 2007308040A JP 2009134366 A JP2009134366 A JP 2009134366A
Authority
JP
Japan
Prior art keywords
editor
input
program
instruction
ladder
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.)
Pending
Application number
JP2007308040A
Other languages
English (en)
Inventor
Shohei Nishida
昌平 西田
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.)
Schneider Electric Japan Holdings Ltd
Original Assignee
Digital Electronics 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 Digital Electronics Corp filed Critical Digital Electronics Corp
Priority to JP2007308040A priority Critical patent/JP2009134366A/ja
Publication of JP2009134366A publication Critical patent/JP2009134366A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

【課題】ニーモニック形式のプログラムにおける不正入力を防止する。
【解決手段】インストラクションリストプログラム(IL)を作成するインストラクションリスト(IL)エディタ2において、入力支援部21は、セル形式で命令およびオペランドの入力を可能にする画面を表示する。フォーマットエラーチェック部22aは、入力された命令およびオペランドが適正であるか否かをチェックする。入力支援部21は、入力された命令およびオペランドが適正である場合のみ、これらの入力を受け入れ、データ管理部23にそれらを書き替えるように指示する。データ管理部23は、作業メモリ41に展開されているILプログラムおよびラダープログラムに共通の命令およびオペランドのデータを書き替える。セル単位で入力が可能になると、ILプログラムにおける命令およびオペランドの変化がラダープログラムに同時に反映されることになる。
【選択図】図1

Description

本発明は、シーケンス制御に用いられるプログラムを作成するエディタ装置、エディタプログラムおよびそれを記録した記録媒体に関するものである。
プログラマブルロジックコントローラ(以降、PLCと称する)などと呼ばれる制御装置は、シーケンス制御をはじめとする各種制御を制御システムにおいて実現するために、ユーザが作成したプログラム(ロジックプログラム)を実行する。PLCは、CPUおよびメモリを中心とするハードウェアの部分と、このハードウェアの部分にプログラムを実行させるシステムプログラムなどのソフトウェアの部分を備えている。
ユーザが作成するプログラムは、PLCに所望の制御動作をさせる基本となる制御フローにしたがって、各種の命令語を組み合わせることによって構築される。このようなプログラムの作成においては、コンピュータの専門知識を持たなくてもロジックプログラムを簡単に作成できるように、ラダープログラム(シーケンスプログラム)のようなグラフィカルな独自のプログラミング言語が用いられており、他にも利用者に使いやすい各種のプログラミング言語が次々と開発されるようになった。現在、IEC(International Electrotechnical Commission) において、標準のプログラミング言語が制定されている(IEC 6 1131-3 )。それは、SFC(Sequential Function Chart)、LD(Ladder Diagram)、IL(Instruction List)、FBD(Function Block Diagram)およびST(Structured Text)の5言語である。
例えば、グラフィック言語であるLD(ラダー図)は、命令記号のようなオブジェクトを用いて比較的容易にラダー回路を設計することができるので広く普及しており、現在、最もよく用いられているプログラミング言語である。また、テキスト言語であるインストラクションリスト(IL)は、オペコード(命令)とオペランド(変数等)とからなるニーモニック形式により、行に分かれた命令シーケンスで記述される。
ラダー図は命令がシンボル化されているので、視覚的に分かりやすいが、命令を選択して決定するという操作が必要となるため、プログラミングに手間がかかる。また、インストラクションリストは、テキスト形式であるので、プログラミングを速くすることができるが、視覚的には分かりにくい。このように、ラダー図およびインストラクションリストは、相反する特徴を有しているが、ともにリレーシーケンス回路を基本にしているため、相互の特徴を補うことを目的として、変換や複合利用が試みられてきた。
例えば、引用文献1には、ラダー図形式からニーモニック形式へのプログラム変換について開示されている。また、特許文献2には、ラダー図と、当該ラダー図の指定された部分をニーモニック形式で編集可能に表示するコマンドラインとを同一の画面に表示して、ニーモニック形式でラダー図を編集することが開示されている。また、特許文献3には、ニーモニック形式のプログラムと、当該プログラムの指定されたステップをラダー図形式で編集可能に表示するコマンドラインとを同一の画面に表示して、ラダー図形式で当該プログラムを編集することが開示されている。具体的には、コマンドラインにてラダー図の命令シンボルで上記のプログラムを編集すると、ニーモニック形式のプログラムが書き替えられて表示される。
特開2003−195912号公報(2002年7月11日公開) 特開平5−19816号公報(1993年1月29日公開) 特開平5−19817号公報(1993年1月29日公開)
ラダー図は、図形式で表現するプログラミング言語であるため、入力制限がかけられており、不正な入力が不可能になっている。このため、特許文献1に開示されたようなラダー図形式からニーモニック形式へのプログラム変換や、特許文献2に開示されたようなニーモニック形式のプログラムのラダー図形式による編集は、エラーのない状態で円滑に行うことが可能である。ところが、インストラクションリストのプログラミングは文字列の入力で行われるので、記述ミス等による不正入力も可能となる。このため、ニーモニック形式で表現されたプログラムをラダー図形式に変換する場合は、ニーモニック形式のプログラムが全て正しく記述されているか確認できてからでないと変換することができなかった。
また、特許文献2に開示された編集方法では、コマンドラインにてニーモニック形式のプログラムを編集すると、内部的なデータの編集とともに、ラダー図の該当部分もそれに合わせて変換される。しかしながら、ニーモニック形式での入力には上記のような不正入力の可能性があるため、エラー処理が必要であるが、それについては特許文献2には開示されていない。
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、ニーモニック形式のエディタにおいて不正入力を防止することにある。また、本発明の他の目的は、ニーモニック形式のプログラムからラダー図形式のプログラムへの変換処理を効率的に行うことにある。
本発明に係るエディタ装置は、ニーモニック形式の第1プログラムを作成する第1エディタ手段と、ラダー図形式の第2プログラムを作成する第2エディタ手段とを備えたエディタ装置において、上記の課題を解決するために、前記第1エディタ手段および第2エディタ手段によって作成される前記両プログラムに共通する共通データを記憶するデータ記憶手段を備え、前記第1エディタ手段が、前記第1プログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示する画面表示手段と、前記入力表示領域に入力された前記要素が適正であるか否かを判定する適否判定手段と、適正であると判定された前記要素についての前記共通データを前記データ記憶手段において書き込むデータ書込手段とを含んでいることを特徴としている。
上記の構成では、第1エディタ手段において、画面表示手段によって表示された入力表示画面の入力表示領域に、ユーザによって要素(命令や当該命令に付随するオペランド等)が入力されると、適否判定手段によって、当該要素が適正であるか否かが判定される。入力された要素が適正であると判定されると、データ書込手段によって、当該要素についての共通データがデータ記憶手段に書き込まれる。また、ユーザがキーボードなどで要素を直接入力している場合、タイプミスによって誤った要素が入力されると、適否確認手段によって、当該要素が適正でないと判定される。この場合、当該要素についての共通データはデータ記憶手段に書き込まれない。
このように、第1プログラムの要素を入力表示画面の入力表示領域に一つずつ入力する毎に当該要素の適否が判定され、適正な要素の共通データのみがデータ記憶手段に書き込まれる。これにより、不正入力が要素の入力毎に防止されるとともに、第1および第2プログラムについての共通データが更新されるので、第1エディタ手段で入力された要素が第2プログラムにリアルタイムで反映される。それゆえ、第1エディタ手段から第2エディタ手段に切り替えたときに、第2プログラムにおいて、その反映された要素の状態を確認することができる。また、ラダー図形式の第2プログラムで入力された要素についても、データ記憶手段に共通データが書き込まれるので、第2プログラムで入力された要素が第1プログラムにリアルタイムで反映される。
前記エディタ装置は、前記入力表示領域に入力すべき前記要素の内容について案内表示する案内表示手段を備えていることが好ましい。これにより、入力表示領域に入力すべき要素の内容を容易に把握することができる。また、前記案内表示手段は、入力および確定した前記要素を表示する文字より薄く案内表示することが好ましい。これにより、案内表示と確定した要素とを容易に区別することができ、より一層、入力表示領域に入力すべき要素の内容を容易に把握することができる。
前記エディタ装置において、前記画面表示手段は、前記第2プログラムの行番号と前記第1プログラムのステップ番号とを木構造的に対応付けて表示する対応関係表示領域を前記入力表示画面に表示することが好ましい。これにより、第2プログラムの行単位で第1プログラムを表示することができる。したがって、第1プログラムを狭い範囲で表示する場合に、第2プログラムの行単位で第1プログラムを表示して、表示エリアを有効に利用することができる。
本発明に係る他のエディタ装置は、ニーモニック形式のプログラムを作成するエディタ装置において、上記の課題を解決するために、前記プログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示する画面表示手段と、前記入力表示領域に入力すべき前記要素の内容について、入力および確定した前記要素を表示する文字より薄く案内表示する案内表示手段とを備えていることを特徴としている。
上記の構成では、画面表示手段によって表示された入力表示画面の入力表示領域に、ユーザによって要素(命令や当該命令に付随するオペランド等)が入力され、当該命令が確定すると、その要素が入力表示領域に表示される。また、入力表示領域には、案内表示手段によって、入力すべき要素の内容について、確定した要素を表示する文字より薄く案内表示される。これにより、入力表示領域に入力すべき要素の内容を容易に把握することができる。
本発明のエディタプログラムは、コンピュータを前述のいずれかのエディタ装置として機能させるためのエディタプログラムであって、当該コンピュータを上記各手段として機能させるプログラムである。また、このエディタプログラムは、コンピュータ読み取り可能な記録媒体に記録される。このように、エディタプログラムをコンピュータに読み取らせて実行させることにより、前記エディタ装置を実現することができる。
本発明に係るエディタ装置は、以上のように、ニーモニック形式の第1プログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示し、第1プログラムの要素を入力表示画面の入力表示領域に一つずつ入力する毎に当該要素の適否を判定し、適正な要素の共通データのみをデータ記憶手段に書き込む。これにより、不正入力が要素の入力毎に防止されるとともに、第1プログラムおよびラダー図形式の第2プログラムについての共通データが更新されるので、第1エディタ手段で入力された要素が第2プログラムにリアルタイムで反映される。したがって、本発明は、第1プログラムから第2プログラムへの変換を効率的に行うことができるという効果を奏する。
また、本発明に係る他のエディタ装置は、以上のように、ニーモニック形式のプログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示し、前記入力表示領域に入力すべき前記要素の内容について、確定した前記要素を表示する文字より薄く案内表示する案内表示するので、入力表示領域に入力すべき要素の内容を容易に把握することができる。したがって、ニーモニック形式のプログラムの作成を効率的に行うことができるという効果を奏する。
本発明の一実施形態について図1ないし図6に基づいて説明すると、以下の通りである。
本実施の形態に係るエディタ装置は、図1に示すように、エディタコンピュータ1によって構成されている。エディタコンピュータ1は、CPU、メモリ(RAM、ROMなど)、外部記憶装置(ハードディスクドライブ、MOドライブなど)、表示装置および入力装置(キーボード、マウスなど)を有している。また、エディタコンピュータ1は、図1に示すように、インストラクションリストエディタ(図中、ILエディタ;以降「ILエディタ」と称する)2、ラダーエディタ3、制御部4およびデータ記憶部5を備えている。
制御部4は、ハードウエア(CPUやメモリなど)およびソフトウエア(オペレーティングシステムなど)によって実現される機能ブロックであり、アプリケーションプログラムの実行や周辺機器の動作を制御する部分である。制御部4は、その機能を果たすために作業メモリ41を有している。作業メモリ41は、RAMなどによって構成され、ILエディタ2およびラダーエディタ3がプログラムを展開するためなどに用いられる。また、作業メモリ41は、ILエディタ2およびラダーエディタ3によってILプログラムおよびラダープログラム、ならびに両プログラムに共通するデータが展開されている。このデータとしては、ラベル、命令、オペランドの各データが挙げられる。
また、制御部4は、アプリケーションプログラムであるILプログラミングソフトウェアおよびラダープログラミングソフトウェアを実行することにより、ILエディタ2およびラダーエディタ3を実現する。ILエディタ2およびラダーエディタ3は、エディタコンピュータ1と分離可能に構成される記録媒体に記録され、この記憶媒体からエディタコンピュータ1にインストールすることが可能である。また、エディタコンピュータ1は、両エディタ2,3を備えることによりエディタ装置として機能する。
ILエディタ2およびラダーエディタ3は、シーケンスプログラム(ロジックプログラム)を作成する。シーケンスプログラムは、ユーザがPLCやPLC機能を有する機器に実現させたい制御フロー(制御手順)をユーザによって組み上げられたロジックで規定している。
両エディタ2,3は、シーケンスプログラムの作成のために各種の命令を用意している。このような命令としては、a接点(Normal Open)、b接点(Normal Close)、コイル出力、コイル反転出力、ジャンプ、サブルーチンジャンプ(サブルーチン処理開始)などの基本命令を始めとして、演算命令、比較命令、タイマ命令、カウンタ命令などが挙げられる。
上記の記録媒体(プログラムメディア)は、コンピュータに読み取り可能な記録媒体であり、磁気テープやカセットテープなどのテープ系、フレキシブルディスクやハードディスクなどの磁気ディスク系、CD−ROM、MO、MD、DVDなどの光ディスク系、ICカード(メモリカードを含む)、光カードなどのカード系が好適である。その他、上記のプログラムメディアは、マスクROM、EPROM、EEPROM、フラッシュROMなどによる半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
また、エディタコンピュータ1が、インターネットを含む通信ネットワークと接続可能な環境に置かれていれば、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。ただし、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予めエディタコンピュータ1に格納されるか、あるいは別な記録媒体からインストールされるものであことが好ましい。
ILエディタ2は、ニーモニック形式のプログラム(ILプログラム)を作成するためにエディタコンピュータ1に実現されるプログラミング機能である。このILエディタ2は、入力支援部21と、エラーチェック部22と、データ管理部23と、切替制御部24とを有している。
入力支援部21は、プログラミングのためのユーザによる入力作業を支援するために、図2に示すようなIL画面101を表示する。IL画面101は、行番号表示領域101a、ステップ番号表示領域101b、ラベル表示領域101c、命令表示領域101dおよびオペランド表示領域101eを含んでいる。また、ラベル表示領域101c、命令表示領域101dおよびオペランド表示領域101eは、図中破線で示すように、セル形式に区分された領域であるセル110によって形成されている。この破線は、図において便宜上描かれているが、実際には表示されていない。これにより、セル110を意識することなく、入力作業を行うことができる。
行番号表示領域101aは、ILプログラムに対応するラダープログラムの行番号を表示するために、IL画面101の左端に設けられている。ステップ番号表示領域101bは、ILプログラムのステップ番号を表示するために、行番号表示領域101aの右隣に設けられている。ステップ番号は、行番号に対応しており、例えば、ラダープログラムの行番号2の行にはILプログラムのステップ番号1,2,4の命令が対応している。このように、入力支援部21は、ラダープログラムの行番号とILプログラムのステップ番号とを木構造で関連付けている。
ラベル表示領域101cは、メインプログラムの開始・終了、サブルーチンの開始・終了などを表すラベルを表示するために、ステップ番号表示領域101bの右隣に設けられている。ラベル表示領域101cにおいては、メインプログラムの開始・終了、サブルーチンの開始・終了を表すラベル以外の通常ラベルはユーザによる編集が可能である。
命令表示領域101dは、ILエディタ2およびラダーエディタ3で共通して規定されている命令をアルファベットで表記した略号の表示およびユーザの入力のために設けられている。入力支援部21は、命令表示領域101dにおいてセル110が選択されると、当該セルを命令入力可能な状態にする。また、入力支援部21は、当該セルが右クリック操作されると、当該セルに入力可能な命令の一覧のリストボックスを表示する。また、入力支援部21は、選択されたセル110に命令が直接またはリストボックスによって入力されると、入力された命令をエラーチェック部22に渡し、エラーチェック部22によって、当該命令が不正な命令であると判定された場合、図3に示すように、そのことをユーザに報知するダイアログボックス103をIL画面101上に表示する。また、入力支援部21は、入力された命令がエラーチェック部22によって適正であると判定されると、データ管理部23にデータの書き替えを指示する。
オペランド表示領域101eは、各命令に対応するオペランドを表示するために命令表示領域101dの右隣に設けられている。オペランド表示領域101eは、命令に付随するオペランドの最大数のセル数が用意されている。オペランド表示領域101eには、後述するSOR命令(行の開始を示す)についてもオペランドが入力可能なセル110が設けられている。このセル110は、当該行についてのコメントを入力するために設けられており、任意の文字列が入力可能である。
入力支援部21は、入力を補助する情報を表示するヘルプ情報表示部21aを有している。具体的には、このヘルプ情報表示部21aは、オペランド表示領域101eに命令に応じて表示すべきオペランドの内容を表示する。ヘルプ情報表示部21aによって、オペランドの入力前に表示される文字の色は、入力後の文字より薄い色(淡色)となっている。
なお、ILエディタ2では、行の開始、分岐開始、分岐および分岐終了を命令として扱い、SOR(行開始;Start of Rang)、BS(分岐開始)、B(分岐)およびBE(分岐終了)と表される。具体的には、図4(a)に示すILプログラムにおけるSOR命令、BS命令、B命令、BE命令が、それぞれ図4(b)に示すラダープログラムにおける第1行、当該第1行からの分岐、当該分岐から分岐した分岐行、当該分岐行と第1行との合流に対応している。
なお、入力支援部21は、行の区切りを明確にするため、ラベル表示領域101aに表示するラベルの文字列と、命令表示領域101bに表示するSOR命令の文字列とを他の文字列表示色と異なる色で表示する。
エラーチェック部22は、入力支援部21の指示を受けて、入力された命令およびオペランドのエラーをチェックする。このために、エラーチェック部22は、フォーマットエラーチェック部22aと論理エラーチェック部22bとを有している。
フォーマットエラーチェック部22aは、入力された命令が規定の命令に該当するか否かを判定する。具体的には、フォーマットエラーチェック部22aは、前述のリストボックスから入力された命令については規定の命令であるため、そのように判定するが、ユーザによって直接入力された命令については、タイプミスされた場合、規定の命令ではない(フォーマットエラーがある)と判定する。また、フォーマットエラーチェック部22aは、入力されたオペランドが予め定められた条件を満たすか否かを判定する。論理エラーチェック部22bは、命令の配置が適正な論理にしたがっているか否かを判定する。具体的には、論理エラーチェック部22bは、出力コイルの次に接点が配置されるような論理上の誤りがないかどうか判定する。
データ管理部23は、入力支援部21によってデータの書き替えを指示されると、作業メモリ41に展開されたILプログラムおよびラダーエディタに共通するデータ(共通データ)を書き替える。また、データ管理部23は、入力支援部21によってILプログラムの保存が指示されると、ILファイルというファイル形式でハードディスク装置等によって構成されるデータ記憶部5に保存する。また、入力支援部21は、ILファイルをデータ記憶部5から読み出して、PLCやPLC機能を有する機器にダウンロードする。
切替制御部24は、ILエディタ2からラダーエディタ3への切り替え(画面切替)がユーザによって指示されると、切替指示を受けたことと、ラダーエディタ3に反映すべきILエディタ2での最新の情報とをラダーエディタ3に渡す。
具体的には、切替制御部24は、データ管理部23に共通データの書き替え有無を問い合わせ、その結果をラダーエディタ3における後述する切替制御部34に通知する。通知の内容は、共通データの書き替えがなかった場合は、そのことであり、共通データの書き替えがあった場合は、どの共通データが書き替えられたかという情報である。
また、切替制御部24は、上記の最新の情報として、IL画面101上で現在選択されているセル110の情報(選択範囲)をラダーエディタ3に渡す。例えば、命令表示領域101dにおいて、ある命令のセル110が選択されている場合、当該命令が選択されていることが切替制御部34に通知され、ある行に含まれる全ての命令について、行番号、ステップ番号、ラベル、命令およびオペランドのセル110(行全体のセル110)が選択されている場合、そのことが切替表示部33に通知される。行全体を範囲指定する場合、SOR命令を含むステップから次のSORたまはラベルの手前のステップまでが選択される。
切替制御部24は、ラダーエディタ3からILエディタ2への切り替え(画面切替)について、切替指示を受けたことと、ILエディタ2に反映すべきラダーエディタ3での最新の情報とをラダーエディタ3から受け取ると、切替処理を行う。具体的には、切替制御部24は、切替制御部34からラダーエディタ3側で共通データの書き替えがあったことを通知されると、当該共通データをデータ管理部23に読み出すように指示し、データ管理部23から取得した当該共通データを入力支援部21に渡す。また、切替制御部24は、切替制御部34からラダーエディタ3側で共通データの書き替えがなかったことを通知されると、上記のようにデータ管理部23を通じて作業メモリ41から共通データを読み出すことはしない。また、切替制御部24は、後述するラダー画面201(図5参照)上で現在選択されている行、命令、ラベル、オペランドまたは行コメントについての情報を切替制御部34から取得すると、入力支援部21にそれを通知する。
入力支援部21は、ユーザによるラダーエディタ3への切替指示を受けると、切替制御部34に上記の切替処理を行うように指示するとともに、ラダーエディタ3からの切替通知を切替制御部24より受けると、ラダーエディタ3での最新の情報をILエディタ2に反映させる処理を行う。具体的には、入力支援部21は、ラダーエディタ3側で共通データの書き替えがあったときに、データ管理部23が作業メモリ41から読み出した共通データに基づいて、IL画面101の各セル110における行、ステップ、ラベル、命令およびオペランドの表示を更新する。また、入力支援部21は、切替制御部34から受けたラダー画面201上で現在選択されている行、命令、ラベル、オペランドまたは行コメントについての情報に基づいて、それに対応した選択されている単一のセル110の周囲または複数のセル全体の周囲を、太枠で囲んで表示したり、強調色で表示したりする。
ラダーエディタ3は、ラダー図形式のプログラム(ラダープログラム)を作成するためにエディタコンピュータ1に実現されるプログラミング機能である。このラダーエディタ3は、入力支援部31と、エラーチェック部32と、データ管理部33と、切替制御部34とを有している。
入力支援部31は、プログラミングのためのユーザによる入力作業を支援するために、図5に示すようなラダー画面201を含むメイン画面(図示せず)を表示する。ラダー画面201においては、ラダープログラムが上下方向にスクロール自在に表示され、ラダープログラムには各行の左側母線には行番号が付記されている。上記のメイン画面におけるツールバーには、プログラミングのために必要な入力を行うためのアイコンが設けられている。当該アイコンとしては、行、分岐、各種命令についてのアイコンが用意されている。入力支援部31は、アイコンがユーザによってクリック操作されると、ラダープログラムにおいてユーザによって選択された箇所に当該アイコンに示す対象(行、分岐、各種命令)のシンボル(命令記号)を追加する。
エラーチェック部32は、入力支援部31の指示を受けて、入力された命令およびオペランドのエラーをチェックする。このエラーチェック部32は、前述の論理エラーチェック部22bと同様、命令の配置が適正な論理にしたがっているか否かを判定する。
データ管理部33は、入力支援部31によってデータの書き替えを指示されると、作業メモリ41に展開された前述の共通データを書き替える。また、データ管理部33は、入力支援部31によってラダープログラムの保存が指示されると、ラダーファイルというファイル形式でデータ記憶部5に保存する。また、入力支援部31は、ラダーファイルをデータ記憶部5から読み出して、PLCやPLC機能を有する機器にダウンロードする。
切替制御部34は、ラダーエディタ3からILエディタ2への切り替え(画面切替)がユーザによって指示されると、切替指示を受けたことと、ILエディタ2に反映すべきラダーエディタ3での最新の情報とをILエディタ2に渡す。
具体的には、切替制御部34は、データ管理部33にデータの書き替え有無を問い合わせ、その結果を、切替制御部24が切替制御部34にするのと同様に、ILエディタ2における切替制御部24に通知する。
また、切替制御部34は、上記の最新の情報として、ラダー画面201上で現在選択されている命令、ラベル、行(単一の行または複数の行)の情報(選択範囲)をILエディタ2に渡す。例えば、ラダー画面201に表示されているラダープログラムにおいて、ある命令のシンボルが選択されている場合、当該シンボルが選択されていることが切替制御部24に通知され、ある行が選択されている場合、そのことが切替表示部24に通知される。ラダープログラムにおける行の選択は、前述の行番号の表示部分をクリック操作することによって行われる。
切替制御部34は、ILエディタ2からラダーエディタ3への切り替え(画面切替)について、切替指示を受けたことと、ラダーエディタ3に反映すべきILエディタ2での最新の情報とをILエディタ2から受け取ると、切替処理を行う。具体的には、切替制御部34は、切替制御部24からILエディタ2側で共通データの書き替えがあったことを通知されると、当該共通データをデータ管理部33に読み出すように指示し、データ管理部33が作業メモリ41から読み出した当該共通データを入力支援部31に渡す。また、切替制御部34は、切替制御部24からILエディタ2側で共通データの書き替えがなかったことを通知されると、上記のようにデータ管理部33を通じて作業メモリ41から共通データを読み出すことはしない。また、切替制御部34は、IL画面101上で現在選択されている行、命令、ラベル、オペランドまたは行コメントについての情報を切替制御部24から取得すると、入力支援部31にそれを通知する。
入力支援部31は、ユーザによるILエディタ2への切替指示を受けると、切替制御部34に上記の切替処理を行うように指示するとともに、ILエディタ2からの切替通知を切替制御部34より受けると、ILエディタ2での最新の情報をラダーエディタ3に反映させる処理を行う。具体的には、入力支援部31は、ILエディタ2側で共通データの書き替えがあったときに、データ管理部33が作業メモリ41から読み出した共通データに基づいて、ラダー画面201のラダープログラムにおける行、ステップ、ラベル、命令、オペランドおよび行コメントの表示を更新する。また、入力支援部31は、切替制御部24から受けたIL画面101上で現在選択されている行、命令、ラベル、オペランドおよび行コメントについての情報に基づいて、それに対応した選択されている行、命令、ラベル、オペランドおよび行コメントを含む矩形の範囲を、太枠で囲んで表示したり強調色で表示したりする。
ここで、上記のように構成されるエディタコンピュータ1の動作をILエディタ2によるプログラミングを中心に説明する。
まず、ユーザによって、IL画面101のラベル入力領域101c、命令入力領域101dおよびオペランド入力領域101eの各セル110に、ラベル、命令およびオペランドが入力される。すると、入力支援部21は、入力されたラベル、命令およびオペランドについての共通データの書き替えをデータ管理部23に指示する。データ管理部23は、その指示を受けて、作業メモリ41に展開されているILプログラムにおいて、当該共通データを書き替える。
なお、図2に示すスタートラベル“MAIN START”は、ILプログラムの最初のステップ(ラダープログラムでは最初の行)である。このため、入力支援部21は、新規のILプログラム作成のためにIL画面101が表示されるときに、ユーザの入力を受けることなく自動的にデータ管理部23にスタートラベルの共通データを書き込むように指示する。
また、入力された命令(略号)およびオペランドについては、入力支援部21がフォーマットエラーの有無のチェックをエラーチェック部22に指示する。エラーチェック部22は、その指示を受けて、フォーマットエラーチェック部22aに上記の命令およびオペランドにフォーマットエラーの有無をチェックする。例えば、フォーマットエラーチェック部22aは、スタートラベルおよびJSR(サブルーチンジャンプ)命令の次のステップでは、SOR命令しか入力が許可されないので、他の命令が入力されると、フォーマットエラーがあったものとして入力支援部21に通知する。また、フォーマットエラーチェック部22aは、任意の命令の入力が可能なセル110において、ユーザによってキーボードを用いて直接入力された命令がタイプミスにより存在しない命令である場合も、フォーマットエラーがあったものとして入力支援部21に通知する。
入力支援部21は、フォーマットエラーチェック部22aからのフォーマットエラーありの通知を受けると、その入力された命令やオペランドについて、図3に示すようなダイアログボックス103を表示する。また、入力支援部21は、フォーマットエラーチェック部22aからのフォーマットエラーなしの通知を受けると、その入力された命令やオペランドを確定するように、データ管理部23に当該命令やオペランドの共通データの書き込みを指示する。データ管理部23は、その指示を受けて、作業メモリ41に当該共通データを書き込む。
このように、セル110への命令およびオペランドの入力毎にフォーマットエラーの有無がチェックされる。
また、入力支援部21のヘルプ情報表示部21aは、SOR命令について、オペランド入力領域101eにおけるオペランド1のセル110に入力項目(要素)の内容として「行コメント」を淡色で表示して、ユーザに行コメントの入力を促す。また、ヘルプ情報表示部21aは、規定のオペランドを有する命令について、オペランド入力領域101eにおけるオペランド1〜4の該当するセル110に入力項目の内容としてオペランドの内容を示す略号などを淡色で表示する。例えばPID演算を行うPID命令では、オペランド1のセル110にホームポジションを表す“HP”が表示され、オペランド2〜4にはそれぞれソースS1〜S3が表示され、オペランド5にはディスティネーションD1が表示される。ソースS1〜S3には、それぞれ現在値、目標値、タイバック値が入力可能であり、ディスティネーションD1には出力値を設定可能である。
ユーザの指示によって、ILエディタ2(IL画面101の表示)からラダーエディタ3(ラダー画面201の表示)への切り替えが指示されると、入力支援部21は、当該指示を受けたことを切替制御部24に通知する。切替制御部24は、その通知を受けて、切替指示を受けたこととをラダーエディタ3の入力支援部31に通知するとともに、書き替えられた共通データについての情報を切替制御部34に渡す。すると、切替制御部34は、データ管理部33に当該共通データの読み出しを指示し、その指示に応じて作業メモリ41から読み出された共通データを入力支援部31に渡す。すると、入力支援部31は、ラダー画面201の表示をIL画面101の表示から切り替えるとともに、ラダー画面201におけるラダープログラムに、取得した共通データの内容を反映させる。これにより、ILエディタ2で更新されたILプログラムの最新の状態がラダーエディタ3におけるラダープログラムに反映される。
例えば、図6(a)に示すように、ILプログラムにおいて、BE命令の次に命令を挿入すると、図6(b)に示すように、ラダープログラムの分岐路における上記のBE命令に相当する分岐終了の後の矩形で示す部分に上記の命令が追加される。
また、ユーザの指示によって、ラダーエディタ3(ラダー画面201の表示)からILエディタ2(IL画面101の表示)への切り替えが指示されると、入力支援部31は、当該指示を受けたことを切替制御部34に通知する。切替制御部34は、その通知を受けて、切替指示を受けたこととをILエディタ2の入力支援部21に通知するとともに、書き替えられた共通データについての情報を切替制御部24に渡す。すると、切替制御部24は、データ管理部23に当該共通データの読み出しを指示し、その指示に応じて作業メモリ41から読み出された共通データを入力支援部21に渡す。すると、入力支援部21は、IL画面101の表示をラダー画面201の表示から切り替えるとともに、IL画面101におけるILプログラムに、取得した共通データの内容を反映させる。これにより、ラダーエディタ3で更新されたラダープログラムの最新の状態がILエディタ2におけるILプログラムに反映される。
以上のように、エディタコンピュータ1におけるILエディタ2は、1つの入力項目を1つのセル110に入力するというセル形式のIL画面101をユーザインターフェースとして提供する。また、各セル110には、キーボードによる入力を受け付ける。しかも、入力支援部21およびエラーチェック23によって、セル110への入力毎にフォーマットエラーの有無をチェックし、フォーマットエラーがない場合にのみ入力を確定して、確定した入力項目をセル110に表示する。これにより、入力できたことがフォーマットエラーのないことになるので、不正入力(誤入力)を防止することができ、従来のエディタで、ILプログラムのプログラミングが完了した後にフォーマットエラーをチェックしていたように時間がかからない。
ILエディタ2にて入力された項目についてのデータは、ラダーエディタ3と共通の共通データであるので、IL画面101にて入力が可能となったと項目は、ラダープログラムにも同時に反映される。したがって、ILエディタ2からラダーエディタ3への切り替えると、ILプログラムにおいて更新された内容がリアルタイムにラダープログラムに反映される。
また、ヘルプ情報表示部21aによって、セル110に入力すべき内容が案内表示されるので、入力する内容が分からない場合に効率的に入力することができる。これは、セル形式で入力する構成によって可能になる。また、ヘルプ情報表示部21aによって、入力および確定した前記要素が表示する文字より薄く案内表示されるので、より一層、効率的な入力が可能となる。
さらに、ラダープログラムの行番号とILプログラムのステップ番号とが木構造で関連付けられている。これにより、ラダープログラムの行単位でILプログラムを表示することができる。したがって、IL画面101を狭い範囲で表示する場合に、ラダープログラムの行単位でILプログラムを表示して、表示エリアを有効に利用することができる。
なお、本実施の形態では、ILエディタ2およびラダーエディタ3を独立して設けているが、両エディタ2,3を統合したエディタとして設けてもよい。この場合、エラーチェック部22,32、データ管理部23,33および切替制御部24,34をそれぞれ共通化することができる。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
本発明のエディタ装置は、ニーモニック形式のプログラムの作成において、セル形式の入力領域に命令等のプログラムを構成する要素を入力する毎にフォーマットエラーの有無をチェックし、フォーマットエラーがない場合にのみ入力を確定して、確定した要素を入力領域に表示することにより、不正入力を防止することができるので、ニーモニック形式のプログラムの作成に好適に利用できる。
本発明の実施形態に係るエディタコンピュータを含むシステムの構成を示すブロック図である。 上記エディタコンピュータにおけるILエディタが表示するILプログラムを作成するためのIL画面を示す図である。 上記IL画面上に表示される入力エラー報知のためのダイアログボックスを示す図である。 (a)はIL画面に表示されるILプログラムを示す図であり、(b)はラダー画面に表示される当該ILプログラムに対応するラダープログラムを示す図である。 上記エディタコンピュータにおけるラダーエディタが表示するラダープログラムを作成するためのラダー画面を示す図である。 (a)はIL画面に表示されるILプログラムにおいて命令が追加された状態を示す図であり、(b)はラダー画面に表示される当該ILプログラムに対応するラダープログラムにおいて上記命令が追加された状態を示す図である。
符号の説明
1 エディタコンピュータ(エディタ装置)
2 インストラクションリストエディタ(第1エディタ手段)
3 ラダーエディタ(第2エディタ手段)
5 データ記憶部(データ記憶手段)
21 入力支援部(画面表示手段)
21a ヘルプ情報表示部(案内表示手段)
22 エラーチェック部
22a フォーマットエラーチェック部(適否判定手段)
23 データ管理部(データ書込手段)
24 切替制御部
31 入力支援部
32 エラーチェック部
33 データ管理部
34 切替制御部
101 IL画面(入力表示画面)
101a 行番号表示領域(対応関係表示領域)
110 セル(入力表示領域)

Claims (7)

  1. ニーモニック形式の第1プログラムを作成する第1エディタ手段と、ラダー図形式の第2プログラムを作成する第2エディタ手段とを備えたエディタ装置において、
    前記第1エディタ手段および第2エディタ手段によって作成される前記両プログラムに共通する共通データを記憶するデータ記憶手段を備え、
    前記第1エディタ手段は、
    前記第1プログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示する画面表示手段と、
    前記入力表示領域に入力された前記要素が適正であるか否かを判定する適否判定手段と、
    適正であると判定された前記要素についての前記共通データを前記データ記憶手段において書き込むデータ書込手段とを含んでいることを特徴とするエディタ装置。
  2. 前記入力表示領域に入力すべき前記要素の内容について案内表示する案内表示手段を備えていることを特徴とする請求項1に記載のエディタ装置。
  3. 前記案内表示手段は、確定した前記要素を表示する文字より薄く案内表示することを特徴とする請求項2に記載のエディタ装置。
  4. 前記画面表示手段は、前記第2プログラムの行番号と前記第1プログラムのステップ番号とを木構造的に対応付けて表示する対応関係表示領域を前記入力表示画面に表示することを特徴とする請求項1に記載のエディタ装置。
  5. ニーモニック形式のプログラムを作成するエディタ装置において、
    前記プログラムを構成する要素の入力を一つずつ受け入れるとともに確定した前記要素を表示するセル形式の入力表示領域を有する入力表示画面を表示する画面表示手段と、
    前記入力表示領域に入力すべき前記要素の内容について、確定した前記要素を表示する文字より薄く案内表示する案内表示手段とを備えていることを特徴とするエディタ装置。
  6. コンピュータを請求項1ないし5のいずれか1項に記載のエディタ装置として機能させるためのエディタプログラムであって、当該コンピュータを上記各手段として機能させるエディタプログラム。
  7. 請求項6に記載のエディタプログラムが記録されたコンピュータ読み取り可能な記録媒体。
JP2007308040A 2007-11-28 2007-11-28 エディタ装置、エディタプログラムおよびそれを記録した記録媒体 Pending JP2009134366A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007308040A JP2009134366A (ja) 2007-11-28 2007-11-28 エディタ装置、エディタプログラムおよびそれを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007308040A JP2009134366A (ja) 2007-11-28 2007-11-28 エディタ装置、エディタプログラムおよびそれを記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2009134366A true JP2009134366A (ja) 2009-06-18

Family

ID=40866212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007308040A Pending JP2009134366A (ja) 2007-11-28 2007-11-28 エディタ装置、エディタプログラムおよびそれを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2009134366A (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01244502A (ja) * 1988-03-25 1989-09-28 Fanuc Ltd Pcのプログラム表示方式
JPH045703A (ja) * 1990-04-23 1992-01-09 Sanyo Electric Co Ltd シーケンスプログラム作成装置
JPH04328605A (ja) * 1991-04-30 1992-11-17 Hitachi Ltd シーケンスプログラムのプログラミング方法および装置
JPH0519817A (ja) * 1991-07-17 1993-01-29 Fanuc Ltd シーケンス・プログラムの編集方式
JPH05334065A (ja) * 1992-06-02 1993-12-17 Hitachi Eng Co Ltd コンピュータプログラム開発支援装置及びその方法
JP2003241806A (ja) * 2002-02-15 2003-08-29 Omron Corp 開発支援装置及びプログラム製品
JP2004046711A (ja) * 2002-07-15 2004-02-12 Thk Co Ltd モータ制御プログラミングソフト

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01244502A (ja) * 1988-03-25 1989-09-28 Fanuc Ltd Pcのプログラム表示方式
JPH045703A (ja) * 1990-04-23 1992-01-09 Sanyo Electric Co Ltd シーケンスプログラム作成装置
JPH04328605A (ja) * 1991-04-30 1992-11-17 Hitachi Ltd シーケンスプログラムのプログラミング方法および装置
JPH0519817A (ja) * 1991-07-17 1993-01-29 Fanuc Ltd シーケンス・プログラムの編集方式
JPH05334065A (ja) * 1992-06-02 1993-12-17 Hitachi Eng Co Ltd コンピュータプログラム開発支援装置及びその方法
JP2003241806A (ja) * 2002-02-15 2003-08-29 Omron Corp 開発支援装置及びプログラム製品
JP2004046711A (ja) * 2002-07-15 2004-02-12 Thk Co Ltd モータ制御プログラミングソフト

Similar Documents

Publication Publication Date Title
Meinicke et al. Mastering software variability with FeatureIDE
JP4667386B2 (ja) 業務モデル図作成支援プログラム、業務モデル図作成支援方法、および業務モデル図作成支援装置
CN102460323B (zh) 用于可编程逻辑控制器的自由形式注释的系统和方法
EP1650619B1 (en) Sequence program editing apparatus
US9785416B2 (en) Presenting a custom view in an integrated development environment based on a variable selection
CN104823159A (zh) 用于改变人机界面设备中对象的方法和设备
JP3847585B2 (ja) エディタの登録装置、登録プログラムおよびそれを記録した記録媒体
JP4779842B2 (ja) オートサンプラ制御プログラム作成支援システム及び作成支援プログラム
JP2009134366A (ja) エディタ装置、エディタプログラムおよびそれを記録した記録媒体
CN121399552A (zh) 用于生成自动化系统的控制程序的方法和开发环境
JP3913414B2 (ja) エディタ装置およびエディタプログラムを記録した記録媒体
US20130117728A1 (en) Computer program interface
JP3795357B2 (ja) エディタ装置、エディタプログラムおよびそれを記録した記録媒体
JP3795473B2 (ja) エディタ装置およびエディタプログラムを記録した記録媒体
JP2002062910A (ja) エディタ装置およびエディタプログラムを記録した記録媒体
JP4387288B2 (ja) 制御用表示装置、エディタ装置、プログラムおよび記録媒体
JP4964036B2 (ja) エディタ装置およびエディタプログラム
JP2004178151A (ja) 表示制御装置、プログラム、および、そのプログラムが記録された記録媒体
JP4894602B2 (ja) 修正対象ファイル検索装置と修正対象ファイル検索方法および修正対象ファイル検索プログラム
JP5008520B2 (ja) 表示画面内へのデータ入力状況表示方法
CN112204480A (zh) 信息处理装置以及显示程序
JP4372739B2 (ja) プログラマブル表示器、制御プログラムおよびそのプログラムを記録した記録媒体、ならびに画面作成装置、画面作成プログラムおよびそのプログラムを記録した記録媒体
JP7447574B2 (ja) サポート装置、サポートプログラムおよびサポート方法
JP2001154835A (ja) 構造化プログラム編集装置、及び構造化プログラム編集プログラムを記録した記録媒体
Waters Beginners’ Guide to PowerShell and Visual Studio Code

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20090911

Free format text: JAPANESE INTERMEDIATE CODE: A621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110310

A131 Notification of reasons for refusal

Effective date: 20110322

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110513

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111206