CITL-TokyoTech

Logo Center for Innovative Teaching and Learning, Tokyo Institute of Technology
JP
EN

イベント

工大祭MATLABものつくりコンテスト

概要

MATLAB/Simulinkの課外活動での利用促進と、多様な使い方の提案を目的として、MALAB/Simulinkを活用したものつくり展示を対象としたコンテストを開いています。
2017年の第1回MATLABものつくりコンテストでは、以下の4作品が受賞しました。応募いただいた皆様、また投票にご参加いただいた皆様、どうもありがとうございました。

応募作品・結果一覧

来場者投票賞 2作品(賞品:MATLAB Tシャツ・ノート・ボールペンセット)

『スーパーMATLABラザーズ』(遠藤眞覇人さん作)

作品紹介:MATLAB上で動作する横スクロールアクションゲームです。MATLABロゴを操作して、さまざまな外乱を倒しながら伝達関数の安定化を目指します。Figureのコールバック機能をうまく使い、キャラクターの操作、敵の動きなどを再現しています。また、GUIDEにてステージエディタも作っているため、ユーザが自由にステージを製作することも可能です。

TAからの講評:まさかMATLABのFigureをゲームエンジンにしてしまうとは思わず、そのアイディアに脱帽しました。ステージのあちこちに制御工学やMATLAB/Simulinkネタが隠されていて、マニアにはたまらない作品です。実際にプレイしたところ、Figureウィンドウとは思えないほど滑らかに動作している上効果音まで実装されており、作りこみの過程での苦労がうかがえます。ステージエディタ等の周辺ツールまで徹底してMATLABで作ってしまう姿勢も素晴らしいです。

『双葉車』(五十嵐純さん作)

作品紹介:一見して、白いプランターに2つの植物が生えているような作品ですが、実は「歯車」です。歯がたった2枚しかないのに回ることができます。しかも、片方の歯車を上下ひっくり返すと同じ方向に回る歯車(!?)になってしまうのです。歯形をMATLABを用いて計算し、噛み合いが設計通りに行われているかを解析しました。また、その歯形データを3DCADへ移行するためにDXFデータへ変換して出力するようプログラムしました。なお、今回展示するのは2枚歯の歯車ですが、理論上1枚歯・3枚歯でも可能であることをMatlabを使用して示せました。4枚歯以上では同様の動きはできないということも示せました。

TAからの講評:この作品のおもしろさは、動画を見るとよくわかります(https://youtu.be/yqGsp5LxKFg)。通常の歯車では考えられない、接点のすべりを逆に利用できる歯車です。まずこのような形状の歯車が成立するということ自体が驚きですが、難しい立体形状の接触解析をMATLABで行うことで、2枚歯以外の場合にまで一般化して解析できている点はTAとして特に評価しています。MATLABは可視化機能も充実していますので、結果のアニメーション作成にもチャレンジしてみてはいかがでしょうか。

MATLAB TA賞 2作品(賞品:MATLAB ルービックキューブ・ノート・ボールペンセット)

『Raspberry Pi アンプシミュレータ』(渡邉郁弥さん作)

作品紹介:Raspberry Pi上で動作するアンプシミュレータです。Equalizer, Reverb, Overdriveといったエフェクト機能が搭載されています。Androidを介して操作することができます。Raspberry Pi内部で動作する部分とAndroid上で動作するコントローラの実装はすべてSimulinkで実現しています。Hardware Support Packageを利用することで、音声信号の入出力の部分から音声信号処理、GUIによる操作などすべてをSimulinkで実現することが可能となりました。

TAからの講評:普通に開発すると、Raspberry Pi上で音処理のプログラムをC言語などを使って自分でコーディングし、さらにAndroidアプリをJavaで作る必要があるものを、Hardware Support PackageとAndroid Targetを巧みに組み合わせて、Simulink上で手軽に完結させている点が素晴らしいです。MATLAB/Simulinkは企業の開発現場においてもフィルタ設計や実装に使用されています。この作品はその良いデモンストレーションになっていると思います。なお、Raspberry Pi Hardware Support Packageの音処理の遅延を軽減する方法については、こちらのリンクもご参照ください(https://jp.mathworks.com/matlabcentral/answers/164113-high-latency-for-audio-use-on-a-raspberry-pi-using-simulink)。

『MIZUHOv2』(井土拓海さん作)

作品紹介:マイクロマウスというロボット競技のための機体です。自分で考えながら迷路を走行し、自力でゴールまでたどり着きます。ロボットの機体制御のためのシステム同定、制御系設計、シミュレーションにMATLAB/Simulinkを用いました。ただ迷路を解くだけではなく、導いた最短経路上を高速に走行することができます。

TAからの講評:ロボットをしっかりとモデリングして制御している模範的な作品です。ロボット競技というと、現物での合わせこみに時間をかけがちな印象がありますが、この作品はMATLAB/Simulinkを用いてシステム同定やシミュレーション効率的に行ったため、現物を使ったソフトウェア開発の期間が短縮できたと聞いています。MATLAB CoderやSimulink Coder, Embedded Coder(いずれもTAHライセンスで使用可能です)を使用していただくと、MATLABスクリプトやSimulinkモデルから直接C/C++のコードを生成することもできますので、ぜひそちらもチャレンジしていただき、さらなる効率化を目指してみてください。

受賞された皆様、おめでとうございます!