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")