10W+10WステレオD級アンプモジュール(USBI/F付き)
いつものように秋月のページを見ていると、
USBのステレオD級アンプ
ステレオ出力10W+10W(4Ω出力時)のDC5Vでハイパワー出力が
可能なUSB接続AFパワーアンプモジュール。トライパス(Tripath)社の
デジタルステレオアンプTA1011Bと、USBオーディオDAC、UAC3552Aが
実装されたUSB接続タイプHiFiデジタルオーディオアンプモジュール
です。
とか
・音量・バランス・低音(-12dB~+12dB)・高音(-12dB~+12dB)・AGC
・低音ブースト・仮想サラウンド・ラウドネス イコライゼーション
・24ビット48kHz再生可能
とかいろいろ凄いのに、600Yenだったのでポチっておいたやつ。
積ん読(つんどく)。本を読もうと思って買ったけど、読む時間がないとか
色んな理由によって読めなくて、本が積まれていく様子。
な感じで、買うだけ買って
部品庫の肥やしになっているやつが溜まってきたので、
解消すべく、なるべく簡単そうなやつから片付けていくシリーズ?
日本語で説明がついてくるのが秋月の優しさ。
でも、隅から隅まで読むことはしないで、絵だけ見て、
ここがUSBのD+とD-ねみたいな感じで作業を始める。
『アンプなんて簡単だよね。』的な感じで。
USB線を接続。
出力のスピーカーを接続
USBから電源が取れるるはずだからこれでOK
USBをパソンに接続。
ドライバーは普通にUSBっぽい。すぐに切り替わった。
でも、音出ないー。
ヘッドホン端子が出ているので
そこに接続してみると・・・音出てる。
そっか、電源がUSBだと弱いのかなーって事になって、
外部電源5V接続。
状況変わらず。
ここでまできてやっと、秋月の優しい説明書を見ていくと。
「ご使用になるには・・・・改造が必要です」なる記述が・・・
『ぐはー』ダメージ結構ある記述だよね。
で、ちっさい1mmぐらいの抵抗を一つ外して、3箇所を接続。って書いている。
抵抗を外してAとBとCを直結しろって事が書いてある。
AもBもCも1㍉以下のサイズ。
で、図がこれ。

白黒すぎて、判別できねー。
しかも、基盤小さすぎてはんだ付けできる自身がない。
だから600円なのか?どこからこんなバッタモン持ってくるんやねん
とか、色々な思いが湧き上がる。
世の中、簡単にうまい話は無い。って事になっているので
集中集中!!。
基板面がこんな感じ。

これを秋月の図面と合わせて、抵抗を外して、
3箇所を直結。と。
何回か失敗しながらなんとか音が出ることに成功!!やったー
こんな感じでつながって、

こんな手作り風なアンプになりましたとさ。

ドリルで穴開ける時に先っぽ滑って狙った位置に行かないのが悩みなんですが
みなさんどうしているんですか?
抵抗の燃焼実験
秋月から憧れだったアナログパネルメーター。
電流計 DE-80N DC1A が届いたので何か試してみたくて、
たまたまそこに有った運の悪い抵抗くんを負荷にして測定したら結果的に燃えてしまった件。
どどいたのはこちら。

電流計なので内部抵抗は低いほうが良いよねって思うので
普通にテスターで抵抗を測ると0.1Ωと0.2Ωの間を行ったり来たり。
結構、普通の電線でも1Ωとか有ったりする場合があるので
これは低い方で優秀なのかな?なーんて思っておくことにする。
回路図は
電源----電流計---抵抗
抵抗のスペック

10Ω1W
実験前の風景

実験の動画
https://youtu.be/uM81c0mTaJw
焼けた後の抵抗

上の動画によると9Vで900mAのあたりで煙が出ているので、この時点で8.1Wです。
抵抗のスペックが10Ω1Wなので、定格の8倍の負荷を掛けている事になります。
点火時は12.6V、電流計が振り切っているのでわかりませんが、
抵抗値が10Ωなので、電流は1.26Aとすると、15.9Wとなります。
スペックの15倍で燃えるわけですね。
こんな実験する人は自分だけだと思いますけど、これで時限発火装置とか作れちゃいますよね。
交流100Vからトランス無しで直流9Vぐらいを取り出しますました。FSD210B
秋月のパーツリストを見るのが好きで、時々見て楽しんでいます。
そうすると、いろいろ、興味をそそるパーツが発見できたりして、面白いです。
今回はトランス無しで交流100Vから直流の低電圧を取り出せる
FSD210Bを試してみたいと思います。
トランスを使うと結構がさばるので、これでコンパクトなやつが作れると嬉しいと思います。
秋月のページによると「スイッチング電源制御IC FSD210B(2個入)」
「入力DC120~375Vから出力DC12V(100mAmax)を作るDCDCコンバータ」
とありますので、どんなのかなーと思ってデータシート拝見。

あんまり見たことない部品がいろいろとありますね。
それと、抵抗とか手持ちの近いものに置き換えます。
以下の感じで変更して組んでみますね。
KSP2222A→2SC1815
1N759A→GDZJ9
(これ、本当は12Vのツェナーなので、1N5242Bが適切と思います。)
UF4004→1N4007
抵抗110Ω→100Ω
抵抗750Ω→680Ω
抵抗8.2KΩ→10KΩ
電解コンデンサ 4.7μF400V→4.7μF200V
電解コンデンサ 1000μF16V→1000μF35V
あと、47nFって表現はあまり日本では見かけない気がするが0.47μFって意味ですね。
回路図

外観

(ユニバーサル基板でやるとでっかくなるよね。ICソケットが28ピンのシカ無かった。)
テスト結果

Voutに100Ωの抵抗を負荷として接続して
7.95Vで80mA出力できていますので
秋月ページで書いてある「12Vで100mA」に
まあまあ近いような気がする数字です。
12Vのツェナーダイオードを使うと、
もう少し電力取れそうな気もしますが、
まぁ、手持ちないし、こんなもんでしょう。
ここからさらに3端子レギュレーターを使って降圧すれば自在に調整可能です。
省電力のarduino等のマイコンであれば十分駆動可能な電力が得られます。
コンパクトにするにはプリント基板作らないとです。
将来使う場面あれば、使っていきたいです。
冷たくなった電気毛布
冷たくなったシリーズ?
今度は電気毛布がお亡くなりになりましたので、
この寒い時期に立て続けですね。
壊れる時は壊れる。しかも、連続で。

というわけで、今度は電気毛布の修理記事です。
今回も真似する場合は自己責任で。どうぞ
もうかれこれ10年ぐらい一緒に寝ていた電気毛布さん。
コントローラーにはKMC-37って書いてある。
KMC-37でググってみましたけど、生産終了品となっており。
KMC-37中古でググってみると、メルカリで6000円、コントローラーだけなら1500円
とかで買うことが出来るみたい。

6000円ってどうなのよ。みたいな、
1500円でコントローラー買っても毛布部分が壊れているかもしれないしね。
両方微妙。
症状としては、電源ONした時に光らない。毛布が暖かくならない。
って事。
例によってあっちこっちテスターを当てていくんだけど。
毛布の方から

左から1、2、3、4として
1-4間の抵抗が64Ω
2-3間の抵抗が1144Ω
他の人達の記事を参考にすると
2-3間が温度センサー?
1-4間がヒーター
みたいなので、断線していないことは確認できた。
そうすると、コントローラー側が怪しい。
回路は
100V----コントローラー----毛布
ってなっていて、
コントローラー基盤から毛布の電線は大丈夫。、
100Vからコントローラーの基盤も大丈夫なので、
あとはコントローラーの基盤だね。
回路は・・・
結構めんどくさいのね。
だいたいこんな感じで
100V----白いパーツ----いろいろ----毛布
で、白いパーツの前までは電気きているけど、
白いパーツの後ろに電気きていない。

白いパーツには
JET13C
R470ΩJ
2A
92℃
MICRON
って書いてあるので
教えてgoogle先生!!って聞いてみると
それは「温度ヒューズ内蔵型の抵抗じゃぞ。」
という事になり。
足の長いほうがヒューズって事らしい。
つまり、抵抗が熱を持つと安全のために回路が切断されるって事ね。
で、勇気を出して直結すると温かい。パイロットタンプも光っている。
なので、これを交換すれば良いんだけど。
そんな簡単には手に入らないっぽいので
先日購入した温度ヒューズを熱結合して修理。

完成。治った。温かい。

パイロットランプもLEDと違った温かみを感じます。
冷たくなった電気アンカ
電気アンカが冷たくてー
電気を入れても冷たくなってしまいました。
というわけで、電気アンカの修理記事です。
なお、真似する場合は自己責任でお願いしますね。
2019年に購入した、こちら
[山善] 平型電気あんか YDK-607HD [メーカー保証1年]
メーカー保証が切れるとちょうど壊れる。ソニータイマーなんて昔は言ったものだが、
ま、しかし、1000円ぐらいのものに1年も保証をつけるだけでも
メーカーは大変なんだろうなーとかぼんやり考えてみたりする。
そしてですね。
開けてみる。そしてあっちこっちにテスターを当ててみると
発熱する部分とか、その前段の電流を制御する部分とか
その前段の謎のパーツとか、あるんです。
回路は
100V----謎のパーツ----電流を制御するパーツ----発熱する部分
となっていて、
謎のパーツの手前までは100V来ていましたが、
謎のパーツの後ろには電気きていません。
パーツをよく見ると
17B
4.5A
FN
102℃
LIM
250V
とか書いてある。

17Bでググったけど
「17B病棟 | 国立がん研究センター 中央病院」
とか出てくるけど判らない。
カンだけど、たぶんだけど、これってヒューズじゃねーか?
102℃って書いてるので多分。温度ヒューズ。
安全面を無視すればいらないパーツ。そこで、直結してみる。
回路はこうなる
100V------------------電流を制御するパーツ----発熱する部分
動くようになった。温かい。
というわけで、温度ヒューズをググると似ているパーツが沢山
その中から適当に注文。
翌日届いたので、
パーツには
TF110℃
250V
10A
って書いてある。
修理開始。
長さを合わせて半田でくっつけて

元々ついていた布みたいなやつでかぶせて

組み立て。

(生活感あるね)
治った。安全性も前と同じ・・・と信じて
今夜もあったかです。
自分で修理すると愛着も湧くし死ぬまで使える感じですね。
温度ヒューズも10本セットで買っちゃったし。
あと9回までなら修理OKです。
NJU7002でオペアンプ実験

知り合いが低い電圧?でもきちんと反応してくれるオペアンプを紹介してくれたので実験してみました。
NJU7002オペアンプ。秋月のページにのっている説明によると、
「動作電圧は1Vと低電圧駆動が可能で、出力は電源電圧範囲内でフルスイング可能です。
また、バイアス電流は1pAと低くグラウンド電位近辺の微小信号を増幅することができます。」
抜粋終わり。
となっておりましたのでスピーカーをマイク代わりにした場合でもうまく動くことを確認したいと思います。
また、以前書いた「μAを正確に測定できるテスターのアイデアが出たので実験してみた。」
https://ameblo.jp/fc2miha/entry-12833772947.html
の記事ど同じ回路で増幅の倍率を計測してみましたので記録しておきます。
■性能

オペアンプの性能の見方がぜんぜんわからん。
さいしょに普通にオペアンプとしての動作を確認してみました。
■オペアンプ回路

小さいスピーカー0.3Wのコイルから出力される電圧(電流?)を拾って
オペアンプに入れてあげて、それを昔作ったパワーアンプ(5石)
https://ameblo.jp/fc2miha/entry-12833772737.html
の入力に入れてあげて音声が増幅できていることを確認。
■音出ました。

次、増幅率のテスト
■増幅率の実験の回路図

抵抗で分圧して入力電圧を制御しております。
■結果

■考察
前にLM358でやった時と違って非常に少ない電圧から増幅してくれているみたいです。
それと、LM358は倍率が11.1倍で安定している範囲が広かったんですが、
今回のJNU7002に関しては、入力が小さければ小さいほど倍率が高くなる傾向が見られました。
これでは、「μAを正確に測定できるテスター」には使えないのでちょっと残念な感じです。
これって、電流で見なければならないんですかね?
どうやったらできるのかわからん。
LTC1144でマイナス電圧の生成
オペアンプとかでマイナス電源を必要とするICとかで
簡単にマイナスを生成できるICがあるのを知ってしまいましたので
衝動買いしてきました。
いつもの秋月電子です。
写真

回路図

USBから5Vを入れた写真

入力が5.15で出力が-5.10なので0.05Vずれているけど
こんなもんか?
電池EVOLTA2本で3Vを入れた写真

入力が3.27で出力が-3.24なので0.03Vずれているけど
こんなもんか?
リチウム電池2本で約7.2V入れた写真

入力が7.37で出力が-7.28なので0.09Vずれているけど
こんなもんか?
マイナス側がじゃっかん低いけどこんなもんなのか、
はたまたテスターの誤差か?
と良いところに気づいてテスターを反対に接続してEVOLTAを測定。

入力が3.24で出力が-3.27なので0.03Vずれているので、
黒いほうが0.03Vぐらい数値が大きめに出るってことが判りました。
このICは多分正確に電圧出してくれていると思います。
ESP32の開発キットを使った場合はDeepSleepさせた場合でも5mA程度の消費電流が流れることを以前確認した。
今回秋月にて_Wi-Fiモジュール ESP-WROOM-32 DIP化キットを入手したので生の状態に近いESP32でDeepSleepしたばあいに
どの程度まで省電力化出来るかをテストしてみた。
■プログラム
import machine
from machine import Pin
import utime
print("test version0.1")
#1
led=Pin(32,Pin.OUT)
for x in range(10):
led.value(1)
utime.sleep(0.5)
led.value(0)
utime.sleep(0.5)
#2
machine.deepsleep(10*1000)
pythonで書いちゃいました。
■回路図
■テスト結果
プログラムの中の
#1の部分は35mA~40mAぐらい流れます。
#2の部分は5μA~8μAぐらい流れます。
一定間隔で測定して測定していない部分は
DeepSleepさせるとした場合に
5μA程度であれば電池駆動でも結構長時間駆動させることが出来るでしょう。
結構優秀ですね。
ESP32の開発キットを使った場合はUSBで接続すれば自動で出来ちゃったりするので
特に気にしていなかったんですが、
(→時々できないのもある。その場合はTNとGNDに0.1マイクロのコンデンサーをつなぐと良いらしいぞ)
このDIP化キットの場合は生の状態でESP32を使うのに近いので
他のページを参考にして自動書き込みの実験をしてみました。
■回路図

単純にUARTのRTSをESPのENに接続
とUARTのDTRをESPのIO0に接続
したいのですが、電圧を安定させるためにどちらもプルアップしておきます。
また、コンデンサーを挟まないとタイミングが合わないような記事があったのでどちらも、コンデンサーでGNDへ落としておきます。
ちなみに、このコンデンサーと抵抗はなくても動きます。
■コンパイルと書き込みの結果
Warning: Board breadboard:avr:atmega328bb doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328BB
最大1310720バイトのフラッシュメモリのうち、スケッチが213185バイト(16%)を使っています。
最大327680バイトのRAMのうち、グローバル変数が15372バイト(4%)を使っていて、ローカル変数で312308バイト使うことができます。
esptool.py v2.6
Serial port COM3
Connecting....
Chip is ESP32D0WDQ6 (revision 0)
Features: WiFi, BT, Dual Core, Coding Scheme None
MAC: 30:ae:a4:02:33:18
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 4369.1 kbit/s)...
Hash of data verified.
Compressed 17392 bytes to 11186...
Writing at 0x00001000... (100 %)
Wrote 17392 bytes (11186 compressed) at 0x00001000 in 0.1 seconds (effective 973.0 kbit/s)...
Hash of data verified.
Compressed 213296 bytes to 108710...
Writing at 0x00010000... (14 %)
Writing at 0x00014000... (28 %)
Writing at 0x00018000... (42 %)
Writing at 0x0001c000... (57 %)
Writing at 0x00020000... (71 %)
Writing at 0x00024000... (85 %)
Writing at 0x00028000... (100 %)
Wrote 213296 bytes (108710 compressed) at 0x00010000 in 1.8 seconds (effective 944.3 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 128...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (128 compressed) at 0x00008000 in 0.0 seconds (effective 1536.0 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
■風景

日本のスーパーコンピューター富岳が世界一になったとのニュースが飛び込んできたので自分のパソコンの性能を確認してみた。
いやー何年ぶりの快挙になるのでしょう?
京で世界一だったのが2011年、2012年ごろのお話なので8年ぶりになります。
それも、4部門でトップという事ですね。
いやいやすばらしい。
それにしても
京がLinpack Performance (Rmax) 10,510 TFlop/s
富岳がLinpack Performance (Rmax) 415,530 TFlop/s
というわけで
8年で40倍の性能になります。
単純計算のLinpackで、です。
すごいですね。
そして自分のパソコンと比較してみたくなりまして
自分のパソコンでLinpackを取得してみた結果が
183GFlops
ちなみにスペックは以下の感じ

CPU Intel Core i5-8400 2.8GHz
RAM 32GByte
いたって普通のパソコンのイメージですよね。
もう一度、京、富岳、ぼくの で単位をギガフロップスで合わせてならべると
京がLinpack Performance (Rmax) 10,510,000 GFlop/s
富岳がLinpack Performance (Rmax) 415,530,000 GFlop/s
ぼくのがLinpack Performance (Rmax) 183 GFlop/s
うーん桁数が違いすぎてものすごいですね。10の6乗ですよね。
倍数でいうと
415,530,000 ÷ 183 = 2,270,655
2百万倍もの性能差かー
僕のパソコン君だってきちんと仕事こなしてくれるのを考えると
スーパーコンピューターって恐ろしい性能ですね。
■パソコンでLinpackを取得する方法を以下に記述します。
参考ページは
https://www.hitoriit.com/entry/2020/03/20/130000
□Linpack取得
https://software.intel.com/en-us/articles/intel-mkl-benchmarks-suite
から自分の似合うのを取得します。
ぼくのはWindowsなのでWindows用のをダウンロードして
ファイルを展開すると以下の感じで展開される。
C:.
└─windows
├─mkl
│ └─benchmarks
│ ├─linpack
│ └─mp_linpack
└─redist
├─ia32_win
│ └─compiler
└─intel64_win
└─compiler
□設定ファイルの編集
目的のディレクトリは
windows¥mkl¥benchmarks¥linpack
この中の
lininput_xeon64 と runme_xeon64.bat を編集していきます。
□lininput_xeon64の中身 problem sizesとleading dimensionsでメモリ、number of tests、times to run a testでテスト回数などを調整するものだと思い込んでいます。てきとう
Shared-memory version of Intel(R) Distribution for LINPACK* Benchmark. *Other names and brands may be claimed as the property of others.
Sample data file lininput_xeon64.
1 # number of tests
60000 # problem sizes
60000 # leading dimensions
2 # times to run a test
4 # alignment values (in KBytes)
□スレッド数の調整
適当な位置に
set OMP_NUM_THREADS=6
を追加
自分の場合はKMP_AFFINITYをsetしている下に追加
set KMP_AFFINITY=nowarnings,compact,1,0,granularity=fine
set OMP_NUM_THREADS=6 ← ここ
date /t
□実行
コマンドプロンプトから実行します
runme_xeon64.bat
タスクマネージャーで見るとCPUとメモリがほぼ100%で張り付く。
CPUの温度が上がっているのだろう。ファンがうなりを上げる。
35分ぐらいで実行完了。
□結果
結果はwin_xeon64.txtに出力されます。
富岳とか京のLinpackでは(Rmax)ってなっているのでRmaxを探すけど見つからないので
とりあえず、averageが183なので、その値を採用した。
結果ファイルの中身は以下の通りです。
Sample data file lininput_xeon64.
Current date/time: Wed Jun 24 08:21:52 2020
CPU frequency: 3.790 GHz
Number of CPUs: 1
Number of cores: 6
Number of threads: 6
Parameters are set to:
Number of tests: 1
Number of equations to solve (problem size) : 60000
Leading dimension of array : 60000
Number of trials to run : 2
Data alignment value (in Kbytes) : 4
Maximum memory requested that can be used=28801204096, at the size=60000
=================== Timing linear equation system solver ===================
Size LDA Align. Time(s) GFlops Residual Residual(norm) Check
60000 60000 4 1087.160 132.4618 3.388867e-09 3.356071e-02 pass
60000 60000 4 612.833 234.9859 3.388867e-09 3.356071e-02 pass
Performance Summary (GFlops)
Size LDA Align. Average Maximal
60000 60000 4 183.7238 234.9859
Residual checks PASSED
End of tests
2020/06/24
08:56
■スーパーコンピューター京
この京ですが、より実用的なコンピューターの性能指標Graph500において昨年解体される前まで
世界一位を独占し続けてきたんです。すごいですね。
今年から富岳が1位です。開発者の皆さんには今後も頑張ってもらいたいです。
ちなみに、WikiによるとGraph500とは
「TEPS(Traversed Edges Per Second 1秒間にたどるグラフのエッジ数)を指標に用いる。「Webページのリンク解析、ソーシャルグラフ(英語版)解析、POS(販売時点情報管理)データの相関分析、高度道路交通システム(ITS)など、情報化社会のインフラにとって本質的なものである」などと業界ジャーナリズムは書いている。」との事で
単純に計算速度だけではなくて色々と難しくて何言っているのかわからないぐらいすごいですよね。


