#author("2023-07-03T14:12:32+09:00","","")
#author("2023-07-03T14:16:04+09:00","","")
[[TPSGW9ページへ戻る>TPSGW9]]

* LPWAの通信について [#vf071dde]
ここでは、実際の通信の設定と送受信の方法について説明します。~

#contents

**プライベート通信の場合 [#v9530d47]
import lpwa	#lpwaの通信モジュールです。~
import rfn	#lpwaの通信モジュールを使い安くする為のファイルです。~
>
 import lpwa	#lpwaの通信モジュールです。
 import rfn	#lpwaの通信モジュールを使いやすくする為のファイルです。

ファイルシステムの中に"rfn.py"として準備されている必要があります。

各通信モードOPENを行います。

**使用例 [#m684f87f]

>
 >>> lpwa.reg(rfn.Open,rfn.SF7)	#回線をLoRa変調SF12でOPENします。 
 >>> lpwa.reg(rfn.Open,rfn.SF7)          #回線をLoRa変調SF12でOPENします。 
 データの送信について
 >>> spkt="123456"		#送信データを変数に作成します。
 >>> lpwa.reg(rfn.Post,spkt)	#ポストレジスタに送信したいデータを置くと 送信されます。
 >>> spkt="123456"		        #送信データを変数に作成します。
 >>> lpwa.reg(rfn.Post,spkt)	        #ポストレジスタに送信したいデータを置くと送信されます。
 データの受信について
 >>> rpkt=lpwa.reg(rfn.Get,rfn.Post)	#ポストレジスタから読み込むと受信したデータを受け取れます。
 >>>rpkt
 -3				#受信できなかった時、エラーコードを返しますが、この時に受信モードに切り替わります。
 -3				        #受信できなかった時、エラーコードを返しますが、この時に受信モードに切り替わります。
 >>> rpkt=lpwa.reg(rfn.Get,rfn.Post)
 >>>rpkt
 (b'Telepower Tst', b'\x00\x14\x8eC\x00\x00\x00\x9a', -78, 7)	#受信ができると受信情報がタプルとなって返ります。
 >>>rpkt[0]							#タプルの一つ目は受信データです。
 b'Telepower Tst'						# bytearray形式で取得できます。
 >>>rpkt[1]							#タプルの二つ目は送信元アドレスです。
 b'\x00\x14\x8eC\x00\x00\x00\x9a'
 >>>rpkt[3]							#タプルの三つ目は受信時のRSSI値です。
 -78
 >>>rpkt[3]							#タプルの四つ目は受信時の信号ノイズ比(SNR)です。
 7

**送信データの作成について [#i91e7cfc]
PYTHONではASCII文字列を扱うには便利ですが、バイナリバイト配列を作るには不便です。~
そのような場合には~

bytearray()~

関数が便利です。~

bytearrayで作った配列は書き換えが可能ですので、通信構造を作った後に中身だけ数値が変わるような場合、便利に使えます。

#br

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS