SSブログ

2SD2531のシミュレーション・モデルを作る [電子工作]このエントリーを含むはてなブックマーク#

パワー・トランジスタを用いた回路のシミュレーションを行おうと思いました。 ところが、手持ちの2SD2531というトランジスタは、シミュレーション・モデルが提供されていません。 東芝さんはシミュレーションモデルを提供してくれないようだし、そもそも、東芝のサイトからは2SD2531のデータシートさえ入手できません。 仕方ないから、自分でモデルを作っちゃおう。

とは、言ってもモデル・パラメータの設定方法など知りませんので古い参考文献を引っ張り出してきました。

飽和電流を設定する

WS000289.png

最初のステップは、パラメータ IS の設定です。 バイポーラ・トランジスタのベース・エミッタ間電圧 VBE は、ベース電流の対数値の一次式になり、電圧が 0V になる時の電流値を IS とあらわしています。

モデル・パラメータを決めるために使用する回路図は、これです。 この回路では純粋にベース・エミッタ間のダイオードとしての特性を測定することになります。 ところが、 2SD2531 のデータシートには、同じ条件での測定グラフはありません。 さて、どうしようかな。

WS000290.png

試行錯誤の結果、決めた値が、 Is=2.1e-14 です。 VBE-IB の関係はこうなりました。

データシートによると、コレクタ電流が IC=0.1A の時、 VBE=0.64V です。 hFE-IC グラフによると、 IC=0.1A の時に hFE=170 なので IB=0.59mA と推定されます。 そこで、IB=0.59mA の時に VBE=640mV となるように調整したのが、この値というわけです。

もっとベース電流を減らしたほうがベース抵抗などの影響が減るため、誤差が小さくなるはずです。 本当は、実測すべきなのでしょうが、まあ、こんなもんでいいでしょう。

hFE特性をあわせる

WS000291.png

次は、 hFE の特性グラフを再現します。 シミュレーションのために使用したのは、この回路図です。

参考文献では、 IB を変化させたときの IC の値を横軸に、 hFE すなわち IC/IB の値を縦軸にとっていたのですが、LTspiceの波形表示には、横軸の変数を任意に指定する方法が見つかりませんでした。 そのため、「電圧制御電流源」を使用して、「 VCE が 5V になるように IB を調整する」フィードバック回路を作成して、 IB を供給しました。 「電圧制御電流源」のゲインは、誤差が十分に小さくなるように百万倍としてあります。

LTspiceで横軸の変数を指定する方法について、コメント欄にて gomisai さんに教えていただきました。 横軸を左クリックした時に出てくる "Horizontal Axis" の "Quantity Plotted" に数式を入れるのだそうです。 詳しくは、LTspiceのグラフの横軸を変更する:ねがてぃぶろぐをご覧ください。

このステップの調整は、結構大変です。 hFE は、コレクタ電流によって変動するのですが、電流が多くても少なくても低くなります。 そのために、多くのパラメータを設定しなくてはなりません。

WS000292.png

手始めに、参考文献の記述に従って、 hFE の最大値(360)を Bf に、 hFE が半減する時のコレクタ電流値 IC=0.55 を Ikf に設定してみました。 データシートによると、 hFE のピークは、 IC=0.06 のところにあるのですが、このグラフでは、もっとコレクタ電流の低いところにピークがあるようです。

WS000293.png

再び、試行錯誤して、パラメータを微調整しました。 IC=0.06 の所にピークのあるデータシートのグラフに良く似た特性ができました。 求めたパラメータは、以下の通りです。

Bf=700 Ikf=0.47 Nk=0.56 Ise=3e-13 Ne=1.48

アーリ効果を設定する

WS000295.png WS000296.png

次は、アーリ効果を設定します。 回路図と適当な値 50 を入れた時の結果は、こうなりました。 見てお分かりのようにデータシートのグラフとは、ずいぶん雰囲気が違います。 このパラメータは、必要があれば、後で調整します。

飽和電圧特性を設定する

WS000298.png WS000299.png

次は、コレクタ・エミッタ間飽和電圧 VCE(SAT) を調整します。 使用する回路図は、これです。 「電流制御電流源」を使って、データシートの記述どおり、 IC/IB=20 に調整してあります。

まず、コレクタ電流 IC=10mA の時の VCE(SAT) がグラフから読み取った値 VCE(SAT)=16mV になるように Br を調整します。 その結果、 Br=31.0 が求まりました。 ずいぶん、大きくなっちゃったね。

次は、 IC=4A の時の VCE(SAT) をグラフから読み取った値 VCE(SAT)=1.74V になるようにコレクタ抵抗 Rc を調整します。 その結果、 Rc=0.411 が求まりました。

次は、ベース抵抗 Rb を求めたいのですが、データシートには、 VBE(SAT) のグラフがありません。 本当は、実測すればよいのですが、ここでは適当に Rc の十倍の Rb=4.11 としておきます。

AC特性を設定する

次は、AC特性をあわせます。 ところが、データシートでAC特性に使えそうな値は、 COB しかありません。 何とか、計算してみますか。

WS000300.png WS000301.png

データシートにある値、 COB=35pF は、 VCB=10V, IE=0, f=1MHz の時の一点での値です。 この条件の時、 COB のインピーダンスは、 1/(2×π×f×COB)=4547[Ω] となります。 そこで、 1mVP-P の信号を与えたときに流れる電流が 0.220µAP-P になるように Cjc を調整します。 その結果、求められた値は Cjc=85.6e-12 となりました。 Cje は、参考文献の記述どおり、 Cjc の1.5倍 Cje=128e-12 としました。

このシミュレーションは、電圧も電流も微小になっているので、精度の良いシミュレーションが必要になります。 そこで、Relative tolerance 1e-5, Absolute Voltage tolerance 1e-8(V), Absolute Current tolerance 1e-12(A) としてシミュレーションをおこないました。

スイッチング特性は、どうしましょう?

参考文献にあった最後のステップは、スイッチング特性です。 ところが、データシートには、スイッチング特性に関する項目は、記述がありません。 しかたないから、デフォルトの 0 のままにしておきます。

使用上の注意

以上、パラメータを決めてきましたが、温度特性については全く設定していません。 また、データシートだけを情報源としており、実物の測定などは一切行っていません。 そのため、使用条件によっては合わない可能性もありますので、必要であればパラメータを修正してください。

.model 2SD2531 NPN(Is=2.1e-14
+Bf=700 Ikf=0.47 Nk=0.56 Ise=3e-13 Ne=1.48
+Vaf=50
+Br=31.0 Rc=0.411 Rb=4.11
+Cjc=85.6e-12 Cje=128e-12
+Vceo=60 Icrating=4 mfg=TOSHIBA)

参考文献

トランジスタ技術 1991年 6月号
この記事は、「SPICEによる電子回路設計セミナ」という連載を参考にしました。 この記事は、単行本にはなっていないのかなあ。

参考になりそうな文書

Chapter 5 EEE 102 Course Material
カリフォルニア州立大学サクラメント校の講義資料のようです。 "BJT Fundamentals Lecture Slides"にバイポーラトランジスタの話が書いてあります。 "FORWARD"と"REVERSE"って、そういう意味だったのか。
Principles of Semiconductor Devices
こちらは、コロラド州立大学ボルダー校の講義資料(市販本?)です。 SPICEのパラメータの計算式が書いてありますが、これを計算するんですか?
H. K. Gummel and H. C. Poon, "An Integral Charge Control Model of Bipolar Transistors," Bell. System Tech. J., vol. 49, pp. 827-852, May 1970.
バイポーラ・トランジスタ・モデルの元祖は、この論文だそうです。 googleさんに聞いても、論文そのものは出てこないな。
IC-CAP Characterization & Modeling Handbook
Agilentさんのパラメータ抽出ソフトウェアのマニュアルです。 この中に"6.2.1 Gummel-Poon bipolar model"という"SPICE"モデルとパラメータの意味について詳しく書いてあります。 何より、視覚的に理解できるところがうれしい文書です。

scilabで遊ぼう (12) [電子工作]このエントリーを含むはてなブックマーク#

WS000226.png

本物のOPアンプで発振器を作ります。 今回もscilabは登場しません。

LTspiceで回路構成を決める

LTspiceのシミュレーションで、ゲインを上げると発振器になることがわかりました。 それじゃあ、実際に発振させてみようということになりました。 使用するOPアンプは、STマイクロ社のLM358です。 digi-keyで安かったもので。

WS000288.png

今回作ったのは、こんな回路です。 発振周波数を耳でも確認したかったので、2kHz付近で発振するようにRC移相器の定数を変えました。 その結果、ゲイン43.9倍の時に約2kHzで発振が起こるということがわかりました。 実際の回路では、"Rf"部分を68kΩの抵抗と50kΩの可変抵抗で作り、ゲインを変えながら発振の様子を観測します。

LM358で発振器を作る

2501891

ブレッドボード上に組んでみました。 右下に2.2kΩが並んでいるのが移送器の部分です。 右上には、2SC3327で作ったエミッタフォロワを配置して、波形を観測する際に使用しました。

波形の観測は、どうしよう

発振器を作るのは、いいのですが、発振波形を確認するためには、オシロスコープが欲しくなります。 でも、私はそんな機材を持っていません。 そこで思い出したのが、参考文献(1)の記事です。 ここでは、PCのオーディオ入力を利用してPCをオシロスコープのように使うWaveSpectraというフリーウェアが使用されています。 WaveSpectraは、efu's pageで提供されています。 これを使うことにしました。

WS000287.png

参考文献(1)の記事でも書かれていましたが、LM358は、出力に十分なバイアス電流を流さないとひずみが出るそうです。 実際にやってみると、こんな波形が出てきました。 たしかに、スイッチング部分でひずみが見えます。

WS000282.png

そこで、OPアンプの出力部分に10kΩの抵抗を付けて、プルダウンした結果がこの波形です。 極端なひずみはなくなりましたが、波形の下半分が欠けています。 これは、OPアンプの出力範囲が足りないために、飽和したのではないかと思います。

発振が始まったときの"Rf"と"Rs"の抵抗値は、実測したところ95.9kΩと2.162kΩでした。 ゲインは、44.4倍ということで、シミュレーションどおりの値になっています。 また、発振の始まる周波数は、2080Hzと読み取れました。

LM6132に換装してみた

WS000284.png

波形の下半分が欠けることがわかったので、OPアンプをナショナル・セミコンダクタ社のLM6132に換装してみました。 これは、Rail-to-Railと呼ばれる、入出力共に電源電圧いっぱいまで使うことが出来るOPアンプです。 たまたま、サンプルが手元にあったものですから。

その結果がこれです。 確かに下半分が欠けることはなくなりましたが、スイッチングでのひずみが残っています。

MC33202に換装してみた

WS000286.png

次は、オンセミコンダクタ社のMC33202です。 このOPアンプもRail-to-Railと称しています。

このOPアンプの場合には、きれいな正弦波が現れました。 発振周波数は、予想よりもちょっと高めですね。

その他のOPアンプは、

他のOPアンプも色々と試してみましたが、安定した正弦波が観測できるものは、見つかりませんでした。 やはり、うわさどおり、この回路を発振器として使うのは至難の業のようです。

付録 : 「scilab で遊ぼう」索引

参考文献

(1) 特集:実験で学ぶトランジスタ回路設計
トランジスタ技術 (Transistor Gijutsu) 2006年 07月号 [雑誌]

トランジスタ技術 (Transistor Gijutsu) 2006年 07月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2006/06/09
  • メディア: 雑誌

LCDモジュールについて考えた (2) [電子工作]このエントリーを含むはてなブックマーク#

2475884

前回の記事で書いたようにLCDモジュールの入力端子にはプルアップが付いていることがわかりました。 5Vの電源で動作しているLCDモジュールでは、プルアップによって入力端子の電圧が5Vまで上がってしまう可能性があります。 今回は、5Vの電源で動作しているLCDモジュールに3.3V電源で動作しているマイコンをつないだら、なにが起こるのか実験します。

実験回路

今回、とりあげたマイコンは、MC9RS08KA8です。 このマイコンは、1.8Vから5.5Vまでの広範囲にわたる電源電圧に対応しています。 今回の実験では、5.0VのACアダプタの電源から3.3Vの3端子レギュレータ"TA48M033"を使用して作った3.3V電源をマイコンに供給しています。 もちろん、LCDモジュールには、5.0V電源を使用しています。

今回の実験は、「LCDモジュールにマイコンを接続したらどうなるか。」というのがテーマなので、マイコン側は「無限ループ」プログラムを実行させてムダに時間をすごさせます。 また、入出力端子の初期設定も行わないので、デフォルトの「プルアップもプルダウンも無い入力」の設定になるはずです。 さらに、この状態でLCDモジュールの入力端子とマイコンの端子との間に流れる電流を検出したいので、これらの端子は1kΩの抵抗でつなぎました。 なお、LCDモジュールの"E"入力だけは、プルアップもプルダウンもされていないため、10kΩの抵抗でプルダウンして、LCDモジュールが動作しないようにしてあります。

端子電圧を確認する

LcdPullupLeak1.png

電源を投入して、各端子の電圧を確認しました。 LCDモジュールの電源電圧が5.09V、マイコンの電源電圧が3.31Vでした。 これらの間につないだ抵抗の両端の電圧は、3.85Vと3.79Vでした。 1kΩの抵抗の両端に60mVの電位差が発生したので、抵抗に流れる電流は、60µAと計算できます。

マイコンの端子は、入力設定になっているはずです。 それなのに、なぜ、電流が流れるのでしょうか。 それは、以前の記事「端子に電源よりも高い電圧を与えると何が起こるか」にも書いたように、寄生ダイオードが存在するからです。 マイコンの端子から電源端子に向かって、寄生ダイオードが存在します。 このダイオードに電流が流れるため、電源電圧3.31Vよりもダイオードの順方向電圧降下分高い3.79Vの電圧がマイコンの端子にあらわれます。

ここでは、寄生ダイオードと書きましたが、入力端子の静電破壊を防ぐ目的で入れられたダイオードが存在する場合もあります。 どちらにしても、定常的に電流を流すように作られたものではありませんので、電流を流し続けると問題が起こる可能性があります。

マイコンの最大定格を確認する

この実験から、マイコンの端子には、3.79Vの電圧がかかっていることが確認されました。 このマイコンの仕様書にある絶対最大定格では、端子の電圧の範囲を-0.3VからVDD+0.3Vと定めてあります。 VDDは電源電圧の意味ですので、この場合の絶対最大定格の最大値は、3.61Vとなります。 つまり、この実験は、「絶対最大定格を超えた使い方をしている悪い例」であると言えます。

絶対最大定格を守るには

それでは、絶対最大定格を守るには、どうしたら良いのでしょうか。

前回の記事で実験したように、LCDモジュールの入力端子を36kΩの抵抗でプルダウンすると、入力端子の電圧は3.1Vよりも低くなります。 この状態でマイコンを接続すれば、マイコンの端子に3.3Vを超える電圧は発生しなくなります。

ところが、この方法では、常に約85µAの電流が流れてしまいます。 LCDモジュールの6本の入力端子を使おうとすると、それだけで0.5mAの電流を消費してしまい、地球に優しくありません。

正式に3.3V電源のマイコンでLCDモジュールを駆動しようとしたら、3.3Vの信号を5Vの信号に変換するレベルシフタが必要です。 具体的には、74HCT04などの入力閾値が低い汎用ロジックを使うとうまくいきます。

MC9RS08KA8を使う場合には、5V電源を使うことも出来るので、簡単に解決することができます。

参考文献

トランジスタ技術 (Transistor Gijutsu) 2008年 07月号 [雑誌]

トランジスタ技術 (Transistor Gijutsu) 2008年 07月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/06/10
  • メディア: 雑誌
Interface (インターフェース) 2009年 02月号 [雑誌]

Interface (インターフェース) 2009年 02月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/12/25
  • メディア: 雑誌

LCDモジュールについて考えた (1) [電子工作]このエントリーを含むはてなブックマーク#

2462920

LCDモジュールは、マイコンと接続して簡単に文字を表示する事ができるので、工作にはよく登場します。 でも、時々、「それでいいの?」という使い方が見受けられます。 この記事では、LCDモジュールについて、深く考えてみます。

入力の処理

LCDモジュールには、制御信号入力端子とデータバス入出力端子があり、これらをマイコンに接続して使用します。 IC使うときには、当然のこととして、未使用端子は適切に処理しなくてはなりません。 このLCDモジュールを使うときにも、各入力端子はLCDドライバにつながっているはずなので、適切な処理が必要です。

これらLCDモジュールの制御には、日立製作所(当時)のHD44780、または、その互換品が使われているということになっています。 そこで、googleさんに教えてもらった、データシートで、未使用端子の処理方法について調べてみました。 その結果、"E"入力以外の入力端子および入力状態の"DBx"入出力端子には、プルアップ素子が付加されるらしいことがわかりました。

プルアップの特性を調べる

LCDモジュールの端子には、プルアップが装備されていることがわかったのですが、秋月電子で入手したLCDモジュール(SD1602HU0B-XA)の仕様書には、そんな記述はありません。 だったら、勝手に調べてみましょう。

まず、VDDとVSSに5.0Vの電源を与えます。 また、"E"入力は、LCDモジュールが動かないように1kΩの抵抗でプルダウンしておきます。 これだけでも、十分なのですが、LCDに何も出てこないと寂しいので、VO端子を100Ωの抵抗でプルダウンし、ついでにバックライトも100Ωの抵抗を使って光らせました。 これで、準備はおしまいです。

あとは、手持ちの様々な値の抵抗(R)を使って、"RS"端子をプルダウンし、そのときの"RS"端子の電圧(VRS)をハンディテスタで測定・記録していきます。

R (Ω)VRS (V)
5.09
1.00E+064.99
2.20E+054.81
1.00E+054.22
7.20E+044.03
6.80E+043.83
5.60E+043.62
5.10E+043.49
4.70E+043.37
3.60E+043.01
3.30E+042.83
2.70E+042.542
2.40E+042.306
2.20E+042.139
2.00E+041.986
1.50E+041.535
1.10E+041.146
1.00E+041.031
7.50E+030.77
6.80E+030.706
5.60E+030.596
4.70E+030.491
3.30E+030.346
2.70E+030.279
2.40E+030.2503
2.20E+030.2283
2.00E+030.2092
1.80E+030.1881

"RS"入力端子での電圧降下(VDS=5.09-VRS)を横軸に、"RS"端子から流れ出した電流(IDS=VRS/R)を縦軸に、グラフを書かせるとこうなりました。

WS000244.png

もし、プルアップが本当の抵抗であったなら、グラフは直線になります。 ところが、実験の結果を見ると、電流値が途中から頭打ちになっています。

これは、いわゆるFETのI-V特性というものです。 つまり、プルアップ素子と言われているものは、抵抗ではなくFETで出来ていると推測されます。

次回予告

LCDモジュールの入力にプルアップが装備されているらしいことがわかりました。 負荷を付けなければ、プルアップの作用で入力端子は5Vまで上がってしまいます。 次回は、この入力端子に3.3V電源のマイコンをつないだらどうなるか調べてみます。

参考文献

トランジスタ技術 (Transistor Gijutsu) 2008年 07月号 [雑誌]

トランジスタ技術 (Transistor Gijutsu) 2008年 07月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/06/10
  • メディア: 雑誌
Interface (インターフェース) 2009年 02月号 [雑誌]

Interface (インターフェース) 2009年 02月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/12/25
  • メディア: 雑誌

端子に電源よりも高い電圧を与えると何が起こるか [電子工作]このエントリーを含むはてなブックマーク#

vertical1.png

最近、3.3Vのマイコンに5Vの電圧を印加する使い方が目に付きます。 この使い方の何が問題なのか、半導体の立場から考えます。

寄生ダイオードがONする

ICというのは、一枚のシリコン基板の上に回路を構成したものです。 シリコンに様々な「不純物」を入れて、n型とp型の半導体を作ります。 この図は、CMOSの場合の断面図です。

"Pin"端子には、出力ドライバに使用されているPチャネルMOSFETのドレインであるp型の半導体がつながっています。 また、電源の"VDD"端子は、n型半導体であるシリコン基板につながっています。 そのため、"Pin"端子と"VDD"端子の間には、寄生ダイオードと呼ばれるダイオードが出来上がります。 もし、"Pin"端子の電圧を"VDD"端子の電圧よりも高くすると、この寄生ダイオード"D1"がONして、"Pin"から"VDD"に電流が流れてしまいます。 このため、どの端子もシリコン・ダイオードがONする「VDD+0.7V」の電圧を超えてはなりません。

そのために設けられているのが、絶対最大定格に記述されている端子電圧の許容範囲です。 MC9RS08KA2の場合には、「-0.3 to VDD+0.3」と定められています。 この条件を守っている限り、寄生ダイオードがONすることはありません。

ONするのは、寄生ダイオードだけではない

寄生ダイオードがONするだけなら、大したことないと、思われたのではないでしょうか。 じつは、ONするのは、寄生ダイオードだけでは、ないのです。

断面図を見て判るように、ICはn型p型の領域が入り乱れています。 そのため、油断すると、すぐにPNPまたはNPNのバイポーラ・トランジスタが出来てしまいます。

断面図に示した"Q1"と"Q2"が、その寄生トランジスタの例です。 "D1"がONするということは、PNP型トランジスタ"Q1"のエミッタからベースに電流が流れることを意味します。 すると、"Q1"がONし、エミッタからコレクタにもその"hfe"倍の電流が流れます。 この電流は、となりのNPN型寄生トランジスタ"Q2"のベースからエミッタへの電流になり、"VSS"端子から流れ出します。 すると、こんどは、"Q2"がONし、コレクタからエミッタへとベース電流の"hfe"倍の電流を流します。 この電流は、"VDD"端子から"VSS"端子へと流れる電流です。 また、"Q1"のベース電流を流す効果もあります。 こうなると、電源を切る以外に電流を止めるすべはありません。

このように、PNP型とPNP型のバイポーラ・トランジスタを組み合わせた構成をサイリスタと呼び、一般にこのような現象を「ラッチアップ」と呼んでいます。 ラッチアップが発生したら、バイポーラ・トランジスタの温度の上昇と電流の増加の相乗効果によって、「熱暴走」という状態におちいり、最悪の場合にはICの永久的な破壊につながります。

ラッチアップを起こさないための規定がやはり仕様書に書いてあります。 MC9RS08KA2の場合には、最大注入電流という項目があり、1端子あたり0.2mAとなっています。 これ以上の電流が流れるような事態が発生するとラッチアップが発生する可能性があると考えてよいでしょう。

ラッチアップを起こさないためには

ラッチアップを防ぐためには、端子の電圧を「VDD+0.3V」以内に収め、流入する電流を0.2mA以下にするための保護回路が必要です。 たとえば、10kΩの電流制限抵抗を接続すると、5Vの信号から流入する電流は0.17mAに制限できます。 さらに、"Pin"端子と"VDD"端子の間にクランプとしてショットキー・ダイオードを入れると端子電圧の上昇も防ぐことが出来ます。

おことわり

以上、半導体の立場から見た見解を書きましたが、実はこの説明で使用された断面図は、最新の半導体のものではありません。 そのため、現在の半導体では、もっとラッチアップが発生しにくい構成が使用されているのだろうと思います。 しかし、仕様書の範囲を超えた使い方をした場合に致命的な破壊を引き起こすということに間違いは無いので、使用条件を十分に吟味して設計されることをお勧めします。

参考文献

微細加工―サブミクロン素子への展開

微細加工―サブミクロン素子への展開

  • 作者: 中野 朝安
  • 出版社/メーカー: 東京電機大学出版局
  • 発売日: 1989/03
  • メディア: -

星野先生、ご無沙汰しております。

Interface (インターフェース) 2009年 02月号 [雑誌]

Interface (インターフェース) 2009年 02月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/12/25
  • メディア: 雑誌

この記事の発端は、インターフェースの記事でした。


サンプル請求の結果 [電子工作]このエントリーを含むはてなブックマーク#

2388740

ここのところ、新製品がぞくぞくと出ています。 調子に乗って、サンプル請求していたら、こんなにたまってしまいました。 そろそろ、工作をしなくては。

MC9S08JM16

2388741

従来のMC9S08JM60は、広大な60kByteのFLASHを搭載していましたが、それほどの容量が必要の無い用途もたくさんあります。 これは、16kByteのFLASHを搭載している比較的小型なアプリケーション向きのMCUです。

MC9RS08LA8 / MC9RS08LE4

2388744

MC9RS08LA8 と MC9RS08LE4 は、いずれもLCDパネルを直接駆動するLCDドライバを内蔵したMCUです。 能力的には、1/8デューティーまでのパネルに対応するのですが、ダイセン電子工業さんなどで市販されている汎用LCDパネルには、せいぜい1/3デューティーのものしか無いので、持て余してしまうかもしれません。

MC9RS08KA8

2388742 2388743

MC9RS08KA8 は、それほど最近の MCU では無いのですが、やっと DIP パッケージ品がサンプル提供されるようになりました。 20端子もあれば、色々なことができます。

MCF51AC256B / MC9S08AC128

2388745

これらのMCUは、Flexisシリーズの一つで、ほぼ同じ構成のMCUですが、コアとして、32bitのColdFireと8bitのS08を内蔵しているところに違いがあります。 特に MCF51AC256B は、 32kByte の RAM を内蔵しているので、これだけでその昔のパーコン並みのことができるかもしれません。

MC9S08DZ60

2388776

MC9S08DZ60は、S08シリーズでは珍しくEEPROMを搭載したMCUです。 FLASHではないEEPROMということで、何やら怪しいことが出来そうです。

MCUを使うのに必要なのは

これらの新しい MCU でプログラム・デバッグを行うには、対応するデバッガが必要です。 今までは、DEMO9S08QG8評価ボードをMULTILINKとして使うことも出来たのですが、最新の CodeWarrior for Microcontrollers V6.2 では、 MC9S08QGx 以外の MCU には対応しないように変更されているようです。 また、 RS08 ではプログラミングに12Vの電圧が必要になるので、ハードウェア的にも DEMO9S08QG8 では対応できません。 やはり、 USBMULTILINKBDME でも購入しますか。


子供の科学 - 2008年11月号の「つくってあそぼう」に物申す [電子工作]このエントリーを含むはてなブックマーク#

2311398

子供の科学 - 作って遊ぼうに物申すに続くの第二弾は、2008年11月号の「ターンブルー」です。 この作品は、バイナリ・カウンタ 74HC4060 に CR をつけて発振器を構成して、 LED をピカピカさせる、実にシンプルな構成です。

電流値を計算する

この記事の優れたところは、 LED に流す電流値をきっちり計算しているところです。 電源には、乾電池3本を使い4.5Vの電圧を供給します。 そして、順方向電圧降下 (Vf) と流したい電流値から電流制限抵抗の値を決めます。 赤と黄の LED の Vf は、 2.0V @ I=20mA で計算し、マージンをみて 150Ω の抵抗を使用します。 一方、緑・青・白の LED の Vf は、 3.5V @ I=20mA で計算し、マージンをみて 100Ω の抵抗を使用します。

えっ? 何で緑の Vf が青と一緒なんですか?

問題点1:絶対最大定格

この作品では、74HC4060の 10 個の Q 出力に二つずつの LED を接続し、 Q 出力の状態により二つの LED のいずれかが点灯する仕組みになっています。 つまり、各 Q 出力は、常に設計値 20mA の電流を出すか引くかしていることになります。 そのため、全ての Q 出力が電流を出した場合、 74HC4060 の VCC 端子には 20mA×10=200mA の電流が流れ込む計算になります。

一方、東芝セミコンダクター社のデータシートを見たところ、 VCC 端子および GND 端子に流れる電流の絶対最大定格は、 ±50mA となっています。 設計値が絶対最大定格の実に 4 倍になっています。 逆レーティング? これでは、電源を投入したとたんに 74hC4060 が破壊・焼損したって、文句は言えないはずです。

問題点2:緑色LEDの順方向電圧降下

これも東芝セミコンダクター社のデータシートを調べましたが、一般的な緑色 LED の順方向電圧降下は、赤や黄と同じ、 2.0V @ I=20mA 程度でした。 このため、緑色 LED に流れる電流は、設計値よりも大きくなるはずです。

どこかのメーカで 3.5V @ I=20mA の 緑色LED というのを作っているのでしょうか?

問題点3:パスコンがありません

この回路には、電源ラインに一切のパスコンがありません。 発振器が動いているのに、LEDがスイッチングするのに、パスコン無しです。 発振しないのかな? すでに発振器が発振しているからという理由ではありませんよね。

作ってみた

本当のところ、どうなんだろうか。 IC が、焦げたりするのかな? と、実際に作ってみました。 ただし、手持ちに青・白 LED が無かったため、赤・黄と緑を使った「ターングリーン」となりました。

私、そんなに流せません

Ni-MH 電池四本からなる 4.8V の電源で動作させながら、電流制限抵抗での電圧降下から緑 LED に流れる電流を測定しました。 その結果、 19mA という結果が得られました。 また、各部の電圧を測定した結果、LED での電圧降下が 2.1V 、電流制限抵抗での電圧降下が 1.9V 、残りの 0.8V は、 VCC と Q 出力の間の電圧降下でした。 つまり、出力抵抗換算で 42Ω という計算になります。 そもそも、こんなに流すべき石ではないのでしょう。

KokaTurnBlue1.png

この状態での Q 出力ひとつあたりの内部損失は、 0.8V×19mA=15.2mW です。 十本の Q 出力でこの内部損失が発生したとすると、パッケージ全体では、 15.2mW×10=152mW の損失になります。 絶対最大定格の許容損失は、 500mW なので、こちらはまだ余裕がある方です。

消費電流

動作状態の消費電流を測定したところ、 130mA という値が得られました。 設計段階での 200mA よりも少ない値ですね。 これは、 Q 出力での電圧降下のおかげで、 LED に流れる電流が少なくなったためです。 まさに、怪我の功名。

けっこう、壊れないね

この絶対最大定格を越えた状態で通電したまま放置してみました。 しかし、電池切れで LED が暗くなる以外は、 74HC4060 は、元気に動いている様子。 あっという間に壊れちゃうかと思っていたのに、意外とお強いのね。

参考文献・関連文献

子供の科学 2008年 11月号 [雑誌]

子供の科学 2008年 11月号 [雑誌]

  • 作者:
  • 出版社/メーカー: 誠文堂新光社
  • 発売日: 2008/10/10
  • メディア: 雑誌
世界一簡単なLEDのきほん―ゼロから理解する

世界一簡単なLEDのきほん―ゼロから理解する

  • 作者: 伊藤 尚未
  • 出版社/メーカー: 誠文堂新光社
  • 発売日: 2008/09
  • メディア: 単行本
電子工作大図鑑―作ってきたえて能力アップ!

電子工作大図鑑―作ってきたえて能力アップ!

  • 作者: 伊藤 尚未
  • 出版社/メーカー: 誠文堂新光社
  • 発売日: 2006/06
  • メディア: 単行本

本日の工作 - LEDの色見本基板 [電子工作]このエントリーを含むはてなブックマーク#

1985143

先日、digi-keyで購入した、1608サイズのLED30種で色見本基板を作りました。 電源は、付録基板と同じ3.3VのACアダプタ。 電流制限抵抗には、220Ωの3216サイズ抵抗を使用しています。

選手の紹介

使用したLEDは、以下の通りです。

#波長メーカメーカ型番digi-key品番レンズ
1428BlueROHMSML310BATT86511-1331-1-ND Clear
2466BlueAvagoHSMB-C190516-1426-1-ND Diffused
3470BlueLite-OnLTST-C190TBKT160-1646-1-ND Clear
4525GreenKingbrightAPT1608ZGC754-1126-1-ND Clear
5567GreenStanleyPG1111C-TR404-1004-1-ND Diffused
6569GreenLite-OnLTST-C190GKT160-1183-1-ND Clear
7570GreenKingbrightAPT1608CGCK754-1116-1-ND Clear
8571GreenLite-OnLTST-C190KGKT160-1435-1-ND Clear
9572GreenAvagoHSMG-C190516-1425-1-ND Diffused
10586YellowAvagoHSMY-C190516-1424-1-ND Diffused
11587YellowLite-OnLTST-C190KSKT160-1437-1-ND Clear
12588YellowKingbrightAPT1608YC754-1125-1-ND Clear
13590YellowKingbrightAPT1608SYCK754-1124-1-ND Clear
14590YellowStanleyAY1111C-TR404-1002-1-ND Diffused
15592AmberAvagoHSMA-C190516-1423-1-ND Diffused
16595YellowLite-OnLTST-C190KYKT160-1438-1-ND Clear
17602AmberLite-OnLTST-C190AKT160-1180-1-ND Clear
18605OrangeLite-OnLTST-C190KFKT160-1434-1-ND Clear
19610OrangeKingbrightAPT1608SECK754-1120-1-ND Clear
20615Red-OrangeLite-OnLTST-C190KAKT160-1433-1-ND Clear
21621Red-OrangeLite-OnLTST-C190EKT160-1182-1-ND Clear
22626RedAvagoHSMS-C190516-1422-1-ND Diffused
23627RedKingbrightAPT1608EC754-1117-1-ND Clear
24631RedLite-OnLTST-C190KRKT160-1436-1-ND Clear
25635RedKingbrightAPT1608SURCK754-1123-1-ND Clear
26638RedLite-OnLTST-C190CKT160-1181-1-ND Clear
27640RedKingbrightAPT1608SRCPRV754-1122-1-ND Clear
28647RedStanleyBR1111C-TR404-1000-1-ND Diffused
29660RedAvagoHSMH-C190516-1420-1-ND Diffused
309000KWhiteLite-OnLTW-C191TS5160-1724-1-ND Diffused

データシートに書かれていた波長の順に並べています。

左半分

1985146

左半分の登録番号1から15までのLEDの拡大写真です。

#1と#2がほとんど光っていないように見えるのは、Vfが3.8Vと高すぎるため、ほとんど電流が流れていないからです。 この二つは、波長が短いという理由で購入したのですが、3.3Vで駆動することは、だましだましにでも、できなかったようです。

右半分

1985147

右半分の登録番号16から30までのLEDの拡大写真です。

投票受付中

この中から、付録基板に搭載するLEDを決めます。 7枚確保した付録基板のうち、一枚は、JB16ボードで使用した青LEDを取り付けてありますので、残りは6枚です。 皆様の投票をお待ちしております。

参考文献

まだ、「在庫あり」だ。

Interface (インターフェース) 2008年 09月号 [雑誌]

Interface (インターフェース) 2008年 09月号 [雑誌]

  • 作者:
  • 出版社/メーカー: CQ出版
  • 発売日: 2008/07/25
  • メディア: 雑誌

digi-keyから、7500円分、入荷 [電子工作]このエントリーを含むはてなブックマーク#

08-07-31_12-38.jpg

本当に揃えちゃったよ。 画面の外にもウジャウジャとあります。 それにしても、小さいな。

画面上方の黒い影は、CCDあたりに付着したゴミです。 携帯電話も換えどきか?


E24系列の計算を行う関数を作った [電子工作]このエントリーを含むはてなブックマーク#

E24系列の値を求める関数を作成しました。

E24系列というのは、抵抗などの値に使用される数値の並びのことです。 1から10までの間を24の数値でほぼ等比分割しています。 ところが、これらの数値は完全な等比関係にあるわけではありません。 テーブルを使って値を求める方法もあるのですが、さる理由から関数に仕立て上げてみました。

' Omega is PI/12.
Private Const Omega As Double = 3.14159265358979 / 12

' Ln24 is LOG(10**-24)
Private Const Ln24 As Double = 2.30258509299405 / 24

Public Function CalcE24(ByVal x As Double) As Double
  Dim R As Double
  R = 1
  R = R _
    + 0.0100001 _
    - 0.0193252 * Cos(1 * Omega * x) _
    + 0.0070975 * Cos(2 * Omega * x) _
    - 0.0020583 * Cos(3 * Omega * x) _
    + 0.0037966 * Cos(4 * Omega * x) _
    + 0.0001574 * Cos(5 * Omega * x) _
    + 0.004413 * Cos(6 * Omega * x) _
    + 0.0013219 * Cos(7 * Omega * x) _
    - 0.0027041 * Cos(8 * Omega * x) _
    - 0.0029183 * Cos(9 * Omega * x) _
    - 0.0026354 * Cos(10 * Omega * x) _
    + 0.0010465 * Cos(11 * Omega * x) _
    + 0.001808 * Cos(12 * Omega * x)
 R = R _
    + 0.0034761 * Sin(1 * Omega * x) _
    - 0.0037331 * Sin(2 * Omega * x) _
    - 0.0024473 * Sin(3 * Omega * x) _
    - 0.0008674 * Sin(4 * Omega * x) _
    + 0.0024085 * Sin(5 * Omega * x) _
    - 0.0024512 * Sin(6 * Omega * x) _
    + 0.003231 * Sin(7 * Omega * x) _
    + 0.0041405 * Sin(8 * Omega * x) _
    - 0.0019662 * Sin(9 * Omega * x) _
    - 0.003133 * Sin(10 * Omega * x) _
    - 0.0050543 * Sin(11 * Omega * x)
  CalcE24 = Exp(x * Ln24) * R
End Function

これは、Visual BASICの関数です。 xが整数値になったときに限りE24系列の数値が現れます。 例えば、0の時には1.0Ω、89(24*3+17)の時には5.1kΩ、の値が得られます。

プログラムのうち、"Exp(x * Ln24)"の部分が理想的な等比数列をあらわしています。 そして、理想的な値からの誤差を計算しているのが、"R"です。

"R"は、フーリエ級数によって求めています。 フーリエ級数のための係数は、逆フーリエ変換でも求まるのですが、今回は、Excelの「ソルバー」という仕組みを使って計算させました。


何で、こんな関数が必要だったかというお話は、また後日。


ロボット機構の勉強中 [電子工作]このエントリーを含むはてなブックマーク#

1867299

今年の「知ロボ」では、 ロボットの機構についてちょっと勉強した上で、 詳しく拝見させていただきました。

これは、チャレンジコース二次予選まで残ったロボットです。 私が気に入った理由は、ズバリ、使用しているモータが少ないことです。

移動には、左右のステッピングモータを使用しています。 そして、ボールをつかむための腕にDCモータが使用されています。 以上、全部で三つのモータだけで動きます。

腕が開いたことを検出するために使用されているのが、マイクロスイッチです。 しかも、腕から糸が伸びていてマイクロスイッチにつながっているチープな設計。 凄い。 (もちろん、「チープ」は、ほめ言葉です。)

「本当は、サーボを使いたかった」との言葉に 「もったいない。代わりに加速度センサはいかがですか?」としっかり、宣伝しておきました。

参考文献

ロボット機構学

ロボット機構学

  • 作者: 鈴森 康一
  • 出版社/メーカー: コロナ社
  • 発売日: 2004/04
  • メディア: 単行本

ワイヤリング・ペンの製作 [電子工作]このエントリーを含むはてなブックマーク#

1735630

某所でワイヤリング・ペンを探していると聞きました。 私もネットで探しましたが、見つかりません。 どうも、これは買うものではなく、自分で作るものだと判明しました。

さるページのお勧めに従って…

googleさんに「ワイヤリングペン」と聞くと、「ワイヤリングペン 自作」と答えてくれます。 それだけ、自作記事が多いということか。

まず、キャンドゥのミシン用ボビンに0.3mmUEW線を巻きます。 ミシンを使うと簡単に巻けますが、スピードが速いのでコントロールが難しいようです。

ボビンは、1.0mmのUEW線を二本取りにしてひねった枠に入れます。 枠の先端は、らせん状に加工しておきます。 らせん部分を、廃品のボールペン軸の先にねじ込んで、完成です。


作ったはいいけれど、本当に使えるのかな?


箱の写真集 [電子工作]このエントリーを含むはてなブックマーク#

黒い箱は、金庫ではない。

1683234 1683236

丸い穴を開けるのは、ドリルを使えば簡単なのだけど、四角い穴は苦労します。

塗装したボタン付きの箱

1683239 1683242

アルコール系塗料のガンダムマーカーで塗装してみました。 はやく、乾燥してくれ~。


子供の科学 - 作って遊ぼうに物申す [電子工作]このエントリーを含むはてなブックマーク#

KokaPocketLight.png

誠文堂新光社の子供の科学を毎月購読しています。 そこには、毎月一本、電子工作記事が掲載されています。 2008年5月号の記事は、高速に点滅するストロボ懐中電灯だったのですが、この回路は危険だと思いますよ。

555の出力は、電圧出力

この回路では、555の出力が直接LEDを駆動するためのPNPトランジスタ2SA950のベースに接続されています。 555の出力は、NPNトーテム・ポールで構成された電圧出力です。 そのため、555の出力がLOWになると、出力は内部NPNトランジスタの作用により、ほぼ0Vまで落ちることになります。 つまり、2SA950のベース・エミッタ間には、ほぼ電源電圧9Vに近い電圧が印加されることになります。 トランジスタのVBEにこんな電圧を与えてはいかんでしょう。 出力に電流制限抵抗を入れるべきなんじゃあないのかな?

出版社に問い合わせ中

ただいま、出版社に問い合わせています。

2008年5月号、P75に掲載されたストロボライトの回路図についての質問です。

この回路では、555の出力(PIN3)が直接2SA950のベースに接続されています。また、555の出力は、電圧出力なので、555の出力がLOWになったときには、2SA950のベース・エミッタ間にほぼ9Vの電圧が印加されます。このような使い方をしていると2SA950が破壊する可能性があるので、555の出力と2SA950のベースの間には、電流制限抵抗を入れるべきであると考えます。

筆者のご意見をお聞かせください。

返信、来るかな? 乞うご期待。

参考ページ

http://www.national.com/mpf/LM/LM555.html
ナショナル・セミコンダクタ - LM555のページ

参考書

子供の科学 2008年 05月号 [雑誌]

子供の科学 2008年 05月号 [雑誌]

  • 作者:
  • 出版社/メーカー: 誠文堂新光社
  • 発売日: 2008/04/10
  • メディア: 雑誌
電子工作大図鑑―作ってきたえて能力アップ!

電子工作大図鑑―作ってきたえて能力アップ!

  • 作者: 伊藤 尚未
  • 出版社/メーカー: 誠文堂新光社
  • 発売日: 2006/06
  • メディア: 単行本


チャタリングの出し方募集中 [電子工作]このエントリーを含むはてなブックマーク#

1475711

出ると困るチャタリング。 でも出そうとすると出ないんです。

コンデンサのおかげ?

マイコンにタクト・スイッチなどの機械接点とプルアップ抵抗をつないで、入力とした場合、チャタリングが発生すると一般に言われています。 曰く、機械接点がON/OFFを繰り返すから入力を早いサンプリング速度で見るとチャタリングという現象になります。

MC9S08QG8などのデータシートに書いてあるHCS08の標準回路の場合、RST*端子にスイッチと0.1µFのコンデンサが接続されています。 この回路では、コンデンサの両端がスイッチで短絡するという別の問題もありますが、コンデンサが適度なフィルタになってくれるため、チャタリングが観測できません。 これでは、「チャタリングをキャンセルするためにソフトウェアで処理をする」という動機が無くなってしまいます。

シュミット・トリガのおかげ?

そこで、コンデンサを取り外して実験してみましたが、それでもチャタリングは10回に1回しか観測できません。 昔の回路は激しくチャタリングが発生して、カウンタがスルスルと動いていたと記憶しているのですが、最近は何が良くなったのでしょう? シュミット・トリガのヒステリシスが大きくなったのか? 昔から、マイコンの入力にはシュミット・トリガは付いていましたよね。 今や、チャタリングで悩む必要は無くなってしまったのかな?

募集:チャタリングが出やすいスイッチ

そこで、募集します。 チャタリングが出て困るような例が、どこかにありませんでしょうか。 このままでは、デバウンス処理ルーチンの必要性を説得できません。

参考ページ


40kHz同調回路 - マキマキの巻 [電子工作]このエントリーを含むはてなブックマーク#

1503795

巻きました。

正確な巻き数は、数えていませんが、総巻き数は320と見積もっています。


1503794

中継ジャックの中は、ピンを入れ替えて4芯のケーブルが直列につながるように改造しています。 この中の一本を切って、外に取り出すとコイルの出来上がりです。


こいつを適切(適当?)なコンデンサと組み合わせると同調回路の出来上がりです。


40kHz同調回路 - コイルの端子盤 [電子工作]このエントリーを含むはてなブックマーク#

1502703

いよいよコイルをマキマキするのですが、せっかく巻き線の両端にモジュラ・コネクタが付いているのだから、終端は、これで接続することにしました。

中継ジャックです。 中をのぞいて4端子対応であることを確認しました。 中央部分に力を入れると、簡単に割ることが出来ます。

20数年前に電電公社が民営化された頃は、こういった電話線を接続するためには資格が必要で、部品もべらぼうに高かったのですが、今や、100円ショップで買える時代になったのですね。


次回は、マキマキできるか。


40kHz同調回路 - コイルの巻き線を決める [電子工作]このエントリーを含むはてなブックマーク#

Visual C++ と格闘していたため、こちらは停滞しています。 コイルに使う巻き線をホームセンターまで行って探したのですが、お手軽なものが見つかりませんでした。 でも、売り場で見た商品にヒントをもらって、手持ちのワイヤを思い出しました。

IMG_6716-800

4芯10mの薄型モジュラーコードです。 ヤマダ電機で100円で売られていたジャンクっぽいものですが、 一時期はADSLの電話線に使われてそれなりの成績を出していたので、それほどひどいものではないはずです。 これをコアに巻いて、4本の芯線を直列につなぐと40mのコイルの出来上がりという寸法です。


40kHz同調回路 - コアを決める [電子工作]このエントリーを含むはてなブックマーク#

おおたかどや山標準電波送信所から40kHzで送信されている電波を受信するべく、 同調回路を作ろうと思い立ちました。

おおたかどや山標準電波送信所

コアをさがす

同調回路に必要なのは、コイルとコンデンサです。 コイルは、透磁率の高い材料でソレノイド状につくると、そのままアンテナとして使用できます。 ますは、コアを探すことにしました。 100円ショップで。

中身が磁性体であることは、売り場の磁石にくっつけて確認しました。

巻き数を決める

適当に配線を巻いてインダクタンスを測定してみました。

巻き数とインダクタンスの関係
巻き数インダクタンス
41.7uH
74.0uH

この値から計算すると、1ターンで、約0.080uHとわかります。 参考文献の40kHz同調回路で必要とされている5.4mHのインダクタンスにするためには、 260ターンのコイルを巻く必要があります。

中央部分の直径が約36mmなので、一周に必要な配線の長さは、113mm。 260ターンでは、約30mの配線が必要です。 実際には、コイルを何重にも巻くことになるので、40mは、必要になるでしょう。

やっぱり、このコアは、それほど良い材料ではないのね。

参考サイト

地球の周りを飛び回っている電波を捕まえよう
http://www-acc.kek.jp/WWW-ACC-exp/KEKB/control/activity/radio/

電気泥棒 - シミュレーション [電子工作]このエントリーを含むはてなブックマーク#

最近、Simさんのところで使っていらっしゃるLTSpice/Sw CAD IIIを私もインストールして使ってみました。

回路図は、これだ

回路は、この通り。

当方で使用したコイルのインダクタンスを180µHと計算して値を入れました。 電源は、内部抵抗6Ωのヘタレ電池としています。 電圧0.46Vは、立ち上がり時間1µsecで起動するギリギリの電圧です。 白色ダイオードは、LTSpiceに付属のLEDモデルを使用しました。 トランジスタは、まあ、どれでも一緒でしょう。

シミュレーション結果は、これだ

シミュレーションの結果は、この通り。

理論では、入力電圧と出力電圧の比がデューティー比になるらしいので、 まあ、こんなもんでしょう。 電流I(L2)の平均値も実測に近い4mAになっています。

µがまともに表示されないので、回路図ではミリとナノを使ってごまかしています。 なんでかなあ。

コンデンサを付けてみたい

ベース-コレクタ間にコンデンサが置いてありますが、 今はワルサをしないように極小の値が入っています。 この値やベース抵抗の値を変化させると電流の様子が変わってくるので、 もうちょっと明るくなる設定を見つけてみます。

2008-02-13 20:37 JST 追記

µが化ける問題は、 "Control Panel"→"Netlist Options"→"Style/Conversion"→"Convert 'µ' to 'u'"をチェックすると何とかなりました。


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。