processing:csv書出

小泉先生のサイトのにcsv保存のProcessingコードがあるのをみて,このページを準備しようと思いました. 小泉先生のサイトのものは,mouse位置をサンプルにしていたので,それをシリアル通信に変更したのみのコードは下記のとおりです. Inspired by Naoya Koizumi, https://sites.google.com/site/koizuminaoya/tips/processing_csv

変更すべき箇所は,String型のstr_formatとportです.最初にここを自身の環境に合わせたものに変更してください.str_formatは作成するcsvファイルの先頭行に名前をつけるだけです.

// Tetsuaki Baba
// Processing のサンプルコード
// str_format: データ名をカンマ区切りで書いておく
// port: 該当するシリアルポートへのパスを明記(Windowsの場合はCOMX(Xは数字))になります.

import processing.serial.*;
PrintWriter output;
Serial myPort;
boolean flg_start = false;
long time=0;
String str_format = "x,y";
String port = "/dev/cu.wchusbserial1440";
void setup() {
  size(320, 240);
   myPort = new Serial(this, port, 115200);
}

void draw() {
  while ( myPort.available() > 0 ) {    
    String inBuffer = myPort.readString();
    if ( inBuffer != null ) {
      if ( flg_start ) output.print(inBuffer);
    }
  }
}

void keyPressed() {
  if ( key == 's' ) {
    flg_start  = !flg_start;

    if ( flg_start == false ) {
      // end of recording
      output.flush(); 
      output.close();
    } else if ( flg_start == true ) {
      // begining of recording
      String filename = nf(year(), 4) + nf(month(), 2) + nf(day(), 2) + nf(hour(), 2) + nf(minute(), 2) ;
      output = createWriter( filename + ".csv"); 
      output.println( str_format );
    }
  }
}
  • processing/csv書出.txt
  • 最終更新: 2018/10/19 11:33
  • by baba