(57)【要約】【課題】機能追加や変更が容易に可能な空調制御装置を得ること。【解決手段】運転状態の状態遷移を判定する運転状態判定部２３と、アクチュエータごとに状態遷移を判定するアクチュエータ状態判定部２４と、指定された制御部品を実行してアクチュエータの動作を制御するアクチュエータ制御部（２７，２８，２９，３０)と、制御部品ＩＤを登録する制御部品構成テーブル２１と、制御部品のアドレスを登録するアクチュエータ制御部品アドレステーブル２６と、運転状態とアクチュエータ状態に基づいて制御部品構成テーブル２１から制御部品ＩＤを取得し、制御部品ＩＤに基づいてアクチュエータ制御部品アドレステーブル２６から制御部品のアドレスを取得し、制御部品のアドレスをアクチュエータ制御部（２７，２８，２９，３０)に通知することにより制御部品を指定する制御部品選択実行部２５を備える。【選択図】        図１
2010255962.tif 000002
【特許請求の範囲】
【請求項１】
複数のアクチュエータを備えた空調装置内で、当該空調装置の制御を行う空調制御装置であって、
空調装置利用者の操作によって運転指令が入力された場合に、運転状態に状態遷移が発生するかどうかを判定し、当該判定後の運転状態を出力する運転状態判定手段と、
前記判定後の運転状態が入力された場合に、アクチュエータごとに状態遷移が発生するかどうかを判定し、当該判定後のアクチュエータ状態を出力するアクチュエータ状態判定手段と、
アクチュエータの動作の制御方法を実装したプログラムである制御部品を備え、指定された制御部品を実行してアクチュエータの動作を制御するアクチュエータ制御手段と、
前記制御部品のＩＤを示す制御部品ＩＤを登録するための制御部品構成テーブルと、
前記制御部品ＩＤに対応した制御部品のアドレスを登録するためのアクチュエータ制御部品アドレステーブルと、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいてアクチュエータごとに前記制御部品を選択し、当該選択した制御部品を、アクチュエータごとに実行する制御部品として指定する制御部品選択実行手段と、
を備え、
前記制御部品選択実行手段は、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいて、アクチュエータごとに前記制御部品構成テーブルから制御部品ＩＤを取得し、さらに、当該制御部品ＩＤに基づいて、前記アクチュエータ制御部品アドレステーブルから対応する制御部品のアドレスを取得し、当該制御部品のアドレスを前記アクチュエータ制御手段に通知することにより、制御部品を指定することを特徴とする空調制御装置。
【請求項２】
前記制御部品構成テーブルは、
アクチュエータごとに独立したテーブルを備え、各アクチュエータについて前記運転状態と前記アクチュエータ状態を特定することにより制御部品を特定可能とすることを特徴とする請求項１に記載の空調制御装置。
【請求項３】
複数のアクチュエータを備えた空調装置内で、当該空調装置の制御を行う空調制御装置であって、
空調装置利用者の操作によって運転指令が入力された場合に、運転状態に状態遷移が発生するかどうかを判定し、当該判定後の運転状態を出力する運転状態判定手段と、
前記判定後の運転状態が入力された場合に、アクチュエータごとに状態遷移が発生するかどうかを判定し、当該判定後のアクチュエータ状態を出力するアクチュエータ状態判定手段と、
アクチュエータの動作の制御方法を実装したプログラムである制御部品を備え、指定された制御部品を実行してアクチュエータの動作を制御するアクチュエータ制御手段と、
前記制御部品のアドレスを登録するためのコンパイル済み制御部品構成テーブルと、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいてアクチュエータごとに前記制御部品を選択し、当該選択した制御部品を、アクチュエータごとに実行する制御部品として指定する制御部品選択実行手段と、
を備え、
前記制御部品選択実行手段は、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいて、アクチュエータごとに前記コンパイル済み制御部品構成テーブルから制御部品のアドレスを取得し、当該制御部品のアドレスを前記アクチュエータ制御手段に通知することにより、制御部品を指定することを特徴とする空調制御装置。
【請求項４】
前記コンパイル済み制御部品構成テーブルは、
アクチュエータごとに独立したテーブルを備え、各アクチュエータについて前記運転状態と前記アクチュエータ状態を特定することにより制御部品を特定可能とすることを特徴とする請求項３に記載の空調制御装置。
【請求項５】
前記運転状態判定手段は、
空調装置利用者が指令した空調装置の運転の種類を運転状態とすることを特徴とする請求項１〜４のいずれか１つに記載の空調制御装置。
【請求項６】
前記アクチュエータ状態判定手段は、
アクチュエータごとに固有の制御過程の種類をアクチュエータ状態とすることを特徴とする請求項１〜５のいずれか１つに記載の空調制御装置。
【請求項７】
複数のアクチュエータを備えた空調装置内で、当該空調装置の制御を行う空調制御装置における空調制御方法であって、
前記空調制御装置が、
アクチュエータの動作の制御方法を実装したプログラムである制御部品のＩＤを示す制御部品ＩＤを登録するための制御部品構成テーブルと、
前記制御部品ＩＤに対応した制御部品のアドレスを登録するためのアクチュエータ制御部品アドレステーブルと、
を備える場合において、
空調装置利用者の操作によって運転指令が入力された場合に、運転状態に状態遷移が発生するかどうかを判定し、当該判定後の運転状態を出力する運転状態判定ステップと、
前記判定後の運転状態が入力された場合に、アクチュエータごとに状態遷移が発生するかどうかを判定し、当該判定後のアクチュエータ状態を出力するアクチュエータ状態判定ステップと、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいて、前記制御部品構成テーブルから制御部品ＩＤを取得する制御部品ＩＤ取得ステップと、
前記取得した制御部品ＩＤに基づいて、前記アクチュエータ制御部品アドレステーブルから制御部品のアドレスを取得する制御部品アドレス取得ステップと、
前記制御部品のアドレスにより指定される制御部品を実行してアクチュエータの動作を制御する制御ステップと、
を含むことを特徴とする空調制御方法。
【請求項８】
複数のアクチュエータを備えた空調装置内で、当該空調装置の制御を行う空調制御装置における空調制御方法であって、
前記空調制御装置が、
アクチュエータの動作の制御方法を実装したプログラムである制御部品のアドレスを登録するためのコンパイル済み制御部品構成テーブル、
を備える場合において、
空調装置利用者の操作によって運転指令が入力された場合に、運転状態に状態遷移が発生するかどうかを判定し、当該判定後の運転状態を出力する運転状態判定ステップと、
前記判定後の運転状態が入力された場合に、アクチュエータごとに状態遷移が発生するかどうかを判定し、当該判定後のアクチュエータ状態を出力するアクチュエータ状態判定ステップと、
前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいて、前記コンパイル済み制御部品構成テーブルから制御部品のアドレスを取得する制御部品アドレス取得ステップと、
前記制御部品のアドレスにより指定される制御部品を実行してアクチュエータの動作を制御する制御ステップと、
を含むことを特徴とする空調制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機能追加や変更が容易に可能な空調制御装置に関する。
【背景技術】
【０００２】
近年、マイクロコンピュータの高性能化とソフトウェア開発技術の発達に伴い、空調装置に高度で複雑な機能を搭載することが可能になり、空調装置の制御プログラムは大規模化、複雑化している。また、多様なユーザニーズに対応するため、たとえば、廉価版、普及版、高機能版といった製品シリーズの展開や、用途に応じた大小さまざまな容量を持つ機種のラインナップ、あるいは特定顧客の要望に応じた特殊機能の提供など、製品バリエーションの多様化が著しく進んでいる。
【０００３】
製品シリーズを構成する数多くの機種に対応するため、空調装置の制御プログラムは、要求に応じた変更を容易に行え、派生機種の開発を効率化できることが必須となる。また、プログラムは、一般的に、変更を繰り返すにしたがって構造が複雑化し、新たな機能の追加や既存機能の仕様変更が次第に困難になる傾向がある。このため、派生機種開発を効率化するプログラムは、機能の追加や変更が容易であるとともに、機能の追加や変更を行ってもプログラムが複雑化せず、変更容易性が損なわれない特性を備える必要がある。
【０００４】
空調装置のプログラムの変更を容易に実現する技術として、下記特許文献１において、インターネット等を用いて空調装置のプログラムを更新する手段を設け、製品出荷後でも顧客の希望に応じて制御プログラムの追加や更新を行う技術が開示されている。また、下記特許文献２において、プログラムおよび定数データをハードウェア依存部とハードウェアに依存しない変更可能部に分け、ハードウェア依存部を読み出し専用メモリに格納し、変更可能部を不揮発性読み書き可能メモリに格納する技術が開示されている。これによれば、制御定数の変更によって派生機種が実現できる場合は、制御プログラムの変更が必要ないため開発の効率化が期待できる。
【０００５】
【特許文献１】特開２００３−０５６８８９号公報
【特許文献２】特開２００１−０９１０３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１の技術によれば、空調装置の制御プログラムをカスタマイズするための具体的な方法やカスタマイズに適したプログラム構造については開示されていない。そのため、数多くの派生機種開発を効率よく行いつつ、変更が容易なプログラム構造を維持するという点では不十分である、という問題があった。
【０００７】
また、上記特許文献２の技術によれば、制御プログラムの変更が必要になるような制御方式の変更に対しては機能追加や変更を容易に実現できず、また、変更によるプログラム構造の複雑化を防止することはできない。そのため、数多くの派生機種開発を効率よく行いつつ、変更が容易なプログラム構造を維持するという点では不十分である、という問題があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、派生機種を開発する際のプログラムへの機能の追加や変更を容易に実現するとともに、機能の追加や変更によってプログラムが複雑化せず、派生機種の開発効率の低下を防ぐことが可能な空調制御プログラムを搭載する空調制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、複数のアクチュエータを備えた空調装置内で、当該空調装置の制御を行う空調制御装置であって、空調装置利用者の操作によって運転指令が入力された場合に、運転状態に状態遷移が発生するかどうかを判定し、当該判定後の運転状態を出力する運転状態判定手段と、前記判定後の運転状態が入力された場合に、アクチュエータごとに状態遷移が発生するかどうかを判定し、当該判定後のアクチュエータ状態を出力するアクチュエータ状態判定手段と、アクチュエータの動作の制御方法を実装したプログラムである制御部品を備え、指定された制御部品を実行してアクチュエータの動作を制御するアクチュエータ制御手段と、前記制御部品のＩＤを示す制御部品ＩＤを登録するための制御部品構成テーブルと、前記制御部品ＩＤに対応した制御部品のアドレスを登録するためのアクチュエータ制御部品アドレステーブルと、前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいてアクチュエータごとに前記制御部品を選択し、当該選択した制御部品を、アクチュエータごとに実行する制御部品として指定する制御部品選択実行手段と、を備え、前記制御部品選択実行手段は、前記判定後の運転状態と前記判定後のアクチュエータ状態に基づいて、アクチュエータごとに前記制御部品構成テーブルから制御部品ＩＤを取得し、さらに、当該制御部品ＩＤに基づいて、前記アクチュエータ制御部品アドレステーブルから対応する制御部品のアドレスを取得し、当該制御部品のアドレスを前記アクチュエータ制御手段に通知することにより、制御部品を指定することを特徴とする。
【発明の効果】
【００１０】
この発明によれば、派生機種を開発する際のプログラムへの機能の追加や変更を容易にでき、また、機能の追加や変更によってプログラムが複雑化せず、派生機種の開発効率の低下を防ぐことができる、という効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下に、本発明にかかる空調制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、空調制御装置（空調制御部）を含む空調装置の構成例を示す図である。空調装置１は、運転指令部１０と、空調制御部２０と、圧縮機４０と、膨張弁５０と、ファン６０と、四方弁７０と、を備える。空調装置１は、制御部品構成テーブル作成部２と接続する。
【００１３】
運転指令部１０は、空調装置利用者の操作に基づいて、要求運転モードや設定温度の運転指令を空調制御部２０へ出力する。運転指令部１０は、制御盤１１と、リモコン１２を備える。空調装置利用者は、空調装置１に備えられた制御盤１１またはリモコン１２を操作して要求運転モードや設定温度の変更等を行う。
【００１４】
空調制御部２０は、運転指令部１０からの運転指令に基づいて、空調装置のアクチュエータ（圧縮機４０，膨張弁５０，ファン６０，四方弁７０）の動作を制御し、要求された運転モードおよび設定された温度を実現する。空調制御部２０は、制御部品構成テーブル２１と、固定制御部２２を備える。制御部品構成テーブル２１は、指定された運転状態とアクチュエータ状態に対応する制御部品のＩＤを示すテーブルである。制御部品とは、運転状態とアクチュエータ状態およびアクチュエータ種別の組合せによって定まる、アクチュエータに対する制御方法を実装したプログラムである。制御部品構成テーブル作成者は、制御部品構成テーブル作成部２を使用して制御部品構成テーブル２１の内容を作成することができる。固定制御部２２は、空調制御を実行するプログラムが格納されたメモリ（たとえば、ＲＯＭ（Read  Only  Memory）等）であり、運転指令部１０からの運転指令に基づいて、各アクチュエータの動作を制御し、要求運転モードおよび設定温度を実現する。固定制御部２２は、運転状態判定部２３と、アクチュエータ状態判定部２４と、制御部品選択実行部２５と、アクチュエータ制御部品アドレステーブル２６と、圧縮機制御部２７と、膨張弁制御部２８と、ファン制御部２９と、四方弁制御部３０と、を備える。
【００１５】
運転状態判定部２３は、運転指令部１０からの運転指令に基づいて運転状態の状態遷移を管理する。ここでは、空調装置利用者が運転指令部１０を通して指令した、通常冷房や通常暖房といった運転の種類を空調装置１の運転状態として状態遷移を管理する。アクチュエータ状態判定部２４は、運転状態の変化に対して、アクチュエータの制御過程の状態をアクチュエータ状態として、アクチュエータごとにアクチュエータ状態の状態遷移を管理する。制御部品選択実行部２５は、運転状態とアクチュエータ状態に基づいて制御部品を選択し、各アクチュエータの制御部（２７，２８，２９，３０）に対して実行すべき制御部品を指定する。アクチュエータ制御部品アドレステーブル２６は、各アクチュエータの制御部品のＩＤとアドレスの対応情報を格納するテーブルである。圧縮機制御部２７は、指定された制御部品を実行して圧縮機４０の動作を制御する。膨張弁制御部２８は、指定された制御部品を実行して膨張弁５０の動作を制御する。ファン制御部２９は、指定された制御部品を実行してファン６０の動作を制御する。四方弁制御部３０は、指定された制御部品を実行して四方弁７０の動作を制御する。
【００１６】
圧縮機４０は、圧縮機制御部２７の制御に基づいて、冷媒を圧縮する。膨張弁５０は、膨張弁制御部２８の制御に基づいて、冷媒の量を調整する。ファン６０は、ファン制御部２９の制御に基づいて、圧縮後熱交換器に入った冷媒の温度を変化させる。四方弁７０は、四方弁制御部３０の制御に基づいて、冷媒の流れる方向を変える。
【００１７】
制御部品構成テーブル作成部２は、制御部品構成テーブル作成者が、制御部品構成テーブル２１の内容を作成する際に使用する入力装置である。
【００１８】
つづいて、本実施の形態の空調装置１における空調制御部２０の空調制御処理をフローチャートに基づいて説明する。図２は空調制御部２０の空調制御処理を示すフローチャートである。まず、空調制御部２０では、運転状態判定部２３が、運転指令部１０から運転指令を受信する（ステップＳ１）。図３は、運転指令の構成例を示す図である。運転指令は、要求運転モードと設定温度を含む。ここでは、一例として、運転要求モードが「通常冷房」であり、設定温度が「２５℃」であることを表す。本実施の形態では、運転指令のうち、運転要求モードに対する制御処理について説明する。
【００１９】
つぎに、運転状態判定部２３は、受信した運転指令に基づいて、運転状態を判定する（ステップＳ２）。ここで、運転状態判定部２３の判定処理について詳細に説明する。図４は、運転状態判定部２３の構成例を示す図である。運転状態判定部２３は、運転状態イベント検出部２３１と、運転状態遷移判定部２３２と、運転状態遷移実行部２３３を備える。運転状態イベント検出部２３１は、運転指令部１０からの運転指令をイベントとして検出する。運転状態遷移判定部２３２は、運転状態の状態遷移を判定する。運転状態遷移実行部２３３は、状態遷移の判定結果に基づいて運転状態の遷移処理を行う。
【００２０】
図５は運転状態判定部２３の判定処理を示すフローチャートである。まず、運転状態イベント検出部２３１が、運転指令部１０からの運転指令をイベントとして検出する（ステップＳ１１）。たとえば、運転指令の要求運転モードが「通常冷房」であった場合、イベントとして「通常冷房要求」を検出する。運転状態イベント検出部２３１は、検出したイベントを運転状態遷移判定部２３２へ出力する。つぎに、運転状態遷移判定部２３２が、状態遷移表を参照し、入力したイベントに基づいて状態遷移の判定を行う（ステップＳ１２）。図６は、運転状態遷移判定部２３２が備える状態遷移表の構成例を示す図である。状態遷移表は、現在の運転状態に対して、イベントが発生した場合の運転状態の遷移動作を示す。「⇒＜運転状態名＞」は、＜運転状態名＞で表される運転状態に遷移することを示す。たとえば、運転状態が「停止中」のときにイベントとして「通常冷房要求」が入力された場合、運転状態は「停止中」から「通常冷房運転中」に遷移することを表す。
【００２１】
判定の結果、状態遷移があった場合（ステップＳ１２：Ｙｅｓ）、運転状態遷移実行部２３３が、運転状態遷移を実行する（ステップＳ１３）。具体的には、図６の状態遷移表において、「−」以外の「⇒＜運転状態名＞」で記載されている項目に該当する場合であり、「⇒＜運転状態名＞」で記載されている運転状態に遷移する。この場合、運転状態遷移実行部２３３は、運転状態の遷移処理として、遷移先の運転状態を現在の運転状態として格納し保持する。判定の結果、状態遷移がなかった場合（ステップＳ１２：Ｎｏ）、ステップＳ１３の処理を省略して判定処理を終了する。具体的には、図６の状態遷移表において、「−」で記載されている項目が該当する。入力されたイベントに対して状態遷移の処理をしないことを示す。
【００２２】
運転状態遷移実行部２３３は、判定後の運転状態を、アクチュエータ状態判定部２４、制御部品選択実行部２５、および運転状態遷移判定部２３２へ出力する。なお、運転状態に状態遷移が無かった場合は、運転状態遷移実行部２３３は、停止制御完了、または起動制御完了といったアクチュエータ制御処理の完了を、アクチュエータ状態判定部２４へ出力する。
【００２３】
図２のフローチャートに戻って説明をする。上記運転状態判定部２３における判定処理ステップＳ２（ステップＳ１１〜Ｓ１３）の後、つぎに、アクチュエータ状態判定部２４が、運転状態判定部２３からの運転状態に基づいてアクチュエータごとにアクチュエータ状態を判定する（ステップＳ３）。
【００２４】
アクチュエータ状態判定部２４の判定処理について詳細に説明する。図７は、アクチュエータ状態判定部２４の構成例を示す図である。アクチュエータ状態判定部２４は、アクチュエータ状態イベント検出部２４１と、アクチュエータ状態遷移判定部２４２と、アクチュエータ状態遷移実行部２４３を備える。アクチュエータ状態イベント検出部２４１は、運転状態判定部２３からの運転状態の変化あるいはアクチュエータ制御処理の完了をイベントとして検出する。アクチュエータ状態遷移判定部２４２は、アクチュエータ状態の状態遷移を判定する。アクチュエータ状態遷移実行部２４３は、状態遷移の判定結果に基づいてアクチュエータ状態の遷移処理を行う。
【００２５】
図８はアクチュエータ状態判定部２４の判定処理を示すフローチャートである。アクチュエータ状態判定部２４では、各アクチュエータについて判定を行うため、一例として、アクチュエータ状態イベント検出部２４１が、圧縮機４０を選択する（ステップＳ２１）。アクチュエータを選択後、アクチュエータ状態イベント検出部２４１が、運転状態判定部２３からの運転状態に基づいて、運転状態の変化、またはアクチュエータ（圧縮機４０）の制御処理の完了をイベントとして検出する（ステップＳ２２）。たとえば、運転状態判定部２３から入力された運転状態が「通常冷房運転中」であって前回入力時の運転状態が「停止中」だった場合、イベントとして「運転状態が停止中から通常冷房運転中、通常暖房運転中、冷房定格運転中、暖房定格運転中のいずれかへ変化」を検出する。アクチュエータ状態イベント検出部２４１は、検出したイベントをアクチュエータ状態遷移判定部２４２へ出力する。
【００２６】
つぎに、アクチュエータ状態遷移判定部２４２が、状態遷移表を参照し、入力したイベントに基づいて状態遷移の判定を行う（ステップＳ２３）。図９は、アクチュエータ状態遷移判定部２４２が備える状態遷移表の構成例を示す図である。状態遷移表は、現在のアクチュエータ状態に対して、イベントが発生した場合のアクチュエータ状態の遷移動作を示す。「⇒＜アクチュエータ状態名＞」は、＜アクチュエータ状態名＞で表されるアクチュエータ状態に遷移することを示す。たとえば、アクチュエータ状態が「停止状態」のときにイベントとして「運転状態が停止中から通常冷房運転中、通常暖房運転中、冷房定格運転中、暖房定格運転中のいずれかへ変化」が入力された場合、アクチュエータ状態は「停止状態」から「起動制御中」に遷移することを表す。
【００２７】
判定の結果、状態遷移があった場合（ステップＳ２３：Ｙｅｓ）、アクチュエータ状態遷移実行部２４３が、アクチュエータ状態遷移を実行する（ステップＳ２４）。具体的には、図９の状態遷移表において、「−」以外の「⇒＜アクチュエータ状態名＞」で記載されている項目に該当する場合であり、「⇒＜アクチュエータ状態名＞」で記載されているアクチュエータ状態に遷移する。この場合、アクチュエータ状態遷移実行部２４３は、アクチュエータ状態の遷移処理として、遷移先のアクチュエータ状態を現在のアクチュエータ状態として格納し保持する。判定の結果、状態遷移がなかった場合（ステップＳ２３：Ｎｏ）、ステップＳ２４の処理を省略する。具体的には、図９の状態遷移表において、「−」で記載されている項目が該当する。入力されたイベントに対して状態遷移の処理をしないことを示す。
【００２８】
アクチュエータ状態遷移実行部２４３は、判定後のアクチュエータ状態を、制御部品選択実行部２５およびアクチュエータ状態遷移判定部２４２へ出力する。ここで、ステップＳ２５において、１つのアクチュエータ（圧縮機４０）についての判定処理が終了したのでステップＳ２１へ戻り（ステップＳ２５）、別のアクチュエータについて状態遷移を判定する。以降、４つのアクチュエータの状態遷移を判定するまで、上記ステップＳ２２〜Ｓ２４の処理を繰り返し実行する。
【００２９】
図２のフローチャートに戻って説明をする。上記アクチュエータ状態判定部２４における判定処理ステップＳ３（ステップＳ２１〜Ｓ２５）の後、つぎに、制御部品選択実行部２５が、運転状態判定部２３からの運転状態およびアクチュエータ状態判定部２４からのアクチュエータ状態に基づいて、各アクチュエータに対応した制御部品を選択し、各アクチュエータの制御部（２７，２８，２９，３０）に対して、実行すべき制御部品を指定する処理を行う（ステップＳ４）。
【００３０】
制御部品選択実行部２５の選択および実行処理について詳細に説明する。図１０は、制御部品選択実行部２５の選択および実行の処理を示すフローチャートである。まず、制御部品選択実行部２５は、運転状態判定部２３から運転状態を取得する（ステップＳ３１）。つぎに、制御部品選択実行部２５は、各アクチュエータについて判定を行うため、ここでは、圧縮機４０を選択する（ステップＳ３２）。アクチュエータを選択後、選択したアクチュエータ（圧縮機４０）に対応するアクチュエータ状態を、アクチュエータ状態判定部２４から取得する（ステップＳ３３）。つぎに、制御部品選択実行部２５は、制御部品構成テーブル２１を参照し、アクチュエータ（圧縮機４０）について取得した運転状態およびアクチュエータ状態に基づいて、対応する制御部品ＩＤを取得する（ステップＳ３４）。
【００３１】
図１１は、制御部品構成テーブル２１の構成例を示す図である。制御部品構成テーブル２１は、アクチュエータごとにテーブルを備え、図１１は、一例として、圧縮機４０用の制御部品構成テーブルとする。行で指定される運転状態と、列で指定されるアクチュエータ状態に対応する制御部品のＩＤが示されている。たとえば、運転状態が「通常冷房運転中」であり、圧縮機４０のアクチュエータ状態が「定常制御中」の場合、制御部品ＩＤとして、冷房比例周波数制御のＩＤである「CMP＿COOL＿PROP＿CTRL」（図１１：１００１）を取得する。
【００３２】
制御部品構成テーブル２１は、制御部品構成テーブル作成者が、制御部品構成テーブル作成部２を使用して作成する。制御部品構成テーブル２１は、ＲＯＭなどに格納され、制御部品選択実行部２５から参照される。制御部品構成テーブル２１は、同一シリーズで、機能が異なる機種では内容が異なる。たとえば、機種Ｘは、通常冷房運転中の圧縮機の定常制御中では冷房比例周波数制御を用いるのに対し、機種Ｙは、冷房ファジィ周波数制御を用いるとする。機種Ｘでは図１１に示す圧縮機用の制御部品構成テーブルとなり、機種Ｙでは図１２に示す圧縮機用の制御部品構成テーブルとなる。図１２は、機種Ｙにおける圧縮機用の制御部品構成テーブルの構成例を示す図である。図１２では、運転状態が「通常冷房運転中」であり、圧縮機状態が「定常制御中」の場合、制御部品ＩＤとして、冷房ファジィ周波数制御のＩＤである「CMP＿COOL＿FUZZY＿CTRL」（図１２：１００２）を取得する。制御部品構成テーブル作成者は、制御部品構成テーブル作成部２を使用して機能の選択を行い、選択された機能に応じた制御部品構成テーブルを作成できる。
【００３３】
つぎに、制御部品選択実行部２５は、アクチュエータ制御部品アドレステーブル２６を参照し、取得した制御部品ＩＤに対応した制御部品のアドレスを割り出す（ステップＳ３５）。図１３は、アクチュエータ制御部品アドレステーブル２６の構成例を示す図である。アクチュエータ制御部品アドレステーブル２６は、アクチュエータごとにテーブルを備え、図１３は、一例として、圧縮機４０用のアクチュエータ制御部品アドレステーブルとする。取得した制御部品ＩＤが冷房比例周波数制御を示す「CMP＿COOL＿PROP＿CTRL」であった場合、制御部品選択実行部２５は、制御部品のアドレスとして、「cmp＿cool＿prop＿ctrl」（図１３：１００３）を割り出す。
【００３４】
つぎに、制御部品選択実行部２５は、割り出した制御部品のアドレスを用いて、圧縮機制御部２７に対して、実行すべき制御部品を指定する処理を行う（ステップＳ３６）。圧縮機制御部２７が、指定された制御部品を実行して圧縮機４０の動作を制御することにより、空調装置利用者が要求した運転指令を実現する。ここで、ステップＳ３６において、１つのアクチュエータ（圧縮機４０）についての制御部品の選択および実行処理が終了したのでステップＳ３２へ戻り（ステップＳ３７）、別のアクチュエータについての制御部品の選択および実行処理を行う。以降、４つのアクチュエータについて制御部品の選択および実行処理を行うまで、上記ステップＳ３３〜Ｓ３６の処理を繰り返し実行する。
【００３５】
このように、制御プログラム全体を、運転状態とアクチュエータ状態に対応する制御部品の集合体として構成することで、機能の追加や変更の要求に対して制御プログラムの変更箇所を容易に決定できる。また、変更が不要で既存の制御プログラムを再利用できる箇所も容易に決定できるため、プログラムの再利用が容易になる。また、機種によって異なる制御方式を採用している場合、一連の制御方式を実装した制御部品群をあらかじめ用意しておくことで、制御部品構成テーブル２１を変更するだけで異なる機種の制御プログラムを実現することができるため、制御部品の再利用が可能になる。
【００３６】
以上説明したように、本実施の形態では、空調制御部において、アクチュエータの制御を行う制御部が、制御方法に対応したプログラムを制御部品として備える。空調制御部が、空調装置の運転状態とアクチュエータ状態に基づいて、制御部品構成テーブルを参照して制御部品を選択および実行し、各アクチュエータの制御部が制御部品に基づいてアクチュエータを制御することとした。これにより、制御部品構成テーブルの内容を変更するだけで、派生機種を開発する際のプログラムの機能の追加や変更を容易に実現できる。また、機能の追加や変更によってプログラムが複雑化せず、開発効率の低下を防ぐことができる。
【００３７】
実施の形態２．
本実施の形態では、制御部品構成テーブルをプログラムとして作成し、制御部品選択実行部はコンパイル・リンクされたテーブルを参照する。実施の形態１と異なる部分について説明する。
【００３８】
図１４は、本実施の形態の空調制御装置を含む空調装置の構成例を示す図である。空調装置１ａは、運転指令部１０と、空調制御部２０ａと、圧縮機４０と、膨張弁５０と、ファン６０と、四方弁７０と、を備える。空調装置１ａは、空調制御部２０に代えて空調制御部２０ａを備える点が空調装置１と異なる。また、空調装置１ａは、制御部品構成テーブル作成者が制御部品構成テーブル作成部２ａを使用して作成した制御部品構成テーブル２１ａを入力する。空調制御部２０ａは、運転指令部１０からの運転指令に基づいて、空調装置のアクチュエータ（圧縮機４０，膨張弁５０，ファン６０，四方弁７０）の動作を制御し、要求された運転モードと設定温度を実現する。空調制御部２０ａは、固定制御部２２ａを備える。
【００３９】
固定制御部２２ａは、運転指令部１０からの運転指令に基づいて、各アクチュエータの動作を制御し、要求運転モードおよび設定温度を実現する。固定制御部２２ａは、運転状態判定部２３と、アクチュエータ状態判定部２４と、制御部品選択実行部２５ａと、コンパイル済み制御部品構成テーブル３１と、圧縮機制御部２７と、膨張弁制御部２８と、ファン制御部２９と、四方弁制御部３０と、を備える。制御部品選択実行部２５ａは、コンパイル済み制御部品構成テーブル３１を参照し、運転状態とアクチュエータ状態に基づいて制御部品を選択し実行する。コンパイル済み制御部品構成テーブル３１は、プログラムとして作成された制御部品構成テーブル２１ａがコンパイル・リンクされたテーブルである。
【００４０】
実施の形態１では、空調制御部２０は、制御部品構成テーブル２１を固定制御部２２の外部のＲＯＭ等に格納しており、制御部品選択実行部２５が、制御部品構成テーブル２１およびアクチュエータ制御部品アドレステーブル２６を参照して制御部品のアドレスを割り出す。本実施の形態では、制御部品構成テーブル２１ａをＣ言語等のプログラムとして作成し、コンパイル・リンク時に制御部品のアドレスを決める。空調制御部２０ａは、コンパイル済み制御部品構成テーブル３１を固定制御部２２ａ内に備える。
【００４１】
つづいて、本実施の形態の空調装置１ａにおける空調制御部２０ａの空調制御処理をフローチャートに基づいて説明する。図１５は、制御部品選択実行部２５ａの選択および実行の処理を示すフローチャートである。アクチュエータ状態をアクチュエータ状態判定部２４から取得（ステップＳ３３）するまでの処理は、実施の形態１と同様である。アクチュエータ状態を取得後（ステップＳ３３）、制御部品選択実行部２５ａは、コンパイル済み制御部品構成テーブル３１を参照し、アクチュエータ（圧縮機４０）について取得した運転状態およびアクチュエータ状態に基づいて、対応する制御部品のアドレスを割り出す（ステップＳ４１）。
【００４２】
ここで、制御部品構成テーブル２１ａとコンパイル済み制御部品構成テーブル３１について説明する。図１６は、圧縮機４０用の制御部品構成テーブル２１ａをＣ言語によって作成したプログラムによるテーブルの構成例を示す図である。コンパイル済み制御部品構成テーブル３１は、プログラムで作成された図１６の制御部品構成テーブル２１ａが、固定制御部２２ａに取り込まれる際、コンパイル・リンクされたものである。コンパイル済み制御部品構成テーブル３１の内容は、図１６の制御部品構成テーブル２１ａと同一である。
【００４３】
制御部品選択実行部２５ａは、コンパイル済み制御部品構成テーブル３１を参照し、運転状態とアクチュエータ状態に基づいて、対応する制御部品のアドレスを直接割り出すことができる。たとえば、運転状態が「通常冷房運転中」であり、アクチュエータ（圧縮機）状態が「定常制御中」の場合、制御部品選択実行部２５ａは、制御部品のアドレスとして、「cmp＿cool＿prop＿ctrl」（図１６：１００４）を割り出す。制御部品選択実行部２５ａが制御部品のアドレスを割り出してからの処理（ステップＳ３６）は、実施の形態１と同様である。
【００４４】
以上説明したように、本実施の形態では、制御部品のアドレスを取得する際、コンパイル済みの制御部品構成テーブルを使用することとした。これにより、制御部品ＩＤから制御部品のアドレスを割り出す処理がなくなるため、実施の形態１と比較して処理が高速になる。また、使用しない制御部品をリンクしないで済むので、プログラムサイズを小さくすることができる。
【産業上の利用可能性】
【００４５】
以上のように、本発明にかかる空調制御装置は、空調装置の制御に有用であり、特に、様々な派生機種を開発する場合に適している。
【図面の簡単な説明】
【００４６】
【図１】空調装置の構成例を示す図である。
【図２】空調制御部の制御処理を示すフローチャートである。
【図３】運転指令の構成例を示す図である。
【図４】運転状態判定部の構成例を示す図である。
【図５】運転状態判定部の判定処理を示すフローチャートである。
【図６】運転状態遷移判定部の状態遷移表を示す図である。
【図７】アクチュエータ状態判定部の構成例を示す図である。
【図８】アクチュエータ状態判定部の判定処理を示すフローチャートである。
【図９】アクチュエータ状態遷移判定部の状態遷移表を示す図である。
【図１０】制御部品選択実行部の選択および実行処理を示すフローチャートである。
【図１１】制御部品構成テーブルの構成例を示す図である。
【図１２】制御部品構成テーブルの構成例を示す図である。
【図１３】アクチュエータ制御部品アドレステーブルの構成例を示す図である。
【図１４】空調装置の構成例を示す図である。
【図１５】制御部品選択実行部の選択および実行処理を示すフローチャートである。
【図１６】制御部品構成テーブルの構成例を示す図である。
【符号の説明】
【００４７】
１，１ａ  空調装置
２，２ａ  制御部品構成テーブル作成部
１０  運転指令部
１１  制御盤
１２  リモコン
２０，２０ａ  空調制御部
２１，２１ａ  制御部品構成テーブル
２２，２２ａ  固定制御部
２３  運転状態判定部
２４  アクチュエータ状態判定部
２５  制御部品選択実行部
２６  アクチュエータ制御部品アドレステーブル
２７  圧縮機制御部
２８  膨張弁制御部
２９  ファン制御部
３０  四方弁制御部
３１  コンパイル済み制御部品構成テーブル
４０  圧縮機
５０  膨張弁
６０  ファン
７０  四方弁
２３１  運転状態イベント検出部
２３２  運転状態遷移判定部
２３３  運転状態遷移実行部
２４１  アクチュエータ状態イベント検出部
２４２  アクチュエータ状態遷移判定部
２４３  アクチュエータ状態遷移実行部
【図１】
2010255962.tif 000003
【図２】
2010255962.tif 000004
【図３】
2010255962.tif 000005
【図４】
2010255962.tif 000006
【図５】
2010255962.tif 000007
【図６】
2010255962.tif 000008
【図７】
2010255962.tif 000009
【図８】
2010255962.tif 000010
【図９】
2010255962.tif 000011
【図１０】
2010255962.tif 000012
【図１１】
2010255962.tif 000013
【図１２】
2010255962.tif 000014
【図１３】
2010255962.tif 000015
【図１４】
2010255962.tif 000016
【図１５】
2010255962.tif 000017
【図１６】
2010255962.tif 000018