LoginSignup
4
1

売場の品切れを手軽に業者さんにお知らせする仕組みをつくりたい!

Last updated at Posted at 2024-01-24

私はとあるスーパーで商品の仕入・管理の仕事をしている女性会社員です。
売場の管理については、色々な課題が生じます。

私の担当している部門では商品の「発注」は基本的に行っておらず、在庫管理まで各業者さんにおまかせする「消化仕入れ」で運用しています。
「消化仕入れ」については以下の記事(第2章 消化仕入れって?)をご参考にしてください。

1.テーマの背景として

改善が難しい課題の一つとして、商品が売れないと仕入として計上されず、納品業者さんのロスになってしまうという仕入特性があります。
よって賞味期限の短い商品は控えめの数量で納品をされてしまい、逆に賞味期限が長い商品だと在庫管理が業者さんの力量次第になるため、どちらにしても売場での「品切れ」が散見されています。

業者さんとしては納品時に、店舗従業員に声をかけないで納品することができるので、従業員とのコミュニカーション不足にもなりがちです。
店舗側としては自分たちで仕入れた買取商品の管理が忙しく、業者さんに連絡するのはひと手間がかかるので品切れ状態のままにされてしまいがちです。


そこで今回はTeachable Machineを使ってプライスカードの画像認識を行い、Node-REDLINEと連動させて品切れ時に対象業者さんへの連絡を手軽に行う仕組みを作りたいと思います。
業者さんへの連絡手段として普段活用しているemailと今後の手軽さ重視のLINEの両方で使えるシステムを作ることを目標とします。

品切れ通知のイメージ

品切れ通知のイメージ.png

2.Teachable Machineの画像認識機能でプライスカードの情報を学習させる

まずはTeachable Machineにログインします。

面倒な会員登録等は不要ですが、登録しない分サイト内に前回までの記録が残らないので、取得したURLは必ずどこかにメモ書きしておく必要があります。
ただし本当に手軽に機械学習させられるので、私はメモに残しておらず、その都度新しいURLを取得しました。

プライスカードに記載されている業者名を学習させました。

TeachableMachine.png

これでこのモデルのリンク先が簡単に取得できます。
https://teachablemachine.withgoogle.com/models/〇〇/

3.FlowFuseの登録

こちらにアクセスしてアカウントを取得します。

残念ながらFlowFuseのお試し期間が30日から14日間に短縮してしまったようです。今後、本格的に使おうとする場合は有料になるので、使い勝手をみて本登録を検討しようと思います。

FlowFuseに登録が完了するとNode-REDのプログラミングの画面になります。


今回はこちらの記事を参考に作っていきます。

Node-REDには必要最低限のノードしか入っていないということで、先に欲しい機能をユーザー設定のパレットの管理から検索して追加します。
image.png

ノードを追加を押すと複数の候補が掲載されています。
私はここでTeachable MachineLINEを追加しました。

image.png

最初につくったフローはこちら

image.png

LINE Botを使いたかったので、LINE DevelopersでNode-RED用の新しいチャネル登録をしました。

しかしLINE Botとの相性が悪いようで・・・

流れはこちら

webhookの部分でLINE上で画像認証した画像を送り
http reqestその内容をつないでもらい、
teachable machineで画像認証し、判定してもらいます。

ここで要求中とでたので、ここまではどうやらつながっているようですが、templateに行ったタイミングでサーバーの接続が切れましたの表示がでてしまいました。
その後、何度やっても接続が切れてしまい、LINE Botに返事が返ってくることはありませんでした。

image.png

おそらくLINEから画像認識を受信したことで、サーバーがダウンして接続が切れてしまったようです。

4.cameraのノードを使ってemailにも出力できるように作り直し!

cameraスタートに変更し、出力手段もLINEだけでなく、新たにパレットの管理から追加してemailも選択できるようにセッティングしました。


手駒銘茶の結果.png

しかし結果として

メールにもLINEにもつなげることはできませんでした。 ①`LINE`とつながっている`ReplyMassage`は無反応。 ②`email`でつながっている補充依頼メールはユーザーIDとパスワードが認証されないとの結果でつながりません。(`email`の場合は参考資料がなかったためどこがNGなのか不明) ③`debug`のみ、つながりました。

先程使っていたLINEReply messageではLINEから送られてきたものへの返事という意味があるので、スタートをcameraにしたのでつながらなかったようです。
そこで別の方法を検討しました。

この方法を使えば、cameraからLINE Notifyを通してLINEにメッセージをおくることができそうです。

5.出力部分をLINE Notifyに変更

つくったフローはこちら

LINE Notify.png

Node-REDに対応したLINE Notifyに新たに登録をしました。

出力部分のノードの内容のメモ

switchで情報を仕分けします。今回は2社なので2パターンと読み取れなかった分をdebugにいくように設定しました。

Switchの中身.png

LINE-NotifyはTeachable machineで認識した文字をPayloadできないようなので
直接メッセージに送りたい内容を入れました。トークンはLINE-Notifyの登録時に取得できます。(メモをとっておく必要があります)

LINE Notifyの中身.png

実際に届いたLINEの内容はこちら

LINENotify加工.jpg

6.まとめ

cameraを使っての画像認識はできましたが、パソコンのカメラでは文字が認識がしにくいのか、2社にも関わらず精度も正直イマイチでした。(最初のラインのカメラで送った分は認識できていました)

担当している加工品でも300社以上の業者様の登録があるので、camereを使ったプライスカードの画像認識では判別するのは難しいのではないかと思います。ここをLINEカメラの文字認証機能をつかった方法でも試してみたいと思いました。

また今回の目標は品切れ連絡を手軽にするというのが第一目標だったのですが、「事務所に設置しているパソコン」のカメラが必要になると、手軽にとは言えないかなと思いました。

今回はTeachable Machineを使いたかったので、連携していて扱いやすいNode-REDで動かしてみましたが、次はLINEと相性の良いMake売場の品切れを手軽に業者さんにお知らせする仕組みを作成してみたいと思いました。

最後まで読んでいただきありがとうございました。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1