用語解説【組み込みシステム】


1. 組み込みシステムとは?(概要)

読み方
くみこみしすてむ
英語
embedded system(エンベデッドシステム)

組み込み(組込み)システムとは、
家電製品や産業機器などに搭載された
特定の機能を実現するためのコンピュータシステム
のことです。

エンベデッドシステム (embedded system) とも呼ばれます。

専用のハードウェア + (利用者が交換できない専用のソフトウェア」から成る
専用機器」のことです。

身近にある組み込みシステムの例としては
  • 携帯電話
  • カメラ
  • 自動車
  • 炊飯器
  • プリンタ
  • ロボット掃除機
  • テレビ
などがあります。
とても多くの「組み込みシステム」が身の回りに存在していて、私たちの生活を支えているんですね。



それに対してパソコンは、ソフトウェアを入れ替えることでさまざまな用途で利用できる「汎用機器」です。

パソコンは、
 → Webブラウズ
 → ゲーム
 → ワープロ / 表計算
 → データの蓄積
などのように色々な目的で利用できる機械ですね。

今の自分で考えてみても、PCを使って
「Webで調べ物をしたり」「イラストレータで画像を作成したり」「メールでやり取りをしたり」「このホームページを作成したり」など数種類の用途で利用しています。


周りにある “PC以外の電子機器” は、ほとんど「専用機器」つまり「組み込みシステム」だと思うと分かりやすいかもしれませんね!

▼ 画像をクリックすると拡大できます
組み込みシステムとは?=専用機器。【業務用娯楽機器】カラオケ、【AV機器】TV、【家電】洗濯機、電子レンジ、【通信機器】FAX、【医療機器】レントゲン・CT、【運輸機器】自動車。携帯電話は、最も進化した組み込みシステム!


学生さんひらめき(男子)
組み込みシステム」って聞くと何?って難しく感じるけど、びっくりするくらい普段の生活で使っている必需品ばかりだね。
もしも世の中から組込みシステムが無くなると、わたしたちはとっても不便になるね



2. どうやって誕生したの?(歴史)

組み込みシステムの歴史について、簡単に説明します。

組み込みシステムはもともと、生活の中で「不便だな」と感じるものを「便利に」するために生まれた、ひとつの目的を果たすための専用機器でした。

やりたい事(要求)が増える中で、“進化”と“多機能化”を続けてきました。

そのスケールは年々複雑になり、巨大化しています。


具体的にみてみましょう。
例を【洗濯機】で説明してみます。

洗濯機で考える、組み込みシステムの進化

■初期の洗濯機
スイッチを入れたり切ったりする、シンプルな構造でした。
(※2層式洗濯機も、「洗濯用」「脱水用」の2つ回路を用意しただけ)
初期の洗濯機の構造

■現代(全自動)の洗濯機
「洗浄」「すすぎ」「脱水」「乾燥」といった複数の工程を自動化しています。
現代(全自動)の洗濯機の構造
 ▼ ▼ ▼
複雑な工程を自動化するため、「CPU」が採用されるようになりました。
これが組み込みシステムの始まりです!


年代別

●1970年代
世界初のマイクロプロセッサ『Intel4004』が誕生
→『嶋正利』という日本人が開発に深く関係(インテル社、1971年)
→4ビット、電卓用
●1980年代
マイクロプロセッサが発達したことで、家電製品にも組み込みシステムが使われるようになる
●1990年代
PC・インターネットなど「情報インフラ」が普及したことで、マイクロプロセッサが低コスト化

機器のネットワーク化・デジタル化が急速に進展
●2000年以降
さらに複雑で高機能なものが求められ、あらゆるモノがインターネットに接続される、IoT(Internet of Things)の時代へ

IoTモノのインターネットとも言われる)とは、今までインターネットに接続されていなかった機器やモノをインターネットに接続して情報を共有化する技術のことです。例えば、「メニューを提案してくれる電子レンジ」や「離れた場所からでもスマホで電源をつけたり消したりできるエアコン」などのようなインターネット家電が有名ですね。



世界初のマイクロプロセッサの開発に深く関わったのが日本人だったなんて驚きだわ! マイクロプロセッサという人間で例えると「脳みそ」にあたるものが進化してくれたおかげで、今のような組み込みシステムが実現しているのね。

この間ニュースでは、身体の中に入ると飲んだって知らせてくれるカプセル【デジタル錠剤】が開発されて、遠くに住むおばあちゃんが薬をちゃんと飲んだかどうか分かるようになる、と報道されていたけどとても便利よね!

学生さんひらめき(女子)


3. 組み込みシステムの特徴

組み込みシステム、組み込みソフトウェア、組み込み開発において必ず出てくる【特徴】について説明します。
サイズ、ハードウェアリソース、コストなどの制約
最初に考えなければいけないのが【サイズ】【形状】です。

商品によっては、小さいサイズで動作しないといけないものがあるのでそのサイズに合わせた回路基板や部品実装が必要となります。
そのため、汎用のハードウェアを使えない場合は【独自のハードウェア】で構成します。

商品によっては『サイズ感』が商品の価値の決め手になることもあります。
またそのサイズに合わせて、ソフトウェアの容量もできるだけ抑える必要があります。

さらに、量産される機器の場合は「コスト削減」を考えなければいけません。


制約の厳しさは製品・分野によって異なりますが、
必要な機能実現しながら
・できるだけ小さく軽く少ないリソース
対費用を考えて
最適化することが求められます。
リアルタイム性
組み込みシステムでは「必要な処理を定められた時間内に完了する」ことが大切です。

ある条件に達したら瞬時に起動・停止する、事象の発生を速やかに検知するなど、高いリアルタイム性が求められます。

例えば、自動車を例に挙げると、ハンドル操作した場合、即時で応答しないと危険で乗れませんよね。

扇風機だと、電源をONにして動くまでに時間がかかってしまうようでは誰も使いません。

このように製品によって要件は異なりますが、応答時間は重要なポイントなのです。
高い信頼性
組み込みシステムでは「信頼性」も重要です。
特に、自動車のような誤動作・異常などのトラブルによる影響が大きく、人の安全に関わる商品はより高い信頼性が必要です。

組み込みソフトウェアの更新はユーザには不可能な場合が多いため、例えば家電などでソフトウェアなどに問題があった場合は「自主回収」されていますよね。

誤動作・異常などのトラブルによる人命に関わる場合もあり、そうでなくても大きな損害とならないように誤動作の発生を防止したり、誤動作が発生したときの影響を最小限に抑えるための対策を事前に検討しておくなど 「信頼性」や「安全性」は重要なシステム要件のひとつです。
言語
組み込み系で使われる言語は、「C言語」が多くそのほかには「C++」、「C#」、「Java」、「アセンブラ」、「Microsoft Visual Basic」、「Microsoft Visual C++」などがあります。

パソコンのソフトウェア開発と同じように、用途に合わせて選ばれます。
外部からのアタック
IoTが普及するにつれて、サイバー攻撃の懸念があります。
IoT機器のセキュリティが弱い点をついて、例えば「離れた場所からでも子供の室内の様子を確認するためのカメラ」が不正に乗っ取られたという報道もあります。
これからのIoT商品は、この「セキュリティの強化」が重要な課題となってきます。

学生さんひらめき(男子)
組み込みシステムを作ろう!と思ったら、単純に便利なものを作るというだけではダメなんだね。
商品として成立するために「すぐに応答すること」「信頼性」が必須で、 「サイズ」「形状」「価格」を最適化できるように考えて開発しなければいけないことがよく分かったよ!




4. 日本システムデザイン(株)と組み込み

組み込みエンジニアは、ハードウェア」と「ソフトウェア」の両方に関する知識が要求されます。

弊社はその両方の技術があり、さらにメカ(筐体:きょうたい)部分※も自作できることが強みです。
※ロボットでいうと外側のケースにあたる部分

元々、創業時から在籍する麥田(代表)と井谷は「マイクロマウス」の世界的な技術者でした。マイクロマウスは、組み込みエンジニアに要求される要素がすべて凝縮されているとも言えます。

[マイクロマウス3]ソフト・ハード・メカ

「マイクロマウス」界をトップで走った技術をもとに30年以上、様々な現場を助けるための組み込みシステムを作ってきました。

そして、これからも。組み込みシステム技術の発展に貢献することで、日本の活性化につながるように努力してまいります。

学生さんひらめき(男子)
日本システムデザイン(株)は、量産品的な組み込みシステムではなく、 「少量生産の組み込み開発」をしてきた会社なんだよ。
スーツでいえば、大量生産される規格ものではなくオーダーメイドで仕立てる、サイズがぴったりの高級スーツのようなものだね!


あとね、創業時のベースとなった「マイクロマウス」って、「ハード」「ソフト」「メカ」と組み込み開発に必要な要素がギュッとつまっているだけじゃなく、「マネージメント力」も必要なんだって!!
きっと今でもマイクロマウス大会が続いているのは、シンプルだけど組み込みエンジニアの教育にちょうど良い!という理由なのかもしれないわね。

学生さんひらめき(女子)

学生さんひらめき(男子)
ちなみに、麥田社長自らが “組み込み用の統合開発環境” を独自に作って、それを社員みんなが使って開発してるんだって!スゴイね!
※エディタ・コンパイラ・デバッガなどをまとめたもので、開発者の負担を少なくすることができる。本来Linux上で動くgccコンパイラをWindows上で使えるように開発。




~ 麥田社長が考える「組み込みシステムと姿勢」 ~
*さいごにWeb管理人より*


み込みのソースコードは短い。だからといって簡単なわけではない。
組み込みシステム、
そのソースコード自体は短いそうです。

例えば印刷すれば「A4サイズ2枚」の中で収まる長さだとしても、だからと言って簡単ではない、とのこと。

その理由は、実際動かしてみないと分からない「見えない要素」があるから。

制御できない外部からの見えない要素。 これが「組み込みシステム」には「PC上で動くシステム」より圧倒的に多いんだそうです。



ースだけ追いかけてもダメ、現象を見ないと。
そして、何か問題が起こった時に「机上でソースだけを追いかけていてはダメ」で。

実際に何が起こっているのか、“モノ(現象)を見て” それから原因を追究しないと始まらないとのことです。



リジナルの開発環境を自作し、データを可視化できるように。
麥田社長は自らが作ったコンパイルもできる統合環境で。
例えばデータをグラフ化していたり、簡単な操作でコマンド実行して確認できるような環境を自作しており、そこもJSDの「強み」です。


『手間はかかるんだけれど、本当の効率化になるんだよ。』

その環境を作るのには手間がかかるため一般的にはやらないそうですが、それによって見つかりにくい原因を特定できたりするそうです。


麥田社長から出てくる言葉を聞いていて、“プライドを持った丁寧な仕事” とも言えるのではないかと感じました。


<参考文献>
 ■藤弘哲也『よくわかる最新 組み込みシステムの基本と仕組み』秀和システム、2005年
 ■藤弘哲也『これだけ!組み込みシステム』秀和システム、2015年




マイクロマウスを知りたい方はこちらから >

用語解説一覧へ >