JPH01100604A - プログラマブル・コントローラ及びその実行方式 - Google Patents

プログラマブル・コントローラ及びその実行方式

Info

Publication number
JPH01100604A
JPH01100604A JP25933287A JP25933287A JPH01100604A JP H01100604 A JPH01100604 A JP H01100604A JP 25933287 A JP25933287 A JP 25933287A JP 25933287 A JP25933287 A JP 25933287A JP H01100604 A JPH01100604 A JP H01100604A
Authority
JP
Japan
Prior art keywords
program
main processor
processing
ladder program
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
JP25933287A
Other languages
English (en)
Inventor
Kunio Tanaka
久仁夫 田中
Kimio Maeda
前田 紀美夫
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP25933287A priority Critical patent/JPH01100604A/ja
Publication of JPH01100604A publication Critical patent/JPH01100604A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はラダープログラムと高級言語等で作成されたプ
ログラムを実行するプログラマブル・コントローラ及び
その実行方式に関し、特に2種類のプログラムを高速に
実行するように構成したプログラマブル・コントローラ
及びその実行方式に関する。
〔従来の技術〕
プログラマブル・コントローラは工作機械、生産機械に
広く使用されている。プログラマブル・コントローラは
、従来ハードウェアのリレーを使用して論理を組んでい
た歴史的理由により、ラダーダイヤグラム或いはラダー
プログラムと称する論理表現が広く使用されている。こ
のラダープログラムは従来のハードウェアのリレーを使
用していた技術者にとって、設計及び表現が慣れ親しん
だものであり、又、論理が見易いので、マイクロプロセ
ッサを使用したプログラマブル・コントローラでも広く
使用されている。
このようなリレーの論理を使用した簡単な論理を高速に
実行するビット演算プロセッサを備えたプログラマブル
・コントローラを本願出願人は特願昭62−22001
0号として出願している。
このビット演算プロセッサはラダープログラムをビット
単位で処理し、不必要な命令をパスして高速にラダープ
ログラムを処理するようにしている。
ここでは、このようなビット演算プロセッサをビット・
オペレイション・コントローラ、略してBOCと称する
しかし、このラダープログラムはリレーを論理要素とし
ているので、単純な論理演算しか行うことはできない。
従って、ラダープログラムのなかに、演算機能の集合、
計算、特別な機械を制御するための機能等を実行するた
めの命令を機能命令或いはマクロ命令として備えている
。ここでは、このような命令をマクロ命令と称する。
さらに、マイクロプロセッサの機能の向上及びプログラ
ム言語の普及にともない、ラダープログラムと他の高級
言語等で作成したプログラムの両者を使用してプログラ
ムを作成して、プログラムを実行させるようなプログラ
マブル・コントローラが一般的になっている。
このような、高級言語で作成されたプログラムとラダー
プログラムを実行する場合の例を第4図に示す。図では
高級言語はPASCAL言語で作成されている。図に示
すように、一定時間PASCALプログラムを実行し、
次にラダープログラムを実行し、これを繰り返している
。従って、−方のプログラムを実行しているときは、他
方のプログラムの処理は実行されない。
〔発明が解決しようとする問題点〕
しかし、マイクロプロセッサを使用したプログラマブル
・コントローラはマイクロプロセッサ等の能力の向上に
より、また制御対象の複雑高度化に伴い、より多数の命
令ステップを処理するようになってきている。さらに、
この処理を制御対象が要求する時間内にリアルタイムで
処理しなければならない。従って、プログラマブル・コ
ントローラでの高速処理が一層望まれている。従って、
従来の処理方式では、プログラムの処理が交互に実行さ
れるので、その分実行時間が遅(なるという問題点があ
る。
本発明はこのような点に鑑みてなされたものであり、2
種類以上のプログラムを高速に実行するように構成した
プログラマブル・コントローラ及びその実行方式を提供
することを目的とする。
〔問題点を解決するための手段〕
本発明では上記の問題点を解決するために、第1の発明
では、 ラダープログラムと、PASCAL言語やC言語等の高
級言語で作成されたプログラムを、実行するプログラマ
ブル・コントローラにおいて、該高級言語で作成された
プログラムの管理及び実行処理するメインプロセッサと
、 該高級言語で作成されたプログラムを格納するメモリと
、 前記ラダープログラムを実行するビット・オペレイショ
ン・コントローラと、 前記ラダープログラムを格納するメモリと、を有するこ
とを特徴とするプログラマブル・コントローラが、 提供される。
また、第2の発明では、 ラダープログラムと、PASCAL言語やC言語等の高
級言語で作成されたプログラムを、実行するプログラマ
ブル・コントローラにおいて、高級言語で作成されたプ
ログラムの管理と実行をメインプロセッサで処理し、 前記ラダープログラムをビット・オペレイション・コン
トローラで実行し、 前記ラダープログラムのなかのマクロ命令をメインプロ
セッサで実行するようにしたことを特徴とするプログラ
マブル・コントローラの実行方式提供される。
〔作用〕
高級言語で作成されたプログラムはメインプロセッサで
処理され、ラダープログラムは専用のビット・オペレイ
ション・コントローラで高速に処理し、この処理を平行
して実行することにより、2種類のプログラムを高速に
実行することができる。
また、ラダープログラム内にあるマクロ命令はメインプ
ロセッサで実行し、ラダープログラムの単純な論理演算
のみをビット・オペレイション・コントローラで実行す
ることにより、プログラムをより高速に処理することが
できる。
〔実施例〕
以下、本発明の実施例を図面に基づいて説明する。
第1図は本発明の一実施例のプログラマブル・コントロ
ーラのブロック図である。図において、1はメインプロ
セッサであり、プログラマブル・コントローラ全体の制
御及び主として高級言語で作成されたプログラムを実行
する。その処理内容については後述する。2はプログラ
マブル・コントローラ(PC)の管理ソフトを格納する
ROMであり、メインプロセッサlはこの管理ソフトに
よって、プログラムを実行する。
3はROMであり、高級言語、ここではPASCAL言
語で作成されたPASCALプログラムとラダープログ
ラムが格納される。4はDRAMであり、PASCAL
プログラムが格納される。
これはROM3に比べて読出し速度がDRAMの方が高
速であるので、ROM3に格納されたP’ASCALプ
ログラムを電源投入後に一旦DRAMに転送して、実際
の実行はDRAM4から読出して実行する。
5はDRAMであり、DRAM4と同じように、ROM
3に格納されたラダープログラムを電源投入後に転送し
て、実際の実行はDRAM5から読出して行う。6はビ
ット・オペレイション・コントローラ(以下BOCと称
する)であり、ラダープログラムのリレー形式で記載さ
れた、単純な論理、例えば’READJ、’N0TJ、
’ANDJ、’ORJ等の命令のみをビット単位で、高
速に実行する。ここで、これらの命令をラダープログラ
ムの基本命令と称する。但し、ラダープロダラムのなか
にマクロ命令があると、メインプロセッサ1に割込をか
けて、メインプロセッサ1がマクロ命令の処理を終了す
るのを待ち、メインプロセッサ1からの起動によって、
次のラダープログラムを実行する。
次にメインプロセッサ1とBOC6の分担の詳細につい
て述べる。第2図にメインプロセッサ1とBOC6の処
理の分担を示す。10はメインプロセッサ1が処理すべ
き処理内容であり、以下の処理を含んでいる。
(1)PASCALプログラムの管理及び実行(2)ラ
ダープログラムの起動 (3)ラダープログラム内のマクロ命令の実行(4)プ
ログラマブル・コントローラ内部の診断機能の実行 また、11はBOC6の処理内容であり、ラダープログ
ラムの基本命令を実行する。なお、ラダープログラム内
にマクロ命令があるときは、メインプロセッサlに割込
みをかけて、メインプロセッサ1側でマクロ命令を実行
する。
次にメインプロセッサ1の処理内容とBOC6の処理の
流れについて述べる。第3図にメインプロセッサ1とB
OC6の処理の流れを示す。メインプロセッサ1は第2
図に示したPASCALプログラムの実行等の処理を行
う。BOC6はラダープログラムの基本命令を実行する
。この処理は独立に並行して実行される。ラダープログ
ラムのなかにマクロ命令が出てくると、BOC6はメイ
ンプロセッサ1に割込みをかける。メインプロセッサ1
はPASCALプログラム等の処理を一次停止し、マク
ロ命令IDを第1図のDRAM5から読出し、それに相
当するマクロ命令をROM2からサーチし、実行する。
マクロ命令の実行が終了すると、BOC6に起動をかけ
、メインプロセッサ1は再びPASCALプログラム等
を実行する。BOC6はメインプロセッサIからの起動
により、ラダープログラムの基本命令の実行を再開する
勿論、マクロ命令のなかにはその結果を待たずに次の基
本命令を実行して良い場合がある。このときは、BOC
6は処理を停止せず、基本命令の実行を続行することも
できる。
上記の説明では、高級言語はPASCAL言語で作成す
ることで説明したが、PASCAL言語に限定されるも
のでなく、他のC言語、テッセンブラ言語等でも同様に
使用できる。さらに、これらの複数の言語で作成された
プログラムを一本化してラダープログラムと並列に処理
することもできる。
また、ハードウェアの構成は単に一例を示すものであり
、目的に応じて種々の変形が可能である。
例えば、DRAMの代わりにSRAMを使用することも
できるし、ラダープログラム等をDRAMに転送せずに
ROMに格納したまま、読出して実行することもできる
〔発明の効果〕 以上説明したように本発明では、高級言語で作成された
プログラムはメインプロセッサで処理し、ラダープログ
ラムは専用のビット・オペレイション・コントローラで
高速に処理し、この処理を並行して実行するようにした
ので、2種類のプログラムを高速に実行することができ
る。
また、ラダープログラムのなかにあるマクロ命令はメイ
ンプロセッサで実行し、ラダープログラムの単純な論理
演算のみをビット・オペレイション・コントローラで実
行するようにしたので、プログラムをより高速に処理す
ることができる。
【図面の簡単な説明】
第1図は本発明の一実施例のプログラマブル・コントロ
ーラのブロック図、 第2図はメインプロセッサとBOCの処理の分担を示す
図、 第3図はメインプロセッサとBOCの処理の流れを示す
図、 第4図は高級言語で作成されたプログラムとラダープロ
グラムを実行する場合の例を示す図である。 1−・−・・−−−−−メインプロセッサ2−−一−−
−・−・−・−ROM(PC管理ソフト)訓−−−−−
−−−−−−−−−−ROM4−・−・−−−−−−−
−−DRAM (PASCALプログラム)5−−−−
−−−−−−−−−−−−D RA M (ラダープロ
グラム)6・−−−一−−−−−−−−−−−・ビット
・オペレイション・コントローラ(B OC) 10−−−−−−−−−−・・−メインプロセッサの処
理内容11−−−−−−−−−−・−−−−−B OC
の処理内容特許出願人 ファナック株式会社 代理人   弁理士  服部毅巖 第4図

Claims (3)

    【特許請求の範囲】
  1. (1)ラダープログラムと、PASCAL言語やC言語
    等の高級言語で作成されたプログラムを、実行するプロ
    グラマブル・コントローラにおいて、該高級言語で作成
    されたプログラムの管理及び実行処理するメインプロセ
    ッサと、 該高級言語で作成されたプログラムを格納するメモリと
    、 前記ラダープログラムを実行するビット・オペレイショ
    ン・コントローラと、 前記ラダープログラムを格納するメモリと、を有するこ
    とを特徴とするプログラマブル・コントローラ。
  2. (2)ラダープログラムと、PASCAL言語やC言語
    等の高級言語で作成されたプログラムを、実行するプロ
    グラマブル・コントローラにおいて、高級言語で作成さ
    れたプログラムの管理と実行をメインプロセッサで処理
    し、 前記ラダープログラムをビット・オペレイション・コン
    トローラで実行し、 前記ラダープログラムのなかのマクロ命令をメインプロ
    セッサで実行するようにしたことを特徴とするプログラ
    マブル・コントローラの実行方式。
  3. (3)前記マクロ命令の実行はビット・オペレイション
    ・コントローラからメインプロセッサへの割込によって
    実行することを特徴とする特許請求の範囲第2項記載の
    プログラマブル・コントローラの実行方式。
JP25933287A 1987-10-14 1987-10-14 プログラマブル・コントローラ及びその実行方式 Pending JPH01100604A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25933287A JPH01100604A (ja) 1987-10-14 1987-10-14 プログラマブル・コントローラ及びその実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25933287A JPH01100604A (ja) 1987-10-14 1987-10-14 プログラマブル・コントローラ及びその実行方式

Publications (1)

Publication Number Publication Date
JPH01100604A true JPH01100604A (ja) 1989-04-18

Family

ID=17332627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25933287A Pending JPH01100604A (ja) 1987-10-14 1987-10-14 プログラマブル・コントローラ及びその実行方式

Country Status (1)

Country Link
JP (1) JPH01100604A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03156604A (ja) * 1989-11-15 1991-07-04 Matsushita Electric Works Ltd プログラマブルコントローラ
JPH1115507A (ja) * 1997-06-23 1999-01-22 Yamatake Honeywell Co Ltd シーケンス制御装置及びシーケンスプログラム作成装置並びにプログラム記憶媒体
JP2007280376A (ja) * 2006-03-15 2007-10-25 Omron Corp プログラマブル・コントローラ
JP2008165821A (ja) * 2003-02-13 2008-07-17 Renishaw Plc 工作機械の制御方法、および、それに対する装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59223851A (ja) * 1983-06-01 1984-12-15 Mitsubishi Electric Corp フアクトリ−オ−トメ−シヨン用コントロ−ラ
JPS61100802A (ja) * 1984-10-22 1986-05-19 Toshiba Mach Co Ltd プログラマブルシ−ケンスコントロ−ラの演算処理方式
JPS62232004A (ja) * 1986-04-01 1987-10-12 Fanuc Ltd Ncシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59223851A (ja) * 1983-06-01 1984-12-15 Mitsubishi Electric Corp フアクトリ−オ−トメ−シヨン用コントロ−ラ
JPS61100802A (ja) * 1984-10-22 1986-05-19 Toshiba Mach Co Ltd プログラマブルシ−ケンスコントロ−ラの演算処理方式
JPS62232004A (ja) * 1986-04-01 1987-10-12 Fanuc Ltd Ncシステム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03156604A (ja) * 1989-11-15 1991-07-04 Matsushita Electric Works Ltd プログラマブルコントローラ
JPH1115507A (ja) * 1997-06-23 1999-01-22 Yamatake Honeywell Co Ltd シーケンス制御装置及びシーケンスプログラム作成装置並びにプログラム記憶媒体
JP2008165821A (ja) * 2003-02-13 2008-07-17 Renishaw Plc 工作機械の制御方法、および、それに対する装置
US9235205B2 (en) 2003-02-13 2016-01-12 Renishaw Plc Method for producing a measurement probe path on a numerically controlled machine tool
JP2007280376A (ja) * 2006-03-15 2007-10-25 Omron Corp プログラマブル・コントローラ

Similar Documents

Publication Publication Date Title
JPS63181005A (ja) 数値制御装置の並列処理方式
JPH01100604A (ja) プログラマブル・コントローラ及びその実行方式
JPH09128255A (ja) プログラマブル論理制御器
JPS63214804A (ja) Plc用プロセツサ及びplc
JPS59114602A (ja) プログラマブルコントロ−ラ
JPH025104A (ja) 演算処理装置
JPH1165623A (ja) プログラマブルコントローラ
JPS63317834A (ja) ラダ−プログラム処理方式
JPH01255901A (ja) プログラマブル・コントローラ
KR0151179B1 (ko) 피엘시의 실시간 디버그 방법
JPS5922146A (ja) タスクスケジユ−リング回路
JP2793809B2 (ja) プログラマブルコントローラの応用命令処理方式
JPS605302A (ja) シ−ケンスコントロ−ラのプログラム方法
JPS60241104A (ja) デイジタル制御装置の演算方法
JPS6232503A (ja) 数値制御装置
JPS61183705A (ja) プログラマブルコントロ−ラの演算トレ−ス処理方法
JP2023151731A (ja) 制御システム、制御方法、および制御プログラム
JPH0643703U (ja) Ncプログラム言語の構造化手段
JPS63285663A (ja) コ・プロセッサ制御方式
JPS62293310A (ja) 数値制御装置のユーザプログラム実行方法
EP0180647A4 (en) FUNCTIONAL LEARNING SYSTEM FOR PROGRAMMABLE CONTROL UNIT.
JPH0259906A (ja) Cncのマルチ処理方式
JPS63298505A (ja) シ−ケンス制御方式
JPH02105204A (ja) シーケンスプログラムの実行方式
JPH01154236A (ja) 時分割タスク実行装置