IO: 過電流検知について

obnizのioには電流の流れすぎを検知して自動停止・再開する機能があります。
obnizのプッシュプル5vを使っているとき、またはプッシュプル3vでoutput()を使っているときに検知します。

どのように出るのか

obnizのio0とio1に小さな抵抗をつないで実験してみます(まねしないように写真は載せませんが)。
その状態で単純にio0とio1をtrue/falseにして電流を流してみます。

var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function(){
  obniz.io0.output(true);
  obniz.io1.output(false);
}

すると、console.logの方に

io1: heavy output. output voltage is too low when driving high

このようなメッセージが繰り返し出てきます。

または、obnizのサイトのプログラムページからプログラムを動かすと、このような警告が出てきます。

これが過電流検知している状態です。

io1: heavy output. output voltage is too low when driving high

とありますが、これは io1をhighにしようと頑張っているけど、そこまで電圧が上がりません。
という意味です。
obnizはプッシュプル5vのとき過電流検知すると一度出力を停止します。停止して、約1msec後にまた出力するという動きを繰り返します。
この繰り返しが1度だけや何度かだけならわざわざ警告は出ません。(つまり警告がないのに過電流になっていることもありえます。)これがいつまでも続く場合にこのような警告が表示されます。

逆に

io1: heavy output. output voltage is too high when driving low

という場合もありえます。これは0vにしたいのに、電流が流れすぎていて、0vまで下がらない。という意味です。

このような警告が出る場合は、まずは配線が間違っていないかを確認しましょう。
配線が正しい場合、obnizから直接動かすのが難しい部品かも知れません。

obnizでは1Aまでそれぞれ流せますが、それを大きく超えるとこのような状況になります。
または、普段1Aまで流れないものだとしても、大きなコンデンサなどの容量性の負荷があると過電流検知が働いて動かすのが難しい場合があります。

過電流検知が働いてうまく動かせない部品を動かすには以下の方法があります。

  • 別の電源につなぐ
  • obnizのJ1ピンに接続する
  • obnizの2つ以上のioにつなぐ

もし、動かないのがその部品の電源の場合、obniz以外から電源を供給する方法があります。
次にobnizのJ1ピンというのがあります。J1ピンはUSB直結で、ここからUSBの5vと0vを取ることができます。
最後に、それで解決しないこともありますが、obnizの2つ以上のioにつなぐ方法があります。例えば、io0から繋いでいて過負荷になったらio0とio1につないで、どっちもoutput(true)で出力することで2箇所から出力するという方法です。

プッシュプル3vにおける過電流検知

先ほどの例はプッシュプル5vの場合です。

プッシュプル3vにも過電流検知があります。
ただし、こちらはio.output()で出力した場合のみ機能します。

また、プッシュプル3vはモータードライバでなくプロセッサから直接出力されるため過電流検知された場合はプロセッサを保護するために瞬時に出力が自動的に停止されます。

同じような状況で実験してみます。

var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function(){
  obniz.io0.drive("3v");
  obniz.io1.drive("3v");
  obniz.io0.output(true);
  obniz.io1.output(false);
}

すると、今度はコンソールにメッセージじゃなくエラーとして

[Error] Error: io1: output voltage is too low when driving high. io state has changed output to input

といったものが出てくると思います。

HTMLで動かした場合も警告の色でメッセージが表示されます。

エラーの内容にもありますが。この時点で出力は停止されます。
プッシュプル5vのときは引き続き出力されますが、そうではありません。

これが起きた場合、配線に問題がなければ、プッシュプル5vのときと同じように以下の方法で繋ぐ必要があります。

  • 別の電源につなぐ
  • obnizのJ1ピンに接続する
  • obnizの2つ以上のioにつなぐ


Next : IO: pull-up pull-down

You will Get in Few Days

Circuit for Starter “obniz Board” is available on Amazon and other online stores.
You can get it at below

Our products and resellers

Forum

Visit our developer’s forum to discuss and discover technologies.

Forum

Contact

Feel free to contact out support and technical team.

Contact us