なんでも作っちゃう、かも。

Arduino/Make/フィジカルコンピューティング/電子工作あたりで活動しています。スタバの空きカップを使ったスタバカップアンプなど製作。最近はもっぱらArduinoと3Dプリンタの自作に興味があります。

Arduinoで遊ぼう -温度センサIC、MCP9700を使って温度を測る

Posted by arms22 on 2011年04月19日 0  0

How to use mcp9700 Linear Active Thermistor /w Arduino

MCP9700はMicrochip社の温度センサICで、温度をアナログ電圧に変換し出力します。-40℃から+125℃までの測定範囲を持っていて、0℃~+70℃の範囲では±4度(最大)の精度もちます。外付け回路は不要で電源とGND、VOUTをマイコンのADCにつなげばすぐに使えます。


Arduinoとの接続



mcp90700-connection-2.png
1 VDD <-- 5V (Arduino)
2 VOUT --> A0 (Arduino)
3 GND <-- GND (Arduino)
3.3V (Arduino) --> ARef (Arduino)
VDDに5V、VOUTにA0を接続します。ADCの分解能をあげる為にArduinoの3.3VをARefに接続します。Arduino UNOの場合、高精度の3.3Vレギュレータを搭載しているので、さらにADCの精度を上げることができます。MCP9700のVDD、GND間に0.1uFのバイパスコンデンサを入れておく。


温度の求め方


次のような1次式で簡単に求められます。
温度 = (センサ出力電圧 - 0℃の時のセンサ出力電圧) / 温度係数
MCP9700の温度係数は10mV/℃、また0℃の時のセンサ出力電圧は500mVとなっています。例えばセンサ出力電圧が750mVの時、
温度 = (750mV - 500mV) / 10mV
温度 = (250mV) / 10mV
温度 = 25℃
となります。しかし実際の値は計算した値と異なります。素子ごとのバラつきや温度に対して非直線性の出力特性により変化します。このような素子はある温度でシステムを校正することで精度を向上させることができます。例えば室温25℃で校正した場合、0℃~70℃の範囲で±0.5℃の精度を得ることができます。


サンプルスケッチ


const int voutPin = 0;

void setup()
{
  Serial.begin(57600);

  // ARefに3.3Vを接続し、それを基準電圧にする
  // 外部リファレンスを使わない場合、mV計算時の3300を5000に変更すること
  analogReference(EXTERNAL);
}

void loop()
{
  // MCP9700の出力電圧を取得
  int reading = analogRead(voutPin);

  // AD値をmVに変換(外部リファレンスを使わない場合、3300 --> 5000に)
  float voltage = ((long)reading * 3300) / 1024;

  Serial.print(voltage);
  Serial.print(" mV, ");

  // mVを摂氏温度[C]に変換
  // 0度で500mVのオフセットがのっているので500mVを引く
  // 10mV / 温度
  float tempC = (voltage - 500) / 10;

  Serial.print(tempC);
  Serial.print(" degress C, ");

  // 摂氏温度[C]を華氏温度[F]に変換
  float tempF = (tempC * 9 / 5) + 32;

  Serial.print(tempF);
  Serial.println(" degress F");

  delay(1000);
}


MCP9700/01 低消費電力リニアアクティブサーミスタIC
http://ww1.microchip.com/downloads/jp/DeviceDoc/21942B_JP.pdf

温度センサーIC MCP9700-E/TO 低消費電力リニアアクティブ (8個入)
http://akizukidenshi.com/catalog/g/gI-03286/

How to measure temperature with Arduino and MCP9700
http://starter-kit.nettigo.eu/2010/how-to-measure-temperature-with-arduino-and-mcp9700/



Prototyping Lab ―「作りながら考える」ためのArduino実践レシピ (Make:PROJECTS)
小林 茂
オライリージャパン
売り上げランキング: 40918



Ads by Google

Leave a reply






管理者にだけ表示を許可する

該当の記事は見つかりませんでした。