• ベストアンサー

電子回路

PICを使ってcdsセルで暗くなったらLEDを点灯させる回路を教えて下さい PICは16Fシリーズを使っていますがソフトは必要ありません 簡単な回路図で結構です

質問者が選んだベストアンサー

  • ベストアンサー
  • inara1
  • ベストアンサー率78% (652/834)
回答No.3

>少し難しいですが挑戦してみます (1)だったら簡単だと思いますが。 >MPLAB IDEのVer.8.0をインストールすると初期画面が現れてすぐに終了してしまいます。Ver.6.60は旨くいくのですがどうしてでしょうか。 私はPICについては詳しくないですが、ただ今勉強中なので、試しに以下の手順でDドライブにインストールしてみましたが大丈夫でした(ちゃんと起動します)。私のPCのDドライブの空きは2.6Gですが、インストール後のフォルダ容量は360MBなので1.5Gなら大丈夫でしょう。  (1) 参考URLのページの一番下にある MPLAB IDE v8.00 Full Release Zipped Installation をクリックし、保存先をデスクトップに指定して保存  (2) Dドライブに「MPLAB IDEVer.8.0」というフォルダを作り、ダウンロードした圧縮ファイルを右クリックして解凍先を「MPLAB IDEVer.8.0」に指定(これはどこでも良いとおもいますが、変なところにファイルを展開されるのも嫌なのでそうしました)。  (3) 解凍後、自動的にインストールが始まる。途中でインストール先を聞かれるので、「MPLAB IDEVer.8.0」をを指定。  (4) PCを再起動後、デスクトップに作られた「MPLAB IDE v8.00」のアイコンをWクリックするとちゃんと起動する。 >Dドライブは130GBも有るのでDに入れようとしてもCドライブのProgram Filesに入ってしまいます。分れば教えて頂きたくお願いします。 (3)のところで、インストール先を聞かれたときにそのまま OK か Next にしたのでは?

参考URL:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002
uesan_255
質問者

お礼

早速のご回答有難うございました。 Dドライブへの保存をやってみましたが保存先を聞いてこないので出来ませんでした。システムで何かあるのと思います。 あきらめてVer.6.6を再インストールして使うことにしました。 ほんとうに有難うございました。 今後ともよろしくお願いします。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • inara1
  • ベストアンサー率78% (652/834)
回答No.2

2つの方法があります。 (1) CdSの電圧をAD付PICで直接測定し、AD入力電圧がある電圧 V1 以上になったまましばらく時間が経過したらLEDを点灯させて、ある電圧V2 (V2 < V1) 未満になってしばらく時間が経過したらLEDを消灯するようにプログラムする。 (2) CdSの電圧をコンパレータで比較し、ある電圧 V1 以上になったらPICにHレベルの信号を送り、ある電圧V2 (V2 < V1) 未満になったらPICに Lレベルの信号を送る。PICはHレベルの信号がある時間連続して来たらLEDを点灯させ、Lレベルがある時間連続して来たら消灯させる。 いずれの場合も光強度を電圧に変換するために、CdSと直列に抵抗をつけた簡単な回路が必要ですが、(1)の場合は以下の回路になります。    Vcc ( 5V )    │     R    │    ├─┬─→ PICのAD入力   CdS  C     ├─┘    GND (0V) C はノイズカット用コンデンサで、0.1μF~10μF程度(電解コンデンサを使う場合はGND側を-極性にする)とします。R は、LEDを点灯させたい明るさのときのCdSの抵抗と同程度とします。CdS の抵抗が Rc のとき、PICのAD入力電圧は Rc*Vcc/( R + Rc ) となります。CdSの特性はここ(http://tokyo-ct.net/usr/matsu/createthings/cds/index.html)が参考になるかと思います。 (2)の場合、PICは結局何もしていないので、PICを使わなくても以下の回路で済みます。  Vcc ( 5V )   コンパレータ    ├───┬──┬──┐    │    │    │   R5    R1    R2    │   │    │    │  ┏┷┓  ▼ LED    ├─┬─ ) -┨- ┠─┤   CdS C  ├─┨+ ┃  │    ├─┘  │  ┗┯┛  │    │     │   │   R4    │     ├── ) ──┘    │     R3   │    ├───┴──┘    GND (0V) R5 はLEDを点灯させたときのLED電流を決めるもので    R5 = ( Vcc - Vf )/If で計算します。Vcc は電源電圧 [V]、Vf はLEDの順方向電圧 [V]、If はLEDの電流 [A] です。Vcc = 5V、Vf = 3.6V、If = 20mA = 0.02A としたとき、R5 = 70 [Ω] となります。 暗くなってCdSの抵抗が Ron [Ω]以上になったらLEDを点灯させ、明るくなってCdSの抵抗が Roff [Ω] 以下になったら消灯するようにするには    Ron/( R1 + Ron ) = R3*( R2 + R4 )/{ R3*( R2 + R4 ) + R2*R4 }    Roff/( R1 + Roff )*Vcc = R3*{ ( R2 + R4 + R5 )*Vcc - R2*Vf }/{ ( R2 + R3 )*( R4 + R5 ) } となるように、R1~R4 の値を決めます(これは結構大変な計算になります)。例えば、Ron = 100kΩ、Roff = 90kΩとした場合、R1 = R2 = 10kΩ ならば、R3 = 97.450kΩ、R4 = 1.18MΩ とします。 Ron > Roff としているのは、もし Ron = Roff にしてしまうと、点灯するぎりぎりの明るさのときろで、ノイズによって点灯と消灯が繰り返されてしまうためです。LEDが点灯する抵抗Ronと、消灯する抵抗Roffに差をつけることで、1度LEDが点灯したらCdSの抵抗がRoff以下になるまで消灯しないようになります(消灯するときも同様)。このRonとRoffの差を大きくするほどノイズに強くなりますが、あまり大きいと、消灯するときと点灯するときの明るさに差ができてしまい不自然になります。上の計算では明るさの差を10%程度にしているのでまず気にならないと思います。

uesan_255
質問者

お礼

有難うございました。初心者の私には少し難しいですが挑戦してみます。 もう一つ質問なのですがマイクロチップ社のMPLAB IDEのVer.8.0をインストールすると初期画面が現れてすぐに終了してしまいます。Ver.6.60は旨くいくのですがどうしてでしょうかCドライブのメモリ不足が原因かも分りませんが1.5GBは空き容量は有ります。 Dドライブは130GBも有るのでDに入れようとしてもCドライブのProgram Filesに入ってしまいます。分れば教えて頂きたくお願いします。

すると、全ての回答が全文表示されます。
noname#252929
noname#252929
回答No.1

PIC見たいな高価な部品を使うような物では無いですよ。 逆にPICを使うのならADコンバーターを持っている物が必要になります。 簡単な回路なら、PICで作る電圧計のような物を探して見てください。 動作原理は変わらないですから。

uesan_255
質問者

お礼

早速のご回答有難うございました。 最近PICを始めたばかりで何も分らずブレッドボードで色々やってみて試行錯誤しています。 あまり簡単なのはPICでは向かないのですね

すると、全ての回答が全文表示されます。

関連するQ&A