Почему wav: source не работает в моем скрипте, но работает, когда я вхожу в него прямо из терминала? - PullRequest
0 голосов
/ 06 января 2019

Я выполняю школьное задание и мне нужна помощь. Я должен подключиться к осциллографу HP 54600 и собрать данные из обоих каналов, а затем сделать некоторые измерения. Но я попробовал каждую команду, которую мог придумать, и она все равно выполняет измерения с канала 1, независимо от того, что я делаю. Он меняет источник на канал2, когда я делаю это прямо из терминала, но ничего не делает, когда я запускаю свою программу. Итак, я пришлю вам свой основной код и надеюсь, что вы подскажете, что добавить, чтобы решить эту проблему.

**

import serial, time, sys
from pylab import *
hp = serial.Serial('/dev/ttyUSB0',460800,timeout = 5)
kanal=int(sys.argv[1])
if kanal==1:
    hp.write('wav:sour chan1\r')
else:
    hp.write('wav:sour chan2\r')
hp.write('+eoi:0\r')
hp.write('+eos:13\r')
hp.write('+a:5\r')
time.sleep(1)
hp.write('wav:form asc\r')
time.sleep(1)
hp.write('wav:poin 5000\r')
time.sleep(1)
hp.write('wav:data?\r')
x = hp.readline()
x = x.replace('\x00','')
x = x[10:-1]
x = x.split(',')
xx = []
for entry in x:
    xx.append(float(entry))
np.save(str(kanal),xx)
plot(xx,'m-',linewidth=2)
show()
hp.close()

**

...