GTR-388LTE-M HTTPでのデータ受信確認

2021年03月24日
by RAMBO

 

1. 受信用サーバーの準備

AWS EC2 に作成した Linux サーバーインスタンス上で待ち受けプログラムを動作させます。
今回は apache や nginx のようなサーバーは使わず、Python3 で作成した簡易なWEBサーバーを使います。
web_server.py というファイル名にしています。


import sys

from http.server import BaseHTTPRequestHandler
from http.server import HTTPServer
from http import HTTPStatus

PORT = 80


class StubHttpRequestHandler(BaseHTTPRequestHandler):
    server_version = "HTTP Stub/0.1"

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

    def do_POST(self):
        enc = sys.getfilesystemencoding()

        length = self.headers.get('content-length')
        nbytes = int(length)
        rawPostData = self.rfile.read(nbytes)
        decodedPostData = rawPostData.decode(enc)
        print("Request Data:\n", decodedPostData)

        response = "OK"
        encoded = response.encode(enc)
        self.send_response(HTTPStatus.OK)
        self.send_header("Content-type", "text/plain; charset=%s" % enc)
        self.send_header("Content-Length", str(len(encoded)))
        self.end_headers()

        self.wfile.write(encoded)

handler = StubHttpRequestHandler
httpd = HTTPServer(('', PORT), handler)
httpd.serve_forever()

2. GTR-388LTE-M 宛先の設定

Config Tool にて宛先を設定します。

起動後、[Communication]タブにて

項目 設定
(E0)Host IP 1 サーバーのIPアドレス(若しくはホスト名)
(E1)Host Port number1 80

を設定します。

[Motion Sensor]タブにて、(Rb)Report Media in static のテキストボックスをクリックします。

「Report Media Coise」ダイアログが表示されるので、HTTPを選択し、[Apply]をクリックします。

設定後、デバイスに設定を書き込んでください。

3. データの受信

3-1. サーバープログラムの起動

1で作成したプログラムを起動します。

sudo python3 web_server.py

3-2. デバイスの起動

GTR-388LTE-M を起動します。
端末を振る(5秒以上)などし、内蔵のGセンサーで動きを検知させ、データを送信します。

3-3. データの確認

データ受信に成功すると、画面に表示されます。

パケットキャプチャ結果です。

 


(参考)テスト用データの送信

Windowsのコマンドプロントで curl コマンドを使って同じデータを送信することが可能です。 まず、リクエストの文字列を格納するテキストを作成します(ここでは dummy_data.txt という名前にしています)。

GSr,GTR-388,XXXXXXXXXXXXXXX,0000,5,a080,3,190321,052853,E14230.8277,N4341.5387,223,0.00,246,11,0.8,12410mV,3082mV,0,37,26,00,00,00,00*52!

WEBサーバーに対し、リクエストを送信するコマンドは次になります。
注意) 「XXX.XXX.XXX.XXX」はサーバーのホスト名かIPアドレスにしてください。

curl --request POST --data-binary @dummy_data.txt http://XXX.XXX.XXX.XXX

GTR-388LTE-M TCPでのデータ受信確認

2021年03月22日
by RAMBO

 

GTR-388LTE-M は取得データを

      • HTTP
      • TCP Socket

で設定した宛先に送信することができます。
今回は、TCP Socketでデータを受信するための、サンプルプログラムを紹介します。

1. 受信用サーバーの準備

AWS の EC2 上に作成した Linux サーバーインスタンス上で待ち受けプログラムを動作させます。
サンプルのプログラムは Python3 で作成します。 server.py というファイル名にしています。


import socket

HOST    = "XXX.XXX.XXX.XXX"  # サーバーのIPアドレス
PORT    = 5000  # ポート番号(5000にしています)
BUFSIZE = 4096

tcp_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp_server.bind((HOST, PORT))
tcp_server.listen()

while True:
    client, address = tcp_server.accept()
    print("Connected!! [ Source : {}]".format(address))

    data = client.recv(BUFSIZE)
    print("Received Data : {}".format(data))

    client.send(b"OK")

    client.close()

2. GTR-388LTE-M 宛先の設定

Config Tool にて宛先を設定します。

起動後、[Communication]タブにて

 

 

項目 設定
(E0)Host IP 1 サーバーのIPアドレス
(E1)Host Port number1 サーバープログラムで指定したポート番号
上記例だと5000

を設定します。

[Motion Sensor]タブにて、(Rb)Report Media in static のテキストボックスをクリックします。

「Report Media Coise」ダイアログが表示されるので、TCPを選択し、[Apply]をクリックします。

設定後、デバイスに設定を書き込んでください。

 

3. データの受信

3-1. サーバープログラムの起動

1で作成したプログラムを起動します。

 

python3 server.py

3-2. デバイスの起動

GTR-388LTE-M を起動します。
端末を振る(5秒以上)などし、内蔵のGセンサーで動きを検知させ、データを送信します。

3-3. データの確認

データ受信に成功すると、画面に表示されます。

パケットキャプチャ結果です(黄色: サーバー, 緑色: クライアント)。

(参考)テスト用データの送信

クライアント用プログラムを作成することで、デバイスがなくてもテスト用データを送信することができます。


import socket

HOST    = "XXX.XXX.XXX.XXX"  # サーバーのIPアドレス
PORT    = 5000  # ポート番号
BUFSIZE = 4096

tcp_client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

tcp_client.connect((HOST, PORT))

tcp_client.send(b"GSr,GTR-388,XXXXXXXXXXXXXXX,0000,5,a080,3,>180321,081602,E14230.8271,N4341.5351,236,0.01,346,10,0.7,12400mV,>3114mV,0,6,23,00,00,00,00*68!")

response = tcp_client.recv(BUFSIZE)
print("[*]Received a response : {}".format(response))

tcp_client.close()

LPWA新製品をリリース予定です!

2019年  3月  29日
byマイク

今まではLoRa製品だけを扱っておりましたが、
今後は「Sigfox」「LTE-M」の製品取扱を開始予定です!

リリースは近日中を予定しております。

Sigfox/GPSトラッカー「ST-100J」

WisolのSigfoxモジュールを含むSigfox準拠のトラッカーです。

ペットの追跡、子供や高齢者の監視などにお使いいただけます。介護など即時通知を可能にする緊急報告のためのHELPボタンもついています。また、頻繁な充電を避ける大容量バッテリーを装備しています。ST-100JはSigfoxネットワークにて追跡システムを構築する上で一番の選択です。

位置情報等をezFinderBUSINESSで表示可能。

特徴
・緊急時のHELPボタン
・モーションセンシングのための3軸加速度センサー
・振動/ブザー
・低バッテリー警告
・I/Oピンを接続した充電クリップ
・定期レポート
・振動検知

製品ページ
https://www.trackers.jp/products_st-100j.html

 


GTR-388LTE-M

車両用LTE-M/GPSトラッカーです。

耐久性があり多機能なLTE-M接続トラッカーとして設計されています。 容易に取付けが可能な小型サイズ。オートバイ、電気スクーターおよび車に取り付け可能。強度は高く、防水設計。

位置情報等をezFinderBUSINESSで表示可能(※)。
※LTE-Mに対応したSIMが必要です。

特徴
・820mAh充電式バッテリー
・高感度GPSレシーバー
・コンパクトサイズで防水IPX7設計
・高感度GPS / GSMアンテナ内蔵
・モーションセンサー内蔵
・AGPSサポート
・サポート通信プロトコル:UDP
・マルチI / Oサポート:
カスタム機能用デジタル入力
オプションの緊急ボタン用のデジタル入力
アナログ入力
リレー用デジタル出力
ACC検出用デジタル入力
・取り付けが簡単な小型サイズ
・完璧な電源管理制御

製品ページ
https://www.trackers.jp/products_gtr-388lte-m.html

 


「ST-100J」「GTR-388LTE-M」は
IoT/M2M展【春】に出展いたしますので、是非ブースにお立ち寄りください!

詳細はこちら→https://www.trackers.jp/event/event_2019.html

「第8回 IoT/M2M展【春】前期」
2019/4/10~4/12 東京ビッグサイト

https://d.japan-it.jp/ja/Expo/5562869/GISupply

(株)GISupply
第8回 IoT/M2M展【春】
【小間番号】 7-33
LPWAを活用した新製品やシステム・ソリューションのご紹介をご案内いたします。