#はじめに
わたしたちは、ほぼ毎日インターネットを主とした、ネットワークを利用しています。現在、組み込みシステムで開発される多くの機器も、ネットワークにつながるものが増えています。この記事では、組み込み機器でのネットワーク化の歴史と技術トレンドの変化についてご紹介をいたします。次の表は過去30年間のトレンドをざっとまとめたものです。これを古い順に解説していきます。
#1. シリアルからEthernetへ(1990年代後半から)
この頃、組み込み機器でのネットワークは、主にRS232CやRS485などのシリアル通信が主流でした。1990年代中頃から、今まで大型コンピューターで使われていたEthernetとTCP/IPによるネットワーク(以降は単にネットワークといいます)が、Windows95の登場によってパーソナルコンピュータ(PC)の世界でも普及がはじまります。
※組み込みシステムの世界ではPC分野の技術が3年~5年遅れて採用される傾向があります。
この当時、組み込み機器で使用するCPUはルネサスのSuperHが主流でしたが、ネットワーク対応するためには、Ethernetのコントローラが別に必要でした。ソフトウェアも海外製のミドルウェアしかなく、開発も手間がかかるため、現在と比べるとハード、ソフト共にかなりコスト高でした。
#2.ARMマイコンの登場(2000年ごろから)
2000年代になると、組み込み機器でも少しずつネットワーク化が始まります。この頃はRS232Cなどのシリアル通信からEthernetへの置き換えによって、TCP/IPを使ったローカル環境での機器間での通信が主流でした。この頃からインターネットが急激に普及し、ユビキタス・コンピューティングという言葉が登場します。
ユビキタス・コンピューティング
広義では、さまざまな機器をインターネットを介して相互に接続するという意味です。
IoTの先駆けですね。同じ頃に、さまざまな機器がインターネットに繋がるようになると「IPアドレスが枯渇するのではないか?」という問題が起こり、IPv6というIPv4の拡張仕様が登場します。しかし現在、IPv6は組み込み機器ではルーターなどの一部のネットワーク機器を除いてあまり実装されていないのが現状です。2007年以降になるとSTM32などARMの汎用マイコンが登場します。ARMは今まで携帯電話、ゲームや携帯端末などが主流でしたが、組み込み機器にも参入していきます。マイコンも16bitから32bitマイコンが主流となり、様々な半導体ベンダーがARMアーキテクチャーを使ったCPUをリリースしはじめます。
#3.M2MからIoTへ(2010年ごろから)
2010年代になると、M2M(Machine to Machine)などの言葉が登場し、インターネットを介した機器間の通信が盛んになります。そうして、ネットワーク関連のチップコストが下がっていき、今まで外付けだったEthernetコントローラがマイコンに内蔵されていきます。iPhoneの影響でWi-FiやBluetoothなど無線通信のハードウェアコストが下がり、組み込みシステムへの無線通信の導入が始まります。CPUに目を向けると、当時は様々な半導体ベンダーがARMアーキテクチャーのプロセッサやマイコンをリリースしていましたが、その流れは徐々に後退していき。半導体ベンダーの統合が加速していきます。
#4.組み込み機器でのセキュリティ(2015年ごろから)
その後、M2MはIoT(Internet of Things)へと変化し、さまざまなデバイスがインターネットを介して接続できるようになりました。こうして組み込み機器のネットワーク化が加速していき、掃除機や洗濯機などの白物家電などもスマートフォンやクラウドへ接続できる商品が続々登場します。さまざまなデバイスがつながると、セキュリティが課題になっていきます。組み込み機器は従来、スタンドアロン(非ネットワーク接続)が主流でしたので、セキュリティはあまり気にする必要がありませんでしたが、インターネットなどのパブリックなネットワークに接続することで、攻撃や情報漏洩のリスクが生じ、組み込みシステムでもセキュリティ機能が必要になってきます。この結果、マイコンにもAESなどの暗号アクセラレータが搭載されるようになりました。
#5.LPWAとエッジ・コンピューティング(現在)
前述した通り、今まではIT系(人が使うコンピューターという意味で)のテクノロジーが数年後に組み込み機器へ広がっていく傾向がありましたが、最近はそれだけではなくIoT分野において独自にテクノロジーが進化する傾向がみえます。例えば通信の分野では、LPWA(Low Power Wide Area)やBluetooth MeshといったIoTに特化した通信方式が挙げられます。LPWAは中長距離・低消費電力、の無線通信技術でIoT向けに小さなデータをやり取りします。Bluetooth MeshはBluetoothの規格の一つで、短距離通信のBluetoothを使って、たくさんのデバイスを網目(Mesh)のように配置してバケツリレー方式で距離を伸ばしていく技術です。また、回線を介して様々な処理をクラウド(サーバー)側で行っていたことを、通信を介さずに末端のデバイス側で処理させるエッジ・コンピューティングという技術も増えています。これによってサーバーの負荷や通信のコストを低減し、リアルタイム性も確保することができます。
#現在でも主流はTCP/IP
現在でも、コンピューター・ネットワークで利用されるプロトコルの主流はTCP/IPです。TCP/IPはインターネットを利用するために必要不可欠な基本プロトコルです。PCはもちろん、スマートフォンをはじめ様々な機器で利用されます。TCP/IPをコアに様々なアプリケーションプロトコルが追加されています。例えば、Webブラウザでは主にHTTPを、メールではIMAP、セキュリティはSSL/TLS、IoTではMQTTが利用されます。また、ネットワークの一番下層部(物理層と言われる部分)はEthernet、Wi-Fiなどがあります。
#ネットワーク接続によるコストダウンという考え方
スタンドアロンで動作している機器をネットワークや無線化することで、機器の製品コストを抑える効果があります。例えば画面操作です。従来LCDのタッチパネルを使っていたものをBLEやWi-Fiモジュールを追加し、スマートフォンやタブレットで行う方法です。LCDのタッチパネルはそれなりにコストがかさみます。専用のスマートフォンを用意すればLCDより高価になりますが、利用者のスマートフォンを代用することでLCDが不要になります。また、ストレージもクラウドを利用することで、HDDやSDなど比較的コストの高いストレージが不要になります。ただし、クラウドのランニングコストがかかるので、データ容量や頻度などを検討する必要があります。