JPH09223025A - リアルタイム制御装置及び方法 - Google Patents

リアルタイム制御装置及び方法

Info

Publication number
JPH09223025A
JPH09223025A JP8032038A JP3203896A JPH09223025A JP H09223025 A JPH09223025 A JP H09223025A JP 8032038 A JP8032038 A JP 8032038A JP 3203896 A JP3203896 A JP 3203896A JP H09223025 A JPH09223025 A JP H09223025A
Authority
JP
Japan
Prior art keywords
processing
priority
execution
storage unit
real
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
JP8032038A
Other languages
English (en)
Inventor
Takuya Sekiguchi
卓也 關口
Takashi Nawata
毅史 縄田
Kazutoshi Sumiya
和俊 角谷
Norio Sanada
紀男 眞田
Koichi Yasutake
剛一 安武
Hirohiko Tanaka
裕彦 田中
Kenji Ito
謙次 伊藤
Wataru Uchiyama
亘 内山
Emiko Ishizaki
恵美子 石崎
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP8032038A priority Critical patent/JPH09223025A/ja
Publication of JPH09223025A publication Critical patent/JPH09223025A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

(57)【要約】 【課題】 マイコンシステムの製造コストを低く維持し
つつ複数の優先度の処理の制御を行うことが可能であ
り、プログラムの設計、開発が容易なリアルタイム制御
装置および方法を提供すること。 【解決手段】 複数のモジュールを、制御の内容によっ
て複数の優先度に分類して格納する制御処理モジュール
格納部101と、前記優先度ごとに、処理を表す識別子
と優先度とを格納する処理レベル格納部104と、実行
中の処理を表す識別子を格納する実行処理格納部102
と、スタック構造を有し、実行が中断された処理の識別
子を順次格納する待機処理格納部103とを備え、割り
込み発生時および処理終了時に、制御部106が前記各
格納部に格納されている内容を参照し、次に実行すべき
処理を判別する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、所定の周期ごとに
発生する一種類の割り込み要因による割り込みを利用し
て、家電製品等の機器の制御を行うマイコンシステムに
おけるリアルタイム制御装置及び方法に関する。
【0002】
【従来の技術】近年の、マイコンシステムを使用した家
電製品等の制御においては、ユーザによるキー押下情報
の取得、センサによる値の検知など、対応する処理をリ
アルタイムで行わなければならない場合が多く存在す
る。それらに対応するため、家電製品に組み込まれるマ
イコンのように限られた資源での、リアルタイム制御の
実現が必要不可欠となっている。
【0003】家電製品の分野における従来のリアルタイ
ム制御方法の一例として、プログラムのループによって
実現する方法(以下「ループ法」と呼ぶ)がある。以
下、ループ法について説明する。図21は、ループ法を
使用してリアルタイム制御を行うマイコンシステムに組
み込まれたプログラムの処理内容を示すフロ−チャ−ト
である。
【0004】同図において、回路制御処理とは、ポート
の入出力等のハードウェア制御のことであり、制御する
ハードウェアごとに決められた時間間隔で起動し、限ら
れた時間内に終了しなければならない処理である。シー
ケンス制御処理とは、データ設定等ハードウェア以外の
制御のことであり、起動の決められた時間間隔や処理時
間の制限がなく、順次に進行させればよい処理である。
【0005】この例では、回路制御処理の起動のタイミ
ングとして割り込みを利用しており、回路制御処理の制
限時間は次の割り込みが発生するまでの間である。割り
込みを発生させるためには、タイマを使用してタイマ割
り込みを発生させる方法や、交流電源電圧を検知して等
間隔の割り込みを発生させる方法等がある。回路制御処
理の時間制限は、機器を正常に動作させるために厳守し
なければならないため、回路制御処理はシーケンス制御
処理よりも優先的に実行されなければならない。従っ
て、割り込みが発生するタイミング以前にシーケンス制
御処理を中断し、割り込み発生を待つように、予めシー
ケンス制御処理を分割してプログラムしている。そし
て、割り込み発生時(S211:Yes)には、まず回
路制御処理を行い(S212〜S214)、回路制御処
理終了後にシーケンス制御処理を行う(S215)。
【0006】図22はシーケンス制御処理の詳細な処理
内容を示すフロ−チャ−トである。前述のとおり、シー
ケンス制御処理は、所定の回路制御処理が終了した後、
次の割り込みが発生するまでの時間内に実行可能な複数
の処理単位に分割してプログラムしている。従ってこの
例では、シーケンス制御1〜シーケンス制御4に分割
し、プログラム内部のカウンタ(CNT)の値を参照す
ることにより、どのシーケンス制御を行うかを決定して
いる。
【0007】
【発明が解決しようとする課題】しかしながら、上記の
ループ法を使用する場合においては、マイコンシステム
のプログラム開発に際してシーケンス制御処理の分割を
行うため、機器の動作を詳細に検討してプログラムを設
計しなければならなかった。即ち、シーケンス制御1〜
シーケンス制御4を、それぞれ回路制御処理の終了後、
次回の割り込み発生までに終了させるようにプログラム
を設計するには、次回の割り込み発生までの時間を計算
して、一回の実行ごとの処理内容を決定しなければなら
ないなど、プログラムの設計行程において非常に繁雑な
検討が必要であるという問題点を有していた。
【0008】また、複数の優先度の処理を制御するため
には、多段階割り込み可能な回路によるリアルタイム制
御装置を利用することが考えられるが、その場合には、
マイコンシステムの製造コスト上昇の原因となるという
問題点を有していた。以上の問題点に鑑み、本発明の第
一の目的は、リアルタイム処理を行うためのプログラム
の設計、開発を容易にできるリアルタイム制御装置及び
方法を提供することである。また、本発明の第二の目的
は、マイコンシステムの製造コストを低く維持しつつ、
複数の優先度の処理の制御を行うことを可能とするリア
ルタイム制御装置及び方法を提供することである。
【0009】
【課題を解決するための手段】上記の問題点を解決する
ために請求項1に記載の発明は、所定の周期ごとに発生
する一種類の割り込み要因による割り込みを利用して、
機器の制御を行うマイコンシステムにおけるリアルタイ
ム制御装置であって、前記所定の周期内に終了するよう
にプログラムされた最も優先度の高い処理と、それ以外
の優先度を持つ処理とについて、処理の識別子と優先度
とを記憶する処理優先度記憶手段と、実行中の処理の識
別子を記憶する実行処理記憶手段と、実行が中断された
処理の識別子と中断時の処理の状況を示す情報とを順次
記憶する待機処理記憶手段と、前記割り込みの発生を受
けて、処理切り換え要求を出力する処理切り換え要求手
段と、前記処理切り換え要求を受けて、実行中の処理を
中断し、最も高い優先度を付与された処理の実行を開始
するとともに、前記実行処理記憶手段および前記待機処
理記憶手段の内容を更新する第1の制御手段と、処理の
終了を検知したときに、終了した処理の次に優先度が高
い処理の優先度と、前記待機処理記憶手段に最後に記憶
された識別子を有する処理の優先度とを比較する比較手
段と、前記比較手段の比較において、前者の方が高い場
合に、前者の処理の実行を開始するとともに、前記実行
処理記憶手段の内容を更新する第2の制御手段と、前記
比較手段の比較において、前者の方が低いか、または両
者の優先度が等しい場合に、後者の処理を、前記待機処
理記憶手段に記憶された中断時の処理の状況を示す情報
に基づいて中断時点から再開するとともに、前記実行処
理記憶手段および前記待機処理記憶手段の内容を更新す
る第3の制御手段とを有する。
【0010】
【発明の実施の形態】請求項1に記載の発明は、所定の
周期ごとに発生する一種類の割り込み要因による割り込
みを利用して、機器の制御を行うマイコンシステムにお
けるリアルタイム制御装置であって、前記所定の周期内
に終了するようにプログラムされた最も優先度の高い処
理と、それ以外の優先度を持つ処理とについて、処理の
識別子と優先度とを記憶する処理優先度記憶手段と、実
行中の処理の識別子を記憶する実行処理記憶手段と、実
行が中断された処理の識別子と中断時の処理の状況を示
す情報とを順次記憶する待機処理記憶手段と、前記割り
込みの発生を受けて、処理切り換え要求を出力する処理
切り換え要求手段と、前記処理切り換え要求を受けて、
実行中の処理を中断し、最も高い優先度を付与された処
理の実行を開始するとともに、前記実行処理記憶手段お
よび前記待機処理記憶手段の内容を更新する第1の制御
手段と、処理の終了を検知したときに、終了した処理の
次に優先度が高い処理の優先度と、前記待機処理記憶手
段に最後に記憶された識別子を有する処理の優先度とを
比較する比較手段と、前記比較手段の比較において、前
者の方が高い場合に、前者の処理の実行を開始するとと
もに、前記実行処理記憶手段の内容を更新する第2の制
御手段と、前記比較手段の比較において、前者の方が低
いか、または両者の優先度が等しい場合に、後者の処理
を、前記待機処理記憶手段に記憶された中断時の処理の
状況を示す情報に基づいて中断時点から再開するととも
に、前記実行処理記憶手段および前記待機処理記憶手段
の内容を更新する第3の制御手段とを有する。
【0011】処理優先度記憶手段は、所定の割り込み発
生の周期内に終了するようにプログラムされた最も優先
度の高い処理と、それ以外の優先度を持つ処理とについ
て、処理の識別子と優先度とを記憶する。実行処理記憶
手段は、実行中の処理の識別子を記憶する。待機処理格
納手段は、実行が中断された処理の識別子と、中断時点
の処理の実行状況を示すレジスタの内容、プログラムの
アドレス等の情報を順次格納する。
【0012】処理切り換え要求手段は、一種類の割り込
み要因による割り込みの発生を受けて、処理切り換え要
求を出力する。第1の制御手段は、前記処理切り換え要
求を受けて、実行中の処理を中断し、最も高い優先度を
付与された処理の実行を開始するとともに、前記実行処
理記憶手段および前記待機処理格納手段の内容を更新す
る。前述のとおり、最も優先度が高い処理は所定の割り
込みの周期内に終了する。即ち、割り込みの発生前に終
了するようにプログラムされているため、第1の制御手
段により中断される処理は最も優先度が高い処理以外の
処理である。従って、処理切り換え要求の出力時には、
必ず最も優先度の高い処理が実行されることになる。
【0013】比較手段は、処理の終了を検知したとき
に、終了した処理の次に優先度が高い処理の優先度と、
前記待機処理記憶手段に最後に記憶された識別子を有す
る処理の優先度とを比較する。第2の制御手段は、前記
比較手段による比較において、終了した処理の次に優先
度が高い処理の優先度の方が高い場合に、終了した処理
の次に優先度が高い処理の実行を開始するとともに、前
記実行処理格納手段の内容を更新する。
【0014】第3の実行手段は、前記比較手段による比
較において、終了した処理の次に優先度が高い処理の優
先度の方が低いか、または両者の優先度が等しい場合
に、前記待機処理記憶手段に最後に記憶された識別子を
付与された処理を、前記待機処理記憶手段に記憶された
中断時の処理の状況を示すレジスタの内容、プログラム
のアドレス等の情報に基づいて中断時点から再開すると
ともに、前記実行処理記憶手段および前記待機処理記憶
手段の内容を更新する。
【0015】上記のように、終了した処理の次に優先度
が高い処理の優先度と、前記待機処理記憶手段に最後に
記憶された識別子を付与された処理の優先度とを比較し
て、実行すべき処理を決定することにより、一種類の割
り込み要因で複数段階の優先度を付与された処理の制御
を可能とする。また、請求項2に記載の発明は、請求項
1に記載のリアルタイム制御装置においてさらに、処理
の終了を検知したときに、前記処理優先度記憶手段の内
容を参照し、終了した処理より優先度の低い処理が存在
するか否かを判定する判定手段を有し、前記比較手段
は、前記判定手段により存在すると判定された場合に、
終了した処理の次に優先度が高い処理の優先度と、前記
待機処理記憶手段に最後に記憶された識別子を有する処
理の優先度とを比較する。
【0016】判定手段は、処理の終了を検知したとき
に、前記処理優先度記憶手段の内容を参照し、終了した
処理より優先度の低い処理が存在するか否かを判定す
る。比較手段は、前記判定手段により存在すると判定さ
れた場合に処理の優先度を比較することにより、終了し
た処理より優先度の低い処理が存在しない場合に機器の
制御を終了するなどの制御を行うことが可能となる。
【0017】また、請求項3に記載の発明は、請求項1
または2に記載のリアルタイム制御装置において、前記
機器の制御を行う処理は、制御の内容により2段階の優
先度に分類され、優先度が高い方に分類された処理が、
リアルタイム性が厳しく要求される処理を含み、優先度
が低い方に分類された処理が、それ以外の処理を含む。
【0018】また、請求項4に記載の発明は、請求項1
または2に記載のリアルタイム制御装置において、前記
機器の制御を行う処理は、制御の内容により3段階の優
先度に分類され、最も優先度が高いと分類された処理
が、ポートとの入出力処理と、タイマの計時の際の基本
単位となるカウンタのインクリメント処理とを含み、次
に優先度が高いと分類された処理が、タイマの計時処理
と、ポート出力のリフレッシュ処理と、ポートから入力
されたデータに対して施す必要のある処理と、ポートへ
出力するデータを作成する処理とを含む。
【0019】また、請求項5に記載の発明は、請求項1
乃至4の何れかに記載のリアルタイム制御装置におい
て、前記処理切り換え要求手段は、タイマ割り込みを受
けて処理切り換え要求を出力する。また、請求項6に記
載の発明は、請求項1乃至4の何れかに記載のリアルタ
イム制御装置において、さらに、交流電源電圧の周期を
検知することにより、割り込みを発生する割り込み発生
手段を備える。
【0020】また、請求項7に記載の発明は、請求項1
乃至6の何れかに記載のリアルタイム制御装置におい
て、前記第1の制御手段は、前記実行処理格納手段の内
容に、最も高い優先度を付与された処理の識別子を上書
きする。また、請求項8に記載の発明は、請求項1乃至
7の何れかに記載のリアルタイム制御装置において、前
記待機処理格納手段は、スタック構造を有し、前記第1
の制御手段は、前記待機処理格納手段に、中断された処
理の識別子と中断時の処理の状況を示す情報とを追加す
る。
【0021】また、請求項9に記載の発明は、請求項1
乃至8の何れかに記載のリアルタイム制御装置におい
て、家電製品の制御を行うマイコンシステムに備えられ
ることを特徴とする。また、請求項10に記載の発明
は、所定の周期ごとに発生する一種類の割り込み要因に
よる割り込みを利用して、機器の制御を行うマイコンシ
ステムにおけるリアルタイム制御方法であって、前記割
り込みの発生を受けて、処理切り換え要求を出力する処
理切り換え要求ステップと、前記処理切り換え要求を受
けて、実行中の処理を中断し、最も優先度の高い処理の
実行を開始する第1の実行ステップと、処理の終了を検
知したときに、終了した処理の次に優先度が高い処理が
存在する場合に、終了した処理の次に優先度が高い処理
の優先度と、最近に中断された処理の優先度とを比較す
る比較ステップと、前記比較ステップにおいて、前者の
方が高い場合に、前者の処理の実行を開始する第2の実
行ステップと、前記比較ステップにおいて、前者の方が
低いか、または両者の優先度が等しい場合に、後者の処
理を中断時点から再開する第3の実行ステップとを有す
る。
【0022】以下、本発明の実施の形態について図面を
参照しながら説明する。 (実施の形態1)図1は、本発明の第一の実施の形態に
おけるリアルタイム制御装置の構成を示すブロック図で
ある。同図のリアルタイム制御装置は、制御処理モジュ
ール格納部101、実行処理格納部102、待機処理格
納部103、処理レベル格納部104、処理切り換え要
求部105、制御部106を備える。
【0023】制御処理モジュール格納部101は、行程
制御処理モジュール格納部101a、優先回路制御処理
モジュール格納部101b、通常回路制御処理モジュー
ル格納部101cから構成される。行程制御処理モジュ
ール格納部101aには、行程制御処理を行うためのモ
ジュールが格納される。ここで、行程制御処理とは、従
来の技術を説明した際のシーケンス制御処理に相当する
ものであり、処理を起動する時間間隔や、処理時間の制
限がなく、予め決定された実行手順に従って進行させれ
ばよい処理のことである。
【0024】行程制御処理の具体例としては、洗濯機の
場合であれば、洗濯の各種コースを設定する「設定行程
処理」、給水や攪拌等を行う「洗い行程処理」、すすぎ
を行う「すすぎ行程処理」、排水や脱水を行う「脱水行
程処理」などが、また、電子レンジの場合であれば、調
理のコースを選択する「設定行程処理」、各種の調理を
行う「調理行程処理」などが挙げられる。
【0025】優先回路制御処理モジュール格納部101
bには、優先回路制御処理を行うためのモジュールが格
納される。ここで、優先回路制御制御処理とは、従来の
技術を説明した際の回路制御処理に相当するものであ
り、決められた時間間隔で起動し、限られた時間内で終
了させる必要がある処理のことである。従来の技術の説
明でも述べたとおり、優先回路制御処理の実行について
の時間制限は、機器を正常に動作させるために厳守しな
ければならないため、行程制御処理に比べて優先的に実
行されなければならない。
【0026】優先回路制御処理モジュール格納部101
bには、具体的には、ポートとの入出力に関する処理を
行うモジュールと、タイマの計時の際の基本単位となる
カウンタのインクリメントに関する処理を行うモジュー
ルとが格納される。ポートからの入力処理の具体例とし
ては、キーの押下の検知や、センサからの値の取得など
が挙げられる。
【0027】ポートへの出力処理の具体例としては、L
EDへの表示や、モータの起動、ヒータの起動などが挙
げられる。通常回路制御処理モジュール格納部101c
には、通常回路制御処理を行うためのモジュールが格納
される。ここで、通常回路制御処理とは、優先回路制御
処理ほど実行する周期について厳密な制御を行う必要は
ないが、行程制御処理よりは優先して行う必要のある処
理のことである。
【0028】通常回路制御処理モジュール格納部101
cには、具体的には、タイマの計時処理を行うモジュー
ルと、ポート出力のリフレッシュ処理を行うモジュール
と、ポートから入力してきたデータに対して施す必要の
ある処理を行うモジュールと、ポートへ出力するデータ
を作成する処理を行うモジュールとが格納される。タイ
マの計時処理とは、優先回路制御処理においてインクリ
メントされたカウンタの値に基づき、ユーザが用意した
タイマをインクリメントする処理である。例えば、カウ
ンタが1ミリ秒(1000分の1秒)間隔でインクリメ
ントされる場合に、1秒単位のタイマを計時するとき
は、カウンタが1000回インクリメントされた時点
で、タイマのインクリメントを一回行う。
【0029】ポート出力のリフレッシュ処理とは、LE
Dへの表示を行った後、表示のちらつき等を防止するた
めに定期的に再出力を行うなど、定期的に出力データを
ポートへ出力する処理である。ポートから入力してきた
データに対して施す必要のある処理としては、例えば、
電子レンジで、庫内温度が上がりすぎたと温度センサが
検知した場合に、すぐに冷却ファンを起動させる処理な
どがある。
【0030】ポートへ出力するデータを作成する処理と
しては、文字列のスクロール処理を行う場合、限られた
表示領域で文字がスクロールしているように見せかける
ために、表示する文字データを作成する処理などが挙げ
られる。実行処理格納部102は、特許請求の範囲に記
載の発明における実行処理記憶手段に相当する。実行処
理格納部102には、実行中の処理の識別子(以下、
「実行識別子」と呼ぶ)が格納される。処理の識別子に
ついては後述する。
【0031】待機処理格納部103は、特許請求の範囲
に記載の発明における待機処理記憶手段に相当する。待
機処理格納部103には、制御部106が処理切り換え
要求部105からの処理切り換え要求を受けた時点で、
実行処理格納部102に格納されていた実行識別子が退
避される形で格納される。また、処理中断時点のレジス
タ等の内容、プログラムのアドレスなど、処理の中断時
点の状況を示す各種情報も、同時に退避される形で格納
される。従って、待機処理格納部103はスタック構造
を有し、複数の識別子および前述の情報を順次格納でき
るように構成されている。
【0032】処理レベル格納部104は、特許請求の範
囲に記載の発明における処理優先度記憶手段に相当す
る。処理レベル格納部104には、制御処理モジュール
格納部101を構成する行程制御処理モジュール格納部
101aと、優先回路制御処理モジュール格納部101
bと、通常回路制御処理モジュール格納部101cとに
それぞれ格納されているモジュールによって行われる処
理を表す識別子と、それぞれの識別子を有する処理の優
先度とが格納される。
【0033】図5に、処理レベル格納部104のデータ
構造を示す。同図に示されるように、例えば、行程制御
処理モジュール格納部101aに格納されているモジュ
ールによって行われる処理には、「行程制御処理」とい
う識別子が付与され、処理の優先度と対応付けられて格
納されている。ここで、優先度については、数字が小さ
いほど高い優先度が付与されていることを意味してい
る。
【0034】処理切り換え要求部105は、特許請求の
範囲に記載の発明における処理切り換え要求手段に相当
する。処理切り換え要求部105は、一種類の非同期事
象を受けて、制御部106に処理切り換え要求を出力す
る。非同期事象の例としては、タイマ割り込みや、電源
電圧の周期的な変化を検知して出力される割り込み信号
等がある。
【0035】制御部106は、特許請求の範囲に記載の
発明における第1の制御手段、判定手段、比較手段、第
2の制御手段、第3の制御手段に相当する。制御部10
6は、処理レベル管理部106aと、処理状態管理部1
06bとを有する。処理レベル管理部106aは、処理
切り換え要求部105からの処理切り換え要求を受け
て、実行処理格納部102と、待機処理格納部103
と、処理レベル格納部104とに格納されている内容を
参照して、処理切り換え後に実行すべき処理を判別し、
判別結果に基づいて、処理状態管理部106bに対し
て、実行すべき処理の指示を行うとともに、実行処理格
納部102および待機処理格納部103の内容を更新す
る。
【0036】また、処理レベル管理部106aは、処理
が終了した場合には、処理状態管理部106bからの処
理終了の通知を受け、実行処理格納部102と、待機処
理格納部103と、処理レベル格納部104とに格納さ
れている内容を参照して、次に実行すべき処理を判別
し、判別結果に基づいて、処理状態管理部106bに対
して、実行すべき処理の指示を行うとともに、実行処理
格納部102および待機処理格納部103の内容を更新
する。
【0037】処理状態管理部106bは、処理レベル管
理部106aの、実行すべき処理の指示を受け、制御処
理モジュール格納部101から必要なモジュールを取り
出し、処理の実行を行う。また、処理状態管理部106
bは、処理の終了を検知し、処理レベル管理部106a
に処理の終了を通知する。
【0038】図2は制御部106が、処理切り換え要求
部105からの処理切り換え要求を受けたときの処理内
容を示すフローチャートである。まず、処理レベル管理
部106aが、処理切り換え要求部105からの処理切
り換え要求を受ける(S201)。処理レベル管理部1
06aは、実行処理格納部102に格納されている実行
識別子を取り出し、待機処理格納部103に格納する
(S202)。
【0039】次に、処理レベル管理部106aは、処理
レベル格納部104に格納されている、処理の優先度と
識別子とを参照し、最も優先度の高い処理の識別子を実
行処理格納部102に格納する(S203)。処理レベ
ル管理部106aは、実行識別子を有する処理の優先度
と、待機処理格納部103に最後に格納された処理の識
別子(以下、「最新待機識別子」と呼ぶ)を有する処理
の優先度とを比較する(S204)。実行識別子を有す
る処理の優先度が、最新待機識別子を有する処理の優先
度より高い場合には、処理レベル管理部106aは、実
行識別子を有する処理の実行を開始するように処理状態
管理部106bに対して指示を行う。処理状態管理部1
06bは、処理レベル管理部106aからの指示を受け
て、実行識別子を有する処理の実行を開始する(S20
5)。具体的には、実行中であった処理で使用していた
レジスタ等の内容を待機処理格納部103に退避した
後、実行識別子を有する処理を行うためのモジュール
を、制御処理モジュール格納部101から取り出し実行
を行う。
【0040】ここで、実行識別子を有する処理の実行中
に、制御部106が、処理切り換え要求部105からの
処理切り換え要求を受けた場合には、ステップS201
からの処理が行われる。制御部106が処理切り換え要
求部105からの処理切り換え要求を受ける前に、処理
状態管理部106bが実行された処理の終了を検知した
場合(S206:Yes)には、処理状態管理部106
bは、処理レベル管理部106aに対して処理の終了を
通知する。処理レベル管理部106aは、処理状態管理
部106bからの通知を受け、処理レベル格納部104
に格納されている内容を参照して、終了した処理よりも
優先度の低い処理が存在するか否かを調べる(S20
7)。終了した処理よりも優先度の低い処理が存在しな
い場合には、制御部106は制御を終了する(S20
7:No)。
【0041】終了した処理よりも優先度の低い処理が存
在する場合には、処理レベル管理部106aは、終了し
た処理の次に優先度の高い処理の識別子を、それまで格
納されていた実行識別子の代わりに実行処理格納部10
2に格納し(S208)、ステップS204へと進む。
一方、ステップS204において、実行識別子を有する
処理の優先度が最新待機識別子を有する処理の優先度よ
りも低いか、または両者の優先度が等しい場合には、処
理レベル管理部106aは、待機処理格納部103から
最新待機識別子を取り出し、それまで実行処理格納部1
02に格納されていた実行識別子の代わりに、最新待機
識別子を実行処理格納部102に格納し(S209)、
処理状態管理部106bに実行識別子を有する処理の実
行を指示する。この場合、待機処理格納部103に格納
されているレジスタの内容等に基づいて、最近に中断さ
れた処理が、中断時点から継続実行されることとなる。
処理状態管理部106bは、処理レベル管理部106a
からの指示に従い、処理の実行を開始する(S20
5)。
【0042】以上のように構成されたリアルタイム制御
装置について、以下、その動作を説明する。図3は、本
実施の形態のリアルタイム制御装置の動作を表すフロー
チャートである。図4は、本実施の形態のリアルタイム
制御装置の動作を表すタイミングチャートである。同図
においては、非同期事象としてタイマ割り込みを用いて
いる。また、図5は処理レベル格納部104に格納され
ている処理の識別子と優先度との一例である。前述のと
おり、同図において優先度の数字が小さい方が、高い優
先度が付与されていることを意味する。
【0043】なお、本実施の形態のリアルタイム制御装
置においては、動作開始時は、実行処理格納部102に
は、最も優先度の低い処理の識別子である「行程制御処
理」が格納されており、待機処理格納部103には何も
格納されていない。動作開始時の実行処理格納部102
および待機処理格納部103の内容を図6に示す。な
お、以後の図においても待機処理格納部103に格納さ
れるレジスタの内容等の情報については記載を省略す
る。
【0044】まず、機器の制御の開始時には、処理レベ
ル管理部106aが、実行処理格納部102に格納され
ている識別子を有する処理の実行を処理状態管理部10
6bに指示する。処理状態管理部106bは、処理レベ
ル管理部106aの指示を受け、処理の実行を開始する
(S301)。ここで、最初の実行識別子は前述のとお
り、「行程制御処理」であるので、処理状態管理部10
6bは、行程制御処理モジュール格納部101aからモ
ジュールを取り出し、行程制御処理の実行を開始する。
以後、非同期事象の発生まで行程制御処理を行い、非同
期事象が発生するとステップS304に進む。図4のタ
イミングチャートにおいて、n回目のタイマ割り込みが
このステップでの非同期事象に該当する。
【0045】なお、非同期事象が発生しないまま行程制
御処理が終了した場合にはそのまま機器の制御を終了す
る(S302:Yes)。ステップS304では、図2
のフローチャートで説明した制御部106の処理が行わ
れる。ここで図2に戻り、具体的な動作について説明す
る。n回目のタイマ割り込みの発生を受けた処理切り換
え要求部105が、制御部106に処理切り換え要求を
出力する。処理レベル管理部106aは、処理切り換え
要求を受け(S201)、実行識別子を取り出して、待
機処理格納部103に格納する(S202)。さらに、
処理レベル管理部106aは処理レベル格納部104を
参照して、最も優先度の高い処理の識別子を実行処理格
納部102に格納する(S203)。最も優先度の高い
処理の識別子は、図5に示されるとおり優先回路制御処
理の識別子であるので、優先回路制御処理の識別子が実
行処理格納部102に格納される。従って、このときの
実行処理格納部102と待機処理格納部103の内容
は、図7に示すようなものとなる。
【0046】処理レベル管理部106aは、実行識別子
を有する処理の優先度と、最新待機識別子を有する処理
の優先度とを比較する(S204)。即ち、実行識別子
を有する優先回路制御処理と、最新待機識別子を有する
行程制御処理との優先度を比較する。この場合、実行識
別子を有する優先回路制御処理の方が優先度が高いの
で、処理レベル管理部106aは、処理状態管理部10
6bに対して、優先回路制御処理の実行を指示する。処
理状態管理部106bは、処理レベル管理部106aか
らの指示を受け、優先回路制御処理モジュール格納部1
01bからモジュールを取り出し、優先回路制御処理の
実行を開始する(S205)。
【0047】前述のとおり、最も優先度の高い一連の処
理は、非同期事象の発生周期内に終了するように設計さ
れる。従って、優先回路制御処理はn+1回目のタイマ
割り込みの発生より前に処理が終了する。処理状態管理
部106bは、優先回路制御処理の終了を検知すると
(S206:Yes)、処理レベル管理部106aに対
し優先回路制御処理の終了を通知する。処理レベル管理
部106aは、処理状態管理部106bからの通知を受
け、処理レベル格納部104を参照して、優先回路制御
処理よりも優先度の低い処理が存在するか否かを調べる
(S207)。
【0048】図5に示されるように、優先回路制御処理
よりも優先度の低い処理として、通常回路制御処理と行
程制御処理とが存在する。従って、処理レベル管理部1
06aは、終了した処理の次に優先度の高い処理の識別
子、即ち通常回路制御処理の識別子を実行処理格納部1
02に格納する(S208)。その後、処理レベル管理
部106aは、実行識別子を有する処理の優先度と、最
新待機識別子を有する処理の優先度とを比較する(S2
04)。図8は、このときの実行処理格納部102と待
機処理格納部103の内容を示す図である。同図に示さ
れるように、実行識別子を有する処理である通常回路制
御処理の方が優先度が高いので、処理レベル管理部10
6aは、実行識別子に従い、通常回路制御処理の実行を
処理状態管理部106bに指示する。処理状態管理部1
06bは、処理レベル管理部106aからの指示を受
け、通常回路制御処理モジュール格納部101cからモ
ジュールを取り出し通常回路制御処理の実行を開始する
(S205)。
【0049】図4のタイミングチャートに示されるよう
に、n+1回目のタイマ割り込みが、通常回路制御処理
の実行中に発生する。タイマ割り込みの発生を受けて、
処理切り換え要求部105は処理切り換え要求を出力す
る。処理レベル管理部106aは、処理切り換え要求部
105の出力した処理切り換え要求を受けて(S20
1)、実行識別子を取り出し待機処理格納部103に格
納する(S202)。さらに、処理レベル管理部106
aは、処理レベル格納部104を参照して、分類された
処理の中で最も優先度の高い処理の識別子を実行処理格
納部102に格納する(S203)。即ち、処理レベル
管理部106aは、優先回路制御処理の識別子を実行処
理格納部102に格納する。
【0050】図9はこのときの実行処理格納部102お
よび待機処理格納部103の内容を示す図である。同図
においては、待機処理格納部103に複数の識別子が格
納されているが、一番下の識別子が最新待機識別子であ
る。同図に示されるように、実行識別子を有する処理で
ある優先回路制御処理の優先度が、最新待機識別子を有
する処理である通常回路制御処理の優先度より高いため
(S204:Yes)、実行識別子に従って、処理状態
管理部106bが優先回路制御処理の実行を開始する
(S205)。
【0051】前述のとおり、優先回路制御処理はn+2
回目のタイマ割り込みの発生よりも前に終了するように
設計されている。処理状態管理部106bは、優先回路
制御処理の終了を検知し(S206)、処理レベル管理
部106aに処理の終了を通知する。処理レベル管理部
106aは、処理レベル格納部104を参照して、優先
回路制御処理よりも優先度の低い処理が存在するか否か
を調べる(S207)。その結果、優先回路制御処理の
次に優先度の高い処理である通常回路制御処理の識別子
が、実行処理格納部102に格納される(S208)。
【0052】図10はこのときの実行処理格納部102
と待機処理格納部103の内容を示す図である。同図に
示されるように、このとき、実行識別子を有する処理の
優先度と、最新待機識別子を有する処理の優先度とは等
しい。従って、処理レベル管理部106aは、最新待機
識別子を取り出し、それまで実行処理格納部102に格
納されていた実行識別子の代わりに実行処理格納部10
2に格納する(S209)。即ち、待機処理格納部10
3から最新待機識別子「通常回路制御処理」を取り出
し、実行処理格納部102に格納する。
【0053】図11はこのときの実行処理格納部102
および待機処理格納部103の内容を示す図である。こ
こで実行処理格納部102に格納されている通常回路制
御処理は、図4におけるn+1回目のタイマ割り込みの
際に中断された処理であり、プログラムの実行中断時点
の位置のアドレス、レジスタの内容等の情報が退避され
ているため、中断時点から、再度継続実行されることに
なる。
【0054】図4のタイミングチャートに示されるよう
に、本実施の形態のリアルタイム制御装置においては、
この通常回路制御処理はn+2回目のタイマ割り込みの
発生の前に終了する。処理状態管理部106bは処理の
終了を検知し(S206)、処理レベル管理部106a
に処理終了の通知を行う。処理終了の通知を受けた処理
レベル管理部106aは、処理レベル格納部104を参
照し、通常回路制御処理より優先度の低い処理が存在す
るか否かを調べる(S207)。図5に示されるよう
に、通常回路制御処理より優先度が低い処理として行程
制御処理が存在するので、処理レベル管理部106a
は、識別子「行程制御処理」を実行処理格納部102に
格納する(S208)。
【0055】図12はこのときの実行処理格納部102
および待機処理格納部103の内容を示す図である。こ
の場合も実行識別子を有する処理の優先度と、最新待機
識別子を有する処理の優先度とは等しいので(S20
4)、処理レベル管理部106aは最新待機識別子を取
り出し、実行処理格納部102に格納する(S20
9)。従って実行識別子は「行程制御処理」となり、こ
のときの実行処理格納部102および待機処理格納部1
03の内容は図6に示される如くとなる。従って、処理
状態管理部106bは、実行識別子に従って、前述の動
作と同様の動作により行程制御処理の実行を行う。この
処理は、図4において、n回目のタイマ割り込みのとき
に中断された処理であるので、中断された場所から継続
実行されることになる。
【0056】以後、図4に示されるように、n+2回目
のタイマ割り込みが発生したときも、これまでに説明し
た処理と同様の処理により、優先回路制御処理が実行さ
れる。なお、以後、タイマ割り込みの発生前に行程制御
処理が終了した場合には(S206)、行程制御処理よ
り優先度の低い処理は存在しない(S207:No)た
め、制御部106の処理を終了し、図3に戻ってマイコ
ンシステムによる機器の制御が終了する。
【0057】以上のように本実施の形態のリアルタイム
制御装置においては、非同期事象の発生時に、実行中の
処理の優先度と、最も優先度の高い処理の優先度とを比
較し、割り込み処理を利用して、常に優先度の高い処理
から実行されるように制御することによって、プログラ
ムの設計、開発時点で行う必要のあった繁雑な実行時間
の計算等の作業を除去することができる。
【0058】また、非同期事象の発生に伴う割り込み処
理を行う場合に、実行中の処理を表す識別子を退避し、
優先度の高い処理が終了したときに、終了した処理の次
に優先度の高い処理の優先度と、退避された処理の優先
度とを比較することにより、一種類の割り込み要因で、
複数の優先度に分類された処理を制御することが可能と
なるため、マイコンの製造コストを低く維持したまま、
多段階の割り込みと同様の結果を得ることが可能とな
る。 (実施の形態2)以下、本発明の第二の実施の形態につ
いて説明する。
【0059】図13は、本発明のリアルタイム制御装置
の一適用例としての電子レンジの一部の構成を示すもの
である。この電子レンジにおけるリアルタイム制御装置
は、制御処理モジュール格納部1301、実行処理格納
部1302、待機処理格納部1303、処理レベル格納
部1304、処理切り換え要求部1305、制御部13
06を備える。
【0060】制御処理モジュール格納部1301は、行
程制御処理モジュール格納部1301a、優先回路制御
処理モジュール格納部1301b、通常回路制御処理モ
ジュール格納部1301cから構成される。行程制御処
理モジュール格納部1301aには、行程制御処理を行
うためのモジュールが格納される。行程制御処理とは、
第一の実施の形態で説明したように、処理を起動する時
間間隔や、処理時間の制限がなく、予め決定された実行
手順に従って進行させればよい処理のことである。
【0061】本実施の形態では、行程制御処理モジュー
ル格納部1301aに格納されるモジュールは、メイン
処理モジュールと、調理行程処理モジュール群と、設定
行程処理モジュール群と、管理処理モジュール群とに分
類される。メイン処理モジュールは、調理行程処理モジ
ュール群と、設定行程処理モジュール群と、管理処理モ
ジュール群とに含まれるモジュールの中から必要なモジ
ュールを呼び出し、実行させる。
【0062】調理行程処理モジュール群が行う具体的な
処理内容としては、パワー調理、グリル調理、コンビネ
ーション調理、自動重量調理や自動重量解凍調理などの
センサー調理、タイマー調理などが挙げられる。設定行
程処理モジュール群が行う具体的な処理内容としては、
各種調理コースの設定、調理内容をユーザの好みに合わ
せるモアレスキー等による各種設定、時計の設定、キー
操作を無効にするチャイルドロックの設定などが挙げら
れる。
【0063】管理処理モジュール群が行う具体的な処理
内容としては、テストモード、デモモードなどが挙げら
れる。優先回路制御処理モジュール格納部1301bに
は、ポート入力処理モジュール、ポート出力処理モジュ
ール、カウンタ処理モジュールが格納される。ポート入
力処理モジュールが行う処理内容としては、具体的に
は、各種の調理コースを設定するキーの検知や、スター
トキー、ストップキー、時計設定用キーなどのキーの押
下、ダイヤルの回転、スライダー等、設定に使用する様
々なインタフェースの検知や、温度センサや重量セン
サ、光センサなど、各種センサからの値の取得などが挙
げられる。
【0064】ポート出力処理モジュールが行う処理内容
としては、具体的には、液晶やLEDへの表示やモータ
の起動、ヒータの起動などが挙げられる。カウンタ処理
モジュールは、タイマの計時の際の基本単位となるカウ
ンタのインクリメント処理を行う。通常回路制御処理モ
ジュール格納部1301cには、タイマ処理モジュー
ル、リフレッシュ処理モジュール、ポート入力対応処理
モジュール、ポート出力対応処理モジュールが格納され
る。
【0065】タイマ処理モジュールは、上記カウンタ処
理モジュールによってインクリメントされたカウンタの
値に基づき、ユーザが用意したタイマをインクリメント
する。例えば、カウンタが1ミリ秒間隔であった場合
に、1秒単位のカウンタを計時するときは、カウンタが
1000回インクリメントされた時点で、タイマを1回
インクリメントする。
【0066】リフレッシュ処理モジュールは、LED表
示や、モータ出力などにおいて、ポートに対して出力し
たデータを定期的に再出力して、LEDの再表示やモー
タの再起動等を行う。ポート入力対応処理モジュールが
行う処理としては、庫内温度が高温であると温度センサ
が検知した場合に、すぐに冷却ファンを起動させる処理
などが例として挙げられる。
【0067】ポート出力対応処理モジュールが行う処理
としては、文字列のスクロール処理等を行う場合に、限
られた表示領域で文字がスクロールしているように見せ
かけるために表示文字を作成する処理などが例として挙
げられる。実行処理格納部1302、待機処理格納部1
303、処理レベル格納部1304、処理切り換え要求
部1305、制御部1306(処理レベル管理部130
6aおよび処理状態管理部1306bを含む)について
は、第一の実施の形態で説明したものと同一であるの
で、ここでの詳しい説明は省略する。
【0068】以上のように構成された電子レンジにおけ
るリアルタイム制御装置について、以下、その動作を説
明する。図14は、本実施の形態における電子レンジの
リアルタイム制御装置の動作を示すタイミングチャート
である。本実施の形態では、非同期事象としてタイマ割
り込みを用いている。なお、制御部等の処理内容につい
ては、第一の実施例とほぼ同一であるので、以下、図
2、図3および図5〜図14を参照しながら説明を行
う。
【0069】行程制御処理と、優先回路制御処理と、通
常回路制御処理との優先順位は、図5に示したものと同
一である。この場合も、数字が小さいものほど高い優先
順位が付与されていることを意味している。まず、図3
のステップS301で、本実施の形態の電子レンジの制
御を開始する。この状態における実行処理格納部130
2と待機処理格納部1303の内容は図6で示される。
従って、処理レベル管理部1306aは、実行識別子に
従って、行程制御処理の実行を処理状態管理部1306
bに指示し、当該指示に基づいて、処理状態管理部13
06bが行程制御処理の実行を開始する。
【0070】行程制御処理の実行開始後、行程制御処理
の一部であるグリル調理処理を行っているときに、n回
目のタイマ割り込み処理が発生したものと想定する。こ
れにより、非同期事象発生時の制御部1306の処理が
開始される(S304)。図2に移り、まず、処理切り
換え要求部1305が、タイマ割り込みの発生を検知
し、制御部1306に対して処理切り換え要求を出力す
る。処理レベル管理部1306aは、処理切り換え要求
部1305からの処理切り換え要求を受け(S20
1)、実行識別子「行程制御処理」を実行処理格納部1
302から取り出し、待機処理格納部1303に格納す
る(S202)。
【0071】さらに、処理レベル管理部1306aは、
処理レベル格納部1304を参照し、最も優先度の高い
処理の識別子を実行処理格納部1302に格納する(S
203)。即ち、識別子「優先回路制御処理」が実行処
理格納部1302に格納される。このときの実行処理格
納部1302および待機処理格納部1303の内容は図
7の如くとなる。従って、実行識別子を有する処理の優
先度と、最新待機識別子を有する処理の優先度との比較
(S204)において、実行識別子を有する処理の優先
度の方が、最新待機識別子を有する処理の優先度より高
いため、処理レベル管理部1306aは実行識別子を有
する処理である優先回路制御処理の実行を処理状態管理
部1306bに指示し、処理状態管理部1306bが当
該指示に従って優先回路制御処理の実行を開始する(S
205)。
【0072】具体的には、処理状態管理部1306b
が、優先回路制御処理モジュール格納部1301bに格
納されているモジュールを取り出し、ポート入力処理、
ポート出力処理、およびカウンタ処理を順次実行する。
優先回路制御処理は、次回の処理切り換え要求の発生の
前に終了するように設計されている。従って、処理状態
管理部1306bが優先回路制御処理の終了を検知し、
以後、第一の実施の形態で説明した動作と同様の処理が
行われる。即ち、処理状態管理部1306bからの処理
終了の通知を受けた処理レベル管理部1306aが、優
先回路制御処理の次に優先度の高い処理の識別子である
「通常回路制御処理」を実行処理格納部1302に格納
する(S208)。
【0073】このときの実行処理格納部1302および
待機処理格納部1303の内容は図8の如くである。従
って、実行識別子を有する処理である通常回路制御処理
の優先度の方が、最新待機識別子を有する処理である行
程制御処理の優先度より高いため、実行識別子を有する
処理である通常回路制御処理の実行が開始される(S2
05)。具体的には、処理状態管理部1306bが、通
常回路制御処理モジュール格納部1301cに格納され
ているモジュールを取り出し、タイマ処理、リフレッシ
ュ処理、ポート入力対応処理、ポート出力対応処理を順
次実行する。
【0074】ここで、図14のタイミングチャートに示
されるように、ポート入力対応処理を行っているときに
n+1回目のタイマ割り込みが発生する(S201)。
処理レベル管理部1306aは、実行識別子である「通
常回路制御処理」を取り出し、待機処理格納部1303
に格納した後(S202)、最も優先度の高い処理の識
別子である「優先回路制御処理」を実行処理格納部13
02に格納する(S203)。
【0075】このときの実行処理格納部1302および
待機処理格納部1303の内容は図9の如くである。従
って、実行識別子を有する処理の優先度と最新待機識別
子を有する処理の優先度とを比較すると(S204)、
実行識別子を有する処理の方が優先度が高いため、実行
識別子を有する処理である優先回路制御処理の実行が開
始される(S205)。即ち、処理状態管理部1306
bが、優先回路制御処理モジュール格納部1301bに
格納されているモジュールを取り出し、ポート入力処
理、ポート出力処理、およびカウンタ処理を順次実行す
る。
【0076】優先回路制御処理は、次の処理切り換え要
求の発生の前に終了するように設計されている。優先回
路制御処理の終了を検知した処理状態管理部1306b
は、処理レベル管理部1306aに優先回路制御処理の
終了を通知する(S206)。処理レベル管理部130
6aは、当該処理終了の通知を受け、優先回路制御処理
の次に優先度の高い処理である通常回路制御処理の識別
子を実行処理格納部1302に格納する(S208)。
【0077】このときの実行処理格納部1302および
待機処理格納部1303の内容は図10の如くとなり、
実行識別子を有する処理の優先度と、最新待機識別子を
有する処理の優先度との比較(S204)の結果、両処
理の優先度は等しくなる。従って、処理レベル管理部1
306aは、待機処理格納部1303から最新待機識別
子を取り出し、実行処理格納部1302に格納する(S
209)。
【0078】このときの実行処理格納部1302および
待機処理格納部1303の内容は図11の如くとなり、
実行識別子に従って通常回路制御処理の実行が開始され
るが、これはn+1回目のタイマ割り込みの際に中断さ
れた処理であるので、その中断時点から継続して実行さ
れる(S205)。具体的には、ポート入力対応処理が
継続実行され、さらに、ポート出力対応処理が実行され
る。
【0079】図14に示されるように、本実施の形態に
おいては、通常回路制御処理はn+2回目のタイマ割り
込みの発生前に終了する。処理状態管理部1306bは
通常回路制御処理の終了を検知し、処理レベル管理部1
306aに対して処理の終了を通知する(S206)。
処理レベル管理部1306aは処理終了の通知を受け
て、処理レベル格納部1304を参照し、通常回路制御
処理よりも優先度の低い処理が存在するか否かを調べる
(S207)。図5に示されるように、通常回路制御処
理よりも優先度の低い処理として、行程制御処理が存在
するので、処理レベル管理部1306aは行程制御処理
の識別子を実行処理格納部1302に格納する(S20
8)。
【0080】このときの実行処理格納部1302および
待機処理格納部1303の内容は図12に示す如くであ
り、実行識別子を有する処理の優先度と、最新待機識別
子を有する処理の優先度とは等しい。従って、処理レベ
ル管理部1306aは最新待機識別子である「行程制御
処理」を取り出して、それまで実行処理格納部1302
に格納されていた実行識別子の代わりに実行処理格納部
1302に格納し(S209)、処理状態管理部130
6bに行程制御処理の実行を指示する。処理状態管理部
1306bは処理レベル管理部1306aからの指示を
受け、行程制御処理の実行を開始する(S205)。
【0081】これは、n回目のタイマ割り込みにより中
断された処理であるので、中断時点から継続して実行さ
れる。具体的には、グリル調理処理の途中から継続して
実行される。以上のように、本発明のリアルタイム制御
方法および装置を電子レンジの制御に適用することが可
能である。
【0082】なお、本実施の形態においては、優先回路
制御処理に含まれる処理の実行順序を、ポート入力処
理、ポート出力、カウンタ処理の順とし、通常回路制御
処理に含まれる処理の実行順序を、タイマ処理、リフレ
ッシュ処理、ポート入力対応処理、ポート出力対応処理
の順としたが、実行順序はこれに限定されるものではな
く、実施の形態に応じて適切な順序で実行することが可
能である。
【0083】また、モジュールを分割もしくは統合して
同一の処理を行わしめることも可能であり、制御処理モ
ジュール格納部に格納されるモジュールの名称、構成等
についても、本実施の形態の例に限定されるものではな
い。 (実施の形態3)次に、本発明の第三の実施の形態につ
いて説明する。
【0084】図15は、本発明のリアルタイム制御処理
を備えた食器洗い機の一部の構成を示すブロック図であ
る。この食器洗い機におけるリアルタイム制御装置は、
制御処理モジュール格納部1501、実行処理格納部1
502、待機処理格納部1503、処理レベル格納部1
504、処理切り換え要求部1505、制御部1506
を備える。
【0085】制御処理モジュール格納部1501は、行
程制御処理モジュール格納部1501aと、回路制御処
理モジュール格納部1501bとから構成される。行程
制御処理モジュール格納部1501aには、行程制御処
理を行うためのモジュールが格納される。行程制御処理
とは、処理を起動する時間間隔や、処理時間の制限がな
く、予め決定された実行手順に従って進行させればよい
処理のことである。
【0086】本実施の形態においては、行程制御処理モ
ジュール格納部1501aに格納されるモジュールは、
メイン処理モジュールと、洗浄行程処理モジュール群
と、設定行程処理モジュール群と、管理モジュール群と
に分類される。メイン処理モジュールは、洗浄行程処理
モジュール群と、設定行程処理モジュール群と、管理処
理モジュール群とに含まれるモジュールの中から必要な
モジュールを呼び出し、実行させる。
【0087】洗浄行程処理モジュール群が行う具体的な
処理内容としては、通常に食器を洗浄し乾燥する通常洗
浄行程処理や、早急に食器を洗浄して乾燥する特急洗浄
行程処理、丁寧に洗浄し乾燥する念入り洗浄行程処理な
どが挙げられる。設定行程処理モジュール群が行う具体
的な処理内容としては、各種洗浄コースの設定、洗浄内
容をユーザの好みに合わせる時間設定キーなどによる各
種設定、時計の設定などが挙げられる。
【0088】管理処理モジュール群が行う管理処理の具
体的な処理内容としては、テストモード、デモモードな
どが挙げられる。回路制御処理モジュール格納部150
1bには、ポート入出力処理モジュールと、カウンタ処
理モジュールと、タイマ処理モジュールと、リフレッシ
ュ処理モジュールと、ポート入出力対応モジュールとが
格納される。
【0089】ポート入出力処理モジュールが行う処理と
しては、各種の洗浄コースを設定するキーやスタートキ
ー、ストップキー、時計設定用キーなどのキーの押下の
検知や、ダイヤルの回転やスライダーなど設定に使用す
る様々なインタフェースの検知、温度センサや重量セン
サ、光センサなどの各種センサからの値の取得、液晶や
LEDへの表示やモータの起動、ヒータの起動などが挙
げられる。
【0090】カウンタ処理モジュールは、タイマの計時
の際の基本単位となるカウンタのインクリメント処理を
行う。タイマ処理とは、インクリメントされたカウンタ
の値に基づき、ユーザが用意したタイマをインクリメン
トする処理である。例えば、カウンタが1ミリ秒間隔で
あった場合に、1秒単位のタイマを計時するときは、カ
ウンタが1000回で一回のインクリメントが行われ
る。
【0091】リフレッシュ処理モジュールは、LED表
示や、モータ出力などにおいて、ポートに対して出力し
たデータを定期的に再出力して、LEDの再表示やモー
タの再起動等を行う。ポート入出力対応処理モジュール
が行う処理としては、ヒータの温度が異常に高温になっ
たと温度センサが検知した場合にすぐにヒータを停止さ
せる処理や、7セグメントのLEDの組み合わせにより
数字を表現する場合に、LEDの点灯パタンを作成する
処理などが挙げられる。
【0092】実行処理格納部1502、待機処理格納部
1503、処理レベル格納部1504、処理切り換え要
求部1505、制御部1506(処理レベル管理部15
06aおよび処理状態管理部1506bを含む)につい
ては、第一の実施の形態で説明したものと同一であるの
でここでの詳しい説明は省略する。以上のように構成さ
れた食器洗い機について以下その動作を説明する。
【0093】図16は、本実施の形態における食器洗い
機に備えられたリアルタイム制御装置の動作を表すタイ
ミングチャートである。この例では、非同期事象として
タイマ割り込みを用いている。制御部1506の処理内
容については、第一の実施の形態で説明したものとほぼ
同一であるので、以下図2、図3、図15〜図20を参
照しながら説明する。なお、処理レベル格納部1504
の内容については図17に示す。同図において、数字が
小さい方が、高い優先度を付与されていることを表して
いる。
【0094】まず、図3で機器の制御を開始する。制御
開始時の実行処理格納部1502および待機処理格納部
1503の内容は図18に示す如くであるので、処理レ
ベル管理部1506aは実行識別子に従い、行程制御処
理の実行を処理状態管理部1506bに指示する。処理
状態管理部1506bは当該指示を受け、行程制御処理
の実行を開始する(S301)。
【0095】ここで、行程制御処理の一部である通常洗
浄制御処理を行っている最中にn回目のタイマ割り込み
が発生したものと想定する。これにより図2に示される
制御部1506の処理に移行する(S304)。処理切
り換え要求部1505は、タイマ割り込みの発生を受け
て、制御部1506に対して処理切り換え要求を出力す
る。処理レベル管理部1506aは処理切り換え要求を
受けて(S201)、実行識別子を取り出し待機処理格
納部1503に格納する(S202)。さらに、処理レ
ベル管理部1506aは、処理レベル格納部1504を
参照して、最も優先度の高い処理の識別子を実行処理格
納部1502に格納する(S203)。
【0096】図17に示されるように、本実施の形態に
おいて最も優先度の高い処理は回路制御処理であるの
で、識別子「回路制御処理」が実行処理格納部1502
に格納される。このときの、実行処理格納部1502お
よび待機処理格納部1503の内容を図19に示す。処
理レベル管理部1506aは、実行識別子を有する処理
の優先度と、最新待機識別子を有する処理の優先度とを
比較する(S204)。この場合には、実行識別子を有
する処理である回路制御処理の優先度の方が高いので、
ステップS205に進み、処理状態管理部1506b
が、実行識別子を有する処理である回路制御処理の実行
を開始する。具体的には、ポート入出力処理、カウンタ
処理、リフレッシュ処理、ポート入出力対応処理を順次
行う。
【0097】前述のとおり、本発明のリアルタイム制御
装置では、最も優先度の高い処理は非同期事象の発生周
期内に終了するように設計される。従って、回路制御処
理は、次回のタイマ割り込みの発生より前に終了する。
回路制御処理が終了すると、処理状態管理部1506b
は処理の終了を検知し、処理レベル管理部1506aに
処理の終了を通知する。処理レベル管理部1506a
は、処理レベル格納部1504を参照して、回路制御処
理より優先度の低い処理が存在するか否かを調べる(S
207)。
【0098】図17に示されるように、回路制御処理よ
り優先度の低い処理として行程制御処理が存在するの
で、回路制御処理の次に優先度の高い処理として行程制
御処理の識別子が、終了した回路制御処理の識別子の代
わりに実行処理格納部1502に格納される(S20
8)。処理レベル管理部1506aは、実行識別子を有
する処理の優先度と、最新待機識別子を有する処理の優
先度との比較を行う(S204)。図20は、このとき
の実行処理格納部1502および待機処理格納部150
3の内容を示す。同図に示されるように、実行識別子を
有する処理の優先度と、最新待機識別子を有する処理の
優先度とは等しいので、処理レベル管理部1506aは
最新待機識別子を取り出して実行処理格納部1502に
格納し(S209)、処理状態管理部1506bに対し
て、実行識別子を有する処理である行程制御処理の実行
を指示する。処理状態管理部1506bは当該指示を受
けて、行程制御処理の実行を開始する(S205)。こ
の処理はn回目のタイマ割り込みの際に中断された処理
であるので、中断時点から継続実行される。具体的に
は、通常洗浄行程処理の継続実行が行われる。
【0099】以後、通常洗浄行程処理の実行中に再びタ
イマ割り込みが発生した場合には、n回目のタイマ割り
込み発生時と同様の動作により再び回路制御処理が行わ
れる。即ち、通常洗浄行程処理の終了前にn+1回目の
タイマ割り込みが発生した場合には、図16のタイミン
グチャートに示されるように回路制御処理が行われ、回
路制御処理の終了後、通常洗浄行程処理が中断時点から
継続実行される。
【0100】さらに、通常洗浄行程処理の終了前にn+
2回目のタイマ割り込みが発生した場合も同様であるの
で、ここでの詳しい説明は省略する。タイマ割り込みの
発生以前に行程制御処理が終了した場合には、図17に
示されるように行程制御処理より優先度の低い処理が存
在しないため、図3へと戻り(S207:No)、マイ
コンシステムによる機器の制御が終了する。
【0101】なお、本実施の形態においては、回路制御
処理に含まれる処理の実行順序を、ポート入出力処理、
カウンタ処理、リフレッシュ処理、ポート入出力対応処
理の順としたが、実行順序はこれに限定されるものでは
なく、実施の形態に応じて適切な順序で実行することが
可能である。また、モジュールを分割もしくは統合して
同一の処理を行わしめることも可能であり、制御処理モ
ジュール格納部に格納されるモジュールの名称、構成等
についても、本実施の形態の例に限定されるものではな
い。
【0102】また、本実施の形態では、本発明のリアル
タイム制御方法及び装置の適用例として電子レンジおよ
び食器洗い機の例を示したが、適用可能な機器の種類に
ついては、これらに限定されるものではく、例えば、洗
濯機、テレビ、炊飯器、形態端末等、マイコンシステム
で制御される機器であって、リアルタイム制御の必要な
ものであれば適用は可能である。
【0103】
【発明の効果】請求項1の発明によれば、一種類の非同
期事象の発生に伴う割り込みを利用して、より優先度の
高い処理を起動し、優先度の高い処理の終了後に、中断
された優先度の低い処理を中断時点から再度実行するた
め、優先度の低い処理を所定の周期内に終了するために
分割する必要がなくなり、プログラムの設計、開発が容
易になるという効果がある。
【0104】また、同一の優先度を付与された一連の処
理が終了した際に、終了した処理の次に優先度が高い処
理と、中断されている処理の優先度とを比較することに
より一種類の割り込み要因を利用して複数の優先度を持
つ処理の制御を行うことが可能となり、多段階割り込み
可能な回路を使用することによるマイコンシステムの製
造コストの上昇を防げるという効果がある。
【0105】請求項2の発明においては、請求項1の発
明による効果に加え、終了した処理よりも優先度の低い
処理が存在しない場合に、機器の制御を終了するなどの
制御を行うことが可能となるという効果がある。請求項
3の発明においては、請求項1または2に記載の発明に
よる効果に加え、リアルタイム性が厳しく要求される処
理を確実に実行できるという効果がある。
【0106】請求項4の発明においては、請求項3の発
明と同様の効果が得られる。請求項5の発明において
は、請求項1乃至4の何れかに記載の発明による効果に
加え、簡易な構成により割り込みを発生させることがで
きるという効果がある。請求項6の発明においては、請
求項5の発明と同様の効果が得られる。
【0107】請求項7の発明においては、請求項1乃至
6に記載の発明による効果に加え、実行中の処理の識別
子の判別が容易になるという効果がある。請求項8の発
明においては、請求項1乃至7に記載の発明による効果
に加え、複数の優先度を付与された処理の制御を確実に
行えるという効果がある。請求項9の発明においては、
請求項1乃至8に記載の発明による効果を、家電製品等
に備えられるマイコンシステムのように資源の限られた
状況で得ることができるという効果がある。
【0108】請求項10の発明においては、請求項2の
発明と同様の効果が得られる。
【図面の簡単な説明】
【図1】本発明の第一の実施の形態のリアルタイム制御
装置の構成を示すブロック図である。
【図2】本発明の第一の実施の形態のリアルタイム制御
装置における制御部の処理内容を示すフローチャートで
ある。
【図3】本発明の第一の実施の形態のリアルタイム制御
装置の動作を表すフローチャートである。
【図4】本発明の第一の実施の形態のリアルタイム制御
装置の動作を示すタイミングチャートである。
【図5】本発明の第一の実施の形態のリアルタイム制御
装置における処理レベル格納部の内容の一例を示す図で
ある。
【図6】本発明の第一の実施の形態のリアルタイム制御
装置の動作中における実行処理格納部および待機処理格
納部の内容の一例を示す図である。
【図7】本発明の第一の実施の形態のリアルタイム制御
装置の動作中における実行処理格納部および待機処理格
納部の内容の一例を示す図である。
【図8】本発明の第一の実施の形態のリアルタイム制御
装置の動作中における実行処理格納部および待機処理格
納部の内容の一例を示す図である。
【図9】本発明の第一の実施の形態のリアルタイム制御
装置の動作中における実行処理格納部および待機処理格
納部の内容の一例を示す図である。
【図10】本発明の第一の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図11】本発明の第一の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図12】本発明の第一の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図13】本発明の第二の実施の形態のリアルタイム制
御装置の構成を示すブロック図である。
【図14】本発明の第二の実施の形態のリアルタイム制
御装置の動作を示すタイミングチャートである。
【図15】本発明の第三の実施の形態のリアルタイム制
御装置の構成を示すブロック図である。
【図16】本発明の第三の実施の形態のリアルタイム制
御装置の動作を示すタイミングチャートである。
【図17】本発明の第三の実施の形態のリアルタイム制
御装置における処理レベル格納部の内容の一例を示す図
である。
【図18】本発明の第三の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図19】本発明の第三の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図20】本発明の第三の実施の形態のリアルタイム制
御装置の動作中における実行処理格納部および待機処理
格納部の内容の一例を示す図である。
【図21】従来のリアルタイム制御方法である「ループ
法」の、処理内容を示すフロ−チャ−トである。
【図22】「ループ法」におけるシーケンス制御処理の
詳細な処理内容を示すフロ−チャ−トである。
【符号の説明】
101 制御処理モジュール格納部 101a 行程制御処理モジュール格納部 101b 優先回路制御処理モジュール格納部 101c 通常回路制御処理モジュール格納部 102 実行処理格納部 103 待機処理格納部 104 処理レベル格納部 105 処理切り換え要求部 106 制御部 106a 処理レベル管理部 106b 処理状態管理部 1301 制御処理モジュール格納部 1301a 行程制御処理モジュール格納部 1301b 優先回路制御処理モジュール格納部 1301c 通常回路制御処理モジュール格納部 1302 実行処理格納部 1303 待機処理格納部 1304 処理レベル格納部 1305 処理切り換え要求部 1306 制御部 1306a 処理レベル管理部 1306b 処理状態管理部 1501 制御処理モジュール格納部 1501a 行程制御処理モジュール格納部 1501b 回路制御処理モジュール格納部 1502 実行処理格納部 1503 待機処理格納部 1504 処理レベル格納部 1505 処理切り換え要求部 1506 制御部 1506a 処理レベル管理部 1506b 処理状態管理部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 眞田 紀男 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 安武 剛一 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 田中 裕彦 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 伊藤 謙次 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 内山 亘 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 石崎 恵美子 大阪府門真市大字門真1006番地 松下電器 産業株式会社内

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 所定の周期ごとに発生する一種類の割り
    込み要因による割り込みを利用して、機器の制御を行う
    マイコンシステムにおけるリアルタイム制御装置であっ
    て、 前記所定の周期内に終了するようにプログラムされた最
    も優先度の高い処理と、それ以外の優先度を持つ処理と
    について、処理の識別子と優先度とを記憶する処理優先
    度記憶手段と、 実行中の処理の識別子を記憶する実行処理記憶手段と、 実行が中断された処理の識別子と中断時の処理の状況を
    示す情報とを順次記憶する待機処理記憶手段と、 前記割り込みの発生を受けて、処理切り換え要求を出力
    する処理切り換え要求手段と、 前記処理切り換え要求を受けて、実行中の処理を中断
    し、最も高い優先度を付与された処理の実行を開始する
    とともに、前記実行処理記憶手段および前記待機処理記
    憶手段の内容を更新する第1の制御手段と、 処理の終了を検知したときに、終了した処理の次に優先
    度が高い処理の優先度と、前記待機処理記憶手段に最後
    に記憶された識別子を有する処理の優先度とを比較する
    比較手段と、 前記比較手段の比較において、前者の方が高い場合に、
    前者の処理の実行を開始するとともに、前記実行処理記
    憶手段の内容を更新する第2の制御手段と、 前記比較手段の比較において、前者の方が低いか、また
    は両者の優先度が等しい場合に、後者の処理を、前記待
    機処理記憶手段に記憶された中断時の処理の状況を示す
    情報に基づいて中断時点から再開するとともに、前記実
    行処理記憶手段および前記待機処理記憶手段の内容を更
    新する第3の制御手段とを有することを特徴とするリア
    ルタイム制御装置。
  2. 【請求項2】 前記リアルタイム制御装置はさらに、 処理の終了を検知したときに、前記処理優先度記憶手段
    の内容を参照し、終了した処理より優先度の低い処理が
    存在するか否かを判定する判定手段を有し、 前記比較手段は、 前記判定手段により存在すると判定された場合に、終了
    した処理の次に優先度が高い処理の優先度と、前記待機
    処理記憶手段に最後に記憶された識別子を有する処理の
    優先度とを比較することを特徴とする請求項1記載のリ
    アルタイム制御装置。
  3. 【請求項3】 前記機器の制御を行う処理は、 制御の内容により2段階の優先度に分類され、 優先度が高い方に分類された処理が、リアルタイム性が
    厳しく要求される処理を含み、 優先度が低い方に分類された処理が、それ以外の処理を
    含むことを特徴とする請求項1または2記載のリアルタ
    イム制御装置。
  4. 【請求項4】 前記機器の制御を行う処理は、 制御の内容により3段階の優先度に分類され、 最も優先度が高いと分類された処理が、ポートとの入出
    力処理と、タイマの計時の際の基本単位となるカウンタ
    のインクリメント処理とを含み、 次に優先度が高いと分類された処理が、タイマの計時処
    理と、ポート出力のリフレッシュ処理と、ポートから入
    力されたデータに対して施す必要のある処理と、ポート
    へ出力するデータを作成する処理とを含むことを特徴と
    する請求項1または2記載のリアルタイム制御装置。
  5. 【請求項5】 前記処理切り換え要求手段は、 タイマ割り込みを受けて処理切り換え要求を出力するこ
    とを特徴とする請求項1乃至4の何れかに記載のリアル
    タイム制御装置。
  6. 【請求項6】 前記リアルタイム制御装置はさらに、 交流電源電圧の周期を検知することにより、割り込みを
    発生する割り込み発生手段を備えることを特徴とする請
    求項1乃至4に何れかに記載のリアルタイム制御装置。
  7. 【請求項7】 前記第1の制御手段は、 前記実行処理格納手段の内容に、最も高い優先度を付与
    された処理の識別子を上書きすることを特徴とする請求
    項1乃至6の何れかに記載のリアルタイム制御装置。
  8. 【請求項8】 前記待機処理格納手段は、 スタック構造を有し、 前記第1の制御手段は、 前記待機処理格納手段に、中断された処理の識別子と中
    断時の処理の状況を示す情報とを追加することを特徴と
    する請求項1乃至7の何れかに記載のリアルタイム制御
    装置。
  9. 【請求項9】 前記リアルタイム制御装置は、 家電製品の制御を行うマイコンシステムに備えられるこ
    とを特徴とする請求項1乃至8の何れかに記載のリアル
    タイム制御装置。
  10. 【請求項10】 所定の周期ごとに発生する一種類の割
    り込み要因による割り込みを利用して、機器の制御を行
    うマイコンシステムにおけるリアルタイム制御方法であ
    って、 前記割り込みの発生を受けて、処理切り換え要求を出力
    する処理切り換え要求ステップと、 前記処理切り換え要求を受けて、実行中の処理を中断
    し、最も優先度の高い処理の実行を開始する第1の実行
    ステップと、 処理の終了を検知したときに、終了した処理より優先度
    の低い処理が存在する場合に、終了した処理の次に優先
    度が高い処理の優先度と、最近に中断された処理の優先
    度とを比較する比較ステップと、 前記比較ステップにおいて、前者の方が高い場合に、前
    者の処理の実行を開始する第2の実行ステップと、 前記比較ステップにおいて、前者の方が低いか、または
    両者の優先度が等しい場合に、後者の処理を中断時点か
    ら再開する第3の実行ステップとを有することを特徴と
    するリアルタイム制御方法。
JP8032038A 1996-02-20 1996-02-20 リアルタイム制御装置及び方法 Pending JPH09223025A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8032038A JPH09223025A (ja) 1996-02-20 1996-02-20 リアルタイム制御装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8032038A JPH09223025A (ja) 1996-02-20 1996-02-20 リアルタイム制御装置及び方法

Publications (1)

Publication Number Publication Date
JPH09223025A true JPH09223025A (ja) 1997-08-26

Family

ID=12347708

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8032038A Pending JPH09223025A (ja) 1996-02-20 1996-02-20 リアルタイム制御装置及び方法

Country Status (1)

Country Link
JP (1) JPH09223025A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337083B1 (ko) * 2000-05-18 2002-05-16 송재인 프로그램 제작자의 외부장비 제어방법
JP2003296133A (ja) * 2002-04-05 2003-10-17 Fuji Electric Co Ltd コントローラ
CN105159217A (zh) * 2015-08-31 2015-12-16 南京福瑞德机电科技有限公司 一种擦窗机控制系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337083B1 (ko) * 2000-05-18 2002-05-16 송재인 프로그램 제작자의 외부장비 제어방법
JP2003296133A (ja) * 2002-04-05 2003-10-17 Fuji Electric Co Ltd コントローラ
CN105159217A (zh) * 2015-08-31 2015-12-16 南京福瑞德机电科技有限公司 一种擦窗机控制系统

Similar Documents

Publication Publication Date Title
KR950005217B1 (ko) 프로세서 클럭 신호 제어 방법 및 정보 처리 시스템
US6327653B1 (en) Technique for easily changing operating systems of a digital computer system using at least two pushbuttons
KR920001319A (ko) 처리기 및 처리기의 처리방법
JP2003050571A (ja) ディスプレイフレームバッファの更新方法および装置
JP2001331242A (ja) 情報処理装置及びその消費電力制御方法
CN111172705A (zh) 家用电器的程序推荐控制方法
JP2003296133A (ja) コントローラ
JPH08179937A (ja) ブートプログラム切替え装置及びその方法
KR100626361B1 (ko) 멀티 운영체제를 구비하는 컴퓨터 시스템 및 그의사용중인 운영체제를 변경 하기 위한 방법
JP2004516547A (ja) 中断制御装置
JP3758477B2 (ja) マイクロコンピュータ
JPH07334392A (ja) リセット装置及び異常動作検出装置
JP3603752B2 (ja) 制御機能付き表示器
JP2702743B2 (ja) 電子機器
JPH0689121A (ja) 利用環境の変更を容易にした情報処理装置
JP2000076081A (ja) タスクマネージャー及びプログラム記録媒体
JP2000322277A (ja) タスク管理装置
JPH11184828A (ja) マルチプロセッサシステムのテスト方式
JP3542409B2 (ja) 情報処理装置
JPH076155A (ja) シングルチップ・マイクロコンピュータ
JP2002333946A (ja) プログラマブル表示器
JP2007188171A (ja) メモリコントローラ
CN121204947A (zh) 洗涤参数调节方法、装置、衣物处理设备及介质
CN117111872A (zh) 一种显示屏控制方法及装置
WO2024020248A1 (en) Stored program interpreter for implementing time-dependent behavior of controlled loads