「Windows 10 IoT」とはどのようなOSなのか?鈴木淳也の「Windowsフロントライン」(2/3 ページ)

» 2015年05月30日 13時00分 公開
※本記事はアフィリエイトプログラムによる収益を得ています

Raspberry PiとWindows 10 IoT Core

 もともとWindows EmbeddedやWindows Embedded POSready(Windows Embedded Industry)は、x86/x64プロセッサを搭載したPCへの導入を目的としている。「ソフトウェア内部の構成を自由に変更して最適化できる」「セキュリティの強化」「サポート期間が同一系統のコンシューマー向けWindows OSに比べて長い(例えばWindows 7とWindows Embedded 7)」といった違いを除けば、中身や機能はほぼ一緒だ。

 一方で、もともとWindows CEの系譜にあるWindows Embedded CompactなどのOSは、ターゲットとするデバイスがARMプロセッサを搭載した機器であり、用途そのものが異なっている。実質的には、いわゆるIoT(モノのインターネット)的な用途はむしろ、ARM上で動作する「Windows 10 IoT for mobile devices」および「Windows 10 IoT Core」のほうが合致しているだろう。

 組み込み向け用途をターゲットにしたARM版Windowsは今後、Windows 10 IoT for mobile devicesとWindows 10 IoT Coreの2つに集約されていくとみられる。

 Microsoftの説明によれば、業務用のハンディターミナルで利用されていたWindows Embedded HandheldについてはWindows 10 IoT for mobile devicesへと包含される一方で、Windows Embedded AutomotiveについてWindows 10の世代では該当するソリューションは提供されず、現行バージョン(v7)をそのまま継続利用してほしいという。

 また前述のロードマップを見ても分かるように、Windows Embedded CompactのみはWindows 10 IoTのリリース後も併売が行われるようだ。こちらについては本稿の最後で説明を行う。

 Windows 10 IoT for mobile devicesがARM版Windowsの体裁を採っているのに対し、Windows 10 IoT CoreはWindowsのインタフェースとなる「シェル」や「(リッチな)アプリ」が提供されず、「UWP(Universal Windows Platform)アプリ」のシンプルな実行環境のみが提供される。

 MicrosoftではMinnowboard MaxとRaspberry Pi 2での利用が可能な「Windows 10 IoT Core preview」の提供を行っており、これらARMプロセッサを搭載したマイコンボードを持っているユーザーであれば、実際に試すことができる。

 ただし、GUIなどは提供されないため、リモートでプログラムを送信し、その動作を何らかの形で確認する……といった手段を取らなければならない。Build 2015(米Microsoftの開発者会議)ではIoT関連のセッションに参加した開発者らに対して、「Raspberry Pi 2」の本体と、これと組み合わせて利用できるロボットキットやセンサーをプレゼントして、実際にWindows 10 IoT Coreを使って動作するロボットでプログラムを試してみるよう訴えている。

Windows 10 IoT CoreはUWPアプリの実行に特化しており、シェルやデスクトップを必要としない「Windows 10としては“ほぼ”最小構成のシステム」となっている。Minnowboard MaxとRaspberry Pi 2といった最小限の入出力装置を備えた小型マイコン向けに「Windows 10 IoT Core preview」の提供が発表されている
Build 2015の組み込み向けセッション参加者には、「Raspberry Pi 2」で動作するロボットキットがプレゼントされるなどのサービスもあった

 こうした小型機器でWindowsが動く最大のメリットは「PC向けの開発ツールをそのまま組み込み機器にも応用できる」点にある。また既存のWindows機器との連携が簡単に行えるのも特徴で、プログラミングにおけるハードルは大きく下がるだろう。

 ハードウェアを制御するマイコンキットとして「Arduino」という人気製品があるが、本来であればセンサーや外部出力機能を拡張するために「シールド(Shield)」という拡張ボードを購入してArduinoに接続してやる必要があり、本体であるArduino Unoの価格が30ドルであるにもかかわらず、これらシールドの追加購入でさらなるコストがかかるという悩みがある。

 Microsoftでは「Project Margherita」という取り組みの中で、Windows Phone(Windows 10 Mobile)端末を「仮想的なシールド」として利用できる「Windows Virtual Shields for Arduino」や、Arduinoをリモート制御できる「Windows Remote Arduino」をArduinoと共同で発表しており、Windowsを使ってハードウェア制御系のプログラミングが行いやすい環境を整備している。

ハードウェア制御が可能なマイコンとして人気のある「Arduino」だが、必要な機能を実装するために「Shield(シールド)」と呼ばれるセンサーやインタフェースを備えた拡張ボードを購入していくと、Arduino Uno本体が30ドルにもかかわらず、あっという間に数百ドル程度の購入資金が必要になってしまう
そこで登場するのが「Project Margherita」だ
Windows Phone(Windows 10 Mobile)端末を「仮想的なシールド」として扱い、拡張ボードの追加なく、Windows Phoneが持つスピーカーやセンサー機能をArduinoからBluetooth接続経由で利用できるようになる。さらに「Windows Remote Arduino」を使えば、ArduinoそのものをWindows Phoneから制御可能だ

 将来的には、このようにして開発されたアプリや制御プログラムの数々が、AllJoynなどのアライアンスで定義された共通のフレームワークやゲートウェイを介して互いに接続されるようになり、数十億ものデバイスがインターネットを介して接続される、本当の意味でのIoTの世界が実現される日がやってくるのかもしれない。

 Microsoftのビジネスとしては、Windowsの活用がさらに広まり、Azureを使ったデバイス管理やデータ解析のビジネスチャンスへと結びつくことになる。

複数の家電メーカーや部品メーカーが集まって2013年末にスタートした家電の相互接続を実現するためのアライアンス「AllJoyn」。MicrosoftではWinHECとBuildの両方において、このAllJoynに関するセッションを特別に用意するなど積極的だ
Microsoftは、家電制御の仕組みの中でWindowsのソフトウェアやクラウドインフラ(Azure)を活用してもらえるよう、開発者やパートナーらにアピールしている

Copyright © ITmedia, Inc. All Rights Reserved.

最新トピックスPR

過去記事カレンダー