JPH03237502A - Programmable controller - Google Patents

Programmable controller

Info

Publication number
JPH03237502A
JPH03237502A JP3331690A JP3331690A JPH03237502A JP H03237502 A JPH03237502 A JP H03237502A JP 3331690 A JP3331690 A JP 3331690A JP 3331690 A JP3331690 A JP 3331690A JP H03237502 A JPH03237502 A JP H03237502A
Authority
JP
Japan
Prior art keywords
board
processing
program
processor
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
JP3331690A
Other languages
Japanese (ja)
Inventor
Masaaki Yonezawa
正明 米澤
Sei Hasegawa
聖 長谷川
Takanao Tomioka
冨岡 孝直
Hiroshi Takeya
竹谷 浩
Yasunori Kawada
河田 泰紀
Koji Matsuoka
松岡 康二
Tetsuya Shiraishi
白石 哲哉
Takashi Kadowaki
隆 門脇
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP3331690A priority Critical patent/JPH03237502A/en
Publication of JPH03237502A publication Critical patent/JPH03237502A/en
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

PURPOSE:To increase the processing speed and to reduce the burden of a processor at the time of processing by constituting a system so that a one-bit processing processor directly reads out a program instruction from a program memory and executes it. CONSTITUTION:When the sequence control operation is started, a CPU 101 starts a BPU (one-bit processing processor) 102, and the BPU 102 successively reads out a program string from a program memory 104 to execute the processing from a load instruction. When an application instruction 1 to be executed in the CPU 101 is read out in accordance with successive advance of instructions, the BPU 102 transfers the control execution right to the CPU 101. Then, the application instruction 1 is executed on the side of the CPU 101. When the processing of the application instruction 1 is terminated, the CPU 101 reports the end to the BPU 102, and the BPU 102 reads out the next instruction. Thus, it is unnecessary for the CPU 101 to successively read out program instructions to determine the control execution right.

Description

【発明の詳細な説明】 〈産業上の利用分野〉 本発明は、工場の生産ラインを効率的に制御するF A
 (Factory Automation)分野また
は各種工業プロセスを制御するPA (Process
 Automation>分野において、シーケンス制
御プログラムが組み込まれ、各種の現場インテリジェン
ト機器等と情報の入出力処理を行うプログラマブル・コ
ントローラに関するものである。
[Detailed Description of the Invention] <Industrial Application Field> The present invention is an FA system that efficiently controls a factory production line.
PA (Process Automation) that controls the field of Factory Automation or various industrial processes.
The field of Automation relates to programmable controllers that incorporate sequence control programs and perform input/output processing of information with various on-site intelligent devices.

更に詳しくは、内部に設定されるマイクロプロセッサ周
辺部の情報処理機能と、I10ボード群との信号授受機
能と、シーケンス制御プログラムのプログラミング機能
とを有機的に結合したプログラマブル・コントローラに
関するものである。
More specifically, the present invention relates to a programmable controller that organically combines an information processing function of a peripheral part of a microprocessor set inside, a signal exchange function with an I10 board group, and a programming function of a sequence control program.

〈従来の技術〉 簗26図〜第29図は従来のプログラマブル・コントロ
ーラを用いたシステム例を表わす概念図である。
<Prior Art> Figures 26 to 29 are conceptual diagrams showing examples of systems using conventional programmable controllers.

プログラマブル・コントローラは、従来のシーケンス制
御方式で用いられたリレー配電盤の代替としてシーケン
ス制御プログラムがマイクロプロセッサに内蔵され、制
御対象について所望のシーケンス動作を効率良く実行さ
せるものである。
A programmable controller replaces the relay switchboard used in conventional sequence control systems, and has a sequence control program built into a microprocessor to efficiently execute desired sequence operations on a controlled object.

第26図のシステムにおいて、プログラマブル・コント
ローラU1は機械部品別ニジステムS1を制御し、プロ
グラマブル・コントローラU2は機械部品組立システム
S2と信号入出力を行って制御動作を実行し、更にプロ
グラマブル・コントローラUl、U2はバスBに接続さ
れてプリンタPを有するデスクトップ・コンピュータD
TCと通信することによりオペレータにシステム状況を
通知する。尚、デスクトップ・コンピュータDTCは、
通信回線りを通じて上位の中型または大型コンピュータ
MCにより管理される場合もある。
In the system shown in FIG. 26, a programmable controller U1 controls a system S1 for each mechanical component, a programmable controller U2 performs signal input/output with a mechanical component assembly system S2 to execute control operations, and a programmable controller U1, U2 is a desktop computer D connected to bus B and having a printer P.
Notifies the operator of the system status by communicating with the TC. Furthermore, the desktop computer DTC is
In some cases, it is managed by a higher-level medium-sized or large-sized computer MC through a communication line.

即ち、プログラマブル・コントローラUl、U2はそれ
ぞれ、システム31.32に対して、接点入出力処理、
モータの駆動及び停止処理、部品の位置決め処理、ラン
プの点灯及び消灯処理等のシーケンス制御動作を施して
いる。
That is, the programmable controllers Ul and U2 respectively perform contact input/output processing,
It performs sequence control operations such as motor drive and stop processing, component positioning processing, and lamp lighting and extinguishing processing.

次に、プログラマブル・コントローラU1に注目する。Next, attention will be paid to programmable controller U1.

プログラマブル・コントローラU1は数枚のボード機器
がユニット内のバック・ブレーン・バス(図示せず)に
装着された構成であり、装着されるボード機器は、当該
ユニットに電力を供給する電源ボードPS、マイクロプ
ロセッサを有してシーケンス制御の中核となるCPUボ
ード1、機械部品別ニジステムS1に設置される各種機
器とCPUボード1との情報伝達媒体となる数枚のI1
0ボード1、ベーシック・プログラム及びR3232C
ボート等が設定されてバスB上の他の機器と通信動作を
実行する通信ボードTである。
The programmable controller U1 has a configuration in which several board devices are attached to a back brain bus (not shown) in the unit, and the attached board devices include a power supply board PS that supplies power to the unit, A CPU board 1 that has a microprocessor and is the core of sequence control, and several I1s that serve as information transmission media between the CPU board 1 and various devices installed in the system S1 for each mechanical component.
0 board 1, basic program and R3232C
This is a communication board T on which a boat or the like is set and performs communication operations with other devices on the bus B.

このような構成において、プログラマブル・コントロー
ラUl内のCPUボード1は機械部品別ニジステムS1
に適合したシーケンス制#プログラムが組み込まれ、I
10ボードCからのシステム情報に従ってシーケンス制
御演算処理を実行し、I10ボードCを介して制御信号
を機械部品別ニジステムS1に送信し、所望のシーケン
ス動作を実行する。
In such a configuration, the CPU board 1 in the programmable controller Ul has a system S1 for each mechanical component.
A sequence system # program compatible with the I
Sequence control arithmetic processing is executed according to the system information from the I10 board C, and a control signal is transmitted to the system S1 for each mechanical component via the I10 board C to execute a desired sequence operation.

上記のようなシーケンス制御プログラムは、プログラム
作成ツール、例えばこの例ではテスクトップ・コンピュ
ータDTCのCR7画面上にて第27図に示すようなラ
ダー・プログラムを編集してCPUボード1に送信し、
CPUボード1では送信されたラダー・プログラムを第
28図に示すような形式に変換してシーケンス制御動作
を実行する。
The above sequence control program is created by editing a ladder program as shown in FIG. 27 using a program creation tool, for example, the CR7 screen of the desktop computer DTC in this example, and sending it to the CPU board 1.
The CPU board 1 converts the transmitted ladder program into the format shown in FIG. 28 and executes the sequence control operation.

CPUボード1の概略構成は第29因に示す通りである
The schematic configuration of the CPU board 1 is as shown in factor 29.

即ち、CPUボード1は、全体を制御するCPU11、
シーケンス制御演算を実行する1ビット処理用プロセッ
サBPIJ12、シーケンス制御プログラム列を格納す
るプログラム・メモリ13、制御演算動作に用いられる
データ・メモリ14、I10ボード1とのインターフェ
イスI/F15がアドレス・バスab、データ・バスd
bに並列接続されて構成される。
That is, the CPU board 1 includes a CPU 11 that controls the whole;
A 1-bit processing processor BPIJ12 that executes sequence control operations, a program memory 13 that stores a sequence control program string, a data memory 14 that is used for control operation operations, and an interface I/F 15 with the I10 board 1 is an address bus ab. , data bus d
b is connected in parallel.

そして、CPU11がプログラム・メモリ13から命令
を読み出し、第27図及び第28図に示すようなシーケ
ンス制御プログラムを開始すると、CPU11は第1ス
テツプの命令″LD”が1ビット処理命令であることを
判断し、1ビット処理用プロセッサBPU12側にアド
レス・バスab及びデータ・バスdbを切り替えてこの
命令“LD”を実行し、以後、同様にして1ビット命令
“OR”OUT”、“LD”を1ビット処理用プロセッ
サBPU12に与えるよう動作する。
Then, when the CPU 11 reads an instruction from the program memory 13 and starts a sequence control program as shown in FIGS. 27 and 28, the CPU 11 recognizes that the first step instruction "LD" is a 1-bit processing instruction. Then, the address bus ab and data bus db are switched to the 1-bit processing processor BPU12 side and this instruction “LD” is executed. Thereafter, the 1-bit instructions “OR”, “OUT” and “LD” are executed in the same way. It operates to provide the data to the 1-bit processing processor BPU12.

次に読み出される命令が数値比較命令、算術演算命令等
の応用命令であると、CPU11はアドレス・バスab
及びデータ・バスdbを自己側に切り替え、今度はCP
U11が命令実行動作を担当する。
If the next instruction to be read is an applied instruction such as a numerical comparison instruction or an arithmetic operation instruction, the CPU 11 uses the address bus ab
and data bus db to its own side, and now CP
U11 is in charge of instruction execution operations.

以下、同様にして、バス切り替え動作が行われて1ビッ
ト処理命令、応用命令がそれぞれBPU12またはCP
U11により実行される。
Thereafter, the bus switching operation is performed in the same way, and the 1-bit processing instruction and application instruction are transferred to the BPU 12 or the CPU, respectively.
Executed by U11.

得られた制御演算結果は、−時データ・メモリ14に蓄
えられ、CPU11は必要に応じて、I/F15を介し
てI10ボードC側へその制御演算結果を送信する。
The obtained control calculation result is stored in the -time data memory 14, and the CPU 11 transmits the control calculation result to the I10 board C side via the I/F 15 as necessary.

この時、CPUボード1は、複数枚のI10ボードCに
データを転送する場合、データ転送を行うI10ボード
とハンドシェイク信号を授受して転送を行う非同期式転
送と、CPUボードが予め定めた転送シーケンスに従っ
てデータ転送を行う同期式転送のいずれかの転送方式に
よって通信動作が行われる。
At this time, when the CPU board 1 transfers data to multiple I10 boards C, the CPU board 1 performs two types of transfer: asynchronous transfer, which transfers data by exchanging handshake signals with the I10 board performing the data transfer, and a predetermined transfer by the CPU board. The communication operation is performed using one of the synchronous transfer methods in which data is transferred according to a sequence.

また、通信ボードTはデスクトップ型コンピュータDT
Cからの指令を受け、内部に設定されているベーシック
・プログラムによりCPUボードC内のデータを読み取
り、R8232C等の通信ボートより当該ユニットの状
況をデスクトップ・コンピュータDTCへ送信する。
In addition, the communication board T is a desktop computer DT.
Upon receiving a command from C, the data on the CPU board C is read by a basic program set internally, and the status of the unit is sent to the desktop computer DTC from a communication port such as R8232C.

プログラマブル・コントローラU2も以上のプログラマ
ブル・コントローラU1と同様の構成で、同様の動作を
実行している。
The programmable controller U2 also has the same configuration as the programmable controller U1 described above, and performs the same operations.

〈発明が解決しようとする課題〉 しかしながら、CPU11はプログラム・メモリ13か
ら読み出した命令の種類を判断して自己または1ビット
処理用プロセッサBPU12の制御実行権を切り替えな
ければならず、切り替え動作におけるソフトウェア上、
ハードウェア上に煩わしさが発生しており、CPU11
が読み出した命令の内容を判断してからCPU11また
はBPU12を選択決定しているため、待ち時間が多く
処理に時間がかかるという欠点を有している。
<Problems to be Solved by the Invention> However, the CPU 11 must determine the type of instruction read from the program memory 13 and switch the control execution right for itself or the 1-bit processing processor BPU 12, and the software Up,
There is a problem with the hardware, and the CPU 11
Since the CPU 11 or BPU 12 is selected after determining the contents of the instruction read by the CPU 11, the CPU 11 or the BPU 12 has the disadvantage that there is a lot of waiting time and the processing takes a long time.

また、装着されるI10ボードは、入力点数、出力点数
がシステム設計時に決定され、CPUボード側には各々
のI10ボード毎のI10ドライバが予め設定されてい
るため、ユーザ特有のI10カードを使用するには、各
々のI10ボードについてI10ドライバを再設計しな
ければならないという欠点があった。
In addition, the number of input points and output points of the I10 board to be installed is determined at the time of system design, and the I10 driver for each I10 board is preset on the CPU board side, so a user-specific I10 card can be used. had the disadvantage that the I10 driver had to be redesigned for each I10 board.

I10ボードとのデータ転送に関しては、非同期式転送
と同期式転送のいずれかが採用されるが、非同期式転送
ではハンドシェイク信号授受の時間分転送時間がかかり
、同期式転送ではI10ボード側の異常状態を判別せず
に通信動作を実行するためシステムに悪影響を及ぼすと
いう欠点があった。
For data transfer with the I10 board, either asynchronous transfer or synchronous transfer is adopted, but asynchronous transfer takes time for handshake signal transmission and reception, and synchronous transfer requires an error on the I10 board side. This method has the disadvantage that communication operations are performed without determining the state, which adversely affects the system.

更に、シーケンス制御プログラムとして採用されるラダ
ー・プログラムは、通常、数百または数千ステップあり
、どこかで異常、エラーが発生した場合、エラー発生原
因を特定するにはこのラダー・プログラムの全体をチエ
ツクしなければならず、デバッグ作業も面倒で効率が悪
いという欠点があった。
Furthermore, ladder programs used as sequence control programs usually have hundreds or thousands of steps, so if an abnormality or error occurs somewhere, it is necessary to complete the entire ladder program to identify the cause of the error. This has the disadvantage that debugging is troublesome and inefficient.

また、シーケンス制御プログラムは制御動作の最初から
最後までに対応する1個のシーケンス制御プログラム(
ラダー・プログラム)を作成するため、工数がかかり、
しかも工程の一部のみを実行するような指定を行うこと
はできなかった。
In addition, the sequence control program is one sequence control program (
It takes a lot of man-hours to create a ladder program.
Moreover, it was not possible to specify that only a part of the process be executed.

本発明は以上のような問題を解決することを課題とし、
プログラマブル・コントローラ内部に設定されるマイク
ロプロセッサ周辺部の情報処理機能と、I10ボードと
の信号授受機能と、シーゲンス制御プログラミングS能
とを有機的に結合したプログラマブル・コントローラを
実現することを発明の目的としている。
The present invention aims to solve the above problems,
The purpose of the invention is to realize a programmable controller that organically combines the information processing function of the peripheral part of the microprocessor set inside the programmable controller, the signal exchange function with the I10 board, and the Siegen control programming S function. It is said that

く課題を解決するための手段〉 このため、本発明のプログラマブル・コントローラは次
のように構成される。
Means for Solving the Problems> Therefore, the programmable controller of the present invention is configured as follows.

シーケンス制御プログラムを読み出して実行する際の余
計な時間を省略し、処理速度を向上させるようにする。
To improve processing speed by omitting extra time when reading and executing a sequence control program.

CPUボードと通信ボードとの機能を融合させ、シーゲ
ンス処理と通信に関与するベーシック処理とを同一ボー
ド内処理とする。
The functions of a CPU board and a communication board are combined, and Sequence processing and basic processing related to communication are processed within the same board.

システム拡彊時であっても、ユーザ設計の■10ボード
を自由に装着できてシーケンス制御を容易に再設計、即
ち標準化を実現する標準I10ドライバを設計する。
To design a standard I10 driver that allows user-designed 110 boards to be freely installed even during system expansion, and allows for easy redesign of sequence control, that is, standardization.

CPUボードとI10ボードとのデータ転送の方式を新
規なものとして従来装置の欠点を解消する。
To solve the drawbacks of the conventional device by using a new data transfer method between a CPU board and an I10 board.

ラダー・プログラム実行時について、エラー発生時のエ
ラー発生箇所、発生時刻、デバッグ動作を容易にし、そ
のプログラミングにも改良を施す。
When executing a ladder program, we will make it easier to find the location and time of error occurrence and debug operations when an error occurs, and also make improvements to its programming.

以上の課題を解決した本発明の具体的な構成は、次の通
りである。
The specific configuration of the present invention that solves the above problems is as follows.

(1)制御対象と各種情報を授受するI10ボード群と
、シーケンス制御プログラムを実行して前記I10ボー
ド群を介して前記制御対象に制御信号を与えるプロセッ
サ・ボードとから構成されるプログラマブル・コントロ
ーラにおいて、前記プロセッサ・ボードは、 全体を制御し、前記シーケンス制御プログラム内の命令
の一部と、前記シーケンス制御プログラムの起動及び終
了指示を行い汎用的な演算処理、情報処理または制御動
作を行うベーシック・プログラムとを実行するプロセッ
サと、 前記シーケンス制御プログラムが格納されるプログラム
・メモリに直接接続し、前記プログラム・メモリから順
次命令を読み出して実行し、読み出した命令が前記プロ
セッサで実行すべきシーゲンス応用命令であるほこの命
令を前記プロセッサに与える1ビット処理プロセッサと
、 一時的にデータを記憶するデータ・メモリと、自己診断
プログラムを記憶する固定メモリと、上位コンピュータ
との通信動作に関与する通信インターフェイスと、 前記制御対象と各種情報を授受するI10ボードを接続
するI10バスに結合するためのI10インターフェイ
スと、 前記プロセッサと前記1ビット処理プロセッサと前記デ
ータ・メモリと前記固定メモリと前記通信インターフェ
イスと前記I10インターフェイスとを相互に結合する
内部バスと を備えたプログラマブル・コントローラ。
(1) In a programmable controller consisting of a group of I10 boards that exchange various information with a controlled object, and a processor board that executes a sequence control program and provides control signals to the controlled object via the group of I10 boards. , the processor board is a basic processor board that controls the entire system, issues part of the instructions in the sequence control program, starts and ends the sequence control program, and performs general-purpose arithmetic processing, information processing, or control operations. a processor that executes a program, and a Sequence application instruction that is directly connected to a program memory in which the sequence control program is stored, reads and executes instructions sequentially from the program memory, and that the read instructions are to be executed by the processor. A 1-bit processing processor that gives instructions to the processor; a data memory that temporarily stores data; a fixed memory that stores a self-diagnosis program; and a communication interface that is involved in communication operations with a host computer. , an I10 interface for coupling to an I10 bus that connects an I10 board that exchanges various information with the controlled object, the processor, the 1-bit processor, the data memory, the fixed memory, the communication interface, and the I10. A programmable controller with an internal bus that interconnects the interface.

(2)前記プロセッサに、前記シーケンス制御プログラ
ムを一定時間実行すると前記シーケンス制御プログラム
を停止して前記ベーシック・プログラムを一定時間実行
する動作を繰り返す実行権切換制御手段を設けたことを
特徴とする請求項(1)記載のプログラマブル・コント
ローラ。
(2) A claim characterized in that the processor is provided with an execution right switching control means that repeats an operation of stopping the sequence control program after executing the sequence control program for a certain period of time and executing the basic program for a certain period of time. The programmable controller according to item (1).

(3〉前記上位コンピュータから実行すべきベーシック
言語実行指令またはラダー言語実行指令またはベーシッ
ク言語及びラダー言語実行指令のうちいずれかの実行指
令を受け、指定された言語実行指令に対応した。実行環
境を生成する請求項(1)記載のプログラマブル・コン
トローラ。
(3) Received an execution command from the host computer to execute either a basic language execution command, a ladder language execution command, or a basic language and ladder language execution command, and responded to the specified language execution command. The programmable controller according to claim 1, wherein the programmable controller generates a programmable controller.

(4)前記プロセッサ・ボードに設定するI10ドライ
バは、立ち上がり時に、各I10ボードについて、ボー
ドID、ボードのインターフェイスの種類、チャネル数
、コマンド・レジスタ・アドレス及びバッファ・アドレ
スまたはデータ・レジスタ・アドレス、特殊処理が必要
な場合はその特殊処理を指定するアドレスを読み出して
テーブル形式で記憶する処理定義テーブルを設定し、デ
ータ出力処理を行う際は前記処理定義テーブルを参照す
ることを特徴とする請求項(1)記載のプログラマブル
・コントローラ。
(4) At startup, the I10 driver set on the processor board inputs, for each I10 board, the board ID, board interface type, number of channels, command register address and buffer address or data register address, When special processing is required, a processing definition table is set in which an address specifying the special processing is read and stored in a table format, and the processing definition table is referred to when performing data output processing. (1) The programmable controller described in (1).

(5)前記プロセッサ・ボード及び前記I10ボード群
にストローブ信号発生手段を設け、データ転送サイクル
が開始すると、データ転送要求もとボードはフレーム送
信毎にストローブ信号を送信して当該フレームを有効と
し、データ転送要求先ボードはデータ・フレーム及びス
テイタス・フレームまたはステイタス・フレーム送信毎
にストローブ信号を送信してデータ転送サイクルを終了
することを特徴とする請求項(1)記載のプログラマブ
ル・コントローラ。
(5) a strobe signal generating means is provided in the processor board and the I10 board group, and when a data transfer cycle starts, the data transfer requesting board transmits a strobe signal every time a frame is transmitted to validate the frame; 2. The programmable controller according to claim 1, wherein the data transfer request destination board transmits a strobe signal every time a data frame and a status frame are transmitted, thereby completing the data transfer cycle.

(6)異常の種類の数に対応して異常検出回路を設け、
前記プロセッサは異常検出信号を割込信号として受け付
けて内部のタイマ機能の示す時刻と異常検出の内容とを
テーブル形式で記憶することを特徴とする請求項(1)
記載のプログラマブル・コントローラ。
(6) Provide abnormality detection circuits corresponding to the number of types of abnormalities,
Claim (1) characterized in that the processor receives the abnormality detection signal as an interrupt signal and stores the time indicated by an internal timer function and the contents of the abnormality detection in a table format.
Programmable controller as described.

(7)前記ラダー言語で生成したラダー・プログラム内
のラダー回路に付加するコメントを当該ラダー回路のス
テップ番号に対応させて格納するコメント・ファイルと
、当該ラダー回路のステ・yプ番号と前記コメント・フ
ァイル中のコメント番号とを対応付けした回路/コメン
ト・テーブルとを設定し、プログラミング・ツールから
回路コメント、ステップ番号、ラダー回路を読み出せる
ようにしたことを特徴とする請求項(1)記載のプログ
ラマブル・コントローラ。
(7) A comment file that stores comments to be added to the ladder circuit in the ladder program generated in the ladder language in correspondence with the step number of the ladder circuit, and the step number of the ladder circuit and the comment. - According to claim (1), a circuit/comment table is set in which comment numbers in a file are associated with each other, so that circuit comments, step numbers, and ladder circuits can be read from a programming tool. programmable controller.

(8〉シーゲンス制御処理ルーチン内の入出力リフレッ
シュ処理を省略し、ラダー回路作成時は各回路要素に信
号名を割り付け、予め設定した信号名/アドレス対応テ
ーブルにより信号名とアドレスとを対応させ、コンパイ
ル時点で詳細アドレスが割り当てられていないものにつ
いては当該信号名に対応する詳細アドレスをアドレスの
若い順に設定することを特徴とする請求項(1)記載の
プログラマブル・コントローラ。
(8> Omit the input/output refresh processing in the sequence control processing routine, assign a signal name to each circuit element when creating a ladder circuit, and match the signal name and address using a preset signal name/address correspondence table. 2. The programmable controller according to claim 1, wherein for those to which detailed addresses are not assigned at the time of compilation, detailed addresses corresponding to the signal names are set in descending order of addresses.

(9)ラダー・プログラムのプログラミング時に、一連
のシーケンス制御動作をいくつかの工程に対応するブロ
ックに分割し、各ブロックの最終ステップのラダー回路
には次に実行すべきブロックを指定する命令と当該ブロ
ックの処理停止を指定する命令とを設定し、ブロック単
位にラダー・プログラムを設定かつ実行するようにした
請求項(1)記載のプログラマブル・コントローラ。
(9) When programming a ladder program, a series of sequence control operations is divided into blocks corresponding to several steps, and the ladder circuit of the final step of each block contains an instruction specifying the next block to be executed and the corresponding 2. The programmable controller according to claim 1, further comprising: setting an instruction for specifying a block processing stop, and setting and executing a ladder program on a block-by-block basis.

(10)ベーシック言語の処理をするプロセッサ・ボー
ドと、シーケンス言語処理専用でありブロック構成のシ
ーゲンス制御プログラムを1個以上格納する少なくとも
1枚以上のシーケンス言語処理専用のプロセッサ・ボー
ドと、このシーケンス言語処理専用のプロセッサ・ボー
ドの下位間に設置されて制御対象と制御情報を授受する
I10ボード群とから構成され、前記ベーシック言語の
処理をするプロセッサ・ボードは、前記シーケンス言語
処理専用のプロセッサ・ボード内の前記ブロック構成の
シーゲンス制御プログラムの各々に起動指示、終了指示
を通知することを特徴とするプログラマブル・コントロ
ーラ。
(10) A processor board that processes a basic language, at least one processor board that is dedicated to sequence language processing and stores one or more block-structured Sequence control programs, and this sequence language processing board. It consists of a group of I10 boards that are installed between lower-level processor boards dedicated to processing and exchange control objects and control information, and the processor board that processes the basic language is the processor board dedicated to sequence language processing. A programmable controller characterized in that a programmable controller notifies each of the block-configured Sequence control programs in the programmable controller of a start instruction and a termination instruction.

〈作用〉 本発明のプログラマブル・コントローラは、次のように
動作する。
<Operation> The programmable controller of the present invention operates as follows.

(1)1ビット処理プロセッサはプログラム・メモリか
ら逐一シーケンス1liIlllプログラム命令を読み
出して実行し、読み出したプログラム命令が全体を制御
するプロセッサが処理すべきものである場合は当該プロ
グラム命令をプロセッサへ与えて処理を実行する。
(1) 1-bit processing A processor reads out a sequence of 1liIllll program instructions one by one from the program memory and executes them, and if the read program instructions are to be processed by the processor that controls the whole, the processor provides the program instructions to the processor for processing. Execute.

(2)一定時間、シーゲンス制御プログラムを実行する
と、プロセッサはベーシック・プログラムの実行動作に
切換える。再び一定時間経過すると、シーゲンス制御プ
ログラムの動作に戻る。以後、一定時間経過する毎にシ
ーゲンス制御プログラム処理、ベーシック・プログラム
処理を切換えて実行する。
(2) After executing the Siegen control program for a certain period of time, the processor switches to the basic program execution operation. After a certain period of time has elapsed, the operation returns to the Siegen control program. Thereafter, the Siegen control program processing and the basic program processing are switched and executed every time a certain period of time elapses.

(3)上位コンピュータからベーシック言語、ラダー言
語、ベーシック言語及びラダー言語のうちいずれかを指
定すると、プロセッサはシステム・テーブルを生成し、
指定されたプログラム言語に応じた実行環境を生成する
(3) When the host computer specifies one of the basic language, ladder language, basic language, and ladder language, the processor generates a system table,
Generates an execution environment according to the specified programming language.

【4)プロセッサ・ボード内のI10ドライバは立ち上
がり時に、装着されているI10ボードの各種情報を読
み取って処理定義テーブルを生成して記憶し、データ転
送時はこの処理定義テーブルを参照してI10ボードと
のアクセス処理を実行する。
[4] When the I10 driver in the processor board starts up, it reads various information from the installed I10 board, generates and stores a processing definition table, and when transferring data, refers to this processing definition table and Execute access processing with.

(5)プロセッサとI10ボードとのデータ転送時は、
データ転送もとはフレームを送出する度にストローブ信
号をアクティブとして同期式転送を行い、プロセッサと
I10ボード全体では非同期式転送を行う。
(5) When transferring data between the processor and I10 board,
Data transfer Originally, synchronous transfer is performed by activating the strobe signal every time a frame is sent, and asynchronous transfer is performed between the processor and the I10 board as a whole.

(6)ラダー回路に付加するコメントをステップ番号に
対応させてコメント・ファイルと、ステップ番号とコメ
ント・ファイル中のコメント番号とを対応付けした回路
/コメント・テーブルとを設定し、回路調整時にプログ
ラミング・ツールから回路コメント、ステップ番号、ラ
ダー回路を読み出して出力する。
(6) Set up a comment file in which comments to be added to the ladder circuit correspond to step numbers, and a circuit/comment table in which step numbers are associated with comment numbers in the comment file, and program when adjusting the circuit. - Read and output circuit comments, step numbers, and ladder circuits from the tool.

(7)ラダー回路作成時に信号名を割り当て、信号名と
アドレスとを対応させ、コンパイル時は詳細アドレスを
定義していないものについては自動的に詳細アドレスを
割り当てる。
(7) Assign signal names when creating a ladder circuit, associate signal names and addresses, and automatically assign detailed addresses to those for which detailed addresses have not been defined during compilation.

(8)プロセッサ・ボードまたはI10ボード側に設置
される異常検出回路から異常検出信号が送出されると、
異常発生時刻と異常の内容とをテーブル形式で記憶し、
必要に応じて読み出し、異常を解析する。
(8) When an abnormality detection signal is sent from the abnormality detection circuit installed on the processor board or I10 board side,
Stores the time of abnormality occurrence and the details of the abnormality in a table format,
Read out and analyze abnormalities as necessary.

(9)各工程に対応したブロック単位のラダー・プログ
ラムの最終ステップの実行を開始すると、このステップ
にて指定されるブロックのラダー・プログラムを実行し
、当該ブロックの処理を終了する。
(9) When execution of the final step of the block-based ladder program corresponding to each process is started, the ladder program of the block specified in this step is executed, and the processing of the block is ended.

(10)ベーシック・プログラムを実行するプロセッサ
・ボードと、ブロック単位に作成したいくつかのシーケ
ンス制御プログラムを格納するプロセッサ・ボードを用
いて構成したシステムは、ベーシック・プログラムから
の起動指令により各ラダー・プログラムはその実行を制
御される。
(10) In a system configured using a processor board that executes a basic program and a processor board that stores several sequence control programs created in block units, each ladder is activated by a startup command from the basic program. Programs are controlled in their execution.

〈実施例〉 次に、本発明を実施したプログラマブル・コントローラ
について説明する。
<Example> Next, a programmable controller implementing the present invention will be described.

本発明のプログラマブル・コントローラを用いて構成し
たシステム例は、その外観は第26図に示した従来のシ
ーゲンス制御システムと同様であるが、プログラマブル
・コントローラ内部に設定するさまざまなIi能が本発
明の特徴である。
The external appearance of an example of a system configured using the programmable controller of the present invention is similar to the conventional Siegen control system shown in FIG. 26, but the various Ii functions set inside the programmable controller are It is a characteristic.

第1図は本発明によるプログラマブル・コントローラの
CPUボード10の内部構成図である。
FIG. 1 is an internal configuration diagram of a CPU board 10 of a programmable controller according to the present invention.

この図で、CP U 101はCPUボード10全体を
制御するマイクロプロセッサであり、例えばHC680
00等が用いられる。CPU101は内部バスb1に接
続され、1ビット処理命令を実行するBPU102と並
列に設置される。CPtJゲート・アレイ103はCP
 U 101が効率良く実行できるようにタイミング信
号の出力制御を行うブロックである。
In this figure, CPU 101 is a microprocessor that controls the entire CPU board 10, for example, HC680.
00 etc. are used. The CPU 101 is connected to the internal bus b1 and installed in parallel with the BPU 102 that executes 1-bit processing instructions. CPtJ gate array 103 is CPtJ gate array 103
This block controls the output of timing signals so that U 101 can be executed efficiently.

B P U 102は1ビット処理命令を高速に処理す
るようにゲート・アレイから構成され、ラダー・プログ
ラム等のシーケンス制御プログラムを格納するプログラ
ム・メモリ(RAM128KB ) 103に命令バス
(図示せず)を介して直接接続する。
The BPU 102 is composed of a gate array to process 1-bit processing instructions at high speed, and connects an instruction bus (not shown) to a program memory (RAM 128KB) 103 that stores sequence control programs such as ladder programs. Connect directly via

尚、内部バスb1は、アドレス・バス、データ・バス、
コントロール・バスを含むものである。
Note that the internal bus b1 includes an address bus, a data bus,
It includes a control bus.

また、CP U 101が全体制御のために実行すべき
種々の命令がROM (256にB) 105に記憶さ
れ、後述するベーシック・プログラムも記憶される。
Further, various instructions to be executed by the CPU 101 for overall control are stored in the ROM (B at 256) 105, and a basic program to be described later is also stored.

データ・メモリ(RAM64にB) 106はCPU1
01の作業領域である。
Data memory (B to RAM64) 106 is CPU1
This is the work area of 01.

I10インターフェイス(I/F)107は、I10ボ
ードCI、C2に接続するI10バスbbのインターフ
ェイスである。I10ボードはこの図では2枚しか接続
されていないが、システム構成に応じてその数は増える
The I10 interface (I/F) 107 is an interface for the I10 bus bb connected to the I10 boards CI and C2. Although only two I10 boards are connected in this figure, the number may increase depending on the system configuration.

更に、リアルタイム・クロック発生部108は時計機能
を有し、通信のためのデータ・バッファとなる通信バッ
ファ(RA M 32にB) 109 、この通信メモ
リに接続され上位バスBとのインターフェイスとなる上
位インターフェイス110が内部バスb1に接続される
。また、プログラミング・ツール等との通信のためのR
3232Cボート111も設置される。
Furthermore, the real-time clock generator 108 has a clock function, and includes a communication buffer (RAM 32B) 109 which serves as a data buffer for communication, and a communication buffer (RAM 32B) 109 which is connected to this communication memory and serves as an interface with the upper-level bus B. Interface 110 is connected to internal bus b1. Also, R for communication with programming tools etc.
A 3232C boat 111 will also be installed.

I10バスbbには、一般的なレジスタ・インターフェ
イス型のI10ボードCI、マイクロプロセッサを有し
上位のプログラマブル・コントローラとコマンド授受に
より通信を行うコマンド・インターフェイス型のI10
ボードC2の2種類が複数枚接続される。 レジスタ・
インターフェイス型I10ボードC1は、マイクロプロ
セッサを有するものもあるが、主としてバスbbとのイ
ンターフェイスallと、外部接点とのインターフェイ
スc12より構成される。I10ボードC2は、バスb
bとのインターフェイスc21と、マイクロプロセッサ
C22(例えば8ビットCPU)と、データ・メモリC
23(例えばRAM8にB)と、外部とのインターフェ
イスC24より構成される。
The I10 bus bb includes a general register interface type I10 board CI, and a command interface type I10 that has a microprocessor and communicates with the upper programmable controller by sending and receiving commands.
A plurality of two types of boards C2 are connected. register·
The interface type I10 board C1 may have a microprocessor, but it mainly consists of an interface all with the bus bb and an interface c12 with an external contact. I10 board C2 is bus b
an interface c21 with b, a microprocessor C22 (e.g. 8-bit CPU), and a data memory C21.
23 (for example, RAM8 and B) and an external interface C24.

このようなCPUボード10の特徴を次に説明する。The features of such a CPU board 10 will be explained next.

構成上の特徴は、BPU102が内部バスb1を介さず
に直接プログラム・メモリ104に命令バス(図示せず
)のみを介してアクセスするようにしたことであり、第
2図及び第3図を用いてその動作を説明する。
A feature of the configuration is that the BPU 102 directly accesses the program memory 104 only through an instruction bus (not shown) without going through the internal bus b1. This section explains its operation.

第2図は制御すべきシーケンスを表わすラダー・プログ
ラムであり、第3図はこのラダー・プログラムに対応す
るプログラム命令列である。
FIG. 2 is a ladder program representing a sequence to be controlled, and FIG. 3 is a program instruction sequence corresponding to this ladder program.

シーケンス制御動作を開始すると、CP U 101は
B P U 102に起動をかけ、BPU102はプロ
グラム・メモリ104からプログラム列を順次読み出し
、ロード命令“LD″から処理を実行する。
When the sequence control operation is started, the CPU 101 activates the BPU 102, and the BPU 102 sequentially reads program sequences from the program memory 104 and executes processing from the load instruction "LD".

AND命令、OR命令、OUT命令、LD命令まで進み
、次に読み出したプログラム命令がCPU101で実行
すべき応用命令(1)である場合は、B P U 10
2はCP U 101にアドレス・バス、データ・バス
の占有権を含む制御実行権を引き渡す。
If the program advances to the AND instruction, OR instruction, OUT instruction, and LD instruction, and the next read program instruction is the application instruction (1) to be executed by the CPU 101, the B P U 10
2 hands over control execution rights including exclusive rights to the address bus and data bus to the CPU 101.

これにより、応用命令(1)はCP U 101側で実
行される。この応用命令(1)の処理が終了すると、C
P U 101は終了通知をB P U 102へ通知
し、B P U 102は次の命令を読み出す0次の応
用命令(2〉がCP U 101で実行すべき命令であ
れば、B P U 102はc p tr ioiへ再
度制御実行権を引き渡す。
As a result, the application instruction (1) is executed on the CPU 101 side. When the processing of this application instruction (1) is completed, C
The P U 101 notifies the B P U 102 of the completion notification, and the B P U 102 reads the next instruction. transfers control execution authority to c p tri ioi again.

そして、続いてB P U 102が次に読み出すプロ
グラム命令はロード命令“LD”であるため、BP U
 102に自分でこの命令処理を実行する。
Then, since the next program instruction that the BPU 102 reads is the load instruction "LD", the BPU
At step 102, the user executes this command processing by himself.

このように、常にシーケンス基本命令を実行するB P
 U 102がプログラム命令列を読み出し、読み出し
た命令がCP U 101で実行すべきシーケンス応用
命令である場合はCP U 101に制御実行権を引き
渡す、この時、プログラム命令列にはシーケンス基本命
令が圧倒的に多く、B P U 102の制御動作が高
速となる。cptrioiは命令を実行した後はBPU
102へ終了通知を返信するのみである。
In this way, B P which always executes sequence basic commands
The U 102 reads a program instruction string, and if the read instruction is a sequence application instruction to be executed by the CPU 101, it hands over control execution authority to the CPU 101. At this time, the program instruction string is overwhelmingly filled with sequence basic instructions. Therefore, the control operation of the BPU 102 becomes faster. After cptrioi executes the instruction, the BPU
It only sends back a notification of completion to 102.

また、B P U 102が読み出したプログラム命令
がシステムに定義されていない不正な命令である場合は
、B P U 102はc p tr ioiへその不
正命令の形態に応じた疑似命令をCPU11へ供給する
ように予め設定しておく、この疑似命令は、CPU10
1が不正命令をそのまま実行してシステムに悪影響を及
ぼさないように設定するものである。
Furthermore, if the program instruction read by the B P U 102 is an illegal instruction that is not defined in the system, the B P U 102 supplies a pseudo instruction to the CPU 11 according to the form of the illegal instruction to the c p tr ioi. This pseudo-instruction, which is set in advance to
1 is set to prevent the system from being adversely affected by executing illegal instructions as they are.

このように、CP U 101がシーケンス制御処理を
起動すると、B P U 102がプログラム・メモリ
104からプログラム命令を読み出して実行を開始し、
以後はプログラム・メモリ104から直接プログラム命
令を読み出すため、CP U 101が逐一プログラム
命令を読み出して制御実行権を定める必要はない。
In this way, when the CPU 101 starts the sequence control process, the BPU 102 reads the program instructions from the program memory 104 and starts executing them.
Since the program instructions are subsequently read directly from the program memory 104, there is no need for the CPU 101 to read the program instructions one by one to determine the control execution right.

一方、CP U 101は、上記のシーケンスの進行状
況を制御するとともに、極めて一般的な、上位コンピュ
ータへの通信動作、汎用的な演算処理、情報処理、制御
動作などを実行するベーシック言語で作成されたベーシ
ック・プログラムを実行するように設定されており、こ
のベーシック・プログラムの実行と上記のシーケンス制
御プログラムの実行との相関関係を次に説明する。
On the other hand, the CPU 101 is written in a basic language that controls the progress of the above-mentioned sequence and also executes very general communication operations to a host computer, general-purpose arithmetic processing, information processing, control operations, etc. The basic program is set to be executed, and the correlation between the execution of this basic program and the execution of the sequence control program described above will be explained next.

第4図は、シーケンス制御処理SQとベーシック処理R
ASの並行動作を表わす概念図である。
FIG. 4 shows sequence control processing SQ and basic processing R.
FIG. 3 is a conceptual diagram showing parallel operations of AS.

シーケンス制御処理SQは第3図に表わすようなプログ
ラム命令の列を実行する処理であり、ベーシック処理B
ASはユーザが任意に作成するデータ読出プログラムま
たは通信プログラム等のベーシック・プログラムである
。実行権切換処理部81、タイマ82はc p u i
oiに設定される機能である。タスク・スゲジューラ8
3もまたC P U 101に設定され、ベーシック・
プログラム内のいくつかの処理についてその実行優先順
位を定める機能を有するがJ本発明の動作には直接関係
はない。
The sequence control process SQ is a process that executes a sequence of program instructions as shown in FIG.
The AS is a basic program such as a data reading program or a communication program arbitrarily created by the user. The execution right switching processing unit 81 and the timer 82 are CPU
This is a function set in oi. Task scheduler 8
3 is also set to CPU 101 and the basic
Although it has a function of determining the execution priority of some processes within a program, it is not directly related to the operation of the present invention.

シーケンス制御処理のプログラム列は通常、数百または
数千列になり、その1周期の実行時間は数+msまたは
数百msであり、制御するシステム構成によって大きく
異なるのものである。
The program sequence for sequence control processing usually consists of hundreds or thousands of sequences, and the execution time for one cycle is several + ms or several hundred ms, which varies greatly depending on the system configuration to be controlled.

ここで、例えばタイマ82に予め10m5を設定したシ
ステムを想定する。
Here, assume a system in which the timer 82 is set to 10 m5 in advance, for example.

はじめに、シーケンス制御処理SQの第1ステツプ、ロ
ード命令″LD”を実行する。続いてアンド命令AND
、オア命令OR1出力命令OUTと進行し、この時点で
丁度10ms経過し、タイマ82からタイム・アップ信
号が実行権切換制御部81へ割込信号として与えられる
とする。CPU101はこの割込信号を入力するが、こ
の時点での制御実行権はB P U 103側にあり、
CP U 101はこのタイム・アップ割込を受け付け
ない。
First, the first step of the sequence control process SQ is to execute the load instruction "LD". Then the AND instruction AND
, OR instruction OR1 output instruction OUT, and at this point, exactly 10 ms have elapsed, and a time-up signal is given from the timer 82 to the execution right switching control section 81 as an interrupt signal. The CPU 101 inputs this interrupt signal, but the control execution right at this point is on the BPU 103 side.
CPU 101 does not accept this time-up interrupt.

シーゲンス処理が進んでB P U 102がロード命
令“LD”を実行し、次にCP U 101に制御実行
権が移って応用命令〈1)の処理が開始される時点でC
P U 101は10msタイム・アップ割込信号を受
け付け、これにより、タスク・スゲジューラ83に従っ
てベーシック・プログラムBASの処理を開始する。
As the Sequence processing progresses and the BPU 102 executes the load instruction "LD", the control execution right is transferred to the CPU 101 and the processing of the application instruction (1) is started.
P U 101 accepts the 10 ms time-up interrupt signal and thereby begins processing basic program BAS according to task scheduler 83 .

このとき、シーケンス制御処理SQの実行は停止したま
まである。
At this time, the execution of the sequence control process SQ remains stopped.

その後タイマ82がタイムアツプし、10ms割込信号
が発生すると、CP U 101内の実行権切換処理部
81は現在のベーシック進行状況を一旦データ・メモリ
゛106に退避し、停止していたシーケンス制御処理S
Qの動作を再開する。
After that, when the timer 82 times up and a 10ms interrupt signal is generated, the execution right switching processing unit 81 in the CPU 101 temporarily saves the current basic progress status to the data memory 106 and restarts the stopped sequence control processing. S
Resume Q operation.

尚、10ms毎のタイム・アップ信号にかかわらず、シ
ーゲンス制御処理SQ終了の場合はシーケンス制御処理
SQは終了通知を実行権切換処理部81に与え、CP 
U 101はベーシック処理21を開始する。
Note that regardless of the time-up signal every 10 ms, if the sequence control process SQ ends, the sequence control process SQ gives a notification of completion to the execution right switching processing unit 81, and the CP
U 101 starts basic processing 21 .

このように、10m5毎にシーケンス制御処理SQ、ベ
ーシック処理BASを切り換えて動作させるため、外部
からはあたかもシーゲンス処理21とベーシック処理2
2とが同時に実行しているようにみえ、マルチ処理が可
能である。
In this way, since the sequence control processing SQ and basic processing BAS are switched and operated every 10m5, it is possible to operate the sequence control processing SQ and basic processing 2 as if they were Sequence processing 21 and basic processing 2 from the outside.
2 appear to be running at the same time, and multi-processing is possible.

尚、タイマ82に設定する時間は10m5に限ることな
く、システム構成に応じて任意でよい。
Note that the time set in the timer 82 is not limited to 10 m5, and may be set arbitrarily depending on the system configuration.

一方、システム構築にあっては、上述のようなシーケン
ス制御処理及びベーシック処理の並列動作を必要としな
いものもあり、また、システム変更によりシーケンス制
御処理またはベージ・ツク処理のどちらかが不必要とな
る場合もあり、このような場合は、第5図のフローチャ
ートに従うプログラムをCPUボード10に予め組み込
んでおき、次のように対応する。
On the other hand, some system constructions do not require parallel operation of sequence control processing and basic processing as described above, and system changes may make either sequence control processing or basic processing unnecessary. In such a case, a program according to the flowchart shown in FIG. 5 is installed in the CPU board 10 in advance, and the following steps are taken.

パワー・オン時に自己診断動作を実行した後、上位側か
らの処理使用言語の指定の有無を調べ、使用言語がシー
ケンス言語であれば、データ・メモリ106にシーケン
ス言語処理に必要なシステム、テーブルを作成し、ベー
シック言語指定であればデータ・メモリ106にベーシ
ック言語処理に必要なシステム・テーブルを作成し、シ
ーケンス言語及びベーシック言語両方指定であればデー
タ・メモリ106にシーケンス言語処理及びベーシック
言語処理の両方に必要なシステム・テーブルを作成する
After executing a self-diagnosis operation at power-on, it is checked whether the language to be used for processing has been specified from the upper side, and if the language to be used is a sequence language, the system and tables required for sequence language processing are stored in the data memory 106. If a basic language is specified, system tables necessary for basic language processing are created in the data memory 106, and if both a sequence language and a basic language are specified, system tables for sequence language processing and basic language processing are created in the data memory 106. Create the system tables needed for both.

このように、指定された言語に対応してシステム・テー
ブルを作成するようにプログラム設定したため、上位コ
ンピュータ、例えばデスクトップ・コンピュータからシ
ステム変更が容易となる。
In this way, since the program is set to create a system table corresponding to the specified language, it is easy to change the system from a host computer, such as a desktop computer.

次に、CPUボード10に設定され、各種のI10ボー
ドの型式に対応できる標準I10ドライバについて、第
6図を用いて説明する。
Next, a standard I10 driver that is set on the CPU board 10 and is compatible with various types of I10 boards will be described with reference to FIG.

CPUボード10に設定されるベーシック・プログラム
等のユーザ・プログラムUPからのI10ボードに対す
るアクセス要求a1、またはI10ボードCからCPU
ボード10側への割込要求a2は、CPUボード10内
のオペレーション・システムO8に受け付けられる。
An access request a1 to the I10 board from a user program UP such as a basic program set on the CPU board 10, or an access request a1 from the I10 board C to the CPU
The interrupt request a2 to the board 10 side is accepted by the operation system O8 in the CPU board 10.

そして、CPUボードlOからのアクセス要求a1はI
10要求受付処理ステップ■を起動し、I10ボードか
らのCPUボード10への割込要求a2は割込要求受付
処理ステップ■を起動する。
Then, the access request a1 from the CPU board IO is
The interrupt request a2 from the I10 board to the CPU board 10 starts the interrupt request reception processing step (2).

本発明にかかる標準I10ドライバSDは、システム立
ち上げの際に各スロットに装着される各I10ボードに
ついて処理定義テーブルTBLI。
The standard I10 driver SD according to the present invention creates a processing definition table TBLI for each I10 board installed in each slot at the time of system startup.

TBL2. ・−、TBLnを生成し、I10要求受付
処理■または割込要求受付処理■の場合は、この処理定
義テーブルTBLを参照してアクセス準備を開始する。
TBL2. -, TBLn is generated, and in the case of I10 request reception processing (2) or interrupt request reception processing (2), access preparation is started by referring to this processing definition table TBL.

処理を開始すると、アクセス対象のI10ボードがレジ
スタ・インターフェイス型またはコマンド・インターフ
ェイス型かを判断してそのメイン処理を実行する4この
レジスタ・インターフェイス型のメイン処理、コマンド
・インターフェイス型のメイン処理の内容は従来の処理
手順と変わるところはない、ここで、レジスタ・インタ
ーフェイス型I10ボードは第1個に示す通常のI10
ボードC1のタイプであり、コマンド・インターフェイ
ス型I10ボードは第1図に示すようにマイクロプロセ
ッサを有してコマンド授受を行うタイプのI10ボード
である。
When processing starts, it is determined whether the I10 board to be accessed is a register interface type or a command interface type, and its main processing is executed. 4. Contents of main processing for register interface type and command interface type main processing There is no difference from the conventional processing procedure.Here, the register interface type I10 board is the normal I10 board shown in the first piece.
The command interface type I10 board, which is a type of board C1, is a type of I10 board that has a microprocessor and sends and receives commands, as shown in FIG.

また、I10要求受付処理■、割込要求受付処理■に共
通な処理は共通処理ルーチンを予め設定し、共通処理実
行時はI10ボードのインターフェイスのタイプにかか
わらずこの共通処理ルーチンを実行する。更に、標準的
な処理とは異なった処理が必要となるI10ボードにつ
いては特殊処理ルーチンを用意、設定し、立ち上げ時に
I10ボード測からアップロードして標準ドライバとリ
ンクして使用する。このような特殊処理ルーチン等のア
ドレスは、立ち上げ時に処理定義テーブルTBL内に設
定する。
Further, a common process routine is set in advance for processes common to the I10 request reception process (2) and the interrupt request reception process (2), and when the common process is executed, this common process routine is executed regardless of the type of interface of the I10 board. Furthermore, for the I10 board that requires processing different from standard processing, a special processing routine is prepared and set, uploaded from the I10 board measurement at startup, and used by linking with the standard driver. Addresses of such special processing routines, etc. are set in the processing definition table TBL at startup.

次に、この処理定義テーブルTBLの生成方式を第7図
を用いて説明する。
Next, a method for generating this processing definition table TBL will be explained using FIG. 7.

処理定義テーブルTBLの生成は、各I10ボードにつ
いて、CPUボード10の第1回目のI10要求受付処
理の時に実行され、当該I10ボードのボードID、各
種情報を読み込むことにより行われる。
The processing definition table TBL is generated for each I10 board at the time of the first I10 request reception process of the CPU board 10, and is performed by reading the board ID and various information of the I10 board.

はじめに、当該I10ボードの各種情報よりチャネル数
〈ボート数)及びアウトプットの必要の有無をパラメー
タとして設定する。
First, the number of channels (number of boats) and whether output is necessary are set as parameters based on various information about the I10 board.

そして、当該I10ボードの種類がコマンド・インター
フェイス型であれば各コマンド・レジスタのアドレスを
テーブル設定し、続いて各バッファのアドレスをテーブ
ル設定する。特殊処理が必要なものであれば特殊処理ル
ーチン・アドレスをテーブルに設定する。
If the type of the I10 board is a command interface type, the addresses of each command register are set in a table, and then the addresses of each buffer are set in a table. If special processing is required, set the special processing routine address in the table.

また、当該I10ボードの種類がレジスタ・インターフ
ェイス型であれば各レジスタ・アドレスをテーブル設定
する。
Furthermore, if the type of the I10 board is a register interface type, each register address is set in a table.

最後にテーブル作成済みフラグをオンとし、各種の要求
処理を実行する。
Finally, turn on the table creation flag and execute various request processes.

以上の動作をシステムに設置されている各I10ボード
について行うことにより、処理定義テーブルTBLを標
準I10ドライバSD内に設定することができる。
By performing the above operations for each I10 board installed in the system, the processing definition table TBL can be set in the standard I10 driver SD.

次に、このような処理定義テーブルTBLを有する椋準
I10ドライバSDのアクセス処理の例を第8図のフロ
ーチャートに示し、説明する。
Next, an example of the access processing of the Muku Jun I10 driver SD having such a processing definition table TBL will be described with reference to the flowchart of FIG.

アクセス処理即ちデータ転送準備処理が開始すると、C
PUボード10の標準I10ドライバSDは、当該I1
0ボードの処理定義テーブルTBLを参照し、パラメー
タ即ち当該I10ボードのチャネル数(ボート数〉、ア
ウトプットの有無をチエツクし、インターフェイスの種
類を識別する。
When the access process, that is, the data transfer preparation process starts, C
The standard I10 driver SD of the PU board 10 is the I1
Referring to the processing definition table TBL of the I10 board, the parameters, ie, the number of channels (number of boats) and the presence or absence of output of the I10 board, are checked to identify the type of interface.

コマンド・インターフェイス型であれば更に処理定義テ
ーブルTBLを参照し、出力バッファ・アドレスをge
tしてデータ変換を行い、この出力バッファに出力すべ
きデータをセットする。そして再び、処理定義テーブル
TBLを参照し、コマンド・レジスタ・アドレスをge
tj、、出力コマンドをセットする。この状態でI10
ボード側からの割込を待ち、割込を受けるとリターン・
スティタスを出力する。
If it is a command interface type, refer to the processing definition table TBL and set the output buffer address to ge.
t, performs data conversion, and sets the data to be output in this output buffer. Then, refer to the processing definition table TBL again and set the command register address to ge.
tj,, set the output command. In this state I10
Waits for an interrupt from the board and returns when the interrupt is received.
Output status.

当該I10ボードがレジスタ・インターフェイス型であ
れば、処理定義テーブルTBLを参照して出力データ・
レジスタ・アドレスをgetL、データI10インター
フェイスであるか否かをチエツクする。データI10イ
ンターフェイスである場合は1ビット・データを1ワー
ド・データに変換してマスク・データをセットし、出力
データ・レジスタにデータを書き込む、データI10イ
ンターフェイスでない場合は、出力データ・レジスタに
データを書き込む。この出力データ・レジスタにデータ
を書き込む処理は共通処理である。
If the relevant I10 board is a register interface type, refer to the processing definition table TBL and input the output data.
Get the register address and check whether it is a data I10 interface. If it is a data I10 interface, convert 1-bit data to 1-word data, set mask data, and write the data to the output data register. If it is not a data I10 interface, write the data to the output data register. Write. The process of writing data to this output data register is a common process.

このような標準I10ドライバSDを備えるため、多種
類のI10ボードがシステムに装着される場合であって
も、I10ボード毎に処理定義テーブルを生成してこの
処理定義テーブルに従ってI10ボードにアクセスする
ため、各I10ボード毎にドライバを備える必要はなく
、1個の損率I10ドライバのみでパフォーマンスを落
とすことなく全てのI10ボードとのアクセス処理に対
応することができる。また、1個の損率I10ドライバ
で多種類のI10ボードが使用できるため以後のI10
ドライバ開発の工数が零となり、I10ドライバを格納
するメモリ容量も少なくてすむ、更にI10ボードのイ
ンターフェイスをレジスタ型またはコマンド型と規格化
したことにより、ユーザが任意にI10ボードを設計し
てシステムに組み入れることもできる。
Since such a standard I10 driver SD is provided, even if many types of I10 boards are installed in the system, a processing definition table is generated for each I10 board and the I10 board can be accessed according to this processing definition table. , it is not necessary to provide a driver for each I10 board, and only one loss factor I10 driver can handle access processing with all I10 boards without degrading performance. In addition, since many types of I10 boards can be used with one loss factor I10 driver, subsequent I10
The man-hours required for driver development are reduced to zero, and the memory capacity required to store the I10 driver is also reduced.Furthermore, by standardizing the I10 board interface as register type or command type, users can design their own I10 board and integrate it into the system. It can also be incorporated.

次に、このようなCPUボード10と、I10バスbb
を介して接続されるI10ボードとのハードウェア的な
データ転送方式を第9図、第10図を用いて説明する。
Next, such a CPU board 10 and I10 bus bb
A hardware data transfer method with the I10 board connected via the board will be explained using FIGS. 9 and 10.

尚、第1図に示す構成図において、CPUボードlOの
I10バスbbに対するI10インターフェイス107
と、各110ボードCI、C2のインターフェイスC1
1,12とに、データ転送要求が発生した際にI10バ
スbb内の制御線上にストローブ信号5TB−を発生す
るストローブ信号発生手段を設ける。具体的には、ゲー
ト・アレイで構成したI10インターフェイス107 
、I/FC11゜12に、データ転送要求に関連してス
トローブ信号5TB−を転送フレーム毎にI10バスb
bに送出するような論理構成を付加する。
In the configuration diagram shown in FIG. 1, the I10 interface 107 for the I10 bus bb of the CPU board IO
and interface C1 of each 110 board CI, C2
1 and 12 are provided with strobe signal generating means for generating a strobe signal 5TB- on the control line in the I10 bus bb when a data transfer request occurs. Specifically, the I10 interface 107 configured with a gate array
, I/FC11゜12 sends a strobe signal 5TB- to the I10 bus b for each transfer frame in connection with data transfer requests.
Add a logical configuration to send to b.

第9図は、CPUボード10のデータ転送要求に応答し
てI10ボードがCPUボード10ヘデータを転送する
場合のタイムチャートである。
FIG. 9 is a time chart when the I10 board transfers data to the CPU board 10 in response to a data transfer request from the CPU board 10.

CPUボード10からデータ転送要求が発生すると、C
PUボードloはI10バスbbにコントロール・フレ
ームFOとストローブ信号STB*“L”を送出する。
When a data transfer request occurs from the CPU board 10, the C
PU board lo sends control frame FO and strobe signal STB*“L” to I10 bus bb.

コントロール・フレームFOはリード/ライトの区別、
データ・サイズ(2または4バイト〉、データの種類(
データまたはコントロール信号〉等を指定する転送モー
ド・ビット、バイト単位のアクセスを可能とするバイト
・イネーブル・ビット等が設定される。このコントロー
ル・フレームFOはストローブ信号5TB)L″の立ち
上がりエツジSOで有効とされる。
Control frame FO has read/write distinction,
Data size (2 or 4 bytes), data type (
A transfer mode bit that specifies data or control signals, a byte enable bit that enables access in units of bytes, etc. are set. This control frame FO is made valid at the rising edge SO of the strobe signal 5TB)L''.

続いてCPUボード10は、アドレス・フレームFl、
F2を送出する。これらのアドレス・フレームFl、F
2は2バイトのフレームで構成され、256KBのアド
レス空間を保障する。これらのアドレス・フレームFl
、F2は、ストローブ信号5TB−“L”の立ち上がり
エツジS1. S2で有効となる。
Subsequently, the CPU board 10 receives address frames Fl,
Send F2. These address frames Fl, F
2 consists of a 2-byte frame and guarantees an address space of 256KB. These address frames Fl
, F2 are the rising edges of the strobe signal 5TB-“L” S1. It becomes effective in S2.

ここまでの期間T1は、CPUボード101N!!の動
作である。
During the period T1 up to this point, the CPU board 101N! ! This is the operation.

以上のフレームFO,Fl、F2を受け取ったI10ボ
ードは期間T2において自分が選択されたか否かの判断
処理、自分が選択された場合はデータ送信準備処理等を
実行する。 選択されたI10ボードは期間T3でI1
0バスbb上に送信すべきデータ・フレームF3.F4
を送出する。
The I10 board that has received the above frames FO, Fl, and F2 executes processing to determine whether or not it has been selected in period T2, and if it has been selected, it executes data transmission preparation processing and the like. The selected I10 board is I1 in period T3
Data frame F3.0 to be sent on bus bb. F4
Send out.

この場合、データは2バイトであり、同時に、このI1
0ボードは只トロープ信号5TB−“L”を送出する。
In this case, the data is 2 bytes, and at the same time this I1
The 0 board only sends out the Trope signal 5TB-“L”.

ストローブ信号sra*の立ち上がりエツジS3. S
4でデータ・フレームF3.F4は有効とされる。
Rising edge S3 of strobe signal sra*. S
4 to data frame F3. F4 is considered valid.

最後に、このI10ボードは返信信号としてステイタス
・フレームF5をストローブ信号STB*″L”ととも
に送出する。この1バイトのステイタス・フレームF5
は、当該I10ボードの内部状態信号、例えばデータ正
常転送、エラー・スティタス、ボード故障状態等の各種
状態を設定する信号である。
Finally, this I10 board sends out the status frame F5 as a reply signal along with the strobe signal STB*"L". This 1-byte status frame F5
are internal status signals of the I10 board, such as signals for setting various statuses such as normal data transfer, error status, and board failure status.

尚、フレーム信号FRH−は、データ転送サイクル中に
、その立ち下がりエツジで最初のフレームを示し、立ち
上がりエツジで最後のフレームを表わす信号であり、フ
レーミング・エラー検出のために利用される。また、デ
ータ方向指定信号DDIR*はデータ転送サイクル中に
“H“の時はCPUボードからI10側へのフレーム転
送を示し、“L”の際はIloからCPUボード側への
フレーム転送を示し、CPUボードとI10ボードとの
データ衝突防止のため等に利用される0両信号FR1h
DDIR*はI10バスbbの制御線上に送出される。
The frame signal FRH- is a signal whose falling edge indicates the first frame and whose rising edge indicates the last frame during a data transfer cycle, and is used for framing error detection. Furthermore, when the data direction designation signal DDIR* is "H" during the data transfer cycle, it indicates frame transfer from the CPU board to the I10 side, and when it is "L", it indicates frame transfer from the Ilo side to the CPU board side. 0 signal FR1h used to prevent data collision between the CPU board and I10 board, etc.
DDIR* is sent on the control line of I10 bus bb.

第10図は、CPUボード10からI10ボード側へデ
ータ転送を行う場合のタイムチャートである。
FIG. 10 is a time chart when data is transferred from the CPU board 10 to the I10 board.

この場合は、期間T4にてCPUボード10からコント
ロール・フレームFO,アドレス・フレームF1.F2
、データ・フレームF3.F4がストローブ信号STB
*“L”とともに出力され、期間T5にてI10ボード
が必要処理を行った後、期間T6にてステイタス・フレ
ームF5とストローブ信号5TB−” L”とを返信す
る。
In this case, during period T4, control frame FO, address frame F1. F2
, data frame F3. F4 is strobe signal STB
*Outputted together with "L", and after the I10 board performs necessary processing in period T5, it returns status frame F5 and strobe signal 5TB-"L" in period T6.

このように、第9図及び第10図を用いて説明したデー
タ転送方式によれば、各フレーム転出毎にCPUボード
またはI10ボードはストローブ信号STB本“L”を
送出して当該フレームを有効とするため、フレーム転送
に間しては同期式転送となり、データ転送サイクル全体
がらみれば、第9図の場合は期間TIの処理と期間T3
の処理とが非同期式転送となり、第10図の場合は期間
T4の処理と期間T6の処理とが非同期式転送となり、
同期式転送と非同期式転送との融合方式を実現できる。
In this way, according to the data transfer method explained using FIGS. 9 and 10, each time a frame is transferred, the CPU board or I10 board sends out the strobe signal STB "L" to validate the frame. Therefore, frame transfer is synchronous transfer, and from the perspective of the entire data transfer cycle, in the case of FIG. 9, the processing of period TI and the period T3 are
The processing in period T4 and the processing in period T6 are asynchronous transfer in the case of FIG.
It is possible to realize a method that combines synchronous transfer and asynchronous transfer.

第11図はこのプログラマブル・コントローラの故障履
歴を記録する機能であり、プログラマブル・コントロー
ラ内部に、電源が切れたことを検出するt源断検出回路
21、内部の温度異常を検出する嵩温異常検出回F!@
22、内部で実行しているソフトウェアの暴走等を検出
するソフトウェア異常検出回路23等の異常検出回路を
設ける。
Fig. 11 shows a function to record the failure history of this programmable controller. Inside the programmable controller, there is a power-off detection circuit 21 that detects when the power is turned off, and a bulk temperature abnormality detection circuit that detects internal temperature abnormalities. Times F! @
22. An abnormality detection circuit such as a software abnormality detection circuit 23 is provided to detect runaway of internally executed software.

そして、いずれかの異常検出回路から異常検出信号が発
生すると、この検出信号を割込発生回路24に入力して
CP U 1(11へ割り込みをかける。
When an abnormality detection signal is generated from one of the abnormality detection circuits, this detection signal is input to the interrupt generation circuit 24 to generate an interrupt to the CPU 1 (11).

当該割込信号を受けたC P U 101は、通常処理
25から異常発生割込処理26を開始する。
Upon receiving the interrupt signal, the CPU 101 starts the abnormality occurrence interrupt process 26 from the normal process 25 .

一方、CP U 101は時計機能TTを有しており、
異常発生割込処理26を起動すると、異常発生の種類と
この異常が発生した時刻とを対応させ、時系列的に異常
発生を並べ、補助記憶装置27にファイル形式で記憶し
ておく、補助記憶装置27としてはデータメモリ106
が使用される。
On the other hand, the CPU 101 has a clock function TT,
When the abnormality occurrence interrupt processing 26 is activated, an auxiliary memory that associates the type of abnormality occurrence with the time when this abnormality occurred, arranges the abnormality occurrences in chronological order, and stores them in a file format in the auxiliary storage device 27. The device 27 is the data memory 106
is used.

後で、上位コンピュータ側から指定があれば、CP U
 101は履歴続出処理28を開始して、補助記憶装置
1If27の内容を読み出して上位側へ送信することに
より、上位側のCRT表示装置、プリンタ等で第12図
のようなテーブル形式で異常発生状況を外部へ出力する
ことができ、異常発生の内容と発生時刻、エラー解析と
その対策を容易に行うことができる。
Later, if specified by the host computer, the CPU
101 starts the history succession processing 28, reads out the contents of the auxiliary storage device 1If27, and sends it to the upper side, thereby displaying the abnormality occurrence situation in the upper side CRT display device, printer, etc. in a table format as shown in Fig. 12. can be output externally, making it easy to analyze the details and time of abnormality occurrence, error analysis, and take countermeasures.

続いて、本発明のプログラマブル・コントローラにおい
てラダー・プログラム実行時のエラー発生のラダー回路
、または所望のラダー回路の特定について述べる。
Next, identification of a ladder circuit in which an error occurs during execution of a ladder program or a desired ladder circuit in the programmable controller of the present invention will be described.

プログラマブル・コントローラは、例えばR3232C
,R3422等によりプログラム作成ツールに接続され
、一般的には第13図に示すように、ラダー回路に各種
コメントが付加された形式でラダー・プログラムが設定
される。即ち、ラダー・プログラムには、第1段目にプ
ログラム名“TBST”が設定され、タイトル“試運転
回路”、ラダー回路のステップ番号、複数のラダー回路
に対する回路コメント“緊急停止回路”、ラダー回路1
行毎に対応するサブコメント“運転条件、運転状態、・
・・”等が設定される。
The programmable controller is, for example, R3232C
, R3422, etc., and generally a ladder program is set in the form of a ladder circuit with various comments added, as shown in FIG. That is, in the ladder program, the program name "TBST" is set in the first stage, the title "Test run circuit", the step number of the ladder circuit, the circuit comment "Emergency stop circuit" for multiple ladder circuits, and the ladder circuit 1.
Sub-comments corresponding to each line “operating conditions, operating status,
...” etc. are set.

そして、プログラマブル・コントローラはこのようなラ
ダー・プログラムを内部に格納して制御動作を実行して
いるが、シーケンス制御処理中に異常が発生した場合は
、プログラミング作成ツール等により全てのプログラム
・ステップを読み出してCRT表示画面上に表示し、故
障箇所を特定する。一方、ラダー回路は何千ステップも
あり、数十行程度しか表示できないCRT表示画面によ
り特定のラダー回路を捜し出すのは困難であるため、通
常はラダー回路を全てプリント・アウトし、このプログ
ラム・リストを現場に持ち込んで実際の回路とプログラ
ム上の回路とを対応させている。
The programmable controller stores such ladder programs internally and executes control operations, but if an error occurs during sequence control processing, all program steps can be deleted using a programming creation tool, etc. It is read out and displayed on the CRT display screen to identify the location of the failure. On the other hand, ladder circuits have thousands of steps, and it is difficult to find a specific ladder circuit on a CRT display screen that can only display a few dozen lines. We bring this to the site and match the actual circuit with the circuit on the program.

しかしながら、このようなラダー回路特定方式はきわめ
て作業性が悪い。
However, such a ladder circuit identification method has extremely poor workability.

本発明のプログラマブル・コントローラにあっては、次
に述べるような方式により、ラダー回路を特定する。
In the programmable controller of the present invention, the ladder circuit is specified by the method described below.

第14図は、プログラマブル・コントローラのCPUボ
ード10にプログラミング・ツールを接続した構成図で
ある。CPtJボード10は説明の簡単のためにCPU
101 、R3232Cボート111 、 RAM10
6 、内部バスb1のみを表わす、また、プログラミン
グ・ツールは、CPUボード10のR3232Cボート
111に接続され、表示部PTCRT 、キーボード操
作部PTKB、主メモリPTHI 。
FIG. 14 is a configuration diagram in which a programming tool is connected to the CPU board 10 of the programmable controller. The CPtJ board 10 uses a CPU for ease of explanation.
101, R3232C boat 111, RAM10
6. Only the internal bus b1 is shown, and the programming tool is connected to the R3232C board 111 of the CPU board 10, including a display section PTCRT, a keyboard operation section PTKB, and a main memory PTHI.

補助メモリPTM2を有する。It has an auxiliary memory PTM2.

上記したように、プログラミング・ツール上ではシーケ
ンス制御に対応してラダー回路を編集し、シーケンス・
プログラム・イメージ・ファイルIMFに一旦保存し、
作成されたラダー・プログラムはR3232Cボート1
11を介してRA M 106へ送信される。この時、
ラダー・プログラムとともに、ラダー回路と各種コメン
トとを対応させた回路/コメント対応テーブルOCTも
同時に送信する。
As mentioned above, on the programming tool, you can edit the ladder circuit corresponding to sequence control, and
Temporarily save it to the program image file IMF,
The created ladder program is R3232C boat 1
11 to RAM 106. At this time,
Along with the ladder program, a circuit/comment correspondence table OCT in which ladder circuits are associated with various comments is also transmitted at the same time.

この回路/コメント対応テーブルCCTは回路上のコメ
ントの位置(ステップ番号)と後述するコメント・ファ
イルCF上のコメント位置とを対応させるものである。
This circuit/comment correspondence table CCT associates the position of a comment (step number) on a circuit with the position of a comment on a comment file CF, which will be described later.

また、この回路/コメント対応テーブルCCTにより、
プログラム変更があった場合でもラダー回路とそのコメ
ントとの位置付けを記憶できる。
Also, with this circuit/comment correspondence table CCT,
Even if the program is changed, the positioning of the ladder circuit and its comments can be memorized.

これによ°すc P U 101は、送信されたシーケ
ンス・プログラムSQPと回路/コメント対応テーブル
OCTを設定する。
Accordingly, CPU 101 sets the transmitted sequence program SQP and circuit/comment correspondence table OCT.

更に、プログラミング・ツール側では補助記憶PTH2
に、ラダー回路のステップ番号とこのにラダー回路に付
加されるコメントの内容とを対応させて格納したコメン
ト・ファイルCFを設定する。
Furthermore, on the programming tool side, auxiliary memory PTH2
A comment file CF is set in which the step number of the ladder circuit and the content of the comment added to the ladder circuit are stored in correspondence with each other.

第15図はコメント・ファイルCFの内容を示し、第1
6図は回路/コメント対応テーブルOCTの内容を示す
、このコメント・ファイルCFはプログラミング・ツー
ル側でなく、CPUボード10測のRA M 106に
設定するようにしても良い、また、ステップ番号とサブ
コメントとを対応させたコメント・ファイルを追加設定
するようにしてもよい。
Figure 15 shows the contents of comment file CF.
Figure 6 shows the contents of the circuit/comment correspondence table OCT.This comment file CF may be set in the RAM 106 of the CPU board 10, rather than in the programming tool. You may additionally set a comment file that corresponds to comments.

さて、プログラミング・ツール上でラダー回路の特定箇
所を探し出す場合の動作を第17図を用いて説明する。
Now, the operation when searching for a specific location in the ladder circuit on the programming tool will be explained using FIG. 17.

プログラミング・ツールはコメント・ファイルCF、回
路/コメント対応テーブルCCTの内容を読み出し、C
RT表示装置に次の表示画面31,32,33.34を
表示するように予め設定しておく。
The programming tool reads the contents of comment file CF and circuit/comment correspondence table CCT, and writes C
The RT display device is set in advance to display the following display screens 31, 32, 33, and 34.

プログラミング・ツールのCRT表示装置の初期画面は
回路モニタ・メニュー画面S1であり、これより回路コ
メント表示画面S2を選択すると、CRT上に回路コメ
ント・リストを一覧表形式で表示する。この回路コメン
ト表示画面S2より更にサブコメント表示画面S3を選
択すると、当該回路コメントに含まれる全てのサブコメ
ントを表示する。そして、サブコメントに対応して回路
表示画面S4を選択すると、このサブコメントに対応す
るラダー回路を表示する。
The initial screen of the CRT display device of the programming tool is a circuit monitor menu screen S1, and when a circuit comment display screen S2 is selected from this screen, a circuit comment list is displayed in a list format on the CRT. When the sub-comment display screen S3 is further selected from this circuit comment display screen S2, all sub-comments included in the circuit comment are displayed. Then, when the circuit display screen S4 is selected in response to a sub-comment, a ladder circuit corresponding to this sub-comment is displayed.

即ち、第13図のようなラダー・プログラムからあるラ
ダー回路を特定するには、回路コメントのリストを表示
して所望の回路コメントを選択し、更にこの回路コメン
トに含まれるサブコメントに対応するラダー回路を指定
して特定のラダー回路をCRT表示画面に表示すること
ができる。
That is, to identify a certain ladder circuit from a ladder program as shown in FIG. By specifying a circuit, a specific ladder circuit can be displayed on the CRT display screen.

尚、回路モニタ・メニュー画面S1または回路コメント
・リストS2から直接回路表示画面S4を選択するよう
にしても良い、また、各表示画面はページ更新スクロー
ル、ページ更新モニタリングを行うことができる。
Note that the circuit display screen S4 may be directly selected from the circuit monitor menu screen S1 or the circuit comment list S2, and page update scrolling and page update monitoring can be performed on each display screen.

このように、本発明のプログラマブル・コントローラで
は、コメント・ファイルと回路/コメント対応テーブル
を設定してこれを読み出し、ラダー回路に付加した各種
のコメントとラダー回路とを対応させて階層的にCRT
に表示するので、所望のラダー回路を直ちに検出するこ
とができる。
In this way, in the programmable controller of the present invention, a comment file and a circuit/comment correspondence table are set and read, and various comments added to a ladder circuit are made to correspond to the ladder circuit, so that the CRT can be written hierarchically.
The desired ladder circuit can be immediately detected.

上記は回路調整時またはエラー発生時のラダー回路の探
索容易を実現したものであるが、次に、ラダー・プログ
ラムの作成、デバッグ時の動作の改善について述べる。
The above described method makes it easy to search the ladder circuit when adjusting the circuit or when an error occurs.Next, we will discuss how to improve the operation when creating and debugging a ladder program.

一般的に、ラダー・プログラムを採用するシーケンス制
御処理は、自己診断等の共通処理、I10ボード側の入
力レジスタ及び出力レジスタの入出力リフレッシュ処理
、設定されたラダー・プログラムの実行、上位機器等に
対するサービス処理等からなる処理ルーチンで実行され
る。
In general, sequence control processing that uses a ladder program includes common processing such as self-diagnosis, input/output refresh processing of input registers and output registers on the I10 board side, execution of a set ladder program, and control of host devices, etc. It is executed by a processing routine consisting of service processing and the like.

本発明のプログラマブル・コントローラでは、シーケン
ス制御プログラム作成時はI10ボード装着なしでもプ
ログラミングかつデバッグを行えるように、第18図に
示すように、共通処理の次の入出力リフレッシュ処理を
省くようにした。これにより、I10ボードなしでプロ
グラミング・ツール等のデバッガからの指示により、デ
バッグ動作を行うことができる。
In the programmable controller of the present invention, when creating a sequence control program, the input/output refresh process following the common process is omitted so that programming and debugging can be performed without installing the I10 board, as shown in FIG. This allows debug operations to be performed without the need for an I10 board in response to instructions from a debugger such as a programming tool.

第19図は、本発明のプログラマブル・コントローラに
おけるラダー・プログラムのプログラミング機能の概念
図である。この国内の各々のブロックは本発明のプログ
ラマブル・コントローラのソフトウェア的な機能ブロッ
クである。
FIG. 19 is a conceptual diagram of the programming function of the ladder program in the programmable controller of the present invention. Each of these domestic blocks is a software functional block of the programmable controller of the present invention.

この図における各機能ブロックの動作は次の通りである
The operation of each functional block in this figure is as follows.

回路編集機能201はラダー回路の各回路要素を編集す
る機能であり、この機能を用いてプログラマはラダー回
路設計時に各回路要素のアドレスをデバイス名等に類似
した信号名で記述する。信号定義機能202は各回路要
素の信号名とアドレスとの対応を予め設定しておくテー
ブル形式の設定部である。コンパイル機能203は、回
路編集機能201で生成したラダー回路内の信号名とこ
れに対応する信号定義機能202からのアドレスとを参
照し、更にアドレス自動生rti、l!i能204から
の信号を参照して、実行形式のプログラムをシーケンス
処理部205へ送信するものである。アドレス自動生成
機能204は、信号定義機能202からの信号名に自動
的に詳細アドレスを割り付けるa能ブロックである。
The circuit editing function 201 is a function for editing each circuit element of a ladder circuit. Using this function, a programmer writes the address of each circuit element using a signal name similar to a device name or the like when designing a ladder circuit. The signal definition function 202 is a table-type setting unit that presets the correspondence between the signal name and address of each circuit element. The compile function 203 refers to the signal name in the ladder circuit generated by the circuit editing function 201 and the corresponding address from the signal definition function 202, and further automatically generates addresses rti, l! Referring to the signal from the i-function 204, the executable program is sent to the sequence processing section 205. The automatic address generation function 204 is an a function block that automatically assigns a detailed address to the signal name from the signal definition function 202.

具体的にこれらの機能を利用してラダー・プログラムを
作成する手順を次に説明する。
The steps for creating a ladder program using these functions will be explained below.

プログラミング・ツール及び回路編集機能201により
、第20図のようなラダー回路を生成する。
A ladder circuit as shown in FIG. 20 is generated using the programming tool and circuit editing function 201.

この時、リレー、出力部等の各回路要素はSWl、C0
ILIのように信号名で回路要素を設定しておく、但し
、信号名SWI、SW2.C0ILI。
At this time, each circuit element such as a relay and an output section is SWl, C0
Set the circuit elements by signal names such as ILI, however, the signal names SWI, SW2 . C0ILI.

C0IL2.IRLI、TIMI、CNTl、REGI
については、第21図のように信号定義機能202内に
アドレスX、X、Y、Y、1.T、C。
C0IL2. IRLI, TIMI, CNTl, REGI
As shown in FIG. 21, addresses X, X, Y, Y, 1 . T.C.

Dと予め対応させておく、ここで、Xは入力、Yは出力
、■は内部リレー、Tはタイマ、Cはカウンタ、Dはデ
ータ・レジスタを表わすアドレスである。
It is made to correspond in advance to D, where X is an input, Y is an output, ■ is an internal relay, T is a timer, C is a counter, and D is an address representing a data register.

そして、コンパイル機能203にて各ラダー回路要素に
詳細アドレスが設定されていないものについては、アド
レス自動生成機能204について詳細アドレスを自動的
に割り付けるようにする。即ち、回路素子SWIにアド
レスXのみが設定されていて詳細アドレスX×××が設
定されていなければ、詳細アドレスX001を割り当て
る。この時、ラダー回路要素の信号名に付加される番号
の若い順から詳細アドレスを順番に設定していく、この
結果を第22図に示す。即ち、信号名SW1にはアドレ
スX001、信号名SW2名にはアドレスX002とい
うように設定される。
If a detailed address is not set for each ladder circuit element by the compile function 203, the automatic address generation function 204 automatically assigns a detailed address. That is, if only address X is set in circuit element SWI and detailed address XXX is not set, detailed address X001 is assigned. At this time, detailed addresses are set in order from the smallest number added to the signal name of the ladder circuit element. The result is shown in FIG. That is, address X001 is set for signal name SW1, address X002 is set for signal name SW2, and so on.

次に、このようにしてコンパイル機能で得られた実行形
式のプログラムは、シーゲンス制御処理部で処理をする
が、デバッグ段階でI10ボードが装着されていない状
態であっても第18図の処理ルーチン図に示すように、
入出力リフレッシュ処理をバイパスするため、CPUボ
ード10のみでI10ボードの装着なしにデバッグ動作
を実行できる。そして、デバッグ結果により必要に応じ
て詳細アドレスを付は代える。
Next, the executable program obtained by the compile function in this way is processed by the Sequence control processing section, but even if the I10 board is not installed at the debugging stage, the processing routine shown in FIG. As shown in the figure,
Since input/output refresh processing is bypassed, debugging operations can be performed using only the CPU board 10 without installing the I10 board. Then, depending on the debug result, the detailed address is assigned or changed as necessary.

従って、各ラダー回路要素のアドレスを意識することな
く、信号名と詳細アドレスを自動的に対応付けできるた
めにシーケンス制御プログラムの設計が容易となり、ま
た、I10ボード装着なしでデバッグ動作を実行でき、
シーゲンス処理に対応するリレー盤の設計終了前にラダ
ー・10グラムの動作確認を行うことができる。
Therefore, it is possible to automatically associate signal names and detailed addresses without being aware of the addresses of each ladder circuit element, making it easy to design a sequence control program, and debug operations can be performed without installing an I10 board.
It is possible to check the operation of the rudder and 10 grams before completing the design of the relay board that supports Siegens processing.

また、本発明のプログラマブル・コントローラは、何千
ステップにもなるラダー・プログラムについて、次のよ
うにして、工程毎にブロック分割してプログラミングす
るようにした。第23図(a)、(b)、(c)にその
プログラミング方式を表わす。
Further, in the programmable controller of the present invention, a ladder program having thousands of steps is divided into blocks for each process and programmed as follows. The programming method is shown in FIGS. 23(a), (b), and (c).

第23図(a)は工程1、(b)は工程2、(C)は工
程5のラダー・プログラムの一部とする。
FIG. 23(a) is a part of the ladder program for step 1, (b) is for step 2, and FIG. 23(C) is for step 5.

工程1の最終ステップには、本発明にて新たに定義した
起動命令″ACT PROGl、2”及び終了命令“I
NACT PROGl、1″を設定する。これにより、
工程1の制御動作が最終ステップに達すると、この工程
1のブロック・ラダー・プログラムPROG1.1を停
止して工程2のブロック・ラダー・プロダラムPROG
1.2を起動する。これにより工程2の制御動作が開始
する。
The final step of process 1 includes the start command "ACT PROGl, 2" and the end command "I" newly defined in the present invention.
Set NACT PROGl, 1″. This will result in
When the control operation of process 1 reaches the final step, the block ladder program PROG1.1 of process 1 is stopped and the block ladder program PROG of process 2 is started.
Start 1.2. This starts the control operation of step 2.

ブロック・ラダー・プログラムPROG1.2の最終ス
テップには当該ラダー・プログラムの停止命令“INA
CT PROGl、2”と工程3,4.5の並列起動命
令“ACT PROGl、3” 、  ”ACT PR
OG2.1″“ACT PROG3.1″が設定され、
これらの工程3.4.5が同時に起動される。
The final step of the block ladder program PROG1.2 includes a stop command “INA” for the ladder program.
CT PROGl, 2" and parallel activation instructions of steps 3 and 4.5 "ACT PROGl, 3", "ACT PR
OG2.1""ACT PROG3.1" is set,
These steps 3.4.5 are activated simultaneously.

工程5は、工程3,4の終了を監視しており、工程3,
4.5の停止を検出すると、停止命令“I N A C
T PROG3.1″及び“ACT PROGl、1”
により、このシーケンス制御処理の開始ステップである
工程1に戻る。
Process 5 monitors the completion of processes 3 and 4, and
4.5 When the stop is detected, the stop command “I N A C
T PROG3.1'' and “ACT PROGl,1”
Then, the process returns to step 1, which is the starting step of this sequence control process.

このように、ラダー・プログラムの起動命令“ACT”
及び停止命令“I NACT″を定義したので、何千に
もなる一連のシーケンス制御プログラムを数個のブロッ
クに分割して並行にプログラミングを行うことができる
。また、ラダー・プログラムどうしで起動、終了を通知
しあうので、ブロック分割したラダー・プログラムをそ
れぞれ複数のCPUボードに設定してシーケンス制御動
作させることもできる。
In this way, the ladder program activation command “ACT”
and stop command "INACT" are defined, it is possible to divide a series of sequence control programs numbering into thousands into several blocks and perform programming in parallel. Furthermore, since the ladder programs notify each other of their startup and termination, it is also possible to set each block-divided ladder program on a plurality of CPU boards and operate them under sequence control.

第24図は、ベーシック・プログラム処理を設定したC
PUボード11、ラダー・プログラム処理のみ設定した
CPUボード12.13.14を組み合わせて実際の制
御ラインL上の制御対象Mを制御する例である。
Figure 24 shows C with basic program processing set.
This is an example in which a control target M on an actual control line L is controlled by combining the PU board 11 and CPU boards 12, 13, and 14 set only for ladder program processing.

尚、CPUボード12にはラダー・プログラムLDI、
LD2を設定してI10ボード群cioを設置し、CP
Uボード13にはラダー・プログラムLD3.LD4.
LD5を設定してI10ボード群C20を設置し、CP
Uボード14にはラダー・プログラムLD6を設定して
I10ボード群C30を設置する。
In addition, the CPU board 12 includes a ladder program LDI,
Set up LD2, install I10 board group cio, and install CP
The U board 13 has a ladder program LD3. LD4.
Set up LD5, install I10 board group C20, and
The ladder program LD6 is set on the U board 14, and the I10 board group C30 is installed.

CPUボード11に設定するベーシック・プログラムの
例を第25図に表わす。
An example of a basic program set on the CPU board 11 is shown in FIG.

また、各ラダー・プログラムLDI、LD2゜LD3.
LD4.LD5.LD6はそれぞれ制御対象Mに対する
一連のシーケンス制御プログラムであるが、上述したよ
うなブロック構成のラダー・プログラムであり、独立に
プログラミングすることができる。
Also, each ladder program LDI, LD2°LD3.
LD4. LD5. LD6 is a series of sequence control programs for each controlled object M, and is a ladder program having a block structure as described above, and can be programmed independently.

CPUボード11のベーシック・プログラムは、各ラダ
ー・プログラムに起動指令を与え、その終了指令を受け
るものである。
The basic program of the CPU board 11 gives a start command to each ladder program and receives its termination command.

動作開始となると、CPUボード11はCPUボード1
2のラダー・プログラムLD1、続いてラダー・プログ
ラムLD2を起動する。これらのプログラムが終了する
と、このときのシーケンス処理結果に応じてCPUボー
ド13のラダー・プログラムLD3.tたはLD4を実
行する。プログラムLD3またはLD4を終了すると、
引き続き、ベーシック・プログラムは、CPUボード1
3内のラダー・プログラムLD5とCPUボード14内
のラダー・プログラムLD5とを並列に起動する。
When the operation starts, the CPU board 11
2 ladder program LD1 and then ladder program LD2 are started. When these programs are completed, the ladder program LD3. Or execute LD4. When you finish program LD3 or LD4,
Continue to run the basic program on CPU board 1.
3 and the ladder program LD5 in the CPU board 14 are started in parallel.

このように、この図に示したシステムによれば、一連の
シーケンス制御動作をブロック分けしたシーケンス制御
プログラムを複数のプログラマブル・コントローラで操
作、処理することができ、効率のよいシーケンス制御処
理が可能である。
In this way, according to the system shown in this figure, a sequence control program in which a series of sequence control operations is divided into blocks can be operated and processed by multiple programmable controllers, and efficient sequence control processing is possible. be.

以上述べたように、本発明のプログラマブル・コントロ
ーラによれば、シーゲンス制御の処理速度の向上、シス
テム変更時の容易な再設計が実現でき、処理効率の高い
プログラマブル・コントローラを実現できる。
As described above, according to the programmable controller of the present invention, it is possible to improve the processing speed of Sequence control, to easily redesign the system when changing the system, and to realize a programmable controller with high processing efficiency.

〈発明の効果〉 以上述べたように、本発明のプログラマブル・コントロ
ーラによれば、以下の効果を得る。
<Effects of the Invention> As described above, the programmable controller of the present invention provides the following effects.

(1)1ビット処理プロセッサがプログラム・メモリか
ら直接プログラム命令を読み出して実行するため、プロ
セッサがプログラム命令を読み出して制御実行権を毎回
決定する必要がなく、その分処理速度が速くなるととも
に処理時の負担を軽減することができる。
(1) 1-bit processing Since the processor directly reads program instructions from program memory and executes them, there is no need for the processor to read program instructions and determine control execution rights each time, which increases processing speed and reduces processing time. can reduce the burden of

(2)シーケンス制御処理と一般的なベーシック処理と
を交互に実行するため、効率的な処理を実現できる。
(2) Efficient processing can be realized because sequence control processing and general basic processing are executed alternately.

(3)実行する言語の種類を上位コンピュータから送信
することができるため、処理言語の変更が容易であり、
システム全体の構成の変更も容易である。
(3) Since the type of language to be executed can be sent from the host computer, it is easy to change the processing language;
It is also easy to change the configuration of the entire system.

(4)I10ボード・ドライバは標準ドライバであり、
設置するI10ボード毎に設定する必要がないため、ド
ライバ設定操作が著しく削減でき、システム変更も容易
である。
(4) The I10 board driver is a standard driver,
Since there is no need to configure settings for each I10 board installed, driver setting operations can be significantly reduced and system changes can be made easily.

(5)プロセッサとI10ボードとのデータ転送は、デ
ータ転送もとからフレーム単位にストローブ信号ととも
に送信しデータ転送先は最後にステイタス・フレームを
送信するため、フレーム転送は同期式転送となり、プロ
セッサとI10ボードとの全体のデータ転送は非同期式
転送となるため、サイクル毎に相互の応答を確認できシ
ステムの信頼性を高めることができ、また、非同期式転
送により応答速度の興なるI10ボードを設置すること
ができる。
(5) In data transfer between the processor and the I10 board, the data transfer source sends a strobe signal in units of frames, and the data transfer destination sends a status frame at the end, so the frame transfer is a synchronous transfer, and the processor and Since the entire data transfer with the I10 board is asynchronous transfer, mutual responses can be confirmed every cycle, increasing system reliability.In addition, the I10 board, which improves response speed due to asynchronous transfer, can be installed. can do.

(6)ラダー回路のチエツク時はプログラミング・ツー
ル上でラダー回路に付加されるコメントにより階層的に
CR7画面に表示して調整すべきラダー回路を特定でき
、ラダー回路の抽出が容易である。
(6) When checking a ladder circuit, comments added to the ladder circuit on the programming tool can be displayed hierarchically on the CR7 screen to specify the ladder circuit to be adjusted, making it easy to extract the ladder circuit.

(7)ラダー回路作成時は信号名を付けるのみでアドレ
スを自動的に割り当てることができ、I10ボード装着
なしでデバッグが容易となる。
(7) When creating a ladder circuit, addresses can be automatically assigned just by naming signals, making debugging easier without the need to install an I10 board.

(8)内部で発生した異常状態を記録することができる
ので、後で異常発生状況を容易に確認、解析することが
できる。
(8) Abnormal conditions that occur internally can be recorded, so the abnormal situation can be easily confirmed and analyzed later.

(9)何千ステップにもなるラダー・プログラムを各工
程毎にブロック単位で生成することができるので、1個
のシーケンス制御のプログラミングを分割して作成でき
プログラミングの効率を向上させることができる。
(9) Since a ladder program with thousands of steps can be generated in block units for each process, programming for one sequence control can be divided and created, improving programming efficiency.

(10)いくつかのラダー・プログラムをベーシック・
プログラムによりいくつかのプロセッサ・ボードで実行
するため、長いラダー・プログラムのみで全体の処理フ
ローを構成しなくてもよく、上位コンピュータは各々の
プロセッサ・ボードの実行状況を把握でき、最適タイミ
ングで相互のデータ通信を行うことができる。
(10) Some basic ladder programs
Since the program is executed on several processor boards, the entire processing flow does not have to consist of only a long ladder program, and the host computer can grasp the execution status of each processor board and can communicate with each other at the optimal timing. data communication.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明のプログラマブル・コントローラのプロ
セッサ・ボード及びI10ボードの構成を表わす図、第
2図は本発明のプログラマブル・コントローラの動作を
説明するためのラダー・プログラムを表わす図、第3図
は本発明のプログラマブル・コントローラにおけるB 
P U 102とCPU101の動作を説明するための
図、第4図は本発明のプログラマブル・コントローラの
シーケンス制御処理とベーシック処理との相関間係を表
わす図、第5図は本発明のプログラマブル・コントロー
ラに対して上位コンピュータから処理言語の設定を行う
場合のフローチャート、第6図は本発明のプログラマブ
ル・コントローラの標準I10ドライバの動作を表わす
概念図、第7図は本発明のプログラマブル・コントロー
ラの標準I10ドライバにおける処理定義テーブルの作
成方式を表わす図、第8図は本発明のプログラマブル・
コントローラの篠準I10ドライバによるI10カド・
アクセス手順を表わすフローチャート、第9図及び第1
0図は本発明のプログラマブル・コントローラのCPU
ボードとI10ボードとのデータ転送を表わすタイムチ
ャート、第11図は本発明のプログラマブル・コントロ
ーラに設置される異常記録装置の構成を表わす図、第1
2図は第11図に表わした異常記録装置の情報を上位コ
ンピュータのCRTに表示した場合を表わす図、第13
図はプログラミング・ツールで生成した各種コメントを
付加したラダー回路を表わす図、第14図は本発明のプ
ログラミング・ツールとラダー回路のステップ番号に対
応するコメントを表示する機能とを表わすブロック図、
第15図は第14図に示した機能内のコメント・ファイ
ルを表わす図、第16図は第14図に示した機能内の回
路/コメント対応テーブルを表わす図、第17図は第1
4図の機能によるプログラミング・ツールのCRT画面
表示の遷移状態図、第18図は本発明のプログラマブル
・コントローラの処理ルーチンを表わす図、第19図は
本発明のプログラマブル・コントローラのラダー回路プ
ログラミング時の機能ブロックを表わす図、第20図は
ラダー回路を生成した際の図、第21図はラダー回路の
信号名とアドレスの対応表を表わす図、第22図は第2
1図のラダー回路の信号名に詳細アドレスを割り当てた
際の図、第23図(a)、(b)、(C)はブロック毎
に作成したラダー・プログラムを表わす図、第24図は
数枚のプログラマブル・コントローラによって一連のシ
ーゲンス制御プログラムを実行する場合を表わす図、第
25図は第24図のシステムを制御するベーシック・プ
ログラムの一例、第26図はプログラマブル・コントロ
ーラを用いた一般的なシステムの構成を表わす図、第2
7図はシーゲンス制御プログラムの一例であるラダー・
プログラムの一部を表わす図、第28図は第27図のラ
ダー・プログラムに対応するプログラム命令を表わす図
、第29図は従来のプログラマブル・コントローラ内の
プロセッサ・ボードの回路ブロック図である。 10.11.12.13・・・CPUボード、101・
・・プロセッサ、102・・・CPUゲート・アレイ、
103・・・1ビット処理プロセッサ、104・・・プ
ログラム・メモリ、105・・・ROM、106・・・
データ・メモリ、 107・・・I10インターフェイス、108・・・リ
アルタイム・クロック発生部、109・・・通信バッフ
ァ、 110・・・通信インターフェイス、 111・・・R3232Cボート、bl・・・内部バス
、bb・・・I10バス、B・・・上位バス、81・・
・実行権切換処理部、82・・・タイマ、cl、c2.
c3・・・I10ボード、clo、 c20. c30
・・・I10ボード群、c 11. c 12. c2
1・・・インターフェイス、c22・・・8ビット・プ
ロセッサ、c23・・・メモリ、c24・・・インター
フェイス。 第2図 第3図 第5図 第7図 第18図 第19図 第20図 第21図 第22図 RE G I      DU Ll 1第24図 第25図 し 第23図 (a) (c) 第27図 第28図
FIG. 1 is a diagram showing the configuration of the processor board and I10 board of the programmable controller of the invention, FIG. 2 is a diagram showing a ladder program for explaining the operation of the programmable controller of the invention, and FIG. is B in the programmable controller of the present invention.
A diagram for explaining the operation of the P U 102 and the CPU 101, FIG. 4 is a diagram showing the correlation between sequence control processing and basic processing of the programmable controller of the present invention, and FIG. 5 is a diagram for explaining the operation of the programmable controller of the present invention. FIG. 6 is a conceptual diagram showing the operation of the standard I10 driver of the programmable controller of the present invention, and FIG. 7 is a flowchart for setting the processing language from the host computer. FIG. 8 is a diagram showing the method of creating a process definition table in the driver.
I10 card by Shino Jun I10 driver of controller
Flowcharts representing the access procedure, Figures 9 and 1
Figure 0 shows the CPU of the programmable controller of the present invention.
FIG. 11 is a time chart showing the data transfer between the board and the I10 board; FIG.
Figure 2 is a diagram showing the case where the information of the abnormality recording device shown in Figure 11 is displayed on the CRT of the host computer;
14 is a block diagram showing the programming tool of the present invention and a function for displaying comments corresponding to the step numbers of the ladder circuit.
Figure 15 is a diagram showing the comment file in the function shown in Figure 14, Figure 16 is a diagram showing the circuit/comment correspondence table in the function shown in Figure 14, and Figure 17 is a diagram showing the comment file in the function shown in Figure 14.
Figure 4 is a transition state diagram of the CRT screen display of the programming tool according to the functions, Figure 18 is a diagram showing the processing routine of the programmable controller of the present invention, and Figure 19 is a diagram showing the ladder circuit of the programmable controller of the present invention during programming. Figure 20 is a diagram showing the functional blocks, Figure 20 is a diagram when the ladder circuit is generated, Figure 21 is a diagram showing the correspondence table between signal names and addresses of the ladder circuit, and Figure 22 is the diagram when the ladder circuit is generated.
Figure 1 shows when detailed addresses are assigned to the signal names of the ladder circuit. Figures 23 (a), (b), and (C) are diagrams showing the ladder program created for each block. Figure 24 shows the numbers. Figure 25 is an example of a basic program that controls the system in Figure 24, and Figure 26 is a general example of a program using a programmable controller. Diagram showing the system configuration, Part 2
Figure 7 shows an example of the Siegen control program.
FIG. 28 is a diagram showing a part of the program, FIG. 28 is a diagram showing program instructions corresponding to the ladder program of FIG. 27, and FIG. 29 is a circuit block diagram of a processor board in a conventional programmable controller. 10.11.12.13...CPU board, 101.
... Processor, 102 ... CPU gate array,
103... 1-bit processing processor, 104... program memory, 105... ROM, 106...
Data memory, 107... I10 interface, 108... Real-time clock generator, 109... Communication buffer, 110... Communication interface, 111... R3232C boat, bl... Internal bus, bb ...I10 bus, B...upper bus, 81...
- Execution right switching processing unit, 82... timer, cl, c2.
c3...I10 board, clo, c20. c30
...I10 board group, c 11. c12. c2
1...Interface, c22...8-bit processor, c23...Memory, c24...Interface. Figure 2 Figure 3 Figure 5 Figure 7 Figure 18 Figure 19 Figure 20 Figure 21 Figure 22 RE G I DU Ll 1 Figure 24 Figure 25 Figure 23 (a) (c) Figure 27Figure 28

Claims (10)

【特許請求の範囲】[Claims] (1)制御対象と各種情報を授受するI/Oボード群と
、シーケンス制御プログラムを実行して前記I/Oボー
ド群を介して前記制御対象に制御信号を与えるプロセッ
サ・ボードとから構成されるプログラマブル・コントロ
ーラにおいて、 前記プロセッサ・ボードは、 全体を制御し、前記シーケンス制御プログラム内の命令
の一部と、前記シーケンス制御プログラムの起動及び終
了指示を行い汎用的な演算処理、情報処理または制御動
作を行うベーシック・プログラムとを実行するプロセッ
サと、 前記シーケンス制御プログラムが格納されるプログラム
・メモリに直接接続し、前記プログラム・メモリから順
次命令を読み出して実行し、読み出した命令が前記プロ
セッサで実行すべきシーケンス応用命令である場合はこ
の命令を前記プロセッサに与える1ビット処理プロセッ
サと、 一時的にデータを記憶するデータ・メモリと、自己診断
プログラムを記憶する固定メモリと、上位コンピュータ
との通信動作に関与する通信インターフェイスと、 前記制御対象と各種情報を授受するI/Oボードを接続
するI/Oバスに結合するためのI/Oインターフェイ
スと、 前記プロセッサと前記1ビット処理プロセッサと前記デ
ータ・メモリと前記固定メモリと前記通信インターフェ
イスと前記I/Oインターフェイスとを相互に結合する
内部バスとを備えたプログラマブル・コントローラ。
(1) Consists of a group of I/O boards that exchange various information with a controlled object, and a processor board that executes a sequence control program and provides control signals to the controlled object via the I/O board group. In the programmable controller, the processor board controls the entire system, issues part of the instructions in the sequence control program, and instructions for starting and terminating the sequence control program, and performs general-purpose arithmetic processing, information processing, or control operations. a processor that executes a basic program that performs the following; and a processor that is directly connected to a program memory in which the sequence control program is stored, reads and executes instructions sequentially from the program memory, and executes the read instructions by the processor. In the case of an exponent sequence application instruction, a 1-bit processing processor that provides this instruction to the processor, a data memory that temporarily stores data, a fixed memory that stores a self-diagnosis program, and a communication operation with a host computer. a related communication interface; an I/O interface for coupling to an I/O bus connecting an I/O board that exchanges various information with the controlled object; the processor, the 1-bit processing processor, and the data memory; and an internal bus interconnecting the fixed memory, the communication interface, and the I/O interface.
(2)前記プロセッサに、前記シーケンス制御プログラ
ムを一定時間実行すると前記シーケンス制御プログラム
を停止して前記ベーシック・プログラムを一定時間実行
する動作を繰り返す実行権切換制御手段を設けたことを
特徴とする請求項(1)記載のプログラマブル・コント
ローラ。
(2) A claim characterized in that the processor is provided with an execution right switching control means that repeats an operation of stopping the sequence control program after executing the sequence control program for a certain period of time and executing the basic program for a certain period of time. The programmable controller according to item (1).
(3)前記上位コンピュータから実行すべきベーシック
言語実行指令またはラダー言語実行指令またはベーシッ
ク言語及びラダー言語実行指令のうちいずれかの実行指
令を受け、指定された言語実行指令に対応した実行環境
を生成する請求項(1)記載のプログラマブル・コント
ローラ。
(3) Receive an execution command from the host computer to execute either a basic language execution command, a ladder language execution command, or a basic language and ladder language execution command, and generate an execution environment corresponding to the specified language execution command. The programmable controller according to claim (1).
(4)前記プロセッサ・ボードに設定するI/Oドライ
バは、立ち上がり時に、各I/Oボードについて、ボー
ドID、ボードのインターフェイスの種類、チャネル数
、コマンド・レジスタ・アドレス及びバッファ・アドレ
スまたはデータ・レジスタ・アドレス、特殊処理が必要
な場合はその特殊処理を指定するアドレスを読み出して
テーブル形式で記憶する処理定義テーブルを設定し、デ
ータ出力処理を行う際は前記処理定義テーブルを参照す
ることを特徴とする請求項(1)記載のプログラマブル
・コントローラ。
(4) At startup, the I/O driver set on the processor board inputs the board ID, board interface type, number of channels, command register address, buffer address, or data address for each I/O board. A processing definition table is set in which a register address and an address specifying the special processing are read out and stored in a table format when special processing is required, and the processing definition table is referred to when performing data output processing. The programmable controller according to claim (1).
(5)前記プロセッサ・ボード及び前記I/Oボード群
にストローブ信号発生手段を設け、データ転送サイクル
が開始すると、データ転送要求もとボードはフレーム送
信毎にストローブ信号を送信して当該フレームを有効と
し、データ転送要求先ボードはデータ・フレーム及びス
テイタス・フレームまたはステイタス・フレーム送信毎
にストローブ信号を送信してデータ転送サイクルを終了
することを特徴とする請求項(1)記載のプログラマブ
ル・コントローラ。
(5) A strobe signal generation means is provided in the processor board and the I/O board group, and when a data transfer cycle starts, the data transfer request source board sends a strobe signal every time a frame is transmitted to validate the frame. 2. The programmable controller according to claim 1, wherein the data transfer request destination board transmits a strobe signal every time a data frame and a status frame or a status frame is transmitted to complete the data transfer cycle.
(6)異常の種類の数に対応して異常検出回路を設け、
前記プロセッサは異常検出信号を割込信号として受け付
けて内部のタイマ機能の示す時刻と異常検出の内容とを
テーブル形式で記憶することを特徴とする請求項(1)
記載のプログラマブル・コントローラ。
(6) Provide abnormality detection circuits corresponding to the number of types of abnormalities,
Claim (1) characterized in that the processor receives the abnormality detection signal as an interrupt signal and stores the time indicated by an internal timer function and the contents of the abnormality detection in a table format.
Programmable controller as described.
(7)前記ラダー言語で生成したラダー・プログラム内
のラダー回路に付加するコメントを当該ラダー回路のス
テップ番号に対応させて格納するコメント・ファイルと
、当該ラダー回路のステップ番号と前記コメント・ファ
イル中のコメント番号とを対応付けした回路/コメント
・テーブルとを設定し、プログラミング・ツールから回
路コメント、ステップ番号、ラダー回路を読み出せるよ
うにしたことを特徴とする請求項(1)記載のプログラ
マブル・コントローラ。
(7) A comment file that stores comments to be added to the ladder circuit in the ladder program generated in the ladder language in correspondence with the step number of the ladder circuit, and a step number of the ladder circuit and the comment file. The programmable computer according to claim (1), characterized in that a circuit/comment table is set in which the comment number of the circuit/comment table is associated with the comment number, and the circuit comment, the step number, and the ladder circuit can be read out from the programming tool. controller.
(8)シーケンス制御処理ルーチン内の入出力リフレッ
シュ処理を省略し、ラダー回路作成時は各回路要素に信
号名を割り付け、予め設定した信号名/アドレス対応テ
ーブルにより信号名とアドレスとを対応させ、コンパイ
ル時点で詳細アドレスが割り当てられていないものにつ
いては当該信号名に対応する詳細アドレスをアドレスの
若い順に設定することを特徴とする請求項(1)記載の
プログラマブル・コントローラ。
(8) Omit input/output refresh processing in the sequence control processing routine, assign signal names to each circuit element when creating a ladder circuit, and match signal names and addresses using a preset signal name/address correspondence table. 2. The programmable controller according to claim 1, wherein for those to which detailed addresses are not assigned at the time of compilation, detailed addresses corresponding to the signal names are set in descending order of addresses.
(9)ラダー・プログラムのプログラミング時に、一連
のシーケンス制御動作をいくつかの工程に対応するブロ
ックに分割し、各ブロックの最終ステップのラダー回路
には次に実行すべきブロックを指定する命令と当該ブロ
ックの処理停止を指定する命令とを設定し、ブロック単
位にラダー・プログラムを設定かつ実行するようにした
請求項(1)記載のプログラマブル・コントローラ。
(9) When programming a ladder program, a series of sequence control operations is divided into blocks corresponding to several steps, and the ladder circuit of the final step of each block contains an instruction specifying the next block to be executed and the corresponding 2. The programmable controller according to claim 1, further comprising: setting an instruction for specifying a block processing stop, and setting and executing a ladder program on a block-by-block basis.
(10)ベーシック言語の処理をするプロセッサ・ボー
ドと、シーケンス言語処理専用でありブロック構成のシ
ーケンス制御プログラムを1個以上格納する少なくとも
1枚以上のシーケンス言語処理専用のプロセッサ・ボー
ドと、このシーケンス言語処理専用のプロセッサ・ボー
ドの下位側に設置されて制御対象と制御情報を授受する
I/Oボード群とから構成され、前記ベーシック言語の
処理をするプロセッサ・ボードは、前記シーケンス言語
処理専用のプロセッサ・ボード内の前記ブロック構成の
シーケンス制御プログラムの各々に起動指示、終了指示
を通知することを特徴とするプログラマブル・コントロ
ーラ。
(10) A processor board that processes a basic language, at least one processor board that is dedicated to sequence language processing and stores one or more block-structured sequence control programs, and this sequence language processing board. It consists of a group of I/O boards that are installed on the lower side of a processor board dedicated to processing and exchange control information with control objects, and the processor board that processes the basic language is connected to the processor board dedicated to sequence language processing. - A programmable controller characterized in that a start instruction and an end instruction are notified to each of the block-configured sequence control programs in the board.
JP3331690A 1990-02-14 1990-02-14 Programmable controller Pending JPH03237502A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3331690A JPH03237502A (en) 1990-02-14 1990-02-14 Programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3331690A JPH03237502A (en) 1990-02-14 1990-02-14 Programmable controller

Publications (1)

Publication Number Publication Date
JPH03237502A true JPH03237502A (en) 1991-10-23

Family

ID=12383154

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3331690A Pending JPH03237502A (en) 1990-02-14 1990-02-14 Programmable controller

Country Status (1)

Country Link
JP (1) JPH03237502A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6094718A (en) * 1997-02-26 2000-07-25 Matsushita Electric Works, Ltd. Programmable controller with a BPU that executes first-class instructions, a CPU that executes second-class instructions, and a skip instruction processing section that skips the current instruction without transferring control right to CPU
JP2007094898A (en) * 2005-09-29 2007-04-12 Yokogawa Electric Corp Program management device
JP2013084169A (en) * 2011-10-12 2013-05-09 Hitachi Ltd Controller and processing method of task and ladder

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6094718A (en) * 1997-02-26 2000-07-25 Matsushita Electric Works, Ltd. Programmable controller with a BPU that executes first-class instructions, a CPU that executes second-class instructions, and a skip instruction processing section that skips the current instruction without transferring control right to CPU
DE19807358C2 (en) * 1997-02-26 2001-07-12 Matsushita Electric Works Ltd Programmable control device with a skip processor part without transferring the control right back to the CPU
JP2007094898A (en) * 2005-09-29 2007-04-12 Yokogawa Electric Corp Program management device
JP4582414B2 (en) * 2005-09-29 2010-11-17 横河電機株式会社 Program management device
JP2013084169A (en) * 2011-10-12 2013-05-09 Hitachi Ltd Controller and processing method of task and ladder

Similar Documents

Publication Publication Date Title
KR940002324B1 (en) Programmable controller
EP0814404B1 (en) Debugging apparatus for debugging a program
US5295059A (en) Programmable controller with ladder diagram macro instructions
US6502209B1 (en) Chip with debug capability
CN117573609B (en) System-on-chip with redundancy function and control method thereof
CN114138360B (en) Multi-core programming starting method and system for DSP (digital Signal processor) on Flash
JPH03237502A (en) Programmable controller
JP2519276B2 (en) Failure information collection processing method
GB2244828A (en) Programmable controller
JPH10326203A (en) Debugging devices capable of taking over operation from each other between hardware environments while running programs therein
JPH05241619A (en) Programming device for programmable controller
JPH07281915A (en) Information processor for integrated circuit module synchrinizing duplex system
CN114137854A (en) Multifunctional robot teaching simulation workstation
JPH0196725A (en) Multi-window controller
JP3353819B2 (en) Connection mechanism and connection method between intelligent board and console terminal
JPH08221297A (en) Program debugging device
JP3039918B2 (en) Processor system
JPH03144705A (en) Operation state monitor for programmable controller
JP2000122882A (en) Multi-thread processor and debugging device
JPS6292045A (en) Control system initial program loading
JPS5840619A (en) Sequence controller and its control method
JPH01217536A (en) Mixing language type program processing controller
JPH06223046A (en) Bus tracing execution method
JPH0713907A (en) Data transferring device
JPS59208666A (en) Multiprocessor system