下手の横好きのスクラップブック!!

下手の横好きの、いろいろな記録です。
電子工作・PIC・Arduino・太陽光発電・写真などetc

Arduinoで照度計を作る(2)

2013-09-30 | Arduino

前回で照度の測定データを、シリアルモニタおよびLCDで確認できました。
続けて、測定データをマイクロSDカードに保存することにします。
sparkfun.comの「マイクロSDシールド」を使うことにします。

配線

ブレッドボードでテスト


シールドの作成

グラフ作成
SDカードに保存されたデータをエクセルにインポートしてグラフを作成してみました。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Arduino で照度計を作る(1)

2013-09-28 | Arduino

Arduinoで照度計が作れないかと調べてみると、照度を周波数に変換するフォトIC「S9705」があることが解りました。
しかも、秋月電子で2個入りで¥400で販売されていましたので、早速照度計にチャレンジしてみました。

照度-周波数変換フォトIC S9705 (浜松ホトニクス株式会社製)
S9705は、入射光の強度に比例して発信周波数が変化する矩形波(デューティー比50%)が出力されます。
この矩形波をArduinoでカウントし照度(Lux)に変換します。

S9705の分好感度特性と出力周波数-照度(データシートより)




今回参考にしたページ
簡易照度計V2(S9705)
S9705 照度-周波数変換フォトICを使った照度計

S9705の出力測定
S9705は、約5mm角程の小さいものなので基板にとりた後、ブレッドボードで仮配線して出力周波数、波形等を計測してみました。
      

ブレッドボードで仮配線


S9705の出力波形

 照度が低い時の出力波形      照度が高くなった時の出力波形

   

Arduinoと接続
光の強度に応じて、矩形波の周波数が変化することが確認できましたので、Arduinoに接続します。

スケッチ
Arduino でS9705 の出力をカウントするためには、周波数カウンタのライブラリが必要になります。
Arduino Frequency Counter Library Down load >FreqCounter Libraryからライブラリがダウンロードできますので、それをダウンロードした後、Arduino IDE の libraries フォルダにコピーをしておきます。
また、出力された周波数から照度に変換するには、簡易的に「出力周波数/500 」で変換できるようですのでそれを採用します。

//Illminometer
#include <SD.h>
#include <FreqCounter.h>

long int frq;
long n;

void setup(){
Serial.begin(9600);
Serial.println("Frequency Counter");

if(!SD.begin(8)){
   Serial.println("Card failed,or not present");
  n = 0;
   }else{
     Serial.println("Card initialized.");
}
}

void loop ()
{
  FreqCounter::f_comp = 8;             // Set compensation to 12
  FreqCounter::start(1000);            // Start counting with gatetime of 1000ms
  while (FreqCounter::f_ready == 0);  // wait until counter ready
  frq = FreqCounter::f_freq;            // read result
   n=n+1;
 Serial.print(n);
 Serial.print(",");
 Serial.print(frq);              
 Serial.print(",");             
 Serial.println(frq/500);   // S9705 100Lux=50KHz

File dataFile = SD.open("datalog.txt", FILE_WRITE);
if (dataFile) {

dataFile.print(n);
dataFile.print(",");
dataFile.print(frq);
dataFile.print(",");
dataFile.println(frq/500);
dataFile.close();
 delay(981.7);
}
else{
  Serial.print("error opening datalog txt");
 
}
}

 

シリアルモニタとLCDで測定値を表示
スケッチは掲載しておりませんが、最初に測定した周波数と照度の値をシリアルモニターとLCDで確認した見ました。
シリアルモニタ出力


LCDに出力して確認

測定値と照度計の比較

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

結合したセルにデータをコピーする方法

2013-09-09 | エクセルのツボ

結合したセルにデータをコピーしようとすると、普通のコピー&貼り付けではうまくいかない。
データ数が少なければ一つ一つ入力するか、コピーしてもよいが、データ数が多ければそうもいかない。
そこで、入力済みのデータをなんとか利用する方法を考えたり調べたりしてみました。

①OFFSET関数を利用する方法


②セル参照の「=」の代わりに仮の文字を入れ、オートフィルフィルでコピーした後に、仮の文字を置換を使って「=」に変える方法
 仮に入れる文字は「#」を使っていますが他の文字でも可。
 ただし「=、-、+、*」等は使えない。他にも使えない文字があるかも知れません。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

我が家の太陽光発電 2013年8月の発電量

2013-09-05 | 太陽光発電

8月の天候は、全国的に高温で局地的に大雨となる日が多くありました。
岩手県でも、8月9日に局地的な豪雨があり大きな被害を出しております。
盛岡での日射量は179.2時間で平年比141%となりましたが、昨年と比べると若干少なくなっております。
発電量は前年比10.6.5%と少し増えており、劣化していた太陽電池の取り換え効果が少しはあったのかとおもいます。
気象データは気象庁発表のデータを使用しております。

 

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする