ベットの下にゴキブリキャップを配置する「Black Cap Placer」
全体構成
システム全体の構成を以下に示す。
ロボットでブラックキャップの配置を行う。ロボットには移動用モータとブラックキャップ投下用モータ,Webカメラが搭載されている。これらの動作はRaspberry Pi上で制御する。Android上でコントローラアプリケーションを動作させ,Rasberry Pi上のPHPサーバで指示を受け付ける。Raspberry Pi上のWebカメラで撮影される動画は配信され,Androidアプリに表示される。
Backend
(1) 車両型ロボット
対応するコマンドを実行することで車両型ロボットは以下の動作を行う。
| 前進 | ./motor_pu2709 Forward |
| 後退 | ./motor_pu2709 Backward |
| 停止 | ./motor_pu2709 Stop |
| 右旋回 | ./motor_pu2709 Right |
| 左旋回 | ./motor_pu2709 Left |
| セット | sudo ./sg90 Set |
| 投下 | sudo ./sg90 Drop |
ブラックキャップをセットする様子を以下に示す。赤いボタンを押すとセット用コマンドが実行され、サーボモータが90度回転し,板が固定される。
|
[セット前] |
[セット後] |
投下用コマンドが実行されるとサーボモータが回転し,板の固定が外れることでブラックキャップが投下される。
|
[投下前] |
[投下後] |
(2) Raspberry Pi
車両型ロボットにはRaspberry Piを搭載しており,PHPサーバをたてている。次のスクリプトを実行することで,対応するコマンドを実行できる。
| forward.php | 前進 |
| back.php | 後退 |
| right.php | 右旋回 |
| left.php | 左旋回 |
| stop.php | 停止 |
また,Raspberry PiにはWebカメラを搭載しており,リアルタイムで映像配信を行う。
Frontend
(1) 初期画面
| WebView | Raspberry Piからの映像配信を表示 |
| IPアドレス | Rasberry PiのIPアドレスを入力 |
| ↑ | http://<ip>/~pi/forward.php にアクセス |
| ↓ | http://<ip>/~pi/back.php にアクセス |
| → | http://<ip>/~pi/right.php にアクセス |
| ← | http://<ip>/~pi/left.php にアクセス |
| □ | http://<ip>/~pi/stop.php にアクセス |
| DROP | http://<ip>/~pi/drop.php にアクセス |
| 管理 | 管理画面へ遷移 |
(2) 管理画面
この画面では保存された画像ファイルをリスト表示し,選択した画像を上部のImageViewで表示する。
| 間取りを追加 | Androidの写真フォルダにアクセスし,選択した画像を名前をつけて保存 |
| 間取りを編集 | 画像が選択されている場合,画像編集画面へ遷移 |
(3) 画像編集画面
この画面では画像の編集を行う。画像の任意の点をタップすると赤い印がつけられる。ブラックキャップをおいた場所を記録するための機能である。
| 保存 | 現在の画像を上書き保存 |
| 削除 | 画像ファイルを完全に削除 |
| リセット | 保存されていない変更をすべてリセット |
DEMO
コメント