30台の電子天秤の測定データを一括管理出来ないか?との要望があった。
業者に試作品を頼むのは、費用対効果を考えるとまだ早いので自分で試作しようと思った。
天秤にrs232オプション(約2万円)をつければ、外部にデータを吐き出すことができる。
試しにやってみたら簡単にできた。
問題はここからで、30台をいちいち配線するのは面倒なので無線にしよう!
30台は同じ室内にあるし、室内で一括管理出来ればいいし。いきなり30台は金もかかるので、3台で試した。
構成は秤にrs232オプションを接続し、そのシリアルデータをモノワイヤレスで読み取り無線化し送信。受信側はraspberrypi にモノワイヤレスを接続し、pythonでシリアルデータを読み取り、guiで表示というコンセプト。
コンセプトは簡単だが知識不足なので苦労しました。
まずは、モノワイヤレスでシリアルデータをパソコンに表示するテスト。
シリアルデータを読む場合、シリアル通信設定がモノワイヤレスと合っているとデフォルトでもいいみたい。ただし、秤は2400bps,7bit,パリティevan,stop bit 1の通信設定でないと文字化けする。実際文字化けして大変だった。
通信設定を変更するにはモノワイヤレスの親機、子機共にシリアル通信アプリに書き換える必要がある。
実際にやってみた。
親機はモノスティックになる。
パソコンのusbに挿して書き換える。
書き換えた後は、インタラクティブモードに入りシリアル通信設定を秤に合わせる必要がある。
i:set device id 121 これが親機
b:を2400bpsに変更。どうやら親機側は秤側のrs232設定に合わせる必要がないらしいけど合わせた。
B:を7E1に変更。7ビット、パリティevan、ストップビット1の意味。
m:をCに変更。チャットモードの意味。
o:0x00010000に変更
Sで保存。
82016264:0>が親機からの要求で
[]が子機の情報で:の前が子機の固有番号で、:以降がデータの通し番号で、0から255を繰り返す。]より下が秤の生データ。