要件定義

要件
・フォクすけ君を走らせます。
・フォクすけ君のしっぽが動きます。
・フォクすけ君の顔はFx0の画面で、感情を表現します。
・フォクすけ君のコントロールは別のFx0のモーションで行います。

全体設計

全体設計を行い担当割を決めました。

担当割

【フォクすけ本体】
  • Fx0 Webサーバー(httpd.js) 亀井
  • 顔表示デザイン・プログラム 日野、亀井、太田
  • mbed Webサーバー 石田
  • mbed モーター制御基板・プログラム 藤田
  • モーター基台 大内、太田
【リモコンFx0】
  • リモコンアプリ dyna

システム構成

システム構成図をまとめました。
※内容がすこし古かったので最新版に差し替えました。(2/16)

Fx0 Webサーバー(httpd.js)開発


操作系 API (全部 GET リクエスト)


mortor

/api/motor/right?speed=[-255〜255]
/api/motor/left?speed=[-255〜255]

mbed Webサーバーにリダイレクト

face

/api/face/eye?state=[normal|closed|cry|relax]
/api/face/eye/wink

顔状態変更関数呼び出し

tail

/api/tail/swing/[start|end]

mbed Webサーバーにリダイレクト

状態取得 API

/api/ambient/light
/api/ambient/?

ロボ側のセンサー(fx0, mbed)の状態を取得する。
未実装。

顔デザイン、プログラム開発


フォクすけのフェイスパネルの仕様

  • 平常時でも、まばたきする(静止させない、かわいい表情)
  • 眩しいとか、拍手の音で(>・<)的な反応(Fx0のセンサーでスタンドアロン)

mbed Webサーバー開発


実装

↓のサンプルコードをベースに実装しています。
・RESTServerSample
http://developer.mbed.org/teams/KDDI-Fx0-hackathon/code/RESTServerSample/

mbed上で動くサーバーのソースコード

http://developer.mbed.org/users/yi/code/RESTServer_team4/

mbed モーター制御部開発


材料

  • TA7291P 3個
  • ユニバーサル基板1枚
  • 単三電池4本
  • 単三電池ボックス(4本用) 1個
  • XBeeバニラシールド 1個
  • mbed NXP LPC1768 1個
  • ムラタ WiFiモジュール Type YD 1個
  • ピンソケット 20P×1列 2本
  • 配線材料(タミヤのキットのケーブルを流用)

レイアウト設計

レイアウトを設計します。

はんだ付けを行います。

はんだ付けを行いmbedを取り付けます。

完成した回路図

実装後に最終版の回路図を起こしました。

完成した基板

ムラタのWiFiモジュールも実装し基板は完成しました。

モーター基台部の製作


材料

  • タミヤ 楽しい工作シリーズ No.104 ブルドーザー工作基本セット
  • タミヤ ロボクラフトシリーズ No.6 メカタートル
  • 山崎教育システム 自在パワーピースユニット(学校教材)
  • スチロール板
  • 両面テープ
  • テグス(本体固定としっぽ可動用)

ベース基台の製作

タミヤのキットは不要なパーツは取り付けずにシンプルにしました。
シャシが木材なので固定が容易に思えます。
フォクすけ君が乗れることは確認できました。

しっぽを振る機構の製作

こちらも最低限のパーツだけ組み立てました。
主にギアボックスを立てる台としてつかいます。
クランクの部分はキットに含まれているものは使わず、学校教材のパーツを組み合わせることで動きを大きくしています。

しっぽを振る動作の確認

しっぽを振ることができるか確認を行いました。
可動部としっぽはテグスで固定しています。
いい感じです。

リモコンアプリ開発


UI

UIはこんな感じです。ボタンでフォクすけ君のアクションを指定できます。
Fx0を傾けた方向にフォクすけ君が動きます。

結合テスト


ぬいぐるみとFx0の結合

おいしい

Fx0プログラムのリポジトリ

https://github.com/dobogo/foxkeh-facepanel

appsフォルダのなかにリモコン部のプログラムがあります。

Fx0リモコンと表情変更機能の結合テスト

Fx0リモコンと表情変更機能の結合テストを行いました。
Fx0リモコンのボタンをおすと、その表情に変化します。
次は、モーター制御部との結合テストです。

Fx0リモコンとモーター制御部の結合テスト

Fx0リモコンからモーター制御部の結合テスト。自走としっぽ振りができることは確認できました。

完成!

フォクすけ君 完成!