我想将数据从 Simulink 模型(实时运行)发送到 Python 脚本(也实时运行。我正在使用 Simulink 的内置“UDP Send”块,它可以工作,但我不知道如何解码我得到的数据。这就是我的python脚本的样子:
import sys, struct
from socket import *
SIZE = 1024 # packet size
hostName = gethostbyname('0.0.0.0')
mySocket = socket( AF_INET, SOCK_DGRAM )
mySocket.bind((hostName,5002))
repeat = True
while repeat:
(data,addr) = mySocket.recvfrom(SIZE)
data = struct.unpack('d',data)
print data
我怀疑数据流应该是双精度的,但是虽然它给了我数字,但它们没有意义:
如果 simulink 发送一个常量“1”,我会得到“3.16e-322”的输出
如果 Simulink 发送一个常数“2”,我会得到“3.038e-319”的输出
有任何想法吗?