HW/LaboratoryInstruments/Oscilloscopes/Rigol/index

Programming guide

Python:

1017MO:

from ds1054z import DS1054Z as oscilo
import matplotlib.pyplot as plt

scope = oscilo('192.168.2.59')
print("Connected to: ", scope.idn)

print("Currently displayed channels: ", str(scope.displayed_channels))

oscilo.display_channel(scope,1, enable=True)
dd= oscilo.get_waveform_samples(scope,1, mode='NORMal')

print(dd)
plt.plot(dd)
plt.show()

BASH

scope_address=nc -q 3 RigolIP 5555

arming:
        echo ":SINGLe"|$(scope_address) 

getdata:
	echo ":WAV:SOURCE CHAN$(CHANNEL);:WAV:FORM ASCii;:WAV:MODE NORM" |$(scope_address);sleep 0.5s;echo ":WAV:DATA?" |$(scope_address)|cut -c 12-|sed 's/,/\n/g'|tee data$(CHANNEL)|gnuplot -e 'set terminal jpeg;plot "<cat" w l' > plot$(CHANNEL).jpg;
	
getscreenshot:
	echo ":DISPLAY:DATA?" | nc -w1 RigolDS1074a 5555 | dd bs=1 skip=11 of=screenshot.bmp
	convert screenshot.bmp screenshot.png
	convert -resize 150x120\! screenshot.png icon.png

while [ 1 ]; do echo ":MEAS:ITEM? VAVG, CHANNEL1"|nc -w 1  EtOsc 5555;done

echo ":TRIGger:SWEep AUTO"|nc -q 3 EtOsc 5555
golem@et:~$ echo ":TRIGger:SWEep SINGle;SINGLE"|nc -q 1 EtOsc 5555