前提
・「角度」の数値をリアルタイムに送ってくるセンサがあります(2Hz程度の頻度)。
・このセンサが10台あり、それぞれ異なる場所を計測しています。
・リアルタイムに変化率を計算して、大きい変化があったセンサを特定できるようにしたいです。
データの内容
各センサからのデータは、websocketで送られてきます。
Python
1data = json.loads(raw) 2print(data["DEV"], data["DEGREE"])
とすると、デバイスNo.、角度の順番に、
134234,12.22 344223,22.34 243332,23.43 524564,28.23 675534,35.36 243332,24.45 265432,24.43
のようにデータが送られてきている様子を表示できます。
(デバイスNo.は重複しない6桁の数字が振られています。)
実現したいこと
1. デバイスごとに10区間平均値を計算し、現在値がそれより上回ればそのデバイスナンバーを表示させる。
2. 測定値はデバイスごとに分けて、すべてログを記録したい。
自分なりの考え方
・まずはデバイスごとに配列を作って、websocketからの混ざったデータをデバイス別に振り分ける。
・それぞれの配列内で、10区間の平均値を計算する。
・それぞれの配列内で、平均値と現在値を比較する。
(現在値をn番目とすると、(n-1)~(n-10)の平均値を逐次計算して比較する。)
・最後に各配列をcsvに書き込む。
プログラミングは全くの初心者ですので、そもそもこんな考え方でよいのか分かりません。
考え方は問いませんので、実際のコードをご教授賜りますと大変助かります。
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/19 15:43