HOME > オートサンプラー

研究Tips:研究を効率化するためのTipsを紹介しています。

オートサンプラー(自動採水器)の作製

はじめに

一定時間毎にサンプルを容器に自動採水する装置です。市販品は、おそらく、工業用の大がかりなものしか手に入らないと思います。数十万円程度でしょうか?ここでは、安価かつ乾電池電源で稼働することができる(=フィールド調査で使用し易い)オートサンプラーを作製します。別の記事で紹介したペリスタポンプの作製Arduinoを使用したタイマーの応用になります。ポンプヘッドの数次第ですが、1万円程度で作製できます。例えば、1時間毎に下水処理場で採水したい場合など、劇的に人的労力を削減することができます。

材料

  1. ポンプヘッド
    • 安価かつそこそこの流量で採水できるものがいいと思います。必要な個数だけ購入します。
    • 例えば、INTLLAB 12V DC DIY小型蠕動ポンプ (Amazon, ASIN: B07GNBNTW3) 流量5〜40 ml/min (1,300円程度)
  2. Arduino UNO: 例えば、keyestudio UNO R3 開発ボード (amazon, ASIN B01JRFS1QI)
  3. DCリレーモジュール:
    • 8チャンネル(=ポンプ)使用できるものだと、リレーモジュール,SODIAL(R)5V 8チャンネルリレーモジュールボード(ASIN B00IIDXYTA)など。
    • 設置するポンプヘッドの個数がまかなえれば、チャンネル数が少ないモジュールボードで構いません。
  4. 収納ケース
    • ポンプ、リレーモジュール類が納められればなんでも構いません。パーツケースなど。例えば、アステージNCボックス #11ナチュラル
  5. ブレッドボード:
    • あると便利です。例えば、ブレッドボード BB-801 (秋月電子通商 P-05294)。なければ、全ての配線をまとめてハンダで固めてしまって構いません。
  6. ジャンパワイヤ オス-メス 10本くらい、リレーモジュールとArduinoおよび乾電池電源の接続用
  7. DCプラグ付バッテリースナップ (秋月電子通商 P-07356) 1個
  8. 電線(単芯のワイヤ): 例えば、耐熱通信機器用ビニル電線 2m×10色 (秋月電子通商 P-08996)
  9. ワイヤーストリッパー (例えば、ベッセルワイヤーストリッパー 3500E-1)
  10. バッテリースナップ (秋月電子通商 P-00207) 2個
    • リレーボード用の1個について、スナップの電線とジャンパワイヤ(オス-メス)のオス側とハンダでくっつけておきます。ハンダで接続した箇所はビニルテープを巻く、熱収縮チューブをつけるなどして絶縁しておくと良いです。メス側をリレーボードに接続します。
    • ポンプ電源用の1個はブレッドボードへさします。単芯ではないのでささりづらいことがあります。その場合、電線にハンダを少し吸わせて、固めてください。
  11. アルカリ9V乾電池(高価格なものほど高寿命。) 3個
  12. 電気ドリルとドリルビット、ホールソー (ポンプヘッドによってサイズが異なります。)
  13. 収納ケースへ固定するためのネジ、ナット、スペーサー類
    • M3ネジ;長さ 5 mm(秋月電子通商, P-10358), 8 mm(P-10359), 10 mm (P-03000)があればおよそ用足ります。
    • M3ナット(P-03584)。
    • スペーサー(10mm)セット (秋月電子通商P-01864)
  14. ドライバー、ノギスなど汎用工具

作製方法

オートサンプラー配線図.jpg収納ケースの側面に穴を開け、ポンプヘッドを取り付けます。リレーモジュールボード、Arduinoをケースに固定するなら、ボードの穴の位置でケースに穴を開け、スペーサーをつけて、ネジ固定してください。このあたりはペリスタポンプ編Arduinoタイマー編を参考にしてください。ケース加工が終わったら、図のように部品を配線します。ポンプの個数が多いので混み合った回路になっていますが、各ポンプヘッドで同じ配線の繰り返しをしているだけです。

Arduinoへ以下のようなスケッチ(青字部分)を描き込みます。簡単に説明すると、タイマーの時間間隔で指定ピン(ここでは8〜13ピン)をHigh・Low制御し、LOWのとき、指定されたリレーモジュール(K1〜K8)へ5Vの信号を送ってポンプを稼働させるプログラムです。ポンプは指定時間だけLOWで動作し、採水する内容になっています。スケッチの、ポンプの稼働時間、待ち時間を適宜変更して使用してください。ポンプの稼働時間はポンプの流量と採水ボトルのサイズ次第です。また、Arduino側のピンと接続するリレーモジュールの組み合わせも好みに合わせて、変更してください。個別の試料を採取するのではなく、混合試料(コンポジットサンプル)を採取したい場合、採水ボトルを1本にまとめて全てのチューブをそのボトルに接続してください。

//オートサンプラー用ポンプリレー制御
//Arduinoのピン定義
void setup() {
pinMode(8, OUTPUT); //8ピンを出力用に使用、8ピン=ポンプ6
pinMode(9, OUTPUT); //9ピンを出力用に使用、9ピン=ポンプ5
pinMode(10, OUTPUT); //10ピンを出力用に使用、10ピン=ポンプ4
pinMode(11, OUTPUT); //11ピンを出力用に使用、11ピン=ポンプ3
pinMode(12, OUTPUT); //12ピンを出力用に使用、12ピン=ポンプ2
pinMode(13, OUTPUT); //13ピンを出力用に使用、13ピン=ポンプ1
}

//以下、動作プログラム
void loop() {
//全ポンプ停止(電源投入後から最初サンプリングまでの待ち時間)
digitalWrite(8,HIGH); //ピン番号のポンプを停止する。HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間、ミリ秒
//ポンプ6で採水
digitalWrite(8,LOW); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(5000); //採水時間(ミリ秒) 例:ポンプ流量が30ml/minだったとすると、5000 msecの採水時間で2.5ml採水できる。
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
//ポンプ5で採水
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,LOW);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(5000); //採水時間、ミリ秒
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
//ポンプ4で採水
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,LOW);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(5000); //採水時間、ミリ秒
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
//ポンプ3で採水
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(5000); //採水時間、ミリ秒
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
//ポンプ2で採水
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,LOW);
digitalWrite(13,HIGH);
delay(5000); //採水時間、ミリ秒
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
//ポンプ1で採水
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,LOW);
delay(5000); //採水時間、ミリ秒
//全ポンプ停止(次サンプリングまで待ち時間)
digitalWrite(8,HIGH); //HIGH=停止、LOW=動作
digitalWrite(9,HIGH);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
delay(15000); //待ち時間(ミリ秒)、次サンプルまでの待ち時間を設定する。
}

現在の回路では、ポンプへ供給する電圧は9Vです。ポンプに供給する電源の電圧を変更して採水速度を調整することも可能です。乾電池の下流に電圧コントローラー(ペリスタポンプ編で使用したもの)を設置することで調整できます。個人的にはポンプの稼働時間を変更して対応する方が簡単に実現できると思います。

採取した試料の保存方法

微生物反応等、採水後の影響が気になる場合があると思います。採水した水の何を分析したいかによって保存方法が変わりますが、採水ボトルへ酸・アルカリを分注しておく、ボトルを氷をつめた発泡スチロール容器内に設置するなどすることで対応できます。また、採水元の濁度次第ですが、採水流路にシリンジフィルター(例えば、Whatman GF/Dガラス繊維濾紙とスィネクスフィルターホルダーの組み合わせ)を設置し、濾過しながら採水も可能です。


環境微生物工学研究室