物理の駅 Physics station by 現役研究者

テクノロジーは共有されてこそ栄える

SIGLENTのオシロスコープをPythonで画像を自動保存する方法

siglentna.com

websocketを使って保存するPythonコードは公開されているので、多少の変更を加えるだけで実用レベルに達する。

main部分を改造して、bmpファイルではなくpngファイル形式で、ファイル名は 日時.png で保存するようにした。

def main():
    global remote_ip
    global port
    global count
    import cv2
    import numpy as np
    from datetime import datetime

    #Open a file
    file_name = datetime.now().strftime("%Y-%m%d_%H%M%S.png") 
 
    # Body: Open a socket, query the screen dump, save and close
    s = SocketConnect()
    qStr = SocketQuery(s, b'SCDP') #Request screen image
    print(len(qStr))
    image = cv2.imdecode(np.frombuffer(qStr, dtype=np.uint8), cv2.IMREAD_UNCHANGED)    
    cv2.imwrite(file_name, image)
 
    SocketClose(s)
    sys.exit