「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



ずいぶん前に、温度センサLM35をarduinoに
繋いで温度を計って
みましたが、LM35は
ノーマルではマイナスの温度が計れません。
って訳で、以前秋月でLM60も買い置きをして
ありました。袋に入れっぱなしでしたが…

LM60は-40℃から+125℃まで
測ることが出来るし、S8100Bよりも出力
インピーダンスが低いので扱いもラクなはず。
便利そう。

ってことでスケッチを書いてみます。以前の
LM35用を流用します。いつものとおり
reduino-nano用なので、LEDはデジタル3ピン
に繋がっている前提です。適宜13番などに
変更して使って下さい。あと、for文のところの
不等号が全角になってるので、直して使って
ください。


int ledPin = 3; // select the pin for the LED
int analogpin0 = 0; // select the pin for analog0 input

double max = - 424.0 / 6.25; // temperature at ADC=0

int data = 0; // input data from ADC
int summary = 0; // summary of input data
int i;

double t_value; //temperature value


void setup() {
analogReference(INTERNAL); //use internal 1.1v reference
pinMode(ledPin, OUTPUT); // declare the ledPin as an OUTPUT
Serial.begin(9600);

Serial.println("start");
Serial.println((int)max);
}


void loop() {

digitalWrite(ledPin, HIGH);
delay(1800); //1.8s//

summary = 0;
for(i=0;i<50;i++){
data = analogRead(analogpin0); //read data from analog0 pin
summary = summary + data;
delay(2);
} //0.002*50 = 0.1s//

Serial.println(summary/50);
t_value = ((double)(summary)/50.0 /1024.0 * 1100.0 / 6.25) + max;

Serial.println((int)(t_value+0.5)); //round off

digitalWrite(ledPin, LOW);

delay(100);
}


maxという変数は、adcの入力値=0の時に
該当する温度です。つまりY切片ね。

LM60は-40℃から125℃の間は
出力が直線になるように補正されているらしい
ので、adcの入力値に傾きを掛けてから
Y切片を足せば温度が求まるというわけ。

例によって50回サンプルして平均取ることで
ノイズを均しています。

実行すると最初に「start」と同時に表示される
のがY切片。adcの値が0の時に-67℃という
ことと同じ意味。(実際はそこまで計れませんが)



その次からは2秒置きにadcの測定値と該当温度
が表示されます。
表示されているのはとりあえず整数部だけ。
adcの参照電圧は内蔵1.1Vを適用しているので、
計れるのは0V~1.1V。ってことは
約108℃までしか計れません。でもまぁ
そこまで計れれば充分でしょう。

表示される温度はLM35の時よりも、
部屋にあるほかの温度計になんとなく近い
温度になってるみたい。
データシート上は±3℃の誤差を含むみたい
ですが、かなり正確な雰囲気。

まぁ、そもそもarduino(というかmega168)の
内蔵1.1V参照電圧ってデータシート上は
最大0.1Vの誤差を含んでいるので、
LM60の誤差だけでなくむしろそっちの方が
大きな誤差を生じそう…。

LM60の精度を最大限活かすには、もっと
正確な外部参照電圧を使う必要がありそうですが、
arduinoは外部参照電圧とは相性が悪いんですよね…

まぁ、arduinoならそこそこの温度が判れば充分
でしょう。多少誤差があってことだけ抑えておけば
まぁ使えるのでは?


http://nekosan0.bake-neko.net/connection_thermo.html
↑全然書き進めてなかったことに気付きました。
せっかくなのでLM35、LM60、S8100B
についてまとめておこうと思います。



コメント ( 0 )




長年愛用してきた「カメレオンレジスト」が
いつのまにかカタログ落ちしていました。

といっても少し前から店頭からなくなっていたのは
判っていたんですが、サンハヤトのケミカル用品って
コロコロ代替わりするので、いつもの感じなのかな?
と高を括っていたんですが、そうでもなかった…

(いや、写真関係のケミカルならこんなにコロコロ
 仕様が変わったらクレームの嵐なんだけど、
 基板関係は最終的にはエッチングできればいいや
 的な話なので、写真関係よりは牧歌的なのかも)

で、新しく出た「クイックポジ感光基板」を入手して
置いたんだけど、これまでカメレオンレジストで
培った経験値がパーですよ。(TへT)

昨日寝る前に、感光と現像だけ済ましてしまおうと
思って、「クイックポジ感光基板」を使ってみたら、
もう大変な事態。メチャクチャ。

で、色々検索かけてみたら、困ってる人がたくさん!
以下、それらの方々。

http://oshiete1.goo.ne.jp/qa5079973.html

http://blogs.yahoo.co.jp/srvkwschar/49970432.html

http://jq1ocr.exblog.jp/9864109/

極め付けがこれ

http://blog.livedoor.jp/wpj2/archives/65223644.html

っていうか、ネコじゃん!!!(^O^)面白い…


さて、サンハヤトのサイトを眺めてみると
http://www.sunhayato.co.jp/products/details.php?u=1413&id=09110

>「誰でも作れる感光基板」を目指して、感光剤を
>一から見直し、製造工程や包装材に至るまで、
>全てに改良を加えました。


…ウソつき…

永く写真なんぞをやっていると、現像時間が短い
スーパープロドールとか使うよりもミクロファイン
の方が失敗し難いとか、現像液2倍希釈して
使う方が現像時間は延びるけど扱いは楽とか、
そういう感じかと思ってるんだけど…。
(仕上がりの良し悪しとか、仕上がりの階調とか
 の話ではありませんよ、念のため)


で、「ムキーーー」と来たので、夕方帰り道に
ホームセンターに寄ってケミカルライト買って来ました。
10Wタイプを2本。

そう。オイラは「ちびライト」とか持ってないので、
フジのカメラフィルム用ライトボックスライトボックス
NEW5000 インバーター
をご愛用してきたわけですが、
これの内蔵蛍光灯をケミカルライトに交換して
使っちゃおうっていうお話。これが10W2本ってわけ。

サンハヤトのちびライトに比べればはるかに大きい
面積を照らせるので、基板のサイズに関わらず
失敗は減らせるだろうし、露光時間なんかも
メーカーサイトに従えば失敗は減らせそうかな、と。


そうそう。サンハヤトのサイトを見ていると、
「露光テストチャート」なるモノがあるのね…
http://www.sunhayato.co.jp/products/details.php?u=1426&id=10044

これ使えば露光時間をもっと正確に割り出せるのか…
繰り返し使えるらしいし…欲しいな…


それにしても、40秒現像かぁ。もっと長くても
全然問題ないんだけど。なんでコロコロとケミカル
を替えるんだろう?



そうそう。悶々としながらアレコレ考えていたんですが、
生基板に感光剤をスプレーして感光基板つくるなんて
出来ないのかな?って思って調べてみたら…

SPECTRUMさんのサイトでこんな記事を発見。
http://members.at.infoseek.co.jp/spectrum123/target/target_2/target_2.htm

そうかぁ。やっぱ「感光スプレー」みたいなものが
あったのね…

お手軽に使えるなら、クイックポジ感光基板より
そっちの方がいいなぁ。もう手に入らないのかなぁ?


とりあえず、ライトボックスに蛍光灯を移植し、
電気が点くことだけは確認しました。(あまり
眺めすぎると雪目と同じ状態になっちゃうので
ご注意!)

あとは明日以降だな。




コメント ( 0 )




googleの題字が「稲妻マーク」になってるので、
なんだろうと思ってクリックしてみたら、ニコラ テスラ
の誕生日なのね…

makeブログとかで、ステラコイルで演奏する
スーパーマリオとか見るまで知らない人だった
んだけど、

http://ja.wikipedia.org/wiki/%E3%83%8B%E3%82%B3%E3%83%A9%E3%83%BB%E3%83%86%E3%82%B9%E3%83%A9

↑wikipediaとか読むと面白いね。



コメント ( 0 )




VBで、以前作ったプロジェクトをそのバージョンの
まま残しておいて、新たに別のプロジェクトに
流用しながら別バージョンを作る方法を調べて
いたんですが、良く判りませんでした。

例によってネコロジーPCのバージョンアップを
考えていたんですが…


プログラムのソースコードだけなら簡単にできる
んだろうけど、RAD環境の場合ってソースコード
だけをコピってきて貼り付けるだけじゃぁ
済まないからなぁ…
(正確には画面設計もソース展開されているん
 だろうけど、コピって来て貼るってわけにはね…)

RAD環境は便利といえば便利なんだけど、
プログラムコードをクラス化して流用していく
というよりは、古いものを残したまま
別バージョンを作り直すみたいなことは
想定していないのかなぁ?


なんにしてもVBはいつもイマイチ以下だなぁ。



コメント ( 0 )




例によってmakeブログ。

Bus Pirateの記事を眺めてみて欲しくなる。

うーん、これだけのI/Fが一つに纏まっていると、
テストの時に便利だな。

しかも安いしね。

日本のお店でも発売にならないかな?27ドル15セント
らしいから、日本では3000円くらいで販売に
なってくれると嬉しいんだけどな。



コメント ( 0 )



« 前ページ 次ページ »