google-site-verification: google3bd66dd162ef54c7.html

ミニオシロ、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) のレビュー(操作インプレ編)

格安デジタルオシロ DSO-SHELL (DSO150) のレビュー(操作インプレ編)

 デジタルオシロ DSO-Shell(DSO150)のレビューの続きです。前回の特性測定編に続いて内部回路の解析編を書こうと思っていたのですが、肝心の調査が全く出来ていません。というか、操作方法がまだ完全に把握出来ていません。

 ということで、今回は操作インプレの記事を書きつつ操作方法を整理したいと思います。

◆ DSO Shell の操作方法
 メーカーのマニュアルに書かれていますが、ポイントを書いておきます。

▼画面と操作スイッチ
DSO Shell

 操作は画面の下の4つのボタンと、ADJツマミ(この写真の下の方にあります)で行います。ボタンを押すと操作可能なパラメーターがハイライト表示(項目の周囲を水色枠表示、あるいはマーカーの色を水色で表示)されます。その状態でADJツマミを回すと数値(内容)を変更することが出来ます。上の写真の赤矢印は選択すると水色に変化するマーカーです。

1.基本操作
[V/DIV] : 縦(電圧)軸の設定を行う。ボタンを押す毎に、感度とポジション調整に切り替わる。選択された項目は水色で表示されます。ポジションマークは画面上のゼロボルトの位置を示します。但しADJツマミをいくら回してもポジションマークは画面のスケールの範囲内しか動きませんが、実際の波形のポジションはシフトされています。つまり、表示に大きなオフセットをかけることが可能です。但し、どれくらいまで大きなオフセットが入れられるかは不明です。

[SEC/DIV] : ボタンを押す毎に水平軸感度とポジション調整に切り替わります。選択された項目は水色表示。

[TRIGGER] : ボタンを押す毎に、トリガーモード、レベルと極性が切り替わります。選択された項目の内容はADJツマミで行う。トリガモードは、AUTO/NORMAL/SINGLE を選定可能。トリガレベルは画面右側のカーソルで表示され、同時に右上に電圧値も表示される。

[OK] : Hold/Runningを切り替える。

[ADJ] : 選択された(ハイライト表示された)パラメーターを変更します。
 ADJのセンターボタンを長押しするとキャリブレーション出力の振幅選択モードに入り、ボタンを押すたびに3.3V/0.1Vを切り替え。再度長押しでキャリブレーション出力の選択モードから抜ける。なお、表示が消えるだけでキャリブレーション出力は出続ける。

 以上が基本操作です。ロータリーエンコーダーのセンターボタンは一番押しやすい場所にあるのですが、残念ながら機能としては地味なものが割り当てられています。

2.拡張機能 (長押しは3秒以上ボタンを押す)
1) 垂直軸オフセットゼロ調整
 [V/DIV]ボタンの長押しで縦軸インジケーターの位置に合うように波形位置が修正されます。入力をGNDにしておくとゼロ調を行ったことになり便利です。

2) 測定機能ON/OFF
 hold 状態で[OK]ボタンを長押しすることで、画面への波形パラメーター(電圧、周期、周波数、、、)を表示します。再度長押しで表示を消す。波形パラメーターの表示中はロータリーエンコーダーの反応が悪くなるので必要な時だけこの機能を使う方が良いでしょう。

3) 波形の保存
 [OK]と[TRIGGER]の同時押しで波形を内部のEEPROMに保存。

4) 保存した波形の表示
 [OK]と[SEC/DIV]の同時押しでEEPROMに保存した波形を画面に表示。記録した時のスケールなどの測定条件も再現されます。なお、表示される波形の水平位置が記録した時と違っているようなので、横スクロールで目的の位置に動かしてやる必要があるようです。

5) 設定をデフォルトに戻す
 [SEC/DIV]と[TRIGGER]の同時長押しで設定がデフォルトに戻ります。変な状態に設定してしまって波形が出なくなった場合に使うと良いと思います。

6) 水平表示位置のセンタリング
 [SEC/DIV]の長押しで、画面の表示位置をバッファーの中央に合わせる。なお、個人的には画面表示位置はバッファーの先頭にしておいた方が使い易いと思います。

7) トリガーレベルの自動調整
 [TRIGGER]ボタンの長押しで、トリガーレベルが信号振幅の中間に自動設定される。設定されたトリガーレベルの電圧は画面右上に表示されると共に画面のマーカー(インジケーター)でも表示される。

◆ 注意点など
1) ロータリーエンコーダー
 ロータリーエンコーダーのレスポンスが悪いです。速く回すと取りこぼしがあるようで、ゆっくり回した場合よりかえって遅くなることがあります。ということでインジケーターの位置を大きく動かしたい場合は手間がかかります。測定機能をONにしていると更にレスポンスが悪くなるので注意。

2) トリガー位置(タイミング)
 画面の中央ということになっているが、周波数が高くなると不正確になる気がする。

3) 波形表示
 入力に対して掃引を早くしすぎると、トリガが正しくかからなくなり波形を見失う。また掃引を遅くすると、べったり塗り潰された表示になり(ここまでは当然)、その後は入力があるにもかかわらず平らな波形が表示されてしまう。
 ということで、注意が必要です。たぶんサンプリングと、波形表示のメカニズムの関係でこうなるのだと思います。

4) 波形表示のディレイ
 デフォルトでは画面表示はメモリバッファ領域の中央にセットされいています。そのため、低速(例えば1秒/DIV以上)で掃引した場合、波形が表示されるまでかなりの時間がかかります。更に3)項の現象で波形が平らに表示されたりするので、何が起こっているのか把握しづらいです。

 低速波形を記録する場合は、表示の水平ポジションを一番前(一番右)にセットすると良いです。こうすると、波形がすぐに表示されるので判り易いです。なお、一度設定した水平ポジションは電源を切っても記憶されています。

 ちなみに表示の水平ポジションを一番前にして低速で記録すると、チャートレコーダーのような使い方が出来ます。

▼DSO Shell で電池の放電カーブを測定。 (横軸は500s/DIV)
電池放電特性測定

5) サンプリングに伴う諸問題
 100kHz以上でエイリアシング現象が出ることを確認しました。遅いレンジの場合でも連動してサンプリング周波数が下がると思うので安心は出来ません。スイープ速度とサンプリング周波数の関係を公開してくれると助かります。もし等価時間サンプリングやっているならその情報も知りたいところです。

6) 画面解像度(これは覚え書き)
 DIV当たりの画面の画素数は25画素になっているようです。つまり波形の表示領域は 12 x 8 DIV = 300 x 200 画素。これを320 x240画素の液晶に表示しているので、横の余白は20画素、縦の余白は40画素あるということになります。

7) 波形にノイズが入る
 一定周期でスパイク状のノイズが入る場合がある。
波形のスパイクノイズ

 まだありそうですが、このあたりでやめておきます。いろいろと注文はありますが、何しろ安いので許せちゃいます。今後のファームのアップデートで改善されると嬉しいです。なお、メーカーのWebのDSO Shell のフォーラムにユーザーのレポートやたまに公式からのアナウンスが入っているので時々チェックすると良いと思います。
  DSO Shell のフォーラム
カレンダー
05 | 2017/06 | 07
- - - - 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コード