キーサイトテクノロジー」タグアーカイブ

Pythonを使って計測器を制御する(その3)【追記あり】

やっとPythonをインストールするところまで来ました。
ここでは、Pythonをインストールし、PyVISAライブラリをインストール。そして、Pythonから、「*IDN?」送ってレスポンスが返ってくるまで解説したいと思います。
なお、ここからは上記作業をやりながらなので、失敗するかもしれません…

1.Rythonディストリビューション、Anacondaのインストール
Pythonそのものをインストールしても良いのですが、開発環境まで含んだディストリビューション、Anacondaをインストールすることとします。

インストールには、このページを参考にしました。

このページからAnacondaのインストーラーをダウンロードし、インストールを行います(図1)。


図1 Anacondaのインストール

続きを読む

Pythonを使って計測器を制御する(その2)

Part1では、Pythonで電子計測器を制御するための概要を解説しました。ここでは、Windows版のVISA(キーサイトテクノロジー、IO Libraries Suite)をインストールする手順を解説します。なお、Pythonの導入とPythonによる電子計測器の制御は、Part3で解説します。

1.まずはWindows10用のVISAをインストールする
Pythonもインストールしてしまうと、Pythonを使った電子計測器の制御がうまくいかなかった場合切り分けが難しくなるので、まずはWindows10で動作するVISAをインストールし、電子計測器の制御がうまくできるか試します。

今回は、キーサイトテクノロジーの計測機器をつかうので、キーサイトテクノロジーが無償配布しているVISAを使用します。
キーサイトテクノロジーが無償配布しているVISAは、「IO Libraries Suite」と呼ばれ、ここからダウンロードできます。

このページをスクロールし、中程に「Download IOLS 2021 Update1」というボタンがあるので、ここを押すと、ダウンロードが開始されます(図1)。
なお、スクロールしてこのボタンが出るまで、しばらく時間がかかりますので、気長に待って下さい。

図1 IO Libraries Suiteのダウンロード

また、有用なアプリケーションとして、「Command Expert」があるので、これもダウンロードします。ダウンロードサイトはここです
このページをスクロールすると、中程に、「Download」ボタンがあるので、ここを押します(図2)。なお、ここでも、スクロールしてこのボタンが出るまで、しばらく時間がかかりますので、気長に待って下さい。

図2 Command Expertのダウンロード

ダウンロードする際、メールアドレス、名前、住んでる国を聞かれますが、まあ、マーケティング目的ではありますが、特に気にせず入力します。

続きを読む

Pythonを使って計測器を制御する(その1)

今流行の言語である「Python」を、ふとしたきっかけから学ぼうと思ったのですが、どこから手をつけて良いか分からなかったため、自身の得意分野である、電子計測器の制御をやってみようと思い立ち、その課程をここに記載したいと思います。

なお、このページでは概要を説明するのみで、Python(ディストリビューションとして、Anacondaを使います)および、VISAのインストールに関する記載はありません。これらの解説はPart2以降にて行います。

1.コンピュータによる電子計測器制御のイメージ
ザックリとではありますが、図1の様に表すことができると思います。図の左側が、一般的なプログラミング言語による制御イメージ。右側が、Pythonによる制御イメージです。

図1 コンピュータによる電子計測器制御のイメージ

コンピュータプログラムと電子計測器との間に「VISA」(Virtual Instrument Software Architecture)と言うAPIを導入することで、電子計測器が装備する物理インターフェースによる違いを吸収することができ、プログラミングの負担が大きく減ります。VISAに関しては、こちらを参照下さい。

Pythonで電子計測器を制御するためのは、「PyVISA」というフロントエンドが必要になります。バックエンドは、PyVISAの公式バックエンドである「PyVISA-py」が使えるのですが、VISAのフル機能を使えないようなので、計測機器メーカーが無償で配布しているVISAを使うことになります。
計測機器メーカーが無償配布しているVISAは、全てWindowsOS上で動作するため、必然的に、WindowsOS上で動作するPythonを導入することになります。

続きを読む

温湿度センサーSHT31を使う場合の注意点(まとめ)

Part1Part2Part3で得られた知見を元に、センシリオン製温湿度センサーSHT31を使って温湿度を測定してCOMに表示するスケッチを書いてみました。ご参考になれば幸いです。また、このスケッチで得られるCOMの表示を図1に示します。

続きを読む

温湿度センサーSHT31を使う場合の注意点(パート3)

センシリオン製温湿度センサーSHT31を使う上での注意点その3です。

Part1Part2で、SHT31にWriteコマンドを送った後にある程度の待ち時間が必要で有ることを示しましたが、Part3では、どの程度の待ち時間が適切なのか?を検討したいと思います。

● 初期化コマンドは1msの待ち時間でOK。測定開始コマンドの場合は、データシートに記載がある測定完了までの待ち時間が必要

結論としては表題の通りなのですが、順を追って説明します。まず、全ての待ち時間を1msとした場合のI2Cバスの挙動を観測してみました。Arduinoのスケッチを以下に示します。

続きを読む

温湿度センサーSHT31を使う場合の注意点(パート2)

センシリオン製温湿度センサーSHT31を使う上での注意点その2です。

待ち時間の妥当性を検証する前に、待ち時間を入れないとWriteコマンドが実行されないことを実証しておきたいと思います。

具体的には、ステータスレジスタ消去コマンド(0x3041)が実行されていないことを確かめます(図1の「45Wa 30a 41~a」部分) 。

I2C通信で失敗した例図1 Writeコマンドを連投したときのI2C波形
ステータスレジスタ消去コマンド(0x3041)を送ってもNACKを返している

続きを読む

温湿度センサーSHT31を使う場合の注意点(パート1)

センシリオン社製温湿度センサーSHT31をArduinoのI2C経由で制御して評価していたのですが(写真1)、いろいろと「はまって」しまいました(苦笑)。そのときのトラブルとその解決法を備忘録として以下に記載します。

写真1 センシリオン製温湿度センサーSHT31を、
Keysightデジタルオシロスコープ(DSOX2014A)で評価している様子

なお、トラブルが多岐にわたったのと、それぞれのトラブルに対する解決策及びその妥当性の検証に時間がかかったため、何回かに分けて詳細を記載したいと思います。

今回はその第一回です。

続きを読む

MAX6675とK型熱電対とを使って温度を測ってみた

前回のエントリではK型熱電対をMAX6675で使うためのArduinoのSketchの一例を紹介しました。このエントリでは、そのSketchを使って各種温度を測定した結果を紹介します。

1.水温の変化を測定する

まず、温度がはっきり分かっている物体の温度を測ってみました。具体的には「水」です。水の場合、1気圧での沸点が100℃と一定なので、温度測定の基準として使うことができます。写真1の様に水(約600cc)を満たした鍋の中に熱電対を入れ、ガスコンロで加熱して温度変化を測定しました。

写真1 測定の様子

測定結果を図1に示します。

図1 水温の測定結果

100℃は水の沸点ですので、この範囲においては温度が一定になっていることがよく分かります。

続きを読む

Keysight Technologies 34461Aを新規購入

 長年使っていた、ベンチトップ6桁半のディジタル・マルチ・メーター(DMM)hp 34401Aが故障してしまい、電流・電圧・抵抗等の基礎物理量の高精度測定が出来なくなりました。修理も可能なようですが、約90,000円。

 hp 34401Aは2016年に販売も終了した事ですし、後継機であるKeysight Technologies 34461Aを購入致しました。

 日本最大の計測機器商社である日本電計のECサイト、計測器ワールドで購入しましたが、即納で137,592 円(税込) (2018年8月19日現在)。ミッドレンジのノートPCとほぼ同じお値段。安くなりました。
34461A

写真1 Keysight Technologies 6桁半DMM 34461A

続きを読む

ArduinoのWireライブラリに関するTips

 皆様、ご無沙汰しております。代表の國頭です。

 「デバッグ事例」のカテゴリでは、ほぼ6年ぶりの更新になりますがどうぞ宜しくお願い致します。

 さて、表題にありますように「ArduinoのWireライブラリ」について、ここ数年疑問だった事が解決したので、私の備忘録も兼ねて記事を書いてみたいと思います。

 Arduinoについてはご存じの方が多いと思うので、ここでは詳細な説明は省きますが、私はI2CやSPIなどで制御できるデバイスの評価用プラットフォームとして使っています。

 つい先日、温湿度センサーである、Sensirion社製「SHT31」を評価する機会がありましたので、その時に得られた知見をご報告したいと思います。

続きを読む