google-site-verification: google3bd66dd162ef54c7.html

USB電源チェッカーからシャント抵抗の電圧測定端子を引き出した

 このところUSBの電源電流を測ることが多いです。手っ取り早くやるなら、USB電源電流チェッカーを使えば良いのですが、変化が大きい場合はオシロで確認したくなります。

 その場合はシャント抵抗を入れて両端電圧を測定しますが、

▼電源電流測定用シャント抵抗
電流測定用シャント抵抗
 これで測定出来ますが、毎回部品箱から抵抗を探してきて、はんだ付けするのもなんだか間抜けです。基板にUSBーAのオスとメスのコネクタを取り付け、その間をシャント抵抗で接続した物を用意しておけばいいですが、わざわざ作るほどの物でもありません。

 そんなことで、もっとうまい手が無いかと考えていたらありました。USB電源チェッカーを改造するのが一番の近道のようです。USB電源チェッカーには電流測定用のシャント抵抗が入っているので、その両端電圧を外部から測定出来るようにすれば、うまく行くはずです。

▼USB電源チェッカーを殻割り
USB電源チェッカーを殻割り
 失敗してもいいように、いくつか持っているチェッカーの中で一番古い物を素材に使いました。がっちりと接着されていたので、ピラニアソーで片側を切断してケースをこじ開けました。

▼シャント抵抗から測定端子を引き出し
シャント抵抗から端子引出し
 R050と表示のある大きなチップ抵抗がシャント抵抗です。両端電圧を外部から測定出来るようにスズメッキ線を使って端子を引き出します。ショートしそうな個所には基板にポリイミドテープを貼っておきました。なお、この抵抗はローサイド(GND側)に入っていました。

▼改造完了
端子をケースから出す
 ケース側面に穴を開け、そこから測定端子を出せば改造完了です。単線をダイレクトに出すと危ないし、すぐに折れたりしそうなので、小さなループにしておきました。ミノムシクリップの滑り止め効果もあります。

▼引出し部詳細
極性とシャント抵抗値を表示(彫刻)
 極性と、シャント抵抗の値を書いておきました。引出し穴はもう少し下に開けた方が良かったと思います。

 基板に実装されている抵抗のマーキングは50mΩですが、信頼出来そうな電流計と比較した結果から、このシャント抵抗の値は 50.8mΩと値付けしました。なお、この値にはパターンやはんだの抵抗の影響も入っているはずです。細かい誤差を気にしなければ 50mΩと思って使えば大丈夫です。

 これで簡単にUSB電源の電流測定を行うことが出来るようになりました。

▼使用例
消費電流変化測定中
 前の記事でやったのと同じでラズパイの消費電流をオシロで確認しているところです。こういう測定を、はんだごてを使わないですぐに始めることが出来るのは、今回の作った改造版のUSB電源チェッカーのおかげです。

▼ついでに電流変化の記録例
測定例
 Raspberry Pi Zero W の電源投入から安定状態に入ったことを確認し、シャットダウンコマンドで電源を切るまでの電流変化です。スケールは、縦軸は1目盛りが0.1A、横軸は1目盛りが50秒です。

◆まとめ
・ 簡単な改造ですが、これがあると確実に便利だと思います。

・ シャント抵抗電圧の測定端子はGND側に接続されています。下から2つ目の写真のような測定を行う場合、オシロの電源は別のUSB電源アダプタから取らないと、GNDの回りこみで大きな誤差が出ることがあるので注意が必要です(体験済ですw)

ミニオシロ、DSO Shell のファームバージョンアップ (V055)

 このあいだ買ったミニオシロの DSO Shell (DSO150) の新しいファーム (V055) が出ていたので、早速バージョンアップしてみました。

▼使用中のDSO Shell (DSO150)
DSO Shell (DSO150)

 実は、ファームのアップデートがあった時は、JYEのサポートのファームのページに情報が出る、あるいは DSO Shell のフォーラムでアナウンスがあると思っていました。ところがどちらにも通知無しで、DSO Shell の製品紹介のページの情報が修正されていて、新ファームの提供が始まっていました。

 DSO Shell のファームアップデート方法は、DSO Shell の紹介ページ(DSO Shell (DSO150) Oscilloscope DIY Kit) の中の、How to Upgrade firmware for DSO Shell というpdfの資料(以下 解説pdf)で詳しく説明されています。

 ちなみに以前同じ場所には DSO138 のファームアップグレード方法の資料が置かれていたのですが、いつのまにか DSO Shell のものと差し替えられていました。解説pdf の改版履歴によると、差し替えは2月23日頃に行われたようです。

 ファームアップデート方法はこの解説pdf に詳しく書かれているので、その通りに進めればOKでした。とは言っても多少気になる点などがあったので、ポイントを説明しておきたいと思います。

◆ファームアップデートソフト
 ファームの書き換えにはSTMicro からフリーで提供されている Flash Bootloader Demonstrator というソフトを使います。デモンストレーターという言葉が入っているので、ブートロダーの紹介ソフトかと思ったのですが、これがファーム書き込み用のソフトでした。

 解説pdf ではこのソフトを、本家の STmicro か JYE tech のいずれかから入手するように書かれています。やってみると、STmicro からダウンロードするためにはメアドなどの登録が必要みたいでした。メアドを登録するとたぶん後で余計なメールが来るようになって煩わしくなるはずなので、JYE tech からダウンロードしました。こっちだとメアドなどの登録など不要で、いきなりzip圧縮されたソフトが落ちてきました。
 ちなみに本家の STmicro だと v2.8 が入手出来るようですが、JYE tech からは一つ前のバージョンと思われる v2.7 になるようです。(この記事を書いている時点の情報です)

 以下は、解説pdf に書いてある通りに進めればいいのですが、要点を図で紹介します。

▼ジャンパーをショート
JP1,JP2
JP1 と JP2 をショートさせます。
 ハードウエアの準備として、JP1とJP2をショートさせます。上の写真の矢印部です。

▼シリアルポートへの接続
シリアルポート
 ここにUSBシリアルアダプタの信号を接続します。うちの DSO Shell は製作時にピンヘッダを取り付けておいたので接続は簡単です。なお、シリアルの信号レベルが 3.3V のアダプタが必要です。(保護抵抗が入っているので 5V でもたぶん大丈夫)

 ハードの準備が出来たらあとは Flash Loader Demonstrator を使ってファームの書き込みを行います。

▼警告メッセージ
警告メッセージ
 これは解説pdf に書かれていませんが、チップとの接続が確立すると上のようなワーニング画面が出ました。

 Remove Protection を押す、つまりプロテクトを解除しないと先に進めません。またプロテクトを解除するとチップ内のファームなど全ての情報が消されるようです。ファームを吸い出して簡単にコピー商品を作られたらたまったものではありませんから、海賊版対策なんでしょうね。とは言っても DSO Shell のファームは公開されています。

 ともかく Remove Protection ボタンを押してチップを初期化すると、その先の処理を進めることが出来るようになり、解説pdfの fig.6の状態になりました。

 続きは解説pdf に書かれている通りに進めればOKでした。くどいですが、 Remove Protection を押すと元のファームは消えてしまう(はずな)点です。もしファームのファイルを持っていないと DSO Shell は文鎮化してしまいます。(実際にやってないので推定です) ともかく新しいファームは事前に入手しておいて、中のデーターはエディタなどでざっと見ておいた方が安全です。

▼完了
ファームアップデート完了
 ファームの書き込みが完了すると上の画面になります。今回書いたファームのファイル名は、113-15001-055.hex でサイズは 43.93KB、書き込み時間は17秒でした。

 後はショートさせていたJP1とJP2を元に戻して組み立て直せば作業完了です。

▼アップデート前のバージョン (V054)
バージョン054
 これはアップデート前に撮影したものです。

▼アップデート後のバージョン (V055)
アップデート完了、V055
 ちゃんと -055に上がっています。LIBの末尾が -045に変わっていますがこの意味は判りません。

 ファームの修正内容は、Firmwares for DSO Shell に書かれていますが、V055では以下の3点の修正が行われたようです。
・50msより遅いレンジでトリガが掛からなかった問題の修正。
・画面右上に表示しているトリガの状態に、Holdoffを追加。Holdoffは一時的にトリガが無効になっていることを表す。
・0.1Vキャリブレーション信号に大きなオフセット(3.3V)がかかっていたバグの修正。

▼トリガホールドオフ表示の例
holdoff

2017/03/12追記
 この場所(矢印部)にはトリガレベルが電圧の値で表示されることがあったと思いますが v055では電圧表示機能はは無くなったようです。 


◆まとめ
 ということでファームのアップデートは完了しました。致命的な問題の修正では無いし、大きな機能が追加になる訳でもありません。ということで、余裕があればやっておいた方が良い程度のアップデートかも知れません。

 マイコン工作をやるにはUSBシリアルアダプタは必須ですが、使い慣れて信頼の出来るアダプタを持っていると、こういう初めてのデバイスに接続する時に安心です。実は配線を間違えて最初は Flash Loader Demonstrator がうまく動きませんでした。でも USBシリアルアダプタに問題は無いことが判っていたので、割と簡単にミスが発見出来ました。

 あと、こんなことでも無ければSTM32のファーム書き込みなんて、やるチャンスは無かったでしょうから、良い経験をさせてもらいました。

格安デジタルオシロ DSO-SHELL (DSO150) のレビュー(内部回路調査編)

 格安デジタルオシロDSO-Shell(DSO150)のレビュー記事もおそらく最後、今回は回路の動作を調べてみます。

1.まえがき
▼DSO-SHELL(DSO150)
内部回路解析

 調査のためにケースを開け、測定器に接続して波形などを調べます。

▼使った測定器
使用測定器
 左上のファンクションジェネレーター (FG, HP3314A) から信号を入れ、アナログオシロ(テクトロ2465B)で状態を見ました。

2.アナログ部波形観察
 波形はいろいろ見たのですが、ADコンバーターへの入力信号とトリガ信号の波形が面白いので紹介します。なお、観察場所は下記回路図の V4 (TP5)と V6(TP7) です。

 あと、DSO Shell(DSO150)の回路図はJYE Tech のサイトで公開されています。この記事に出てくる回路図は公開されている回路図から一部を抜粋したものです。

▼ADCINとTRG回路
トリガ、ADCIN
 これはアナログ回路の末端部分で、この先(右側)はCPUに接続されています。V4はCPUのADコンバーターへのアナログ入力信号。V6はトリガ信号でロジック信号として使われています。

 なお、話はちょっと飛びますが、トリガの信号レベルは可変になっていますが、その値は回路図の右下のTL_PWMから入力されています。このPWMの周波数は約57kHzでした。この信号をR20とC6で平滑してコンパレーターレファレンスにしています。R20とC8の時定数は10msありPWM周期に対して十分長いので、リップルの心配はほぼ無いと思います。配線からの飛び込みがあれば話は別です。

▼入力周波数10kHz、矩形波の場合
10kHz矩形波
 波形は上から、FG出力、アナログ出力(V4),トリガ出力(V6)です。(以下同様)

 入力に対してアナログ出力(V4)の立ち上がりが、なまっています。使っているオペアンプの性能から、これは仕方がないと思います。いちばん下のトリガ信号波形はもっとなまっています。

▼入力周波数10kHz、三角波の場合
100kHz三角波
 三角波は遷移速度が遅いので一番下のコンパレーター出力波形の立ち上がり速度がかなり遅くなっています。DSO-Shellは周波数が高くなるとトリガのタイミング精度が悪くなりますが、このあたりの特性が影響しているのだと思います。もちろん最終的にはCPUでトリガを検出するので、その処理速度の影響もあるはずです。

▼入力周波数200kHz、矩形波の場合
200kHz
 この周波数ではトリガ信号がGNDレベルまで下がっておらず、波形タイミングが検出出来ていません。オペアンプを(ヒステリシス)コンパレーターとして使っているので、速度的に苦しいのでしょう。ここに本職のコンパレーターを使えばもっと早くなるのでしょうが、コストの点からそんな贅沢はやってられないのだと思います。

 ちなみにこの状態で NORMALトリガモードにすると波形が掃引されませんでした。CPUにトリガ信号が来ないので当然の結果でしょう。それと、この200kHzという周波数はDSO-Shellのアナログ帯域として仕様に書かれている値ですが、「アナログ部分だけならこの周波数までは動く」 くらいの意味に思った方がいいと思います。オシロとしてまともに使えるのは100kHzくらいまでです。

3.その他
 以下、波形以外に気付いた点です。

▼キャリブレーション信号回路
キャリブレーション出力回路

 J8にキャリブレーション用の3.3Vと0.1Vが出ますが、現在のファームでは0.1Vの出力に3.3Vのオフセットが入っちゃってます。(なお、現物ではR16の1kΩには810Ωが、R31の470Ωには220Ωが実装されていました) AMPSELを本来はLOWにすべきところを間違ってHIGHにしてしまったのでオフセットがかかったのだと思います。ちなみに、電圧は相手のポートとの綱引きで決まるので、ぴったり0.1Vの振幅が出るように設計するのは面倒です。

▼マイナス電源の動作周波数
 オペアンプのAV- を作るためにチャージポンプ式の電源コンバーター(ICL7660)が使われていますが、この動作周波数は約3.5kHzでした。覚えておけば何かノイズの問題が出た時に役立つかも知れません。

▼液晶画面からのノイズ
 液晶画面にプローブを近づけるとノイズが出ていることが判ります。
液晶画面からの輻射ノイズ
 (表示されている波形は液晶画面ノイズではありません)

 DSO-Shellで自分で確認できますが、せっかくなので別のオシロで観察
液晶からのノイズ
 約15khzのノイズが出ています。これは描画のためのクロック周波数だと思いますが、液晶画面にハイインピーダンスな配線が接近するとこのノイズが乗るので要注意です。

▼シリアル端子
ピンヘッダのパターンまでTXとRXが配線されており、オシロで見ると起動時にデーターが流れていたので、シリアルコンバーターを接続して Windows の TeraTermで見てみました。
・シリアル端子のデーター
校正用信号回路
 ビットレートは38400bpsで、起動時にメーカー名とファームのバージョンを示すと思われるデーターが流れていました。試しにRX端子に適当な文字データーを送ってみましたが無反応でした。まあこれは当然か。
 なお、シリアルのピンはファームのアップデートの時に使うのでピンヘッダをはんだ付けしておきました。

▼入力アンプの切り替え
1/1.1倍と、1/110倍の入力アンプがありアナログスイッチで切り替えられています。この切り替えは、5mVから0.2Vレンジまでは1/1.1倍のアンプ(U1A)、0.5V~20Vレンジは 1/110倍(U1B)が使われていました。

▼EEPROM
波形データーの保存先はI2CのEEPROMです。この波形を見たかったのですが腕が悪くて失敗しました。きちっと配線を出して観察しないとダメです。ちなみにこのEEPROMは型番のマーキングが無いので仕様が判りません。

4.最後に
・帯域が100kHzと狭いし、使用上の注意点もありますが、コンパクトにまとまっていてこの値段なので大満足です。

・こういう電気的にクローズしている測定器を電池で使えば、測定ノードのポテンシャルを気にしないでいいので便利です。例えば、AC100Vの電位で動いているマイコンとかは、普通のオシロでは触り難いですが、このオシロなら大丈夫です。

・DSO Shellフォーラムでの中の人の書き込みによると、「今後ファームのアップデートがある」、「プログラムのソースは公開される」ということです。ソースが公開されればボランティアによる機能拡張があるかもしれません。とりあえずあると嬉しいのは波形のPCへの保存とFFTですが、期待して待ってましょう。

関連記事
格安デジタルオシロ DSO-SHELL (DSO150) のレビュー(組立編)
格安デジタルオシロ DSO-SHELL (DSO150) のレビュー(特性測定編)
格安デジタルオシロ DSO-SHELL (DSO150) のレビュー(操作インプレ編)
カレンダー
10 | 2017/11 | 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -
プロフィール

ラジオペンチ

Author:ラジオペンチ
電子工作を中心としたブログです。たまに近所(東京都稲城市)の話題など。60過ぎて視力や器用さの衰えを感じつつ日々挑戦!
コメントを入れる時にメールアドレスの記入は不要です。なお、非公開コメントは受け付けていません。

記事が気に入ったらクリックを!
最新記事
カテゴリ
最新コメント
リンク
FC2カウンター
検索フォーム
月別アーカイブ
RSSリンクの表示
QRコード
QRコード