映像データと倉庫管理システム(WMS)を連携させてみた

特集

セーフィーの会社説明

セーフィー株式会社(以下、「セーフィー」)は、カメラが映した映像をクラウド上に保存し、いつでもどこでもPCやスマートフォンのアプリで視聴できるサービス「Safie(セーフィー)」を提供しています。また、クラウドカメラの映像データだけでなく、AI活用や他システムとの連携も積極的に行い、例えば小売・飲食・建築・土木業界など、あらゆる業界・現場のDX化のお手伝いをしています。

物流業界とDX化

そんな中、特に引き合いが増えている業界の一つが物流です。EC需要が増加している一方、2024年問題により働き手不足や高齢化が進んでおり、輸配送や倉庫作業のDX化が急務と言われています。

特に、EC倉庫での出荷作業はミスや予想外のトラブルが生じやすい工程のひとつです。正確な検品や丁寧な梱包をした上で、正しくお客様の元へ届けることが「当たり前品質」として求められますが、前述の人手不足や荷量の増加により、とりわけ人手のかかる工程では作業ミスがどうしても起きてしまいます。だんだんと「当たり前品質」を維持することすら困難になってきている中で、より正確で丁寧な物流サービスを求められている物流業界に対し、私達セーフィーは映像データを活かして何か貢献できないか、と考えました。

WMSについての説明

ここで倉庫内で使われるシステムについて、ご存知でない方のために少し触れておきましょう。

多くの倉庫ではWMS(「Warehouse Management System」の略。倉庫管理システムのこと。以下「WMS」)を用いて、入出庫業務や在庫の管理が行われています。例えば入荷検品の際に、入庫予定データと実際に届いた商品の突合が可能となったり、在庫の引当や賞味期限管理、効率的なピッキングや出荷などができます。


他、ハンディターミナル(「Hand Held Terminal」の略。以下「ハンディ」)をWMSと連携させることで、入出荷時の検品や棚卸などの検数を効率的に行うこともできます。WMSとハンディをはじめとするマテハンとの連携は、倉庫作業のDX化にはなくてならないものだと言えるでしょう。

映像データとWMS連携の必要性

「Safie」には「Safie Viewer(セーフィー ビューアー)」という映像管理画面があり、1秒単位で再生時刻を指定できます。そして指定した時刻から動画を再生するためのURLを生成・シェアすることもできます。


物流業界のお客様から映像活用のご相談を受ける中で、「都度『Safie Viewer』上で倉庫内の工程を撮影した映像を探しに行くのではなく、カメラの映像とお客様の業務で活用されているシステムを連携させ、映像をもっと簡単に見えるようにして欲しい」というお声をいただくことが増えてきました。


「Safie Viewer」ではカメラ固有のID(デバイスID)と時刻をもとに、見たい時刻からの動画を再生するURLが生成できるため、これを利用することでカメラの映像データとWMSを連携できるのでは?(通称「WMS連携」)と考えました。

倉庫にやってきた

「カメラのデバイスIDとWMSのタイムスタンプを使えば、見たい工程の動画を簡単に再生できるのでは?」というアイデアを実際に確かめるべく、まずは福井県にある倉庫で試してみることにしました。

こちらの倉庫は約300坪あり、ここでセーフィーのカメラを出荷しています。一般的な倉庫と同様、WMSとハンディを使った庫内オペレーションが行われています。なおセーフィーならではの特徴としては、倉庫内外のいろいろなところにクラウドカメラが付いており、現場の様子を映像で確認できる点が挙げられます。

倉庫でも、消費者や荷主から出荷内容についての問い合わせを受けることがあり、必要に応じて事実確認のため現場や作業の映像を確認していました。

しかし、出荷依頼ごとの検品映像を確認しようとしても、WMS上の検品作業時のタイムスタンプを元に「これかな?」とアタリを付けて探さざるをえませんでした。映像を探し出す所要時間は15分ぐらい、問い合わせへの回答次第では1件あたり1時間かかることもあったようです。

なお、今回映像データを連携する先のWMSは、倉庫お手製のMicrosoft Access製WMSになります。

WMS連携のセットアップ

「WMS、そして全てのカメラの映像を1つ1つ確認するなんて、正直面倒だしやっていられない…! 1クリックですぐに映像を見たい!」ということで、倉庫内に設置したカメラの映像とWMSが想定通り連携できるかやってみました。

※今回ご紹介する方法は、最小限のコーディングで済む簡単な方法です。実際にVBAやMicrosoft Accessに詳しくないメンバーで実装ができました。お使いの環境等に応じて、取り入れやすい方法を取り入れていただければ幸いです(よい良い方法を見つけた方は是非教えてください!)。

下記の3パターンを例に、ご自身の倉庫のレイアウトやオペレーションと照らし合わせながら、実装イメージを掴んでいただければと思います。

  • パターンA:
    • 全ての作業台を俯瞰する引きのカメラ1台で、全ての検品作業を捉える
  • パターンB:
    • 複数の作業台とそれぞれに対応したカメラとハンディ、検品作業を紐付ける
  • パターンC:
    • 作業者とカメラ、ハンディ、検品作業が全て1:1の対応で紐付ける
      (検品作業の手元の映像が1レコードごとに紐づく)

パターンA:全ての作業台を俯瞰する引きのカメラ1台で、全ての検品作業を捉える

まずは「3台の作業台の様子を俯瞰するカメラ1台とWMSを連携する(1クリックで見たい映像に飛べる)」パターンを実装してみます。最も簡単にカメラとWMSを連携するパターンです。WMSの検品のレコードから、その作業開始のタイミングの映像に飛べるようになることがゴールです。

  • ●Step.1 カメラ設置
  •  ・3つの作業台を俯瞰できるカメラを1台設置します
     ※天井など、引きで映るように設置するのがおすすめです

  • Step.2 WMSの改修
    •  ・WMS内にカメラの映像データのリンクを設定します

  • Step.3 WMS連携完了
    •  ・あっという間に完成です


それでは、1つずつ見ていきましょう!!

Step.1 カメラ設置

  • ・3つの作業台を俯瞰できるカメラを1台設置します

Step.2 WMSの改修

  • ・使っているWMS内にカメラの映像のリンクを設定します

内製WMSにカメラの映像データのリンクを設定します。
実はWMS管理画面上に映像データのリンクを追加するのは超簡単なのです!

①WMS画面上でカメラの映像データのリンクを配置する項目の位置を決めます(今回は最右端に設定しました)。

②列を追加します。

③追加した列のプロパティシートを開きます。
 「コントロールソース」にカメラの映像データのリンクを記載します。(※1 後述)

④「ハイパーリンク」を「有効」にします。

⑤(テーブルでメイン画面を構築される方向け)フォーム側で表示されるリンクをテーブル側でも表示できるようにします。 フォームのデザインビューから追加した列(上記例の「映像」)のプロパティシートを開き、「イベント」タブの「フォーカス取得時」を「イベントプロシージャ」とし、下記をVBAで入力します。

—————
Private Sub (追加した列名の表示)_form_Enter()
Me![(追加した列名)] = Me![(追加した列名)form]
End Sub

—————


※1 コントロールソースに記載する内容について

下記、数式をコピー・アンド・ペーストしてお使いください。

—————
="#https://safie.link/app/streaming/XXXXXXXXXXXXXXXXXXXX?timestamp=" & DateDiff("s",#1970/01/01#,DateAdd("h",0,DateAdd("h",-9,DateAdd("s",-10,[KENPIN_Date])))) & "000#"
—————

数式の中身はこのようになります。

・検品のタイムスタンプをシリアル値に変換
・GMT(グリニッジ標準時)から9時間の時差を考慮し、日本時間に変換
・検品完了時間から10秒前から動画を再生
・映像を見たいカメラのデバイスID(XXXXXXXXXXXXXXXXXXXX)を選択
・上記をもとに、セーフィーの過去映像リンクを生成

パラメータA:「カメラのデバイスID:XXXXXXXXXXXXXXXXXXXX
それぞれのセーフィーのカメラが持つ固有のデバイスIDです。
WMSと紐づけしたいカメラ映像を「Safie Viewer」で表示し、そのページのURLの一部にあるデバイスIDをコピペしてください。


パラメータB:「DateAdd(“s”,-10,[KENPIN_Date]
映像をリンクさせる「検品完了のタイムスタンプ」と「そのタイムスタンプの〇秒前(後)から再生するか」の指定となります。今回の例では、検品完了時刻である [KENPIN_Date] を起点に、その10秒前から動画の再生が開始できるよう、パラメータを「 -10としました。検品完了時刻を起点に、何秒前に設定するかはご自身で自由に調整可能です。

※仮に検品後すぐに梱包が始まる場合、梱包の映像を見るために検品完了◯秒後を動画再生の開始時刻にする、といった使い方もできます。

Step.3 WMS連携完了

あっという間に完成です。以上で検品完了のタイムスタンプをもとに、カメラの映像データのURLが自動で生成されるようになりました。

WMS管理画面上に各商品の検品データと共に「Safie 連携」の項目が追加されたのが確認できました!

これで検品作業の映像データのURLをWMS内に組み込むことができました。

今回のパターンは1つのカメラで複数台の作業台を捉えているため、作業現場全体を俯瞰して見るにはちょうどよさそうですね。

パターンB:複数の作業台とそれぞれに対応したカメラとハンディ、検品作業を紐付ける

先程は全体を俯瞰するカメラ1台で3つの作業台、その全ての検品作業を映していましたが、今回は3つの作業台それぞれの様子を捉えるために、「紐付けるカメラを3台にするパターン」をやってみましょう。WMSの検品のレコードから、各テーブルの検品作業の動画が再生されればゴールです。

各カメラが各作業台①・②・③の様子を映しています(下図参照)。また、各作業台とハンディの組み合わせを固定することで、実際に検品作業を行ったハンディ(=作業台)と連携したカメラの映像データをWMS上で管理することができるようになります。

  • Step.1 カメラ設置
    • ・3つの作業台それぞれに対応するカメラを1台ずつ、計3台設置します
    • ・使用するハンディと作業台の組み合わせを固定します(下図「対応表」参照)

  • Step.2 WMSの改修
    • ・WMSの各レコードに、どのハンディで検品作業のタイムスタンプを取得したかを記録できるようにします(レコードとハンディIDの紐づけ)
    • ・ハンディのIDとカメラのデバイスIDを紐づけます
    • ・使っているWMS内にカメラの映像データのリンクを設定します

  • Step.3 WMS連携完了


それでは、今回も1つずつ見ていきましょう!

Step.1 カメラ設置

  • ・3つの作業台それぞれに対応するカメラを1台ずつ設置します
  • ・使用するハンディを作業台に固定でペアリングします
  • ・ハンディ、作業台、各作業台用のカメラのデバイスIDの対応表を作成します

対応表イメージ

ハンディID作業台カメラ名デバイスID
1テーブル1AAAAAAAAAAAAAAAAAAAA
2テーブル2BBBBBBBBBBBBBBBBBBBB
3テーブル3CCCCCCCCCCCCCCCCCCCC

Step.2 WMSの設定変更

  • ・WMSの各レコードに、どのハンディで検品のタイムスタンプを取得したかを記録できるようにします
  • ・ハンディのIDとカメラのデバイスIDを紐づけます
  • ・使っているWMS内にカメラの映像のリンクを設定します

①WMS画面上でカメラ映像のリンクを配置する場所を決定します。なお、今回はデバイスIDと作業台についても追加します。

②パターンA同様に列を追加します。

③取得してきたハンディIDと作業台、デバイスIDを紐づけたテーブルを作成します。

④作成したテーブルのクエリと元のWMSを紐づけます。

⑤追加した列のプロパティシートを開き、「コントロールソース」にカメラの映像データのリンクを記載します。(※2 後述)

⑥「ハイパーリンク」を「有効」にします。

※2 コントロールソースに記載する内容について

下記、数式をコピー・アンド・ペーストしてお使いくださいませ。

—————
="#https://safie.link/app/streaming/" & [デバイスID] & "?timestamp=" & DateDiff("s",#1970/01/01#,DateAdd("h",0,DateAdd("h",-9,DateAdd("s",-10,[KENPIN_Date])))) & "000#"
—————


パラメータA:デバイスID

こちらは、パターンAでのXXXXXXXXXXXXXXXXXXXXに該当します。パターンBではこのパラメータを変化させることがポイントとなります。

上記実装③にて取得したハンディIDとデバイスIDが紐づけされましたので、そこから  [デバイスID] の紐づけを行う事で各レコードにあったカメラ映像が確認できるようになります。
 

パラメータB:「DateAdd(“s”,-10,[KENPIN_Date]

こちらは、パターンAと同様となります。

Step.3 WMS連携完了

以上を全て完了させると、各作業台のカメラと連動する形で、全てのデータのタイムスタンプ情報に紐付けられたカメラの映像データのリンクが自動生成されるようになりました。本パターンにおいても連携は簡単にできました。

各作業台での検品の映像をWMS上で1クリックで確認することができました。検品作業を行ったハンディごとにカメラが紐づいているため、検品のレコードから作業台①~③のいずれかのカメラに飛ぶことができます。そのため対象の検品作業をした台の特定は、最初のパターンAよりも容易にできるようになりましたね。

パターンC:作業者とカメラ、検品作業が全て1:1で対応する(検品作業の手元の映像が1レコードごとに紐づく)

最後に、作業台ごとにカメラを1台ずつ設置した上で、検品時にハンディで各カメラのID情報をQRコードから読み取り、WMSに連携させるパターンを実装してみます。検品のレコードから、手元の検品作業の様子を映した映像に飛べればゴールです。

●Step.1 カメラ設置

  • ・検品作業を行っている作業者の手元が映るように、作業台にアームおよびカメラを設置します(画像参照)
    • ・カメラのデバイスIDをQR化し、テーブルに貼り付けておきます

  • Step.2 WMSおよびハンディの改修
    • ・ハンディで各テーブルのQRコード(カメラのデバイスID)を読み取った際に、WMSの各レコードに、デバイスID情報が記録されるよう改修します
    • ・使っているWMS内にカメラリンクを設定します

  • Step.3 WMS連携完了


それでは、最後のパターンも1つずつ見ていきましょう!

Step.1 カメラ設置

  • ・検品作業を行っている作業者の手元が映るように、作業台にアームおよびカメラを設置します
  • ・同カメラのデバイスIDをQR化し、テーブルに貼り付けます

※カメラのデバイスIDのQRコード化、および同QRコードをハンディ側で読み取り、WMS側のレコードに追加する改修につきましては、お客様側でのご対応が必要となります。

Step.2 WMSの設定変更

  • ・WMSの各レコードに、各ハンディがスキャンしたQRコードのデバイスID情報が記録されるよう設定します
  • ・ハンディのIDとカメラデバイスIDを紐づけます
  • ・使っているWMS内にカメラの映像のリンクを設定します

パターンCでのWMSの改修は、パターンBとほとんど同じです。ハンディで直接取得したデバイスIDのデータを、パターンB同様にカメラの映像データのリンク情報として取り込めばOKです。

Step.3 WMS連携完了

実際にカメラの下で検品作業をやってみた時の画像がこちらです。検品作業の手元がバッチリ映るような画角で、箱の中身に何がいくつ入っているのかを客観的に振り返ることができますね。

WMS連携を実際にやってみた結果…成功!

今回、カメラの映像データとWMSを連携させることで、見たい検品作業の様子を1クリックですぐに確認することができるようになりました。お客様から問い合わせが来た時にも、該当の出荷の様子をすぐに確認でき、回答までのレスポンスも大幅に早くなりました。検品動画を瞬時に確認できるようになったときの、この爽やかな笑顔を見てください…!

おわりに

これまで出荷トラブルや問い合わせの多さにお困りだったお客様に、今回のWMS連携を実装いただいたところ、「見たい動画が1クリックで見られてとても助かっている」「問い合わせ対応の工数が1時間→1、2分程度まで短縮できた」「作業ミスがどこで発生したかが動画で振り返ることができ、手順の見直しや教育など、動画の活用がさらに進んだ」などの声をいただき、手応えを感じています。

自社のWMSにセーフィーの映像データURLをリンクさせるための簡単な数式フォーマットをご用意しておりますので、もしよろしければご活用くださいませ。

ACCESS 簡易フォーマット / Excel 簡易フォーマット

また、WMS上で映像データのリンクに成功したけれど、リンクの表示が質素でつまらない、とお困りの方に朗報です。大人気のセーフィーくんアイコンもこちらからダウンロードできますので、是非リンク埋め込みにご活用いただけますと幸いです。

RELATED関連記事

特集

♯6 ヒトの欲望に立ち向かうチェーンストアのシステムを解剖。店舗ごとの独自色は吉と出るか

特集

♯5 小売向けメディア編集長が考える「リテールテインメント」の本質とは?

映像活用について
さらに詳しく知りたい方はこちら

資料請求する