マウスで動かせ! マウスカーソルのラジコン
パソコンを使っていると、常に目で追っているのが「マウスカーソル」。これがなければパソコンを操作できないし、もはや人類の相棒とも言える存在だ。
でも当たり前だけど、マウスカーソルはモニターの中に閉じ込められている。画面端に行くと見えない壁にぶつかってしまい、そこから先へは進めない。
マウスカーソルをモニターの外へ出してやりたい。壁を飛び越えて、もっと自由に動き回って欲しい……! そんな願望を「マウスで動かす、マウスカーソルのラジコン」という形で実現することにした。
マウスで動かす、マウスカーソルのラジコン
こいつをラジコンにすれば、モニターの外の世界で自由に動き回ることができると思ったのだ。
そして、そのラジコンを動かすコントローラーはやはり「マウス」であって欲しい。マウスを動かすと、マウスカーソルのラジコンが動く。これである。
ラジコン化したことで、モニターという小さい枠に捕らわれず、伸び伸びと動き回れるようになったマウスカーソル。ドッグランに放たれた犬のように、思いっきり外の世界を堪能できているはずだ。
その様子を動画にもまとめたので、合わせてご覧いただきたい。
次からはこのラジコンについて、もう少し詳細に紹介していこう。
コントローラー部分(マウス)の構成
ラジコンである以上、無線で動きをコントロールしたい。それには「ESP32」という無線機能のあるマイコンボードを使って、Bluetoothで信号を送るのが簡単だ。
入力インターフェースとなるマウスは、よくあるUSB接続だと制御が複雑で、動きの情報を取り出すのが難しい。簡単に作ろうと思うと、「PS/2」という昔よく使われていた方式のマウスを使うのがベストだろう。制御プロトコルが単純なので、動きの情報を楽に取得できる。
マウスを前に動かすとy方向にプラスの値が出て、後ろに動かすとマイナスの値が出る。同じくマウスを右に動かすとx方向がプラスになり、左に動かすとマイナスになる。つまり、xとyの値を見ると、前後左右どの方向にマウスを動かしたのかが分かるのだ。
あとはこの数値をモーターの回転速度に変換できれば、マウス操作でラジコンを動かすことが可能となる。
ラジコン部分(マウスカーソル)の構成
コントローラー側からBluetoothで送られてきたマウスの移動量を、同じくESP32で受信し、モーターの回転数に応じた電圧値に変換している。そしてモータードライバー(L298N)を経由して、DCモーターを駆動するという構成だ。
マウスはこれまで「マウスカーソルを動かす」用途でしか使ったことがないので、操作することで物理的な動作(モーターの回転)が生じる、というのが新鮮で面白い。無意味にタイヤを回転させたくなってくる。
さらにマウスを動かすたび、「シャー、シャー」というモーターの動作音が聞こえる。五感を刺激する楽しさである。
これがあれば遠隔で竹とんぼを高速回転させたり、フードミキサーをマウスで操作したりすることもできるなあ、などと、どうでもいい感じのアイデアも思い付いた。また今度作ってみよう。
マウスカーソルで遊ぶ
このラジコン、見ているだけでは伝わりづらいのが残念だが、実際に操作するとめちゃくちゃ楽しい。マウスカーソルに限らず、ラジコンのコントローラーをマウスにするのは意外とアリなんじゃないだろうか。
ただ一つ難点がある。パソコンのマウスと同じで、マウスを動かすスペースには限界があるのだ。ずっと前進させたいと思ったら、マウスを前に動かす→マウスを浮かして手前に戻す→マウスを前に動かす……という動作が必要である。
この問題は、マウスの代わりにトラックボールを使えば解決しそう。トラックボールをコントローラーにしたラジコン、それもアリかも。
クリックもできるぞ
ここまでで、マウスを使ってカーソルを移動させる動作は完成した。でもマウスにはもう一つ機能がある。それは「クリック」である。
この黒いポッチは何かというと、導電性のスポンジである。「タッチペンの先端」と言えば分かりやすいだろう。実際、100円ショップで買ってきたタッチペンを分解して作ったものなので、紛れもなくタッチペンの先端部分だ。
この黒いポッチ部分が、タッチペンと同じ働きをすることになる。つまり、タッチパネルを操作できるのだ。
作るのが結構大変だったわりには、「この機能いる!? 」とあとで冷静になって思ったりもした。でもこの一手間が、作品のクオリティに直結するのである(私はそう信じている)。
Windowsみたいにしてみる
最後に、こういう床を作ってみた。
床にアイコンを置けば、マウスカーソルにとってのホームグラウンドの出来上がり。
いつも見慣れたマウスカーソル。もはや当たり前すぎて何とも思わない存在であったが、こうして立体化してみると愛着が沸いてきた。自分のマウス操作に従って健気に動いてくれる様子を見ていると、ペットのようなかわいらしさがあることにも気付かされた。
これからも人類の良き相棒として、末永く付き合っていきたいと改めて思ったのであった。今後ともよろしく、マウスカーソル!