2005年07月01日
カーエアコン温度制御モデルの「システムシミュレータ」適用例
GAIO CLUB 特集
GAIO CLUB【2005/7月号】
シミュレータ導入をスムーズに進めて頂くために、実開発製品に合わせた「提案モデル」を作ります!
~ その第一弾「カーエアコン制御システム」適用例をご紹介 ~
本特集では、シミュレータによる組み込み開発・検証システムを、導入検討されている方を対象に、「カーエアコン温度制御」を例にとったシミュレータ「提案モデル」をご紹介致します。「提案モデル」とは、導入検討を進めて頂くためにガイオが作成して提示する、実際の製品を題材にしたシミュレーション適用サンプルです。新しい文化とも言えるシミュレータ開発手法を導入するに当たっては、社内部署への紹介・啓蒙、社内稟議などが必要となります。この「提案モデル」がこれらの課題をクリアするために必要であることを、本特集を通じてご理解いただければと思います。
導入検討のきっかけとなった取りきれないバグと開発の課題
今回取り上げるのは、カーエアコンの温度制御システムです。最近の車のほとんどは、エアコンの温度調整は自動化されており、希望温度を設定しておくだけで、常にその温度が保たれるようになっています。
ここには、組み込みソフトによる制御が使用されており、車内のエアコン吹き出し口からの風の温度や風量を調整し、希望温度へ近づけるための制御システムが組まれています。
しかしながら、自動車は、炎天下や冷寒地など、極端な温度環境に放置される場合が多く、車内へ吹き出す風の温度と温度センサーからの情報を、「教科書通り」に数値計算してシステム制御しても、温度をコントロールできない場合が多数あります。
例えば、
・炎天下でエンジンをスタートした直後の異常状態
・ センサーが結露を起こして、温度監視が正常でない場合
・ ユーザーの頻繁な希望温度変更に対する誤動作
などがあります。
カーエアコンのシステムは、空気、車の冷却装置、ヒーターなど、物理的な温度変化に対する制御であるため、実機を使用したデバッグ環境では、あらゆる状況を想定した再現テストは非常に困難であり、実際の車内において初めて不具合が発見されることが多くあるようです。そこで、シミュレータを使用して、制御システムそのものと温度変化の物理現象を組み入れた仮想環境で、あらゆる状況下での動作テストを「網羅的」に行いたいと言う要求をお客様から頂きました。
シミュレータに対する文化の壁
初めてシミュレータを導入する場合、社内関連部署や上司の理解を得る必要があり、これが最初に超えなければならない山となります。
ガイオからのプレゼンテーションなどを通じて、シミュレータによる効果、検証の方法の変化について、頭では理解を得られても、「実際、シミュレータはどのように動くのか」が理解されるまでは、GOサインが出ない事が多くあります。
これは、「シミュレータ」を自社製品開発に適用した場合、実際の開発スタイルがどう変化するか、効果はどのくらいあるのかがイメージ出来ないためです。
製品そのものを題材にした提案モデルをガイオで作成し提示
そこで、ガイオは、導入のための社内判断や稟議をスムーズに進めて頂くために、開発製品そのもの、もしくは非常に近い内容で、シミュレータ実装サンプルを含めた「提案モデル」を制作して提示しています。では、「カーエアコン」を例にしてこの内容を紹介致します。
この「提案モデル」に含まれる適用サンプルは、ガイオが無償で作成し、あくまで提案の一環として提示させて頂くものです。
※ガイオは、カーエアコンメーカーでは無いため、制御方式やセンサーからの情報処理方法などの技術情報については、(株)デンソー東京WEBページ「基礎技術シリーズカーエアコンの基礎」を参照させて頂きました。
カーエアコンのシステムと検証対象
カーエアコンの仕組みを簡略化して示すと、図1のようになります。左の吸入口から取り込まれた空気は最初に「エバポレータ」を通過します。これは、「蒸発器」の意味ですが、熱交換の原理により循環している冷媒が蒸発する際に起こる「冷却現象」を利用して、取り込まれた空気を冷やす「冷却装置」です。
次に、「エアミックスダンパー」と呼ばれるモータ駆動の「弁」があり、後に続く「ヒーター」への空気の量を可変出来る仕組みを持っています。このダンパーの角度により、冷たい空気と暖められた空気との混合比を変えることで、吹き出し口への空気の温度を調節できることになります。
今回対象とするのは、社内外の温度センサーからの情報を基に、設定された希望温度になるように、エアミックスダンパーの位置を適切に制御する部分です。
最初の提案サンプルとして制御対象を限定したモデルを作成
実際のエアコンは図2のようなシステム構成になっています。多数のセンサーとダンパーなどの可動部がマイコンに接続されています。これらを全てシミュレータに取り込むことはもちろん可能ですが、まず最初の導入に向けての課題は、
・製品開発に適用した場合の開発イメージをつかんで頂くこと
・検証の中心となるポイントと適用効果をつかんで頂くこと
です。そのため、ここでは制御対象を「エアミックスダンパー」のみ、温度検知のためのセンサーを「内気センサー」のみにして(他のセンサーは一定値)、「希望温度」設定に対する制御モデルを組み立て、イメージをつかんで頂くことにします。
提案サンプルモデルのGUI
シミュレータで、カーエアコンのシステムがどのように動作し、「エアミックスダンパー」が制御されるのかを捉えやすくするために、構造をビジュアルに表現したアニメーションを実装することにしました。
これには、エンジン始動に伴いブロアモーターが回転する様子、吹き出し温度制御のために、エアミックスダンパーが動く様子をビットマップ画によるアニメーションを実装しました。(図3、図4)
また、温度設定など各パラメータは、実際の車ではUP/DOWN式のプッシュボタンで設定されますが、このサンプルではデバッグ効率を上げるために、数値を直接GUI上で入力する方式とします。
温度制御の仕様について
本来のカーエアコンは、内気センサーの温度情報に基づいて、希望設定温度に近づくように吹き出す空気の温度を制御します。一般に吹き出し温度(TAO)は、次のような数式で計算されています。
TAO=E×(TSET+ΔT)-F×TR-G×TAM-H×TS+C
TSET:設定温度
TR:内気温度
TAM:外気温
TS:日射量
ΔT,C:補正定数
E~H:係数
このように、「TR:内気温度」によって吹き出し温度(TAO)が決定され、この温度により内気温度が変化する、温度のフィードバックループが制御に含まれます。この制御ループを想定した場合、必要吹出温度(TAO)による物理的な内気温度変化を設定、あるいは計算してシミュレーションモデルに組み入れる必要があります。
最初の提案モデルは、シミュレータ適用のイメージをつかんで頂くことが主目的ですので、動作をわかりやすくするために、内気温度センサーの出力については、あらかじめ想定した温度変化のデータテーブルから、経過時間に対する温度値を読み出すだけに簡略化しています。実際は、日射状態や他の要因により内気温度に変化が生じますが、これらは一定しているものとして、一定時間後に内気温度が希望設定温度に収束すると仮定しています。また、この簡略化は、短時間でシミュレーションモデルを構築して提示するためでもあります。
シミュレーションモデルの構成
制御仕様に基づき、シミュレータ上での構成を図5のようにします。「希望設定温度」「外気温度」「日射量」は一定値として、シミュレーション動作時は変化しないものとします。「内気温度」については、温度センサーからの温度出力をSTUBして、予め想定した内気温度変化をデータ化したテーブルを読み込み、時間による変化を再現します。
これら4つの入力要素をマイコンで演算し、「TAO」「ダンパー角度」「ブロアモーター速度」を決定します。「TAO」については、シミュレータのグラフ表示機能で時系列変化を表示し、他のものはGUI上のアニメーションとして表現します。
また、マイコンに実装したソースコードの抜粋を図6に示します。
提案モデルの動作目標
ガイオが提案モデルを作成してお客様に提示する場合、シミュレータの動作イメージをつかんで頂くために、シミュレータでの実行結果と、実機での動作結果や理論上の結果予測との比較を提示しています。
今回は、カーエアコンの各要素の一般的な温度変化グラフを指針として、シミュレータによりこれと同じ結果が出力されることを示すことにしました。カーエアコンのシステムが動作すると、吹き出し温度、TAO(必要吹出温度)は次の図7の様に変化することが想定されています。
実際のエアコンのスタート時には、ほとんどの場合、内気温度と希望設定温度は大幅にずれています。この差を小さくするために、「必要吹出温度(TAO)」を計算し、吹き出す風の温度を制御します。
真夏のエアコンの使い始めでは、TAOは極端なマイナス温度(-200°C以下)になり、エアミックスダンパーはヒーター側0%(全閉)になるように制御します。内気温度が希望温度に近づくとTAOも希望温度に近づきます。この際、エアミックスダンパーの角度を制御し、希望温度を保つように働きます。
今回の提案モデルでは、この現象が正しく再現されることを目標として作成しています。
シミュレーション実行結果
下がガイオ「システムシミュレータ」での実行の様子です。図8はマイコンシミュレータ(ISS)でアプリケーションコードを実行している様子を示しています。
下の図9は、今回のカーエアコンHWをシミュレータ上で再現した「仮想HW」に当たる部分です。紙面では表現できませんが、時間経過に従って、「エアミックスダンパー」の角度が変化し、吹き出し温度の制御の様子がアニメーション表示されます。
図9のグラフ表示は、温度値の変化を示しています。グラフの赤のラインが「TAO」の変化を示しています。図7に示した想定されるグラフと同様に、「TAO」の値が設定温度に近づくように収束しているのが分かります。
ガイオは様々な提案モデルを用意しています
いかがでしょうか?組み込みシステムをシミュレータで再現する手順と、導入評価のポイントが、イメージして頂けたと思います。今回取り上げた「カーエアコン」以外にも、下図10のリストのように、皆様の開発製品に合わせた提案モデルを用意しております。スムーズなシミュレータ導入のための、社内プレゼン材料、稟議資料などにご利用頂けます。