2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
WebエンジニアがIoTにも手を広げる方法(全1記事)
リンクをコピー
記事をブックマーク
青山新 氏(以下、青山):ポケットチェンジの青山です。今日は「IoT技術を利用したサービス開発の裏側」ということで、ポケットチェンジのこのサービスをどう作ってきたかということをお話しさせていただきます。ここに「美大卒のWebエンジニア」と書いてあるんですけど僕は美大を出ています。
今日はIoTでみなさんけっこうスタイリッシュなInternet of Thingsをやっていましたが、Ioの部分があまりなくてTばかりの発表になっているという感じですがよろしくお願いします。
今日の目的としては「もともとWebエンジニアだったメンバーが、どうやってハードウェアの世界に挑戦して現実世界とつながるプロダクトを生み出していったのか」というところを話していきます。みなさんも言った通り意外と泥臭いということをわかってほしいなということと、自分にもできそうだと思ってもらいたいなと思いまして、あまり難しいことは書かないでゆるい感じでいきます。
「意外と泥臭いのは我々だけ?」とか「自分にできそうと思っている人を採用したいな」という目的があります。
僕は東京芸大の油絵を出ていまして、そのあと「絵はもう無理」みたいになってメディアアートに転向してしまいました。「アーティストになりたいな」とも少し思っていたんですけど、「エンジニアのほうが楽しそう」ということでエンジニアになっています。最近では主にハードウェアやファームウェアまわりなど、この会社のことをほとんど1人でやっているので、これを見ておもしろかったらヘルプに来てほしいなと思っております。あとは代表取締役をやっています。
ポケットチェンジというサービスを知っている人がいるかわかりませんが、いますでしょうか?
(会場挙手)
ありがとうございます。
これは旅行で余った外貨を電子マネーに交換できる端末で、全国の空港駅に50台ぐらい設置してあります。余ったいろんな外貨や日本円も入りますが、ジャラジャラ入れていただくとSuicaやAmazonギフト券に交換できます。
ちょっと映像が古いんですが、イメージを掴むためにこういう感じのものですというものをお見せします。
(動画が流れる)
何でもいいんですが、こうやって機械に小銭をジャラジャラと入れますと、いろんな複数通貨が混じっているのですが、自動的に計算をして、この映像の場合は楽天Edyにチャージして終了、というサービスです。
筐体の構成なんですが、この筐体はだいたい社内で板金で作っています。プリンタだったりここがコインメックですね。コインをカウントする部分です。ここがビルバリで、紙幣をカウントするところです。これは既製品を使っています。ここがコインエスクロというコインを一時保管して返却するのか金庫に落とすのかを選べるデバイスですが、これは自社で作っています。
システム構成なんですが、ほぼWeb技術でできています。まず筐体の中でNUCというPCが動いており、それにChromeが動いてまして、ChromeとNode.JSがWebソケットで通信してNode.JSはUSBでシリアル通信で基板とやり取りをしてデバイスを動かして、Node.JSが同時にREST APIでAWSのほうに行っています。
AWSのほうでポイント交換をしたり決算をしたりしています。使っているのはSORACOMですね。今日はSORACOMさんがいらしていますが、SORACOMさんのネットワークを使っています。
どうやって作っていったのかということなんですが、3年、4年前ぐらいに前の会社が一旦バイアウトして仕事が落ち着いて、「もう1個新しい会社をやりましょう」ということでいろいろ考えていたんですが、いつも旅行でコインが余るので空港でいらないコインを集めて電子マネーに交換したら儲かるじゃないかというアイディアがありました。
普通に窓口でやったら儲かりませんが、キオスク端末だったら運用費が掛からないから利益が薄くても儲けられるんじゃないかと。「運用費が掛からないと思ってた」というやつですが、そういうゆるい考えで始めました。
調べてみると、まずコインを仕分ける部分はそう簡単に作れないでしょうと。そこに行ってしまうとエンジニアとしてはおもしろいかもしれないけど、最初からいくと大変なので、海外のコインを扱える機械を探したんですが、コンラックスという会社の機械なんですが、こういった機械を使うと仕分けられるらしいというのを知って、営業の人を呼んで聞いたところ「これは3通貨しか対応していないです」「こっちは2通貨しか対応していないです」と言われました。
我々は5通貨ぐらい対応しないとマズいよねということで、つないだら5通貨対応になるんじゃないかと。
普通はつながないんですが「つないでもいけるかも」みたいなゆるい考えで始めました。
最初に、どういうふうに動くかというテストだけをしています。
調べたらPythonで動くらしいので、まずはGitHubからコードを持ってきてテストをしました。「いけそうかな?」というところですかね。
最初でいけそうということで夢が広がって「こういうのを作っちゃおうぜ!」ということで絵を書いたところです。
ホワイトボードに絵を描いて、実際にCADで3DCGまで作ってやる気満々な感じでいろいろ考えていきました。
これはアルミフレームです。とにかく最初はテストをしないと無理でしょうということで、アルミフレームにいろいろな部品をくっつけて、実際に動くのかどうかテストをテストしました。こういうアルミフレームを一番最初に計画しました。
これなら簡単に寸法を取れるので、アルミフレームで始めようとやっていたのが最初です。
作ったのはこんな感じですね。途中でやる気がなくなって上とかがなくなってますけど。
(会場笑)
「これでテストできるからいいじゃん」ということでアルミフレームにパソコンをくっつけて、ちょっと写真だとよく見えませんが、ここに2つのコインカウントの機械がくっついています。
次のイメージは何を作らないといけないだろうと考えたときに、まずはここを作らないとコンピュータにデバイスがつながりません。
コンピュータについているのはUSBぐらいしかないのでまずはここを作らないといけないなということでいろいろ調べました。
秋月というお店に行ったらUSBをシリアルに変換できるやつがあるらしいぞということで、いっぱい買ってきて手でユニバーサル基板にくっつけて、会場にも持ってきていますが、機械を作りました。そのあと、もうちょっと良くしようということで、今度はこういう機械を作りました。
これはArduinoというチップで動いています。
ここからは初めての経験で完全に素人だったんですが、基板CADというものをいじったらちゃんとしたものが作れるらしいということを聞いて、基板CADを勉強しようということでいろいろ探したんですが、みんな100万円くらいしました。これは無理かなと思っていたんですが、実はオープンソースでけっこう良いCADが出ていまして、「これを覚えればなんでもできるじゃん」ということで、オープンソースのKiCadというものがオススメです。
みなさんも勉強してみると、こういったものがすぐに作れるようになると思います。
こちらは最近の基板ですね。
基板はずっとKiCadで書いているんですが、これは中国で製造したときの製造チェックシートです。こういった感じでまぁまぁまとまったかたちになってきています。チップはARMのSTM32を使っています。
では、工夫したところを順番に喋っていきます。旅行の最後にいろいろなコインが手元にあると思いますが、一枚一枚入るか入らないかを考えながら入れていたら疲れてしまうので、いらないコインは全部ジャラっと入れて、あとは忘れたいですよね。
ということで、コインをジャラっと入れるような口を作りたいなということで、いろいろ既製品を探したんですがそんなものはありませんでした。
この部分をどうやって作ったかという話です。
最初は引き出しみたいなやつでコインを中でボロボロ入れて引き出しを閉めてたら中のペリカンの機械に流れるという機構が作れれば、これでもうできたじゃんということでこうしようと思っていたんですが、実際やってみるとボロボロ落ちてしまいます。これは板金業者に作ってもらいました。ただ、手で閉めるんですが……ちょっと開いてるとかですね。
(会場笑)
これではだめです。
次はこちらですね。こちらの機械を板金業者の人と調整しまして、勝手に開いてきてコインを入れると中にコインが落ちる機構にしようということで、これならギリギリサービスできるでしょうということでOKというかたちになりました。
サービスを初めてみたんですが、お客さんは急いでいるのでコインがこういう引き出し型だとジャラと入れ過ぎてしまいます。
大きな瓶を持ってきてギュウギュウまで詰めて思いきり閉めてしまうとすぐにコインが詰まることがあるので、こういうシールを貼って苦し紛れにやっていたんですが、これはちょっと無理そうだということになりました。
現在の姿は駅の自販機みたいになっていまして、この小さいスリットがここでソレノイドで開閉するようになっていて、中にコインをボロボロ投入して、こちらから入り込まれていくというものを作りました。これも全部3Dプリンタでできています。弊社のデバイスは筐体が50台ぐらいしかないので全部3Dプリンタでこういった部分を出力して作っています。
次にコインの一時受け機です。
これは何なのかと言いますと、コインをジャラジャラ入れた後にいっぱい溜まるんですが、レートが良くなかったりした場合に「キャンセルしたいから返して」ということがあると思います。そのときに大量に入れたことにより一気に返却しないといけない。もしくは金庫に落とさないといけない。
いろんな自販機のデバイスを探したんですが、これほど大量のコインを一気に出したり一気に金庫に入れたりするようなデバイスはどこも売っていませんでした。なので我々が作るしかないという話になりまして、ちょっと考えました。
最初はこれですね。これはカップになっていまして、ここにコインを入れてこっちに回したりこっちに回したりすればできるよねということで、最初に考えました。
次がこれです。
もう少し横側にモーターを移せばサービスができるだろうと。これで実際に少しサービスをやっていました。
最後のやつがこういった筒形にしてコインをこっちに落とすかこっちに落とすかという機械を作れればもっといいんじゃないかということで作ってみました。
次にこの機械を作りまして、これは全部TechShopという場所でアクリルを自分たちで切ってきて、僕たちが作りました。こういった感じでこういったものが実際に機械に入ってしばらく1年ぐらいのスパンで動いていました。
これが現在の姿なんですが、スライドレールのようにしてコインを前後に移せればいいだけじゃんということに気付き、板金業者の人と協力をしながらこういった形のものを作りました。今はちゃんと安定して動くようになりました。
今は国内の空港や駅中や街中に50台ぐらい設置されて運用しています。
ちょっと時間があまりないのでサクッといきますが、次に日本円だけのコインを扱うようなサービスも作れるんじゃないかということで、「ポケペイ」というオリジナル電子マネーを作れるようなサービスも作っています。
この筐体技術を使って、スーパーだったりいろんな場所で使えるハウスマネーを簡単に発行できるプラットフォームを作るサービスをやっています。
こういったかたちで決済をできるデバイスを作って、決済ができるような仕組みを作りました。
最初は社内市場みたいな感じでここにQRコードを貼って携帯の決済ができるようにして遊んでいたんですが、やっぱりレジデバイスを作ろうということになりました。
どうしても紙QRコードだと拒否反応があると。「お店が持てる決済機があるといいんじゃない?」という話がありました。「非常に安くできればいいんじゃない?」とか、あとは「田舎のおばあちゃんのお店でも使えるようなネットワークがなくても動いたりしたらいいんじゃないか」、といった案が出て考えていたんですが、さすがに決済機を作るのは無理です。
さすがにそんな簡単じゃないということで一旦諦めていたんですが、弊社の深町というエンジニアが「え? なんで作らないんですか?」みたいなことを言ってきて「じゃあ作るしかない」ということで、仕方なくハードウェア屋さんに見積もりを出したんですが「最低でも3,500万円ですよ」と言われてしまいました。
(会場笑)
無理ですねということで、自分で作りましょうということになりました。
(会場笑)
最初はサポートしたい機能がこういったもので、先ほどクックパッドさんでJWTが出てきて「あ、すごい。同じだ」と思ったんですが、我々もJWTでQRコードを作るようなかたちで、ネットワークなしで動くQR生成機を作っています。このESP32というものを使って先ほどの実装をしていました。
KiCadがけっこう上手になってきたのでサクッとこういうのを出せて、CADもまぁまぁうまくなってきたのでカバーも作って、テストデバイスを作りました。
最近ではもうちょっと良くなってきています。金額を入力するとQRコードが出てきまして決済するとやります。これはNFCのカードエミュレーションに対応していまして、タッチすると決済できます。
ちょっと後ろが見えないんですが、「ありがとうございました」と表示されるので、お店の人も決済があったということがわかるようなデバイスです。このデバイスは非常に安く作れるんですが、そういったものを作りました。
最近では次期バージョンも開発しています。
他にもいろいろやっていまして、ちょっとこれは遊びなんですが、「IoT冷蔵庫?」と言ってIoTでもなんでもないんですが、QRコードが出てきてアプリで決済すると先ほどの小さいレジの構造と一緒なんですが、鍵がパコっと開きます。
鍵が開くのでリポビタンDが取り出せます、というおもちゃですね。営業の人に「売れないですか?」と聞いているんですがまだ売れてないです。
(会場笑)
先ほどコインの識別の部分を最初からやったら大変だろうということだったんですが、いい加減そろそろそこもやったらどうだと思って、こういったコインの画像認識と金属認識で分離するような機械を今作っています。こういうものもデバイスにできたらおもしろいなと思って作っているところです。
ちょっと長くなりましたが、ポケットチェンジではこのように泥臭くサービスをつくりたい、何でも作れる「かもしれない」とちょっと勘違いをしているちょっと無謀な人を募集しています! おもしろそうだと思ったらぜひいらしてください。
以上です。ありがとうございました。
(会場拍手)
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05