RCC 3回生の RND(twitter: @RND_cpp)です。
今回はRCCの非公式マスコットキャラクター オロロちゃんを使った
ドリンクサーバについて書きます。
・オロロちゃんとは
“嘔吐が大好きという非常に下品な設定によってアイデンティティを確立しています.”
ほろあま記念館 より引用
オロロちゃん(@ororo_bot)
オロロちゃんは ほろあま氏(@horoama)が考案したオリジナルキャラクターで,Twitter Bot として稼動しています。
その独特の雰囲気から多くのRCC会員に愛されている[要出典]マスコットキャラクターです。
・オロロちゃんドリンクサーバプロジェクト
RCCでは過去にもドリンクサーバに類する制作物が作られてきました。
RCC コーヒーサーバ(メカトロニック・ブログ コーヒーサーバを作りました)
[youtube https://www.youtube.com/watch?v=90l0AWPvGQg&w=416&h=416]このコーヒーサーバはコーヒーの注文を受け付けるウェブユーザインタフェースを持ち,注文を受けるとコーヒーの抽出を行ったり,コーヒーを注いだりする機能をもっています。
今回は,このコーヒーサーバを参考に,
より単純な機構でメンテナンス性の高さを意識したドリンクサーバの制作を計画しました。
またマスコットアプリ文化祭が迫っているため,せっかくなのでマスコットアプリ要素を含んだものにしようということで計画が膨らんでいきました。
マスコットアプリ文化祭用に制作する前段階として,オロロちゃんへのリスペクトから,オロロちゃんをマスコットとしたオロロちゃんドリンクサーバとして学園祭への展示を目標に,暇なRCC 3回生数人で制作を進めました。
・オロロちゃんドリンクサーバの概要
[youtube https://www.youtube.com/watch?v=jfauRpaCAns&w=416&h=416]オロロちゃんドリンクサーバの紹介動画
オロロちゃんドリンクサーバの概要については上の動画をご覧ください。
オロロちゃんドリンクサーバはRaspberry Pi と,Arduino,3Dプリンタで印刷した水止め用の部品とダンボールなどで構成されています。
部室の3Dプリンタ
全体像
飲み物を高い場所に設置し,位置エネルギーで水を供給します。
・部品の作成
部品は設計・3Dモデリングなどから行いました。
飲み物の通るチューブをはさみ,てこの原理で開け閉めすることで飲み物を注ぐ・止めるといった制御をサーボモータで実現します。
力学系のモデル
3Dモデリング
実際に印刷し,動作をテスト。計算どおり,きちんと水が止まることが確認できました。
オロロちゃんの顔の部分も3Dプリンタを用いて作成しました。
試作品
頭のパーツを分離して印刷することでマスコットアプリ文化祭に流用しやすい設計に。
・Webユーザインタフェース
Git Hubでコードを公開しています (https://github.com/RNDcpp/drink-server)
WebサーバはRubyを用いて Sinatra + Active Record を使って書きました。
UIはReact.jsを使って書いています。
サーバでは注文内容と飲み物の種類について管理しています。
飲み物を設定したり交換したりするときにはスマートフォンで写真を撮った画像をアップロードし,飲み物の選択画面の画像として使うことができます。
・ハードウェア制御
ハードウェア制御はRaspberry Pi 上で動作する Pythonで書かれたプログラムと装置のサーボモータを制御するArduino上のプログラムで行っています。
Raspberry Pi 上で動いているプログラムが同じRaspberry Pi 上のWebサーバにアクセスし注文を取得し,またオロロちゃんの口の部分に取り付けられたスイッチの入力を受け取ってArduinoにシリアル通信で命令を送ります。
・今後の展望
マスコットアプリ文化祭に向けて改良を進めていきます。
次の記事はひっこさんの公式ページを綺麗にしたお話です。