山本?
まずデータ取得部であるArduinoの設定
基本的には使いたいセンサなんでも大丈夫です
今回はサンプル程度に気温と体温を取得します
体温のセンサはe-healthのセンサを用いるためArduino.exeのバージョンが1.01の物が必要です.細かいことは組み込みセンサの使い方から.
気温はBME280というものを使います.(温湿度気圧を測ることが本当はできます)
以下にArduino0(気温),Arduino1(体温)のファイルを置いておきます.
e-helthのセンサと普通のセンサは同時に使えないのでArduinoを2台用意してそれぞれにコンパイルしておきます.
次にデータ送信部であるraspberrypiの説明.
今回はWifiモジュールではなく代わりとしてraspberrypiを使います.
Arduino→Raspberrypi→PC といったようにデータが流れていくイメージ
raspberrypiの設定に関しては横井君のページやネットで調べるなりして頑張ってください
sudo nano 〇〇.py
のようにしてpythonファイルを作成します.
以下にそのソースコードを示します.
※python側のソースコード
Arduinoの型番号ACM〇〇はそのとき用いるものに,IPアドレスは自分のPCのものに書き換えてください
Arduinoの型番を調べるのは以下のリンクを参考にしてください
https://uepon.hatenadiary.com/entry/2017/01/01/141220
データ受信部,並びにグラフ出力を行うPC側の設定
今回はsocket通信を用いるのでその前段階としてまずnode.jsというものを入れます
node -vをコマンドプロンプトで打ち込んでください.
npm install socket.io上記のコマンドを打ち込むとインストールが始まります.
ここにソースコードを貼ると量がすごいので書き換えるところを以下に示しておきます.(分からないところがあれば聞いてください)
exec ("node C:\Users\Seiya\Documents\リアルタイムWEB\socket\accept.js"."\t".$data1."\t".$data2."\r\n" );
のフォルダ内のパスを自分のPC内のパスに合わせて書き換える. var socket = io.connect('http://192.168.0.110:3000');
のIPアドレスを自分のPCのIPアドレスに書き換える var socket = io.connect('http://192.168.0.110:3000');
のIPアドレスも同様に書き換えるグラフのプロットにはEpoch.jsというものを用いています(html内).興味のある人は以下のリンクに細かい解説が載っています.
https://qiita.com/okoppe8/items/d8d8bc4e68b1da4a0a36
まだ満足のいく実行結果を得られていません!
グラフはプロットできるけれど処理が重なって値が同期できずに表示されます・・・
delayをどこかに挟めば治るような気はするけれどそれではリアルタイムではない気がする・・・
とりあえず今は修正中です!
B3の人はグラフのプロットが中身が正しいかは置いておいてとりあえず出力できればいいと思います.
修正終わり次第更新します.