040 PyVISAを使ってBinaryデータを送受信する(その2)

2022/04/16

紹介/PyVISA

t f B! P L

今回は,PyVISAパッケージを使ってBinaryデータを送受信する際に指定する
    エンディアンビッグ, リトル
に関して紹介します.

エンディアンに関しては,Wikipediaで調べて下さい(すぐ忘れると思います).
大事なのは,Binaryデータの送受信には,エンディアンを指定しないといけないということです(PyVISAパッケージのBinaryデータの送受信に関する関数は,デフォルトリトルエンディアンとなっています.従って,指定しないとリトルエンディアンとして処理されます).

測定機器側は,ビッグエンディアン限定というケースも少なくないので,Binaryデータを送受信する際には,エンディアンを指定するクセを付けておいた方が良いです.
なお,測定機器によっては,エンディアンという名称を用いず,バイトオーダとか,送信順序とか,ビット順という名称を用いているケースがあるので注意して下さい(同じ資料で,これらの文言が混在して使われているのもあります).

PyVISAパッケージのBinaryデータの送受信に関する関数で,エンディアンを指定するのは,
    is_big_endianキーワード引数
です.
    is_big_endian=True(ビッグエンディアン)
    is_big_endian=False(リトルエンディアン)
となります.

測定機器の中には,ビッグエンディアン限定の他に,ビッグ/リトル両方のエンディアンに対応可能(設定次第)という機器もあります.
複数の測定機器を組み合わせてシステムを構築する観点からは,ビッグリトルか,どちらか一方に揃える方が混乱しにくいと思います(ビッグ限定とリトル限定の測定機器を組み合わせるケースでは無理ですが).

以上を持ちまして,PyVISAパッケージでBinaryデータを送受信する前の予備知識の紹介を終わります.次の投稿からは,PyVISAパッケージのBinaryデータの送受信に関係する関数の紹介と,ファンクション・ジェネレータに任意波形のデータをBinaryデータとして送信する際の注意点などに付いて,数回に渡って紹介する予定です.

このブログを検索

アーカイブ

自己紹介

C++やC#を使って数値解析プログラムの開発を長年行ってきました.
今は,Pythonを使った自動処理システムの開発をメインに行っています.

QooQ