My BLOG

TopPage

▶︎http://i-models.jp/Advisor/TopPage.html

18.  MBDの原点となった仕事   if  Xint<Kmin then Xint=Kmin


 わたしが新入社員1年目、最初のとんでもない仕事(前述:並列処理コンピュータの開発)が終わった1984年2月ころだったろうか、次の開発テーマをいただいた。


 「油圧シリンダを用いた、バイワイヤ式スロットルコントロールシステムの開発」


 当時、電気モーターは高価であり、パワーステアリングに常設されている油圧ポンプを利用する前提、安価なペンシルシリンダを、油圧コントロールバルブを用いて位置制御するものであった。油は、ATにも使われているATFオイル、これが曲者で、温まるとサラサラだが、冷たい時は飴のようにドロドロで、作動速度が十倍以上も遅くなる。こんなもので安定的に制御なんかできるものか!? 最初、PIDという古典制御で取り組むのだが、温度で安定性が変わり、すぐにハンチング振動などする、振動を抑えると今度はのろますぎてアクセルとして使えない。キャリブレーションも極めて面倒であった。寒い冬の実験場での作業は、嫌気がさした。



 休日に本屋に行って、制御技術の実用書を買った。そこにはベーシック言語を使って、プラントモデルと制御モデルをつかった演習事例が書かれてあった。これがつかえる!と思った。


 
最初は、ペンシルシリンダや油圧回路の物理特性からモデル化し、実機でのステップ応答などもとって、ぴったり合うように同定した。温度依存性もモデルで表現した。PID制御だけでなく、I-PD制御、***制御、あらゆる制御モデルを入れ替えて、その特徴をあっという間に学ぶことができた。机上でキャリブレーションもできるようにした。最後は、アクチュエータ自身の応答速度の変化をフィードバックさせて応答を自動的にあげる制御モデルにした。これできわめて広い温度範囲で安定的な制御が可能になった。


 もし、この時のテーマが、電気モータであったならば、こんな苦労もなく、MBDのありがたみを感じる機会もなかったであろう。 上司からは、MBDを使えとは言われてないので、その意図まではなかったものと思う。

 瓢箪からとんでもないコマが出てきたテーマであった。これが私の人生の方向性を決めることになる。一生のテーマになるとはねえ。 


後日談:

 この自慢の安定的な制御、これがその後とんでもない事件を起こした。1984年初夏にはシステム完成し、夏からはさまざまなテストコース、一般道での走行テストをした、夏には首都高速も走った。

スロットルの開け方を、定常特性でも過渡特性でも自由に扱えるようにして、意のままの走り感を作り上げていった、おまけで、クルーズコントロールシステムにまで仕上げた。その年の晩秋、とても寒い夜だった。テストコースでの仕事を終えようとしていた、最後、もう一周山岳サーキット走行してみるな、と先輩がドライビング、私が助手席で計測解析。


 あるきついコーナーを曲がり始めた時、それは起こった! アクセルを全閉にしているにも関わらず、アクセル全開でエンジン回転が吹き上がり車は唸って加速を始めた! あわやコースアウト、A級ライセンスを持っていた先輩は、車のキーを切って止めてくださった。普通のドライバーでは、その適切な対応は即座には無理だったろう。ガードレールはあるが、その向こうは崖だった。アクセル全開で突き進めば落ちていた。


 血の気が引いた。


 翌日、解析してわかったことは、

  寒い夜、制御モデルの積分項が、 作動油が粘性上がって偏差収束しない事態でマイナス方向に積分され続け限界の最小値に至り、符号反転して暴走に至ったと判明。インテジャー計算では、マイナスの限界を超えると、反転してプラスの最大値となるのだ。春、夏、には粘性低く、いくら走行テストしても、目標収束が早いので積分値はそこまで至らない問題であった。開発後のなかで一番寒い夜、それは起こった。


 わたしは、車の開発における、プログラムの怖さと責任を 思い知った。

 

 これを防ぐのは、たった1行のプログラム追加でよかったのだが、1行を書き忘れて、死にかけたのだ。





                             if  Xint<Kmin then Xint=Kmin






       



 
http://i-models.jp/Advisor/-MyBlog/mu_ci.html

〜 ミスター・モデルベース開発       と呼ばれた男の独言 〜

ヘンジニア