Processingを用いてArduinoのシリアル通信からのデータ可視化ツール(テンプレート)の作成
前回 BMX055の9軸センサからオイラー角算出
http://tomi-tomi-pon.hatenablog.com/entry/2018/11/07/012854
9軸センサの値を読み取りましたが数値では大変見にくいため今回はそのデータを可視化させるアニメーションの元として1つのリアルタイムグラフを作ります。
用はProarduinoのシリアルモニタ見たいな物と考えてもらって構いません。
使用するソフトウェアはProcessingです。
以下arduino側のプログラム
以下Processing側のプログラム
ポートは各々使用しているポートに変更してください
このプログラムはarduino側で1秒ごとにインクリメントとデクリメントしたデータをProcessingで表示してるだけのプログラムです。
とりあえずわかりやすいようにコメントアウトしました。
[簡単な補足]
arduino側は表示したいデータnama_1とname_2を
[nama_1]
[,]
[data_1]
改行
…
との順に送信しています。終了文字の改行をprintln("/n")としてデータ仕切り信号としようとしましたがProcessing側の
String myString = myPort.readStringUntil('\n');
で上手くデータが区切られずprintlnとしています。
[まとめ]
arduino側で識別値とデータをカンマで区切りProcessing側で受け取ったのを2つグラフ化するという非常にシンプルなものです。Processingはデバック用のツールではありませんが、シンプルで使い方によって面白い&便利なためおすすめです。
今回は値を増加、減少させただけですが次はこれを応用して9軸センサのデータ可視化を行います。
次 BMX055のデータをグラフ化、3Dアニメーション化させる