1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IoT用通信SIMの購入について

Last updated at Posted at 2024-01-30

はじめに

IoTを始めるに当たり、SIMを使った通信が必要になるケースが考えられます。社内にラズパイやArduino, M5 Stackを接続できるネットワーク環境が整っている場合、とくに気にしなくてもよいです。しかしながら、いきなりこれらの機器を社内ネットワークに接続するのは話が飛びすぎます。どのようなリスクがあるのか、リスクを検証するために時間を使うのですが、それに見合うリターンは本当に存在するのかわからないです。
ですので、まずは簡単にはじめて、どのようなデータを取得し、どのような結果を得られるかどうか、自分たちに合ったデータを得られることができるのか、というような検証を行いたいです。そこで登場するのがIoT用のSIMです。
SoracomさんというIoT用のネットワーク機器やサービスを販売している会社がありますので、Soracomさんのラインナップから自身の要件に合うものを探した結果の記事です。

今回のデータ容量の試算は実測と大きく異なっていました。
下記に実測した結果を載せましたので、興味がある方はご確認ください。
https://qiita.com/f-mio/items/b7329a30dcb8f41931f6

要件

やりたいこと

製造設備のシグナルライト(緑, 黄, 赤)にそれぞれセンサーを取り付け、光量の測定結果と時刻データをMQTTブローカに送信したいです。

制御器に関する要件

制御器はM5 Stickで、これに関わる要件は下記を考えています。

内容 数値 備考
デバイス数 3 増えるかも?
送信間隔 1min間隔
メッセージ容量 143 (byte) (計算は下記参照)

メッセージ送信に関わる検討項目

検討したい内容は下記です。

検討内容 確認したいこと 備考
送信容量 理論値が月の容量を上回らないこと -
通信速度 想定しているインターバルで処理が完了するか 1min間隔なので実は心配していない
接続エリア 設置予定場所で繋がるか -
コスト 可能な限り下げられること -

データ容量

送信データの容量を計算するために、jsonの構造を定義します。
私が考えているjson構造は下記の通りです。

json構造

キー キー2 内容 備考
status string success or error
payload timestamp string 測定時刻
g integer 緑色信号 (0〜4095)
y integer 黄色信号 (0〜4095)
r integer 赤色信号 (0〜4095)

送信json例

上記のjsonは下記のようなデータになります。

{
  "status": "success",
  "payload": {
    "timestamp": "2024/01/23 12:34:56",
    "g": 1400,
    "y": 3900,
    "r": 3800
  }
}

メッセージサイズ

一回のメッセージのbodyは129文字(本当はスペースが入らないのでもう少し小さい)で、サイズが129 byteです。
あとはmqttのヘッダです。IBMのページでは、ヘッダの容量について下記の記載があります。

ヘッダーは、2 バイト固定ヘッダーと、最大 12 バイトの追加可変ヘッダーから成ります。

一方、下記の仕様書では、可変長部分はtopic name部に固定で2byteとidentifier 2byteの4byteが発生するようで、そこにプラスしてtopic名が入る模様。

上記では【a/b】とtopic nameをつけています。
自分が使う場合は、6〜7文字あれば十分で、$11 = 7 + 4 < 12$なので12byteで計算しても問題ないと考えます。

よって、今回の内容ではメッセージは最大143 byteになります。

また、1日に1回時刻合わせをしたいと思います。

$ curl "nict.go.jp" -o ./aaaa.txt
$ ls -la ./aaaa.txt

でサイズを確かめたところ1871(byte)でした。これを月に換算すると下記になります。
(nict.go.jpへのcurlでよかったのかは疑問に残りますが、多く見積ったということで良しとしましょう。苦笑)

\begin{align}
0.17 \verb|(MB/month)| \quad \risingdotseq & \quad
  1871 \verb|(byte/day/設備)|
  \times 31 \verb|(days/month)| \\
  & \qquad
  \times 3 \verb|(設備)| 
  \div 1024 \div 1024
\end{align}

月あたりの使用量を考えると、おおよそ18.4MBとなります。

\begin{align}
18.4 \verb|(MB/month)| \quad \risingdotseq & \quad
  143 \verb|(byte/min/設備)|
  \times 31 \verb|(days/month)| \\
  & \qquad
  \times 24 \verb|(h/day)|
  \times 60 \verb|(min/h)|
  \times 3 \verb|(設備)| \\
  & \qquad
  \div 1024 \div 1024 \\
  & \qquad
  0.17 \verb|(MB/month)|
\end{align}

通信速度

$143 \times 3 \verb|(byte)|$のデータを1min内に処理が終了すればOK。

Soracomさんプラン

容量がわかってきたので、実際のプランを選択してみようと思います。

通信プラン選定と発生金額

SoracomさんのHP(20244.1.30現在)から通信プランを抜粋して、私の要件に当てはめたものが下記の内容です。

plan01s plan01s LDV planX3 planP1 plan-D plan-K2 plan-DU plan-KM1 plan-K
基本料金 0.06 USD/日〜 0.40 USD/月 1 USD/月 1.8 USD/月 330 円/月 330 円/月 1,320円/月〜 110 円/月 11 円/日
データ通信料 0.02 USD/MB〜 0.50 USD/MB 0.02 USD/MB〜 0.02 USD/MB〜 110 円/500MB 110 円/500MB 1,000円/上り10GB or 下り1GB 0.55 円/KB 0.22 円/MB〜
USD/月 2.228 9.5 1.264 2.164 - - - - -
円/月 334.2 1440 190.2 325.2 330 330 1320 10472.88 345.048

この中では、下記のものが候補になります。

plan01s planX3 planP1 plan-D plan-K2
円/月 334.2 190.2 325.2 330 330

対応エリア

各プランと通信事業者、通信方式を下記に記載します。

plan01s planX3 planP1 plan-D plan-K2
エリア 150ヶ国(日本含) 90ヶ国(日本含) 50ヶ国(日本含) 日本国内 日本国内
通信方式 2G,3G,LTE,
LTE Cat.M1
2G,3G,LTE,
LTE Cat.M1
2G,3G,LTE 3G,LTE,LTE Cat.M1 LTE,5G
通信事業者 DOCOMO (3G,LTE)
SoftBank(3G,LTE)
DOCOMO (3G,LTE)
SoftBank(3G,LTE)
SoftBank(3G,LTE) DOCOMO回線 au回線

使用するDOCOMO回線を使用しようと思い、使用するエリアでネットワークが通っているのかを下記のサイトで確認しました。

通信速度

通信速度は記載している箇所が見つからなかったのですが、特に大きな容量ではないので問題ないと考えて先に進もうと思います。
強いて言えば、下記箇所に速度制限の話が記載してありました。

この記載の中で最も低いものが32kbpsした。実測が理論値の1/10だとしても1秒間に400byteを処理できます。
想定している143byteを処理するのに、この数値でも十分すぎると思います。

通信SIMの選定

ここまでのまとめ

今までの内容を一旦まとめます。

plan01s planX3 planP1 plan-D plan-K2
エリア 150ヶ国(日本含) 90ヶ国(日本含) 50ヶ国(日本含) 日本国内 日本国内
通信方式 2G,3G,LTE,
LTE Cat.M1
2G,3G,LTE,
LTE Cat.M1
2G,3G,LTE 3G,LTE,LTE Cat.M1 LTE,5G
通信事業者 DOCOMO (3G,LTE)
SoftBank(3G,LTE)
DOCOMO (3G,LTE)
SoftBank(3G,LTE)
SoftBank(3G,LTE) DOCOMO回線 au回線
円/月 334.2 190.2 325.2 330 330

SIM選び

ここまでの結果で私の要件に合うSIMのプランは、【planX3】となりました。
しかしながら、初めての購入で何かしらのトラブルでデータが一時的に大きくなることも考えられます。そうなったとしても安心できるように、今回は定額で300MBついてきて比較的安価な【Plan-D】にしました。

その他機器

SIMを入れる機器は、下記のルータを購入することにしました。

最後に

IoT用途でSIMカードを選定してみました。
はじめての試みなので、途中計算が間違っている箇所もあるかと思いますが、思考を残してみたいと思い記事にしてみました。どなたかの参考になれば幸いです。
また、ところどころ怪しい部分があると思います。認識が違っている箇所があれば、お手数ですがご指摘いただけますと助かります。
2月にはAWS IoT Coreにデータを上げることをやってみようと思います!

失敗したこと

先日、注文したSIMとルータが届きました。
ただ、ルータがマイクロSIM対応なのにナノSIMを買ってしまい、結局SIM用のアダプタを追加で購入しなくてはいけなくなったという失敗をしてしまいました...

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?