用python控制R&S信号发生器


import socket
import time
TCP_IP = 'rssmb100a110186.local'
TCP_PORT = 5025

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((TCP_IP,TCP_PORT))
for i in range(0,2):
    s.send(b"outp on")
    print('set output on')
    time.sleep(1)
    s.send(b'outp on')
    print('set output off')
    time.sleep(1)
print('shutdown')
s.send(b'SYST:REB') # reboot generator

我需要控制一个rohde&Schwarz SMB 100A RF信号发生器使用Python。使用腻子使用" RAW"或TELNET选项发送命令时,一切都还好...

使用我的(测试)python脚本时,生成器将切换到"远程操作模式",在此设备的Web GUI中,我可以看到接收了SCPI命令,但什么也不会发生。当我用telnetlib替换插座时。执行Python脚本时,我也没有错误。

我的python脚本和腻子有什么区别?

正如Ivan Pozdeev在有关原始问题的评论中所写的那样,Newline字符 n很重要!

不打开输出:

s.send(b"outp on")

解决方案:添加 n:

s.send(b"outp onn")

最新更新