【イベントレポート】エンジニアの自由研究発表会春休み編vol.6.0

こんにちは!TECH Street編集部です!

今回は2022年5月19日(木)に開催した、 「エンジニアの春の自由研究発表会」のイベントレポートをお届けします。エンジニアによる、エンジニアのための自由研究発表会第6弾!業務外でITエンジニアが個人的に本気で取り組んだ内容をご紹介いただきました。

登壇者はこの方々!※登壇順に記載

北崎 恵凡さん(動画アーカイブでの発表です)
豊田 陽介さん
発明家の小栗さん
airpocketさん

早速内容をご紹介させていただきます!

 

Node-REDダッシュボードで効果音ポン出し画面を作ってみた

最初の発表者は、思いつきやひらめきを大事にしたものづくり活動をしている野良ハックチームの北崎 恵凡さん。今回は動画アーカイブという形で発表いただきました^^
北崎さんは、IoTLTというIoTやものづくり中心のコミュニティで活動をされています。今回の発表会は<春休み編>ですが、年末年始から制作を開始し、3月にオンラインイベントの盛り上がりツールとして使う現在の形に。

まず、ポン出しというのは、テレビや舞台演出等で出演者のタイミングを見て効果音やBGMを流すこと。通常は物理的なボタンで操作するエアーサンプラーやパッドコントローラー、または物理的なボタンのないタッチパネルを使用して効果音やBGMの録音・加工・再生を行います。

今回作成したポン出し画面の初期型は、ダッシュボード上にボタンを配置しただけのシンプルなものでした。実装もシンプルで、ボタンを押すと効果音ラボの Webサイトから効果音を取得し、ブラウザから音を再生します。

初期型の改良版として、ファイルキャッシュ版も作成しています。1度取得した音声データをファイルとしてキャッシュすることで、リクエストの度に音声データを取りに行く動作がなくなりました。ネットワークの負荷と効果音ラボへの負荷を下げることに成功しています。

初期型のポン出し画面は、2月のビジュアルプログラミングIoTLTで発表したものです。それを次回のIoTLTで稼働させてみないか、と声がかかったことで、参加者がボタンを押すと運営のパソコンから効果音が鳴るように改良することになりました。

複数いる参加者がボタンを押すと運営のパソコンから複数の効果音が流れるように改良。参加者がパソコンまたはスマホのブラウザからNode-REDにアクセスし、ボタンを押すと効果音ラボのサイトで音源データを取得します。そのデータを参加者のブラウザではなく運営のパソコンに渡し、そのブラウザから音が出る仕組みになっています。

初期版と同じように、ファイルキャッシュ版も作成しています。予め効果音ラボのサイトに音源データを取得しに行き、Node-REDにファイルキャッシュとして保存します。効果音ラボのサイトにアクセスしに行かなくなることでネットワーク負荷を下げ、レスポンスも良くなっています。

実際に3月のIoTLTでポン出しシステムを稼働させた結果、別の課題や問題も出てきました。本番のポン出しシステムの構成は、参加者がYouTubeでオンラインイベントを視聴している想定のものです。

ポン出しシステムからの音声はGoogle  Meetに流しますが、効果音の受信とGoogle  Meetへの参加で音声がループしないように構成する必要があります。Node-REDからの音声はUSBに接続したスピーカーからマイク入力へループバックし、ループバックした音声をGoogle  Meetへ流し込む形で実現しています。

ラズパイのオーディオ設定は、ポン出しの音声が登壇者の発表を邪魔しないように出力レベルを最小限にします。マイクの入力も最小にする事をおすすめしますが、Google  Meet起動中はマイク入力が自動調整されてしまう事象に遭遇しました。マイク入力が上がった場合には手動で下げる対応をし、入力の自動調整機能はオフにしています。

また、カメラには仮想カメラを指定しています。画面にはポン出し画面のQRコードを表示させていましたが、ビデオオフの状態だとQRコードが小さくて読み取れない事がありました。ビデオオンで仮想カメラにQRコードを表示する事で、スマホで読み取れない問題を解決しています。仮想カメラの設定はOBSスタジオを使用しています。

今回作成したポン出し画面のNode-REDフローを公開しています。ご覧のQRコードからインポートする事が可能です。

無料で誰でも利用可能なので、興味があったら是非手に取ってみてください!

 

LINEアプリでIoTやってみた

Facebook、TwitterなどのSNSやIT系のイベントの運営等で活躍されている豊田さん。今回はガジェット好きを活かし、LINEアプリを使用してIoTをやってみた研究の成果をお話いただきました!

画面中央のスマホは、インターネット通信をしている3つのデバイスと連動しています。LINEアプリ上で操作をすることで、

①画面上左側の正方形のデバイス⇒チャイム音が鳴る
②右側のLEDテープが付いた端末⇒LEDテープが光る
③電子ペーパーのディスプレイ端末⇒表示が変わる
という動作をします。また、デバイス側のボタンを押すとLINEのアプリに通知が来るようになっています。

研究報告①: LINE アプリでIoTをやってみた

まずは、デバイス操作がワンタップで出来るという点です。

LINEリッチメニューを使用することで、表示されている画像をタップするだけでデバイスを動作させる事が可能になりました。リッチメニューは、LINEの開発者サイトのアプリ上で簡単に作ることが可能です。画面のようにテンプレートを使用すれば、3つのボタンを作ってテキストを乗せるだけでプログラミングなしで作ることが出来るため、非常に便利です。

また、LINEのアプリで LINE Notifyを使うと、LINEアプリの入ったスマホに通知が飛ばせる仕組みを簡単に作れます。APIキーを取得してそれをHTTPリクエストという通信が出来る仕組みにそのキーを乗せるだけ。開発的なところは少ないので、IoT以外でも便利です。

研究報告②:LINEアプリでIoTをやるために

今回の発表のポイントは、LINEアプリだけで完結せずサービスの間を繋ぐという点です。そこで、LINEからデバイスを繋いだ方法を話していただきました。下記が、今回使用した内容となっています。 LINE関連でLINE Bot、リッチメニュー、LINE Notify。サーバー周りで使用したenebular、Node-RED。そしてデバイスと通信系のM5Stack、UIFlow、Beebotte、MQTTです。

システム構成と通信方式です。LINE bot開発では、LINEアプリで操作したものがHTTPで自分の設定した所に飛んできます。それを単純に送り返すとLINEアプリ上のやり取りになりますが、今回は更に受けたものを外に飛ばす形でデバイスと繋げています。

そのために使ったのが、Beebotte。色々なリアルタイム通信をクラウドで使えて、無料枠もある便利なサービスです。MQTTの仲介役としてよく出てきます。このHTTPとMQTTを組み合わせる仕組みが入っていることで、LINEアプリとデバイスを繋ぐのが非常にやりやすくなりました。

研究報告③:ビジュアルプログラミングの活躍

今回の研究では、ビジュアルプログラミングが活躍しています。サーバー実装に使用したのは、enebular。Node-REDでLINE botサーバーとその中に挟み込まれているBeebotteへの通信を飛ばすという仕組みを実装しています。

Node-REDは線でつなぐフロー型ですが、デバイスの制御はブロック型といわれるビジュアルプログラミングで実装しています。色がついているところが1個1個のブロックで、ブロックを組む形でプログラミングをしています。

今回の研究を支えたものはガジェットの大人買いだと言う豊田さん。
とは言え財布へのダメージも大きいということで、色々なガジェットを見て安価なものから試してみるのも良いかと思います!

>>次のページへ


 

作ったものを量産化し製品化してみる途中経過報告

小栗さんはUIcreatorという、PCをキーボード/マウスから開放し操作をシンプルにするツールの製作に取り組んでいます。今回は、UIcreatorを製品化・量産化する過程をお話していただきました。

1つのボタンに対してデバイスを組み合わせて登録し、1台でマウスとキーボード、ゲームパッドなどの機能を複合することが可能です。ブロック型のプログラミングツールを使用しており、ボタンを押すだけで一連の動作をPCから実行できます。

様々な分野での利用を想定しているとのことで、例えばピアノアプリの自動演奏への応用もなども!

このプログラムは、ボタンを1回押すだけで「ちょうちょ」の曲が流れるように設定しています。設置した人感センサーに連動させれば、人が通った時に特定の曲を流す等の使い方も可能に。他にも、使い方はアイデア次第。

PCゲームでは、ゲームパッドがなくてもキー操作が出来るようになります。ボタンにパンチングボールのスイッチを割り振るなどの活用もあり。複雑な連続技を簡単に入力することも出来るようになります。

その他にも障がい者のPC利用にも活用出来ます。
人によって力が違ったりボタンの押し方が違いますが、それぞれの方のパターンに併せて入力条件を変更する事が可能になります。

量産化・製品化は、Bit Trade Oneという会社さんのマイプロダクトサービスを利用しています。一切の初期費用がなく在庫の管理、備品調達、生産管理も任せて商品化してくれるという便利なサービスです。

量産化に向けては、いかに費用を抑えるか、製造原価を抑えるか、という部分を工夫◎特に工夫を凝らしたのが、ケースについて。本来、ケースは3Dプリンターで作っていましたが、量産では樹脂成型を使用します。そのための金型代が高価で、ものによっては数十万〜数百万円します。簡単に修正も出来なくなってしまうのも問題です。

そこで今回は、中国製の基盤会社に依頼している基盤を利用することにしました。10センチ×6.5センチの基盤が、穴を開ける等の加工も含めて1枚50円くらいです。

基盤を3枚組み合わせて、その間に黄金のスペーサーを挟んでいます。デザインも白と黒のツートンカラーで、スタイリッシュな仕上がりになりました。低頭ネジはAmazonで注文しました。

さらに設定用のツールも、ログイン機能を付けたり、新機能を付けたりしてシェイプアップしており、製品化に向けて整えているとのことです。

今後は、クラウドファンディングを計画中。興味がある方、活用アイデアがある方は是非教えて下さい!との事でした。

 

ゼンマイ仕掛けのデジタルムービーカメラ

airpocketさんからは、70年前に製造されていた8ミリフィルムのムービーカメラをデジタルカメラに改造するというプロジェクトについてご報告いただきました。

実際に改造したカメラで撮ったという動画はアンティークの雰囲気がありますが、Raspberry Pi Zero 2というボードで制御、イメージセンサーにはRaspberry Pi Camera V2を使って8ミリカメラからの映像を録画している、という構成になっています。

フィルムカメラをデジタル化する、というプロジェクトを始めようと思い立ち、ジャンク品で安いカメラを買って分解して修理して、を繰り返してどんなものを作ろうか想像力を膨らませていたところ、今回使用したカメラと運命の出会いが...!

アメリカ製のBell&Howellという会社のmodel172というもので、70年程前に作られた8ミリフィルムカメラです。当時のフィルムカメラは、フィルムをスプロケットに巻きつけてカメラに取り付けるのが主流でしたが、model172はフィルムをマガジン化しています。

フィルムを外すと、中にお弁当箱みたいな空間があります。この中にバッテリーやラズパイを入れればデジタルカメラ化しやすいのでは?と考えたそう。見た目、構造を含めてまさに運命の出会いでした。

古い機械なので、まずは分解してクリーニング。動きが渋い箇所も、構造がシンプルなおかげなのか掃除をするだけですいすい動くように。


必要なものを収めるために大雑把な設計を考えた後で、構成図を作成しました。

8ミリカメラ側のレンズから直接イメージセンサーに光を入れてオリジナルの光学系を活かすため、イメージセンサーに元々付いているレンズは外しています。さらにゼンマイ式のムービーカメラは、ゼンマイが回るとシャッターが1秒間に16回動く仕組みです。シャッターが開いた瞬間に写真を撮らないといけないため、シャッターの動きをフォトリフレクタというセンサーで読み取っています。

要素技術を検証した後は、実際にボードを作成していきます。ラズパイを動かすために9ボルトの電源を5ボルトに落とすための降圧コンバータ、センサー、撮影条件設定用のDIPスイッチなどをパズルのようにしてボードに入れ込みます。

さらに、出来上がったボードを筐体へ。ボードを削ったり等の工夫を繰り返し、何とか詰め込むことに成功!

完成しました!
ソフト面でも苦労したとのことですが、OpenCVで写真を撮って写真を繋げて、MP4に出力するというプログラムを組んでいるそうです。

撮影時間がワンカット5秒までしか撮れないのは、ラズパイのメモリが不足していて、それ以上になると処理がかかりすぎるから。工夫すれば、もう少し長時間撮影できるようになるかもしれないとのことです。

今回の制作を通して、8ミリカメラの魅力を再確認したといいます。不便さはありますが、その不便さが逆に気持ち良く、緊張感があるとのこと。実際、撮影はとても難しくNGの連続でマニュアル撮影の難しさを実感したそうですが、よし、撮るぞ!となる面白いカメラに仕上がったそうです。

airpocketさんは次の活動として、100年前のスチールカメラを改造しようと取り組んでいるそうです。完成が楽しみです!

 

まとめ

春休み編でも、創意工夫に富んだ自由研究の数々をご共有いただきありがとうございました!
ここからは、登壇者へのご質問を紹介いたします^^

 

参加者から豊田 陽介さんへの質問

“(Q)こういう情報はどこで入手しているのでしょうか?”
SNS経由で見かけるというのが1つあります。自分が興味ある方をフォローしていると、TLに複数の情報が流れて来るので目に留まりやすいです。デバイス関連では、スイッチサイエンスさんというオンラインサイトの新商品ページを見に行きます。技術情報はコミュニティイベントははてなブックマークのテクノロジーカテゴリやSNSなどですね。

“(Q)たくさんガジェットが、、、! いま1番アツいのはどれですか?”
今日ご紹介した3つのデバイスもそうなのですが、M5Stackさんという会社が出しているシリーズが個人的に扱いやすくて、新商品が出るのを楽しみにしています。種類が多いのと、ボタンとディスプレイがあるとか、ディスプレイが簡素になる代わりに小さいとか、それが剥き出しでなくカバーが付いているので使っていて安心など、使いやすく、という発想で作られているのが良い所です。

“(Q)お仕事ですか、趣味ですか?”
完全に仕事じゃないところでやっていることになります。

 

参加者から発明家の小栗さんへの質問

“(Q)これは実用的ですね。試作品でしょうか、これから販売でしょうか?”
これから世に出していければと思っています。

“(Q)ネーミングとロゴが良いですね。ナイスセンス!”
ロゴはMitzさんのデザインです!

“(Q)ブロックでの編集画面を見てみたいです。センサーはどれくらい種類あるのですか?”
センサーは要望に応じて作っていこうとしているのと、好きなスイッチのオンオフでそれぞれで作ることができます。編集画面を共有します。キーボードを打ったりするのをこのまま並べていけば、あとは忠実に実行してくれるということになります。

 

参加者からairpocketさんへの質問

“(Q)良い発想!いいですね。素人で分解とかすごい。お高いんじゃないのですか?”
全部ヤフオクで買ってますが、程度にこだわらなければ1000円とかで買えます。100年前のものでも1000〜5000円で買えます。

“(Q)ハード未経験者なのですが、ハード面でかかる金額は?”
カメラが3000円くらい。ラズパイはなかなか手に入らないのですが、手に入れば3000円くらい。あとは細かい所を入れても3000〜4000円くらいでしょうか。3Dプリンターが必要なので、持っていないとその分はかかります。

“(Q)画像は加工しているのですか?アンティーク調のエフェクト?”
基本未加工です。多分、ピントが合っていないとか、FPSが16でかなりゆっくりめだったりとか、ホワイトバランスも適当なのでそれがいい感じに見えているのかな、と自分では思っています。

“(Q)ジーって音が良い!”
当時のカメラはサイレントなので音は後付けですが、撮影時に鳴るゼンマイの音を別録音して動画に合せています。

 

参加者から皆さまへの質問

“(Q)エンジニアとしてのこだわりは?”
小栗さん:小学生の時に新しい物を作って、周りが驚いてくれた時の感覚を今も忘れずにやっています。
豊田さん:今日の自由研究もそうですが、面白いものを見つけたら出来るだけ見た目でわかるもの、動画でわかるものにして皆に反応を貰って、さらにモチベーションに繋げる。それが自分のこだわりというか、流れになっています。
airpocketさん:こだわりってそんなにないんですが、モチベーションの話で言うと僕はコンテストが入口だったので、常にものをつくる時にどのコンテストに出してやろう、と思うことで作りたいもののイメージがまとまってくる面はあるかもしれないです。

イベントレポートは以上となります!次回の自由研究発表会は夏休み編を企画しています。
次回のイベントもお楽しみに♪