今天想要從電腦抓keysight DSOX1204A 示波器的圖片,

於是我下了這個指令

scope.Visa.write(':DISPlay:DATA? PNG')

但圖片還是沒有抓回來,

之後找了資料發現,還需要一個讀回的指令

於是我下了

scope.Visa.write(':DISPlay:DATA? PNG')

screen_bytes=scope.Visa.read_raw()

結果讀回來一堆byte數值如下圖,也就是圖片的bin數值,想把它轉成圖片

但是會有錯誤,原因就是出在前面有紅色框框的數字

keysight DSOX1204A 示波器截圖指令問題

於是,我就把這幾個數值刪了

python很簡單

於是我就下了這個指令

cleaned_byte_data = screen_bytes[10:]

之後再把這些2進制轉成圖片,我用以下方法

image = Image.open(io.BytesIO(cleaned_byte_data))

dt = datetime.now()
file_name = dt.strftime('%Y%m%d_%H%M%S')
print(file_name+'.PNG')
image.save(file_name+'.PNG')

這個lib 是

from PIL import Image

 

這截圖問題每次都會遇到,這邊先記錄一下

arrow
arrow
    全站熱搜

    JL8051 發表在 痞客邦 留言(0) 人氣()