QNX CAR アプリケーションプラットフォーム
QNX は幅広いエコシステムと協力して、車載インフォテイメント システム構築のための最良の基礎を提供しており、また OEM とティアワン サプライヤのコストを低減し、市場投入までの時間を短縮する支援を行っています。パートナーが提供するテクノロジの一部は下記の通りです。
| 提供される機能 | パートナー |
|---|---|
| 音声認識 |
AT&T Nuance |
| Graphics and displays |
Imagination Group Texas Instruments Vivante |
| ソフトウェア アップデート | Red Bend Software |
| ナビゲーション |
TCS TeleNav Elektrobit |
| 統合済みアプリケーション |
Pandora Tunein Weather Network |
| マルチメディア クッキー |
Texas Instruments Freescale |
| DSP ラジオ インターフェイス | Texas Instruments |
| コンポーネントとフレームワーク |
jQuery Sencha |
ハードウエア サポートの詳細については「テクノロジ」タブを選択してください。
QNX CAR アプリケーション プラットフォームは、QNX テクノロジと多数のエコシステム パートナーのテクノロジとを統合して最適化したユニークなソフトウエア スタックのセットです。QNX CAR のリファレンス実装とリスキニング可能な HMIにより、ワールドクラスのインフォテイメントを素早く開発することができます。
QNX CAR アプリケーション プラットフォームのビジネス モデルは、パワフルなネットワーク対応製品を低リスクで生産し、最終的な収益の向上を目指すものです。プロジェクトのリスクを低減し、収益とコストのバランスを向上し、高品質な製品を迅速に開発することができます。
プロジェクトのリスクを低減
- 迅速なコンセプト立証とプロトタイプ開発
- クリーンな IP (知的財産)
- プラットフォーム ロードマップと最新技術の情報提供
- サプライヤの独立性を尊重したオープンなエコシステム コンセプト
コスト削減と新たな収益
- 容易に製品化可能な統合済みリファレンス実装
- OEM にとっての新たな収入源、サービスとアプリケーション ストア
- 再利用可能なソフトウェア資産
- 同じソフトウエア ソリューションをローエンド/ハイエンド両方のシステムに利用できるスケーラビリティ
- プロトタイプ段階ではソフトウエアを無料で使用可、サード パーティ製評価ソフトウエアが統合済みの新しいビジネス モデル
魅力的な製品、迅速な開発
- 最先端のテクノロジをすぐに利用可能
- リアルな映像を表現する HMI とカスタマイズ可能な環境
- 信頼性、応答性が高いユーザー エクスペリエンス
- 最新のデジタル AV 機器をサポート
- インターネット コネクティビティ
- ソフトウエア アップグレードをダウンロード可能
共同マーケティング活動
QNX CAR のメンバー企業は、QNX CAR 共同マーケティング活動に参加し、各社の製品をリファレンス実装の一部として提供することが可能です。メンバー企業の製品は、QNX CAR に参加している自動車メーカーおよびティアワン サプライヤに広く知られることになります。数多くの OEM およびティアワン企業が QNX に参加しており、メンバー企業は常に増え続けています。
QNX CAR には QNX®Neutrino® RTOS (2011 年モデルのインフォテイメント システムの多くで採用)、高性能なマルチメディア フレームワーク、HD ステレオ対応の高性能ハンズ フリー ソリューション、HTML5 ベースの HMI テクノロジなど、さまざまな QNX テクノロジが含まれており、携帯向けから自動車向けへの開発を直接行うことができます。
OEM は、QNX CAR の HTML5 ベースの HMI フレームワークを使いコンシューマ エレクトロニクス向けに開発されたアプリケーションを活用することができます。HTML5 は Apple iOS、Android、BlackBerry、Windows 7 上、さらに自動車向けとしても動作可能な唯一のクロス モバイル開発ツールです。さらに QNX では、クラッシュ耐性、組み込み最適化、高速起動など、製造レベルに求められる自動車向けの機能強化を行いました。
初代の QNX リファレンス車両は、HTML5 とQNX CAR 2 テクノロジを両方用いた開発を具体的に示す例です。
モジュラー仕様とコネクティビティ
デジタル AV 機器の目まぐるしい進歩に遅れを取ることがないよう、QNX CAR ではモジュール形式のソフトウエア ビルディング ブロック、デバイス接続、ソフトウエア更新ストラテジ、アプリケーション ストア方式を採用しています。
QNX CAR アプリケーション プラットフォームのイネーブルメント モデルは、高度なソフトウエア システムを開発し自動車市場で発売を行う際のリスクとコストを低減します。
QNX CAR は、QNX の自動車分野向けフレームワークとコンポーネントを、シンプルで低リスクなビジネス モデルに基づいて提供されるサード パーティ テクノロジと統合したものです。
プロトタイプやデモ、コンセプト実証を作成する企業は、最新のテクノロジを常に入手できるサブスクリプションを通じて、実装作業に必要なすべての要素にアクセスすることができます。
QNX CAR プログラムでは現在、自動車関連企業から早期アクセスへの申し込みを受け付けています。詳しくはお問い合わせフォームよりご連絡ください。
QNX CAR リファレンス実装
QNX CAR リファレンス実装はすぐに利用可能なオペレーティング システムであり、車載システムのプロトタイプ開発や製品化に必要な工数を大幅に削減します。自動車関連メーカーは、所定のニーズに合わせてソフトウエアの適合や拡張などの作業にのみ注力できます。
このリファレンス実装により、QNX の標準製品、QNX が作成した自動車向けソリューションと、さまざまな自動車開発プラットフォーム上で動作する統合済みのパートナー テクノロジが提供されます。
QNX CAR メンバーはさらに、エンジニアと開発者が知識と経験を共有する QNX の開発者フォーラム Foundry27 にアクセスして QNX BSP、QNX テクノロジ インキュベータ提供のコードやその他の QNX テクノロジを利用することができます。
パートナー製品の統合
QNX CAR では組み込み済みのリファレンス実装を提供しているため、お客様は初期の段階で統合に労力をかける必要がなく、すぐに製品の開発や差別化に取り組むことができます。
| パートナー | 統合内容 |
|---|---|
| Apple | iPhone/iPod マルチメディアの統合 |
| Best Parking | 駐車場検索 |
| Elektrobit | 組み込みナビゲーション |
| 車両に統合済みの Facebook への投稿機能 | |
| Gracenote | マルチメディア netadata |
| iAnywhere/Cybercom | 統合済み Bluetooth プロファイル |
| JQuery | JavaScript フレームワーク |
| PacketVideo | Android 携帯との統合用 DLNA スタック |
| Pandora | インターネット ストリーミング ラジオ |
| Poynt | 位置情報サービス |
| Redbend | FOTA ソフトウエアのアップデート |
| Sencha | JavaScript フレームワーク |
| Slacker | インターネット ストリーミング ラジオ |
| TCS | ナビゲーション |
| Telenav | ナビゲーション |
| Tunein | インターネット ストリーミング ラジオ |
| 携帯ベースの Twitter アプリケーション | |
| Vlingo/AT&T Watson | クラウド ベースの自然言語音声認識 + TTS |
| Weather Network | 統合済みの気象情報サービス |
次のリンク先もご覧ください。「オートモーティブ」
QNX CAR プログラムの一環として、QNX はサード パーティ テクノロジ プロバイダと共にソフトウエアの統合を行ってきました。QNX CAR プログラムに参加するサード パーティはそれぞれのライセンスに応じて 3 つのカテゴリに分けられます。
サブライセンスおよび再配布
QNX CAR プログラムの主な利点は、QNX とパートナー企業が作り出した簡単なライセンス モデルです。多くの場合、QNX がお客様とライセンスを結び、お客様は QNX CAR のメンバー特典の一部としてプロトタイプ作業とサード パーティ テクノロジの評価を行うことができます。ただしパートナー毎にライセンス モデルが異なりますので、詳しくは営業担当者にご確認ください。
評価版コピー
QNX CAR プログラムに参加している一部の企業は、プログラムの一環として自社のテクノロジの評価版コピーを QNX ソフトウエア システムズに提供しています。
プロトタイプ段階を完了して商用生産向けの開発を開始するまで、またはデモンストレーションや販売用に派生物を再配布するまでは、お客様はサード パーティと接触する必要はありません。生産に向けた開発の開始、または派生物の販売を開始する際、お客様は関連のサード パーティと必要なサブライセンス/再配布権について直接交渉する必要が発生します。
その他のライセンス モデル
QNX CAR モデルと容易には相容れないライセンス モデルを所有しているサード パーティもあります。これらの企業のテクノロジを使用する前に、お客様は評価版使用権および再配布権について直接交渉し合意する必要があります。
その他のサード パーティ製品の統合
QNX オートモーティブ エコシステムには、 QNX との互換性がある製品を所有しているものの、QNX CAR プログラムには未参加のパートナー企業が100社ほどあります。より多くのパートナーの製品を QNX CAR に統合して迅速な生産化につなげることができるよう、QNX ではこれらの企業と協力を続けています。これらの製品が統合されるまで、お客様はこれらの企業と継続的に直接交渉することをお薦めします。
「オートモーティブ」もご覧ください。
QNX CAR メンバーになると、車載システムを専門とする QNX のエンジニア チームへのアクセスが提供されます。
設計についてのアドバイスや、非常に困難な問題を解決する上での助力を QNX エンジニアに求めることができます。例えば、統合段階では、予期しなかった複雑な問題が発生し時間が足りなくなってしまうことがよくありますが、QNX エンジニアの支援により、スムーズに解決できるようになります。
Foundry 27
すべての QNX Foundry27 プロジェクト同様に、QNX CAR プログラムでもコミュニティによるサポートがあります。プロジェクトに参加するエンジニアや開発者が、フォーラム (掲示板) に投稿された質問に回答しあう互助の場を提供しています。
商用サポート
テクノロジ インキュベータには、QNX の正規製品とサードパーティの製品が混在しています。これに対応し、お客様による QNX CAR テクノロジの採用/実装に役立つよう考案された新しいサービスを開発しました。
この商用サポート モデルにご興味がおありでしたら、お問い合わせフォームよりご連絡ください。または、お近くの QNX 販売代理店にお尋ねください。
QNX CAR アプリケーション プラットフォームには、QNX Neutrino® RTOS、パワフルなマルチメディア フレームワーク、HTML5 ベースの HMI テクノロジ、最高クラスの音響処理ソリューションなど、豊富な QNX テクノロジが含まれています。さらに、その他多くのサービスやユーティリティが継続的に追加されています。
HTML5 などのテクノロジを使って開発された携帯アプリケーションは、スマートフォン、タブレット、デスクトップ、ラップトップ、そして車載インフォテイメント システムなどほぼすべてのプラットフォーム上で急速に普及しています。
QNX CAR とは?
QNX CAR は拡張/設定可能なソフトウエア プラットフォームで、従来の自動車向けと携帯向けユーザー インターフェイス テクノロジを組み合わせる自動車システムを構築するためのものです。インフォテイメント システム プラットフォームとして、QNX CAR にはメディア エンジン、HTML5 ブラウザ エンジン、モバイル デバイス ゲートウェイ、音声認識モジュール、そしてエコー キャンセレーションとノイズ抑制を含む音響モジュールなどの主要な自動車向けソフトウエア コンポーネントが含まれています。
QNX CAR アプリケーション プラットフォームにより、自動車メーカーは下記を実現できます。
- ウェブ テクノロジ (HTML5、CSS3、JavaScript) を使ってアプリケーション開発を行う
- さまざまなヒューマン-マシン インターフェイス (HMI) テクノロジを組み合わせて表現力豊かなユーザー エクスペリエンス (例: HTML5、OpenGL ES、Qt) を提供する
- 車内で安全にアプリケーションを展開する
- コンシューマ向けデバイスを接続し、車内に持ち込まれたメディアと携帯アプリケーションを利用可能にする
- 素早いシステムの初期化と起動など、自動車向けの厳格な要件を満たす
- 携帯コミュニティ、デベロッパ、アプリケーションを活用する
QNX 社の製品部門マネージャである Kerry Johnson が、携帯デバイスとのコネクティビティ、HTML5 のサポート、音声認識アプリケーション、ハンズフリー音響処理など QNX CAR プラットフォームの各種機能を紹介します。
QNX CAR にはリファレンス アプリケーションが同梱されており、HTML5 のパワーと QNX CAR アーキテクチャを体験することができます。こうしたアプリケーションにはホーム画面、メディア プレーヤ、電話、ウェブ ブラウザ、ナビゲーション アプリケーションが含まれており、自動車メーカーの要件に合わせることが可能です。
ホーム画面
ホーム画面では、異なるソースからの表示内容をレンダリングするために HTML5 がどのように使用されているかが分かります。現在のアクティビティ、ネットワークと Bluetooth 接続の状態、音量、その他の情報やコントロール内容がまとめて表示されます。ホーム画面の一番下の各種タブからは、他のアプリケーションやアプリケーション群にアクセスすることができます。例えば右側のアプリケーション タブに触れると、画面が開き、使用可能なアプリケーションがすべて表示されます。
メディア プレーヤ
メディア プレーヤは、メディアの検出 (例: USB、CD)、メタデータの検索と同期、メディアのストリーミングを含むネイティブ メディア プレーヤの機能を備えた HTML5 の UI です。
外部接続のデバイス、ラジオ、インターネット ストリーミング ラジオ (Pandora など) や CD などさまざまなメディア ソースから、ユーザーはプレーヤを使ってデジタル メディアの検索、選択、再生ができます。その他 YouTube や AM/FM/HD ラジオなどのエンターテイメント オプションも可能です。
通信
通信コンポーネントは、ネイティブの通話アプリケーションを管理する HTML5 UI です。こうしたアプリケーションには、電話、メッセージおよび Bluetooth 接続された電話の電話帳が含まれます。
バーチャル メカニック
バーチャル メカニックは、CAN バスなど車から情報を取り出して画面に表示するフレームワークです。これにより車の重要機能の状況 (潤滑油類、ブレーキなど) と整備案内など、車の診断がグラフィカルかつひとまとめに表示されます。
温度調節器
温度調節コンポーネントは車の HVAC (冷暖房空調設備) システムから情報を取り出し、また命令を送信するフレームワークです。これにより車内でマルチ ゾーンの温度調節が可能になります。
天気情報
天気アプリケーションはオンラインの情報をレンダリングして表示します。車のインターネット接続を経由して、選択した場所の最新の天気情報が分かります。
App World
App World は、予めパッケージングされたアプリケーションを QNX CAR プラットフォームへダウンロードしてインストールする方法を解説します。クラウドでホストされる App World への入り口です。
ナビゲーション
QNX CAR にはサード パーティ ナビゲーション エンジンが 3 つ用意されており、HTML5、OpenGL、Qt グラフィカル フレームワーク、そしてオンボードとオフボードのマップ エンジンの組み合わせを使用します。マップ エンジンからの情報は PPS オブジェクトにパブリッシュされるので、ルートに関する詳細は他のアプリケーションと共有されます。例えば走行速度の情報は天気アプリケーションと共有され、目的地の予想到着時刻の天気予報が表示されます。ナビゲーション アプリケーションとして TeleNav オフボード版、Elektrobit 組み込み版、そして TCS オフボード版が利用可能です。
ブラウザ クローム
QNX CAR には HTML5、CSS3 そして JavaScript と実装されたリファレンス ブラウザが含まれています。HTML5 にはブラウザ クロームも実装されており、BlackBerry Playbook に実装されているものに似たインターフェイスを使用しています。QNX CAR のデベロッパは、プロジェクトに合わせてこのクロームをカスタマイズしたり置き換えたりできます。
QNX CAR HMI フレームワークには HTML5 エンジンと、Qt など他の HMI フレームワークが含まれています。ユーザー インターフェイス (UI) コアは複数のレンダリング エンジンからの入力をまとめて一つの物理的な画面に表示します。
HTML5 アプリケーション環境
QNX CAR の HTML5 アプリケーション環境によりデベロッパは、ウェブ テクノロジ (HTML5、CSS3 および JavaScript) をベースに開発したアプリケーションの展開ができ、これらは拡張機能を使ってネイティブ C/C++ アプリケーションのように下層のデバイス ハードウエアやネイティブ サービスにアクセスできます。
従来の HTML とは対照的に、HTML5 スタンダードは明確にブラウザ間の互換性を確保しようとしているため、QNX CAR 環境は携帯、デスクトップ、ウェブ環境と互換性があり、同じ HTML コードをこうした環境すべてで使用できます。HTML5 がプラットフォームを越えて互換性を持って広く採用されるようにす るため、W3C は実装レベルまで HMTL5 を規定しています。
QNX は、ユーザー インターフェイス ウィジェットと、特定のデバイス ハードウェアとサービスにアクセスを提供するコントロールを提供する JavaScript フレームワークを通じて標準的なウェブ開発環境を拡張しました。
複数の HMI テクノロジのサポート
QNX CAR のユーザー インターフェイスは、 HTML5 以外にも、下記の HMI テクノロジをサポートしています。
- Elektrobit GUIDE – 自動車業界で広く採用されています。
- Qt – 比較的軽量な包括的フレームワーク
- Crank Storyboard – 設計から実行まで行えるフル環境
HTML5 は、作成済みのコンテンツを QNX CAR へ取り入れる際に推奨される方法です。しかし他のツール フレームワークとしてレガシー資産が存在したり、拡張性がないままシステムが構築されていて自動車メーカーで他の HMI ツールを好まれる場合、 HTML5ではない 環境が妥当な場合があります。
QNX CAR アーキテクチャにより複数の HMI テクノロジを同時に、かつ、簡単に統合できます。
QNX CAR は、疎結合非同期型メッセージング アーキテクチャである持続性パブリッシュ/サブスクライブ (PPS) を使用して、レイヤー間 (HMI からサービスへ) とコンポーネントのほとんどの間で通信を行います。QNX による PPS の実装は、パブリッシャとサブスクライバを備えたオブジェクト ベースのサービスで、実装要件に合わせて PPS クライアントをパブリッシャまたはサブスクライバのみにしたり、またはその両方にできるものです。
最低限の API
PPS メッセージングはテクノロジにも言語にもとらわれず、QNX CAR HTML5 HMI と下層のコンポーネント間にインターフェイスを提供するために必要となる少数の API のみを備えています。具体的には PPS API は HMI と PPS サービス間の通信を処理します。
UI コア API は、HTML5 レイヤーとユーザー インターフェイス コア コンポーネント間、そしてこのコンポーネントと Qt や Elektrobit GUIDE などの他の HMI テクノロジ間の通信を処理します。
JavaScript ラッパー クラス
QNX CAR HTML5 HMI とハードウエア間の通信は JavaScript のラッパー クラスを使って処理されます。
C/C++ プログラムは車載ハードウエアと直接インターフェイスを行い、関連する PPS オブジェクトの読み取りと書き込みを行います。ラッパーのクラスは他の呼び出しに対して 、自然なクラス ベースの JavaScript API を提示します。内部でラッパーは PPS クラスのインスタンスに対して呼び出しを行います。PPS クラスは内部機構を使って JavaScript がネイティブ コードに呼び出しを行うことを許可し、関連する PPS オブジェクトの読み取りと書き込みを行います。
QNX CAR のモバイル デバイス ゲートウェイにより、同乗者は Bluetooth、USB、 DLNA、MirrorLink、3G、LTE、Wi-Fi などのテクノロジを使って携帯デバイスを QNX CAR へリンクさせることが可能です。こうした接続方法はそれぞれ、QNX CAR アプリケーションがリンクされた携帯デバイスとインタラクションを行うために使用できる、関連する PPS オブジェクトがあるので、QNX CAR に接続するアプリケーションは、接続に関する物理的な詳細を認識する必要はありません。
Bluetooth
QNX CAR は Bluetooth 経由で外部デバイスとの接続をサポートしており、Bluetooth 接続を開始したり接続リクエストを受けることができます。サポートされているプロファイルは下記の通りです。
- HFP (Hands Free Profile)
- MAP (Message Access Profile)
- PBAP (Phone Book Access Profile)
- SPP (Serial Port Profile)
- A2DP/AVRCP (Audio Profiles)
ネットワーク インターフェイス: Wi-Fi、WAN (3G/LTE) と有線
QNX の io-pkt リソース マネージャは、有線のイーサネット、Wi-Fi およびその他のラジオ デバイス (3G/LTE) と接続を行うために使用される、ローレベルのネットワーキング インターフェイスです。このリソース マネージャはローレベルのドライバと TCP/IP スタック、および数々のネットワーク接続管理テク ノロジを統合します。
USB 接続
QNX CAR は、PPS メッセージングとローレベルのサポート (io-usb) を組み合わせて、Bluetooth やネットワーキング インターフェイスと同様に USB 接続を処理します。USB 接続は、CDC-ECM (USB イーサネット ドングル)、CDC-NCM (Mirror Link 用)、Android Accessory Protocol または USB Blackberry MUX を統合するために使用できます。
Digital Living Network Alliance (DLNA) サポート
QNX CAR には事前に統合された Digital Living Network Alliance (DLNA) のサポートが含まれており、これによりスマートフォンやタブレットからメディア ストリーミングを行う機能が提供されます。
Apple iOS インターフェイス
QNX CAR は iPods や iPhones などの Apple iOS 搭載製品向けに Made for iPod インターフェイス (iAP) を提供し、対応する Apple デバイス向けに iPod Out プロトコルを提供します。
BlackBerry インターフェイス
QNX CAR は Bluetooth 接続を介して BlackBerry スマートフォンとペアリングを行うことができます。
QNX CAR が BlackBerry デバイスとペアリングを行う際、BlackBerry デバイスのウェブ サーバーは標準的なウェブ プロトコル (HTML5/HTTP) を使ってコンテンツを QNX CAR のヘッド ユニットに提供し、BlackBerry アプリケーションへのアクセスと、コンテンツのレンダリングを可能にします。
MirrorLink
QNX CAR は RealVNC Mobile Solution に依存して MirrorLink インターフェイスを実現します。RealVNC により VNC プロトコルおよび MirrorLink 特有のプロトコルが提供されます。VNC グラフィックス出力のスケールには QNX のコンポジション マネージャが使われ、QNX CAR HMI へ統合します。
Android インターフェイス
QNX CAR は Bluetooth (HFP、A2DP、AVRCP などがサポートされるプロファイル) を介して Android デバイス、DLNA、そして MirrorLink があればそれとも接続可能です。
QNX CAR オートモーティブ サービスには電話、ラジオ、ナビゲーション システム、音声認識へのインターフェイスが含まれています。このコンポーネントはソフトウエア アップデートとマルチメディアの同期、再生なども管理します。
| サービス内容 | 詳細 |
|---|---|
| HMI 設定 | スワイプ ジェスチャ、画面アップデート操作、メニュー アニメーションとその他の操作、メディア プレーヤ HMI 特性のサポートを含む、システム HMI 用の設定 |
| アプリケーション コントロール | アプリケーションのナビゲーションと起動 |
| App World インストーラとアンインストーラ | アプリケーションのインストールと削除 |
| メディア プレーヤとマルチメディア マネージャ | セッションの作成と管理のトラッキング、メディアの再生 (再生、インポート、リッピング)、出力デバイスとゾーンの割り当てなど |
| Digital Living Network Alliance (DLNA) サービス | ネットワーク状態の変化、再生状態 (再生、一時停止、など)、Digital Media Server (DMS) の再生とサブスクリプション、DMS 設定を含む、Digital Rights Management (DRM) サービス |
| モバイル デバイス ゲートウェイ | Bluetooth、USB、DLNA、MirrorLink、3G、LTE、Wi-Fi を経由した携帯デバイスとの接続 |
| HVAC と温度調節 | 車内のファンの温度と速度、暖房シート、デフロスト、エアコン、 空気の循環の調整 |
| 車両/バーチャル メカニック | ガソリンの残量、ウォッシャー液、トランスミッションとブレーキ液の残量、ブレーキの磨耗状態と ABS の状態、油圧と残量、エンジンの回転数、ライトの状況、およびトランスミッションの温度、液体の残量およびギアの位置を含む、ビークル CAN バスを介してアクセスされた、主要な車 両センサー |
QNX CAR は、堅牢なフル機能リアルタイム オペレーティング システム QNX Neutrino RTOS を基盤としています。この OS は、宇宙船から自動車のヘッド ユニットまで、さまざまな環境で実行する数千ものミッション クリティカル、セーフティ クリティカルなシステムの基礎となっています。
組み込みシステムの制約されたリソース要件に対応するよう設計された QNX Neutrino RTOS は、シングル、マルチコア システム上で比類のない信頼性とパフォーマンスを提供し、製品のトータル コストを抑えることができます。ボード サポート パッケージ (BSP) は OS とバンドルされており、広く使用されているボード アーキテクチャすべてに利用可能になっています。
マイクロカーネル
QNX Neutrino RTOS は真性マイクロカーネル オペレーティング システムです。このため信頼性が非常に高く、ドライバ、プロトコル スタック、ファイル システムやアプリケーションはすべて、カーネルの外側の、メモリ保護されたユーザー空間の中で安全に動作します。実質的に、どのコンポーネントでも他のコンポーネントやカーネルに影響を与えることなく、障害が起きたら自動的に再起動することができます。このレベルの保護を提供できる商用 OS は他にはありません。
インスタント デバイス アクティベーション
QNX はインスタント デバイス アクティベーション (IDA) を提供しており、これにより車載システムはオペレーティング システムが動作可能になる前でもインテリジェントに動作することができます。
IDA 技術では、コードがブート ローダの起動コンポーネントと直接リンクされているので、50 ミリ秒という起動要件を満たすために必要な機能を実行することができます。要件には、外部イベントへの応答、ハードウエアへのアクセス、フル ドライバが使用するためのデータの保管があります。例えばシステムを設定して、CAN バス経由で転送されるパワー モードのメッセージに即座に応答させることができます。
ハードウエアのコストを低減
システム デベロッパは IDA により、外部ハードウエアを追加しなくても CAN などのバスからのデータを管理できます。従来型のオペレーティング システム実装では、低温状態や低電力状態からの起動に通常数秒はかかるので、タイミングや応答要件を満たすには補助的な通信プロセッサが必要になります。QNX の IDA テクノロジを使えばこの問題をソフトウエアで解決することができるので、ハードウエア コンポーネントが不要になり、BOM コストが下がることになります。
ファイル システム
インフォテインメント システムは通常、メディア、音楽のメタデータ、地図データおよび POI (Points of Interest) 用に膨大な量のデータを使用します。さらにユーザーはさまざまな形式のメディアを携帯デバイスに入れて車内に持ち込みます。こうしたデータに対応するため、オペレーティング システムは複数のメディア形式のさまざまなファイル システムを提供する必要があります。
メディアの形式
QNX では、下記のような共通のメディア形式上でサポートされる各種ファイル システムを提供しています。
- ハード ドライブ用の QNX パワー セーフ ファイル システム
- FAT、ext2、NTFS、および USB スティック用の HFS、ハード ディスク ドライブおよび携帯デバイス
- フラッシュ メモリ用組み込みファイル システム (管理された NAND と NOR)
- ISO9660、Joliet、および CD と DVD 用の UDFs
- ネットワーク ファイル システム用の NFS および CIFS (SMB)
QNX NOR フラッシュ ファイル システム (FFS3) はシステム ファームウェア イメージを保存するのと同じフラッシュ ドライブに永続的データを保存する、という利便性を提供します。大きなファイルを保存する必要がある場合、FAT を備えた管理された NAND メディア、ext2 または QNX6 ファイル システムが使用できます。
ネットワーキング
QNX Neutrino RTOS はイーサネット上で IPv4 と IPv6 を、そして Wi-Fi 802.11 もサポートしています。DNS、DHCP、inetd、ファイヤウォール、FTP、TFTP、HTTP、Telnet、PPP、NFS および NTP を含むスタンダードな補足的なネットワーク サービスも利用可能です。POSIX API をサポートしているので追加的なオープン ソースのネットワーキング コンポーネント (例: ツAsterisk for VoIP) を取り入れることは簡単です。
Wi-Fi
QNX CAR リファレンス実装の一部として QNX ソフトウエア システムズからフル Wi-Fi アクセス ポイントが提供されます。このアクセス ポイントは Bluetooth 対応の携帯電話と共に使用して、自動車内全体にインターネット ゲートウェイを提供することができます。
透過的分散処理
分散型のオペレーティング システムとして使用された場合、QNX Neutrino RTOS は透過的分散処理 (TDP) を使用します。これは Qnet とも呼ばれる下層ネットワーキング アプローチです。TDP で接続されたノードはすべて、デバイスとオペレーティング システムのリソースを共有することができます。例えばネットワーク上のノードは、たとえ特定にノードに Bluetooth インターフェイスがなくても Bluetooth 接続された電話と透過的に通信を行うことができます。こうした機能により、システムのメモリ フットプリントを減らし、分散システム内にすでに存在する重複したソフトウエアのコストをなくすことで、全体的な費用削減ができます。
QNX が Porsche を使って作成したコンセプト車両は、TDP によってデザインが簡素化でき、またシステム全体のコスト低減を実現できることを示しています。この車両ではマルチメディア ライブラリをヘッド ユニットで実行しており、このライブラリは後部座席のエンターテイメント ユニットで共有されています。ヘッド ユニットでは、ライブラリは /db/mmlibrary.db などの POSIX パスを通じてアクセスされますが、TDP で接続された後部座席のユニット 2 つからアクセスされた場合は、リソースのパスは /net/headunit/db/mmlibrary.db となります。TDP の簡潔さのおかげで下層のソースコードは、ヘッド ユニットと後部座席のユニットで同じままであることができます。たとえネットワーク上のリソースにアクセスしているときでも、唯一必要なのはリソース パスへの変更です。ファイル システムのソフト リンクを使って、名称変更を避けることもできる点に注目してください。
高速起動
QNX Neutrino RTOS のフットプリントは小さく、当然起動時間が早くなります。QNX カーネルは最短 250 ミリ秒で起動できます。マイクロカーネル設計によりシステム アーキテクトは、どのオペレーティング システムとアプリケーション コンポーネントをどの順番で起動させるかを柔軟に決定できるので、設計要件に合わせてシステムの起動手順を変えることができます。
こうしたアプローチにより、システムは再起動毎に音声とビデオの要件を満たすことができます。特定のデバイス ドライバとアプリケーションを起動サイクルの早い段階で起動しておくことで、ソフトウエアはイベントに対して素早く対応することができ、電源が入れられた直後に音声 (またはその他) による返答を返すことができます。
QNX Neutrino RTOS はインスタント デバイス アクティベーション要件もサポートしています。「インスタント デバイス アクティベーション」をご覧ください。
障害の検出
QNX Neutrino RTOS の特徴として、デバッグと調整作業が簡単になることが挙げられます。メモリ保護機能によりコンポーネント同士が隔離されるので、迷子ポインタやクラッシュの検出といった作業をオペレーティング システムに任せることができ、モノリシック オペレーティング システムを使用して展開されたシステムでは発見が難しいバグも検出することができます。
QNX では、パワフルなインスツルメンテッド カーネルも提供しています。インスツルメンテッド カーネルにより、割り込み、スレッドのスケジューリング、プロセス間通信などすべてのシステム アクティビティがトレースされます。QNX Momentics ツール スィートに含まれているシステム プロファイラを使ってトレース ログを視覚化し、システムの問題を診断してソフトウエ」アを最適化することができます。
ハイ アベイラビリティ フレームワーク
QNX Neutrino RTOS のモジュラー型、マイクロカーネル アーキテクチャにより、障害をドライバ レベルまで隔離することができます。QNX のハイ アベイラビリティ テクノロジは下記の機能を提供します。
- 即時障害通知 – ウォッチドッグがプロセスの障害を自動的に検知し、回復手続きを開始します。致命的でないエラーの検出にはハートビートが使われます。
- カスタマイズされた障害回復 – ハイ アベイラビリティのフレームワーク ライブラリを使って、システムはエラーがあった場合に特定の回復手続き、デザイン セーフ状態へ移動など、どのようなアクションを取るべきかウォッチドッグに依頼することができます。
- 即時再接続 – ハイ アベイラビリティのフレームワークはクライアントの回復ライブラリを提供することで、コンポーネントに障害があった後、切断された接続をシステムが即座に再構築できるようにします。
- 事後分析 – プロセスに障害が起きた場合、ハイ アベイラビリティ フレームワークは分析のために完全なメモリ ダンプを生成することができます。
- 内部障害からの回復 – ウォッチドッグに障害が起きた場合、ウォッチドッグは自己監視 "ガーディアン" を使用し、これが引き継ぎます。
ウォッチドッグがコンポーネント障害を検出すると、システムに通知し回復を管理します。バックアップの "ガーディアン" プロセスと共に、ハイ アベイラビリティ フレームワークは自己回復システムの基本を提供します。
アダプティブ パーティショニング
すべての組み込みシステムにおいて、タスクやプロセスにおけるリソース枯渇は重要な懸念事項となります。プライオリティの低いスレッドが提供するサービス – ソフトウエア障害やサービス妨害攻撃からシステムを保護する診断サービスを含む – は無限に CPU サイクルが足りなくなり、システムのアベイラビリティが危険にさらされてしまいます。
CPU パワーを増やせばよいかもしれませんが、電力消費が増加し (よって熱が生まれます) コストが増え – またプロセスのリソースが枯渇しない保証はありません。
QNX のアダプティブ パーティショニング テクノロジは、CPUサイクルを無駄にせず、クリティカルなプロセスに必要なCPU サイクルを保証する、効率が良くローコストのメカニズムを提供します。この技術は、未使用の CPU サイクルを、余分なサイクルを必要としているプロセスに使用しながら、同時にすべてのパーティションが、割り当てられた CPU 時間のバジェットを必要なときに得らることを保証します。
ハードウエア サポート
QNX CAR オートモーティブ リファレンス プラットフォームは下記のプロセッサ向けに実装されています。
- Freescale i.MX6x Sabre Lite
- Texas Instruments J5 Eco
- Texas Instruments OMAP 4430 Panda
各チップには Graphics Processing Unit (GPU) が含まれており、それぞれに OpenGL ES ドライバが用意されています。
お客様からの要求により、他のプラットフォームが利用可能になることも考えられます。
メモリ要件
システムに対する要件は、期待される機能 (例: 3D グラフィックス) とパフォーマンスに依存します。
| システム プロファイル | 期待される機能 | 予想されるシステム RAM |
|---|---|---|
| ヘッドレス | 車の機能、音声認識、ナビゲーション、マルチメディア、ウェブ サーバー | 256 MB |
| ローエンド | ヘッドレス + HTML5 ベースの固定 HMI | 512 MB |
| ミドルからハイエンド | ローエンド + ダウンロード可能なアプリケーション | 1 GB |
| ハイエンドから超 ハイエンド | ハイエンド + アプリケーション サンドボックス、追加機能用の予備 | 2 GB |
| 上のテーブルは、QNX CAR を実行するのに必要なメモリの予想値を示しています。 | ||
QNX CAR HTML5 エンジンは、QNX CAR HTML5 HMI サポートの基礎となるものです。WebKit (www.webkit.org) オープン ソールのウェブ ブラウザ エンジンをベースにしており、QNX ではこれを組み込み環境向けに最適化し、さらに数多くの機能を追加してフル装備のウェブ ブラウザに仕立てました。
パフォーマンスの最適化
WebKit に対する QNX パフォーマンスの最適化に含まれるもの:
- 例えば背景のスレッドをスロットルで調整して CPU サイクルを減らし、電力消費を抑えるなどして、CPU の温度を低下させる (ハイブリッド車のバッテリーの寿命を延長する) 電力消費管理。
- パフォーマンスを向上し CPU の使用を抑える、改善された JavaScript の実行
- 例えば画像のダウン サンプリングとファイル サイズの低減などにより全体的なスピードの最適化 (例: サムネイルで十分な場合は大きな画像をロードしない)
- RAM の使用を抑えながら、スクロールとズーム用にインテリジェントなタイル システム
QNX CAR ウェブ ブラウザ
QNX では、最適化された WebKit ブラウザに数々の機能を追加して、下記の機能を含む、十分な機能を持つウェブ ブラウザを提供しています。
- プラットフォーム抽象レイヤー
- イメージ キャッシング、ページ キャッシング
- タッチ、マウス、キーボード、ジェスチャーに対応するマルチ モダルなイベント処理
- 履歴、ブックマーク、ページ ナビゲーション
- ユーザー設定
- ネットワーキング、URL 管理
- マルチメディア サポート、GPU アクセラレーション
- プラグイン サポート
- ダウンロード管理
- ピクセルレベルまで正確なズーム
- 物理学ベースのスクロールとパン
HTML5 エンジン機能
QNX CAR HTML5 エンジンは、最新の WebKit テクノロジを用いて QNX が定期的にアップデートを行う、フル機能ウェブ エンジンです。WebSocket、WebGL、セッション ストレージ、オフライン アプリケーション、ワーカー スレッド、DOM の改良点など HTML5 特有の機能と、<canvas>, <audio>、そして <video> 要素をサポートします。
QNX CAR と BB10 搭載の次世代 BlackBerry デバイスは共に QNX HTML5 エンジンを使用しています。
HTML5 のサポート
QNX CAR HTML5 エンジンは、HTML5 スタンダードおよび CSS3、JavaScript スクリプト言語、そして AJAX、JavaScript Object Notation (JSON)、そして XML などの関連スタンダードをサポートしています。
HTML5 アプリケーションはインタラクティブなディスプレイ、音声、ビデオ、音声認識そして触覚操作を含むさまざまなユーザー インターフェイス テクノロジをサポートすることができます。HTML5 を使えばデベロッパは QNX CAR や携帯デバイス向け、またはクラウドでホストされるアプリケーション構築のための共通したツールセットを使うことができます。
パーティション化された UI とサンドボックス
QNX CAR アーキテクチャでは、各 WebView (デスクトップ ブラウザのタブに相当) は独自の HTML5 エンジン インスタンスで実行します。各 WebView は分かれた (そして異なる) JavaScript アプリケーション フレームワーク (例: jQuery Mobile または Sencha Touch) と共に実装できます。
HTML5 エンジンの同じインスタンス内で実行されているアプリケーションをお互いから隔離することはできません。あるアプリケーション内での不正な動作が他のアプリケーションすべてに影響を与える場合があります。例えばあるアプリケーション内の JavaScript のスレッドがハングしたり停止した場合、他のすべての HTML5 アプリケーションがハングしてしまいます。これこそ QNX CAR アーキテクチャが、プライベートな HTML5 エンジン インスタンス (その "サンドボックス") として各アプリケーションを独自に実行する理由なのです。こうしたデザインによりアプリケーションが隔離されるので、問題があった場合でも他のアプリケーションに影響はありません。しかしシステムのメモリ フットプリントは増えます。
UI コアは、さまざまな HMI テクノロジを使って開発されたアプリケーションの動的なローディングと起動、そして画面の共有を可能にするコンポーネントで構成されています。
UI コア内のコンポーネントは HTML5 のアプリケーション環境と関連付けられておらず、HTML5 と共に QNX CAR でサポートされてい Qt、Elektrobit GUIDE や Crank Storyboard などと使用できます。UI デザインは、将来的に追加されるテクノロジを簡単にサポートできるようなモジュラー型になっています。
複数の HMI テクノロジを組み合わせる
数多くの HMI テクノロジが用意されているので、システム デベロッパは各アプリケーションに最適なテクノロジを選択することができます。
複数の HMI テクノロジが同時にアクティブ状態である場合、それらの出力はメインの制御アプリケーション (QNX CAR のホーム画面) が指定するように QNX のコンポジション マネージャによって結合されます。コンポジション マネージャは、アプリケーションから画面への最適化された道筋を提供す るよう設計されています。
UI コア コンポーネント
UI コアの主要コンポーネントは、アプリケーション インストーラ、authorization マネージャ、コンポジション マネージャ、そしてランチャです。
アプリケーション インストーラ
アプリケーション インストーラは、アプリケーションを解凍し、シグニチャを確認し、そのアプリケーションを QNX CAR プラットフォームにインストールします。
認証マネージャ
認証マネージャは、各アプリケーションが使用する API とシステム サービスを制御し、システム デベロッパが定義したセキュリティ モデルを実行します。こうした認証により、ダウンロードされたアプリケーションが認証されていないインターフェイスを使用しないようにします。
コンポジション マネージャ
コンポジション マネージャは、複数のグラフィックスとユーザー インターフェイス テクノロジを画面上でレンダリングできる単一のシーンへと統合します。コンポジション マネージャが組み合わせることができるユーザー インターフェイス テクノロジには HTML5、Elektrobit GUIDE、Crank Storyboard、Qt そしてネイティブ (例: OpenGL ES) コードが含まれます。
ランチャ
ランチャによりどんなアプリケーションでも、ユーザー インターフェイス環境 (システムの許可による) 内にある他のアプリケーションを起動することができます。
統一された HMI
デベロッパはコンポジション マネージャにより各レンダリング エンジン (HTML5、Qt、ビデオ、OpenGL ES など) の出力に対して異なるペインを作成することができます。それぞれのフレーム バッファは変換 (拡大/縮小、移動、回転、アルファ ブレンド、など) されて、最終的な表示画面が構築されます。
表示画面を可能な限り最適化して構築するため、コンポジション マネージャは場合により GPU によってアクセラレーションが行われた操作を行い、ハードウエアが要求を満たせない場合のみソフトウエアに依存します。
下の画像は、HMI の一部分を提供する各アプリケーションが、独立したウィンドウとフレーム バッファをどのようにコンポジション マネージャから割り当てるかを示しています。
- HTML ページが背景の壁紙とナビゲーションのコントロールを提供します。
- ビデオ キャプチャ チップをフレーム バッファへとデジタル化する iPod Out は、iPod や iPhone からアナログ ビデオを取り込みます。
- 下層の OpenGL ES マップ レンダリング ソフトウエアは、右側にナビゲーション画面を構築します。
- Qt によってナビゲーション操作がナビゲーション画面の上に配置されます。
-
ホーム画面には、ドライバーにとって大切な情報がすべてまとめて表示されます。
-
ドライバーに合わせて HMI をカスタマイズすることができます。
-
アプリケーション画面には、ダウンロードされたアプリケーションがすべて表示されます。
-
音声統合機能によりドライバーはすべてのインフォテイメント機能を安全に操作できます。
-
ドライバーは好みの方法で一元管理された連絡先リストから相手先に電話をかけることができます。
-
連絡先リストを使って相手先に安全に電話をかけることができます。
-
連絡先リストに番号が存在しない場合は、キーパッドを使ってキーを押す通常の方法で電話をかけることができます。
-
メディア プレーヤは音楽の再生以外にもビデオ再生、音楽の管理、インポートや検索機能、ストリーミング ラジオを提供します。
-
カバー フロー インターフェイスにより、アルバムの閲覧と選択が簡単に行えます。
-
ラジオ アプリケーションとラジオ DSP は特定のプラットフォーム上で直接通信を行うので、統合作業が大幅に簡素化されます。
-
駐車中のドライバーと後部座席の同乗者は車内でビデオを楽しむことができます。
-
メディア プレーヤには、Pandora や Stitcher などのストリーミング ラジオ アプリケーションを含むさまざまなマルチメディア オプションが統合されています。
-
自動車特有の機能は一箇所にまとめられています。
-
ドライバーはバーチャル メカニックを使って車の状態を管理できます。
-
バーチャル メカニックは CAN バスから DTC を読み出し、問題となりそうな箇所を通知します。
-
ドライバーはまた、バーチャル メカニックで車の液体類を一目で確認することができます。





























