忍者ブログ

完全に恋しちゃってますブログ

Home > 未選択

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Windows 7の Sensor and Location プラットフォームを C#で使う

Windows 7の Sensor and Location プラットフォームを C#で使う




はじめに
PC は、各種デバイスとのコネクティビティに関してかなり用途が広い。たとえば、USB だけでも数千種類ものデバイスに接続することができる。そして、その多くは何らかのセンサだと考えることができる。だが、実際のところセンサとは何なのだろうか?

Windows 7で言うセンサは、物理的な外の世界を測定可能なデバイスを指す。たとえば、センサは現在の温度、周辺光のレベル、位置(GPS のようなもの)、三次元方向の加速度などを検知することができる。全般的に見て、多くのデバイスがこの幅広い定義に収まる。

本稿では、Windows 7の一部となっている Sensor and Location Platform について考えたい。また、.NET や C#の開発者が自分の.NET アプリケーションからこのプラットフォームの機能を利用する方法も学ぶ。たとえば、.NET 4.0は便利なマネージコード API を使って位置センサを直接利用可能ににする新しいネームスペースを提供する。

本稿では、Microsoft Visual Studio 2010 Release Candidate (RC)以降のバージョンを使っているものと仮定する。.NET 4.0の新しい位置クラスは先の Beta 2リリースするから変わっているため、古いベータ版を使っている場合は、コードをを修正する必要が出てくる。Windows API Code Pack のセンサの例ではバージョン v1.0.1を使用した。コードパックは Microsoft Visual Studio 2008と2010の両方(Beta 2と RC の両バージョンを含む)と一緒に利用できることを覚えておきたい。

Sensor and Location Platform のアーキテクチャ
Windows 7が登場する前、数百種類もの各種センサデバイスをコードからコントロールする場合は、どれも多かれ少なかれ独自の方法を使っていた。デバイスは物理インターフェースが異なり、コントロールコマンドが異なり、出力フォーマットも異なっていた。これにより、デバイスごとに異なるプログラミングを強いられ、開発者は難しい対応を迫られた。

Windows 7が搭載する Sensor and Location Platform (SLP)は、(位置センサも含め)すべてのセンサデバイスに共通のプログラムモデルとドライバインターフェースを提供することでこの状況を変えようとしている(図1)。デバイスが Windows 7 SLP 互換のドライバを用意していれば(これらのドライバはユーザーモードベースであるため、カーネルベースのドライバよりも簡単に書くことができる)、Windows 7がデバイスをセンサとして適切に検知し、SLP API がデバイスにアクセスできるようにする。


図1 - Windows 7はセンサと位置デバイスを表示する新しいコントロールパネルアプレットを搭載

互換デバイスが存在する場合は、もっと低いレベルで SLP でサポートされる COM API を使ってそのデバイスとコミュニケーションを取ることができる。SLP はさまざまなタイプのデバイスをサポートし、これらのデバイスは GUID 値で特定できる。

.NET における Sensors and Location のサポート
Windows 7では、新しい Sensor and Location Platform API が COM ベースとなっているため、API はネイティブとマネージコードアプリケーションの両方で利用できる。.NET 開発者としては、これらの COM クラスやインターフェースを中心に独自のラッパを作成するか、既製のコードを使うことができる。

現在、基本的には2つのオプションがあり、無償の Windows API Code Pack を使って SLP 機能を利用するか、既に Visual Studio 2010で.NET 4.0を使っている場合は.NET 4.0の新機能を使って SLP が提供する機能のパーツを利用することができる。

.NET 4.0の方を使いたい場合は、System.Device.Locationという新しいネームスペースがある。このネームスペースは Windows 7の Location API のサポートを搭載しているが、(少なくとも今のところは) Sensor プラットフォームを直接サポートしない。したがって、.NET 4.0単体では位置サービス(GPS など)を使えるが、残りの機能については Windows API Code Pack を使い続ける必要がある。

実際のところ、System.Device.Locationは.NET 4.0のパーツであるため、技術的には、Windows XP マシンでもクラスやメソッドにアクセスできる。しかし、.NET クラスが使えても、これらは Windows 7を使っていない限り位置システムのステータスを常に Disabled として報告する。したがって、.NET のクラスが使えても、OS がそれをサポートしているわけではない。

デバイスのプログラミングをしている開発者が抱く共通の疑問は、「手元に本物のハードウェアがなくても開発に着手し、あとから本物のデバイスを使ってテストを始めることはできるのだろうか? 」というものだ。そして、その答えはセンサが接続されている限りは「イエス」だ。Windows 7 SDK には物理光センサをエミュレートする仮想デバイスが含まれており、Windows 7にそれを本物の デバイスだと思わせるドライバも搭載されている。これにより、開発を始めるのが簡単になる。

ただ、位置ベースサービスに関しては今のところ物理デバイスを用意する必要がある。もちろん、GPS デバイスを内蔵し、Windows 7互換の SLP ドライバを搭載したノート PC などがあれば、それでもうまくいく。しかし、一般的に言えば大半の GPS デバイスは外付けになっている。
センサ開発への着手
Microsoft Visual Studio を使って新しい Sensor and Location Platform 用のセンサアプリケーションの開発を始めるには、2008もしくは2010のいずれかのバージョン(執筆時点のリリース候補は最新の2010バージョン)、Windows API Code Pack、そして言うまでもなく Windows 7が必要になる。

手元の PC に接続できる物理センサデバイスがあれば何も心配ない。ない場合も、Microsoft が Freescale Semiconductor を紹介してくれる。彼らは「Flexis JM Badge Board」というハードウェアを49ドルで販売している。これは Freescale から直接注文することが可能で、これを自分のテスト基盤として使うことができる。

手元に物理デバイスがなくても開発に着手したいという開発者には、Windows 7 SDK キット(図2)をダウンロードしてインストールする必要がある。このキットのインストールは時間がかかる(x86と x64のどちらのバージョンが必要なのか調べておくこと)が、いったん作業が終了すれば、SDK インストレーションパス(デフォルトではC:?Program Files?Microsoft SDKs?Windows?v7.0)の下の Bin フォルダからVirtualLightSensor.exeアプリケーションを実行することができる。これでプログラムで使う仮想センサが手に入った。


図2 - コードのテスト時に便利な仮想光センサを利用可能にする Windows 7 SDK キット

仮想光センサアプリケーションをうまく実行するには、その前に適切なドライバを Windows 7にインストールする必要があることに注意したい。これは、管理者特権のコマンドプロンプトで「pnputil -a VirtualLightSensorDriver.inf」コマンドを使うことで可能になる。.INFファイルは SDK キットの Bin ディレクトリにある(図3).


図3 - PnpUtilを使った仮想光センサ用ドライバのインストール

使っているのが物理センサであろうと、Windows 7 SDK によって提供される仮想センサであろうと、デバイスはコントロールパネルの「位置センサーとその他のセンサー」で見えるはずだ。ここで自分のデバイスが見えたら、プログラミングを開始することができる。

まず最初は、Windows Forms や Windows Presentation Foundation (WPF)アプリケーションなど、Microsoft Visual Studio でプロジェクトを作成もしくは開くことからだ。次に、Windows API Code Pack (ダウンロード先の URL は「参考文献」の項参照)に参照を追加すれば準備完了だ。参照しなければならない DLL の名前は、Microsoft.WindowsAPICodePack.dllおよびMicrosoft.WindowsAPICodePack.Sensors.dllだ。参照がそろったら、Microsoft.WindowsAPICodePack.Sensorsネームスペースを使い始めることができる。

このネームスペースには、システムでサポートされるセンサ全体の情報を入手できるSensorManagerという名前のクラスが含まれる。以下に例を示す。


SensorList<Sensor> sensors =
   SensorManager.GetAllSensors();
MessageBox.Show("There are " + sensors.Count +
   " sensor(s) installed on the system.");

http://japaninternetcom.pheedo.jp/click.phdo?i=5edc4fbe05828dca4eb982b9d5b2209a

今日はこの当たりは雨が降っています、、、。
雨が降る日はたいがい憂鬱ですが、そうでない日もまれにあります。
雨が降らなければ生きていけないものもいるのですもんね。。
人間何が起こってもそれをどうとらえるかで違う人生になります。

PICKUP
債務整理は専門家へ相談しよう

サラ金からの借金を任意整理

探偵に浮気調査

子供の返済問題を解決 個人民事再生

東京メトロ東西線葛西駅

家出人捜索の依頼料相場

フランダース・レッド・エール

オペラ

森はるか アイドル情報

調査報酬 盗聴・盗撮器発見

PR

ネットワンシステムズ、SeaMicro サーバー「SM10000」を販売

ネットワンシステムズ、SeaMicro サーバー「SM10000」を販売
ネットワンシステムズは2010年6月21日、データセンターの消費電力、機器設置スペースを削減する米国サーバー開発会社、SeaMicro と、世界初の販売代理店契約を締結した、と発表した。

この販売代理店契約に伴い、高さ 10RU(約45cm)に Intel Atom 512個、1TB メモリ、ストレージ、スイッチ機能、負荷分散機能、サーバー管理機能を集約して搭載する「SM10000」の販売を7月30日から開始する。

SM10000 は、従来のラックマウント型サーバーで同程度の CPU 能力をもつ環境を構築した場合に比べ、消費電力および設置スペースを約75%削減できるという。

同社では SM10000 をデータセンター事業者、インターネットポータル系事業者、通信事業者、大規模企業、官公庁などを対象に、今後3年間で30億円を売り上げることを目標としている。

最小構成価格は2,335万円から(総額)。

SeaMicro は、Cisco Systems、Juniper Networks、Sun Microsystems、Intel、Advanced Micro Devices(AMD)などの出身者が設立した会社。Khosla Ventures、Draper Fisher Jurveston、Crosslink Capital などのシリコンバレーの主要投資家から2,500万ドルの支援を、また米国エネルギー省からは930万ドルの支援を得ている。

http://japaninternetcom.pheedo.jp/click.phdo?i=150f974f800ed2548ecb8474473a509f

やはり自分が楽しんでやれることが
尊いですね、本当。何をやっても楽しみを見つけられる人ほど
偉大な人はいないですよ。

PICKUP
極上のカニ料理 上海蟹の姿蒸し

伊藤えみ アイドル情報

レーシックで視力回復【山形】

税理士選びのポイント【新潟】

特定調停のデメリットって?

ロッテワールド

ホームヘルパーと介護福祉士の概要と仕事 http://kaigohukushi.lolista.com ホームヘルパーと介護福祉士の概要と仕事

消費者金融からの借金を債務整理

知らない人につけられている?

自己破産の無料相談ができる法務事務所

T-Engine フォーラム、第1回トロン/ユビキタス技術研究会を25日に開催

T-Engine フォーラム、第1回トロン/ユビキタス技術研究会を25日に開催
T-Engine フォーラムは2010年6月21日、6月25日に東京大学で「第1回トロン/ユビキタス技術研究会」を開催する、と発表した。

この技術研究会は、T-Kernel、ITRON、ユビキタス ID 技術に関する最新の技術的成果を発表、討論する場を提供するもの。第1回の特集では「T-Kernel/ITRON など組込み系プロジェクト最新成果」と題し、T-Kernel および ITRON を中心に発表を行う。

なお、T-Engine フォーラム会員、組込みシステム技術協会(JASA)会員、および学生は無料で、一般入場料は5,000円。

坂村健氏(T-Engine フォーラム会長、東京大学教授)、小林康浩氏(富士通セミコンダクター)、宮下光明氏(グレープシステム)、西林浩司氏(ルネサスエレクトロニクス)などの講演がある。

最新プログラムはこちらから。

http://japaninternetcom.pheedo.jp/click.phdo?i=8777b9f9c0392924d01026a463d76649

税金って何か無駄な気がしますよね。。
だから脱税してた!とかよくテレビでやってますが、気持ちわかりますもん。。
国に払うお金は減ったら減っただけいいですよね。
どうせまともな事には使ってないのが半分はあるんでしょうから。。
政治家が至福を肥やす為の税金ですから、だから脱税とかしたら目の色
変えて怒るんですよ、「俺たちが豪遊する為の金隠すなよ!」ってね。。
PICKUP
守ってますか?利息制限法

漫画 鋼の錬金術師登場人物

東京メトロ千代田線乃木坂駅

東京メトロ南北線麻布十番駅

仙台で探す顧問税理士/税理士事務所

弁護士を装った詐欺/詐欺被害を防ぐ

メディカルエステ情報!

婚活イベントに参加しよう

保険の手引き

デトックス・ゲルマニウム浴はエステで

ニコニコ動画が麻生太郎元首相の独占インタビューに成功、6月22日に解説番組を放送

ニコニコ動画が麻生太郎元首相の独占インタビューに成功、6月22日に解説番組を放送
株式会社ニワンゴは、2010年6月21日、同社が運営する、「ニコニコ動画(9)」の「ニコニコ生放送」にて、麻生太郎元首相の独占インタビューを政治ジャーナリスト角谷浩一氏の解説のもと6月22日24時より緊急生放送すると発表した。

参院選の公示日が発表されてから麻生太郎元首相を独占インタビューするのは、ニコニコ動画が初という。

この番組では「麻生太郎元首相 ニコニコ動画独占インタビュー公開!」と題し、菅政権に対する意見や普天間基地移設問題、そして参院選を目前として民主党が新たに掲げたマニフェストについてのコメントなど、ニコニコ動画だけに話したロングインタビューの録画を生放送にて解説する。解説は角谷浩一氏が務める。

政治に関することは勿論、首相を辞任してからの生活の変化やプライベートな生活内容に迫る貴重なインタビューとなっている。

番組ではユーザーからのリアルタイムで書き込むコメントをはじめ、質問や意見を受け付けながら生解説する。


http://japaninternetcom.pheedo.jp/click.phdo?i=38a5d9ee29b909934fa335a30c770131

「頭から湯気を立てる」といいます。
とても怒っている様子、かんかんになっている様子ですね。
人のこんな状態はみたくないですね、、、、www

PICKUP
付き合っている彼氏の素行調査

安藤 あいか アイドル情報

SoftBankのきせかえアレンジでキセカエ

身近な税理士を探す[佐世保市]

中国料理レシピ@太平燕

青島あきな アイドル情報

中川 杏奈 アイドル情報

高齢者の家出傾向

債務整理は依頼しよう

手数料詐欺/詐欺被害を防ぐ

イメーション、外付け HDD ケースが付属した2.5型 SSD アップグレードキットを発売

イメーション、外付け HDD ケースが付属した2.5型 SSD アップグレードキットを発売
イメーション株式会社は2010年6月21日、外付 HDD ケースを付属した2.5型 SSD「2.5型 SSD M-CLASS アップグレードキット」を、7月21日に発売する、と発表した。

容量64GB の「SSD-SATA25M-64G-UGA」、128GB の「SSD-SATA25M-128G-UGA」の2製品が用意されている。

「2.5型 SSD M-CLASS アップグレードキット」は、ノートパソコンの内蔵 HDD を SSD に換装する際に便利なキット製品で、SSD 本体に加え、外付 HDD ケース、データ移行ソフト「Acronis True Image HD」が付属する。

取り出した HDD は、外付 HDD ケースを利用してバックアップストレージなどとして活用できる。

SSD のおもな仕様は、インターフェイス SATA II(3Gbps、1.5Gbps)、タイプは MLC、キャッシュ 64MB、ECC 48bit ECC per 2KB data、シーケンシャルリード 230MB/s、シーケンシャルライト 170MB/s。




http://japaninternetcom.pheedo.jp/click.phdo?i=ceed17c37fd85a417f16ad42c15a7fcc

なんか最近いいニュース聞いてない。。
誰かが不幸になったり、事故だったり、嫌だなー、、。

PICKUP
改正貸金業法 総量規制の除外

税理士選びのポイント【福島】

レーシックの費用

偽装注文詐欺/詐欺被害を防ぐ

家族の為にも保険

短時間労働者[アルバイト]

警察への証拠集め ストーカー対策

カップリングパーティーから始める結婚活動

東京メトロ半蔵門線清澄白河駅

江田めぐみ アイドル情報

カレンダー

10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

カテゴリー

最新コメント

最新トラックバック

プロフィール

HN:
No Name Ninja
性別:
非公開

バーコード

ブログ内検索

P R