[インターン生レポート]「AR.Drone 自律動作システム」の作成(iPhoneアプリ) ~前篇~

こんにちは、技術インターンシップ担当です。

現在KLabでは、技術に興味のある学生さんを、随時インターン生として受け入れています。
インターン期間中は、技術レベルアップの為に、個々で設定した企画・課題に対して
弊社メンターのサポートを受けながら取り組んでいきます。

今回は、9月に「AR.Drone」の自律動作システムの作成にチャレンジしてくれた
学生さんのレポートをお届けします。

具体的には、スマートフォンをGPSセンサーとして「AR.Drone」の位置情報を取得し、
その情報やロボットの端末から取得できる様々なデータを利用するシステムの作成を行ってくれました。

※今回、ボリュームのあるレポートを提出してくれた為、
本レポートは「前篇」「後篇」に分けてお伝えしたいと思います。

—————————————————————————————————-

■期間:2012年9月12日~28日(12日間)
■部署:開発制作本部

[自己紹介]

こんにちは、電気通信大学大学院 修士1年の学生です。

大学の頃からプログラミングを始め、iPhoneアプリ開発を主として3年ほど開発を行なっています。

私の知人がKLabに入社したという情報を知ったことをきっかけに、インターンに応募し、参加させて頂きました。
また、インターンシップへの参加決定後、第3回プロトタイピングラボにも招待して頂き、そちらにも参加致しました。

[作成を試みたシステム]

AR.Droneを自律動作させるシステムの作成を試みました。

AR.Droneは、スマートフォンで操作することのできる生活エリアロボットです。

本来は、この端末を複数用意し、AR.Droneに付属しているカメラの映像からスマートフォンに映像を送り、
AR技術を用いたゲームを行なうことのできるロボットです。

このAR.Droneは、roll、yaw、pitch、altitudeといった端末の姿勢や地面までの高さの値や
AR.Droneに搭載されている水平カメラと下向きのカメラの映像を取得することができます。
これらを利用して何か新しいことができないかと考え、今回プロトタイプの開発に思い至りました。

作成しようと考えたシステムは、伝書鳩のように目的地まで行って元の場所に戻ってくるシステムです。

[GPSセンサーに関するシステムの開発]

上記のような動作を実現するためには、AR.Droneには搭載されていないGPSセンサーが必要であると考えました。
そこで、スマートフォンをAR.Droneの上に載せることでAR.Droneの位置情報を取得し、
その情報やロボットの端末から取得できる様々なデータを利用することにより、自律飛行を実現しようと試みました。

システムの全体図とそれらの役割を以下に示します。

■PC

AR.Droneとの接続を行ない、端末に対する制御信号を送ります。
既にこのロボットはスマートフォンで操作することができると記述しましたが、PCからも操作が可能です。
今回はPC上にサーバを立て、それらのデータを総合的に利用してAR.Droneの制御を行ないたかったため、
PCと接続しました。そして、AR.Droneから取得できる情報を取得し、ローカルで繋がっているサーバに格納します。

■サーバ

iPhoneやPCから送られてくるデータをデータベースに格納しながら、それらの情報を利用し、
ローカルソケット通信でPCにAR.Droneの制御通知を送信します。
格納するデータは、iPhoneからGPS情報・3軸加速度の値・ジャイロセンサーの値・電子コンパス情報、
AR.Droneからはroll・pitch・yaw・altitude・バッテリー残量・カメラ情報となっています。

■AR.Drone

本システムの主となる端末です。PCから送信されるデータをもとに、自律飛行を行ないます。
実験段階では、手持ちのスマートフォンから手動制御が加わることもあります。

■ AR.Drone上のiPhone

PC上に立てた仮想サーバにHTTP通信でセンサ情報を一定時間ごとに送信し続けます。
位置情報を取得し、その情報やロボットの端末から取得できる様々なデータを利用することにより、
自律飛行を実現しようと試みました。

■手持ちのiPhone

サーバからXML形式でAR.Droneの状態や現在地を取得し、それらの情報を確認することができます。
また、AR.Droneの予期せぬ動作のデバッグ用として、手動制御をサーバ経由で行うことができます。

—————————————————————————————————-

いかがでしたでしょうか。

「後篇」では、実際に作成したシステムや、インターンシップを通じて学んだこと等について
お伝えしたいと思います。

—————————————————————————————————-

※技術インターンに興味を持たれた方は
是非、技術系インターンシップ応募ページ からご応募下さい。

追記:[インターン生レポート]「AR.Drone 自律動作システム」の作成(iPhoneアプリ) ~後篇~ も公開中ですので、ぜひ併せてお読みください^^

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中