Armadilloフォーラム

2015年12月11日開発者ブログについて

sam

2016年5月18日 19時33分

「OKI製920MHz帯無線+RS485通信の気象観測センサー(SenSu-1501)から受信したデータをクラウド(Heroku)で見る」の検証を行っています。
子機の設定を行い、serial_oki920_set_rs485、serial_oki920_start、serial_oki920_sensuの順に実行していますが、ブログのような下記のデータが出力されません。

0x7e 0x11 0x00 0x11 0x24 0xc1 0xb3 0x62 0xa1 0x2d 0x00 0x00 0x01 0x4f 0x00 0x04 0x00 0x00 0x00 0xd3 0xef 0x7e
0xc1
0x0b3, 179[degree]
0x2a1, 27.3[degree]
0x2d, 45[%]
0x00, 0.000[m/s]
0x00, 0.000[m/s]
0x014f, 100.5[mm]
0x0004, 4[uw/cm^2]
0x000000, 0.0[lux]
0xef

ctrl + cで止めると下記のようなデータが出力され

0x7e 0x11 0x00 0x13 0x00 0xbb 0x24 0x63 0xc8
0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00 0x02 0x00 0x01 0xfb 0x40 0xd4 0x7e 0x7e
0x11 0x00 0x13 0x00 0xbc 0x24 0x63 0xc8 0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00
0x02 0x00 0x02 0x44 0xfc 0xda 0x7e 0x7e 0x11 0x00 0x13 0x00 0xbd 0x24 0x63 0xc8
0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00 0x02 0x00 0x02 0x44 0xfc 0xda 0x7e 0x7e
0x11 0x00 0x13 0x00 0xbe 0x24 0x63 0xc8 0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00
0x02 0x00 0x01 0xfb 0x40 0xd4 0x7e 0x7e 0x11 0x00 0x13 0x00 0xbf 0x24 0x63 0xc8
0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00 0x02 0x00 0x02 0x44 0xfc 0xda 0x7e 0x7e
0x11 0x00 0x13 0x00 0xc0 0x24 0x63 0xc8 0x62 0x8b 0x23 0x00 0x00 0x00 0x37 0x00
0x02 0x00 0x02 0x44 0xfc 0xda 0x7e

log_sensu.txtの中身も

7e 10 00 0a 10 ff ff 02 d3 56 78 00 01 00 7e

となり、クラウドの受信形式に合った形式になりません。

920MHz無線の設定が合っていないのでしょうか?
考えられる原因がありましたらご教授お願いします。

コメント

お世話になってます。
OKI920Mhz無線のアドオンモジュールを販売しています
コネクシオの東原と申します。

本事象、OKI920Mhz無線設定が想定されますので
親機、子機側のパケットフィルタリングについてご確認頂き
もし[あり]で設定されている場合、
まずは、親機、子機とも[なし]設定で本事象が改善するか
ご確認願いますでしょうか。

弊社側にて環境構築し、動作確認したところ、
[なし]設定では、ブログの通り標準出力上で受信でき、
そこから子機側を[あり]設定とすると、類似と思われる出力となりました。

本設定の不整合([あり][なし]、もしくは[あり]の場合での詳細設定など)により
ブログのサンプルプログラムの受信処理の想定とのフォーマット不整合が生じていると思われます。

[なし]設定
0x7e 0x11 0x00 0x11 0x24 0xd3 0x84 0x63 0xe8 0xff 0x00 0x00 0x00 0x00 0x00 0x03 0x00 0x01 0x18 0x1d 0xfe 0x7e
0xd3
0x084, 132[degree]
0x3e8, 60.0[degree]
0xff, 255[%]
0x00, 0.000[m/s]
0x00, 0.000[m/s]
0x0000, 0.0[mm]
0x0003, 3[uw/cm^2]
0x000118, 28.0[lux]
0xfe

子機側[あり]設定(ctrl + c後)
0x7e 0x11 0x00 0x13 0x00 0x01 0x24 0xd3 0x84
0x63 0xe8 0xff 0x00 0x00 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x88 0x4f 0x7e 0x7e
0x11 0x00 0x13 0x00 0x02 0x24 0xd3 0x84 0x63 0xe8 0xff 0x00 0x00 0x00 0x00 0x00
0x02 0x00 0x00 0x00 0x88 0x4f 0x7e 0x7e 0x11 0x00 0x13 0x00 0x03 0x24 0xd3 0x84
0x63 0xe8 0xff 0x00 0x00 0x00 0x00 0x00 0x03 0x00 0x00 0xd2 0x75 0x0f 0x7e 0x7e
0x11 0x00 0x13 0x00 0x04 0x24 0xd3 0x84 0x63 0xe8 0xff 0x00 0x00 0x00 0x00 0x00
0x02 0x00 0x01 0x18 0x86 0x66 0x7e 0x7e

返信ありがとうございます。
子機側のパケットフィルタリングが「あり」になっており、「なし」に
変更して試したところ、うまくいくことを確認できました。
ありがとうございました。