福野泰介の一日一創 - create every day

洗濯ロボットを作るとして、きれいになったかどうかを見るためのセンサーに、水の濁り具合を見る、アナログ濁度センサー(SEN0189)が使えそう。

鯖江、Hana道場にて、高校の先生と実験!


こちらGravity、DFROBOTの濁度センサー。敷居設定付きのデジタルとアナログ、出力方式を切り替え可能。


取っ手がついているをセンサー側につけよう。(逆だとセンサーが反応しない)


ジャンパーワイヤ3本、黒っぽい、赤っぽい、その他の色を準備し、黒、赤、青の延長として接続。IchigoJamに、黒をGND、赤をVCC、その他の色をアナログ入力に対応した、IN2に接続して、準備完了! (仕様上の電源は5Vですが、3.3Vでも動くので便宜的にVCCに接続しています。40mAとそこそこ電流も必要なので、うまく動かない場合は、本来の5VをCN5から取得するなどして使ってください。その場合の入力は後述の分圧が必要です)

数値のチェックは簡単、ANA(2)の値を表示するだけ!

?ANA(2)

空気中、水、濁った液体など、いろいろなシチュエーションでの値を見てみよう。


水道水。625という値。1023が3.3Vなので、2.02Vの出力がでているということ。
連続表示する場合は、プログラム!

10 ?ANA(2) 20 WAIT60 30 GOTO10 RUN

1秒毎(=60回の画面書き換え/60フレーム)に値が連続して表示されます。(VIDEO3で文字を拡大表示)
表示する間隔を広げる、狭めるのは、20行の数値を変えて、エンター、再度RUN(=F5)でOK!


ちょっと牛乳を混ぜたら、621。


もうちょっと混ぜて、593。濁るほどに電圧が下がります。


ここまで濁ると、289。


もっと濃くすると、138。久々の化学実験、おもしろい!

繰り返しと配列を使って、数値をIchigoJamに記録しておくことも!

5 FOR I=0 TO 101 10 A=ANA(2):?A:[I]=A 20 WAIT60 30 NEXT RUN

102コ記録すると止まります。N秒目の値を見たい時は

?[N]

全部ずらっと画面に表示

FOR I=0 TO 101:?[I];" ";:NEXT

IchigoJam上で簡易的なグラフ化するのもありですね!
もっとたくさん値を保存した場合、0-255ばでの値に限られますが、POKE#700,A で、#7FFまでの256コ保存できたり、いろいろ工夫次第!


本来の電源5Vを使う場合は、アナログ入力値が飽和(最大値の3.3Vをオーバー)してしまうので、同じ値の抵抗2つ(この場合10kΩ)を使って分圧することでIchigoJamで読み取りできます。


Gravity DFROBOTのセンサー群、いろいろつないで楽しめます!(濁度センサーは別売り)
身の回りのコンピューター、もっと使いやすく、もっと性能アップするにはどうするか!?
いろいろチャレンジしてみましょう。

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像