14
14

More than 3 years have passed since last update.

micro:bitとProcessingでSerial通信して可視化する

Last updated at Posted at 2018-02-22

はじめに

バイト先のプログラミング教室でmicro:bitを少し触り、楽しかったので色々試しています.
フィジカルコンピューティング系はやっぱり可視化したくなっちゃうのでProcessingとSerial通信してみました.

今回はmicro:bitに可変抵抗を繋いで,読み取った値をProcessingに送り,円の大きさを変える,ということをやります.

[追記:2021/04/03]
こちらの方法でもSerial通信出来ますので、使いやすい方をお試し下さい。
micro:bitの加速度をProcessingへ送り可視化する

また、この記事ではmicrobitからProcessingへ数値を送信していますが、反対にProcessingからmicrobitへ値を送りたい場合はこちらの記事を参考にしてみて下さい。
micro:bitとProcessingでメディアアート入門

micro:bit

micro:bitの「高度なブロック」の中に「シリアル通信」のブロックがあるのでそれを使います.
スクリーンショット 2020-01-12 20.06.55.png

Processing

import processing.serial.*;
Serial microbit;

float val = 0;

void setup() {
  size(640, 480);
  String portName = Serial.list()[1];
  println(portName);
  microbit = new Serial(this, portName, 115200);
  microbit.clear();
  microbit.bufferUntil(10);
}

void draw() {
  background(0);
  ellipse(width/2, height/2, val, val);
}

void serialEvent(Serial microbit) {
  String str = microbit.readStringUntil('\n');
  str = trim(str);
  println(str);
  int sensors[] = int(split(str, ' '));
  println("sensors[0], "+ sensors[0]);
  val = map(sensors[0], 0, 1023, 0, 500);
}

配線

配線にワニ口-オスピンの自作ジャンプワイヤーを使いましたが,micro:bitの変換基盤も売っているので,それ使うとやりやすいと思います.

IMG_0963.JPG

実行結果

つまみをグリグリやると円の大きさが変わります.

スクリーンショット 2018-02-22 18.06.55.png

スクリーンショット 2018-02-22 18.07.08.png

最後に

今回は簡単にSerial通信を試しましたが,色々と使えそうな気がしました.
通信の速度は通常で115200になっているみたいです.

冒頭でも書きましたがこちらの記事も参考にしてみて下さい。
micro:bitの加速度をProcessingへ送り可視化する
micro:bitとProcessingでメディアアート入門

14
14
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14