製作モジュール一覧

ラベル 温度計 の投稿を表示しています。 すべての投稿を表示
ラベル 温度計 の投稿を表示しています。 すべての投稿を表示

2017年1月14日土曜日

0.1Ωのシャント抵抗を使って電流を検出してみる。

LTSpiceでシミュレーション

回路図

RLは100Ωの負荷抵抗。Rshuntが0.1Ωのシャント抵抗で、両端の電圧を検出して(ローサイド)LM358の非反転増幅回路で100倍に増幅している。

I1の電流源をDC解析してみた。

DC解析


20mA以下で非線形になっていて、出力電圧が若干上振れしている。

ブレッドボードで実験



回路自体の電源は9V電池を使った。電流源は自作の可変両電源を使って電圧を変化させて測定した。

Rshunt(Ω)    0.1
R1(Ω)    100.09
R2(kΩ)    9.987
増幅率    100.7801978

非反転増幅回路なので増幅率はA=1+(R2/R1)

抵抗値は、LCRメーターのDE-5000のDCRモードで測定した。

RLを100Ωで測定(実測値:RL=99.34Ω)


IN(V) I(mA)(VIN/(RL+Rshut)) I->V(mV) OUT(V) I(mA) err(mA) err(%)
0 0 0 0.02 1.984516843 1.984516843 #DIV/0!
1.235 12.41954948 1.6 0.1616 16.03489609 3.615346613 29.11%
2 20.11263073 2.6 0.245 24.31033132 4.197700592 20.87%
3 30.1689461 4 0.357 35.42362564 5.254679546 17.42%
4.01 40.32582462 5.2 0.47 46.63614581 6.310321188 15.65%
5.01 50.38213998 6.7 0.58 57.55098844 7.168848458 14.23%
6.01 60.43845535 8 0.689 68.36660524 7.928149885 13.12%
7 70.39420756 9.2 0.802 79.5791254 9.184917835 13.05%
8 80.45052293 10.5 0.909 90.19629051 9.745767578 12.11%
9.01 90.60740145 11.9 1.024 101.6072624 10.9998609 12.14%
10.01 100.6637168 13.2 1.166 115.6973319 15.03361512 14.93%

IN(V)はRLへの入力電圧、I(mA)(VIN/(RL+Rshut))はVIN/(RL+Rshunt)で計算した電流値、I->V(mV)はLM358のNon-Inv端子への入力電圧、OUT(V)はLM358からの出力電圧。

I(mA)は(VOUT/[増幅率])/Rshuntで計算した電流値。

誤差要因はいろいろありそうだが、20mA以上で+20%程度の誤差が出ている。



RLを10Ωで測定(実測値:RL=9.97Ω)

500mA程度まで流すために、RLを10Ωのものに交換して測定した。


IN(V) I(mA)(VIN/(RL+Rshut)) I->V(mV) OUT(V) I(mA) err(mA) err(%)
0 0 0 0.0198 1.964671674 1.964671674 #DIV/0!
1.177 116.8818272 15.9 1.318 130.7796599 13.89783273 11.89%
2 198.6097319 26.8 2.24 222.2658864 23.65615452 11.91%
2.99 296.9215492 36 3.01 298.6697848 1.748235688 0.59%
4.01 398.2125124 54.7 4.51 447.5085481 49.29603564 12.38%
5 496.5243297 65.3 6 595.3550528 98.83072315 19.90%



300mAあたりは理論値と合った値が出ているがグラフはガタガタしている。

RLの温度測定


この間作ったPSoC 4 Prototyping Kitとサーミスタを使った温度計でRLの温度を測定してみた。

サーミスタは手持ちの103AT-11を使っていたが、薄型の103JT-025というタイプを仕入れて使ってみた。

特性は大体同じなのでそのまま差し替えた。薄型なので温度変化に敏感。普通の環境の温度を測定するには103AT-11の方が使いやすい。

素子に張り付けるカプトンテープもaitendoの6mm幅のものではなく、秋月の10mm幅のものした。素子に固定できる粘着力がある。



500mAのときの温度グラフ


150℃近くまで温度上昇。10Ωで500mAなので2.5W。大きな電流を流すときは注意しましょう

メモ:


0.1Ωのシャント抵抗だと、ブレッドボードの中の抵抗や接触抵抗も影響してそう。

誤差は大きいが、正確な電流値を測定することではなく、電圧降下を少なくするのが目的のでこれと3桁電圧表示器で電流計を組んでみる予定。

2016年12月14日水曜日

ロギング可能な温度計 でけた

回路図


基板図


VBUSとGNDのテスト・ポイントを追加。

部品面



PSoC 4 Prototyping KitとChar LCDを取り外した状態


ジュンフロン線でジャンパを配線してみた。

PSoC 4 Prototyping KitのUSB-Serial Bridgeの基板が裏返っているのは設計ミス。裏返したらつじつまがあったので苦肉の策(^q^; Eableで自分でDeviceを作って利用したがDeviceのConnectでミスってたようだ。Eagleで部品を作るのはだいぶ慣れてきたが、あんまり使いやすいとは思えない(--;

ピンソケットに刺しているRは、サーミスタの抵抗値を算出するための基準とするもので差し替えられるようにしておいた。

はんだ面



部品面でジャンパを這わせたのではんだ面はスッキリした。

Github: (ギフハブじゃないよ)
https://github.com/ryood/PSoC_4_Thermistor

自作のEagleのパーツ
https://github.com/ryood/EAGLE_Library
↑mylib2.lbrを使用

メモ:


Eagleで部品面でジャンパを配線する方法がわかったので(参考:「Eagleでユニバーサル基板の部品面でジャンパー配線を作図する (メモ)」)実践してみた。配線の手間ははんだ面でポリウレタン線を使って配線した場合と大差ない感じだが、部品面の見た目はあまりよくないな~。ショートしたり抜けたりする事故が減ることを期待している。

あまり考えていなかったが、この基板上でBootloader Hostを使って、そのままPSoC 4 Prototyping Kitにプログラミングできる。PSoC 4 Prototyping Kit上のタクトスイッチを押しながら、基板上の電源スイッチをOn/Offすればプログラミング・モードに入る。ということは、PSoC 4 Prototyping Kitのプログラマーとしても使える(^q^/

サーミスタはカプトンテープを使って測定対象に貼りつけようと思っているが、aitendoで買った5mm幅のカプトンテープの粘着力が弱くてすぐはがれてしまう。全然消費していないのでもったいないが、違う製品も試してみるべきか。

2016年12月6日火曜日

ロギング可能な温度計 基板設計


ラズパイやLME49600のヘッドホンアンプの実験用に温度測定は必須な感じなので、ユニバーサル基板で配線すること、基板の部品面で配線する方向で基板の配線図を考えてみた。

回路図




基板図


もっと簡単にできるかと思っていたが、HDなんちゃら互換のパラレルLCDの配線はなかなかむずかしい。

2016年12月4日日曜日

ロギング可能な温度計の構想

PSoC 4 Prototyping Kitとサーミスタ(SEMITEC 103AT)とPSoC 4 Prototyping Kitを使って素子の温度を測る温度計を実作するつもりで基板の配線を考えてみた。

参考「PSoC 4 Prototyping Kitでサーミスタを使ってみる。(LCD表示)

回路図




基板図(配線はまだ)


PSoC 4 Prototyping KitにくっついているUSB Serial BridgeのUSBプラグ的なプリントパターンは接触が甘いので使わないことにして、Mini-USBジャックを別途用意して、こちらでPCとのUART通信をさせることにした。

ちょっと困ったのが、PSoC 4 Prototyping KitのUSB Serial Biridge基板の両脇のピンヘッダ/ソケット用のパターンにUSBからの入力信号線が引き出されていないこと。USBジャックに差し込む用のパターンに直に線材をはんだ付けして使うことにした。



ブレッドボードで実験


部品並べ



部品並べ(LCDを外した状態)



パワースイッチはオルタネート・タイプ(押したらずっとON、もう一度押したらずっとOFF)タイプのプッシュスイッチで、強制的にUSBからの給電を接続、切断して再起動する。これはPSoC 4 Prototyping KitのUSB Serial Bridgeを再起動しないとPCのシリアル・コンソールがUSBデバイスとして認識しない場合があるため。

2016年9月25日日曜日

PSoC 4 Prototyping Kitでサーミスタを使ってみる。(LCD表示)

サーミスタ(SEMITEC 103AT)の測定回路をPSoC 4 Prototyping Kitに移植してみた。

UART通信に加えて、キャラクタLCDに値を表示するようにしてみた。

配線図(Pioneer Kit)


配線図(Prototyping Kit)


Github:
https://github.com/ryood/PSoC_4_Thermistor/tree/master/PSoC/PSoC%204%20Pioneer%20Temp%20Meas/PSoC%204%20Prototyping%20Temp%20Meas.cydsn

メモ:


Putty、CPLTではソフトウェアの起動後にPSoC 4 Prototyping KitをUSB接続しないとシリアル通信がうまくいかない。PSoC 4のResetではだめで、USB-Serial BridgeをResetしないとダメなのかも?

Teratermは接続しなおさなくてもシリアル出力を読み取れるようだ。

2016年9月23日金曜日

PSoC 4 Pioneer Kitでサーミスタ(SEMITEC 103AT)を使ってみる。

素子の温度を測りたいのでサーミスタを使ってみた。

以前、I2C出力のHDC1000を使って温度湿度を測定する実験をしてみたが、形状が素子の温度測定には使いにくそうなので(貼りつけられなさそう)、部品箱で眠っていたサーミスタの103ATが使えるかどうか実験してみた。

要件としては

1.素子に貼りつけて、素子の温度を測定できる
2.素子が高温になる場合もあるので100℃ぐらいまでは測定できる
3.1秒ごと程度にサンプリングしてロギングできる
4.手持ちの部品を使ってなるべくお金をかけない

PSoC 4 Pioneer Kit


高機能テスタだと熱電対というセンサーを使って、PCにもロギングできるようだ。(OWON DMM B35など)。

いずれは買うかもしれないとして、なるべくお金をかけないように手持ちの部品で考えてみた。

ロギングで一番楽なのはPCとUART通信すること。UARTでCSV形式のデータを出力できれば、CPLT(http://www.datatecno.co.jp/cplt/cplt-download.htm)を使ってロギングやグラフ化が簡単にできる。

Arduinoがいちばん使い慣れてるが、UART通信しようと思うとArduinoをまるまる使わないといけない。aitendoのあちゃんでいいのは安いけどUART通信には別途それ用の回路が必要。

PSoC 4 Prototyping KitだとUARTも使えるし値段も安いのでPSoC 4を使ってみることにした。

が、Prototyping Kitは何かと実験しにくいのでまずはPioneer Kitでテストしてみた。

TopDesign

PSoCにはThermistorCalcというコンポーネントがあってサーミスタの抵抗値->温度を変換してくれるので使ってみた。ソースをチラ見するとSteinhart-Hart式の定数を生成して計算してくれるマクロのようだ。

Thermitor CalculatorのDATASHEETを見ると、抵抗値によってインスタンスを分割したほうがいいようなことが書いてあるのでlow、mid、highの3つに分けてみた。

D_1のZennerで2.5Vの定電圧源とし(ツェナーは正確な電圧を出力できないので、実際は基準電圧を作るのにTL431を使った)、Opamp_1のボルテージフォロワーで基準電圧の出力を増強。

R_2のサーミスタとR_refで分圧してそれぞれの電位差を差動モードのADCに読み込ませた。

ThermistorCalcのGetResitance()はこういう分圧と測定の仕方で電圧値を与えてサーミスタの抵抗値を算出しているようだ。

配線図


Github:
https://github.com/ryood/PSoC_4_Thermistor