Contenu connexe
Similaire à if-up 2017 | B3:GPSとIoT〜位置情報取得で押さえるポイント〜 (20)
if-up 2017 | B3:GPSとIoT〜位置情報取得で押さえるポイント〜
- 7. • はじめに
• SORACOM Air/Beam についてサービスの解説
• 「SORACOM Air + Beam による除雪車位置情報システム」
(株式会社デザイニウム 前田諭志 様)
• 「GPS×IoT」
(株式会社フレクト 佐藤正士 様)
• まとめ
アジェンダ
- 12. • IoT向けの 3G/LTE 回線を使用したデータ通信サービス
• 複雑な設定なしに、どこでも安全に接続可能
• WebコンソールやAPIによりデバイスの一元管理が可能
• 管理対象が増えてもスケールするシステム
• データ通信量により従量課金
• 下りより上りの方が安価/通信速度が低速なほど安価
→ GPSデータのアップロードにはうってつけ
SORACOM Air (for セルラー) サービスの特徴
- 29. 自己紹介
• 佐藤 正士 (さとう まさし)
• 株式会社フレクト
技術開発本部
テクニカルスペシャリスト
• Cariotを含むフレクト社の車載IoTサービ
ス事業初期より、ハードウェア調査とイン
テグレーションを担当。
28
- 39. 対策 for 「無愛想」
• マニュアルをよく読む
• 英文マニュアル読解能力が必須
(海外メーカーのことが多い)
• メーカーサポートに頻繁に質問で
きることが重要
38
- 43. 対策 for「出力データの期待値がわからない」
42
• こればかりは慣れる
しかない。
• 数値、文字のバイナ
リ表現
• Pythonでデコート
プログラムを即席作
成する
手作業でがんばる
4d31 <= prefix
001e <= length
00006124fee993bc <= id
0001 <= ...
58eed532 <= Epoch時刻
from struct import *
DATA_FORMAT_HEADER = ">2sHHHQ";
dH = unpack(DATA_FORMAT_HEADER,
h.tobytes())
# dH[0], dH[1]... を評価
- 51. SORACOM Beamの実装概要
50
@RequestMapping(value = "/soracom-beam", method =
RequestMethod.POST)
@ResponseBody
public ResponseEntity<byte[]>
receiveLogFromSoracom(HttpEntity<SoracomWrap> req)
throws Exception {
byte[] retData;
retData = proc(req.getBody().getBytes());
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "application/octet-stream");
return new ResponseEntity<>(retData, headers, HttpStatus.OK);
}
@Data
public static class SoracomWrap {
private String payload;
public byte[] getBytes() { return Base64.getDecoder().decode(payload);}
}
UDP
HTTPS
- 56. • デバイスにやさしく
• 暗号化オフロードを活用
• 究極的には、バイナリ形式・UDP
• 最終的なユースケースを考えて調整する
• 利用する時間や、ハードウェアの制約、許容される誤差など
を考慮して、送信間隔などを長くする事も考える
• テクノロジーから需要を起こすのではなく
需要に対して適切なテクノロジーを当てはめていく
IoTでGPSを扱う上でのTIPS
Notes de l'éditeur
- SIMを見せる?!