「産業用システム」と「組み込みシステム」という言葉
コンピュータを産業用機器へ組み込んだシステムのことを "産業用システム" と呼ばせてもらうとすると、よく使われる "組み込みシステム(Embedded System)" と、ほぼ同義語のように聞こえます。
しかし "組み込みシステム" という言葉は、携帯電話やカーナビ、情報家電などの大量生産の世界で使われることが多く、この産業用システムという分野全体を正しく表現しているとは思えません。
固有名詞を出して恐縮ですが、CQ出版の「インタフェース」誌などで時々組み込みシステム特集を見かけますが、このあたりのことが正確に区別できていないように思えます。
あえて "産業用システム"
という言葉を使わせていただくのは、それらを、そういう「ローエンド・組み込みシステム」(名古屋大学・高田教授の定義)とは別の、いわば「ハイエンド・組み込みシステム」として区別したいからです。
このハイエンド・組み込みシステム = "産業用システム" の範疇に含まれるシステムとしては
- 工作機械や半導体製造・検査装置などのいわゆるFAシステム
- X線や超音波などを使ったインテリジェンス性の高い医療機器
- 鉄鋼や電力などのプラント制御システム(昔はプロコンと呼ばれた)
- 鉄道や船舶などでのリアルタイム制御システム
- 交換機などの通信制御システム
- 券売機や精算機、入退場ゲート、RFID用サーバー機などの入退場管理システム
等があります。
ローエンドに比べて比較的規模が大きく、マルチタスク(マルチスレッド)のみならずマルチジョブ(マルチプロセス)を必要とする、多品種小ロットのシステムです。
産業用システムを構成する要素技術としては、
- PLC (Programmable Logic Controller、別名シーケンサー)
- VMEボードコンピュータ
- PC Based Controller
- カスタムボード
等があります。(VMEボードはPC関連技術の進歩によりコスト的に不利で新規のシステムでは使われることが少なくなってきました)
いずれの場合も、上記のような産業用システムでは高速処理やリアルタイム性が必要になるので、PLC以外の方法ではリアルタイムOSを使うのが一般的です。
ちなみに、高速性やリアルタイム性を必要としない産業分野もあります。代表的な分野としては石油化学や化学プラント、水処理などの、いわゆる「プロセス制御」の分野です。
この分野では温度や圧力、流量、液面レベルなど、比較的ゆっくりした現象を扱うので、要素技術は大きく異なります。横河電機や山武などの工業計器メーカーの製品(例えばDCS)などが使われます。
話を「産業用(リアルタイム)システム」に戻しましょう。
組み込みシステムにはローエンドとハイエンドがあり、その規模や技術手段は大きく異なります。
携帯電話やカーエレクトロニクス、情報家電のようなローエンド組み込みでは数万~数百万台の製品出荷を想定しているので、ハードウェアをカスタムで作り、製造コストを極限まで切り詰める設計や開発を行います。
数量が多いので、設計・開発に時間と費用が掛かってもそれほど気にならない世界なのです。この設計や開発に従事するエンジニアの数は多く、プロジェクトによっては数百人規模の場合もあるようです。
これらの世界では、使われている技術に関する決定権が、そのプロジェクトのメンバーである外注のソフトウェアエンジニアや外注会社にではなく、企画して製造する、大手の電気(電器)メーカーや自動車(関連)メーカーの一部の人や部門にあるように感じます。
ただ発注先の仕様にそってひたすら製品を開発するだけで、仕様に特化した技術は一般の産業用システムにとって有用であったり、流用がきくとは思えません。例えば携帯電話での組み込みソフトウェアの技術は、携帯電話固有のものであって、一般のソフト開発やシステム開発企業にとって役立つものではありません。関心がない技術、とも言えます。
世の中の組み込みシステムを自前の設計で開発する中小・零細のシステム開発会社や、また大手企業でも、携帯電話や情報家電のような販売量が見込めずしかも半導体製造・検査装置のように製品単価の高い "産業用システム"
を設計・開発する部門では、PC技術で流通しているような "業界標準技術" を使った上で、アプリケーションソフトウェアやハードウェアとして付加価値を提供するのが得策です。
PC関連技術のように、ハードウェア、ソフトウェア、開発ツールなどで共通のインフラが既に構築されているのにそれらを使わないというのは・・・実にもったいない話です。
別の言い方をすれば、例えば半導体製造装置メーカーが制御用のマイコンボードを独自に開発したとしても、そこには全く付加価値がないのですから。