らくがき-2_2

息を『吹く』を取得する

息を吹く。

ローソクを消すとき、熱いものを冷ますとき、そういうアクションを取得できないか。という相談を受けたのですが、やったことがなかったので調べてみました。方法の1,2個はすぐ思いつくのですが、実際調べると思ってたよりも色々な方法がありました。
今回はそのまとめ。

風車の動きを取得

当たり前ですが、風車は風が当たることで回転します。
回転を検知するにはロータリエンコーダという機器や、カメラで動きを検知するなどの方法で回転したことを取得できますね。

ただ、見た目に「風車」はモチーフ的な存在なので、それ自体が目を引いてしまい、使いたい用途によってはそぐわないことが多いと思います。
また実際息で動かなければならないので、羽の形はそれなりに吟味する必要がありそうです。

□ 風を検知するにあたり一番思いつきやすい
□ 機械的に動くので破損しやすい
□ 展示の景観にそぐわない場合がある

マイクで取得

私が一番最初に考えたのは、音で取得する方法。
というのもマイクで取得する方法は古くはファミコン時代から、コントローラのマイクに息を吹きかけると『ボーーーッ』という風のノイズが拾えます。
風を切る音はマイク本体の直近で鳴るため、普通には聞こえにくい音でも、マイクに入力される音としては大きな音になるので、「一定の大音量が流れた」という甘い判定でも、そこそこ機能します。
しかしマイクには、喋り声や周りで鳴る音も入力されるので「一定の大音量が流れた」だけの判定では大きな音がなれば誤動作します。
精度を上げるには、風を切る音と他の音を分けることを判定する必要があり、これは結構難しい。音程のランダム性を測ってみるとか、機械学習でノイズを判定してみるみたいな方法が取れるかもしれません。

余談ですが、テレビでアナウンサーが手持ちしているマイクには、頭にスポンジがついていますが、この風の音を抑えるためについています。

□ マイク単体以外にも付属している機器が多いため手軽に試せる
  (PC・スマートフォン・WEB Cameraなど)
□ マイクで音を拾うだけなので作るのは割と簡単
□ 音量を測るだけであれば負荷が軽い
□ 他の音で誤動作しやすい

温度で取得

ここからは調べた結果。
熱い飲み物を飲むとき、息を吹きかけて冷ますと思いますが、風が当たると物は冷えるということを利用し息が吹かれたことを取得します。
参考にしたのは『Make: Japan』のページ

尖った先端部分に電気が流れて少し温まったところに、風が当たることで温度が冷え、その差を検知するもの。

□ 駆動部分がなく安心
□ 音のように広域に発生元があるような状態は避けられる
? エアコンなどの、ほかの要因による温度変化への対応
? どのくらい吹いたら反応するか、温度が復帰するまでの時間

気圧で取得

息を吹くことでセンサーに対して風圧がかかる。その気圧を取得する方法。
参考にしたのはこのQiitaの記事 (内容はTouthDesignerを用いたもの)

掲載されているGIFの炎はたしかに揺れているので、取得できそうではあるものの、GIFのフレームレートが遅いためどのくらいの感度で反応してくれるのか(もしくは誤検知しないか)検証してみないとなんとも言えないので、今後試してみたいです。

ちなみに、最近のiPhoneには気圧計がついており、アプリを入れれば気圧を測ることができるので息を吹きかけて試してみましたがほとんど値はうごきませんでした。センサー位置を特定できていないので直接息を当てられていないことも原因かと思いますが、iPhoneでは取得できなさそうでした。

□ 駆動部分がなく安心
□ 気圧なので吹いたあとの復帰は早そう。
? 息による気圧変化がどの程度あるのか
? 気圧センサーの精度でとれるのか


久しぶりの記事投稿ですが、今回は調べるにとどまってしまいました。
相談を受けた案件の実施が決まれば随時試してみたいと思います。

この記事が気に入ったらサポートをしてみませんか?