🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

2回答

2664閲覧

Arduinoとトランジスタを用いたスイッチング回路の組み方がわかりません

sso1

総合スコア0

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2021/02/21 06:18

編集2021/02/21 13:28

Arduinoとブレッドボードを用いて『タクトスイッチが一度押されるとDC12Vのファンが作動する回路』を構築したいのですが、回路を組むにあたってトランジスタを使う必要があり、回路の組み方がわかりません。プログラムは以下の通りです。要するに8番ピンにつながったタクトスイッチを押した時に13番ピンにつながったファンを作動する回路を組みたいです。お聞きしたいこととしては以下の3つです。よろしくお願い致します。
①トランジスタのスイッチング回路を組むときの各抵抗値の計算方法がわからない
下図が現時点でイメージしている回路図なんですが、これは正しいでしょうか?イメージ説明
②2SC1815Yのトランジスタを使用していますが、スペック的に問題ないかどうか、問題があれば今回の要求を満たすオススメのトランジスタを教えて欲しいです。
③タクトスイッチを押すと作動する回路とトランジスタの回路を、どのように組み合わせてダイオードや抵抗をブレッドボード内に配置すべきかがわかりません

int buttonstate = 0;
void setup() {
pinMode(13, OUTPUT);
pinMode(8, INPUT);
}

void loop() {
buttonstate = digitalRead(8);
if (buttonstate == HIGH) {
digitalWrite(13, HIGH);
}
else(buttonstate == LOW) {
digitalWrite(13, LOW);
}

}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fumu7

2021/02/21 06:57

スペック的に問題ないかどうかは、モーターとトランジスタ、電源、グラウンドなどが、どのように接続されているのか、モーターの仕様(どのぐらいの電圧でどうさするのか、その時の電流はどのぐらいか)、電源の仕様(出力電圧はどのぐらいで、どのぐらいまで電流を供給できるのか)、といった条件が明らかにされないと検討できません。 こうした情報を質問に追加して下さい。
guest

回答2

0

CPUの出力は5Vでますので、あとはトランジスタの出力にどんだけ電流流したいのか、です
トランジスタの増幅度(hfe)は、100程度ありますんで、例えば、100mA流れるファンであれば、トランジスタのベースには、1mA以上の電流を流す必要があります
まあ、あまりぎりぎり狙うと、ファンの方のばらつきで110mA流れるファンにあたったら速度が遅くなるとかあるので、余裕を5倍ぐらい取りましょう

ということで、CPUの5Vの出力で、5mA流す、となると、オームの法則で1KΩの抵抗を出力とベースに繋げばいいという話となります

投稿2021/02/21 07:00

y_waiwai

総合スコア88038

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2021/02/21 12:15

計算式はそのとおりです、が、モータは起動時に大きな電流が流れます。 そのトランジスタだと最大定格で150mAなので、ちょっと心もとないですね もうちょっと大きなトランジスタ(数A~十数Aクラス)を選定したほうがいいでしょうね
sso1

2021/02/21 13:50

なるほど、承知致しました。そういう意味で余裕を5倍くらい取るべきなんですね。では最大で500mAほど流れると考えてそれに耐えうるトランジスタと抵抗値の設定をする必要がありますね。
guest

0

逆に聞くと、わかっていることはなに?

①トランジスタのスイッチング回路を組むときの各抵抗値の計算方法がわからない

考えている回路を示して下さい。

②2SC1815Yのトランジスタを使用していますが、スペック的に問題ないかどうか、問題があれば今回の要求を満たすオススメのトランジスタを教えて欲しいです。

使用しているファンにもよりますが、多分不適です。C1815はIcが150mAだっと思います。これは、「一瞬でも超えてはいけない値」です。一方、ファンの電流表示は平均値でしかなく、特に起動時などは大きな電流が流れるため、殆どの場合にスペックを満たさないでしょう。
パーツ屋例えば秋月のNPNのトランジスタのページを表示して、Vceが30V以上、Icが1A以上の適当なものを探せば大体イケるでしょう。

③タクトスイッチを押すと作動する回路とトランジスタの回路を、どのように組み合わせてダイオードや抵抗をブレッドボード内に配置すべきかがわかりません

その程度の回路なら、電気的にちゃんと繋がっていれば難しく考えることはありません。


なんで質問を画像でいれるかなぁ...まぁいいか。
Q1.
そもそもファンがないですね。

必須とはいいませんが、私だったらファンに並列に0.1μFぐらいのコンデンサをいれてノイズ抑え、さらにダイオードもファンに並列に入れてモーターのコイルの逆起電力を吸収させます。( 'モーター 並列 ダイオード'とかでググればそういう話は出てくるでしょう)

Q2.
ファンに流したい最大電流をI、トランジスタの直流増幅率をHfeとしたとき、ベース電流がI/Hfe以上になるようにします。マイコンの出力電圧Vout、シリコントランジスタのベース-エミッタ間順方向電圧Vbe(0.7Vぐらい)とするとベース電流は(Vout-Vbe)/Rとなります。
つまり
I/Hfe>(Vout-Vbe)/R
を満たすRを求めればいいわけです。
Hfeはトランジスタのデータシートで調べて下さい。ばらつきが大きいので、設計としてはばらつきの範囲で一番低いHfeで計算することになります。コレクタ電流Icをたくさん流せるトランジスタは傾向としてHfeも低めになります。もちろん、ベース電流はたくさん流せばいいというものではなくて最大定格は決められていますし、マイコン側の出力電流の制限もあります。まぁ10mA以下にしておいた方がいいですね。もし、ベース電流10mAで足りないということだと、トランジスタを2段以上つなげることになります。安直にダーリントン接続とかすると通電時のコレクタ-エミッタ間電圧(Vce)が増えて発熱が大きくなるのでちゃんと考える必要があります。

投稿2021/02/21 08:42

編集2021/02/21 14:14
thkana

総合スコア7703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

thkana

2021/02/21 14:28

あと、気分的にプルダウン抵抗の1KΩは低すぎ(動く動かないの次元では問題ない)。自分だったら(状況にもよるけれど)10kΩ以上、多分47kΩとか使う。それ以前に、スイッチはピン-GND間に入れてプルアップして使う。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問