Seeeed Studio Groveのセンサを取付けるユニットを3Dプリントする
以前、関わった岐阜県での地域振興系イベントでチケットを開口部から挿入すると音が鳴る装置を制作した。といっても企画や外装等の基本的な制作はイベント参加者の方々がやっていて、当時働いていた職場に技術的な相談があったため、仕事として協力したという経緯だった。実際はArduinoでの電飾制御や音源の再生、センシング周りをやった。
5月ごろだったろうか、一緒に制作した役場の方から連絡があった。当時はアイデアスケッチから外装制作まできちんとやっていただいた方だった。協力した際は、1年限りでイベント実施の2日間動作するものと聞いていたものの、様々な事情で今年もやることになったそう。また好評だったこともあり地域の催しでも展示するなどしているということだった。嬉しいことではあるものの、仕事が変わったこともありどうしたものかと思いつつ、今なら少し改善できるかなという気持ちもあったので引き受けることにした。担当者の方から直接連絡来てなかったら引き受けてなかったかもしれない(笑)。
変更点は2つ。1つはセンサーを超音波センサからラインファインダへ変更。超音波センサはセンシングする範囲が広く、またギリギリまでどんなものが挿入されるかわからなかったため、ボリュームなどで検出範囲を調整しやすいかなと思ったけど、今回のような近接でのセンシングでは向いてない感じだった。もう一つはそれに合わせてセンサを取り付けられるパーツを3Dプリンタで作ることにした。
今回はSeeeed StudioのGroveをつかった。Groveはセンサ単体と比較すると単価は高いけど、JSTのコネクタを接続してサンプルコードを書き込めばとりあえず動く。そこから書き換えていくなりしていけばいいので今回のような予算があって1点ものの制作でそれほどのんびりできない場合は便利だ。コネクタがブレッドボードよりも信頼できる且つ、耐久性もあるのもいい。気がつけばセンサやアクチュエータのラインナップも増えて、今はラピッドプロトタイピングで何かする場合の選択肢の一つになっている。
少し話が変わるけど、外形が規格化されてるので今回のようにモデリングするにあたっては、センサ単体のパーツよりも設計しやすい気がした。出力は2時間。2時間と言われて「なんだ意外と早い」と思う自分は、3Dプリンタに完全に飼いならされている。プリント時の積層の溝がひっかかるかなと思って出力方向を調整したけどテストしたところ大差ないようだった。
以下テストコード。
int signalPin1 = 2; // connected to digital pin 2 int signalPin2 = 3; // connected to digital pin 3 boolean isTouch; void setup() { pinMode(signalPin1, INPUT); // initialize the digital pin as an output: pinMode(signalPin2, INPUT); // initialize the digital pin as an output: Serial.begin(9600); // initialize serial communications at 9600 bps: } void loop() { isTouch = false; if (LOW == digitalRead(signalPin1) || LOW == digitalRead(signalPin2)) { isTouch = true; } Serial.println(isTouch); delay(100); }
やっていることはそれほど先端技術でもないけど、こういう基本的なことを積み重ねて経験値を得て、次の技術に立ち向かいたい。