作業時間集計ガジェットを加速度ビーコンとLTEゲートウェイ「KC4-C-100A」で作成

**【2023/1/25追記】**
本記事の概要を楽しみながら確認頂ける、IoT機器活用動画を公開しました。
[こちら](https://youtu.be/RcxgvcFBNU8)からご確認下さい。

## はじめに
個人の作業時間を集計するガジェットを[KC4-C-100A](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/kc4-c-100a.html?qiita)と加速度センサービーコンを使って作ってみました。

![作業時間集計.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/bff75810-18a1-88a3-1ca9-a0077f96e2c4.png)

## こんな人におすすめ

- 部署メンバーの作業時間を可視化したい、各個人の負荷状況を確認したい人
- 必要なタスクに適切に時間を割り当てられているか確認したい人
    - 例：得意教科だけでなく苦手教科の勉強時間も適切に確保されているか
- 作業時間の可視化により、自分自身への気付きにしたい人
- 作業時間管理を行いたいが、都度入力が面倒な人
- Wi-Fi®環境のない場所で複数人の時間集計を行いたいが月々のランニングコストは下げたい人
    - 各自に配布するデバイスはBluetooth® Low Energyで通信する為SIMは不要
    - 各自のデバイスからの情報をKC4-C-100Aが集約しLTE™通信にてクラウドにデータ送信
- LTEゲートウェイを使ってビーコン情報を集約したい人

## 必要な時間と概算費用

- 必要な時間：約90分
- 概算費用：約67,000円　（加速度ビーコン3個使用時）


## 準備するもの

| 品名 | 価格 | 備考 |
|:-:|:-:|:--|
| [KC4-C-100A](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/kc4-c-100a.html?qiita) | 50,000円程度 | 参考購入先は[こちら](https://www.kyocera.co.jp/prdct/telecom/office/iot/howtobuy/?qiita)を参照 |
| 加速度センサービーコン | 5,600円/個 程度※ | KC4-C-100A の動作確認品推奨<br>→[動作確認リストはこちら](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/guide03.html?qiita#sec11-1)<br>※本記事では [MM-BLEBC5 加速度トリガー搭載ビーコン](https://direct.sanwa.co.jp/ItemPage/MM-BLEBC5)を3個使用 |
| ビーコンケース | 100円/個 | ビーコンが適度に収納可能なケースを100均で購入<br>※本記事では立方体のアクリルケースを使用 |
| Windows🄬 OS を搭載したパソコン | － | KC4-C-100A への設定および SORACOM ユーザコンソールの操作に用います。 <br>必要なPC仕様<br>【OS】Windows10 64bit (バージョン2004-ビルド 19041 以降)または Windows 11<br>【必要メモリ】4GB以上<br>【必要ディスク容量】10GB以上<br>【ブラウザ】Google Chrome™ / Microsoft Edge |
| USBケーブル (Type-A ↔ Type-C) | － | KC4-C-100A とパソコンの接続に使用します。パソコンのUSBポートが Type-C のみの場合は、Type-C ↔ Type-C ケーブルをご用意ください。 |
| SORACOM アカウント | － | 本記事ではデータ可視化のダッシュボードにSORACOMサービスを活用する為、SORACOM アカウントを作成しておいてください。作成は[こちら](https://console.soracom.io/#/login?return_to=%2F)から。<br>※アカウントの作成は無料です。|
| nano SIMカード | － | KC4-C-100AはSIMフリーの為SIMカードの指定はありませんが、データ可視化にSORACOMサービスを活用する為、本記事ではSORACOM SIMを利用します。<br>SIMの購入方法は[こちら](https://soracom.zendesk.com/hc/ja/articles/115001366827-SORACOM-IoT-SIM-%E3%81%AE%E8%B3%BC%E5%85%A5%E6%96%B9%E6%B3%95%E3%81%A8%E7%99%BB%E9%8C%B2%E6%96%B9%E6%B3%95%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6)を参照|

## システム構成
![作業時間集計システム構成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/e47e343e-0d54-43cb-8e80-440203bd478d.png)


## 加速度センサービーコンの設定
1. 加速度送信設定
MM-BLEBC5の取説に従いFrame Typeで「ACC」を選択し、加速度センサーを有効にしてください。
　<img width=400 alt=加速度設定.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/4f774965-7f13-6f7e-3f47-2ead370a880f.jpeg>


1. XY軸の確定
加速度センサーのXY軸確認の為、加速度の値を確認しながらビーコンを回転させX=1gee, Y=0geeに近づくところを探しX軸を確認してください。同様にX=0gee, Y=1geeに近づくところを探しY軸を確認してください。
![X軸調整.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/bc622f62-a7e6-8f38-3d79-138a15357b49.jpeg)
　<img width=700 alt=X軸確認.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/90d5f229-3569-ea9a-5c3a-55b2a9e68b23.jpeg>

1. ケースへの貼付け
ケースを水平なところに置いた際、先ほど確認したX軸・Y軸が垂直になるように、両面テープ等でビーコンをケースに貼り付けてください。
　<img width=500 alt=ケース貼付け.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/c86905cf-8114-ae19-6c71-0d17e7a73c42.jpeg>

## KC4-C-100Aの設定
### 1. ツールのインストール
KC4-C-100A[「はじめよう」マニュアルの「2.セットアップ」](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/?qiita#sec2)を実施し、レシピツール及びキッティングツールをインストールし、キッティングツールからレシピツールを起動してください。

### 2. レシピのインポート
以下の手順にてレシピのインポートを行ってください。
1. ベースとなるレシピを[こちら](https://www.kyocera.co.jp/prdct/telecom/office/iot/recipe/img/qiita/VisualizingWorkingTimes.zip)からダウンロード
1. ダウンロードしたzipファイルを展開
1. 展開したレシピファイル「作業時間集計レシピ.**krx**」をレシピツールでインポート
レシピツールでのインポート方法は[「ツールガイド」マニュアルの「9. レシピのインポート」](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/guide01.html?qiita#sec9)を参照してください。

### 3. レシピのカスタマイズ
下図で注釈を付けた箇所を中心に、目的に合わせてインポートしたレシピをカスタマイズしてください。
レシピツールの操作については [「ツールガイド」マニュアルの「7. レシピの編集」](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/guide01.html?qiita#sec7)を参照してください。

![レシピ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/69702a15-c19b-e031-7310-e540f6694983.png)

::: note info
会議や資料作成などの集計したい作業は人により異なることを想定して、レシピでは加速度の状態に応じた割り当てを「Meeting」などの作業名ではなく1~6の数字としています。
デバイス側の設定であるレシピは1~6で固定しておき、会議などの作業名への紐付けは可変部としてクラウド側設定に設けることで、より汎用的で柔軟な運用を可能としています。
:::


#### レシピ補足説明
1. Advertiser’s Address（MACアドレス）の設定
本記事で使用するMM-BLEBC5のMACアドレスはリトルエンディアンによる転送となるため、MM-BLEBC5本体に記載されているMACアドレスを以下の様に入替え、上図レシピの赤枠の箇所（1台あたり2箇所）に入力してください。尚、インポート頂いたレシピは初期設定値として下表のMACアドレスを想定した仮の値を設定しています。
   ![2022-10-11_14h40_23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/be4fd8ff-4ffe-10ef-9e0f-6db04515f9f6.png)
   | 設定Index | 仮MACアドレス | レシピ初期設定値 |
   |:-:|:-:|:-:|
   | 0 | 1234567890AB | AB9078563412 |
   | 1 | CDEF12345678 | 78563412EFCD |
   | 2 | 90ABCDEF1234 | 3412EFCDAB90 |

1. ビーコン数量変更
インポートしたレシピは加速度センサービーコンが3台の想定で作成しています。
加速度センサービーコンの追加を行う際は、水色枠で囲った5ヵ所のブロックを台数分増やしてください。
ブロックを増やす際は、`設定Index`や`イベントID`の重複が発生しない様にパラメータ設定を行ってください。

1. 加速度センサーの状態とレシピで設定した送信する値
加速度センサーのXYZ各軸プラス方向は0.85gee以上、マイナス方向は-0.85gee以下をそれぞれ`+X`, `-Y`などと定義し、どれにも当てはまらない中途半端な向きを状態を`不定`として下表の値を送信するレシピとしています。
   | 送信する値 | 加速度センサー状態 |
   |:-:|:-:|
   | 1 | +Z |
   | 2 | +X |
   | 3 | +Y |
   | 4 | -Y |
   | 5 | -X |
   | 6 | -Z|
   | 0 | 不定 |

### 4. レシピの書き込み
先ほどカスタマイズしたレシピからレシピ実行ファイルを作成し、KC4-C-100Aにレシピ実行ファイルを書き込んでください。
レシピ実行ファイルの作成から書込みまでの手順は[「はじめよう」マニュアルの「4-6. レシピ実行ファイルの作成」](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/?qiita#sec4-6)から「[4-8. レシピの書込み](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/?qiita#sec4-8)」を参照してください。

### 5. SIMの挿入
KC4-C-100A[「はじめよう」マニュアルの「6-2. SIMの挿入」](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/?qiita#sec6-2)及び「[6-3. APNの設定](https://www.kyocera.co.jp/prdct/telecom/office/iot/guide/kc4-c-100a_kc4-c-101a/?qiita#sec6-3)」を参照し、SIMカードの挿入、APNの設定を行ってください。また、本記事で使用するSORACOM SIMのAPN設定情報については[こちら](https://support.soracom.io/hc/ja/articles/218427317)を参照してください。


## クラウド設定
デバイス側の準備が終わったら次はクラウド側の準備をします。

### 1. SORACOM Harvest Dataの有効化
SORACOMコンソールにログインし、SORACOM Dataが有効となる様に該当のSIMが属するグループの設定を変更します。
詳細は[こちら](https://users.soracom.io/ja-jp/docs/harvest/enable-data/)を参照してください。

- SORACOM Harvest Data設定をON
![2022-09-08_14h20_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1188107/b112ab1a-c636-7c4a-ee69-b39c02a39bf1.png)

### 2. SORACOM Lagoonでの表示設定
1. パネル作成
SORACOM Lagoonのダッシュボード内に作業時間を集計するメンバーのパネルを作成します。
ダッシュボードの作成方法などSORACOM Lagoonの操作方法については[こちら](https://users.soracom.io/ja-jp/docs/lagoon-v2/create-dashboard/)を参考にして、下表の項目をパネルに設定してください。

   | 項目 | 設定 |
   |:-:|:-|
   | Panel title | 任意の名前を設定 |
   | Visualization | Table |
   | Metricの1項目 | Air |
   | Metricの2項目 | 該当SIMのIMSI若しくは設定した名前 |
   | Metricの3項目 | Standard |
   | Metricの4項目 | status1等レシピで設定した名前 |
   <img width=700 alt=Lagoon設定1.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/3302d673-c687-be5f-b971-fc1c17d565c6.png>
   <img width=700 alt=Lagoon設定2.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/982e1c2c-2017-790c-47fe-0d7755d9a449.png>

1. レシピの数字と作業名の紐付け
「Field」タブの「Value mappings」にてレシピで送信する数字を任意の作業名に紐付けてください。Fieldオプションの詳細については[こちら](https://users.soracom.io/ja-jp/docs/lagoon-v2/field/)を参照してください。
   <img width=700 alt=Lagoon設定3.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/0671d140-e2d8-9ea3-f4e0-37bcd1554d7e.png>

1. 同様の手順で人数分のパネルを作成してください。


## ケースに表示
一通りの設定完了後、ケースに設定した内容を表示します。
表示内容は会議や資料作成などの作業名だけでも問題ありませんが、メンテナンス性を考慮してレシピで定義した1~6の数字も合わせて記載しました。
<img width=700 alt=時間集計ボックス.jpg src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/75770525-ae82-cfaf-e650-68d3507bf3fc.jpeg>


## 結果
各メンバーの作業状況が確認出来ました！
週末/月末など、決められたタイミングで集計することで、各作業にどれくらいの時間を割り当てていたか集計が可能です。
![時間集計結果.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2843234/7b206ef4-1d56-d9fa-fd4b-1009ffde5908.png)


## 通信料金について
**約500円/月**

セルラー通信を利用しているため月額の通信料が発生します。
送信間隔や稼働時間を変更することで、より低額での運用も可能となります。
- 1時間あたりの想定データ通信量：約75kB
    - ビーコン：3台
    - クラウドへの送信間隔：1分間隔
- 1カ月あたりの想定データ通信量：約54MB
    - 上記 x 24時間 x 30日
- 想定料金プラン
    - SORACOM SIM plan-D D-300MB（330円/月）
    - SORACOM Harvest Data（5.5円/日）※1アカウントあたり1SIMのみであれば無料利用枠内で利用可能
    - SORACOM Lagoon 無料枠を利用

## 最後に
いかがでしたでしょうか？

都度入力の手間なく手軽に作業時間の集計をしたいという時に[KC4-C-100A](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/kc4-c-100a.html?qiita)と加速度センサービーコンを使って作業時間集計を行うガジェットの紹介でした。

　初期費：約67,000円
　月額費：約500円

別記事でKC4-C-100Aを使ったいろいろな仕組みを紹介していきますのでお楽しみに！

## 注記
- 商標
    - Wi-Fi®はWi-Fi Allianceの商標または登録商標です。
    - Windows®およびWindows®10は米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。Microsoft® Windows® の正式名称は、Microsoft® Windows® Operating Systemです。
    - Google、Google Chrome™ およびその他のマークは、Google LLC の商標または登録商標です。
    - Bluetooth®ワードマークおよびロゴは、Bluetooth SIG, Inc.が所有する登録商標であり、京セラ株式会社は、これら商標を使用する許可を受けています。
    - USB Type-C™はUSB Implementers Forumの商標です。
    - LTE™は、ETSIの商標です。
    - ソラコム、SORACOM、又はソラコムの商品・サービス名称等は、株式会社ソラコムまたはその関連会社の商標または登録商標です。
    - その他本文中に記載されている会社名および商品名は、各社の商標または登録商標です。