processingにてcsvファイルを読み取り 

スポンサーリンク

 

・目的

 Arduinoから送られてきたデータを保存したcsvファイルを

 processingで読み込 み、グラフとしてプロットする。

 

・使用したもの

 ノートpc(Windows 10)

    Processing IDE

 

・方法

 プログラムコードを図1に示した。読み取るファイルは1列目はarduino

 データを取得してからの時間(単位:ミリ)、2列目は温度センサが

 返した値(変換式に通して℃にしてはない)である。

 ファイルの内容の一部を図1に示した。

f:id:shangtian:20170323221924p:plain

図1:ファイルの内容の一部

 String lin;
int ln;
String lines[];

void setup() {
  ln = 0;
  lines = loadStrings("teraterm.csv");
//txtファイルの読み込み background(0); size(1000,800); } void draw() { lin = lines[ln];//ln行目を収納 String [] co = split(lin,',');
//カンマの前後で区切り配列に収納 if (co.length == 2){ float x = float(co[0]); float y = float(co[1]); fill(#FC0A0A); noStroke(); ellipse(x/200,500-y*5,10,10); } ln++;//次の行に移行 if(ln == lines.length) noLoop(); //最後の行まで読み込み終わった時、ループを終了させる。 }

図2:プログラムコード

 

 読み込ませるcsvファイルをprocessingのスケッチが入れてある

 フォルダーに入れる。

 

 

・結果

 縦軸はセンサーの値を5倍したもの、横軸はセンサーの値を読み込み

 始めてからの時間(単位:ミリ秒)としたグラフを図2に示した。

f:id:shangtian:20170323220832p:plain

 図2:データのプロット