組み込みシステム開発

組み込みシステム開発

最近のトレンドから見る組み込み開発とは

組み込み開発とはその文字の通り、組み込みシステムや組み込み製品を開発することです。
ここでは、スマートフォンやパソコン分野での最近のトレンドを中心に、
組み込み開発の変化を追ってみたいと思います。

  • Date: 2014年3月27日
  • Author: EIPC

組み込み開発の最近のトレンドとは

組込みシステム(※)開発技術展などで、最新のコンピューターソフトウェア(パソコンソフト)、コンピュータシステム、システムソフトウエア、組込みコンピュータなどに注目すると、ソフトウエア技術者(ソフトウェアエンジニア)の躍進や、ソフトウェア技術・システム技術・組み込み技術の革新を顕著に見てとれます。また、最新のソフトウェア情報や中小企業などへの転職・求人情報、システム業界やソフトウエア業界(ソフト業界)の動向や最近の流れを知ることもできます。
※組込みシステムは、英語でembedded system(エンベデッドシステム)と表記されます。エンベデットシステム、エンデベットシステムと間違えて書かれることも多い言葉です。

組み込み製品の代表的な存在として、携帯電話(モバイルフォン)を例に別のコラムでも記載をしましたが、今の組込み製品は一般利用するユーザーからの要求レベルの高度化に伴い、搭載する機能が高度化していく方向にあります。
例えばカラーテレビを例に挙げますと、DVDって画質きれいだなーと言っていた時代は、ちょっと前のことだったように思います。が、地上波デジタル放送が始まってから、一般的に視聴するテレビがDVD以上の画質となってしまったため、今ではDVDはあまり画質が良くないといったことをいう方も少なくありません。
また、カメラ付き携帯の後に、スマートフォンが登場にしたことにより、様々なプログラム(PG)が組み込まれたアプリが登場し、ネットワーク環境・通信環境の開発への対応も急がれました。

そのように、組込みソフトや組込製品も年々複雑化していき、同時に、画面の制御はタッチパネルで直感的に操作ができるのが当たり前といったような世の中になったことにより、コントローラーを使っての操作はもはや時代遅れになってきています。同時にセキュリティ管理の対策も複雑化し、それに伴ってシステム技術者やシステムエンジニア(SE)による高度なシステム構築が求められるようになってきています。
利用するユーザーの感覚、求める機能レベルの高度化が発生し、そのことによって組み込み製品に要求される機能はますます高度化しています。

そんな中、組込系の機器開発で難しいのは、価格帯の問題です。組み込み系エンジニアの開発の努力により、たとえその組み込み製品の機能が市場の求めに応じて適切な高度化に成功したとしても、価格が大きく高くなってしまうと製品価値が極端に低下してしまうという問題が生じるため、なるべく価格を変えずに、ユーザーの考える価格帯の中でソフトウエア組込製品などの設計・製品開発・製造を行っていかなくてはなりません。ここに組み込み機器開発の難しさがあります。
これらの要求を実現するために近年の組み込み機器開発では、ソフトウェア技術者たちの手によってさまざまな工夫がなされてきております。ここでは入門者や初心者の方にも理解しやすいよう、その工夫点をトレンドとしてご紹介しようと思います。

プラットフォームの共通化とは

まず第1に挙げられる大きな変化はプラットフォームの共通化だと思います。昔の組み込み機器とは本当にシンプルなものでした。携帯電話でもそうですが、電話ができればそれで製品としての問題はありませんでした。実現する機能もシンプルで少なかったため要求されるCPUなどを代表とするハードウェアの性能も、そこまで高いモノである必要はありませんでした。必然ながら搭載するソフトウェアもシンプル、コンパクトなモノが搭載されていました。

ところが、この機能の高度化の波を受けて、ハードウェアも高性能なモノが求められてきます。ここに関してはハードウェアを製造するチップメーカーの技術革新もあり、昔ではありえなかった性能のモノを低価格で入手できるようになりました。
例えばハードディスクなどを例に挙げるとわかりやすいと思うのですが、Windows95が登場してパソコン(PC)やインターネットの活用が加速した頃などは、640MBの容量のハードディスクが2万円、3万円というような時代でした。これが今では、4TBのハードディスクが同じような価格帯で購入する事が可能となっております。これはハードディスクだけではなく、CPU、メモリーなどでも同様のことが言えるようになっています。

このように性能の良いハードウェアが低価格で入手できるようになったため、機能を複数持ち、複雑な処理を行うことができるソフトウェアを搭載することが可能になりました。しかし、複雑な機能を複数搭載するようになってくると、シンプルなソフトウェアなどで従来までは当たり前だった新規開発が非現実的になってきます。ここにきて複雑な機能が最初から搭載されているLinuxやWindows、Androidなどのようなパソコン向けだったオペレーティングシステム(OS)を組み込み機器や組み込みシステムの開発に採用するようになってきています。

これによるメリットは大きく2点あります。
1点目としては、Windows、Linux、Androidなどのパソコン向けのOSはハードウェアを気にしなくてもアプリケーションを開発、動作させることができるという点です。昔は製品ごとに新しいハードウェア、ソフトウェアを開発していましたが、これらのパソコン用OSを組み込み製品に搭載することが可能となったことで、アプリケーション、ミドルウェアは過去の資産の大部分を再利用できるようになってきています。
その影響は携帯電話開発などでは顕著に見られ、以前は1機種の開発を行うのに数百人という人員を利用して開発を行ってきましたが、スマートフォンが主流になった今では、前機種から変更となった部分のハードウェア、およびそのハードウェアを制御する用のドライバだけを開発するような仕組に変わってきています。アプリケーション、ミドルウェアの動作する土台であるプラットフォームが高度化し共通化したことで、開発コストを大幅に削減することが可能となっているのです。

組み込み開発の変化とは

上記で話した通り、ハードウェアの高性能化、プラットフォームが高度化したこと、それ以外でもインフラ(インターネット)の普及、パソコンの普及などの便利な世の中になっているということも、ひとつの要素や理由だとは思いますが、IT通信やインターネット・WEB機能の搭載で組み込み機器は、よりパソコンに近い形になってきていると思います。

これにより例えば製品発売後に機能を追加するなどの場合を考えると、昔の組み込み機器は必要最低限のメモリーしか搭載していなかったため、機能追加は大変難しいものでした。しかし、今ではパソコンほどではありませんが、ハードウェアの性能も多少余力が出てきていますので、機能追加を段階的に実施していくような開発形態も数多くみられるようになってきています。Windowsなどもまさにそうですが、インターネットから必要となるアップデートファイルを入手することで機能が追加されたり、機能の修正が行われたりします。これが今ではデジタルカメラや携帯電話などでもファームウェアのバージョンアップという形で機能が提供されていたりします。機器を購入してまず真っ先にやることは、最新のファームウェアに更新する事、なんて考えが、現在ではある程度当たり前になってきているように思います。

昔はバグが存在する製品を世の中に発売してしまったら製品回収以外に修正するすべはなかったわけですので、そのような時代に組み込み製品の開発を行っていた技術から見れば、購入してまずはファームウェア更新を行う世の中って呆れてしまう部分もあるのかもしれません。
ただし、昔と比較して難易度の高い、複雑な処理を実現しているという部分は確実にありますので、このような形で製品のメインテナンス、アフターフォローが行いやすくなっているのは、組み込み系ソフトウエアエンジニアにとっては、実際に非常にありがたいことと思って良いかと思います。

オフショア開発とは

パソコンOSが組み込み機器に搭載されるようになってくると、アプリケーション、ミドルウェアも基本的にはパソコンと同様にオペレーティングシステムに依存する形になってくるため、組み込み機器のハードウェアがなくても開発が行えるようになってきます。
これによりアプリケーション、ミドルウェアなどのハードウエアに依存しない部分を開発コストの圧縮の狙いもあって、オフショアを利用した開発も進んできています。製造業の種類や企業によってオフショア先に違いはありますが、東南アジアが主流のように思います。文化の違いもあり、苦戦している企業も多いようですが、今後の開発を見据えたときに日本の中だけで開発がクローズするような組み込み機器は少なくなってくるのかなと思います。

ビジネスモデルの変更とは

このように組み込み機器は徐々にパソコンに似たような性能を持つ機器になりつつあるのですが、いくら開発費を削減したとしても、低価格化の波は厳しく、なかなか機器の販売だけで利益を生むことも難しくなってきています。ハードウェアが低価格化したといってもやはりある程度の性能を求めると少々値段が張るようなものになりますし、ソフトも部分的なカスタマイズ、追加だけであったとしても費用はどうしても必要となってしまうのです。

そこで近年、製造機器メーカーが取り組んでいるのがビジネスモデルの変革です。
プリンターメーカーなどではわかりやすいのですが、基本的にプリンターを販売するのではなくレンタルで貸し出し、印刷の枚数、インクトナーなどの消耗品といった利用した分だけ金額を請求するような形になっています。それ以外にもプリンターの設置の最適化のアドバイスなんてことまでプリンターメーカーでは行っています。
要するにプリンターそのものを販売するのではなく、プリンターを中心としたサポートサービスによって費用をお客様よりいただくような形になっています。これは携帯電話などでもそうで、本体代金は実質無料・無償になったりしていますが、利用した分の費用をいただくという形になっているのです。

このように組み込み機器では本体代金でのビジネスから、それらを利用したサービスを提供することで利益を上げるようなモデルに変革しつつあります。

まとめ

このようにして組み込み機器、および組み込み機器開発はグローバルな世界において、様々な形で変わってきています。もちろん一言に組み込み機器といっても体温計のような目的に特化した機器から、携帯電話、スマートフォンのような機器、さらには工場で使われるような専門性の高い機械、メカなど、さまざまな機器が存在しますので、そのすべてがこのような形に変化しているわけではありません。

しかしながら、長い将来を見据えていけば機器によって速度の差はあるものの同じような方向に向かっていくのではないだろうかと思います。これからの機器を開発するためには、さまざまな技術、工夫が必要になり、それを常に繰り返していく必要があると思います。